platform_kernel-5.15/arch/arm
Janusz Krzysztofik ac2885df30 ARM: OMAP1: ams-delta: set up regulator over modem reset GPIO pin
The Amstrad Delta on-board latch2 bit named MODEM_NRESET, now available
as a GPIO pin AMS_DELTA_GPIO_PIN_NMODEM_RESET, is used to power up/down
(bring into/out of a reset state) two distinct on-board devices
simultaneously: the modem, and the voice codec. As a consequence, that
bit is, or can be, manipulated concurrently by two drivers, or their
platform provided hooks.

Instead of updating those drivers to use the gpiolib API as a new method
of controlling the MODEM_NRESET pin state, like it was done to other
drivers accessing latch2 pins, and still being vulnerable to potential
concurrency conflicts, or trying to solve that sharing issue with a
custom piece of code, set up a fixed regulator device on top of that
GPIO pin, with the intention of updating both drivers to manipulate that
regulator, not the GPIO pin directly.

Before the ASoC driver is updated and the modem platform data expanded
with a power management callback for switching its power, the
ams_delta_latch_write() function, which still provides the old API for
accessing latch2 functionality from not updated drivers, is modified to
toggle the regulator instead of the MODEM_NRESET GPIO pin.  A helper
function provided for balancing the regulator enable/disable operations,
together with the consumer data needed for tracking the regulator state,
will be removed once the drivers are updated.

Depends on patch series "ARM: OMAP1: ams-delta: replace custom I/O with
GPIO".

