summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2018-01-22 09:49:20 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2018-01-22 09:49:20 +0100
commit034637fbd9dfc5cbcffca1f8f392c6ab0dd6f229 (patch)
tree1dc12e89a43445f78dc5a0875f9e7603588cb0a9
parent47f83fa0dad2f0d80b41806709c6c154adf3cf2a (diff)
parent3f9c2b434cacd5b5380ad11d141723f513ebc976 (diff)
downloadbarebox-034637fbd9dfc5cbcffca1f8f392c6ab0dd6f229.tar.gz
barebox-034637fbd9dfc5cbcffca1f8f392c6ab0dd6f229.tar.xz
Merge branch 'for-next/imx'
-rw-r--r--arch/arm/mach-imx/include/mach/imx6.h2
-rw-r--r--arch/arm/mach-imx/include/mach/imx7-ccm-regs.h3
-rw-r--r--arch/arm/mach-imx/include/mach/imx7-regs.h2
-rw-r--r--arch/arm/mach-imx/include/mach/revision.h1
-rw-r--r--drivers/mci/imx-esdhc.c1
-rw-r--r--drivers/spi/Kconfig2
-rw-r--r--drivers/spi/imx_spi.c7
7 files changed, 15 insertions, 3 deletions
diff --git a/arch/arm/mach-imx/include/mach/imx6.h b/arch/arm/mach-imx/include/mach/imx6.h
index e0ced7edc6..288c7539ae 100644
--- a/arch/arm/mach-imx/include/mach/imx6.h
+++ b/arch/arm/mach-imx/include/mach/imx6.h
@@ -109,6 +109,8 @@ static inline int __imx6_cpu_revision(void)
return IMX_CHIP_REV_1_4;
case 0x05:
return IMX_CHIP_REV_1_5;
+ case 0x06:
+ return IMX_CHIP_REV_1_6;
case 0x100:
return IMX_CHIP_REV_2_0;
}
diff --git a/arch/arm/mach-imx/include/mach/imx7-ccm-regs.h b/arch/arm/mach-imx/include/mach/imx7-ccm-regs.h
index a4217cca5d..97fe240fc4 100644
--- a/arch/arm/mach-imx/include/mach/imx7-ccm-regs.h
+++ b/arch/arm/mach-imx/include/mach/imx7-ccm-regs.h
@@ -6,6 +6,7 @@
#define CCM_CCGRn_CLR(n) (0x4008 + 16 * (n))
#define CCM_CCGR_UART1 148
+#define CCM_CCGR_UART2 149
#define CCM_CCGR_SETTINGn(n, s) ((s) << ((n) * 4))
#define CCM_CCGR_SETTINGn_NOT_NEEDED(n) CCM_CCGR_SETTINGn(n, 0b00)
@@ -28,5 +29,7 @@
#define UART1_CLK_ROOT CLOCK_ROOT_INDEX(0xaf80)
#define UART1_CLK_ROOT__OSC_24M CCM_TARGET_ROOTn_MUX(0b000)
+#define UART2_CLK_ROOT CLOCK_ROOT_INDEX(0xb000)
+#define UART2_CLK_ROOT__OSC_24M CCM_TARGET_ROOTn_MUX(0b000)
#endif
diff --git a/arch/arm/mach-imx/include/mach/imx7-regs.h b/arch/arm/mach-imx/include/mach/imx7-regs.h
index 8774c32d73..8625d0b619 100644
--- a/arch/arm/mach-imx/include/mach/imx7-regs.h
+++ b/arch/arm/mach-imx/include/mach/imx7-regs.h
@@ -78,7 +78,7 @@
#define MX7_ECSPI2_BASE_ADDR (MX7_AIPS3_BASE_ADDR + 0x30000)
#define MX7_ECSPI3_BASE_ADDR (MX7_AIPS3_BASE_ADDR + 0x40000)
#define MX7_UART1_BASE_ADDR (MX7_AIPS3_BASE_ADDR + 0x60000)
-#define MX7_UART2_BASE_ADDR (MX7_AIPS3_BASE_ADDR + 0x70000)
+#define MX7_UART2_BASE_ADDR (MX7_AIPS3_BASE_ADDR + 0x90000)
#define MX7_UART3_BASE_ADDR (MX7_AIPS3_BASE_ADDR + 0x80000)
#define MX7_SAI1_BASE_ADDR (MX7_AIPS3_BASE_ADDR + 0xA0000)
#define MX7_SAI2_BASE_ADDR (MX7_AIPS3_BASE_ADDR + 0xB0000)
diff --git a/arch/arm/mach-imx/include/mach/revision.h b/arch/arm/mach-imx/include/mach/revision.h
index 908a0a1d74..d9495d967f 100644
--- a/arch/arm/mach-imx/include/mach/revision.h
+++ b/arch/arm/mach-imx/include/mach/revision.h
@@ -8,6 +8,7 @@
#define IMX_CHIP_REV_1_3 0x13
#define IMX_CHIP_REV_1_4 0x14
#define IMX_CHIP_REV_1_5 0x15
+#define IMX_CHIP_REV_1_6 0x16
#define IMX_CHIP_REV_2_0 0x20
#define IMX_CHIP_REV_2_1 0x21
#define IMX_CHIP_REV_2_2 0x22
diff --git a/drivers/mci/imx-esdhc.c b/drivers/mci/imx-esdhc.c
index 55e8371dd8..b91f94b99c 100644
--- a/drivers/mci/imx-esdhc.c
+++ b/drivers/mci/imx-esdhc.c
@@ -630,7 +630,6 @@ static int fsl_esdhc_probe(struct device_d *dev)
host->clk = clk_get(dev, "per");
if (IS_ERR(host->clk))
return PTR_ERR(host->clk);
- clk_enable(host->clk);
ret = clk_enable(host->clk);
if (ret) {
diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig
index dd1b21451d..84945744ef 100644
--- a/drivers/spi/Kconfig
+++ b/drivers/spi/Kconfig
@@ -38,7 +38,7 @@ config DRIVER_SPI_IMX_0_7
config DRIVER_SPI_IMX_2_3
bool
- depends on ARCH_IMX50 || ARCH_IMX51 || ARCH_IMX53 || ARCH_IMX6
+ depends on ARCH_IMX50 || ARCH_IMX51 || ARCH_IMX53 || ARCH_IMX6 || ARCH_IMX7
default y
config DRIVER_SPI_MXS
diff --git a/drivers/spi/imx_spi.c b/drivers/spi/imx_spi.c
index 0827de7786..10621d00c8 100644
--- a/drivers/spi/imx_spi.c
+++ b/drivers/spi/imx_spi.c
@@ -624,6 +624,13 @@ static int imx_spi_probe(struct device_d *dev)
goto err_free;
}
+ ret = clk_enable(imx->clk);
+ if (ret) {
+ dev_err(dev, "Failed to enable clock: %s\n",
+ strerror(ret));
+ return ret;
+ }
+
imx->chipselect = devdata->chipselect;
imx->xchg_single = devdata->xchg_single;
imx->do_transfer = devdata->do_transfer;