Commit b72540c30c9c8c2c3f17cae29962cfb50fbe166a

Authored by eric miao
Committed by Linus Torvalds
1 parent 9e60fdcf0c

deprecate obsolete pca9539 driver

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>

Showing 2 changed files with 8 additions and 2 deletions Inline Diff

Documentation/i2c/chips/pca9539
1 Kernel driver pca9539 1 Kernel driver pca9539
2 ===================== 2 =====================
3 3
4 NOTE: this driver is deprecated and will be dropped soon, use
5 drivers/gpio/pca9539.c instead.
6
4 Supported chips: 7 Supported chips:
5 * Philips PCA9539 8 * Philips PCA9539
6 Prefix: 'pca9539' 9 Prefix: 'pca9539'
7 Addresses scanned: 0x74 - 0x77 10 Addresses scanned: 0x74 - 0x77
8 Datasheet: 11 Datasheet:
9 http://www.semiconductors.philips.com/acrobat/datasheets/PCA9539_2.pdf 12 http://www.semiconductors.philips.com/acrobat/datasheets/PCA9539_2.pdf
10 13
11 Author: Ben Gardner <bgardner@wabtec.com> 14 Author: Ben Gardner <bgardner@wabtec.com>
12 15
13 16
14 Description 17 Description
15 ----------- 18 -----------
16 19
17 The Philips PCA9539 is a 16 bit low power I/O device. 20 The Philips PCA9539 is a 16 bit low power I/O device.
18 All 16 lines can be individually configured as an input or output. 21 All 16 lines can be individually configured as an input or output.
19 The input sense can also be inverted. 22 The input sense can also be inverted.
20 The 16 lines are split between two bytes. 23 The 16 lines are split between two bytes.
21 24
22 25
23 Sysfs entries 26 Sysfs entries
24 ------------- 27 -------------
25 28
26 Each is a byte that maps to the 8 I/O bits. 29 Each is a byte that maps to the 8 I/O bits.
27 A '0' suffix is for bits 0-7, while '1' is for bits 8-15. 30 A '0' suffix is for bits 0-7, while '1' is for bits 8-15.
28 31
29 input[01] - read the current value 32 input[01] - read the current value
30 output[01] - sets the output value 33 output[01] - sets the output value
31 direction[01] - direction of each bit: 1=input, 0=output 34 direction[01] - direction of each bit: 1=input, 0=output
32 invert[01] - toggle the input bit sense 35 invert[01] - toggle the input bit sense
33 36
34 input reads the actual state of the line and is always available. 37 input reads the actual state of the line and is always available.
35 The direction defaults to input for all channels. 38 The direction defaults to input for all channels.
36 39
37 40
38 General Remarks 41 General Remarks
39 --------------- 42 ---------------
40 43
41 Note that each output, direction, and invert entry controls 8 lines. 44 Note that each output, direction, and invert entry controls 8 lines.
42 You should use the read, modify, write sequence. 45 You should use the read, modify, write sequence.
43 For example. to set output bit 0 of 1. 46 For example. to set output bit 0 of 1.
44 val=$(cat output0) 47 val=$(cat output0)
45 val=$(( $val | 1 )) 48 val=$(( $val | 1 ))
46 echo $val > output0 49 echo $val > output0
47 50
48 51
drivers/i2c/chips/Kconfig
1 # 1 #
2 # Miscellaneous I2C chip drivers configuration 2 # Miscellaneous I2C chip drivers configuration
3 # 3 #
4 4
5 menu "Miscellaneous I2C Chip support" 5 menu "Miscellaneous I2C Chip support"
6 6
7 config DS1682 7 config DS1682
8 tristate "Dallas DS1682 Total Elapsed Time Recorder with Alarm" 8 tristate "Dallas DS1682 Total Elapsed Time Recorder with Alarm"
9 depends on EXPERIMENTAL 9 depends on EXPERIMENTAL
10 help 10 help
11 If you say yes here you get support for Dallas Semiconductor 11 If you say yes here you get support for Dallas Semiconductor
12 DS1682 Total Elapsed Time Recorder. 12 DS1682 Total Elapsed Time Recorder.
13 13
14 This driver can also be built as a module. If so, the module 14 This driver can also be built as a module. If so, the module
15 will be called ds1682. 15 will be called ds1682.
16 16
17 config SENSORS_EEPROM 17 config SENSORS_EEPROM
18 tristate "EEPROM reader" 18 tristate "EEPROM reader"
19 depends on EXPERIMENTAL 19 depends on EXPERIMENTAL
20 help 20 help
21 If you say yes here you get read-only access to the EEPROM data 21 If you say yes here you get read-only access to the EEPROM data
22 available on modern memory DIMMs and Sony Vaio laptops. Such 22 available on modern memory DIMMs and Sony Vaio laptops. Such
23 EEPROMs could theoretically be available on other devices as well. 23 EEPROMs could theoretically be available on other devices as well.
24 24
25 This driver can also be built as a module. If so, the module 25 This driver can also be built as a module. If so, the module
26 will be called eeprom. 26 will be called eeprom.
27 27
28 config SENSORS_PCF8574 28 config SENSORS_PCF8574
29 tristate "Philips PCF8574 and PCF8574A" 29 tristate "Philips PCF8574 and PCF8574A"
30 depends on EXPERIMENTAL 30 depends on EXPERIMENTAL
31 default n 31 default n
32 help 32 help
33 If you say yes here you get support for Philips PCF8574 and 33 If you say yes here you get support for Philips PCF8574 and
34 PCF8574A chips. These chips are 8-bit I/O expanders for the I2C bus. 34 PCF8574A chips. These chips are 8-bit I/O expanders for the I2C bus.
35 35
36 This driver can also be built as a module. If so, the module 36 This driver can also be built as a module. If so, the module
37 will be called pcf8574. 37 will be called pcf8574.
38 38
39 These devices are hard to detect and rarely found on mainstream 39 These devices are hard to detect and rarely found on mainstream
40 hardware. If unsure, say N. 40 hardware. If unsure, say N.
41 41
42 config PCF8575 42 config PCF8575
43 tristate "Philips PCF8575" 43 tristate "Philips PCF8575"
44 default n 44 default n
45 help 45 help
46 If you say yes here you get support for Philips PCF8575 chip. 46 If you say yes here you get support for Philips PCF8575 chip.
47 This chip is a 16-bit I/O expander for the I2C bus. Several other 47 This chip is a 16-bit I/O expander for the I2C bus. Several other
48 chip manufacturers sell equivalent chips, e.g. Texas Instruments. 48 chip manufacturers sell equivalent chips, e.g. Texas Instruments.
49 49
50 This driver can also be built as a module. If so, the module 50 This driver can also be built as a module. If so, the module
51 will be called pcf8575. 51 will be called pcf8575.
52 52
53 This device is hard to detect and is rarely found on mainstream 53 This device is hard to detect and is rarely found on mainstream
54 hardware. If unsure, say N. 54 hardware. If unsure, say N.
55 55
56 config SENSORS_PCA9539 56 config SENSORS_PCA9539
57 tristate "Philips PCA9539 16-bit I/O port" 57 tristate "Philips PCA9539 16-bit I/O port (DEPRECATED)"
58 depends on EXPERIMENTAL 58 depends on EXPERIMENTAL && GPIO_PCA9539 = "n"
59 help 59 help
60 If you say yes here you get support for the Philips PCA9539 60 If you say yes here you get support for the Philips PCA9539
61 16-bit I/O port. 61 16-bit I/O port.
62 62
63 This driver can also be built as a module. If so, the module 63 This driver can also be built as a module. If so, the module
64 will be called pca9539. 64 will be called pca9539.
65
66 This driver is deprecated and will be dropped soon. Use
67 drivers/gpio/pca9539.c instead.
65 68
66 config SENSORS_PCF8591 69 config SENSORS_PCF8591
67 tristate "Philips PCF8591" 70 tristate "Philips PCF8591"
68 depends on EXPERIMENTAL 71 depends on EXPERIMENTAL
69 default n 72 default n
70 help 73 help
71 If you say yes here you get support for Philips PCF8591 chips. 74 If you say yes here you get support for Philips PCF8591 chips.
72 75
73 This driver can also be built as a module. If so, the module 76 This driver can also be built as a module. If so, the module
74 will be called pcf8591. 77 will be called pcf8591.
75 78
76 These devices are hard to detect and rarely found on mainstream 79 These devices are hard to detect and rarely found on mainstream
77 hardware. If unsure, say N. 80 hardware. If unsure, say N.
78 81
79 config ISP1301_OMAP 82 config ISP1301_OMAP
80 tristate "Philips ISP1301 with OMAP OTG" 83 tristate "Philips ISP1301 with OMAP OTG"
81 depends on ARCH_OMAP_OTG 84 depends on ARCH_OMAP_OTG
82 help 85 help
83 If you say yes here you get support for the Philips ISP1301 86 If you say yes here you get support for the Philips ISP1301
84 USB-On-The-Go transceiver working with the OMAP OTG controller. 87 USB-On-The-Go transceiver working with the OMAP OTG controller.
85 The ISP1301 is used in products including H2 and H3 development 88 The ISP1301 is used in products including H2 and H3 development
86 boards for Texas Instruments OMAP processors. 89 boards for Texas Instruments OMAP processors.
87 90
88 This driver can also be built as a module. If so, the module 91 This driver can also be built as a module. If so, the module
89 will be called isp1301_omap. 92 will be called isp1301_omap.
90 93
91 config TPS65010 94 config TPS65010
92 tristate "TPS6501x Power Management chips" 95 tristate "TPS6501x Power Management chips"
93 default y if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_OSK 96 default y if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_OSK
94 help 97 help
95 If you say yes here you get support for the TPS6501x series of 98 If you say yes here you get support for the TPS6501x series of
96 Power Management chips. These include voltage regulators, 99 Power Management chips. These include voltage regulators,
97 lithium ion/polymer battery charging, and other features that 100 lithium ion/polymer battery charging, and other features that
98 are often used in portable devices like cell phones and cameras. 101 are often used in portable devices like cell phones and cameras.
99 102
100 This driver can also be built as a module. If so, the module 103 This driver can also be built as a module. If so, the module
101 will be called tps65010. 104 will be called tps65010.
102 105
103 config SENSORS_MAX6875 106 config SENSORS_MAX6875
104 tristate "Maxim MAX6875 Power supply supervisor" 107 tristate "Maxim MAX6875 Power supply supervisor"
105 depends on EXPERIMENTAL 108 depends on EXPERIMENTAL
106 help 109 help
107 If you say yes here you get support for the Maxim MAX6875 110 If you say yes here you get support for the Maxim MAX6875
108 EEPROM-programmable, quad power-supply sequencer/supervisor. 111 EEPROM-programmable, quad power-supply sequencer/supervisor.
109 112
110 This provides an interface to program the EEPROM and reset the chip. 113 This provides an interface to program the EEPROM and reset the chip.
111 114
112 This driver also supports the Maxim MAX6874 hex power-supply 115 This driver also supports the Maxim MAX6874 hex power-supply
113 sequencer/supervisor if found at a compatible address. 116 sequencer/supervisor if found at a compatible address.
114 117
115 This driver can also be built as a module. If so, the module 118 This driver can also be built as a module. If so, the module
116 will be called max6875. 119 will be called max6875.
117 120
118 config SENSORS_TSL2550 121 config SENSORS_TSL2550
119 tristate "Taos TSL2550 ambient light sensor" 122 tristate "Taos TSL2550 ambient light sensor"
120 depends on EXPERIMENTAL 123 depends on EXPERIMENTAL
121 help 124 help
122 If you say yes here you get support for the Taos TSL2550 125 If you say yes here you get support for the Taos TSL2550
123 ambient light sensor. 126 ambient light sensor.
124 127
125 This driver can also be built as a module. If so, the module 128 This driver can also be built as a module. If so, the module
126 will be called tsl2550. 129 will be called tsl2550.
127 130
128 config MENELAUS 131 config MENELAUS
129 bool "TWL92330/Menelaus PM chip" 132 bool "TWL92330/Menelaus PM chip"
130 depends on I2C=y && ARCH_OMAP24XX 133 depends on I2C=y && ARCH_OMAP24XX
131 help 134 help
132 If you say yes here you get support for the Texas Instruments 135 If you say yes here you get support for the Texas Instruments
133 TWL92330/Menelaus Power Management chip. This include voltage 136 TWL92330/Menelaus Power Management chip. This include voltage
134 regulators, Dual slot memory card tranceivers, real-time clock 137 regulators, Dual slot memory card tranceivers, real-time clock
135 and other features that are often used in portable devices like 138 and other features that are often used in portable devices like
136 cell phones and PDAs. 139 cell phones and PDAs.
137 140
138 endmenu 141 endmenu
139 142