Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3529e730 authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

Merge tag 'imx-fixes' of git://git.pengutronix.de/git/imx/linux-2.6 into fixes

Patches from Sascha Hauer <s.hauer@pengutronix.de>:

ARM i.MX fixes for 3.7-rc

* tag 'imx-fixes' of git://git.pengutronix.de/git/imx/linux-2.6

:
  ARM i.MX25: Fix PWM per clock lookups
  ARM i.MX25 clk: Fix nfc_ipg_per parent
  ARM i.MX25: Fix lcdc_ipg_per parent clock
  ARM: mxc: platform-mxc-mmc: Fix register region size
  ARM: imx: clk-imx27: Fix divider width field
  ARM: imx: fix the return value check in imx_clk_busy_divider()
  ARM: imx_v6_v7_defconfig: Enable CONFIG_GPIO_MC9S08DZ60
  ARM: imx: fix return value check in imx3_init_l2x0()

Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parents bc20deba 92063cee
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -139,6 +139,7 @@ CONFIG_I2C_IMX=y
CONFIG_SPI=y
CONFIG_SPI_IMX=y
CONFIG_GPIO_SYSFS=y
CONFIG_GPIO_MC9S08DZ60=y
# CONFIG_HWMON is not set
CONFIG_WATCHDOG=y
CONFIG_IMX2_WDT=y
@@ -155,6 +156,7 @@ CONFIG_SOC_CAMERA=y
CONFIG_SOC_CAMERA_OV2640=y
CONFIG_VIDEO_MX3=y
CONFIG_FB=y
CONFIG_LCD_PLATFORM=y
CONFIG_BACKLIGHT_LCD_SUPPORT=y
CONFIG_LCD_CLASS_DEVICE=y
CONFIG_LCD_L4F00242T03=y
+1 −1
Original line number Diff line number Diff line
@@ -108,7 +108,7 @@ struct clk *imx_clk_busy_divider(const char *name, const char *parent_name,
	busy->div.hw.init = &init;

	clk = clk_register(NULL, &busy->div.hw);
	if (!clk)
	if (IS_ERR(clk))
		kfree(busy);

	return clk;
+6 −6
Original line number Diff line number Diff line
@@ -127,8 +127,8 @@ int __init mx25_clocks_init(void)
	clk[esdhc2_ipg_per] = imx_clk_gate("esdhc2_ipg_per", "per4", ccm(CCM_CGCR0),  4);
	clk[gpt_ipg_per] = imx_clk_gate("gpt_ipg_per", "per5", ccm(CCM_CGCR0),  5);
	clk[i2c_ipg_per] = imx_clk_gate("i2c_ipg_per", "per6", ccm(CCM_CGCR0),  6);
	clk[lcdc_ipg_per] = imx_clk_gate("lcdc_ipg_per", "per8", ccm(CCM_CGCR0),  7);
	clk[nfc_ipg_per] = imx_clk_gate("nfc_ipg_per", "ipg_per", ccm(CCM_CGCR0),  8);
	clk[lcdc_ipg_per] = imx_clk_gate("lcdc_ipg_per", "per7", ccm(CCM_CGCR0),  7);
	clk[nfc_ipg_per] = imx_clk_gate("nfc_ipg_per", "per8", ccm(CCM_CGCR0),  8);
	clk[ssi1_ipg_per] = imx_clk_gate("ssi1_ipg_per", "per13", ccm(CCM_CGCR0), 13);
	clk[ssi2_ipg_per] = imx_clk_gate("ssi2_ipg_per", "per14", ccm(CCM_CGCR0), 14);
	clk[uart_ipg_per] = imx_clk_gate("uart_ipg_per", "per15", ccm(CCM_CGCR0), 15);
@@ -203,13 +203,13 @@ int __init mx25_clocks_init(void)
	clk_register_clkdev(clk[cspi2_ipg], NULL, "imx35-cspi.1");
	clk_register_clkdev(clk[cspi3_ipg], NULL, "imx35-cspi.2");
	clk_register_clkdev(clk[pwm1_ipg], "ipg", "mxc_pwm.0");
	clk_register_clkdev(clk[per10], "per", "mxc_pwm.0");
	clk_register_clkdev(clk[pwm_ipg_per], "per", "mxc_pwm.0");
	clk_register_clkdev(clk[pwm1_ipg], "ipg", "mxc_pwm.1");
	clk_register_clkdev(clk[per10], "per", "mxc_pwm.1");
	clk_register_clkdev(clk[pwm_ipg_per], "per", "mxc_pwm.1");
	clk_register_clkdev(clk[pwm1_ipg], "ipg", "mxc_pwm.2");
	clk_register_clkdev(clk[per10], "per", "mxc_pwm.2");
	clk_register_clkdev(clk[pwm_ipg_per], "per", "mxc_pwm.2");
	clk_register_clkdev(clk[pwm1_ipg], "ipg", "mxc_pwm.3");
	clk_register_clkdev(clk[per10], "per", "mxc_pwm.3");
	clk_register_clkdev(clk[pwm_ipg_per], "per", "mxc_pwm.3");
	clk_register_clkdev(clk[kpp_ipg], NULL, "imx-keypad");
	clk_register_clkdev(clk[tsc_ipg], NULL, "mx25-adc");
	clk_register_clkdev(clk[i2c_ipg_per], NULL, "imx-i2c.0");
+2 −2
Original line number Diff line number Diff line
@@ -109,7 +109,7 @@ int __init mx27_clocks_init(unsigned long fref)
	clk[per3_div] = imx_clk_divider("per3_div", "mpll_main2", CCM_PCDR1, 16, 6);
	clk[per4_div] = imx_clk_divider("per4_div", "mpll_main2", CCM_PCDR1, 24, 6);
	clk[vpu_sel] = imx_clk_mux("vpu_sel", CCM_CSCR, 21, 1, vpu_sel_clks, ARRAY_SIZE(vpu_sel_clks));
	clk[vpu_div] = imx_clk_divider("vpu_div", "vpu_sel", CCM_PCDR0, 10, 3);
	clk[vpu_div] = imx_clk_divider("vpu_div", "vpu_sel", CCM_PCDR0, 10, 6);
	clk[usb_div] = imx_clk_divider("usb_div", "spll", CCM_CSCR, 28, 3);
	clk[cpu_sel] = imx_clk_mux("cpu_sel", CCM_CSCR, 15, 1, cpu_sel_clks, ARRAY_SIZE(cpu_sel_clks));
	clk[clko_sel] = imx_clk_mux("clko_sel", CCM_CCSR, 0, 5, clko_sel_clks, ARRAY_SIZE(clko_sel_clks));
@@ -121,7 +121,7 @@ int __init mx27_clocks_init(unsigned long fref)
	clk[ssi1_sel] = imx_clk_mux("ssi1_sel", CCM_CSCR, 22, 1, ssi_sel_clks, ARRAY_SIZE(ssi_sel_clks));
	clk[ssi2_sel] = imx_clk_mux("ssi2_sel", CCM_CSCR, 23, 1, ssi_sel_clks, ARRAY_SIZE(ssi_sel_clks));
	clk[ssi1_div] = imx_clk_divider("ssi1_div", "ssi1_sel", CCM_PCDR0, 16, 6);
	clk[ssi2_div] = imx_clk_divider("ssi2_div", "ssi2_sel", CCM_PCDR0, 26, 3);
	clk[ssi2_div] = imx_clk_divider("ssi2_div", "ssi2_sel", CCM_PCDR0, 26, 6);
	clk[clko_en] = imx_clk_gate("clko_en", "clko_div", CCM_PCCR0, 0);
	clk[ssi2_ipg_gate] = imx_clk_gate("ssi2_ipg_gate", "ipg", CCM_PCCR0, 0);
	clk[ssi1_ipg_gate] = imx_clk_gate("ssi1_ipg_gate", "ipg", CCM_PCCR0, 1);
+2 −3
Original line number Diff line number Diff line
@@ -108,9 +108,8 @@ void __init imx3_init_l2x0(void)
	}

	l2x0_base = ioremap(MX3x_L2CC_BASE_ADDR, 4096);
	if (IS_ERR(l2x0_base)) {
		printk(KERN_ERR "remapping L2 cache area failed with %ld\n",
				PTR_ERR(l2x0_base));
	if (!l2x0_base) {
		printk(KERN_ERR "remapping L2 cache area failed\n");
		return;
	}

Loading