Signed-off-by: Janusz Krzysztofik <jkrzyszt@tis.icnet.pl>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2012-03-05 11:17:10 -08:00
..
boot Merge branch 'v3.3-samsung-fixes-3' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into fixes 2012-02-13 05:50:26 +00:00
common ARM/PCI: Remove ARM's duplicate definition of 'pcibios_max_latency' 2012-02-21 09:35:32 +00:00
configs Consolidate i.MX 5 platforms to be under the new shared i.MX 3/5/6 tree. 2012-01-23 14:50:30 -08:00
include/asm ARM: 7327/1: need to include asm/system.h in asm/processor.h 2012-02-15 21:10:49 +00:00
kernel ARM/audit: include audit header and fix audit arch 2012-02-21 16:50:14 +00:00
lib ARM: 7301/1: Rename the T() macro to TUSER() to avoid namespace conflicts 2012-01-25 11:07:40 +00:00
mach-at91 ARM: at91: drop ide driver in favor of the pata one 2012-02-13 18:31:37 +01:00
mach-bcmring ARM: bcmring: fix build failure in mach-bcmring/arch.c 2012-02-04 11:38:20 -08:00
mach-clps711x Merge branch 'depends/rmk/restart' into next/cleanup 2012-01-07 11:51:28 +00:00
mach-cns3xxx Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci 2012-01-11 18:50:26 -08:00
mach-davinci ARM: davinci: update mdio bus name 2012-01-27 22:29:09 +05:30
mach-dove ARM: orion: Fix USB phy for orion5x. 2012-02-09 16:16:35 -08:00
mach-ebsa110 Merge branch 'depends/rmk/restart' into next/cleanup 2012-01-07 11:51:28 +00:00
mach-ep93xx ep93xx: fix build of vision_ep93xx.c 2012-02-13 06:56:39 +00:00
mach-exynos Merge branch 'v3.3-samsung-fixes-3' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into fixes 2012-02-13 05:50:26 +00:00
mach-footbridge Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci 2012-01-11 18:50:26 -08:00
mach-gemini ARM: big removal of now unused vmalloc.h files 2011-11-26 19:21:29 -05:00
mach-h720x Merge branch 'depends/rmk/restart' into next/cleanup 2012-01-07 11:51:28 +00:00
mach-highbank ARM: 7293/1: logical_cpu_map: decouple CPU mapping from SMP 2012-01-23 10:20:05 +00:00
mach-imx Merge branch 'fixes' of git://git.linaro.org/people/rmk/linux-arm 2012-01-28 13:27:10 -08:00
mach-integrator Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci 2012-01-11 18:50:26 -08:00
mach-iop13xx Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci 2012-01-11 18:50:26 -08:00
mach-iop32x Merge branch 'depends/rmk/restart' into next/cleanup 2012-01-07 11:51:28 +00:00
mach-iop33x Merge branch 'depends/rmk/restart' into next/cleanup 2012-01-07 11:51:28 +00:00
mach-ixp4xx Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci 2012-01-11 18:50:26 -08:00
mach-ixp23xx Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci 2012-01-11 18:50:26 -08:00
mach-ixp2000 Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci 2012-01-11 18:50:26 -08:00
mach-kirkwood ARM: orion: Fix USB phy for orion5x. 2012-02-09 16:16:35 -08:00
mach-ks8695 Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci 2012-01-11 18:50:26 -08:00
mach-l7200/include/mach
mach-lpc32xx Merge branch 'driver-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core 2012-01-07 12:03:30 -08:00
mach-mmp Merge branch 'samsung/driver' into next/drivers 2012-01-09 16:16:29 +00:00
mach-msm ARM: 7293/1: logical_cpu_map: decouple CPU mapping from SMP 2012-01-23 10:20:05 +00:00
mach-mv78xx0 ARM: orion: Fix USB phy for orion5x. 2012-02-09 16:16:35 -08:00
mach-mxs clock management changes for i.MX 2012-01-09 14:44:15 -08:00
mach-netx Merge branch 'depends/rmk/restart' into next/cleanup 2012-01-07 11:51:28 +00:00
mach-nomadik Merge branch 'depends/rmk/restart' into next/cleanup 2012-01-07 11:51:28 +00:00
mach-omap1 ARM: OMAP1: ams-delta: set up regulator over modem reset GPIO pin 2012-03-05 11:17:10 -08:00
mach-omap2 Merge branch 'fixes' of git://git.linaro.org/people/rmk/linux-arm 2012-02-21 18:24:42 -08:00
mach-orion5x ARM: orion: Fix USB phy for orion5x. 2012-02-09 16:16:35 -08:00
mach-picoxcell Merge branch 'picoxcell-fixes' of git://github.com/jamieiles/linux-2.6-ji into fixes 2012-01-16 22:45:42 -08:00
mach-pnx4008 Merge branch 'depends/rmk/restart' into next/cleanup 2012-01-07 11:51:28 +00:00
mach-prima2 Merge branch 'depends/rmk/restart' into next/cleanup 2012-01-07 11:51:28 +00:00
mach-pxa Revert "RTC: sa1100: support sa1100, pxa and mmp soc families" 2012-01-19 17:19:18 +00:00
mach-realview ARM: 7298/1: realview: fix mapping of MPCore private memory region 2012-01-25 09:24:36 +00:00
mach-rpc Merge branch 'depends/rmk/restart' into next/cleanup 2012-01-07 11:51:28 +00:00
mach-s3c64xx ARM: S3C6410: Use device names for both I2C clocks 2012-01-27 14:43:44 +09:00
mach-s3c2410 ARM: SAMSUNG: Fix missing api-change from subsys_interface change 2012-01-27 15:35:47 +09:00
mach-s3c2412 ARM: SAMSUNG: Fix missing api-change from subsys_interface change 2012-01-27 15:35:47 +09:00
mach-s3c2416 ARM: SAMSUNG: Fix missing api-change from subsys_interface change 2012-01-27 15:35:47 +09:00
mach-s3c2440 ARM: SAMSUNG: Fix missing api-change from subsys_interface change 2012-01-27 15:35:47 +09:00
mach-s3c2443 ARM: SAMSUNG: Fix missing api-change from subsys_interface change 2012-01-27 15:35:47 +09:00
mach-s5p64x0 ARM: SAMSUNG: Fix missing api-change from subsys_interface change 2012-01-27 15:35:47 +09:00
mach-s5pc100 Cleanups for the Samsung platforms 2012-01-09 14:30:28 -08:00
mach-s5pv210 ARM: SAMSUNG: Fix missing api-change from subsys_interface change 2012-01-27 15:35:47 +09:00
mach-sa1100 Merge branch 'sa11x0-mcp-fixes' into fixes 2012-01-26 21:06:54 +00:00
mach-shark Merge branch 'depends/rmk/restart' into next/cleanup 2012-01-07 11:51:28 +00:00
mach-shmobile arch/arm/mach-shmobile/board-ag5evm.c: included linux/dma-mapping.h twice 2012-02-24 13:32:17 +09:00
mach-spear3xx Merge branch 'depends/rmk/restart' into next/cleanup 2012-01-07 11:51:28 +00:00
mach-spear6xx Merge branch 'depends/rmk/restart' into next/cleanup 2012-01-07 11:51:28 +00:00
mach-tegra ARM: tegra: paz00: fix wrong UART port on mini-pcie plug 2012-02-06 18:32:51 -08:00
mach-u300 Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl 2012-01-10 10:19:57 -08:00
mach-ux500 Merge branch 'fixes' of git://git.linaro.org/people/rmk/linux-arm 2012-01-28 13:27:10 -08:00
mach-versatile Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci 2012-01-11 18:50:26 -08:00
mach-vexpress ARM: 7293/1: logical_cpu_map: decouple CPU mapping from SMP 2012-01-23 10:20:05 +00:00
mach-vt8500 ARM: big removal of now unused vmalloc.h files 2011-11-26 19:21:29 -05:00
mach-w90x900 Merge branch 'master' into fixes 2012-01-13 15:00:22 +00:00
mach-zynq Merge branch 'depends/rmk/restart' into next/cleanup 2012-01-07 11:51:28 +00:00
mm ARM: 7325/1: fix v7 boot with lockdep enabled 2012-02-15 21:09:52 +00:00
nwfpe ARM: 7207/1: Use generic ARM instruction set condition code checks for nwfpe. 2011-12-13 08:52:02 +00:00
oprofile oprofile, arm/sh: Fix oprofile_arch_exit() linkage issue 2011-12-23 11:58:34 +01:00
plat-iop Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci 2012-01-11 18:50:26 -08:00
plat-mxc arm-soc fixes for 3.3-rc: 2012-01-28 13:21:54 -08:00
plat-nomadik Merge branch 'next' of git://git.infradead.org/users/vkoul/slave-dma 2012-01-17 18:40:24 -08:00
plat-omap Merge branch 'omap1' into ams-delta 2012-03-01 15:20:00 -08:00
plat-orion ARM: orion: Fix USB phy for orion5x. 2012-02-09 16:16:35 -08:00
plat-pxa Merge branches 'drivers/macb-gem' and 'drivers/pxa-gpio' into next/drivers 2011-11-23 20:47:41 +00:00
plat-s3c24xx Merge branch 'master' into fixes 2012-01-13 15:00:22 +00:00
plat-s5p Merge branch 'driver-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core 2012-01-07 12:03:30 -08:00
plat-samsung ARM: SAMSUNG: Fix platform data setup for I2C adapter 0 2012-01-27 14:51:21 +09:00
plat-spear Merge branch 'depends/rmk/restart' into next/cleanup 2012-01-07 11:51:28 +00:00
plat-versatile ARM: 7293/1: logical_cpu_map: decouple CPU mapping from SMP 2012-01-23 10:20:05 +00:00
tools ARM: Update mach-types 2011-12-23 22:58:10 +00:00
vfp arm: remove several unnecessary module.h include instances 2011-10-31 19:30:48 -04:00
Kconfig ARM: 7291/1: cache: assume 64-byte L1 cachelines for ARMv7 CPUs 2012-01-23 10:20:05 +00:00
Kconfig-nommu
Kconfig.debug Merge branches 'at91/gpio', 'at91/ioremap', 'drivers/macb-gem-cleanup' and 'msm/misc' into next/cleanup 2011-12-01 12:34:21 +00:00
Makefile Consolidate i.MX 5 platforms to be under the new shared i.MX 3/5/6 tree. 2012-01-23 14:50:30 -08:00