linux/arch/arm/plat-omap/include/plat
Paul Walmsley cf4c87abe2 OMAP: McBSP: implement McBSP CLKR and FSR signal muxing via mach-omap2/mcbsp.c
The OMAP ASoC McBSP code implemented CLKR and FSR signal muxing via
direct System Control Module writes on OMAP2+.  This required the
omap_ctrl_{read,write}l() functions to be exported, which is against
policy: the only code that should call those functions directly is
OMAP core code, not device drivers.  omap_ctrl_{read,write}*() are no
longer exported, so the driver no longer builds as a module.

Fix the pinmuxing part of the problem by removing calls to
omap_ctrl_{read,write}l() from the OMAP ASoC McBSP code and
implementing signal muxing functions in arch/arm/mach-omap2/mcbsp.c.
Due to the unfortunate way that McBSP support is implemented in ASoC
and the OMAP tree, these symbols must be exported for use by
sound/soc/omap/omap-mcbsp.c.

Going forward, the McBSP device driver should be moved from
arch/arm/*omap* into drivers/ or sound/soc/*, and the CPU DAI driver
should be implemented as a platform_driver as many other ASoC CPU DAI
drivers are.  These two steps should resolve many of the layering
problems, which will rapidly reappear during a McBSP hwmod/PM runtime
conversion.

Signed-off-by: Paul Walmsley <paul@pwsan.com>
Acked-by: Jarkko Nikula <jhnikula@gmail.com>
Acked-by: Peter Ujfalusi <peter.ujfalusi@nokia.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-10-08 11:40:19 -06:00
..
blizzard.h omap: Checkpatch cleanup for blizzard.h 2010-03-11 14:50:00 -08:00
board-ams-delta.h
board-sx1.h
board-voiceblue.h
board.h omap: Move omap2 FS USB platform init code into mach-omap2/usb-fs.c 2010-07-05 16:31:29 +03:00
clkdev_omap.h OMAP3 clock: reorganize CK_* platform flags 2010-01-26 20:12:56 -07:00
clkdev.h
clock.h OMAP: clock: add kerneldoc for structures; move flags closer to structs 2010-07-26 16:34:27 -06:00
clockdomain.h OMAP clockdomain/powerdomain: improve documentation 2010-01-26 20:13:02 -07:00
common.h OMAP2: UART: remove set_uart_globals 2010-09-29 12:42:57 -07:00
control.h OMAP: McBSP: implement McBSP CLKR and FSR signal muxing via mach-omap2/mcbsp.c 2010-10-08 11:40:19 -06:00
cpu.h omap2/3: Update revision identification 2010-10-01 16:35:24 -07:00
display.h OMAP: DSS2: change manual update scaling setup 2010-08-05 16:52:03 +03:00
dma-44xx.h omap4: Add auto-generated irq and dma headers 2010-02-23 14:02:52 -08:00
dma.h OMAP2/3: UART: add omap_hwmod data for UARTs 1-4 2010-09-29 12:42:42 -07:00
dmtimer.h OMAP: mach-omap2: Fix static declaration warnings 2010-10-08 09:57:40 -07:00
flash.h omap: convert boards to use physmap-flash 2010-02-15 10:03:32 -08:00
fpga.h
gpio-switch.h
gpio.h OMAP2/3: GPIO: generalize prepare for idle 2010-05-12 09:39:16 -07:00
gpmc-smc91x.h
gpmc-smsc911x.h ARM: OMAP3LOGIC: Add generic smsc911x support when connected to GPMC 2010-09-28 11:39:18 -07:00
gpmc.h omap3 nand: cleanup virtual address usages 2010-08-02 15:30:38 +03:00
hardware.h
hwa742.h
i2c.h omap: i2c: Avoid compilation error in case the header is included multiple times 2010-09-27 10:15:25 -07:00
io.h omap3/4: Remove overlapping mapping of L4_WKUP io space 2010-02-23 10:57:41 -08:00
iommu2.h
iommu.h omap iommu: add functionality to get TLB miss interrupt 2010-06-29 07:55:07 +03:00
iovmm.h
irda.h
irqs-44xx.h omap4: Add auto-generated irq and dma headers 2010-02-23 14:02:52 -08:00
irqs.h OMAP2/3: UART: add omap_hwmod data for UARTs 1-4 2010-09-29 12:42:42 -07:00
keypad.h
lcd_mipid.h
led.h
mailbox.h omap: mailbox: reorganize headers 2010-08-04 15:50:20 +03:00
mcbsp.h OMAP: McBSP: implement McBSP CLKR and FSR signal muxing via mach-omap2/mcbsp.c 2010-10-08 11:40:19 -06:00
mcspi.h
memory.h omap2/3/4: Replace orred CONFIG_ARCH_OMAP2/3/4 with CONFIG_ARCH_OMAP2PLUS 2010-02-15 09:27:04 -08:00
menelaus.h omap2: Convert ARCH_OMAP24XX to ARCH_OMAP2 2010-02-15 09:27:01 -08:00
mmc.h Merge branches 'devel-omap1' and 'devel-omap2plus' into omap-for-linus 2010-10-08 10:19:53 -07:00
multi.h omap2/3/4: Fix multi.h when omap3 and omap4 are selected without omap2 2010-05-03 17:21:31 -07:00
mux.h Merge branch 'devel-misc' into omap-for-linus 2010-08-02 14:23:38 +03:00
nand.h omap3 nand: cleanup virtual address usages 2010-08-02 15:30:38 +03:00
nokia-dsi-panel.h OMAP: DSS2: Add Nokia DSI command mode panel configuration struct 2010-08-03 15:18:48 +03:00
omap7xx.h omap1: Add 7xx clocks and pin muxes for SPI 2010-01-08 10:29:05 -08:00
omap16xx.h omap: Clean the serial port defines 2010-02-15 08:48:53 -08:00
omap24xx.h OMAP2420: CTRL: fix OMAP242X_CTRL_REGADDR macro 2010-10-08 11:40:17 -06:00
omap34xx.h crypto: omap - Updates omap sham device related platform code 2010-05-03 11:10:03 +08:00
omap44xx.h OMAP4: PRM: Remove MPU internal code name and apply PRCM naming convention 2010-05-20 12:31:11 -06:00
omap730.h
omap850.h
omap1510.h
omap_device.h OMAP: omap_device: make all devices a child of a new parent device 2010-09-23 17:14:14 -07:00
omap_hwmod.h omap: hwmod: Handle modules with 16bit registers 2010-10-08 10:23:22 -07:00
omap-alsa.h
omap-pm.h OMAP: PM constraints: add omap_pm_set_min_clk_rate() 2010-07-26 16:34:34 -06:00
omap-serial.h serial: Add OMAP high-speed UART driver 2010-09-29 12:43:02 -07:00
onenand.h
param.h
powerdomain.h OMAP2plus: Fix static function warnings 2010-10-08 10:02:49 -07:00
prcm.h OMAP4: prcm: Add temporarily helper functions for rmw and read inside the PRM 2010-09-21 15:11:42 -06:00
sdrc.h OMAP: mach-omap2: Fix static declaration warnings 2010-10-08 09:57:40 -07:00
serial.h omap2/3: Fix DEBUG_LL for omap zoom2/3 2010-05-03 17:53:08 -07:00
smp.h omap: Fix sev instruction usage for multi-omap 2010-08-16 09:22:04 +03:00
sram.h OMAP: plat-omap: Fix static function warnings 2010-10-08 10:12:38 -07:00
system.h omap: pass the reboot command to the boot loader 2010-03-11 14:50:00 -08:00
tc.h
timex.h
uncompress.h omap3: Add minimal OMAP3 IGEP module support 2010-10-08 10:22:11 -07:00
usb.h omap: usb: fix build warning 2010-09-27 10:15:24 -07:00
vram.h ARM: OMAP: Convert OMAPFB and VRAM SDRAM reservation to LMB 2010-07-27 08:48:23 +01:00
vrfb.h