aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2015-10-15 11:13:26 -0400
committerArnd Bergmann <arnd@arndb.de>2015-10-15 11:13:26 -0400
commita787f40a9a29674d1b9146b7a35e491e7a571152 (patch)
tree2a2301cd90557ce8772a694ddff99397274897e1
parent2e4e5da55afaf9315f2398e85424fd3824459220 (diff)
parentd8e1f5ed11a39a68da00f05000466c4f6db4456e (diff)
Merge tag 'omap-for-v4.3/fixes-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into fixes
Merge "Fixes for omap against v4.3-rc5" from Tony Lindgren: - Regulator fix for beagle-x15 to fix HDMI without a SD card being inserted - GPMC fix for showing proper timings and to allow enabling debug options that somehow was unselectable earlier - Add minimal documentation for new MMC1 dependency on REGULATOR_PBIAS as it may not be obvious for people with targeted .config files * tag 'omap-for-v4.3/fixes-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: Documentation: ARM: List new omap MMC requirements memory: omap-gpmc: dump "before" state before first modification memory: omap-gpmc: Fix unselectable debug option for GPMC ARM: dts: am57xx-beagle-x15: set VDD_SD to always-on
-rw-r--r--Documentation/arm/OMAP/README7
-rw-r--r--arch/arm/boot/dts/am57xx-beagle-x15.dts3
-rw-r--r--drivers/memory/Kconfig12
-rw-r--r--drivers/memory/omap-gpmc.c2
4 files changed, 19 insertions, 5 deletions
diff --git a/Documentation/arm/OMAP/README b/Documentation/arm/OMAP/README
new file mode 100644
index 000000000000..75645c45d14a
--- /dev/null
+++ b/Documentation/arm/OMAP/README
@@ -0,0 +1,7 @@
1This file contains documentation for running mainline
2kernel on omaps.
3
4KERNEL NEW DEPENDENCIES
5v4.3+ Update is needed for custom .config files to make sure
6 CONFIG_REGULATOR_PBIAS is enabled for MMC1 to work
7 properly.
diff --git a/arch/arm/boot/dts/am57xx-beagle-x15.dts b/arch/arm/boot/dts/am57xx-beagle-x15.dts
index 568adf5efde0..d55e3ea89fda 100644
--- a/arch/arm/boot/dts/am57xx-beagle-x15.dts
+++ b/arch/arm/boot/dts/am57xx-beagle-x15.dts
@@ -402,11 +402,12 @@
402 /* SMPS9 unused */ 402 /* SMPS9 unused */
403 403
404 ldo1_reg: ldo1 { 404 ldo1_reg: ldo1 {
405 /* VDD_SD */ 405 /* VDD_SD / VDDSHV8 */
406 regulator-name = "ldo1"; 406 regulator-name = "ldo1";
407 regulator-min-microvolt = <1800000>; 407 regulator-min-microvolt = <1800000>;
408 regulator-max-microvolt = <3300000>; 408 regulator-max-microvolt = <3300000>;
409 regulator-boot-on; 409 regulator-boot-on;
410 regulator-always-on;
410 }; 411 };
411 412
412 ldo2_reg: ldo2 { 413 ldo2_reg: ldo2 {
diff --git a/drivers/memory/Kconfig b/drivers/memory/Kconfig
index c6a644b22af4..6f3154613dc7 100644
--- a/drivers/memory/Kconfig
+++ b/drivers/memory/Kconfig
@@ -58,12 +58,18 @@ config OMAP_GPMC
58 memory drives like NOR, NAND, OneNAND, SRAM. 58 memory drives like NOR, NAND, OneNAND, SRAM.
59 59
60config OMAP_GPMC_DEBUG 60config OMAP_GPMC_DEBUG
61 bool 61 bool "Enable GPMC debug output and skip reset of GPMC during init"
62 depends on OMAP_GPMC 62 depends on OMAP_GPMC
63 help 63 help
64 Enables verbose debugging mostly to decode the bootloader provided 64 Enables verbose debugging mostly to decode the bootloader provided
65 timings. Enable this during development to configure devices 65 timings. To preserve the bootloader provided timings, the reset
66 connected to the GPMC bus. 66 of GPMC is skipped during init. Enable this during development to
67 configure devices connected to the GPMC bus.
68
69 NOTE: In addition to matching the register setup with the bootloader
70 you also need to match the GPMC FCLK frequency used by the
71 bootloader or else the GPMC timings won't be identical with the
72 bootloader timings.
67 73
68config MVEBU_DEVBUS 74config MVEBU_DEVBUS
69 bool "Marvell EBU Device Bus Controller" 75 bool "Marvell EBU Device Bus Controller"
diff --git a/drivers/memory/omap-gpmc.c b/drivers/memory/omap-gpmc.c
index 32ac049f2bc4..6515dfc2b805 100644
--- a/drivers/memory/omap-gpmc.c
+++ b/drivers/memory/omap-gpmc.c
@@ -696,7 +696,6 @@ int gpmc_cs_set_timings(int cs, const struct gpmc_timings *t,
696 int div; 696 int div;
697 u32 l; 697 u32 l;
698 698
699 gpmc_cs_show_timings(cs, "before gpmc_cs_set_timings");
700 div = gpmc_calc_divider(t->sync_clk); 699 div = gpmc_calc_divider(t->sync_clk);
701 if (div < 0) 700 if (div < 0)
702 return div; 701 return div;
@@ -1988,6 +1987,7 @@ static int gpmc_probe_generic_child(struct platform_device *pdev,
1988 if (ret < 0) 1987 if (ret < 0)
1989 goto err; 1988 goto err;
1990 1989
1990 gpmc_cs_show_timings(cs, "before gpmc_cs_program_settings");
1991 ret = gpmc_cs_program_settings(cs, &gpmc_s); 1991 ret = gpmc_cs_program_settings(cs, &gpmc_s);
1992 if (ret < 0) 1992 if (ret < 0)
1993 goto err; 1993 goto err;