From fceb3510c2f0c7dfbf79ff2971e2863c8a89836b Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Sun, 1 Sep 2013 13:32:03 +0100 Subject: Build in OMAP MMC again (fix at least omap3) --- arm-am33xx-bbb-dts.patch | 230 +++++++++++++++++++++++++++++++++++++++++++++++ arm-omap-bbb-dts.patch | 230 ----------------------------------------------- config-armv7 | 6 +- kernel.spec | 10 ++- 4 files changed, 240 insertions(+), 236 deletions(-) create mode 100644 arm-am33xx-bbb-dts.patch delete mode 100644 arm-omap-bbb-dts.patch diff --git a/arm-am33xx-bbb-dts.patch b/arm-am33xx-bbb-dts.patch new file mode 100644 index 00000000..b9b9fc47 --- /dev/null +++ b/arm-am33xx-bbb-dts.patch @@ -0,0 +1,230 @@ +From 227cadff47a2b00e91deb5b54f1fd551808d42ae Mon Sep 17 00:00:00 2001 +From: Pantelis Antoniou +Date: Fri, 28 Jun 2013 14:18:08 +0300 +Subject: [PATCH 1/3] am335x: dts: Add beaglebone black DTS + +Added the beaglebone black's DTS file. Note that at some point in +time we'll switch to using a common black.dtsi file. + +Signed-off-by: Pantelis Antoniou +--- + arch/arm/boot/dts/Makefile | 3 +- + arch/arm/boot/dts/am335x-boneblack.dts | 196 +++++++++++++++++++++++++++++++++ + 2 files changed, 198 insertions(+), 1 deletion(-) + create mode 100644 arch/arm/boot/dts/am335x-boneblack.dts + +diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile +--- a/arch/arm/boot/dts/Makefile.orig 2013-07-17 11:51:55.510389342 +0100 ++++ b/arch/arm/boot/dts/Makefile 2013-07-17 11:55:09.492689175 +0100 +@@ -172,6 +172,7 @@ + am335x-evm.dtb \ + am335x-evmsk.dtb \ + am335x-bone.dtb \ ++ am335x-boneblack.dtb \ + am3517-evm.dtb \ + am3517_mt_ventoux.dtb \ + am43x-epos-evm.dtb +diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts +new file mode 100644 +index 0000000..d21e223 +--- /dev/null ++++ b/arch/arm/boot/dts/am335x-boneblack.dts +@@ -0,0 +1,196 @@ ++/* ++ * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License version 2 as ++ * published by the Free Software Foundation. ++ */ ++/dts-v1/; ++ ++/include/ "am33xx.dtsi" ++ ++/ { ++ model = "TI AM335x BeagleBone"; ++ compatible = "ti,am335x-bone", "ti,am33xx"; ++ ++ cpus { ++ cpu@0 { ++ cpu0-supply = <&dcdc2_reg>; ++ ++ /* ++ * To consider voltage drop between PMIC and SoC, ++ * tolerance value is reduced to 2% from 4% and ++ * voltage value is increased as a precaution. ++ */ ++ operating-points = < ++ /* kHz uV */ ++ 1000000 1350000 ++ 800000 1300000 ++ 600000 1112000 ++ 300000 969000 ++ >; ++ }; ++ }; ++ ++ memory { ++ device_type = "memory"; ++ reg = <0x80000000 0x10000000>; /* 256 MB */ ++ }; ++ ++ am33xx_pinmux: pinmux@44e10800 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&user_leds_s0>; ++ ++ user_leds_s0: user_leds_s0 { ++ pinctrl-single,pins = < ++ 0x54 0x7 /* gpmc_a5.gpio1_21, OUTPUT | MODE7 */ ++ 0x58 0x17 /* gpmc_a6.gpio1_22, OUTPUT_PULLUP | MODE7 */ ++ 0x5c 0x7 /* gpmc_a7.gpio1_23, OUTPUT | MODE7 */ ++ 0x60 0x17 /* gpmc_a8.gpio1_24, OUTPUT_PULLUP | MODE7 */ ++ >; ++ }; ++ ++ emmc2_pins: pinmux_emmc2_pins { ++ pinctrl-single,pins = < ++ 0x80 0x32 /* gpmc_csn1.mmc1_clk, INPUT_PULLUP | MODE2 */ ++ 0x84 0x32 /* gpmc_csn2.mmc1_cmd, INPUT_PULLUP | MODE2 */ ++ 0x00 0x31 /* gpmc_ad0.mmc1_dat0, INPUT_PULLUP | MODE1 */ ++ 0x04 0x31 /* gpmc_ad1.mmc1_dat1, INPUT_PULLUP | MODE1 */ ++ 0x08 0x31 /* gpmc_ad2.mmc1_dat2, INPUT_PULLUP | MODE1 */ ++ 0x0c 0x31 /* gpmc_ad3.mmc1_dat3, INPUT_PULLUP | MODE1 */ ++ 0x10 0x31 /* gpmc_ad4.mmc1_dat4, INPUT_PULLUP | MODE1 */ ++ 0x14 0x31 /* gpmc_ad5.mmc1_dat5, INPUT_PULLUP | MODE1 */ ++ 0x18 0x31 /* gpmc_ad6.mmc1_dat6, INPUT_PULLUP | MODE1 */ ++ 0x1c 0x31 /* gpmc_ad7.mmc1_dat7, INPUT_PULLUP | MODE1 */ ++ /* eMMC_RSTn */ ++ 0x50 0x17 /* gpmc_a4.gpio1_20, OUTPUT | MODE7 | PULLUP */ ++ >; ++ }; ++ }; ++ ++ ocp { ++ uart1: serial@44e09000 { ++ status = "okay"; ++ }; ++ ++ i2c0: i2c@44e0b000 { ++ status = "okay"; ++ clock-frequency = <400000>; ++ ++ tps: tps@24 { ++ reg = <0x24>; ++ }; ++ ++ }; ++ }; ++ ++ leds { ++ compatible = "gpio-leds"; ++ ++ led@2 { ++ label = "beaglebone:green:heartbeat"; ++ gpios = <&gpio1 21 0>; ++ linux,default-trigger = "heartbeat"; ++ default-state = "off"; ++ }; ++ ++ led@3 { ++ label = "beaglebone:green:mmc0"; ++ gpios = <&gpio1 22 0>; ++ linux,default-trigger = "mmc0"; ++ default-state = "off"; ++ }; ++ ++ led@4 { ++ label = "beaglebone:green:usr2"; ++ gpios = <&gpio1 23 0>; ++ default-state = "off"; ++ }; ++ ++ led@5 { ++ label = "beaglebone:green:usr3"; ++ gpios = <&gpio1 24 0>; ++ default-state = "off"; ++ }; ++ }; ++ ++ vmmcsd_fixed: fixedregulator@0 { ++ compatible = "regulator-fixed"; ++ regulator-name = "vmmcsd_fixed"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ }; ++ ++}; ++ ++/include/ "tps65217.dtsi" ++ ++&tps { ++ regulators { ++ dcdc1_reg: regulator@0 { ++ regulator-always-on; ++ }; ++ ++ dcdc2_reg: regulator@1 { ++ /* VDD_MPU voltage limits 0.95V - 1.26V with +/-4% tolerance */ ++ regulator-name = "vdd_mpu"; ++ regulator-min-microvolt = <925000>; ++ regulator-max-microvolt = <1325000>; ++ regulator-boot-on; ++ regulator-always-on; ++ }; ++ ++ dcdc3_reg: regulator@2 { ++ /* VDD_CORE voltage limits 0.95V - 1.1V with +/-4% tolerance */ ++ regulator-name = "vdd_core"; ++ regulator-min-microvolt = <925000>; ++ regulator-max-microvolt = <1150000>; ++ regulator-boot-on; ++ regulator-always-on; ++ }; ++ ++ ldo1_reg: regulator@3 { ++ regulator-always-on; ++ }; ++ ++ ldo2_reg: regulator@4 { ++ regulator-always-on; ++ }; ++ ++ ldo3_reg: regulator@5 { ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; /* orig 3.3V*/ ++ regulator-always-on; ++ }; ++ ++ ldo4_reg: regulator@6 { ++ regulator-always-on; ++ }; ++ }; ++}; ++ ++&cpsw_emac0 { ++ phy_id = <&davinci_mdio>, <0>; ++}; ++ ++&cpsw_emac1 { ++ phy_id = <&davinci_mdio>, <1>; ++}; ++ ++&mmc1 { ++ status = "okay"; ++ vmmc-supply = <&vmmcsd_fixed>; ++ ti,vcc-aux-disable-is-sleep; ++}; ++ ++&mmc2 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&emmc2_pins>; /* wrong numbering */ ++ vmmc-supply = <&ldo3_reg>; ++ bus-width = <8>; ++ ti,non-removable; ++ status = "okay"; ++ ti,vcc-aux-disable-is-sleep; ++ ++ reset-gpio = <&gpio1 20 0x00>; ++}; +-- +1.8.2.1 diff --git a/arm-omap-bbb-dts.patch b/arm-omap-bbb-dts.patch deleted file mode 100644 index b9b9fc47..00000000 --- a/arm-omap-bbb-dts.patch +++ /dev/null @@ -1,230 +0,0 @@ -From 227cadff47a2b00e91deb5b54f1fd551808d42ae Mon Sep 17 00:00:00 2001 -From: Pantelis Antoniou -Date: Fri, 28 Jun 2013 14:18:08 +0300 -Subject: [PATCH 1/3] am335x: dts: Add beaglebone black DTS - -Added the beaglebone black's DTS file. Note that at some point in -time we'll switch to using a common black.dtsi file. - -Signed-off-by: Pantelis Antoniou ---- - arch/arm/boot/dts/Makefile | 3 +- - arch/arm/boot/dts/am335x-boneblack.dts | 196 +++++++++++++++++++++++++++++++++ - 2 files changed, 198 insertions(+), 1 deletion(-) - create mode 100644 arch/arm/boot/dts/am335x-boneblack.dts - -diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile ---- a/arch/arm/boot/dts/Makefile.orig 2013-07-17 11:51:55.510389342 +0100 -+++ b/arch/arm/boot/dts/Makefile 2013-07-17 11:55:09.492689175 +0100 -@@ -172,6 +172,7 @@ - am335x-evm.dtb \ - am335x-evmsk.dtb \ - am335x-bone.dtb \ -+ am335x-boneblack.dtb \ - am3517-evm.dtb \ - am3517_mt_ventoux.dtb \ - am43x-epos-evm.dtb -diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts -new file mode 100644 -index 0000000..d21e223 ---- /dev/null -+++ b/arch/arm/boot/dts/am335x-boneblack.dts -@@ -0,0 +1,196 @@ -+/* -+ * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License version 2 as -+ * published by the Free Software Foundation. -+ */ -+/dts-v1/; -+ -+/include/ "am33xx.dtsi" -+ -+/ { -+ model = "TI AM335x BeagleBone"; -+ compatible = "ti,am335x-bone", "ti,am33xx"; -+ -+ cpus { -+ cpu@0 { -+ cpu0-supply = <&dcdc2_reg>; -+ -+ /* -+ * To consider voltage drop between PMIC and SoC, -+ * tolerance value is reduced to 2% from 4% and -+ * voltage value is increased as a precaution. -+ */ -+ operating-points = < -+ /* kHz uV */ -+ 1000000 1350000 -+ 800000 1300000 -+ 600000 1112000 -+ 300000 969000 -+ >; -+ }; -+ }; -+ -+ memory { -+ device_type = "memory"; -+ reg = <0x80000000 0x10000000>; /* 256 MB */ -+ }; -+ -+ am33xx_pinmux: pinmux@44e10800 { -+ pinctrl-names = "default"; -+ pinctrl-0 = <&user_leds_s0>; -+ -+ user_leds_s0: user_leds_s0 { -+ pinctrl-single,pins = < -+ 0x54 0x7 /* gpmc_a5.gpio1_21, OUTPUT | MODE7 */ -+ 0x58 0x17 /* gpmc_a6.gpio1_22, OUTPUT_PULLUP | MODE7 */ -+ 0x5c 0x7 /* gpmc_a7.gpio1_23, OUTPUT | MODE7 */ -+ 0x60 0x17 /* gpmc_a8.gpio1_24, OUTPUT_PULLUP | MODE7 */ -+ >; -+ }; -+ -+ emmc2_pins: pinmux_emmc2_pins { -+ pinctrl-single,pins = < -+ 0x80 0x32 /* gpmc_csn1.mmc1_clk, INPUT_PULLUP | MODE2 */ -+ 0x84 0x32 /* gpmc_csn2.mmc1_cmd, INPUT_PULLUP | MODE2 */ -+ 0x00 0x31 /* gpmc_ad0.mmc1_dat0, INPUT_PULLUP | MODE1 */ -+ 0x04 0x31 /* gpmc_ad1.mmc1_dat1, INPUT_PULLUP | MODE1 */ -+ 0x08 0x31 /* gpmc_ad2.mmc1_dat2, INPUT_PULLUP | MODE1 */ -+ 0x0c 0x31 /* gpmc_ad3.mmc1_dat3, INPUT_PULLUP | MODE1 */ -+ 0x10 0x31 /* gpmc_ad4.mmc1_dat4, INPUT_PULLUP | MODE1 */ -+ 0x14 0x31 /* gpmc_ad5.mmc1_dat5, INPUT_PULLUP | MODE1 */ -+ 0x18 0x31 /* gpmc_ad6.mmc1_dat6, INPUT_PULLUP | MODE1 */ -+ 0x1c 0x31 /* gpmc_ad7.mmc1_dat7, INPUT_PULLUP | MODE1 */ -+ /* eMMC_RSTn */ -+ 0x50 0x17 /* gpmc_a4.gpio1_20, OUTPUT | MODE7 | PULLUP */ -+ >; -+ }; -+ }; -+ -+ ocp { -+ uart1: serial@44e09000 { -+ status = "okay"; -+ }; -+ -+ i2c0: i2c@44e0b000 { -+ status = "okay"; -+ clock-frequency = <400000>; -+ -+ tps: tps@24 { -+ reg = <0x24>; -+ }; -+ -+ }; -+ }; -+ -+ leds { -+ compatible = "gpio-leds"; -+ -+ led@2 { -+ label = "beaglebone:green:heartbeat"; -+ gpios = <&gpio1 21 0>; -+ linux,default-trigger = "heartbeat"; -+ default-state = "off"; -+ }; -+ -+ led@3 { -+ label = "beaglebone:green:mmc0"; -+ gpios = <&gpio1 22 0>; -+ linux,default-trigger = "mmc0"; -+ default-state = "off"; -+ }; -+ -+ led@4 { -+ label = "beaglebone:green:usr2"; -+ gpios = <&gpio1 23 0>; -+ default-state = "off"; -+ }; -+ -+ led@5 { -+ label = "beaglebone:green:usr3"; -+ gpios = <&gpio1 24 0>; -+ default-state = "off"; -+ }; -+ }; -+ -+ vmmcsd_fixed: fixedregulator@0 { -+ compatible = "regulator-fixed"; -+ regulator-name = "vmmcsd_fixed"; -+ regulator-min-microvolt = <3300000>; -+ regulator-max-microvolt = <3300000>; -+ }; -+ -+}; -+ -+/include/ "tps65217.dtsi" -+ -+&tps { -+ regulators { -+ dcdc1_reg: regulator@0 { -+ regulator-always-on; -+ }; -+ -+ dcdc2_reg: regulator@1 { -+ /* VDD_MPU voltage limits 0.95V - 1.26V with +/-4% tolerance */ -+ regulator-name = "vdd_mpu"; -+ regulator-min-microvolt = <925000>; -+ regulator-max-microvolt = <1325000>; -+ regulator-boot-on; -+ regulator-always-on; -+ }; -+ -+ dcdc3_reg: regulator@2 { -+ /* VDD_CORE voltage limits 0.95V - 1.1V with +/-4% tolerance */ -+ regulator-name = "vdd_core"; -+ regulator-min-microvolt = <925000>; -+ regulator-max-microvolt = <1150000>; -+ regulator-boot-on; -+ regulator-always-on; -+ }; -+ -+ ldo1_reg: regulator@3 { -+ regulator-always-on; -+ }; -+ -+ ldo2_reg: regulator@4 { -+ regulator-always-on; -+ }; -+ -+ ldo3_reg: regulator@5 { -+ regulator-min-microvolt = <1800000>; -+ regulator-max-microvolt = <1800000>; /* orig 3.3V*/ -+ regulator-always-on; -+ }; -+ -+ ldo4_reg: regulator@6 { -+ regulator-always-on; -+ }; -+ }; -+}; -+ -+&cpsw_emac0 { -+ phy_id = <&davinci_mdio>, <0>; -+}; -+ -+&cpsw_emac1 { -+ phy_id = <&davinci_mdio>, <1>; -+}; -+ -+&mmc1 { -+ status = "okay"; -+ vmmc-supply = <&vmmcsd_fixed>; -+ ti,vcc-aux-disable-is-sleep; -+}; -+ -+&mmc2 { -+ pinctrl-names = "default"; -+ pinctrl-0 = <&emmc2_pins>; /* wrong numbering */ -+ vmmc-supply = <&ldo3_reg>; -+ bus-width = <8>; -+ ti,non-removable; -+ status = "okay"; -+ ti,vcc-aux-disable-is-sleep; -+ -+ reset-gpio = <&gpio1 20 0x00>; -+}; --- -1.8.2.1 diff --git a/config-armv7 b/config-armv7 index 1b2c1127..594c3a45 100644 --- a/config-armv7 +++ b/config-armv7 @@ -123,7 +123,6 @@ CONFIG_OMAP_IOVMM=m CONFIG_HWSPINLOCK_OMAP=m CONFIG_OMAP3_EMU=y # CONFIG_OMAP3_SDRC_AC_TIMING is not set -CONFIG_ARM_OMAP2PLUS_CPUFREQ=y CONFIG_OMAP_WATCHDOG=m CONFIG_TWL4030_WATCHDOG=m @@ -178,9 +177,8 @@ CONFIG_USB_GADGET_MUSB_HDRC=m # CONFIG_MUSB_PIO_ONLY is not set # CONFIG_USB_MUSB_DEBUG is not set CONFIG_OMAP_CONTROL_USB=m -CONFIG_NOP_USB_XCEIV=m -CONFIG_MMC_OMAP=m -CONFIG_MMC_OMAP_HS=m +CONFIG_MMC_OMAP=y +CONFIG_MMC_OMAP_HS=y CONFIG_RTC_DRV_MAX8907=m # CONFIG_RTC_DRV_TWL92330 is not set CONFIG_RTC_DRV_TWL4030=y diff --git a/kernel.spec b/kernel.spec index bb1acb0f..35da1b0b 100644 --- a/kernel.spec +++ b/kernel.spec @@ -711,7 +711,7 @@ Patch21030: arm-wandboard-quad.patch Patch21031: arm-imx-fixsound.patch # AM33xx -Patch21040: arm-omap-bbb-dts.patch +Patch21040: arm-am33xx-bbb-dts.patch #rhbz 754518 Patch21235: scsi-sd_revalidate_disk-prevent-NULL-ptr-deref.patch @@ -1316,7 +1316,10 @@ ApplyPatch arm-omap-load-tfp410.patch ApplyPatch arm-tegra-usb-no-reset-linux33.patch ApplyPatch arm-wandboard-quad.patch ApplyPatch arm-imx-fixsound.patch -#ApplyPatch arm-omap-bbb-dts.patch + +# Fix OMAP and AM33xx (BeagleBone) +#pplyPatch arm-am33xx-bbb-dts.patch + # # bugfixes to drivers and filesystems # @@ -2261,6 +2264,9 @@ fi # ||----w | # || || %changelog +* Sun Sep 1 2013 Peter Robinson +- Build in OMAP MMC again (fix at least omap3) + * Sat Aug 31 2013 Josh Boyer - 3.11.0-0.rc7.git4.1 - Linux v3.11-rc7-42-gd9eda0f -- cgit