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

Commit c4c14f39 authored by Olof Johansson's avatar Olof Johansson
Browse files

Merge tag 'imx-cleanup-4.1' of...

Merge tag 'imx-cleanup-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/cleanup

Merge "ARM: imx: cleanup for 4.1" from Shawn Guo:

The i.MX cleanup for v4.1:
 - Convert i.MX25 to be a DT only platform and remove the code that is
   only used by non-DT support
 - A couple trivial cleanup on iomux-v3 code

* tag 'imx-cleanup-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux

:
  ARM: imx_v4_v5_defconfig: Remove CONFIG_MACH_MX25_3DS
  ARM: mx25: Remove imxdi_rtc platform code
  ARM: mx25: Remove "mx25.h" header file
  ARM: mx25: Remove static memory mapping
  ARM: mx25: Retrieve IIM base from dt
  ARM: mx25: Remove mx25_clocks_init()
  ARM: mx25: Remove platform code support files
  ARM: mx25: Convert to a dt-only platform
  ARM: imx25: Remove eukrea mx25 board files
  ARM: mx25: Remove mach-mx25_3ds board file
  ARM: imx: Fix trivial typo in comments
  ARM: imx: Kconfig: Fix grammar in help text
  ARM: imx/iomux-v3: allow pad_list to be const

Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
parents 5602d12a dc98b0cb
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -24,9 +24,8 @@ CONFIG_ARCH_MXC=y
CONFIG_MACH_SCB9328=y
CONFIG_MACH_APF9328=y
CONFIG_MACH_MX21ADS=y
CONFIG_MACH_MX25_3DS=y
CONFIG_MACH_EUKREA_CPUIMX25SD=y
CONFIG_MACH_IMX25_DT=y
CONFIG_SOC_IMX25=y
CONFIG_MACH_MX27ADS=y
CONFIG_MACH_MX27_3DS=y
CONFIG_MACH_IMX27_VISSTRIM_M10=y
+1 −1
Original line number Diff line number Diff line
@@ -13,7 +13,7 @@ CONFIG_ARCH_MVEBU=y
CONFIG_MACH_KIRKWOOD=y
CONFIG_MACH_NETXBIG=y
CONFIG_ARCH_MXC=y
CONFIG_MACH_IMX25_DT=y
CONFIG_SOC_IMX25=y
CONFIG_MACH_IMX27_DT=y
CONFIG_ARCH_U300=y
CONFIG_PCI_MVEBU=y
+16 −65
Original line number Diff line number Diff line
@@ -77,13 +77,6 @@ config SOC_IMX21
	select IMX_HAVE_IOMUX_V1
	select MXC_AVIC

config SOC_IMX25
	bool
	select ARCH_MXC_IOMUX_V3
	select CPU_ARM926T
	select MXC_AVIC
	select PINCTRL_IMX25

config SOC_IMX27
	bool
	select CPU_ARM926T
@@ -149,62 +142,6 @@ config MACH_MX21ADS
	  Include support for MX21ADS platform. This includes specific
	  configurations for the board and its peripherals.

comment "MX25 platforms:"

config MACH_MX25_3DS
	bool "Support MX25PDK (3DS) Platform"
	select IMX_HAVE_PLATFORM_FLEXCAN
	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
	select IMX_HAVE_PLATFORM_IMX2_WDT
	select IMX_HAVE_PLATFORM_IMXDI_RTC
	select IMX_HAVE_PLATFORM_IMX_FB
	select IMX_HAVE_PLATFORM_IMX_I2C
	select IMX_HAVE_PLATFORM_IMX_KEYPAD
	select IMX_HAVE_PLATFORM_IMX_UART
	select IMX_HAVE_PLATFORM_MXC_EHCI
	select IMX_HAVE_PLATFORM_MXC_NAND
	select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
	select SOC_IMX25

config MACH_EUKREA_CPUIMX25SD
	bool "Support Eukrea CPUIMX25 Platform"
	select IMX_HAVE_PLATFORM_FLEXCAN
	select IMX_HAVE_PLATFORM_FSL_USB2_UDC
	select IMX_HAVE_PLATFORM_IMX2_WDT
	select IMX_HAVE_PLATFORM_IMXDI_RTC
	select IMX_HAVE_PLATFORM_IMX_FB
	select IMX_HAVE_PLATFORM_IMX_I2C
	select IMX_HAVE_PLATFORM_IMX_UART
	select IMX_HAVE_PLATFORM_MXC_EHCI
	select IMX_HAVE_PLATFORM_MXC_NAND
	select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX
	select USB_ULPI_VIEWPORT if USB_ULPI
	select SOC_IMX25

choice
	prompt "Baseboard"
	depends on MACH_EUKREA_CPUIMX25SD
	default MACH_EUKREA_MBIMXSD25_BASEBOARD

