diff options
38 files changed, 85 insertions, 128 deletions
diff --git a/arch/arm/mach-omap1/board-ams-delta.c b/arch/arm/mach-omap1/board-ams-delta.c index 56446d2b284..275d7e50ae1 100644 --- a/arch/arm/mach-omap1/board-ams-delta.c +++ b/arch/arm/mach-omap1/board-ams-delta.c @@ -37,7 +37,7 @@  #include <plat/board-ams-delta.h>  #include <linux/platform_data/keypad-omap.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <mach/hardware.h>  #include <mach/ams-delta-fiq.h> diff --git a/arch/arm/mach-omap1/board-fsample.c b/arch/arm/mach-omap1/board-fsample.c index ad5ba9f00ef..63aa634ce29 100644 --- a/arch/arm/mach-omap1/board-fsample.c +++ b/arch/arm/mach-omap1/board-fsample.c @@ -28,7 +28,7 @@  #include <asm/mach/map.h>  #include <plat/tc.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <plat/flash.h>  #include <plat/fpga.h>  #include <linux/platform_data/keypad-omap.h> diff --git a/arch/arm/mach-omap1/board-generic.c b/arch/arm/mach-omap1/board-generic.c index 04b5fdaff83..4ec579fdd36 100644 --- a/arch/arm/mach-omap1/board-generic.c +++ b/arch/arm/mach-omap1/board-generic.c @@ -22,7 +22,7 @@  #include <asm/mach/arch.h>  #include <asm/mach/map.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <mach/usb.h> diff --git a/arch/arm/mach-omap1/board-h2.c b/arch/arm/mach-omap1/board-h2.c index 519d827570b..093297e50ec 100644 --- a/arch/arm/mach-omap1/board-h2.c +++ b/arch/arm/mach-omap1/board-h2.c @@ -37,7 +37,7 @@  #include <asm/mach/arch.h>  #include <asm/mach/map.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <plat/dma.h>  #include <plat/tc.h>  #include <plat/irda.h> diff --git a/arch/arm/mach-omap1/board-h3.c b/arch/arm/mach-omap1/board-h3.c index 4733eb510ba..adc0373299e 100644 --- a/arch/arm/mach-omap1/board-h3.c +++ b/arch/arm/mach-omap1/board-h3.c @@ -39,7 +39,7 @@  #include <asm/mach/arch.h>  #include <asm/mach/map.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <plat/tc.h>  #include <linux/platform_data/keypad-omap.h>  #include <plat/dma.h> diff --git a/arch/arm/mach-omap1/board-innovator.c b/arch/arm/mach-omap1/board-innovator.c index 083afa79dfb..04a67230cc9 100644 --- a/arch/arm/mach-omap1/board-innovator.c +++ b/arch/arm/mach-omap1/board-innovator.c @@ -31,7 +31,7 @@  #include <asm/mach/arch.h>  #include <asm/mach/map.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <plat/flash.h>  #include <plat/fpga.h>  #include <plat/tc.h> diff --git a/arch/arm/mach-omap1/board-nokia770.c b/arch/arm/mach-omap1/board-nokia770.c index 7b9fc99e705..7d5c06d6a52 100644 --- a/arch/arm/mach-omap1/board-nokia770.c +++ b/arch/arm/mach-omap1/board-nokia770.c @@ -28,7 +28,7 @@  #include <asm/mach/arch.h>  #include <asm/mach/map.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <plat/mmc.h>  #include <plat/clock.h> diff --git a/arch/arm/mach-omap1/board-osk.c b/arch/arm/mach-omap1/board-osk.c index c780a1b80c2..3ef0bba65b6 100644 --- a/arch/arm/mach-omap1/board-osk.c +++ b/arch/arm/mach-omap1/board-osk.c @@ -47,7 +47,7 @@  #include <asm/mach/map.h>  #include <plat/flash.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <plat/tc.h>  #include <mach/hardware.h> diff --git a/arch/arm/mach-omap1/board-palmte.c b/arch/arm/mach-omap1/board-palmte.c index e46f5c2ea63..b633b386240 100644 --- a/arch/arm/mach-omap1/board-palmte.c +++ b/arch/arm/mach-omap1/board-palmte.c @@ -35,7 +35,7 @@  #include <asm/mach/map.h>  #include <plat/flash.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <plat/tc.h>  #include <plat/dma.h>  #include <plat/irda.h> diff --git a/arch/arm/mach-omap1/board-palmtt.c b/arch/arm/mach-omap1/board-palmtt.c index e1c842be749..518b94dbeae 100644 --- a/arch/arm/mach-omap1/board-palmtt.c +++ b/arch/arm/mach-omap1/board-palmtt.c @@ -35,7 +35,7 @@  #include <plat/led.h>  #include <plat/flash.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <plat/dma.h>  #include <plat/tc.h>  #include <plat/irda.h> diff --git a/arch/arm/mach-omap1/board-palmz71.c b/arch/arm/mach-omap1/board-palmz71.c index a71b7f59b7c..f4a615d61f6 100644 --- a/arch/arm/mach-omap1/board-palmz71.c +++ b/arch/arm/mach-omap1/board-palmz71.c @@ -37,7 +37,7 @@  #include <asm/mach/map.h>  #include <plat/flash.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <plat/dma.h>  #include <plat/tc.h>  #include <plat/irda.h> diff --git a/arch/arm/mach-omap1/board-perseus2.c b/arch/arm/mach-omap1/board-perseus2.c index 87797025d6b..cc38e36b376 100644 --- a/arch/arm/mach-omap1/board-perseus2.c +++ b/arch/arm/mach-omap1/board-perseus2.c @@ -29,7 +29,7 @@  #include <asm/mach/map.h>  #include <plat/tc.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <plat/fpga.h>  #include <plat/flash.h> diff --git a/arch/arm/mach-omap1/board-sx1.c b/arch/arm/mach-omap1/board-sx1.c index a6a1ab63829..2fddf6f0b39 100644 --- a/arch/arm/mach-omap1/board-sx1.c +++ b/arch/arm/mach-omap1/board-sx1.c @@ -35,7 +35,7 @@  #include <asm/mach/map.h>  #include <plat/flash.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <plat/dma.h>  #include <plat/irda.h>  #include <plat/tc.h> diff --git a/arch/arm/mach-omap1/board-voiceblue.c b/arch/arm/mach-omap1/board-voiceblue.c index 1668af3017d..bd7b3fc18a4 100644 --- a/arch/arm/mach-omap1/board-voiceblue.c +++ b/arch/arm/mach-omap1/board-voiceblue.c @@ -33,7 +33,7 @@  #include <plat/board-voiceblue.h>  #include <plat/flash.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <plat/tc.h>  #include <mach/hardware.h> diff --git a/arch/arm/mach-omap1/devices.c b/arch/arm/mach-omap1/devices.c index 05fdbd992c7..0cc54dd553e 100644 --- a/arch/arm/mach-omap1/devices.c +++ b/arch/arm/mach-omap1/devices.c @@ -20,7 +20,7 @@  #include <asm/mach/map.h>  #include <plat/tc.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <plat/dma.h>  #include <plat/mmc.h> diff --git a/arch/arm/mach-omap1/i2c.c b/arch/arm/mach-omap1/i2c.c index 5446c991264..a0551a6d745 100644 --- a/arch/arm/mach-omap1/i2c.c +++ b/arch/arm/mach-omap1/i2c.c @@ -20,7 +20,7 @@   */  #include <plat/i2c.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <plat/cpu.h>  void __init omap1_i2c_mux_pins(int bus_id) diff --git a/arch/arm/plat-omap/include/plat/mux.h b/arch/arm/mach-omap1/include/mach/mux.h index 32394895920..32394895920 100644 --- a/arch/arm/plat-omap/include/plat/mux.h +++ b/arch/arm/mach-omap1/include/mach/mux.h diff --git a/arch/arm/mach-omap1/io.c b/arch/arm/mach-omap1/io.c index 6c95a59f0f1..6a5baab1f4c 100644 --- a/arch/arm/mach-omap1/io.c +++ b/arch/arm/mach-omap1/io.c @@ -16,7 +16,7 @@  #include <asm/tlb.h>  #include <asm/mach/map.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <plat/tc.h>  #include <plat/dma.h> diff --git a/arch/arm/mach-omap1/leds.c b/arch/arm/mach-omap1/leds.c index 7b1a3833165..4071479f710 100644 --- a/arch/arm/mach-omap1/leds.c +++ b/arch/arm/mach-omap1/leds.c @@ -11,7 +11,7 @@  #include <asm/leds.h>  #include <asm/mach-types.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include "leds.h" diff --git a/arch/arm/mach-omap1/mcbsp.c b/arch/arm/mach-omap1/mcbsp.c index cf2ed9ef135..bdc2e7541ad 100644 --- a/arch/arm/mach-omap1/mcbsp.c +++ b/arch/arm/mach-omap1/mcbsp.c @@ -20,7 +20,7 @@  #include <linux/slab.h>  #include <plat/dma.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <plat/cpu.h>  #include <linux/platform_data/asoc-ti-mcbsp.h> diff --git a/arch/arm/mach-omap1/mux.c b/arch/arm/mach-omap1/mux.c index e9cc52d4cb2..667ce5027f6 100644 --- a/arch/arm/mach-omap1/mux.c +++ b/arch/arm/mach-omap1/mux.c @@ -29,7 +29,7 @@  #include <mach/hardware.h> -#include <plat/mux.h> +#include <mach/mux.h>  #ifdef CONFIG_OMAP_MUX @@ -451,6 +451,56 @@ static int __init_or_module omap1_cfg_reg(const struct pin_config *cfg)  #endif  } +static struct omap_mux_cfg *mux_cfg; + +int __init omap_mux_register(struct omap_mux_cfg *arch_mux_cfg) +{ +	if (!arch_mux_cfg || !arch_mux_cfg->pins || arch_mux_cfg->size == 0 +			|| !arch_mux_cfg->cfg_reg) { +		printk(KERN_ERR "Invalid pin table\n"); +		return -EINVAL; +	} + +	mux_cfg = arch_mux_cfg; + +	return 0; +} + +/* + * Sets the Omap MUX and PULL_DWN registers based on the table + */ +int __init_or_module omap_cfg_reg(const unsigned long index) +{ +	struct pin_config *reg; + +	if (!cpu_class_is_omap1()) { +		printk(KERN_ERR "mux: Broken omap_cfg_reg(%lu) entry\n", +				index); +		WARN_ON(1); +		return -EINVAL; +	} + +	if (mux_cfg == NULL) { +		printk(KERN_ERR "Pin mux table not initialized\n"); +		return -ENODEV; +	} + +	if (index >= mux_cfg->size) { +		printk(KERN_ERR "Invalid pin mux index: %lu (%lu)\n", +		       index, mux_cfg->size); +		dump_stack(); +		return -ENODEV; +	} + +	reg = &mux_cfg->pins[index]; + +	if (!mux_cfg->cfg_reg) +		return -ENODEV; + +	return mux_cfg->cfg_reg(reg); +} +EXPORT_SYMBOL(omap_cfg_reg); +  int __init omap1_mux_init(void)  {  	if (cpu_is_omap7xx()) { @@ -468,4 +518,8 @@ int __init omap1_mux_init(void)  	return omap_mux_register(&arch_mux_cfg);  } -#endif +#else +#define omap_mux_init() do {} while(0) +#define omap_cfg_reg(x)	do {} while(0) +#endif	/* CONFIG_OMAP_MUX */ + diff --git a/arch/arm/mach-omap1/pm.c b/arch/arm/mach-omap1/pm.c index b2560d32b3a..47ec1615548 100644 --- a/arch/arm/mach-omap1/pm.c +++ b/arch/arm/mach-omap1/pm.c @@ -53,7 +53,7 @@  #include <plat/clock.h>  #include <plat/sram.h>  #include <plat/tc.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <plat/dma.h>  #include <plat/dmtimer.h> diff --git a/arch/arm/mach-omap1/serial.c b/arch/arm/mach-omap1/serial.c index 0d1709b1a6f..b9d6834af83 100644 --- a/arch/arm/mach-omap1/serial.c +++ b/arch/arm/mach-omap1/serial.c @@ -22,7 +22,7 @@  #include <asm/mach-types.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <plat/fpga.h>  #include "pm.h" diff --git a/arch/arm/mach-omap1/usb.c b/arch/arm/mach-omap1/usb.c index 65f88176fba..84267edd942 100644 --- a/arch/arm/mach-omap1/usb.c +++ b/arch/arm/mach-omap1/usb.c @@ -26,7 +26,7 @@  #include <asm/irq.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <mach/usb.h> diff --git a/arch/arm/mach-omap2/common.c b/arch/arm/mach-omap2/common.c index 8e43c4d885d..17950c6e130 100644 --- a/arch/arm/mach-omap2/common.c +++ b/arch/arm/mach-omap2/common.c @@ -17,7 +17,6 @@  #include <linux/clk.h>  #include <linux/io.h> -#include <plat/mux.h>  #include <plat/clock.h>  #include "soc.h" diff --git a/arch/arm/mach-omap2/hsmmc.c b/arch/arm/mach-omap2/hsmmc.c index 80399d74095..03ebf47cfa9 100644 --- a/arch/arm/mach-omap2/hsmmc.c +++ b/arch/arm/mach-omap2/hsmmc.c @@ -19,7 +19,6 @@  #include <plat/mmc.h>  #include <plat/omap-pm.h> -#include <plat/mux.h>  #include <plat/omap_device.h>  #include "mux.h" diff --git a/arch/arm/plat-omap/Makefile b/arch/arm/plat-omap/Makefile index a017e994e00..dacaee009a4 100644 --- a/arch/arm/plat-omap/Makefile +++ b/arch/arm/plat-omap/Makefile @@ -3,7 +3,7 @@  #  # Common support -obj-y := common.o sram.o clock.o dma.o mux.o fb.o counter_32k.o +obj-y := common.o sram.o clock.o dma.o fb.o counter_32k.o  obj-m :=  obj-n :=  obj-  := diff --git a/arch/arm/plat-omap/i2c.c b/arch/arm/plat-omap/i2c.c index 40bc06a7ac4..6013831a043 100644 --- a/arch/arm/plat-omap/i2c.c +++ b/arch/arm/plat-omap/i2c.c @@ -32,7 +32,6 @@  #include <linux/clk.h>  #include <mach/irqs.h> -#include <plat/mux.h>  #include <plat/i2c.h>  #include <plat/omap-pm.h>  #include <plat/omap_device.h> diff --git a/arch/arm/plat-omap/include/plat/omap-serial.h b/arch/arm/plat-omap/include/plat/omap-serial.h index a531149823b..b2eac60b690 100644 --- a/arch/arm/plat-omap/include/plat/omap-serial.h +++ b/arch/arm/plat-omap/include/plat/omap-serial.h @@ -21,8 +21,6 @@  #include <linux/device.h>  #include <linux/pm_qos.h> -#include <plat/mux.h> -  #define DRIVER_NAME	"omap_uart"  /* diff --git a/arch/arm/plat-omap/mux.c b/arch/arm/plat-omap/mux.c deleted file mode 100644 index fd0d3aad00e..00000000000 --- a/arch/arm/plat-omap/mux.c +++ /dev/null @@ -1,90 +0,0 @@ -/* - * linux/arch/arm/plat-omap/mux.c - * - * Utility to set the Omap MUX and PULL_DWN registers from a table in mux.h - * - * Copyright (C) 2003 - 2008 Nokia Corporation - * - * Written by Tony Lindgren - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - */ -#include <linux/module.h> -#include <linux/init.h> -#include <linux/kernel.h> -#include <linux/io.h> -#include <linux/spinlock.h> - -#include <asm/system.h> - -#include <plat/cpu.h> -#include <plat/mux.h> - -#ifdef CONFIG_OMAP_MUX - -static struct omap_mux_cfg *mux_cfg; - -int __init omap_mux_register(struct omap_mux_cfg *arch_mux_cfg) -{ -	if (!arch_mux_cfg || !arch_mux_cfg->pins || arch_mux_cfg->size == 0 -			|| !arch_mux_cfg->cfg_reg) { -		printk(KERN_ERR "Invalid pin table\n"); -		return -EINVAL; -	} - -	mux_cfg = arch_mux_cfg; - -	return 0; -} - -/* - * Sets the Omap MUX and PULL_DWN registers based on the table - */ -int __init_or_module omap_cfg_reg(const unsigned long index) -{ -	struct pin_config *reg; - -	if (!cpu_class_is_omap1()) { -		printk(KERN_ERR "mux: Broken omap_cfg_reg(%lu) entry\n", -				index); -		WARN_ON(1); -		return -EINVAL; -	} - -	if (mux_cfg == NULL) { -		printk(KERN_ERR "Pin mux table not initialized\n"); -		return -ENODEV; -	} - -	if (index >= mux_cfg->size) { -		printk(KERN_ERR "Invalid pin mux index: %lu (%lu)\n", -		       index, mux_cfg->size); -		dump_stack(); -		return -ENODEV; -	} - -	reg = &mux_cfg->pins[index]; - -	if (!mux_cfg->cfg_reg) -		return -ENODEV; - -	return mux_cfg->cfg_reg(reg); -} -EXPORT_SYMBOL(omap_cfg_reg); -#else -#define omap_mux_init() do {} while(0) -#define omap_cfg_reg(x)	do {} while(0) -#endif	/* CONFIG_OMAP_MUX */ diff --git a/drivers/mmc/host/omap.c b/drivers/mmc/host/omap.c index 87c0293a1ee..c6259a82954 100644 --- a/drivers/mmc/host/omap.c +++ b/drivers/mmc/host/omap.c @@ -36,7 +36,6 @@  #include <plat/mmc.h>  #include <asm/gpio.h>  #include <plat/dma.h> -#include <plat/mux.h>  #include <plat/fpga.h>  #define	OMAP_MMC_REG_CMD	0x00 diff --git a/drivers/pcmcia/omap_cf.c b/drivers/pcmcia/omap_cf.c index 0ad06a3bd56..fa74efe8220 100644 --- a/drivers/pcmcia/omap_cf.c +++ b/drivers/pcmcia/omap_cf.c @@ -24,7 +24,7 @@  #include <asm/io.h>  #include <asm/sizes.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <plat/tc.h> diff --git a/drivers/spi/spi-omap-uwire.c b/drivers/spi/spi-omap-uwire.c index a3996a1c634..0a94d9dc9c3 100644 --- a/drivers/spi/spi-omap-uwire.c +++ b/drivers/spi/spi-omap-uwire.c @@ -52,7 +52,7 @@  #include <asm/io.h>  #include <asm/mach-types.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <mach/omap7xx.h>	/* OMAP7XX_IO_CONF registers */ diff --git a/drivers/usb/host/ohci-omap.c b/drivers/usb/host/ohci-omap.c index f8b2d91851f..4531d03503c 100644 --- a/drivers/usb/host/ohci-omap.c +++ b/drivers/usb/host/ohci-omap.c @@ -24,7 +24,7 @@  #include <asm/io.h>  #include <asm/mach-types.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <plat/fpga.h>  #include <mach/hardware.h> diff --git a/drivers/usb/musb/tusb6010_omap.c b/drivers/usb/musb/tusb6010_omap.c index b67b4bc596c..89f0709f893 100644 --- a/drivers/usb/musb/tusb6010_omap.c +++ b/drivers/usb/musb/tusb6010_omap.c @@ -17,7 +17,6 @@  #include <linux/dma-mapping.h>  #include <linux/slab.h>  #include <plat/dma.h> -#include <plat/mux.h>  #include "musb_core.h"  #include "tusb6010.h" diff --git a/drivers/usb/otg/isp1301_omap.c b/drivers/usb/otg/isp1301_omap.c index 7a88667742b..81f1f9a0be8 100644 --- a/drivers/usb/otg/isp1301_omap.c +++ b/drivers/usb/otg/isp1301_omap.c @@ -36,7 +36,7 @@  #include <asm/irq.h>  #include <asm/mach-types.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include <mach/usb.h> diff --git a/drivers/video/backlight/omap1_bl.c b/drivers/video/backlight/omap1_bl.c index 92257ef1940..9a046a4c98f 100644 --- a/drivers/video/backlight/omap1_bl.c +++ b/drivers/video/backlight/omap1_bl.c @@ -30,7 +30,7 @@  #include <linux/platform_data/omap1_bl.h>  #include <mach/hardware.h> -#include <plat/mux.h> +#include <mach/mux.h>  #define OMAPBL_MAX_INTENSITY		0xff diff --git a/drivers/video/omap/lcd_osk.c b/drivers/video/omap/lcd_osk.c index 5914220dfa9..3aa62da8919 100644 --- a/drivers/video/omap/lcd_osk.c +++ b/drivers/video/omap/lcd_osk.c @@ -24,7 +24,7 @@  #include <linux/platform_device.h>  #include <asm/gpio.h> -#include <plat/mux.h> +#include <mach/mux.h>  #include "omapfb.h"  static int osk_panel_init(struct lcd_panel *panel, struct omapfb_device *fbdev)  |