diff options
Diffstat (limited to 'arch/arm')
34 files changed, 296 insertions, 431 deletions
diff --git a/arch/arm/Makefile b/arch/arm/Makefile index 9fc3cd3deb..768c50379f 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile @@ -252,6 +252,7 @@ imxcfg-$(CONFIG_MACH_FREESCALE_MX35_3STACK) += $(boarddir)/freescale-mx35-3ds/fl imxcfg-$(CONFIG_MACH_TQMA53) += $(boarddir)/tqma53/flash-header.imxcfg imxcfg-$(CONFIG_MACH_EUKREA_CPUIMX25) += $(boarddir)/eukrea_cpuimx25/flash-header.imxcfg imxcfg-$(CONFIG_MACH_EUKREA_CPUIMX35) += $(boarddir)/eukrea_cpuimx35/flash-header.imxcfg +imxcfg-$(CONFIG_MACH_PCM043) += $(boarddir)/phytec-phycore-imx35/flash-header.imxcfg imxcfg-$(CONFIG_MACH_KINDLE3) += $(boarddir)/kindle3/flash-header.imxcfg imxcfg-$(CONFIG_TX53_REV_1011) += $(boarddir)/karo-tx53/flash-header-tx53-rev1011.imxcfg imxcfg-$(CONFIG_TX53_REV_XX30) += $(boarddir)/karo-tx53/flash-header-tx53-revxx30.imxcfg diff --git a/arch/arm/boards/Makefile b/arch/arm/boards/Makefile index e3dcc6a615..35b636f0cf 100644 --- a/arch/arm/boards/Makefile +++ b/arch/arm/boards/Makefile @@ -15,7 +15,7 @@ obj-$(CONFIG_MACH_BEAGLE) += beagle/ obj-$(CONFIG_MACH_BEAGLEBONE) += beaglebone/ obj-$(CONFIG_MACH_CANON_A1100) += canon-a1100/ obj-$(CONFIG_MACH_CM_FX6) += cm-fx6/ -obj-$(CONFIG_MACH_NITROGEN6X) += boundarydevices-nitrogen6x/ +obj-$(CONFIG_MACH_NITROGEN6) += boundarydevices-nitrogen6/ obj-$(CONFIG_MACH_CCMX51) += ccxmx51/ obj-$(CONFIG_MACH_CCMX53) += ccxmx53/ obj-$(CONFIG_MACH_CFA10036) += crystalfontz-cfa10036/ diff --git a/arch/arm/boards/boundarydevices-nitrogen6x/1066mhz_4x128mx16.imxcfg b/arch/arm/boards/boundarydevices-nitrogen6/1066mhz_4x128mx16.imxcfg index c5a286b4e0..c5a286b4e0 100644 --- a/arch/arm/boards/boundarydevices-nitrogen6x/1066mhz_4x128mx16.imxcfg +++ b/arch/arm/boards/boundarydevices-nitrogen6/1066mhz_4x128mx16.imxcfg diff --git a/arch/arm/boards/boundarydevices-nitrogen6x/1066mhz_4x256mx16.imxcfg b/arch/arm/boards/boundarydevices-nitrogen6/1066mhz_4x256mx16.imxcfg index 4d8a715150..4d8a715150 100644 --- a/arch/arm/boards/boundarydevices-nitrogen6x/1066mhz_4x256mx16.imxcfg +++ b/arch/arm/boards/boundarydevices-nitrogen6/1066mhz_4x256mx16.imxcfg diff --git a/arch/arm/boards/boundarydevices-nitrogen6/1066mhz_4x512mx16-qp.imxcfg b/arch/arm/boards/boundarydevices-nitrogen6/1066mhz_4x512mx16-qp.imxcfg new file mode 100644 index 0000000000..6409b745d7 --- /dev/null +++ b/arch/arm/boards/boundarydevices-nitrogen6/1066mhz_4x512mx16-qp.imxcfg @@ -0,0 +1,67 @@ +/* + * Copyright (C) 2016 Boundary Devices + * + * 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. + */ + +/* NOC setup */ +wm 32 0x00bb0008 0x00000004 +wm 32 0x00bb000c 0x2891E41A +wm 32 0x00bb0038 0x00000564 +wm 32 0x00bb0014 0x00000040 +wm 32 0x00bb0028 0x00000020 +wm 32 0x00bb002c 0x00000020 + +/* Disable all MMDC arbitration and reordering controls */ +wm 32 0x021b0400 0x14420000 + +wm 32 MX6_MMDC_P0_MDPDC 0x00020036 +wm 32 MX6_MMDC_P0_MDSCR 0x00008000 +wm 32 MX6_MMDC_P0_MDCFG0 0x898E79A4 +wm 32 MX6_MMDC_P0_MDCFG1 0xDB538F64 +wm 32 MX6_MMDC_P0_MDCFG2 0x01FF00DD +wm 32 MX6_MMDC_P0_MDRWD 0x0f9f26d2 +wm 32 MX6_MMDC_P0_MDOR 0x008E1023 +wm 32 MX6_MMDC_P0_MDOTC 0x09444040 +wm 32 MX6_MMDC_P0_MDPDC 0x00025576 +wm 32 MX6_MMDC_P0_MDASP 0x00000047 +wm 32 MX6_MMDC_P0_MDCTL 0xC41A0000 +wm 32 MX6_MMDC_P0_MDSCR 0x04088032 +wm 32 MX6_MMDC_P0_MDSCR 0x0408803a +wm 32 MX6_MMDC_P0_MDSCR 0x00008033 +wm 32 MX6_MMDC_P0_MDSCR 0x0000803b +wm 32 MX6_MMDC_P0_MDSCR 0x00428031 +wm 32 MX6_MMDC_P0_MDSCR 0x00428039 +wm 32 MX6_MMDC_P0_MDSCR 0x19308030 +wm 32 MX6_MMDC_P0_MDSCR 0x19308038 +wm 32 MX6_MMDC_P0_MDSCR 0x04008040 +wm 32 MX6_MMDC_P0_MDSCR 0x04008048 +wm 32 MX6_MMDC_P0_MPZQHWCTRL 0xA1390003 +wm 32 MX6_MMDC_P1_MPZQHWCTRL 0xA1390003 +wm 32 MX6_MMDC_P0_MDREF 0x00007800 +wm 32 MX6_MMDC_P0_MPODTCTRL 0x00022227 +wm 32 MX6_MMDC_P1_MPODTCTRL 0x00022227 +wm 32 MX6_MMDC_P0_MPDGCTRL0 0x4327033b +wm 32 MX6_MMDC_P0_MPDGCTRL1 0x0324031a +wm 32 MX6_MMDC_P1_MPDGCTRL0 0x43240337 +wm 32 MX6_MMDC_P1_MPDGCTRL1 0x03210269 +wm 32 MX6_MMDC_P0_MPRDDLCTL 0x483c3e4a +wm 32 MX6_MMDC_P1_MPRDDLCTL 0x423a3848 +wm 32 MX6_MMDC_P0_MPWRDLCTL 0x33363a2c +wm 32 MX6_MMDC_P1_MPWRDLCTL 0x3e314137 +wm 32 MX6_MMDC_P0_MPWLDECTRL0 0x00200026 +wm 32 MX6_MMDC_P0_MPWLDECTRL1 0x00260021 +wm 32 MX6_MMDC_P1_MPWLDECTRL0 0x00180028 +wm 32 MX6_MMDC_P1_MPWLDECTRL1 0x000f001e +wm 32 MX6_MMDC_P0_MPMUR0 0x00000800 +wm 32 MX6_MMDC_P1_MPMUR0 0x00000800 +wm 32 MX6_MMDC_P0_MDSCR 0x00000000 +wm 32 MX6_MMDC_P0_MAPSR 0x00011006 diff --git a/arch/arm/boards/boundarydevices-nitrogen6x/800mhz_4x128mx16.imxcfg b/arch/arm/boards/boundarydevices-nitrogen6/800mhz_4x128mx16.imxcfg index 936a2f54bf..936a2f54bf 100644 --- a/arch/arm/boards/boundarydevices-nitrogen6x/800mhz_4x128mx16.imxcfg +++ b/arch/arm/boards/boundarydevices-nitrogen6/800mhz_4x128mx16.imxcfg diff --git a/arch/arm/boards/boundarydevices-nitrogen6x/800mhz_4x256mx16.imxcfg b/arch/arm/boards/boundarydevices-nitrogen6/800mhz_4x256mx16.imxcfg index 09c855544d..09c855544d 100644 --- a/arch/arm/boards/boundarydevices-nitrogen6x/800mhz_4x256mx16.imxcfg +++ b/arch/arm/boards/boundarydevices-nitrogen6/800mhz_4x256mx16.imxcfg diff --git a/arch/arm/boards/boundarydevices-nitrogen6x/Makefile b/arch/arm/boards/boundarydevices-nitrogen6/Makefile index 0ec04ce898..0ec04ce898 100644 --- a/arch/arm/boards/boundarydevices-nitrogen6x/Makefile +++ b/arch/arm/boards/boundarydevices-nitrogen6/Makefile diff --git a/arch/arm/boards/boundarydevices-nitrogen6x/board.c b/arch/arm/boards/boundarydevices-nitrogen6/board.c index 347fd9128b..d9514d9d48 100644 --- a/arch/arm/boards/boundarydevices-nitrogen6x/board.c +++ b/arch/arm/boards/boundarydevices-nitrogen6/board.c @@ -22,14 +22,18 @@ static int nitrogen6x_devices_init(void) { - if (!of_machine_is_compatible("fsl,imx6dl-nitrogen6x") && - !of_machine_is_compatible("fsl,imx6q-nitrogen6x")) + if (!of_machine_is_compatible("boundary,imx6dl-nitrogen6x") && + !of_machine_is_compatible("boundary,imx6q-nitrogen6x") && + !of_machine_is_compatible("boundary,imx6qp-nitrogen6_max")) return 0; imx6_bbu_internal_spi_i2c_register_handler("spiflash", "/dev/m25p0.barebox", BBU_HANDLER_FLAG_DEFAULT); - barebox_set_hostname("nitrogen6x"); + if (of_machine_is_compatible("boundary,imx6qp-nitrogen6_max")) + barebox_set_hostname("nitrogen6max"); + else + barebox_set_hostname("nitrogen6x"); return 0; } @@ -54,8 +58,9 @@ static int ksz9021rn_phy_fixup(struct phy_device *dev) static int nitrogen6x_coredevices_init(void) { - if (!of_machine_is_compatible("fsl,imx6dl-nitrogen6x") && - !of_machine_is_compatible("fsl,imx6q-nitrogen6x")) + if (!of_machine_is_compatible("boundary,imx6dl-nitrogen6x") && + !of_machine_is_compatible("boundary,imx6q-nitrogen6x") && + !of_machine_is_compatible("boundary,imx6qp-nitrogen6_max")) return 0; phy_register_fixup_for_uid(PHY_ID_KSZ9021, MICREL_PHY_ID_MASK, diff --git a/arch/arm/boards/boundarydevices-nitrogen6x/flash-header-nitrogen6dl-1g.imxcfg b/arch/arm/boards/boundarydevices-nitrogen6/flash-header-nitrogen6dl-1g.imxcfg index 0773f4d276..0773f4d276 100644 --- a/arch/arm/boards/boundarydevices-nitrogen6x/flash-header-nitrogen6dl-1g.imxcfg +++ b/arch/arm/boards/boundarydevices-nitrogen6/flash-header-nitrogen6dl-1g.imxcfg diff --git a/arch/arm/boards/boundarydevices-nitrogen6x/flash-header-nitrogen6dl-2g.imxcfg b/arch/arm/boards/boundarydevices-nitrogen6/flash-header-nitrogen6dl-2g.imxcfg index 6622c517fa..6622c517fa 100644 --- a/arch/arm/boards/boundarydevices-nitrogen6x/flash-header-nitrogen6dl-2g.imxcfg +++ b/arch/arm/boards/boundarydevices-nitrogen6/flash-header-nitrogen6dl-2g.imxcfg diff --git a/arch/arm/boards/boundarydevices-nitrogen6x/flash-header-nitrogen6q-1g.imxcfg b/arch/arm/boards/boundarydevices-nitrogen6/flash-header-nitrogen6q-1g.imxcfg index bd4134f8a9..bd4134f8a9 100644 --- a/arch/arm/boards/boundarydevices-nitrogen6x/flash-header-nitrogen6q-1g.imxcfg +++ b/arch/arm/boards/boundarydevices-nitrogen6/flash-header-nitrogen6q-1g.imxcfg diff --git a/arch/arm/boards/boundarydevices-nitrogen6x/flash-header-nitrogen6q-2g.imxcfg b/arch/arm/boards/boundarydevices-nitrogen6/flash-header-nitrogen6q-2g.imxcfg index 89aa21c300..89aa21c300 100644 --- a/arch/arm/boards/boundarydevices-nitrogen6x/flash-header-nitrogen6q-2g.imxcfg +++ b/arch/arm/boards/boundarydevices-nitrogen6/flash-header-nitrogen6q-2g.imxcfg diff --git a/arch/arm/boards/boundarydevices-nitrogen6/flash-header-nitrogen6qp-max.imxcfg b/arch/arm/boards/boundarydevices-nitrogen6/flash-header-nitrogen6qp-max.imxcfg new file mode 100644 index 0000000000..66f0e1a860 --- /dev/null +++ b/arch/arm/boards/boundarydevices-nitrogen6/flash-header-nitrogen6qp-max.imxcfg @@ -0,0 +1,10 @@ +soc imx6 +loadaddr 0x20000000 +dcdofs 0x400 + +#include <mach/imx6-ddr-regs.h> +#include <mach/imx6q-ddr-regs.h> +#include <mach/imx6-ccm-regs.h> + +#include "ram-base.imxcfg" +#include "1066mhz_4x512mx16-qp.imxcfg" diff --git a/arch/arm/boards/boundarydevices-nitrogen6x/lowlevel.c b/arch/arm/boards/boundarydevices-nitrogen6/lowlevel.c index 7d859330f9..bee70a5af4 100644 --- a/arch/arm/boards/boundarydevices-nitrogen6x/lowlevel.c +++ b/arch/arm/boards/boundarydevices-nitrogen6/lowlevel.c @@ -1,7 +1,6 @@ #include <common.h> -#include <linux/sizes.h> #include <mach/generic.h> -#include <asm/barebox-arm-head.h> +#include <mach/esdctl.h> #include <asm/barebox-arm.h> extern char __dtb_imx6q_nitrogen6x_start[]; @@ -14,7 +13,7 @@ ENTRY_FUNCTION(start_imx6q_nitrogen6x_1g, r0, r1, r2) fdt = __dtb_imx6q_nitrogen6x_start - get_runtime_offset(); - barebox_arm_entry(0x10000000, SZ_1G, fdt); + imx6q_barebox_entry(fdt); } ENTRY_FUNCTION(start_imx6q_nitrogen6x_2g, r0, r1, r2) @@ -25,7 +24,7 @@ ENTRY_FUNCTION(start_imx6q_nitrogen6x_2g, r0, r1, r2) fdt = __dtb_imx6q_nitrogen6x_start - get_runtime_offset(); - barebox_arm_entry(0x10000000, SZ_2G, fdt); + imx6q_barebox_entry(fdt); } extern char __dtb_imx6dl_nitrogen6x_start[]; @@ -38,7 +37,7 @@ ENTRY_FUNCTION(start_imx6dl_nitrogen6x_1g, r0, r1, r2) fdt = __dtb_imx6dl_nitrogen6x_start - get_runtime_offset(); - barebox_arm_entry(0x10000000, SZ_1G, fdt); + imx6q_barebox_entry(fdt); } ENTRY_FUNCTION(start_imx6dl_nitrogen6x_2g, r0, r1, r2) @@ -49,5 +48,18 @@ ENTRY_FUNCTION(start_imx6dl_nitrogen6x_2g, r0, r1, r2) fdt = __dtb_imx6dl_nitrogen6x_start - get_runtime_offset(); - barebox_arm_entry(0x10000000, SZ_2G, fdt); + imx6q_barebox_entry(fdt); +} + +extern char __dtb_imx6qp_nitrogen6_max_start[]; + +ENTRY_FUNCTION(start_imx6qp_nitrogen6_max, r0, r1, r2) +{ + void *fdt; + + imx6_cpu_lowlevel_init(); + + fdt = __dtb_imx6qp_nitrogen6_max_start - get_runtime_offset(); + + imx6q_barebox_entry(fdt); } diff --git a/arch/arm/boards/boundarydevices-nitrogen6x/ram-base.imxcfg b/arch/arm/boards/boundarydevices-nitrogen6/ram-base.imxcfg index 60c8fa2b51..5d675883fd 100644 --- a/arch/arm/boards/boundarydevices-nitrogen6x/ram-base.imxcfg +++ b/arch/arm/boards/boundarydevices-nitrogen6/ram-base.imxcfg @@ -60,8 +60,8 @@ wm 32 MX6_MMDC_P1_MPRDDQBY1DL 0x33333333 wm 32 MX6_MMDC_P1_MPRDDQBY2DL 0x33333333 wm 32 MX6_MMDC_P1_MPRDDQBY3DL 0x33333333 -/* MDMISC mirroring interleaved (row/bank/col) */ -wm 32 MX6_MMDC_P0_MDMISC 0x00081740 +/* MDMISC mirroring-off interleaved (row/bank/col) */ +wm 32 MX6_MMDC_P0_MDMISC 0x00001740 /* MDSCR con_req */ wm 32 MX6_MMDC_P0_MDSCR 0x00008000 diff --git a/arch/arm/boards/embest-riotboard/board.c b/arch/arm/boards/embest-riotboard/board.c index a885a08a70..eb956f1f50 100644 --- a/arch/arm/boards/embest-riotboard/board.c +++ b/arch/arm/boards/embest-riotboard/board.c @@ -64,7 +64,7 @@ static int ar8035_phy_fixup(struct phy_device *dev) static int riotboard_device_init(void) { - if (!of_machine_is_compatible("embest,riotboard")) + if (!of_machine_is_compatible("riot,imx6s-riotboard")) return 0; phy_register_fixup_for_uid(0x004dd072, 0xffffffef, ar8035_phy_fixup); diff --git a/arch/arm/boards/phytec-phycore-imx35/flash-header.imxcfg b/arch/arm/boards/phytec-phycore-imx35/flash-header.imxcfg new file mode 100644 index 0000000000..36b68cd7ee --- /dev/null +++ b/arch/arm/boards/phytec-phycore-imx35/flash-header.imxcfg @@ -0,0 +1,37 @@ +soc imx35 +dcdofs 0x400 +loadaddr 0x80000000 +wm 32 0x53f80004 0x00821000 +wm 32 0x53f80004 0x00821000 + +wm 32 0x43fac794 0x00000800 +wm 32 0x43fac798 0x00000800 +wm 32 0x43fac79c 0x00000800 +wm 32 0x43fac7a0 0x00000800 +wm 32 0x43fac7a4 0x00000800 + +wm 32 0xb8001010 0x00000304 +wm 32 0xb8001004 0x0025541f +wm 32 0xb8001000 0x92220000 +wm 32 0x80000400 0x12345678 + +wm 32 0xb8001000 0xb8001000 +wm 8 0x84000000 0xda +wm 8 0x86000000 0xda +wm 8 0x82000400 0xda +wm 8 0x80000333 0xda + +wm 32 0xb8001000 0x92220000 +wm 32 0x80000400 0x12345678 + +wm 32 0xb8001000 0xa2220000 +wm 32 0x80000000 0x12344321 +wm 32 0x80000000 0x12344321 +wm 32 0xb8001000 0xb2220000 +wm 8 0x80000233 0xda +wm 8 0x82000780 0xda +wm 8 0x82000400 0xda +wm 32 0xb8001000 0x82220080 +wm 32 0xb8001000 0x82228080 +wm 32 0xb8001008 0x00002000 + diff --git a/arch/arm/boards/phytec-som-am335x/defaultenv-physom-am335x/boot/nand b/arch/arm/boards/phytec-som-am335x/defaultenv-physom-am335x/boot/nand index b9b1bc6c38..ece44b70dc 100644 --- a/arch/arm/boards/phytec-som-am335x/defaultenv-physom-am335x/boot/nand +++ b/arch/arm/boards/phytec-som-am335x/defaultenv-physom-am335x/boot/nand @@ -1,6 +1,8 @@ #!/bin/sh -global.bootm.image="/dev/nand0.kernel.bb" -global.bootm.oftree="/dev/nand0.oftree.bb" +[ ! -e /dev/nand0.root.ubi ] && ubiattach /dev/nand0.root + +global.bootm.image="/dev/nand0.root.ubi.kernel" +global.bootm.oftree="/dev/nand0.root.ubi.oftree" global.linux.bootargs.dyn.root="root=ubi0:root ubi.mtd=root rw rootfstype=ubifs" diff --git a/arch/arm/configs/imx_v7_defconfig b/arch/arm/configs/imx_v7_defconfig index 8594965b54..e3a8f478d2 100644 --- a/arch/arm/configs/imx_v7_defconfig +++ b/arch/arm/configs/imx_v7_defconfig @@ -18,7 +18,7 @@ CONFIG_MACH_TX6X=y CONFIG_MACH_SABRELITE=y CONFIG_MACH_SABRESD=y CONFIG_MACH_FREESCALE_IMX6SX_SABRESDB=y -CONFIG_MACH_NITROGEN6X=y +CONFIG_MACH_NITROGEN6=y CONFIG_MACH_SOLIDRUN_MICROSOM=y CONFIG_MACH_TECHNEXION_WANDBOARD=y CONFIG_MACH_EMBEST_RIOTBOARD=y diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index 813e098145..09bf68ea2b 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -29,7 +29,7 @@ pbl-dtb-$(CONFIG_MACH_GW_VENTANA) += imx6q-gw54xx.dtb.o pbl-dtb-$(CONFIG_MACH_LENOVO_IX4_300D) += armada-xp-lenovo-ix4-300d-bb.dtb.o pbl-dtb-$(CONFIG_MACH_MARVELL_ARMADA_XP_GP) += armada-xp-gp-bb.dtb.o pbl-dtb-$(CONFIG_MACH_NETGEAR_RN104) += armada-370-rn104-bb.dtb.o -pbl-dtb-$(CONFIG_MACH_NITROGEN6X) += imx6q-nitrogen6x.dtb.o imx6dl-nitrogen6x.dtb.o +pbl-dtb-$(CONFIG_MACH_NITROGEN6) += imx6q-nitrogen6x.dtb.o imx6dl-nitrogen6x.dtb.o imx6qp-nitrogen6_max.dtb.o pbl-dtb-$(CONFIG_MACH_NVIDIA_BEAVER) += tegra30-beaver.dtb.o pbl-dtb-$(CONFIG_MACH_NVIDIA_JETSON) += tegra124-jetson-tk1.dtb.o pbl-dtb-$(CONFIG_MACH_PCA100) += imx27-phytec-phycard-s-rdk-bb.dtb.o diff --git a/arch/arm/dts/am335x-phytec-phycard-som.dtsi b/arch/arm/dts/am335x-phytec-phycard-som.dtsi index 3dd9cade43..d608f63e12 100644 --- a/arch/arm/dts/am335x-phytec-phycard-som.dtsi +++ b/arch/arm/dts/am335x-phytec-phycard-som.dtsi @@ -216,22 +216,12 @@ }; partition@1C0000 { - label = "oftree"; - reg = <0x1C0000 0x40000>; - }; - - partition@200000 { - label = "kernel"; - reg = <0x200000 0x800000>; - }; - - partition@A00000 { label = "root"; /* * Size 0x0 extends partition to * end of nand flash. */ - reg = <0xA00000 0x0>; + reg = <0x1C0000 0x0>; }; }; }; diff --git a/arch/arm/dts/am335x-phytec-phycore-som.dtsi b/arch/arm/dts/am335x-phytec-phycore-som.dtsi index 0fc3c96baa..0b8c454143 100644 --- a/arch/arm/dts/am335x-phytec-phycore-som.dtsi +++ b/arch/arm/dts/am335x-phytec-phycore-som.dtsi @@ -300,22 +300,12 @@ }; partition@1C0000 { - label = "oftree"; - reg = <0x1C0000 0x40000>; - }; - - partition@200000 { - label = "kernel"; - reg = <0x200000 0x800000>; - }; - - partition@A00000 { label = "root"; /* * Size 0x0 extends partition to * end of nand flash. */ - reg = <0xA00000 0x0>; + reg = <0x1C0000 0x0>; }; }; }; diff --git a/arch/arm/dts/am335x-phytec-phyflex-som.dtsi b/arch/arm/dts/am335x-phytec-phyflex-som.dtsi index db78cb10fd..5b8bb5dda9 100644 --- a/arch/arm/dts/am335x-phytec-phyflex-som.dtsi +++ b/arch/arm/dts/am335x-phytec-phyflex-som.dtsi @@ -314,22 +314,12 @@ }; partition@1C0000 { - label = "oftree"; - reg = <0x1C0000 0x40000>; - }; - - partition@200000 { - label = "kernel"; - reg = <0x200000 0x800000>; - }; - - partition@A00000 { label = "root"; /* * Size 0x0 extends partition to * end of nand flash. */ - reg = <0xA00000 0x0>; + reg = <0x1C0000 0x0>; }; }; }; diff --git a/arch/arm/dts/imx6dl-nitrogen6x.dts b/arch/arm/dts/imx6dl-nitrogen6x.dts index 50267b1038..bc199c3167 100644 --- a/arch/arm/dts/imx6dl-nitrogen6x.dts +++ b/arch/arm/dts/imx6dl-nitrogen6x.dts @@ -11,12 +11,6 @@ * http://www.gnu.org/copyleft/gpl.html */ -/dts-v1/; -#include <arm/imx6dl.dtsi> +#include <arm/imx6dl-nitrogen6x.dts> #include "imx6dl.dtsi" #include "imx6qdl-nitrogen6x.dtsi" - -/ { - model = "Freescale i.MX6 DualLite Nitrogen6x Board"; - compatible = "fsl,imx6dl-nitrogen6x", "fsl,imx6dl"; -}; diff --git a/arch/arm/dts/imx6q-nitrogen6x.dts b/arch/arm/dts/imx6q-nitrogen6x.dts index d8906e6063..e4a6a6c29e 100644 --- a/arch/arm/dts/imx6q-nitrogen6x.dts +++ b/arch/arm/dts/imx6q-nitrogen6x.dts @@ -11,16 +11,6 @@ * http://www.gnu.org/copyleft/gpl.html */ -/dts-v1/; -#include <arm/imx6q.dtsi> +#include <arm/imx6q-nitrogen6x.dts> #include "imx6q.dtsi" #include "imx6qdl-nitrogen6x.dtsi" - -/ { - model = "Freescale i.MX6 Quad Nitrogen6x Board"; - compatible = "fsl,imx6q-nitrogen6x", "fsl,imx6q"; -}; - -&sata { - status = "okay"; -}; diff --git a/arch/arm/dts/imx6qdl-nitrogen6_max.dtsi b/arch/arm/dts/imx6qdl-nitrogen6_max.dtsi new file mode 100644 index 0000000000..26c685c529 --- /dev/null +++ b/arch/arm/dts/imx6qdl-nitrogen6_max.dtsi @@ -0,0 +1,69 @@ +/* + * Copyright 2016 Pengutronix, Lucas Stach + * + * This file is dual-licensed: you can use it either under the terms + * of the GPL or the X11 license, at your option. Note that this dual + * licensing only applies to this file, and not this project as a + * whole. + * + * a) This file 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 file 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. + * + * Or, alternatively, + * + * b) Permission is hereby granted, free of charge, to any person + * obtaining a copy of this software and associated documentation + * files (the "Software"), to deal in the Software without + * restriction, including without limitation the rights to use, + * copy, modify, merge, publish, distribute, sublicense, and/or + * sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following + * conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + */ + +/ { + chosen { + environment@0 { + compatible = "barebox,environment"; + device-path = &flash, "partname:barebox-environment"; + }; + }; +}; + +&flash { + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "barebox"; + reg = <0x0 0xe0000>; + }; + + partition@e0000 { + label = "barebox-environment"; + reg = <0xe0000 0x20000>; + }; +}; + +&ocotp { + barebox,provide-mac-address = <&fec 0x620>; +};
\ No newline at end of file diff --git a/arch/arm/dts/imx6qdl-nitrogen6x.dtsi b/arch/arm/dts/imx6qdl-nitrogen6x.dtsi index 9ff7395f45..76e55e057c 100644 --- a/arch/arm/dts/imx6qdl-nitrogen6x.dtsi +++ b/arch/arm/dts/imx6qdl-nitrogen6x.dtsi @@ -16,8 +16,6 @@ / { chosen { - linux,stdout-path = &uart2; - environment@0 { compatible = "barebox,environment"; device-path = &flash, "partname:barebox-environment"; diff --git a/arch/arm/dts/imx6qp-nitrogen6_max.dts b/arch/arm/dts/imx6qp-nitrogen6_max.dts new file mode 100644 index 0000000000..93f0741062 --- /dev/null +++ b/arch/arm/dts/imx6qp-nitrogen6_max.dts @@ -0,0 +1,44 @@ +/* + * Copyright 2016 Boundary Devices, Inc. + * + * This file is dual-licensed: you can use it either under the terms + * of the GPL or the X11 license, at your option. Note that this dual + * licensing only applies to this file, and not this project as a + * whole. + * + * a) This file 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 file 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. + * + * Or, alternatively, + * + * b) Permission is hereby granted, free of charge, to any person + * obtaining a copy of this software and associated documentation + * files (the "Software"), to deal in the Software without + * restriction, including without limitation the rights to use, + * copy, modify, merge, publish, distribute, sublicense, and/or + * sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following + * conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + */ + +#include <arm/imx6qp-nitrogen6_max.dts> +#include "imx6qdl-nitrogen6_max.dtsi" diff --git a/arch/arm/dts/imx6s-riotboard.dts b/arch/arm/dts/imx6s-riotboard.dts index 09ac534625..7193f28b76 100644 --- a/arch/arm/dts/imx6s-riotboard.dts +++ b/arch/arm/dts/imx6s-riotboard.dts @@ -4,15 +4,11 @@ * The code contained herein is licensed under the GNU General Public * License version 2. */ -/dts-v1/; -#include <arm/imx6dl.dtsi> -#include "imx6dl.dtsi" +#include <arm/imx6dl-riotboard.dts> +#include "imx6qdl.dtsi" / { - model = "RIoTboard Solo"; - compatible = "embest,riotboard", "fsl,imx6dl"; - chosen { linux,stdout-path = &uart2; @@ -21,210 +17,13 @@ device-path = &environment_usdhc4; }; }; - - memory { - reg = <0x10000000 0x40000000>; - }; - - gpio-leds { - compatible = "gpio-leds"; - - d45 { - label = "d45"; - gpios = <&gpio5 2 1>; - linux,default-trigger = "heartbeat"; - }; - - d46 { - label = "d46"; - gpios = <&gpio3 28 1>; - linux,default-trigger = "default-on"; - }; - }; - - - regulators { - compatible = "simple-bus"; - #address-cells = <1>; - #size-cells = <0>; - - reg_3p3v: regulator@1 { - compatible = "regulator-fixed"; - reg = <1>; - regulator-name = "3P3V"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - regulator-always-on; - }; - }; -}; - -&iomuxc { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_hog>; - - imx6s-riotboard { - pinctrl_hog: hoggrp { - fsl,pins = < - MX6QDL_PAD_EIM_A25__GPIO5_IO02 0x80000000 /* LED D45 */ - MX6QDL_PAD_EIM_D28__GPIO3_IO28 0x80000000 /* LED D46 */ - MX6QDL_PAD_DISP0_DAT22__GPIO5_IO16 0x80000000 /* PMIC_INT_B */ - MX6QDL_PAD_GPIO_0__CCM_CLKO1 0x030b0 /* CAM_MCLK + SGTL_MCLK */ - >; - }; - pinctrl_uart2: uart2grp { - fsl,pins = < - MX6QDL_PAD_EIM_D26__UART2_TX_DATA 0x1b0b1 - MX6QDL_PAD_EIM_D27__UART2_RX_DATA 0x1b0b1 - >; - }; - pinctrl_rgmii_ar8035: rgmii_ar8035 { - fsl,pins = < - MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0 - MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0 - /* AR8035 reset */ - MX6QDL_PAD_EIM_D31__GPIO3_IO31 0x130b0 - /* AR8035 interrupt */ - MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28 0x80000000 - /* GPIO16 -> AR8035 25MHz */ - MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0xc0000000 - MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x80000000 - MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b0b0 - MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b0b0 - MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b0b0 - MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b0b0 - MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b0b0 - /* AR8035 CLK_25M --> ENET_REF_CLK (V22) */ - MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x0a0b1 - /* AR8035 pin strapping: IO voltage: pull up */ - MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0 - /* AR8035 pin strapping: PHYADDR#0: pull down */ - MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x130b0 - /* AR8035 pin strapping: PHYADDR#1: pull down */ - MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x130b0 - /* AR8035 pin strapping: MODE#1: pull up */ - MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0 - /* AR8035 pin strapping: MODE#3: pull up */ - MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0 - /* AR8035 pin strapping: MODE#0: pull down */ - MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x130b0 - >; - }; - pinctrl_usdhc4: usdhc4grp { - fsl,pins = < - MX6QDL_PAD_SD4_CLK__SD4_CLK 0x80000000 - MX6QDL_PAD_SD4_CMD__SD4_CMD 0x80000000 - MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x80000000 - MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x80000000 - MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x80000000 - MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x80000000 - >; - }; - pinctrl_usdhc2: usdhc2grp { - fsl,pins = < - MX6QDL_PAD_SD2_CLK__SD2_CLK 0x80000000 - MX6QDL_PAD_SD2_CMD__SD2_CMD 0x80000000 - MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x80000000 - MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x80000000 - MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x80000000 - MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x80000000 - MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x80000000 - MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x80000000 - >; - }; - pinctrl_usdhc3: usdhc3grp { - fsl,pins = < - MX6QDL_PAD_SD3_CMD__SD3_CMD 0x80000000 - MX6QDL_PAD_SD3_CLK__SD3_CLK 0x80000000 - MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x80000000 - MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x80000000 - MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x80000000 - MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x80000000 - MX6QDL_PAD_SD3_DAT4__GPIO7_IO01 0x80000000 - MX6QDL_PAD_SD3_DAT5__GPIO7_IO00 0x80000000 - >; - }; - pinctrl_usbotg: usbotggrp { - fsl,pins = < - MX6QDL_PAD_ENET_RX_ER__USB_OTG_ID 0x80000000 - MX6QDL_PAD_EIM_D22__USB_OTG_PWR 0x80000000 - MX6QDL_PAD_EIM_D21__USB_OTG_OC 0x80000000 - >; - }; - pinctrl_i2c1_2: i2c1grp-2 { - fsl,pins = < - MX6QDL_PAD_CSI0_DAT9__I2C1_SCL 0x4001b8b1 - MX6QDL_PAD_CSI0_DAT8__I2C1_SDA 0x4001b8b1 - >; - }; - pinctrl_i2c2_2: i2c2grp-2 { - fsl,pins = < - MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1 - MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1 - >; - }; - pinctrl_i2c3_2: i2c3grp-2 { - fsl,pins = < - MX6QDL_PAD_GPIO_5__I2C3_SCL 0x4001b8b1 - MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b8b1 - >; - }; - pinctrl_i2c4_2: i2c4grp-2 { - fsl,pins = < - MX6QDL_PAD_GPIO_7__I2C4_SCL 0x4001b8b1 - MX6QDL_PAD_GPIO_8__I2C4_SDA 0x4001b8b1 - >; - }; - }; -}; - -&uart2 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_uart2>; - status = "okay"; }; &fec { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_rgmii_ar8035>; - phy-mode = "rgmii"; phy-reset-duration = <2>; - phy-reset-gpios = <&gpio3 31 0>; - status = "okay"; -}; - -&usdhc2 { - /* SD card socket - bottom */ - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_usdhc2>; - bus-width = <4>; - cd-gpios = <&gpio1 4 0>; - wp-gpios = <&gpio1 2 0>; - status = "okay"; - #address-cells = <1>; - #size-cells = <1>; -}; - -&usdhc3 { - /* uSD card socket - top */ - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_usdhc3>; - bus-width = <4>; - cd-gpios = <&gpio7 0 0>; - wp-gpios = <&gpio7 1 0>; - status = "okay"; - #address-cells = <1>; - #size-cells = <1>; }; &usdhc4 { - /* eMMC */ - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_usdhc4>; - bus-width = <4>; - non-removable; - status = "okay"; - #address-cells = <1>; #size-cells = <1>; @@ -239,156 +38,6 @@ }; }; -&usbh1 { - status = "okay"; - phy_type = "utmi"; - disable-over-current; -}; - -&usbotg { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_usbotg>; - phy_type = "utmi"; - dr_mode = "peripheral"; - otg_id_pin_select_change; - status = "okay"; -}; - -&i2c1 { - status = "okay"; - clock-frequency = <100000>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_i2c1_2>; - - pmic: pf0100@08 { - compatible = "pf0100-regulator"; - reg = <0x08>; - interrupt-parent = <&gpio5>; - interrupts = <16 8>; - - regulators { - reg_vddcore: sw1ab { - regulator-min-microvolt = <300000>; - regulator-max-microvolt = <1875000>; - regulator-always-on; - }; - - reg_vddsoc: sw1c { - regulator-min-microvolt = <300000>; - regulator-max-microvolt = <1875000>; - regulator-always-on; - }; - - reg_gen_3v3: sw2 { - regulator-min-microvolt = <800000>; - regulator-max-microvolt = <3300000>; - regulator-always-on; - }; - - reg_ddr_1v5a: sw3a { - regulator-min-microvolt = <400000>; - regulator-max-microvolt = <1975000>; - regulator-always-on; - }; - - reg_ddr_1v5b: sw3b { - regulator-min-microvolt = <400000>; - regulator-max-microvolt = <1975000>; - regulator-always-on; - }; - - reg_ddr_vtt: sw4 { - regulator-min-microvolt = <400000>; - regulator-max-microvolt = <1975000>; - regulator-always-on; - }; - - reg_5v_600mA: swbst { - regulator-min-microvolt = <5000000>; - regulator-max-microvolt = <5150000>; - regulator-always-on; - }; - - reg_snvs_3v: vsnvs { - regulator-min-microvolt = <1500000>; - regulator-max-microvolt = <3000000>; - regulator-always-on; - }; - - reg_vrefddr: vrefddr { - regulator-min-microvolt = <750000>; - regulator-max-microvolt = <750000>; - regulator-always-on; - }; - - reg_vgen1_1v5: vgen1 { - regulator-min-microvolt = <800000>; - regulator-max-microvolt = <1550000>; - /* not used */ - }; - - reg_vgen2_1v2_eth: vgen2 { - regulator-min-microvolt = <800000>; - regulator-max-microvolt = <1550000>; - regulator-always-on; - }; - - reg_vgen3_2v8: vgen3 { - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <3300000>; - regulator-always-on; - }; - - reg_vgen4_1v8: vgen4 { - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <3300000>; - regulator-always-on; - }; - - reg_vgen5_2v5_sgtl: vgen5 { - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <3300000>; - regulator-always-on; - }; - - reg_vgen6_3v3: vgen6 { - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <3300000>; - regulator-always-on; - }; - }; - }; - - codec: sgtl5000@0a { - compatible = "fsl,sgtl5000"; - reg = <0x0a>; - clocks = <&clks 201>; - VDDA-supply = <®_vgen5_2v5_sgtl>; - VDDIO-supply = <®_3p3v>; - }; -}; - -&i2c2 { - status = "okay"; - clock-frequency = <100000>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_i2c2_2>; -}; - -&i2c3 { - status = "okay"; - clock-frequency = <100000>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_i2c3_2>; -}; - -&i2c4 { - status = "okay"; - clock-frequency = <100000>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_i2c4_2>; -}; - &ocotp { barebox,provide-mac-address = <&fec 0x620>; }; diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig index 80f8fd80ae..82fc945d5b 100644 --- a/arch/arm/mach-imx/Kconfig +++ b/arch/arm/mach-imx/Kconfig @@ -279,8 +279,8 @@ config MACH_FREESCALE_IMX6SX_SABRESDB select I2C select I2C_IMX -config MACH_NITROGEN6X - bool "BoundaryDevices Nitrogen6x" +config MACH_NITROGEN6 + bool "BoundaryDevices Nitrogen6 boards" select ARCH_IMX6 config MACH_SOLIDRUN_MICROSOM diff --git a/arch/arm/mach-imx/imx.c b/arch/arm/mach-imx/imx.c index 374ee35df1..2e33325c9f 100644 --- a/arch/arm/mach-imx/imx.c +++ b/arch/arm/mach-imx/imx.c @@ -59,6 +59,8 @@ static int imx_soc_from_dt(void) return IMX_CPU_IMX6; if (of_machine_is_compatible("fsl,imx6sx")) return IMX_CPU_IMX6; + if (of_machine_is_compatible("fsl,imx6qp")) + return IMX_CPU_IMX6; return 0; } diff --git a/arch/arm/mach-imx/include/mach/devices-imx31.h b/arch/arm/mach-imx/include/mach/devices-imx31.h index 63319fea37..51125d1bca 100644 --- a/arch/arm/mach-imx/include/mach/devices-imx31.h +++ b/arch/arm/mach-imx/include/mach/devices-imx31.h @@ -2,19 +2,34 @@ #include <mach/imx31-regs.h> #include <mach/devices.h> +static inline struct device_d *imx31_add_i2c0(void *pdata) +{ + return imx_add_i2c((void *)MX31_I2C1_BASE_ADDR, 0, pdata); +} + +static inline struct device_d *imx31_add_i2c1(void *pdata) +{ + return imx_add_i2c((void *)MX31_I2C2_BASE_ADDR, 1, pdata); +} + +static inline struct device_d *imx31_add_i2c2(void *pdata) +{ + return imx_add_i2c((void *)MX31_I2C3_BASE_ADDR, 2, pdata); +} + static inline struct device_d *imx31_add_spi0(struct spi_imx_master *pdata) { - return imx_add_spi_imx27((void *)MX31_CSPI1_BASE_ADDR, 0, pdata); + return imx_add_spi_imx35((void *)MX31_CSPI1_BASE_ADDR, 0, pdata); } static inline struct device_d *imx31_add_spi1(struct spi_imx_master *pdata) { - return imx_add_spi_imx27((void *)MX31_CSPI2_BASE_ADDR, 1, pdata); + return imx_add_spi_imx35((void *)MX31_CSPI2_BASE_ADDR, 1, pdata); } static inline struct device_d *imx31_add_spi2(struct spi_imx_master *pdata) { - return imx_add_spi_imx27((void *)MX31_CSPI3_BASE_ADDR, 2, pdata); + return imx_add_spi_imx35((void *)MX31_CSPI3_BASE_ADDR, 2, pdata); } static inline struct device_d *imx31_add_uart0(void) diff --git a/arch/arm/mach-imx/ocotp.c b/arch/arm/mach-imx/ocotp.c index 1dc9108a2b..17b944be14 100644 --- a/arch/arm/mach-imx/ocotp.c +++ b/arch/arm/mach-imx/ocotp.c @@ -404,7 +404,7 @@ static int imx_ocotp_probe(struct device_d *dev) priv->map_config.reg_stride = 4; priv->map_config.max_register = data->num_regs - 1; - priv->map = regmap_init(&priv->dev, &imx_ocotp_regmap_bus, priv, &priv->map_config); + priv->map = regmap_init(dev, &imx_ocotp_regmap_bus, priv, &priv->map_config); if (IS_ERR(priv->map)) return PTR_ERR(priv->map); |