config MACH_EUKREA_MBIMXSD25_BASEBOARD
	bool "Eukrea MBIMXSD development board"
	select IMX_HAVE_PLATFORM_GPIO_KEYS
	select IMX_HAVE_PLATFORM_IMX_SSI
	select IMX_HAVE_PLATFORM_SPI_IMX
	select LEDS_GPIO_REGISTER
	help
	  This adds board specific devices that can be found on Eukrea's
	  MBIMXSD evaluation board.

endchoice

config MACH_IMX25_DT
	bool "Support i.MX25 platforms from device tree"
	select SOC_IMX25
	help
	  Include support for Freescale i.MX25 based platforms
	  using the device tree for discovery

comment "MX27 platforms:"

config MACH_MX27ADS
@@ -557,6 +494,20 @@ config MACH_VPR200

endif

if ARCH_MULTI_V5

comment "Device tree only"

config SOC_IMX25
	bool "i.MX25 support"
	select ARCH_MXC_IOMUX_V3
	select CPU_ARM926T
	select MXC_AVIC
	select PINCTRL_IMX25
	help
	  This enables support for Freescale i.MX25 processor
endif

if ARCH_MULTI_V7

comment "Device tree only"
@@ -636,7 +587,7 @@ config SOC_VF610
	select PL310_ERRATA_769419 if CACHE_L2X0

	help
	  This enable support for Freescale Vybrid VF610 processor.
	  This enables support for Freescale Vybrid VF610 processor.

choice
	prompt "Clocksource for scheduler clock"
@@ -666,7 +617,7 @@ config SOC_LS1021A
	select ZONE_DMA if ARM_LPAE

	help
	  This enable support for Freescale LS1021A processor.
	  This enables support for Freescale LS1021A processor.

endif

+1 −7
Original line number Diff line number Diff line
@@ -3,7 +3,7 @@ obj-y := time.o cpu.o system.o irq-common.o
obj-$(CONFIG_SOC_IMX1) += clk-imx1.o mm-imx1.o
obj-$(CONFIG_SOC_IMX21) += clk-imx21.o mm-imx21.o

obj-$(CONFIG_SOC_IMX25) += clk-imx25.o mm-imx25.o ehci-imx25.o cpu-imx25.o
obj-$(CONFIG_SOC_IMX25) += clk-imx25.o cpu-imx25.o mach-imx25.o

obj-$(CONFIG_SOC_IMX27) += cpu-imx27.o pm-imx27.o
obj-$(CONFIG_SOC_IMX27) += clk-imx27.o mm-imx27.o ehci-imx27.o
@@ -48,12 +48,6 @@ obj-$(CONFIG_MACH_IMX1_DT) += imx1-dt.o
# i.MX21 based machines
obj-$(CONFIG_MACH_MX21ADS) += mach-mx21ads.o

# i.MX25 based machines
obj-$(CONFIG_MACH_MX25_3DS) += mach-mx25_3ds.o
obj-$(CONFIG_MACH_EUKREA_CPUIMX25SD) += mach-eukrea_cpuimx25.o
obj-$(CONFIG_MACH_EUKREA_MBIMXSD25_BASEBOARD) += eukrea_mbimxsd25-baseboard.o
obj-$(CONFIG_MACH_IMX25_DT) += imx25-dt.o

# i.MX27 based machines
obj-$(CONFIG_MACH_MX27ADS) += mach-mx27ads.o
obj-$(CONFIG_MACH_MX27_3DS) += mach-mx27_3ds.o
+0 −75
Original line number Diff line number Diff line
@@ -30,7 +30,6 @@
#include "clk.h"
#include "common.h"
#include "hardware.h"
#include "mx25.h"

#define CCM_MPCTL	0x00
#define CCM_UPCTL	0x04
@@ -239,80 +238,6 @@ static int __init __mx25_clocks_init(unsigned long osc_rate,
	return 0;
}

