linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] omap2+: Few mux patches
@ 2011-03-11 20:34 Tony Lindgren
  2011-03-11 20:34 ` [PATCH 1/2] omap2+: mux: Fix compile when CONFIG_OMAP_MUX is not selected Tony Lindgren
  2011-03-11 20:34 ` [PATCH 2/2] omap4: mux: Remove duplicate mux modes Tony Lindgren
  0 siblings, 2 replies; 6+ messages in thread
From: Tony Lindgren @ 2011-03-11 20:34 UTC (permalink / raw)
  To: linux-arm-kernel

Hi all,

Here are few omap mux related patches for review.

Regards,

Tony

---

Tony Lindgren (2):
      omap2+: mux: Fix compile when CONFIG_OMAP_MUX is not selected
      omap4: mux: Remove duplicate mux modes


 arch/arm/mach-omap2/board-cm-t35.c     |    2 
 arch/arm/mach-omap2/board-cm-t3517.c   |    2 
 arch/arm/mach-omap2/board-devkit8000.c |    2 
 arch/arm/mach-omap2/mux44xx.c          |  282 +-------------------------------
 4 files changed, 12 insertions(+), 276 deletions(-)

-- 
Signature

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH 1/2] omap2+: mux: Fix compile when CONFIG_OMAP_MUX is not selected
  2011-03-11 20:34 [PATCH 0/2] omap2+: Few mux patches Tony Lindgren
@ 2011-03-11 20:34 ` Tony Lindgren
  2011-03-11 20:34 ` [PATCH 2/2] omap4: mux: Remove duplicate mux modes Tony Lindgren
  1 sibling, 0 replies; 6+ messages in thread
From: Tony Lindgren @ 2011-03-11 20:34 UTC (permalink / raw)
  To: linux-arm-kernel

Fix compile when CONFIG_OMAP_MUX is not selected

Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/mach-omap2/board-cm-t35.c     |    2 ++
 arch/arm/mach-omap2/board-cm-t3517.c   |    2 ++
 arch/arm/mach-omap2/board-devkit8000.c |    2 ++
 3 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-omap2/board-cm-t35.c b/arch/arm/mach-omap2/board-cm-t35.c
index 27bea54..71545c9 100644
--- a/arch/arm/mach-omap2/board-cm-t35.c
+++ b/arch/arm/mach-omap2/board-cm-t35.c
@@ -675,6 +675,7 @@ static void __init cm_t35_init_early(void)
 			     mt46h32m32lf6_sdrc_params);
 }
 
