diff --git a/core/linux-wandboard/0001-Swap-usdhc1-and-usdhc3.patch b/core/linux-wandboard/0001-Swap-usdhc1-and-usdhc3.patch new file mode 100644 index 000000000..0389c4f00 --- /dev/null +++ b/core/linux-wandboard/0001-Swap-usdhc1-and-usdhc3.patch @@ -0,0 +1,213 @@ +From d7ab60d286774ec9885490f0954f73ed31fe9c27 Mon Sep 17 00:00:00 2001 +From: Kevin Mihelich +Date: Mon, 12 May 2014 13:56:09 -0600 +Subject: [PATCH] Swap usdhc1 and usdhc3 + +U-Boot recognizes the module SD slot as mmc0 and the base board slot as mmc1, +so carry this forward into the kernel so that when both slots are occupied mmc1 +from U-Boot does not become mmc0. + +Signed-off-by: Kevin Mihelich +--- + arch/arm/boot/dts/imx6qdl-wandboard.dtsi | 15 +++-- + arch/arm/boot/dts/imx6qdl.dtsi | 104 +++++++++++++++---------------- + 2 files changed, 59 insertions(+), 60 deletions(-) + +diff --git a/arch/arm/boot/dts/imx6qdl-wandboard.dtsi b/arch/arm/boot/dts/imx6qdl-wandboard.dtsi +index 1cc4840..0d03a0b 100644 +--- a/arch/arm/boot/dts/imx6qdl-wandboard.dtsi ++++ b/arch/arm/boot/dts/imx6qdl-wandboard.dtsi +@@ -450,12 +450,11 @@ reference manual. + status = "okay"; + }; + +-&usdhc1 { /* Baseboard microSD slot */ ++&usdhc1 { /* Module microSD slot */ + pinctrl-names = "default"; +- pinctrl-0 = <&pinctrl_usdhc1_1>; +- bus-width = <4>; ++ pinctrl-0 = <&pinctrl_usdhc1_2>; + vmmc-supply = <®_3p3v>; +- cd-gpios = <&gpio1 2 0>; ++ cd-gpios = <&gpio3 9 0>; + status = "okay"; + }; + +@@ -469,11 +468,11 @@ reference manual. + status = "okay"; + }; + +-&usdhc3 { /* Module microSD slot */ ++&usdhc3 { /* Baseboard microSD slot */ + pinctrl-names = "default"; +- pinctrl-0 = <&pinctrl_usdhc3_2>; ++ pinctrl-0 = <&pinctrl_usdhc3_1>; ++ bus-width = <4>; + vmmc-supply = <®_3p3v>; +- cd-gpios = <&gpio3 9 0>; ++ cd-gpios = <&gpio1 2 0>; + status = "okay"; + }; +- +diff --git a/arch/arm/boot/dts/imx6qdl.dtsi b/arch/arm/boot/dts/imx6qdl.dtsi +index 2cb5ae0..05dbd88 100644 +--- a/arch/arm/boot/dts/imx6qdl.dtsi ++++ b/arch/arm/boot/dts/imx6qdl.dtsi +@@ -836,11 +836,11 @@ + status = "disabled"; + }; + +- usdhc1: usdhc@02190000 { ++ usdhc1: usdhc@02198000 { + compatible = "fsl,imx6q-usdhc"; +- reg = <0x02190000 0x4000>; +- interrupts = <0 22 0x04>; +- clocks = <&clks 163>, <&clks 163>, <&clks 163>; ++ reg = <0x02198000 0x4000>; ++ interrupts = <0 24 0x04>; ++ clocks = <&clks 165>, <&clks 165>, <&clks 165>; + clock-names = "ipg", "ahb", "per"; + bus-width = <4>; + status = "disabled"; +@@ -856,11 +856,11 @@ + status = "disabled"; + }; + +- usdhc3: usdhc@02198000 { ++ usdhc3: usdhc@02190000 { + compatible = "fsl,imx6q-usdhc"; +- reg = <0x02198000 0x4000>; +- interrupts = <0 24 0x04>; +- clocks = <&clks 165>, <&clks 165>, <&clks 165>; ++ reg = <0x02190000 0x4000>; ++ interrupts = <0 22 0x04>; ++ clocks = <&clks 163>, <&clks 163>, <&clks 163>; + clock-names = "ipg", "ahb", "per"; + bus-width = <4>; + status = "disabled"; +@@ -1576,47 +1576,6 @@ + usdhc1 { + pinctrl_usdhc1_1: usdhc1grp-1 { + fsl,pins = < +- MX6QDL_PAD_SD1_CMD__SD1_CMD 0x17071 +- MX6QDL_PAD_SD1_CLK__SD1_CLK 0x10071 +- MX6QDL_PAD_SD1_DAT0__SD1_DATA0 0x17071 +- MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x17071 +- MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x17071 +- MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x17071 +- >; +- }; +- }; +- +- usdhc2 { +- pinctrl_usdhc2_1: usdhc2grp-1 { +- fsl,pins = < +- MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17059 +- MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10059 +- MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059 +- MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059 +- MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059 +- MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x17059 +- MX6QDL_PAD_NANDF_D4__SD2_DATA4 0x17059 +- MX6QDL_PAD_NANDF_D5__SD2_DATA5 0x17059 +- MX6QDL_PAD_NANDF_D6__SD2_DATA6 0x17059 +- MX6QDL_PAD_NANDF_D7__SD2_DATA7 0x17059 +- >; +- }; +- +- pinctrl_usdhc2_2: usdhc2grp-2 { +- fsl,pins = < +- MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17059 +- MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10059 +- MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059 +- MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059 +- MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059 +- MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x17059 +- >; +- }; +- }; +- +- usdhc3 { +- pinctrl_usdhc3_1: usdhc3grp-1 { +- fsl,pins = < + MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059 + MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059 + MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059 +@@ -1630,7 +1589,7 @@ + >; + }; + +- pinctrl_usdhc3_1_100mhz: usdhc3grp-1-100mhz { /* 100Mhz */ ++ pinctrl_usdhc1_1_100mhz: usdhc1grp-1-100mhz { /* 100Mhz */ + fsl,pins = < + MX6QDL_PAD_SD3_CMD__SD3_CMD 0x170B9 + MX6QDL_PAD_SD3_CLK__SD3_CLK 0x100B9 +@@ -1645,7 +1604,7 @@ + >; + }; + +- pinctrl_usdhc3_1_200mhz: usdhc3grp-1-200mhz { /* 200Mhz */ ++ pinctrl_usdhc1_1_200mhz: usdhc1grp-1-200mhz { /* 200Mhz */ + fsl,pins = < + MX6QDL_PAD_SD3_CMD__SD3_CMD 0x170F9 + MX6QDL_PAD_SD3_CLK__SD3_CLK 0x100F9 +@@ -1660,7 +1619,7 @@ + >; + }; + +- pinctrl_usdhc3_2: usdhc3grp-2 { ++ pinctrl_usdhc1_2: usdhc1grp-2 { + fsl,pins = < + MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059 + MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059 +@@ -1672,6 +1631,47 @@ + }; + }; + ++ usdhc2 { ++ pinctrl_usdhc2_1: usdhc2grp-1 { ++ fsl,pins = < ++ MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17059 ++ MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10059 ++ MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059 ++ MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059 ++ MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059 ++ MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x17059 ++ MX6QDL_PAD_NANDF_D4__SD2_DATA4 0x17059 ++ MX6QDL_PAD_NANDF_D5__SD2_DATA5 0x17059 ++ MX6QDL_PAD_NANDF_D6__SD2_DATA6 0x17059 ++ MX6QDL_PAD_NANDF_D7__SD2_DATA7 0x17059 ++ >; ++ }; ++ ++ pinctrl_usdhc2_2: usdhc2grp-2 { ++ fsl,pins = < ++ MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17059 ++ MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10059 ++ MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059 ++ MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059 ++ MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059 ++ MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x17059 ++ >; ++ }; ++ }; ++ ++ usdhc3 { ++ pinctrl_usdhc3_1: usdhc3grp-1 { ++ fsl,pins = < ++ MX6QDL_PAD_SD1_CMD__SD1_CMD 0x17071 ++ MX6QDL_PAD_SD1_CLK__SD1_CLK 0x10071 ++ MX6QDL_PAD_SD1_DAT0__SD1_DATA0 0x17071 ++ MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x17071 ++ MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x17071 ++ MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x17071 ++ >; ++ }; ++ }; ++ + usdhc4 { + pinctrl_usdhc4_1: usdhc4grp-1 { + fsl,pins = < +-- +1.9.0 + diff --git a/core/linux-wandboard/PKGBUILD b/core/linux-wandboard/PKGBUILD index 365b2ade9..9c787b91f 100644 --- a/core/linux-wandboard/PKGBUILD +++ b/core/linux-wandboard/PKGBUILD @@ -9,15 +9,17 @@ _srcname=linux-${_commit} _kernelname=${pkgbase#linux} _desc="i.MX6 Wandboard" pkgver=3.10.17 -pkgrel=1 +pkgrel=2 arch=('armv7h') url="http://www.kernel.org/" license=('GPL2') makedepends=('xmlto' 'docbook-xsl' 'kmod' 'inetutils' 'bc' 'git') options=('!strip') source=("https://github.com/wandboard-org/linux/archive/${_commit}.tar.gz" + '0001-Swap-usdhc1-and-usdhc3.patch' 'config') md5sums=('97d87f0d40873c0b1da12b616a2c4ee1' + '1edf745b39c715206fbe327c60f6cf76' '81ec6ae7ff6967ca73f08775b9603387') prepare() { @@ -25,6 +27,8 @@ prepare() { cat "${srcdir}/config" > ./.config + patch -p1 -i ../0001-Swap-usdhc1-and-usdhc3.patch + # add pkgrel to extraversion sed -ri "s|^(EXTRAVERSION =)(.*)|\1 \2-${pkgrel}|" Makefile