int __init mx25_clocks_init(void)
{
	void __iomem *ccm;

	ccm = ioremap(MX25_CRM_BASE_ADDR, SZ_16K);

	__mx25_clocks_init(24000000, ccm);

	clk_register_clkdev(clk[gpt1_ipg], "ipg", "imx-gpt.0");
	clk_register_clkdev(clk[gpt_ipg_per], "per", "imx-gpt.0");
	/* i.mx25 has the i.mx21 type uart */
	clk_register_clkdev(clk[uart1_ipg], "ipg", "imx21-uart.0");
	clk_register_clkdev(clk[uart_ipg_per], "per", "imx21-uart.0");
	clk_register_clkdev(clk[uart2_ipg], "ipg", "imx21-uart.1");
	clk_register_clkdev(clk[uart_ipg_per], "per", "imx21-uart.1");
	clk_register_clkdev(clk[uart3_ipg], "ipg", "imx21-uart.2");
	clk_register_clkdev(clk[uart_ipg_per], "per", "imx21-uart.2");
	clk_register_clkdev(clk[uart4_ipg], "ipg", "imx21-uart.3");
	clk_register_clkdev(clk[uart_ipg_per], "per", "imx21-uart.3");
	clk_register_clkdev(clk[uart5_ipg], "ipg", "imx21-uart.4");
	clk_register_clkdev(clk[uart_ipg_per], "per", "imx21-uart.4");
	clk_register_clkdev(clk[ipg], "ipg", "mxc-ehci.0");
	clk_register_clkdev(clk[usbotg_ahb], "ahb", "mxc-ehci.0");
	clk_register_clkdev(clk[usb_div], "per", "mxc-ehci.0");
	clk_register_clkdev(clk[ipg], "ipg", "mxc-ehci.1");
	clk_register_clkdev(clk[usbotg_ahb], "ahb", "mxc-ehci.1");
	clk_register_clkdev(clk[usb_div], "per", "mxc-ehci.1");
	clk_register_clkdev(clk[ipg], "ipg", "mxc-ehci.2");
	clk_register_clkdev(clk[usbotg_ahb], "ahb", "mxc-ehci.2");
	clk_register_clkdev(clk[usb_div], "per", "mxc-ehci.2");
	clk_register_clkdev(clk[ipg], "ipg", "imx-udc-mx27");
	clk_register_clkdev(clk[usbotg_ahb], "ahb", "imx-udc-mx27");
	clk_register_clkdev(clk[usb_div], "per", "imx-udc-mx27");
	clk_register_clkdev(clk[nfc_ipg_per], NULL, "imx25-nand.0");
	/* i.mx25 has the i.mx35 type cspi */
	clk_register_clkdev(clk[cspi1_ipg], NULL, "imx35-cspi.0");
	clk_register_clkdev(clk[cspi2_ipg], NULL, "imx35-cspi.1");
	clk_register_clkdev(clk[cspi3_ipg], NULL, "imx35-cspi.2");
	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, "imx21-i2c.0");
	clk_register_clkdev(clk[i2c_ipg_per], NULL, "imx21-i2c.1");
	clk_register_clkdev(clk[i2c_ipg_per], NULL, "imx21-i2c.2");
	clk_register_clkdev(clk[fec_ipg], "ipg", "imx25-fec.0");
	clk_register_clkdev(clk[fec_ahb], "ahb", "imx25-fec.0");
	clk_register_clkdev(clk[dryice_ipg], NULL, "imxdi_rtc.0");
	clk_register_clkdev(clk[lcdc_ipg_per], "per", "imx21-fb.0");
	clk_register_clkdev(clk[lcdc_ipg], "ipg", "imx21-fb.0");
	clk_register_clkdev(clk[lcdc_ahb], "ahb", "imx21-fb.0");
	clk_register_clkdev(clk[wdt_ipg], NULL, "imx2-wdt.0");
	clk_register_clkdev(clk[ssi1_ipg], NULL, "imx-ssi.0");
	clk_register_clkdev(clk[ssi2_ipg], NULL, "imx-ssi.1");
	clk_register_clkdev(clk[esdhc1_ipg_per], "per", "sdhci-esdhc-imx25.0");
	clk_register_clkdev(clk[esdhc1_ipg], "ipg", "sdhci-esdhc-imx25.0");
	clk_register_clkdev(clk[esdhc1_ahb], "ahb", "sdhci-esdhc-imx25.0");
	clk_register_clkdev(clk[esdhc2_ipg_per], "per", "sdhci-esdhc-imx25.1");
	clk_register_clkdev(clk[esdhc2_ipg], "ipg", "sdhci-esdhc-imx25.1");
	clk_register_clkdev(clk[esdhc2_ahb], "ahb", "sdhci-esdhc-imx25.1");
	clk_register_clkdev(clk[csi_ipg_per], "per", "imx25-camera.0");
	clk_register_clkdev(clk[csi_ipg], "ipg", "imx25-camera.0");
	clk_register_clkdev(clk[csi_ahb], "ahb", "imx25-camera.0");
	clk_register_clkdev(clk[dummy], "audmux", NULL);
	clk_register_clkdev(clk[can1_ipg], NULL, "flexcan.0");
	clk_register_clkdev(clk[can2_ipg], NULL, "flexcan.1");
	/* i.mx25 has the i.mx35 type sdma */
	clk_register_clkdev(clk[sdma_ipg], "ipg", "imx35-sdma");
	clk_register_clkdev(clk[sdma_ahb], "ahb", "imx35-sdma");
	clk_register_clkdev(clk[iim_ipg], "iim", NULL);

	mxc_timer_init(MX25_IO_ADDRESS(MX25_GPT1_BASE_ADDR), MX25_INT_GPT1);

	return 0;
}

static void __init mx25_clocks_init_dt(struct device_node *np)
{
	struct device_node *refnp;
Loading