mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-26 12:34:41 +08:00
b72540c30c
Use drivers/gpio/pca9539.c instead. Signed-off-by: eric miao <eric.miao@marvell.com> Acked-by: Ben Gardner <bgardner@wabtec.com> Acked-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Cc: Sam Ravnborg <sam@ravnborg.org> Cc: Haavard Skinnemoen <hskinnemoen@atmel.com> Cc: Philipp Zabel <philipp.zabel@gmail.com> Cc: Russell King <rmk@arm.linux.org.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
51 lines
1.3 KiB
Plaintext
51 lines
1.3 KiB
Plaintext
Kernel driver pca9539
|
|
=====================
|
|
|
|
NOTE: this driver is deprecated and will be dropped soon, use
|
|
drivers/gpio/pca9539.c instead.
|
|
|
|
Supported chips:
|
|
* Philips PCA9539
|
|
Prefix: 'pca9539'
|
|
Addresses scanned: 0x74 - 0x77
|
|
Datasheet:
|
|
http://www.semiconductors.philips.com/acrobat/datasheets/PCA9539_2.pdf
|
|
|
|
Author: Ben Gardner <bgardner@wabtec.com>
|
|
|
|
|
|
Description
|
|
-----------
|
|
|
|
The Philips PCA9539 is a 16 bit low power I/O device.
|
|
All 16 lines can be individually configured as an input or output.
|
|
The input sense can also be inverted.
|
|
The 16 lines are split between two bytes.
|
|
|
|
|
|
Sysfs entries
|
|
-------------
|
|
|
|
Each is a byte that maps to the 8 I/O bits.
|
|
A '0' suffix is for bits 0-7, while '1' is for bits 8-15.
|
|
|
|
input[01] - read the current value
|
|
output[01] - sets the output value
|
|
direction[01] - direction of each bit: 1=input, 0=output
|
|
invert[01] - toggle the input bit sense
|
|
|
|
input reads the actual state of the line and is always available.
|
|
The direction defaults to input for all channels.
|
|
|
|
|
|
General Remarks
|
|
---------------
|
|
|
|
Note that each output, direction, and invert entry controls 8 lines.
|
|
You should use the read, modify, write sequence.
|
|
For example. to set output bit 0 of 1.
|
|
val=$(cat output0)
|
|
val=$(( $val | 1 ))
|
|
echo $val > output0
|
|
|