Christophe Ricard
9e0d39d8a6
tpm: Remove useless priv field in struct tpm_vendor_specific
...
Remove useless priv field in struct tpm_vendor_specific and take benefit
of chip->dev.driver_data. As priv is the latest field available in
struct tpm_vendor_specific, remove any reference to that structure.
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com >
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
2016-06-25 17:26:35 +03:00
Christophe Ricard
20ab99f89d
tpm/st33zp24/spi: Drop two useless checks in ACPI probe path
...
When st33zp24_spi_acpi_request_resources() gets called we
already know that the entries in ->acpi_match_table have matched ACPI ID
of the device.
In addition spi_device pointer cannot be NULL in any case (otherwise I2C
core would not call ->probe() for the driver in the first place).
Drop the two useless checks from the driver.
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com >
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
2016-06-25 17:26:35 +03:00
Christophe RICARD
4d8007ee26
tpm/st33zp24/spi: Change xxx_request_resources header
...
Simplify st33zp24_spi_acpi_request_resources, st33zp24_spi_of_request_resources
and st33zp24_spi_request_resources to have the same prototype and using
spi_get_drvdata.
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com >
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
2016-06-25 17:26:35 +03:00
Christophe RICARD
86ff205b8e
tpm: st33zp24: Add support for acpi probing for spi device.
...
Add support for acpi probing. SMO3324 is used for st33zp24.
It has been tested with the following acpi node on Minnowboard:
Device (TPM1)
{
Name (_ADR, Zero) // _ADR: Address
Name (_HID, "SMO3324") // _HID: Hardware ID
Name (_CID, "SMO3324") // _CID: Compatible ID
Name (_DDN, "SMO TPM") // _DDN: DOS Device Name
Name (_UID, One) // _UID: Unique ID
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
Name (SBUF, ResourceTemplate ()
{
SpiSerialBus (0, PolarityLow, FourWireMode, 8,
ControllerInitiated, 4000000, ClockPolarityLow,
ClockPhaseFirst, "\\_SB.SPI1",
0x00, ResourceConsumer, ,)
GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
"\\_SB.GPO2", 0x00, ResourceConsumer, ,)
{ // Pin list
0x0001
}
GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
"\\_SB.GPO2", 0x00, ResourceConsumer, ,)
{ // Pin list
0x0002,
}
})
Return (SBUF) /* \_SB_.SPI1.TPM1._CRS.SBUF */
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
Return (0x0F)
}
}
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com >
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
2016-06-25 17:26:35 +03:00
Christophe RICARD
8bb273f213
tpm/st33zp24: Extend Copyright headers
...
Extend copyright header to 2016
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com >
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
2016-06-25 17:26:35 +03:00
Christophe RICARD
4ef2aa3c1b
tpm/st33zp24/spi: Improve st33zp24_spi_evaluate_latency
...
Add check in st33zp24_spi_evaluate_latency helping to diagnose if the chip
is present or in a bad state.
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com >
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
2016-06-25 17:26:35 +03:00
Christophe RICARD
300796cdb5
tpm/st33zp24: Remove unneeded CONFIG_OF switches
...
DT headers already define NOOP routines when CONFIG_OF is not defined.
[jarkko.sakkinen@linux.intel.com: I tested that the driver compiles
without warnings and errors with and without CONFIG_OF flag.]
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com>
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Tested-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
2016-06-25 17:26:35 +03:00
Christophe RICARD
a5392e9120
tpm/st33zp24/spi: Remove field spi_xfer from st33zp24_spi_phy structure
...
Remove spi_xfer from st33zp24_spi_phy structure and declare local spi_xfer
when needed instead.
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com >
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
2016-06-25 17:26:11 +03:00
Christophe RICARD
d34306e288
tpm/st33zp24/spi: Remove useless use of memcpy.
...
An affectation is enough when copying 1 byte. Remove memcpy usage where
possible.
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com >
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
2016-06-25 17:26:11 +03:00
Christophe RICARD
8a7450039a
tpm/st33zp24/spi: Use functions name with st33zp24_spi_ prefix
...
Make sure every function name use st33zp24_spi_ prefix.
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com >
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
2016-06-25 17:26:11 +03:00
Christophe RICARD
604e578884
tpm/st33zp24/spi: Remove nbr_dummy_bytes variable usage
...
nbr_dummy_bytes variable could be easily replaced by phy->latency in
st33zp24_spi_send and st33zp24_spi_recv.
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com >
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
2016-06-25 17:26:11 +03:00
Christophe RICARD
add40d6df6
tpm/st33zp24/spi: Change xxx_request_resources header
...
Simplify st33zp24_spi_acpi_request_resources, st33zp24_spi_of_request_resources
and st33zp24_spi_request_resources to have the same prototype and using
spi_get_drvdata.
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com >
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
2016-06-25 17:21:42 +03:00
Christophe RICARD
160beb40d5
tpm: st33zp24: Add support for acpi probing for spi device.
...
Add support for acpi probing. SMO3324 is used for st33zp24.
It has been tested with the following acpi node on Minnowboard:
Device (TPM1)
{
Name (_ADR, Zero) // _ADR: Address
Name (_HID, "SMO3324") // _HID: Hardware ID
Name (_CID, "SMO3324") // _CID: Compatible ID
Name (_DDN, "SMO TPM") // _DDN: DOS Device Name
Name (_UID, One) // _UID: Unique ID
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
Name (SBUF, ResourceTemplate ()
{
SpiSerialBus (0, PolarityLow, FourWireMode, 8,
ControllerInitiated, 4000000, ClockPolarityLow,
ClockPhaseFirst, "\\_SB.SPI1",
0x00, ResourceConsumer, ,)
GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
"\\_SB.GPO2", 0x00, ResourceConsumer, ,)
{ // Pin list
0x0001
}
GpioIo (Exclusive, PullDefault, 0x0000, 0x0000, IoRestrictionOutputOnly,
"\\_SB.GPO2", 0x00, ResourceConsumer, ,)
{ // Pin list
0x0002,
}
})
Return (SBUF) /* \_SB_.SPI1.TPM1._CRS.SBUF */
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
Return (0x0F)
}
}
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com >
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
2016-06-25 17:21:42 +03:00
Christophe RICARD
2c2b217a13
tpm/st33zp24: Extend Copyright headers
...
Extend copyright header to 2016
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com >
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
2016-06-25 17:21:42 +03:00
Christophe RICARD
10460bc1cf
tpm/st33zp24/spi: Improve st33zp24_spi_evaluate_latency
...
Add check in st33zp24_spi_evaluate_latency helping to diagnose if the chip
is present or in a bad state.
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com >
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
2016-06-25 17:21:42 +03:00
Christophe RICARD
8d8d218e89
tpm/st33zp24: Remove unneeded CONFIG_OF switches
...
DT headers already define NOOP routines when CONFIG_OF is not defined.
[jarkko.sakkinen@linux.intel.com: I tested that the driver compiles
without warnings and errors with and without CONFIG_OF flag.]
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com>
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Tested-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
2016-06-25 17:21:42 +03:00
Christophe RICARD
b637a366c2
tpm/st33zp24/spi: Remove field spi_xfer from st33zp24_spi_phy structure
...
Remove spi_xfer from st33zp24_spi_phy structure and declare local spi_xfer
when needed instead.
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com >
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
2016-06-25 17:21:42 +03:00
Christophe RICARD
6e0219c751
tpm/st33zp24/spi: Remove useless use of memcpy.
...
An affectation is enough when copying 1 byte. Remove memcpy usage where
possible.
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com >
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
2016-06-25 17:21:42 +03:00
Christophe RICARD
b83ada0caa
tpm/st33zp24/spi: Use functions name with st33zp24_spi_ prefix
...
Make sure every function name use st33zp24_spi_ prefix.
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com >
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
2016-06-25 17:21:42 +03:00
Christophe RICARD
9feaab5dd2
tpm/st33zp24/spi: Remove nbr_dummy_bytes variable usage
...
nbr_dummy_bytes variable could be easily replaced by phy->latency in
st33zp24_spi_send and st33zp24_spi_recv.
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com >
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com >
2016-06-25 17:21:42 +03:00
Andrew F. Davis
3821a065f5
spi: Drop owner assignment from spi_drivers
...
An spi_driver does not need to set an owner, it will be populated by the
driver core.
Signed-off-by: Andrew F. Davis <afd@ti.com >
Acked-by: Jonathan Cameron <jic23@kernel.org >
Signed-off-by: Mark Brown <broonie@kernel.org >
2015-10-28 10:30:17 +09:00
Christophe Ricard
1018bc2688
tpm/st33zp24/spi: Add missing device table for spi phy.
...
MODULE_DEVICE_TABLE is missing in spi phy in case CONFIG_OF is not set.
Reviewed-by: Jason Gunthorpe <jgunthorpe@obsidianresearch.com >
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com >
Signed-off-by: Peter Huewe <peterhuewe@gmx.de >
2015-03-27 02:50:43 +01:00
Christophe Ricard
f042a315ae
tpm/st33zp24/spi: Add st33zp24 spi phy
...
st33zp24 TIS 1.2 support also SPI. It is using a proprietary protocol to
transport TIS data.
Acked-by: Jarkko Sakkinen <jarkko.sakknen@linux.intel.com >
Reviewed-by: Jason Gunthorpe <jason.gunthorpe@obsidianresearch.com >
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com >
Signed-off-by: Peter Huewe <peterhuewe@gmx.de >
2015-03-18 22:43:06 +01:00