Back to home page

OSCL-LXR

 
 

    


0001 ===========================
0002 Kernel driver spi-sc18is602
0003 ===========================
0004 
0005 Supported chips:
0006 
0007   * NXP SI18IS602/602B/603
0008 
0009     Datasheet: https://www.nxp.com/documents/data_sheet/SC18IS602_602B_603.pdf
0010 
0011 Author:
0012         Guenter Roeck <linux@roeck-us.net>
0013 
0014 
0015 Description
0016 -----------
0017 
0018 This driver provides connects a NXP SC18IS602/603 I2C-bus to SPI bridge to the
0019 kernel's SPI core subsystem.
0020 
0021 The driver does not probe for supported chips, since the SI18IS602/603 does not
0022 support Chip ID registers. You will have to instantiate the devices explicitly.
0023 Please see Documentation/i2c/instantiating-devices.rst for details.
0024 
0025 
0026 Usage Notes
0027 -----------
0028 
0029 This driver requires the I2C adapter driver to support raw I2C messages. I2C
0030 adapter drivers which can only handle the SMBus protocol are not supported.
0031 
0032 The maximum SPI message size supported by SC18IS602/603 is 200 bytes. Attempts
0033 to initiate longer transfers will fail with -EINVAL. EEPROM read operations and
0034 similar large accesses have to be split into multiple chunks of no more than
0035 200 bytes per SPI message (128 bytes of data per message is recommended). This
0036 means that programs such as "cp" or "od", which automatically use large block
0037 sizes to access a device, can not be used directly to read data from EEPROM.
0038 Programs such as dd, where the block size can be specified, should be used
0039 instead.