linux/drivers/misc
Bartosz Golaszewski 6ce261e87f eeprom: at24: add support for the write-protect pin
AT24 EEPROMs have a write-protect pin, which - when pulled high -
inhibits writes to the upper quadrant of memory (although it has been
observed that on some chips it disables writing to the entire memory
range).

On some boards, this pin is connected to a GPIO and pulled high by
default, which forces the user to manually change its state before
writing. On linux this means that we either need to hog the line all
the time, or set the GPIO value before writing from outside of the
at24 driver.

Make the driver check if the write-protect GPIO was defined in the
device tree and pull it low whenever writing to the EEPROM.

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
2018-01-01 19:40:50 +01:00
..
altera-stapl misc: altera-stapl: drop Kconfig comment 2017-10-04 10:43:08 +02:00
c2port kmemcheck: remove annotations 2017-11-15 18:21:04 -08:00
cb710
cxl powerpc fixes for 4.15 #3 2017-12-01 08:40:17 -05:00
echo
eeprom eeprom: at24: add support for the write-protect pin 2018-01-01 19:40:50 +01:00
genwqe genwqe: Take R/W permissions into account when dealing with memory pages 2017-10-23 11:34:42 +02:00
ibmasm Merge branch 'for-linus' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2017-11-15 10:14:11 -08:00
lis3lv02d misc: lis3lv02d: constify attribute_group structures. 2017-08-28 16:55:48 +02:00
mei Char/Misc patches for 4.15-rc1 2017-11-16 09:10:59 -08:00
mic Char/Misc patches for 4.15-rc1 2017-11-16 09:10:59 -08:00
sgi-gru sgi-gru: update to new mmu_notifier semantic 2017-08-31 16:13:00 -07:00
sgi-xp Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-11-13 17:56:58 -08:00
ti-st misc: ti-st: constify attribute_group structures. 2017-08-28 16:55:48 +02:00
vmw_vmci vmci: fix duplicated code for different branches 2017-08-28 16:55:50 +02:00
ad525x_dpot-i2c.c
ad525x_dpot-spi.c
ad525x_dpot.c
ad525x_dpot.h
apds990x.c misc: apds990x: constify attribute_group structures. 2017-08-28 16:55:49 +02:00
apds9802als.c misc: apds9802als: constify i2c_device_id 2017-08-28 16:55:49 +02:00
aspeed-lpc-ctrl.c drivers/misc: aspeed-lpc-ctrl: fix printk format warning again 2017-04-08 17:37:20 +02:00
aspeed-lpc-snoop.c drivers/misc: (aspeed-lpc-snoop): Add ast2400 to compat 2017-07-17 17:23:16 +02:00
atmel_tclib.c
atmel-ssc.c
bh1770glc.c misc: bh1770glc: constify attribute_group structures. 2017-08-28 16:55:48 +02:00
cs5535-mfgpt.c
ds1682.c MISC: add const to bin_attribute structures 2017-08-28 16:55:48 +02:00
dummy-irq.c Annotate hardware config module parameters in drivers/misc/ 2017-04-20 12:02:32 +01:00
enclosure.c scsi: ses: do not add a device to an enclosure if enclosure_add_links() fails. 2017-07-01 16:52:38 -04:00
fsa9480.c
hmc6352.c misc: hmc6352: constify i2c_device_id 2017-08-28 16:55:49 +02:00
hpilo.c misc: hpilo: constify pci_device_id. 2017-08-28 16:55:48 +02:00
hpilo.h
ics932s401.c
ioc4.c misc: ioc4: constify pci_device_id. 2017-08-28 16:55:48 +02:00
isl29003.c
isl29020.c misc: isl29020: constify i2c_device_id 2017-08-28 16:55:49 +02:00
Kconfig drivers: misc: ti_dac7512: Remove duplicate driver 2017-09-13 17:49:57 +01:00
kgdbts.c treewide: Fix function prototypes for module_param_call() 2017-10-31 15:30:37 +01:00
lattice-ecp3-config.c
lkdtm_bugs.c lkdtm: include WARN format string 2017-11-17 16:10:01 -08:00
lkdtm_core.c lkdtm, kprobes: Convert from jprobes to kprobes 2017-10-23 13:52:45 +02:00
lkdtm_heap.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
lkdtm_perms.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
lkdtm_refcount.c lkdtm: fix spelling mistake: "incremeted" -> "incremented" 2017-08-28 17:47:11 +02:00
lkdtm_rodata.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
lkdtm_usercopy.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
lkdtm.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
Makefile Staging/IIO patches for 4.15-rc1 2017-11-13 20:53:28 -08:00
pch_phub.c MISC: add const to bin_attribute structures 2017-08-28 16:55:48 +02:00
pci_endpoint_test.c misc: pci_endpoint_test: Fix BUG_ON error during pci_disable_msi() 2017-10-31 15:33:46 -05:00
phantom.c
pti.c drivers/misc/intel/pti: Rename the header file to free up the namespace 2017-12-17 12:52:34 +01:00
qcom-coincell.c
spear13xx_pcie_gadget.c
sram-exec.c misc: sram-exec: Use aligned fncpy instead of memcpy 2017-05-18 17:37:52 +02:00
sram.c misc: Convert to using %pOF instead of full_name 2017-08-28 16:55:49 +02:00
sram.h misc: sram: Integrate protect-exec reserved sram area type 2017-01-25 11:48:03 +01:00
tifm_7xx1.c misc: tifm: constify pci_device_id. 2017-08-28 16:55:48 +02:00
tifm_core.c
tsl2550.c misc: tsl2550: Add OF device ID table 2017-04-08 18:22:59 +02:00
vexpress-syscfg.c sched/headers: Prepare to move signal wakeup & sigpending methods from <linux/sched.h> into <linux/sched/signal.h> 2017-03-02 08:42:32 +01:00
vmw_balloon.c x86/virt: Add enum for hypervisors to replace x86_hyper 2017-11-10 10:03:12 +01:00