aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAaro Koskinen <aaro.koskinen@iki.fi>2018-12-23 13:24:13 -0500
committerTony Lindgren <tony@atomide.com>2019-01-07 11:06:45 -0500
commit8443e4843e1c2594bf5664e1d993a1be71d1befb (patch)
treeb20c30fa1ae81e848cba4a4a284fff614b006801
parentbfeffd155283772bbe78c6a05dec7c0128ee500c (diff)
ARM: OMAP: dts: N950/N9: fix onenand timings
Commit a758f50f10cf ("mtd: onenand: omap2: Configure driver from DT") started using DT specified timings for GPMC, and as a result the OneNAND stopped working on N950/N9 as we had wrong values in the DT. Fix by updating the values to bootloader timings that have been tested to be working on both Nokia N950 and N9. Fixes: a758f50f10cf ("mtd: onenand: omap2: Configure driver from DT") Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Tony Lindgren <tony@atomide.com>
-rw-r--r--arch/arm/boot/dts/omap3-n950-n9.dtsi42
1 files changed, 28 insertions, 14 deletions
diff --git a/arch/arm/boot/dts/omap3-n950-n9.dtsi b/arch/arm/boot/dts/omap3-n950-n9.dtsi
index 0d9b85317529..e142e6c70a59 100644
--- a/arch/arm/boot/dts/omap3-n950-n9.dtsi
+++ b/arch/arm/boot/dts/omap3-n950-n9.dtsi
@@ -370,6 +370,19 @@
370 compatible = "ti,omap2-onenand"; 370 compatible = "ti,omap2-onenand";
371 reg = <0 0 0x20000>; /* CS0, offset 0, IO size 128K */ 371 reg = <0 0 0x20000>; /* CS0, offset 0, IO size 128K */
372 372
373 /*
374 * These timings are based on CONFIG_OMAP_GPMC_DEBUG=y reported
375 * bootloader set values when booted with v4.19 using both N950
376 * and N9 devices (OneNAND Manufacturer: Samsung):
377 *
378 * gpmc cs0 before gpmc_cs_program_settings:
379 * cs0 GPMC_CS_CONFIG1: 0xfd001202
380 * cs0 GPMC_CS_CONFIG2: 0x00181800
381 * cs0 GPMC_CS_CONFIG3: 0x00030300
382 * cs0 GPMC_CS_CONFIG4: 0x18001804
383 * cs0 GPMC_CS_CONFIG5: 0x03171d1d
384 * cs0 GPMC_CS_CONFIG6: 0x97080000
385 */
373 gpmc,sync-read; 386 gpmc,sync-read;
374 gpmc,sync-write; 387 gpmc,sync-write;
375 gpmc,burst-length = <16>; 388 gpmc,burst-length = <16>;
@@ -379,26 +392,27 @@
379 gpmc,device-width = <2>; 392 gpmc,device-width = <2>;
380 gpmc,mux-add-data = <2>; 393 gpmc,mux-add-data = <2>;
381 gpmc,cs-on-ns = <0>; 394 gpmc,cs-on-ns = <0>;
382 gpmc,cs-rd-off-ns = <87>; 395 gpmc,cs-rd-off-ns = <122>;
383 gpmc,cs-wr-off-ns = <87>; 396 gpmc,cs-wr-off-ns = <122>;
384 gpmc,adv-on-ns = <0>; 397 gpmc,adv-on-ns = <0>;
385 gpmc,adv-rd-off-ns = <10>; 398 gpmc,adv-rd-off-ns = <15>;
386 gpmc,adv-wr-off-ns = <10>; 399 gpmc,adv-wr-off-ns = <15>;
387 gpmc,oe-on-ns = <15>; 400 gpmc,oe-on-ns = <20>;
388 gpmc,oe-off-ns = <87>; 401 gpmc,oe-off-ns = <122>;
389 gpmc,we-on-ns = <0>; 402 gpmc,we-on-ns = <0>;
390 gpmc,we-off-ns = <87>; 403 gpmc,we-off-ns = <122>;
391 gpmc,rd-cycle-ns = <112>; 404 gpmc,rd-cycle-ns = <148>;
392 gpmc,wr-cycle-ns = <112>; 405 gpmc,wr-cycle-ns = <148>;
393 gpmc,access-ns = <81>; 406 gpmc,access-ns = <117>;
394 gpmc,page-burst-access-ns = <15>; 407 gpmc,page-burst-access-ns = <15>;
395 gpmc,bus-turnaround-ns = <0>; 408 gpmc,bus-turnaround-ns = <0>;
396 gpmc,cycle2cycle-delay-ns = <0>; 409 gpmc,cycle2cycle-delay-ns = <0>;
397 gpmc,wait-monitoring-ns = <0>; 410 gpmc,wait-monitoring-ns = <0>;
398 gpmc,clk-activation-ns = <5>; 411 gpmc,clk-activation-ns = <10>;
399 gpmc,wr-data-mux-bus-ns = <30>; 412 gpmc,wr-data-mux-bus-ns = <40>;
400 gpmc,wr-access-ns = <81>; 413 gpmc,wr-access-ns = <117>;
401 gpmc,sync-clk-ps = <15000>; 414
415 gpmc,sync-clk-ps = <15000>; /* TBC; Where this value came? */
402 416
403 /* 417 /*
404 * MTD partition table corresponding to Nokia's MeeGo 1.2 418 * MTD partition table corresponding to Nokia's MeeGo 1.2