+#ifdef CONFIG_OMAP_MUX
 static struct omap_board_mux board_mux[] __initdata = {
 	/* nCS and IRQ for CM-T35 ethernet */
 	OMAP3_MUX(GPMC_NCS5, OMAP_MUX_MODE0),
@@ -772,6 +773,7 @@ static struct omap_board_mux board_mux[] __initdata = {
 
 	{ .reg_offset = OMAP_MUX_TERMINATOR },
 };
+#endif
 
 static struct omap_musb_board_data musb_board_data = {
 	.interface_type		= MUSB_INTERFACE_ULPI,
diff --git a/arch/arm/mach-omap2/board-cm-t3517.c b/arch/arm/mach-omap2/board-cm-t3517.c
index 9da6e82..4c737e4 100644
--- a/arch/arm/mach-omap2/board-cm-t3517.c
+++ b/arch/arm/mach-omap2/board-cm-t3517.c
@@ -260,6 +260,7 @@ static void __init cm_t3517_init_early(void)
 	omap2_init_common_devices(NULL, NULL);
 }
 
+#ifdef CONFIG_OMAP_MUX
 static struct omap_board_mux board_mux[] __initdata = {
 	/* GPIO186 - Green LED */
 	OMAP3_MUX(SYS_CLKOUT2, OMAP_MUX_MODE4 | OMAP_PIN_OUTPUT),
@@ -285,6 +286,7 @@ static struct omap_board_mux board_mux[] __initdata = {
 
 	{ .reg_offset = OMAP_MUX_TERMINATOR },
 };
+#endif
 
 static void __init cm_t3517_init(void)
 {
diff --git a/arch/arm/mach-omap2/board-devkit8000.c b/arch/arm/mach-omap2/board-devkit8000.c
index 728f27c..472a25b 100644
--- a/arch/arm/mach-omap2/board-devkit8000.c
+++ b/arch/arm/mach-omap2/board-devkit8000.c
@@ -625,6 +625,7 @@ static const struct ehci_hcd_omap_platform_data ehci_pdata __initconst = {
 	.reset_gpio_port[2]  = -EINVAL
 };
 
+#ifdef CONFIG_OMAP_MUX
 static struct omap_board_mux board_mux[] __initdata = {
 	/* nCS and IRQ for Devkit8000 ethernet */
 	OMAP3_MUX(GPMC_NCS6, OMAP_MUX_MODE0),
@@ -778,6 +779,7 @@ static struct omap_board_mux board_mux[] __initdata = {
 
 	{ .reg_offset = OMAP_MUX_TERMINATOR },
 };
+#endif
 
 static void __init devkit8000_init(void)
 {

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 2/2] omap4: mux: Remove duplicate mux modes
  2011-03-11 20:34 [PATCH 0/2] omap2+: Few mux patches Tony Lindgren
  2011-03-11 20:34 ` [PATCH 1/2] omap2+: mux: Fix compile when CONFIG_OMAP_MUX is not selected Tony Lindgren
@ 2011-03-11 20:34 ` Tony Lindgren
  2011-03-14  8:41   ` Cousson, Benoit
  1 sibling, 1 reply; 6+ messages in thread
From: Tony Lindgren @ 2011-03-11 20:34 UTC (permalink / raw)
  To: linux-arm-kernel

Remove duplicate mux modes to make the binary smaller:

text    data     bss     dec     hex filename
9378   24472       0   33850    843a mux44xx.o
9378   19104       0   28482    6f42 mux44xx.o

Cc: Benoit Cousson <b-cousson@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/mach-omap2/mux44xx.c |  282 +----------------------------------------
 1 files changed, 6 insertions(+), 276 deletions(-)

diff --git a/arch/arm/mach-omap2/mux44xx.c b/arch/arm/mach-omap2/mux44xx.c
index c322e7b..9a66445 100644
--- a/arch/arm/mach-omap2/mux44xx.c
+++ b/arch/arm/mach-omap2/mux44xx.c
@@ -755,25 +755,9 @@ static struct omap_ball __initdata omap4_core_cbl_ball[] = {
 #endif
 
 /*
- * Superset of all mux modes for omap4 ES2.0
+ * Signals different on ES2.0 compared to superset
  */
-static struct omap_mux __initdata omap4_es2_core_muxmodes[] = {
-	_OMAP4_MUXENTRY(GPMC_AD0, 0, "gpmc_ad0", "sdmmc2_dat0", NULL, NULL,
-			NULL, NULL, NULL, NULL),
-	_OMAP4_MUXENTRY(GPMC_AD1, 0, "gpmc_ad1", "sdmmc2_dat1", NULL, NULL,
-			NULL, NULL, NULL, NULL),
-	_OMAP4_MUXENTRY(GPMC_AD2, 0, "gpmc_ad2", "sdmmc2_dat2", NULL, NULL,
-			NULL, NULL, NULL, NULL),
-	_OMAP4_MUXENTRY(GPMC_AD3, 0, "gpmc_ad3", "sdmmc2_dat3", NULL, NULL,
-			NULL, NULL, NULL, NULL),
-	_OMAP4_MUXENTRY(GPMC_AD4, 0, "gpmc_ad4", "sdmmc2_dat4",
-			"sdmmc2_dir_dat0", NULL, NULL, NULL, NULL, NULL),
-	_OMAP4_MUXENTRY(GPMC_AD5, 0, "gpmc_ad5", "sdmmc2_dat5",
-			"sdmmc2_dir_dat1", NULL, NULL, NULL, NULL, NULL),
-	_OMAP4_MUXENTRY(GPMC_AD6, 0, "gpmc_ad6", "sdmmc2_dat6",
-			"sdmmc2_dir_cmd", NULL, NULL, NULL, NULL, NULL),
-	_OMAP4_MUXENTRY(GPMC_AD7, 0, "gpmc_ad7", "sdmmc2_dat7",
-			"sdmmc2_clk_fdbk", NULL, NULL, NULL, NULL, NULL),
+static struct omap_mux __initdata omap4_es2_core_subset[] = {
 	_OMAP4_MUXENTRY(GPMC_AD8, 32, "gpmc_ad8", "kpd_row0", "c2c_data15",
 			"gpio_32", NULL, "sdmmc1_dat0", NULL, NULL),
 	_OMAP4_MUXENTRY(GPMC_AD9, 33, "gpmc_ad9", "kpd_row1", "c2c_data14",
@@ -792,52 +776,15 @@ static struct omap_mux __initdata omap4_es2_core_muxmodes[] = {
 			"gpio_39", NULL, "sdmmc1_dat7", NULL, NULL),
 	_OMAP4_MUXENTRY(GPMC_A16, 40, "gpmc_a16", "kpd_row4", "c2c_datain0",
 			"gpio_40", "venc_656_data0", NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(GPMC_A17, 41, "gpmc_a17", "kpd_row5", "c2c_datain1",
-			"gpio_41", "venc_656_data1", NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(GPMC_A18, 42, "gpmc_a18", "kpd_row6", "c2c_datain2",
-			"gpio_42", "venc_656_data2", NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(GPMC_A19, 43, "gpmc_a19", "kpd_row7", "c2c_datain3",
-			"gpio_43", "venc_656_data3", NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(GPMC_A20, 44, "gpmc_a20", "kpd_col4", "c2c_datain4",
-			"gpio_44", "venc_656_data4", NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(GPMC_A21, 45, "gpmc_a21", "kpd_col5", "c2c_datain5",
-			"gpio_45", "venc_656_data5", NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(GPMC_A22, 46, "gpmc_a22", "kpd_col6", "c2c_datain6",
-			"gpio_46", "venc_656_data6", NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(GPMC_A23, 47, "gpmc_a23", "kpd_col7", "c2c_datain7",
-			"gpio_47", "venc_656_data7", NULL, NULL, "safe_mode"),
 	_OMAP4_MUXENTRY(GPMC_A24, 48, "gpmc_a24", "kpd_col8", "c2c_clkout0",
 			"gpio_48", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(GPMC_A25, 49, "gpmc_a25", NULL, "c2c_clkout1",
-			"gpio_49", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(GPMC_NCS0, 50, "gpmc_ncs0", NULL, NULL, "gpio_50",
-			"sys_ndmareq0", NULL, NULL, NULL),
-	_OMAP4_MUXENTRY(GPMC_NCS1, 51, "gpmc_ncs1", NULL, "c2c_dataout6",
-			"gpio_51", NULL, NULL, NULL, "safe_mode"),
 	_OMAP4_MUXENTRY(GPMC_NCS2, 52, "gpmc_ncs2", "kpd_row8",
 			"c2c_dataout7", "gpio_52", NULL, NULL, NULL,
 			"safe_mode"),
-	_OMAP4_MUXENTRY(GPMC_NCS3, 53, "gpmc_ncs3", "gpmc_dir",
-			"c2c_dataout4", "gpio_53", NULL, NULL, NULL,
-			"safe_mode"),
-	_OMAP4_MUXENTRY(GPMC_NWP, 54, "gpmc_nwp", "dsi1_te0", NULL, "gpio_54",
-			"sys_ndmareq1", NULL, NULL, NULL),
 	_OMAP4_MUXENTRY(GPMC_CLK, 55, "gpmc_clk", NULL, NULL, "gpio_55",
 			"sys_ndmareq2", "sdmmc1_cmd", NULL, NULL),
 	_OMAP4_MUXENTRY(GPMC_NADV_ALE, 56, "gpmc_nadv_ale", "dsi1_te1", NULL,
 			"gpio_56", "sys_ndmareq3", "sdmmc1_clk", NULL, NULL),
-	_OMAP4_MUXENTRY(GPMC_NOE, 0, "gpmc_noe", "sdmmc2_clk", NULL, NULL,
-			NULL, NULL, NULL, NULL),
-	_OMAP4_MUXENTRY(GPMC_NWE, 0, "gpmc_nwe", "sdmmc2_cmd", NULL, NULL,
-			NULL, NULL, NULL, NULL),
-	_OMAP4_MUXENTRY(GPMC_NBE0_CLE, 59, "gpmc_nbe0_cle", "dsi2_te0", NULL,
-			"gpio_59", NULL, NULL, NULL, NULL),
-	_OMAP4_MUXENTRY(GPMC_NBE1, 60, "gpmc_nbe1", NULL, "c2c_dataout5",
-			"gpio_60", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(GPMC_WAIT0, 61, "gpmc_wait0", "dsi2_te1", NULL,
-			"gpio_61", NULL, NULL, NULL, NULL),
-	_OMAP4_MUXENTRY(GPMC_WAIT1, 62, "gpmc_wait1", NULL, "c2c_dataout2",
-			"gpio_62", NULL, NULL, NULL, "safe_mode"),
 	_OMAP4_MUXENTRY(GPMC_WAIT2, 100, "gpmc_wait2", "usbc1_icusb_txen",
 			"c2c_dataout3", "gpio_100", "sys_ndmareq0", NULL,
 			NULL, "safe_mode"),
@@ -851,62 +798,6 @@ static struct omap_mux __initdata omap4_es2_core_muxmodes[] = {
 	_OMAP4_MUXENTRY(GPMC_NCS7, 104, "gpmc_ncs7", "dsi2_te1",
 			"c2c_dataout1", "gpio_104", NULL, NULL, NULL,
 			"safe_mode"),
-	_OMAP4_MUXENTRY(HDMI_HPD, 63, "hdmi_hpd", NULL, NULL, "gpio_63", NULL,
-			NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(HDMI_CEC, 64, "hdmi_cec", NULL, NULL, "gpio_64", NULL,
-			NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(HDMI_DDC_SCL, 65, "hdmi_ddc_scl", NULL, NULL,
-			"gpio_65", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(HDMI_DDC_SDA, 66, "hdmi_ddc_sda", NULL, NULL,
-			"gpio_66", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(CSI21_DX0, 0, "csi21_dx0", NULL, NULL, "gpi_67", NULL,
-			NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(CSI21_DY0, 0, "csi21_dy0", NULL, NULL, "gpi_68", NULL,
-			NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(CSI21_DX1, 0, "csi21_dx1", NULL, NULL, "gpi_69", NULL,
-			NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(CSI21_DY1, 0, "csi21_dy1", NULL, NULL, "gpi_70", NULL,
-			NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(CSI21_DX2, 0, "csi21_dx2", NULL, NULL, "gpi_71", NULL,
-			NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(CSI21_DY2, 0, "csi21_dy2", NULL, NULL, "gpi_72", NULL,
-			NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(CSI21_DX3, 0, "csi21_dx3", NULL, NULL, "gpi_73", NULL,
-			NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(CSI21_DY3, 0, "csi21_dy3", NULL, NULL, "gpi_74", NULL,
-			NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(CSI21_DX4, 0, "csi21_dx4", NULL, NULL, "gpi_75", NULL,
-			NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(CSI21_DY4, 0, "csi21_dy4", NULL, NULL, "gpi_76", NULL,
-			NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(CSI22_DX0, 0, "csi22_dx0", NULL, NULL, "gpi_77", NULL,
-			NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(CSI22_DY0, 0, "csi22_dy0", NULL, NULL, "gpi_78", NULL,
-			NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(CSI22_DX1, 0, "csi22_dx1", NULL, NULL, "gpi_79", NULL,
-			NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(CSI22_DY1, 0, "csi22_dy1", NULL, NULL, "gpi_80", NULL,
-			NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(CAM_SHUTTER, 81, "cam_shutter", NULL, NULL, "gpio_81",
-			NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(CAM_STROBE, 82, "cam_strobe", NULL, NULL, "gpio_82",
-			NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(CAM_GLOBALRESET, 83, "cam_globalreset", NULL, NULL,
-			"gpio_83", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(USBB1_ULPITLL_CLK, 84, "usbb1_ulpitll_clk",
-			"hsi1_cawake", NULL, "gpio_84", "usbb1_ulpiphy_clk",
-			NULL, "hw_dbg20", "safe_mode"),
-	_OMAP4_MUXENTRY(USBB1_ULPITLL_STP, 85, "usbb1_ulpitll_stp",
-			"hsi1_cadata", "mcbsp4_clkr", "gpio_85",
-			"usbb1_ulpiphy_stp", "usbb1_mm_rxdp", "hw_dbg21",
-			"safe_mode"),
-	_OMAP4_MUXENTRY(USBB1_ULPITLL_DIR, 86, "usbb1_ulpitll_dir",
-			"hsi1_caflag", "mcbsp4_fsr", "gpio_86",
-			"usbb1_ulpiphy_dir", NULL, "hw_dbg22", "safe_mode"),
-	_OMAP4_MUXENTRY(USBB1_ULPITLL_NXT, 87, "usbb1_ulpitll_nxt",
-			"hsi1_acready", "mcbsp4_fsx", "gpio_87",
-			"usbb1_ulpiphy_nxt", "usbb1_mm_rxdm", "hw_dbg23",
-			"safe_mode"),
 	_OMAP4_MUXENTRY(USBB1_ULPITLL_DAT0, 88, "usbb1_ulpitll_dat0",
 			"hsi1_acwake", "mcbsp4_clkx", "gpio_88",
 			"usbb1_ulpiphy_dat0", "usbb1_mm_txen", "hw_dbg24",
@@ -922,84 +813,6 @@ static struct omap_mux __initdata omap4_es2_core_muxmodes[] = {
 	_OMAP4_MUXENTRY(USBB1_ULPITLL_DAT3, 91, "usbb1_ulpitll_dat3",
 			"hsi1_caready", NULL, "gpio_91", "usbb1_ulpiphy_dat3",
 			"usbb1_mm_rxrcv", "hw_dbg27", "safe_mode"),
-	_OMAP4_MUXENTRY(USBB1_ULPITLL_DAT4, 92, "usbb1_ulpitll_dat4",
-			"dmtimer8_pwm_evt", "abe_mcbsp3_dr", "gpio_92",
-			"usbb1_ulpiphy_dat4", NULL, "hw_dbg28", "safe_mode"),
-	_OMAP4_MUXENTRY(USBB1_ULPITLL_DAT5, 93, "usbb1_ulpitll_dat5",
-			"dmtimer9_pwm_evt", "abe_mcbsp3_dx", "gpio_93",
-			"usbb1_ulpiphy_dat5", NULL, "hw_dbg29", "safe_mode"),
-	_OMAP4_MUXENTRY(USBB1_ULPITLL_DAT6, 94, "usbb1_ulpitll_dat6",
-			"dmtimer10_pwm_evt", "abe_mcbsp3_clkx", "gpio_94",
-			"usbb1_ulpiphy_dat6", "abe_dmic_din3", "hw_dbg30",
-			"safe_mode"),
-	_OMAP4_MUXENTRY(USBB1_ULPITLL_DAT7, 95, "usbb1_ulpitll_dat7",
-			"dmtimer11_pwm_evt", "abe_mcbsp3_fsx", "gpio_95",
-			"usbb1_ulpiphy_dat7", "abe_dmic_clk3", "hw_dbg31",
-			"safe_mode"),
-	_OMAP4_MUXENTRY(USBB1_HSIC_DATA, 96, "usbb1_hsic_data", NULL, NULL,
-			"gpio_96", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(USBB1_HSIC_STROBE, 97, "usbb1_hsic_strobe", NULL,
-			NULL, "gpio_97", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(USBC1_ICUSB_DP, 98, "usbc1_icusb_dp", NULL, NULL,
-			"gpio_98", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(USBC1_ICUSB_DM, 99, "usbc1_icusb_dm", NULL, NULL,
-			"gpio_99", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(SDMMC1_CLK, 100, "sdmmc1_clk", NULL, "dpm_emu19",
-			"gpio_100", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(SDMMC1_CMD, 101, "sdmmc1_cmd", NULL, "uart1_rx",
-			"gpio_101", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(SDMMC1_DAT0, 102, "sdmmc1_dat0", NULL, "dpm_emu18",
-			"gpio_102", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(SDMMC1_DAT1, 103, "sdmmc1_dat1", NULL, "dpm_emu17",
-			"gpio_103", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(SDMMC1_DAT2, 104, "sdmmc1_dat2", NULL, "dpm_emu16",
-			"gpio_104", "jtag_tms_tmsc", NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(SDMMC1_DAT3, 105, "sdmmc1_dat3", NULL, "dpm_emu15",
-			"gpio_105", "jtag_tck", NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(SDMMC1_DAT4, 106, "sdmmc1_dat4", NULL, NULL,
-			"gpio_106", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(SDMMC1_DAT5, 107, "sdmmc1_dat5", NULL, NULL,
-			"gpio_107", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(SDMMC1_DAT6, 108, "sdmmc1_dat6", NULL, NULL,
-			"gpio_108", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(SDMMC1_DAT7, 109, "sdmmc1_dat7", NULL, NULL,
-			"gpio_109", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(ABE_MCBSP2_CLKX, 110, "abe_mcbsp2_clkx", "mcspi2_clk",
-			"abe_mcasp_ahclkx", "gpio_110", "usbb2_mm_rxdm",
-			NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(ABE_MCBSP2_DR, 111, "abe_mcbsp2_dr", "mcspi2_somi",
-			"abe_mcasp_axr", "gpio_111", "usbb2_mm_rxdp", NULL,
-			NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(ABE_MCBSP2_DX, 112, "abe_mcbsp2_dx", "mcspi2_simo",
-			"abe_mcasp_amute", "gpio_112", "usbb2_mm_rxrcv", NULL,
-			NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(ABE_MCBSP2_FSX, 113, "abe_mcbsp2_fsx", "mcspi2_cs0",
-			"abe_mcasp_afsx", "gpio_113", "usbb2_mm_txen", NULL,
-			NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(ABE_MCBSP1_CLKX, 114, "abe_mcbsp1_clkx",
-			"abe_slimbus1_clock", NULL, "gpio_114", NULL, NULL,
-			NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(ABE_MCBSP1_DR, 115, "abe_mcbsp1_dr",
-			"abe_slimbus1_data", NULL, "gpio_115", NULL, NULL,
-			NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(ABE_MCBSP1_DX, 116, "abe_mcbsp1_dx", "sdmmc3_dat2",
-			"abe_mcasp_aclkx", "gpio_116", NULL, NULL, NULL,
-			"safe_mode"),
-	_OMAP4_MUXENTRY(ABE_MCBSP1_FSX, 117, "abe_mcbsp1_fsx", "sdmmc3_dat3",
-			"abe_mcasp_amutein", "gpio_117", NULL, NULL, NULL,
-			"safe_mode"),
-	_OMAP4_MUXENTRY(ABE_PDM_UL_DATA, 0, "abe_pdm_ul_data",
-			"abe_mcbsp3_dr", NULL, NULL, NULL, NULL, NULL,
-			"safe_mode"),
-	_OMAP4_MUXENTRY(ABE_PDM_DL_DATA, 0, "abe_pdm_dl_data",
-			"abe_mcbsp3_dx", NULL, NULL, NULL, NULL, NULL,
-			"safe_mode"),
-	_OMAP4_MUXENTRY(ABE_PDM_FRAME, 0, "abe_pdm_frame", "abe_mcbsp3_clkx",
-			NULL, NULL, NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(ABE_PDM_LB_CLK, 0, "abe_pdm_lb_clk", "abe_mcbsp3_fsx",
-			NULL, NULL, NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(ABE_CLKS, 118, "abe_clks", NULL, NULL, "gpio_118",
-			NULL, NULL, NULL, "safe_mode"),
 	_OMAP4_MUXENTRY(ABE_DMIC_CLK1, 119, "abe_dmic_clk1", NULL, NULL,
 			"gpio_119", "usbb2_mm_txse0", "uart4_cts", NULL,
 			"safe_mode"),
@@ -1012,58 +825,6 @@ static struct omap_mux __initdata omap4_es2_core_muxmodes[] = {
 	_OMAP4_MUXENTRY(ABE_DMIC_DIN3, 122, "abe_dmic_din3", "slimbus2_data",
 			"abe_dmic_clk2", "gpio_122", NULL, "dmtimer9_pwm_evt",
 			NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(UART2_CTS, 123, "uart2_cts", "sdmmc3_clk", NULL,
-			"gpio_123", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(UART2_RTS, 124, "uart2_rts", "sdmmc3_cmd", NULL,
-			"gpio_124", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(UART2_RX, 125, "uart2_rx", "sdmmc3_dat0", NULL,
-			"gpio_125", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(UART2_TX, 126, "uart2_tx", "sdmmc3_dat1", NULL,
-			"gpio_126", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(HDQ_SIO, 127, "hdq_sio", "i2c3_sccb", "i2c2_sccb",
-			"gpio_127", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(I2C1_SCL, 0, "i2c1_scl", NULL, NULL, NULL, NULL, NULL,
-			NULL, NULL),
-	_OMAP4_MUXENTRY(I2C1_SDA, 0, "i2c1_sda", NULL, NULL, NULL, NULL, NULL,
-			NULL, NULL),
-	_OMAP4_MUXENTRY(I2C2_SCL, 128, "i2c2_scl", "uart1_rx", NULL,
-			"gpio_128", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(I2C2_SDA, 129, "i2c2_sda", "uart1_tx", NULL,
-			"gpio_129", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(I2C3_SCL, 130, "i2c3_scl", NULL, NULL, "gpio_130",
-			NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(I2C3_SDA, 131, "i2c3_sda", NULL, NULL, "gpio_131",
-			NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(I2C4_SCL, 132, "i2c4_scl", NULL, NULL, "gpio_132",
-			NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(I2C4_SDA, 133, "i2c4_sda", NULL, NULL, "gpio_133",
-			NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(MCSPI1_CLK, 134, "mcspi1_clk", NULL, NULL, "gpio_134",
-			NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(MCSPI1_SOMI, 135, "mcspi1_somi", NULL, NULL,
-			"gpio_135", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(MCSPI1_SIMO, 136, "mcspi1_simo", NULL, NULL,
-			"gpio_136", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(MCSPI1_CS0, 137, "mcspi1_cs0", NULL, NULL, "gpio_137",
-			NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(MCSPI1_CS1, 138, "mcspi1_cs1", "uart1_rx", NULL,
-			"gpio_138", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(MCSPI1_CS2, 139, "mcspi1_cs2", "uart1_cts",
-			"slimbus2_clock", "gpio_139", NULL, NULL, NULL,
-			"safe_mode"),
-	_OMAP4_MUXENTRY(MCSPI1_CS3, 140, "mcspi1_cs3", "uart1_rts",
-			"slimbus2_data", "gpio_140", NULL, NULL, NULL,
-			"safe_mode"),
-	_OMAP4_MUXENTRY(UART3_CTS_RCTX, 141, "uart3_cts_rctx", "uart1_tx",
-			NULL, "gpio_141", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(UART3_RTS_SD, 142, "uart3_rts_sd", NULL, NULL,
-			"gpio_142", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(UART3_RX_IRRX, 143, "uart3_rx_irrx",
-			"dmtimer8_pwm_evt", NULL, "gpio_143", NULL, NULL,
-			NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(UART3_TX_IRTX, 144, "uart3_tx_irtx",
-			"dmtimer9_pwm_evt", NULL, "gpio_144", NULL, NULL,
-			NULL, "safe_mode"),
 	_OMAP4_MUXENTRY(SDMMC5_CLK, 145, "sdmmc5_clk", "mcspi2_clk",
 			"usbc1_icusb_dp", "gpio_145", NULL, "sdmmc2_clk",
 			NULL, "safe_mode"),
@@ -1096,9 +857,6 @@ static struct omap_mux __initdata omap4_es2_core_muxmodes[] = {
 			"gpio_155", NULL, NULL, NULL, "safe_mode"),
 	_OMAP4_MUXENTRY(UART4_TX, 156, "uart4_tx", "sdmmc4_dat1", "kpd_col8",
 			"gpio_156", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(USBB2_ULPITLL_CLK, 157, "usbb2_ulpitll_clk",
-			"usbb2_ulpiphy_clk", "sdmmc4_cmd", "gpio_157",
-			"hsi2_cawake", NULL, NULL, "safe_mode"),
 	_OMAP4_MUXENTRY(USBB2_ULPITLL_STP, 158, "usbb2_ulpitll_stp",
 			"usbb2_ulpiphy_stp", "sdmmc4_clk", "gpio_158",
 			"hsi2_cadata", "dispc2_data23", NULL, "safe_mode"),
@@ -1140,10 +898,6 @@ static struct omap_mux __initdata omap4_es2_core_muxmodes[] = {
 			"usbb2_ulpiphy_dat7", "sdmmc3_clk", "gpio_168",
 			"mcspi3_clk", "dispc2_data11", "rfbi_data11",
 			"safe_mode"),
-	_OMAP4_MUXENTRY(USBB2_HSIC_DATA, 169, "usbb2_hsic_data", NULL, NULL,
-			"gpio_169", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(USBB2_HSIC_STROBE, 170, "usbb2_hsic_strobe", NULL,
-			NULL, "gpio_170", NULL, NULL, NULL, "safe_mode"),
 	_OMAP4_MUXENTRY(KPD_COL3, 171, "kpd_col3", "kpd_col0", NULL,
 			"gpio_171", NULL, NULL, NULL, "safe_mode"),
 	_OMAP4_MUXENTRY(KPD_COL4, 172, "kpd_col4", "kpd_col1", NULL,
@@ -1168,36 +922,10 @@ static struct omap_mux __initdata omap4_es2_core_muxmodes[] = {
 			NULL, NULL, NULL, "safe_mode"),
 	_OMAP4_MUXENTRY(KPD_ROW2, 3, "kpd_row2", "kpd_row5", NULL, "gpio_3",
 			NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(USBA0_OTG_CE, 0, "usba0_otg_ce", NULL, NULL, NULL,
-			NULL, NULL, NULL, NULL),
 	_OMAP4_MUXENTRY(USBA0_OTG_DP, 0, "usba0_otg_dp", "uart3_rx_irrx",
 			"uart2_rx", NULL, NULL, NULL, NULL, "safe_mode"),
 	_OMAP4_MUXENTRY(USBA0_OTG_DM, 0, "usba0_otg_dm", "uart3_tx_irtx",
 			"uart2_tx", NULL, NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(FREF_CLK1_OUT, 181, "fref_clk1_out", NULL, NULL,
-			"gpio_181", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(FREF_CLK2_OUT, 182, "fref_clk2_out", NULL, NULL,
-			"gpio_182", NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(SYS_NIRQ1, 0, "sys_nirq1", NULL, NULL, NULL, NULL,
-			NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(SYS_NIRQ2, 183, "sys_nirq2", NULL, NULL, "gpio_183",
-			NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(SYS_BOOT0, 184, "sys_boot0", NULL, NULL, "gpio_184",
-			NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(SYS_BOOT1, 185, "sys_boot1", NULL, NULL, "gpio_185",
-			NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(SYS_BOOT2, 186, "sys_boot2", NULL, NULL, "gpio_186",
-			NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(SYS_BOOT3, 187, "sys_boot3", NULL, NULL, "gpio_187",
-			NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(SYS_BOOT4, 188, "sys_boot4", NULL, NULL, "gpio_188",
-			NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(SYS_BOOT5, 189, "sys_boot5", NULL, NULL, "gpio_189",
-			NULL, NULL, NULL, "safe_mode"),
-	_OMAP4_MUXENTRY(DPM_EMU0, 11, "dpm_emu0", NULL, NULL, "gpio_11", NULL,
-			NULL, "hw_dbg0", "safe_mode"),
-	_OMAP4_MUXENTRY(DPM_EMU1, 12, "dpm_emu1", NULL, NULL, "gpio_12", NULL,
-			NULL, "hw_dbg1", "safe_mode"),
 	_OMAP4_MUXENTRY(DPM_EMU2, 13, "dpm_emu2", "usba0_ulpiphy_clk", NULL,
 			"gpio_13", NULL, "dispc2_fid", "hw_dbg2",
 			"safe_mode"),
@@ -1586,6 +1314,7 @@ int __init omap4_mux_init(struct omap_board_mux *board_subset, int flags)
 	struct omap_ball *package_balls_core;
 	struct omap_ball *package_balls_wkup = omap4_wkup_cbl_cbs_ball;
 	struct omap_mux *core_muxmodes;
+	struct omap_mux *core_subset = NULL;
 	int ret;
 
 	switch (flags & OMAP_PACKAGE_MASK) {
@@ -1597,7 +1326,8 @@ int __init omap4_mux_init(struct omap_board_mux *board_subset, int flags)
 	case OMAP_PACKAGE_CBS:
 		pr_debug("%s: OMAP4430 ES2.X -> OMAP_PACKAGE_CBS\n", __func__);
 		package_balls_core = omap4_core_cbs_ball;
-		core_muxmodes = omap4_es2_core_muxmodes;
+		core_muxmodes = omap4_core_muxmodes;
+		core_subset = omap4_es2_core_subset;
 		break;
 	default:
 		pr_err("%s: Unknown omap package, mux disabled\n", __func__);
@@ -1608,7 +1338,7 @@ int __init omap4_mux_init(struct omap_board_mux *board_subset, int flags)
 			    OMAP_MUX_GPIO_IN_MODE3,
 			    OMAP4_CTRL_MODULE_PAD_CORE_MUX_PBASE,
 			    OMAP4_CTRL_MODULE_PAD_CORE_MUX_SIZE,
-			    core_muxmodes, NULL, board_subset,
+			    core_muxmodes, core_subset, board_subset,
 			    package_balls_core);
 	if (ret)
 		return ret;

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 2/2] omap4: mux: Remove duplicate mux modes
  2011-03-11 20:34 ` [PATCH 2/2] omap4: mux: Remove duplicate mux modes Tony Lindgren
@ 2011-03-14  8:41   ` Cousson, Benoit
  2011-03-14 16:59     ` Tony Lindgren
  0 siblings, 1 reply; 6+ messages in thread
From: Cousson, Benoit @ 2011-03-14  8:41 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Tony,

On 3/11/2011 9:34 PM, Tony Lindgren wrote:
> Remove duplicate mux modes to make the binary smaller:
>
> text    data     bss     dec     hex filename
> 9378   24472       0   33850    843a mux44xx.o
> 9378   19104       0   28482    6f42 mux44xx.o
>
> Cc: Benoit Cousson<b-cousson@ti.com>
> Signed-off-by: Tony Lindgren<tony@atomide.com>
> ---
>   arch/arm/mach-omap2/mux44xx.c |  282 +----------------------------------------
>   1 files changed, 6 insertions(+), 276 deletions(-)
>
> diff --git a/arch/arm/mach-omap2/mux44xx.c b/arch/arm/mach-omap2/mux44xx.c
> index c322e7b..9a66445 100644
> --- a/arch/arm/mach-omap2/mux44xx.c
> +++ b/arch/arm/mach-omap2/mux44xx.c
> @@ -755,25 +755,9 @@ static struct omap_ball __initdata omap4_core_cbl_ball[] = {
>   #endif
>
>   /*
> - * Superset of all mux modes for omap4 ES2.0
> + * Signals different on ES2.0 compared to superset

I didn't do it originally due to the huge amount of differences between 
the two versions and the impact at runtime it will imply to fix the 
modified entries at boot time. It might still be interesting to measure it.

Since ES1 is no longer used on any board except the early one, that you 
probably still have :-), it might be better to consider ES2 as the 
superset and then store ES1 diff as the subset. It will avoid any 
performance impact for the latest devices.

Regards,
Benoit

>    */
> -static struct omap_mux __initdata omap4_es2_core_muxmodes[] = {
> -       _OMAP4_MUXENTRY(GPMC_AD0, 0, "gpmc_ad0", "sdmmc2_dat0", NULL, NULL,
> -                       NULL, NULL, NULL, NULL),
> -       _OMAP4_MUXENTRY(GPMC_AD1, 0, "gpmc_ad1", "sdmmc2_dat1", NULL, NULL,
> -                       NULL, NULL, NULL, NULL),
> -       _OMAP4_MUXENTRY(GPMC_AD2, 0, "gpmc_ad2", "sdmmc2_dat2", NULL, NULL,
> -                       NULL, NULL, NULL, NULL),
> -       _OMAP4_MUXENTRY(GPMC_AD3, 0, "gpmc_ad3", "sdmmc2_dat3", NULL, NULL,
> -                       NULL, NULL, NULL, NULL),
> -       _OMAP4_MUXENTRY(GPMC_AD4, 0, "gpmc_ad4", "sdmmc2_dat4",
> -                       "sdmmc2_dir_dat0", NULL, NULL, NULL, NULL, NULL),
> -       _OMAP4_MUXENTRY(GPMC_AD5, 0, "gpmc_ad5", "sdmmc2_dat5",
> -                       "sdmmc2_dir_dat1", NULL, NULL, NULL, NULL, NULL),
> -       _OMAP4_MUXENTRY(GPMC_AD6, 0, "gpmc_ad6", "sdmmc2_dat6",
> -                       "sdmmc2_dir_cmd", NULL, NULL, NULL, NULL, NULL),
> -       _OMAP4_MUXENTRY(GPMC_AD7, 0, "gpmc_ad7", "sdmmc2_dat7",
> -                       "sdmmc2_clk_fdbk", NULL, NULL, NULL, NULL, NULL),
> +static struct omap_mux __initdata omap4_es2_core_subset[] = {
>          _OMAP4_MUXENTRY(GPMC_AD8, 32, "gpmc_ad8", "kpd_row0", "c2c_data15",
>                          "gpio_32", NULL, "sdmmc1_dat0", NULL, NULL),
>          _OMAP4_MUXENTRY(GPMC_AD9, 33, "gpmc_ad9", "kpd_row1", "c2c_data14",
> @@ -792,52 +776,15 @@ static struct omap_mux __initdata omap4_es2_core_muxmodes[] = {
>                          "gpio_39", NULL, "sdmmc1_dat7", NULL, NULL),
>          _OMAP4_MUXENTRY(GPMC_A16, 40, "gpmc_a16", "kpd_row4", "c2c_datain0",
>                          "gpio_40", "venc_656_data0", NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(GPMC_A17, 41, "gpmc_a17", "kpd_row5", "c2c_datain1",
> -                       "gpio_41", "venc_656_data1", NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(GPMC_A18, 42, "gpmc_a18", "kpd_row6", "c2c_datain2",
> -                       "gpio_42", "venc_656_data2", NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(GPMC_A19, 43, "gpmc_a19", "kpd_row7", "c2c_datain3",
> -                       "gpio_43", "venc_656_data3", NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(GPMC_A20, 44, "gpmc_a20", "kpd_col4", "c2c_datain4",
> -                       "gpio_44", "venc_656_data4", NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(GPMC_A21, 45, "gpmc_a21", "kpd_col5", "c2c_datain5",
> -                       "gpio_45", "venc_656_data5", NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(GPMC_A22, 46, "gpmc_a22", "kpd_col6", "c2c_datain6",
> -                       "gpio_46", "venc_656_data6", NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(GPMC_A23, 47, "gpmc_a23", "kpd_col7", "c2c_datain7",
> -                       "gpio_47", "venc_656_data7", NULL, NULL, "safe_mode"),
>          _OMAP4_MUXENTRY(GPMC_A24, 48, "gpmc_a24", "kpd_col8", "c2c_clkout0",
>                          "gpio_48", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(GPMC_A25, 49, "gpmc_a25", NULL, "c2c_clkout1",
> -                       "gpio_49", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(GPMC_NCS0, 50, "gpmc_ncs0", NULL, NULL, "gpio_50",
> -                       "sys_ndmareq0", NULL, NULL, NULL),
> -       _OMAP4_MUXENTRY(GPMC_NCS1, 51, "gpmc_ncs1", NULL, "c2c_dataout6",
> -                       "gpio_51", NULL, NULL, NULL, "safe_mode"),
>          _OMAP4_MUXENTRY(GPMC_NCS2, 52, "gpmc_ncs2", "kpd_row8",
>                          "c2c_dataout7", "gpio_52", NULL, NULL, NULL,
>                          "safe_mode"),
> -       _OMAP4_MUXENTRY(GPMC_NCS3, 53, "gpmc_ncs3", "gpmc_dir",
> -                       "c2c_dataout4", "gpio_53", NULL, NULL, NULL,
> -                       "safe_mode"),
> -       _OMAP4_MUXENTRY(GPMC_NWP, 54, "gpmc_nwp", "dsi1_te0", NULL, "gpio_54",
> -                       "sys_ndmareq1", NULL, NULL, NULL),
>          _OMAP4_MUXENTRY(GPMC_CLK, 55, "gpmc_clk", NULL, NULL, "gpio_55",
>                          "sys_ndmareq2", "sdmmc1_cmd", NULL, NULL),
>          _OMAP4_MUXENTRY(GPMC_NADV_ALE, 56, "gpmc_nadv_ale", "dsi1_te1", NULL,
>                          "gpio_56", "sys_ndmareq3", "sdmmc1_clk", NULL, NULL),
> -       _OMAP4_MUXENTRY(GPMC_NOE, 0, "gpmc_noe", "sdmmc2_clk", NULL, NULL,
> -                       NULL, NULL, NULL, NULL),
> -       _OMAP4_MUXENTRY(GPMC_NWE, 0, "gpmc_nwe", "sdmmc2_cmd", NULL, NULL,
> -                       NULL, NULL, NULL, NULL),
> -       _OMAP4_MUXENTRY(GPMC_NBE0_CLE, 59, "gpmc_nbe0_cle", "dsi2_te0", NULL,
> -                       "gpio_59", NULL, NULL, NULL, NULL),
> -       _OMAP4_MUXENTRY(GPMC_NBE1, 60, "gpmc_nbe1", NULL, "c2c_dataout5",
> -                       "gpio_60", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(GPMC_WAIT0, 61, "gpmc_wait0", "dsi2_te1", NULL,
> -                       "gpio_61", NULL, NULL, NULL, NULL),
> -       _OMAP4_MUXENTRY(GPMC_WAIT1, 62, "gpmc_wait1", NULL, "c2c_dataout2",
> -                       "gpio_62", NULL, NULL, NULL, "safe_mode"),
>          _OMAP4_MUXENTRY(GPMC_WAIT2, 100, "gpmc_wait2", "usbc1_icusb_txen",
>                          "c2c_dataout3", "gpio_100", "sys_ndmareq0", NULL,
>                          NULL, "safe_mode"),
> @@ -851,62 +798,6 @@ static struct omap_mux __initdata omap4_es2_core_muxmodes[] = {
>          _OMAP4_MUXENTRY(GPMC_NCS7, 104, "gpmc_ncs7", "dsi2_te1",
>                          "c2c_dataout1", "gpio_104", NULL, NULL, NULL,
>                          "safe_mode"),
> -       _OMAP4_MUXENTRY(HDMI_HPD, 63, "hdmi_hpd", NULL, NULL, "gpio_63", NULL,
> -                       NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(HDMI_CEC, 64, "hdmi_cec", NULL, NULL, "gpio_64", NULL,
> -                       NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(HDMI_DDC_SCL, 65, "hdmi_ddc_scl", NULL, NULL,
> -                       "gpio_65", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(HDMI_DDC_SDA, 66, "hdmi_ddc_sda", NULL, NULL,
> -                       "gpio_66", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(CSI21_DX0, 0, "csi21_dx0", NULL, NULL, "gpi_67", NULL,
> -                       NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(CSI21_DY0, 0, "csi21_dy0", NULL, NULL, "gpi_68", NULL,
> -                       NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(CSI21_DX1, 0, "csi21_dx1", NULL, NULL, "gpi_69", NULL,
> -                       NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(CSI21_DY1, 0, "csi21_dy1", NULL, NULL, "gpi_70", NULL,
> -                       NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(CSI21_DX2, 0, "csi21_dx2", NULL, NULL, "gpi_71", NULL,
> -                       NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(CSI21_DY2, 0, "csi21_dy2", NULL, NULL, "gpi_72", NULL,
> -                       NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(CSI21_DX3, 0, "csi21_dx3", NULL, NULL, "gpi_73", NULL,
> -                       NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(CSI21_DY3, 0, "csi21_dy3", NULL, NULL, "gpi_74", NULL,
> -                       NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(CSI21_DX4, 0, "csi21_dx4", NULL, NULL, "gpi_75", NULL,
> -                       NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(CSI21_DY4, 0, "csi21_dy4", NULL, NULL, "gpi_76", NULL,
> -                       NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(CSI22_DX0, 0, "csi22_dx0", NULL, NULL, "gpi_77", NULL,
> -                       NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(CSI22_DY0, 0, "csi22_dy0", NULL, NULL, "gpi_78", NULL,
> -                       NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(CSI22_DX1, 0, "csi22_dx1", NULL, NULL, "gpi_79", NULL,
> -                       NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(CSI22_DY1, 0, "csi22_dy1", NULL, NULL, "gpi_80", NULL,
> -                       NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(CAM_SHUTTER, 81, "cam_shutter", NULL, NULL, "gpio_81",
> -                       NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(CAM_STROBE, 82, "cam_strobe", NULL, NULL, "gpio_82",
> -                       NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(CAM_GLOBALRESET, 83, "cam_globalreset", NULL, NULL,
> -                       "gpio_83", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(USBB1_ULPITLL_CLK, 84, "usbb1_ulpitll_clk",
> -                       "hsi1_cawake", NULL, "gpio_84", "usbb1_ulpiphy_clk",
> -                       NULL, "hw_dbg20", "safe_mode"),
> -       _OMAP4_MUXENTRY(USBB1_ULPITLL_STP, 85, "usbb1_ulpitll_stp",
> -                       "hsi1_cadata", "mcbsp4_clkr", "gpio_85",
> -                       "usbb1_ulpiphy_stp", "usbb1_mm_rxdp", "hw_dbg21",
> -                       "safe_mode"),
> -       _OMAP4_MUXENTRY(USBB1_ULPITLL_DIR, 86, "usbb1_ulpitll_dir",
> -                       "hsi1_caflag", "mcbsp4_fsr", "gpio_86",
> -                       "usbb1_ulpiphy_dir", NULL, "hw_dbg22", "safe_mode"),
> -       _OMAP4_MUXENTRY(USBB1_ULPITLL_NXT, 87, "usbb1_ulpitll_nxt",
> -                       "hsi1_acready", "mcbsp4_fsx", "gpio_87",
> -                       "usbb1_ulpiphy_nxt", "usbb1_mm_rxdm", "hw_dbg23",
> -                       "safe_mode"),
>          _OMAP4_MUXENTRY(USBB1_ULPITLL_DAT0, 88, "usbb1_ulpitll_dat0",
>                          "hsi1_acwake", "mcbsp4_clkx", "gpio_88",
>                          "usbb1_ulpiphy_dat0", "usbb1_mm_txen", "hw_dbg24",
> @@ -922,84 +813,6 @@ static struct omap_mux __initdata omap4_es2_core_muxmodes[] = {
>          _OMAP4_MUXENTRY(USBB1_ULPITLL_DAT3, 91, "usbb1_ulpitll_dat3",
>                          "hsi1_caready", NULL, "gpio_91", "usbb1_ulpiphy_dat3",
>                          "usbb1_mm_rxrcv", "hw_dbg27", "safe_mode"),
> -       _OMAP4_MUXENTRY(USBB1_ULPITLL_DAT4, 92, "usbb1_ulpitll_dat4",
> -                       "dmtimer8_pwm_evt", "abe_mcbsp3_dr", "gpio_92",
> -                       "usbb1_ulpiphy_dat4", NULL, "hw_dbg28", "safe_mode"),
> -       _OMAP4_MUXENTRY(USBB1_ULPITLL_DAT5, 93, "usbb1_ulpitll_dat5",
> -                       "dmtimer9_pwm_evt", "abe_mcbsp3_dx", "gpio_93",
> -                       "usbb1_ulpiphy_dat5", NULL, "hw_dbg29", "safe_mode"),
> -       _OMAP4_MUXENTRY(USBB1_ULPITLL_DAT6, 94, "usbb1_ulpitll_dat6",
> -                       "dmtimer10_pwm_evt", "abe_mcbsp3_clkx", "gpio_94",
> -                       "usbb1_ulpiphy_dat6", "abe_dmic_din3", "hw_dbg30",
> -                       "safe_mode"),
> -       _OMAP4_MUXENTRY(USBB1_ULPITLL_DAT7, 95, "usbb1_ulpitll_dat7",
> -                       "dmtimer11_pwm_evt", "abe_mcbsp3_fsx", "gpio_95",
> -                       "usbb1_ulpiphy_dat7", "abe_dmic_clk3", "hw_dbg31",
> -                       "safe_mode"),
> -       _OMAP4_MUXENTRY(USBB1_HSIC_DATA, 96, "usbb1_hsic_data", NULL, NULL,
> -                       "gpio_96", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(USBB1_HSIC_STROBE, 97, "usbb1_hsic_strobe", NULL,
> -                       NULL, "gpio_97", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(USBC1_ICUSB_DP, 98, "usbc1_icusb_dp", NULL, NULL,
> -                       "gpio_98", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(USBC1_ICUSB_DM, 99, "usbc1_icusb_dm", NULL, NULL,
> -                       "gpio_99", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(SDMMC1_CLK, 100, "sdmmc1_clk", NULL, "dpm_emu19",
> -                       "gpio_100", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(SDMMC1_CMD, 101, "sdmmc1_cmd", NULL, "uart1_rx",
> -                       "gpio_101", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(SDMMC1_DAT0, 102, "sdmmc1_dat0", NULL, "dpm_emu18",
> -                       "gpio_102", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(SDMMC1_DAT1, 103, "sdmmc1_dat1", NULL, "dpm_emu17",
> -                       "gpio_103", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(SDMMC1_DAT2, 104, "sdmmc1_dat2", NULL, "dpm_emu16",
> -                       "gpio_104", "jtag_tms_tmsc", NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(SDMMC1_DAT3, 105, "sdmmc1_dat3", NULL, "dpm_emu15",
> -                       "gpio_105", "jtag_tck", NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(SDMMC1_DAT4, 106, "sdmmc1_dat4", NULL, NULL,
> -                       "gpio_106", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(SDMMC1_DAT5, 107, "sdmmc1_dat5", NULL, NULL,
> -                       "gpio_107", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(SDMMC1_DAT6, 108, "sdmmc1_dat6", NULL, NULL,
> -                       "gpio_108", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(SDMMC1_DAT7, 109, "sdmmc1_dat7", NULL, NULL,
> -                       "gpio_109", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(ABE_MCBSP2_CLKX, 110, "abe_mcbsp2_clkx", "mcspi2_clk",
> -                       "abe_mcasp_ahclkx", "gpio_110", "usbb2_mm_rxdm",
> -                       NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(ABE_MCBSP2_DR, 111, "abe_mcbsp2_dr", "mcspi2_somi",
> -                       "abe_mcasp_axr", "gpio_111", "usbb2_mm_rxdp", NULL,
> -                       NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(ABE_MCBSP2_DX, 112, "abe_mcbsp2_dx", "mcspi2_simo",
> -                       "abe_mcasp_amute", "gpio_112", "usbb2_mm_rxrcv", NULL,
> -                       NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(ABE_MCBSP2_FSX, 113, "abe_mcbsp2_fsx", "mcspi2_cs0",
> -                       "abe_mcasp_afsx", "gpio_113", "usbb2_mm_txen", NULL,
> -                       NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(ABE_MCBSP1_CLKX, 114, "abe_mcbsp1_clkx",
> -                       "abe_slimbus1_clock", NULL, "gpio_114", NULL, NULL,
> -                       NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(ABE_MCBSP1_DR, 115, "abe_mcbsp1_dr",
> -                       "abe_slimbus1_data", NULL, "gpio_115", NULL, NULL,
> -                       NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(ABE_MCBSP1_DX, 116, "abe_mcbsp1_dx", "sdmmc3_dat2",
> -                       "abe_mcasp_aclkx", "gpio_116", NULL, NULL, NULL,
> -                       "safe_mode"),
> -       _OMAP4_MUXENTRY(ABE_MCBSP1_FSX, 117, "abe_mcbsp1_fsx", "sdmmc3_dat3",
> -                       "abe_mcasp_amutein", "gpio_117", NULL, NULL, NULL,
> -                       "safe_mode"),
> -       _OMAP4_MUXENTRY(ABE_PDM_UL_DATA, 0, "abe_pdm_ul_data",
> -                       "abe_mcbsp3_dr", NULL, NULL, NULL, NULL, NULL,
> -                       "safe_mode"),
> -       _OMAP4_MUXENTRY(ABE_PDM_DL_DATA, 0, "abe_pdm_dl_data",
> -                       "abe_mcbsp3_dx", NULL, NULL, NULL, NULL, NULL,
> -                       "safe_mode"),
> -       _OMAP4_MUXENTRY(ABE_PDM_FRAME, 0, "abe_pdm_frame", "abe_mcbsp3_clkx",
> -                       NULL, NULL, NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(ABE_PDM_LB_CLK, 0, "abe_pdm_lb_clk", "abe_mcbsp3_fsx",
> -                       NULL, NULL, NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(ABE_CLKS, 118, "abe_clks", NULL, NULL, "gpio_118",
> -                       NULL, NULL, NULL, "safe_mode"),
>          _OMAP4_MUXENTRY(ABE_DMIC_CLK1, 119, "abe_dmic_clk1", NULL, NULL,
>                          "gpio_119", "usbb2_mm_txse0", "uart4_cts", NULL,
>                          "safe_mode"),
> @@ -1012,58 +825,6 @@ static struct omap_mux __initdata omap4_es2_core_muxmodes[] = {
>          _OMAP4_MUXENTRY(ABE_DMIC_DIN3, 122, "abe_dmic_din3", "slimbus2_data",
>                          "abe_dmic_clk2", "gpio_122", NULL, "dmtimer9_pwm_evt",
>                          NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(UART2_CTS, 123, "uart2_cts", "sdmmc3_clk", NULL,
> -                       "gpio_123", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(UART2_RTS, 124, "uart2_rts", "sdmmc3_cmd", NULL,
> -                       "gpio_124", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(UART2_RX, 125, "uart2_rx", "sdmmc3_dat0", NULL,
> -                       "gpio_125", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(UART2_TX, 126, "uart2_tx", "sdmmc3_dat1", NULL,
> -                       "gpio_126", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(HDQ_SIO, 127, "hdq_sio", "i2c3_sccb", "i2c2_sccb",
> -                       "gpio_127", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(I2C1_SCL, 0, "i2c1_scl", NULL, NULL, NULL, NULL, NULL,
> -                       NULL, NULL),
> -       _OMAP4_MUXENTRY(I2C1_SDA, 0, "i2c1_sda", NULL, NULL, NULL, NULL, NULL,
> -                       NULL, NULL),
> -       _OMAP4_MUXENTRY(I2C2_SCL, 128, "i2c2_scl", "uart1_rx", NULL,
> -                       "gpio_128", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(I2C2_SDA, 129, "i2c2_sda", "uart1_tx", NULL,
> -                       "gpio_129", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(I2C3_SCL, 130, "i2c3_scl", NULL, NULL, "gpio_130",
> -                       NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(I2C3_SDA, 131, "i2c3_sda", NULL, NULL, "gpio_131",
> -                       NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(I2C4_SCL, 132, "i2c4_scl", NULL, NULL, "gpio_132",
> -                       NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(I2C4_SDA, 133, "i2c4_sda", NULL, NULL, "gpio_133",
> -                       NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(MCSPI1_CLK, 134, "mcspi1_clk", NULL, NULL, "gpio_134",
> -                       NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(MCSPI1_SOMI, 135, "mcspi1_somi", NULL, NULL,
> -                       "gpio_135", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(MCSPI1_SIMO, 136, "mcspi1_simo", NULL, NULL,
> -                       "gpio_136", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(MCSPI1_CS0, 137, "mcspi1_cs0", NULL, NULL, "gpio_137",
> -                       NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(MCSPI1_CS1, 138, "mcspi1_cs1", "uart1_rx", NULL,
> -                       "gpio_138", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(MCSPI1_CS2, 139, "mcspi1_cs2", "uart1_cts",
> -                       "slimbus2_clock", "gpio_139", NULL, NULL, NULL,
> -                       "safe_mode"),
> -       _OMAP4_MUXENTRY(MCSPI1_CS3, 140, "mcspi1_cs3", "uart1_rts",
> -                       "slimbus2_data", "gpio_140", NULL, NULL, NULL,
> -                       "safe_mode"),
> -       _OMAP4_MUXENTRY(UART3_CTS_RCTX, 141, "uart3_cts_rctx", "uart1_tx",
> -                       NULL, "gpio_141", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(UART3_RTS_SD, 142, "uart3_rts_sd", NULL, NULL,
> -                       "gpio_142", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(UART3_RX_IRRX, 143, "uart3_rx_irrx",
> -                       "dmtimer8_pwm_evt", NULL, "gpio_143", NULL, NULL,
> -                       NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(UART3_TX_IRTX, 144, "uart3_tx_irtx",
> -                       "dmtimer9_pwm_evt", NULL, "gpio_144", NULL, NULL,
> -                       NULL, "safe_mode"),
>          _OMAP4_MUXENTRY(SDMMC5_CLK, 145, "sdmmc5_clk", "mcspi2_clk",
>                          "usbc1_icusb_dp", "gpio_145", NULL, "sdmmc2_clk",
>                          NULL, "safe_mode"),
> @@ -1096,9 +857,6 @@ static struct omap_mux __initdata omap4_es2_core_muxmodes[] = {
>                          "gpio_155", NULL, NULL, NULL, "safe_mode"),
>          _OMAP4_MUXENTRY(UART4_TX, 156, "uart4_tx", "sdmmc4_dat1", "kpd_col8",
>                          "gpio_156", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(USBB2_ULPITLL_CLK, 157, "usbb2_ulpitll_clk",
> -                       "usbb2_ulpiphy_clk", "sdmmc4_cmd", "gpio_157",
> -                       "hsi2_cawake", NULL, NULL, "safe_mode"),
>          _OMAP4_MUXENTRY(USBB2_ULPITLL_STP, 158, "usbb2_ulpitll_stp",
>                          "usbb2_ulpiphy_stp", "sdmmc4_clk", "gpio_158",
>                          "hsi2_cadata", "dispc2_data23", NULL, "safe_mode"),
> @@ -1140,10 +898,6 @@ static struct omap_mux __initdata omap4_es2_core_muxmodes[] = {
>                          "usbb2_ulpiphy_dat7", "sdmmc3_clk", "gpio_168",
>                          "mcspi3_clk", "dispc2_data11", "rfbi_data11",
>                          "safe_mode"),
> -       _OMAP4_MUXENTRY(USBB2_HSIC_DATA, 169, "usbb2_hsic_data", NULL, NULL,
> -                       "gpio_169", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(USBB2_HSIC_STROBE, 170, "usbb2_hsic_strobe", NULL,
> -                       NULL, "gpio_170", NULL, NULL, NULL, "safe_mode"),
>          _OMAP4_MUXENTRY(KPD_COL3, 171, "kpd_col3", "kpd_col0", NULL,
>                          "gpio_171", NULL, NULL, NULL, "safe_mode"),
>          _OMAP4_MUXENTRY(KPD_COL4, 172, "kpd_col4", "kpd_col1", NULL,
> @@ -1168,36 +922,10 @@ static struct omap_mux __initdata omap4_es2_core_muxmodes[] = {
>                          NULL, NULL, NULL, "safe_mode"),
>          _OMAP4_MUXENTRY(KPD_ROW2, 3, "kpd_row2", "kpd_row5", NULL, "gpio_3",
>                          NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(USBA0_OTG_CE, 0, "usba0_otg_ce", NULL, NULL, NULL,
> -                       NULL, NULL, NULL, NULL),
>          _OMAP4_MUXENTRY(USBA0_OTG_DP, 0, "usba0_otg_dp", "uart3_rx_irrx",
>                          "uart2_rx", NULL, NULL, NULL, NULL, "safe_mode"),
>          _OMAP4_MUXENTRY(USBA0_OTG_DM, 0, "usba0_otg_dm", "uart3_tx_irtx",
>                          "uart2_tx", NULL, NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(FREF_CLK1_OUT, 181, "fref_clk1_out", NULL, NULL,
> -                       "gpio_181", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(FREF_CLK2_OUT, 182, "fref_clk2_out", NULL, NULL,
> -                       "gpio_182", NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(SYS_NIRQ1, 0, "sys_nirq1", NULL, NULL, NULL, NULL,
> -                       NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(SYS_NIRQ2, 183, "sys_nirq2", NULL, NULL, "gpio_183",
> -                       NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(SYS_BOOT0, 184, "sys_boot0", NULL, NULL, "gpio_184",
> -                       NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(SYS_BOOT1, 185, "sys_boot1", NULL, NULL, "gpio_185",
> -                       NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(SYS_BOOT2, 186, "sys_boot2", NULL, NULL, "gpio_186",
> -                       NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(SYS_BOOT3, 187, "sys_boot3", NULL, NULL, "gpio_187",
> -                       NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(SYS_BOOT4, 188, "sys_boot4", NULL, NULL, "gpio_188",
> -                       NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(SYS_BOOT5, 189, "sys_boot5", NULL, NULL, "gpio_189",
> -                       NULL, NULL, NULL, "safe_mode"),
> -       _OMAP4_MUXENTRY(DPM_EMU0, 11, "dpm_emu0", NULL, NULL, "gpio_11", NULL,
> -                       NULL, "hw_dbg0", "safe_mode"),
> -       _OMAP4_MUXENTRY(DPM_EMU1, 12, "dpm_emu1", NULL, NULL, "gpio_12", NULL,
> -                       NULL, "hw_dbg1", "safe_mode"),
>          _OMAP4_MUXENTRY(DPM_EMU2, 13, "dpm_emu2", "usba0_ulpiphy_clk", NULL,
>                          "gpio_13", NULL, "dispc2_fid", "hw_dbg2",
>                          "safe_mode"),
> @@ -1586,6 +1314,7 @@ int __init omap4_mux_init(struct omap_board_mux *board_subset, int flags)
>          struct omap_ball *package_balls_core;
>          struct omap_ball *package_balls_wkup = omap4_wkup_cbl_cbs_ball;
>          struct omap_mux *core_muxmodes;
> +       struct omap_mux *core_subset = NULL;
>          int ret;
>
>          switch (flags&  OMAP_PACKAGE_MASK) {
> @@ -1597,7 +1326,8 @@ int __init omap4_mux_init(struct omap_board_mux *board_subset, int flags)
>          case OMAP_PACKAGE_CBS:
>                  pr_debug("%s: OMAP4430 ES2.X ->  OMAP_PACKAGE_CBS\n", __func__);
>                  package_balls_core = omap4_core_cbs_ball;
> -               core_muxmodes = omap4_es2_core_muxmodes;
> +               core_muxmodes = omap4_core_muxmodes;
> +               core_subset = omap4_es2_core_subset;
>                  break;
>          default:
>                  pr_err("%s: Unknown omap package, mux disabled\n", __func__);
> @@ -1608,7 +1338,7 @@ int __init omap4_mux_init(struct omap_board_mux *board_subset, int flags)
>                              OMAP_MUX_GPIO_IN_MODE3,
>                              OMAP4_CTRL_MODULE_PAD_CORE_MUX_PBASE,
>                              OMAP4_CTRL_MODULE_PAD_CORE_MUX_SIZE,
> -                           core_muxmodes, NULL, board_subset,
> +                           core_muxmodes, core_subset, board_subset,
>                              package_balls_core);
>          if (ret)
>                  return ret;
>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH 2/2] omap4: mux: Remove duplicate mux modes
  2011-03-14  8:41   ` Cousson, Benoit
@ 2011-03-14 16:59     ` Tony Lindgren
  2011-03-14 17:22       ` Cousson, Benoit
  0 siblings, 1 reply; 6+ messages in thread
From: Tony Lindgren @ 2011-03-14 16:59 UTC (permalink / raw)
  To: linux-arm-kernel

* Cousson, Benoit <b-cousson@ti.com> [110314 01:39]:
> Hi Tony,
> 
> On 3/11/2011 9:34 PM, Tony Lindgren wrote:
> >Remove duplicate mux modes to make the binary smaller:
> >
> >text    data     bss     dec     hex filename
> >9378   24472       0   33850    843a mux44xx.o
> >9378   19104       0   28482    6f42 mux44xx.o
> >
> >Cc: Benoit Cousson<b-cousson@ti.com>
> >Signed-off-by: Tony Lindgren<tony@atomide.com>
> >---
> >  arch/arm/mach-omap2/mux44xx.c |  282 +----------------------------------------
> >  1 files changed, 6 insertions(+), 276 deletions(-)
> >
> >diff --git a/arch/arm/mach-omap2/mux44xx.c b/arch/arm/mach-omap2/mux44xx.c
> >index c322e7b..9a66445 100644
> >--- a/arch/arm/mach-omap2/mux44xx.c
> >+++ b/arch/arm/mach-omap2/mux44xx.c
> >@@ -755,25 +755,9 @@ static struct omap_ball __initdata omap4_core_cbl_ball[] = {
> >  #endif
> >
> >  /*
> >- * Superset of all mux modes for omap4 ES2.0
> >+ * Signals different on ES2.0 compared to superset
> 
> I didn't do it originally due to the huge amount of differences
> between the two versions and the impact at runtime it will imply to
> fix the modified entries at boot time. It might still be interesting
> to measure it.

A quick test shows the difference is 0.007324218 - 0.007202148 seconds.. :)
 
> Since ES1 is no longer used on any board except the early one, that
> you probably still have :-), it might be better to consider ES2 as
> the superset and then store ES1 diff as the subset. It will avoid
> any performance impact for the latest devices.

Well the performance impact is minimal in this case. But from cutting
down the size point of view that makes sense as then we could later on
optionally compile out OMAP_PACKAGE_CBL.

Sounds like that's a separate incremental patch on top of this one
though.

Regards,

Tony

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH 2/2] omap4: mux: Remove duplicate mux modes
  2011-03-14 16:59     ` Tony Lindgren
@ 2011-03-14 17:22       ` Cousson, Benoit
  0 siblings, 0 replies; 6+ messages in thread
From: Cousson, Benoit @ 2011-03-14 17:22 UTC (permalink / raw)
  To: linux-arm-kernel

On 3/14/2011 5:59 PM, Tony Lindgren wrote:
> * Cousson, Benoit<b-cousson@ti.com>  [110314 01:39]:
>> Hi Tony,
>>
>> On 3/11/2011 9:34 PM, Tony Lindgren wrote:
>>> Remove duplicate mux modes to make the binary smaller:
>>>
>>> text    data     bss     dec     hex filename
>>> 9378   24472       0   33850    843a mux44xx.o
>>> 9378   19104       0   28482    6f42 mux44xx.o
>>>
>>> Cc: Benoit Cousson<b-cousson@ti.com>
>>> Signed-off-by: Tony Lindgren<tony@atomide.com>
>>> ---
>>>   arch/arm/mach-omap2/mux44xx.c |  282 +----------------------------------------
>>>   1 files changed, 6 insertions(+), 276 deletions(-)
>>>
>>> diff --git a/arch/arm/mach-omap2/mux44xx.c b/arch/arm/mach-omap2/mux44xx.c
>>> index c322e7b..9a66445 100644
>>> --- a/arch/arm/mach-omap2/mux44xx.c
>>> +++ b/arch/arm/mach-omap2/mux44xx.c
>>> @@ -755,25 +755,9 @@ static struct omap_ball __initdata omap4_core_cbl_ball[] = {
>>>   #endif
>>>
>>>   /*
>>> - * Superset of all mux modes for omap4 ES2.0
>>> + * Signals different on ES2.0 compared to superset
>>
>> I didn't do it originally due to the huge amount of differences
>> between the two versions and the impact at runtime it will imply to
>> fix the modified entries at boot time. It might still be interesting
>> to measure it.
>
> A quick test shows the difference is 0.007324218 - 0.007202148 seconds.. :)

Whaoo, 122us, that chip is really fast :-)

>> Since ES1 is no longer used on any board except the early one, that
>> you probably still have :-), it might be better to consider ES2 as
>> the superset and then store ES1 diff as the subset. It will avoid
>> any performance impact for the latest devices.
>
> Well the performance impact is minimal in this case. But from cutting
> down the size point of view that makes sense as then we could later on
> optionally compile out OMAP_PACKAGE_CBL.
>
> Sounds like that's a separate incremental patch on top of this one
> though.

OK, I'll try to make that for 2.6.40.

Benoit

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2011-03-14 17:22 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-03-11 20:34 [PATCH 0/2] omap2+: Few mux patches Tony Lindgren
2011-03-11 20:34 ` [PATCH 1/2] omap2+: mux: Fix compile when CONFIG_OMAP_MUX is not selected Tony Lindgren
2011-03-11 20:34 ` [PATCH 2/2] omap4: mux: Remove duplicate mux modes Tony Lindgren
2011-03-14  8:41   ` Cousson, Benoit
2011-03-14 16:59     ` Tony Lindgren
2011-03-14 17:22       ` Cousson, Benoit

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).