diff options
-rw-r--r-- | arch/arm/boot/dts/dra7-evm.dts | 118 | ||||
-rw-r--r-- | arch/arm/boot/dts/dra7.dtsi | 20 |
2 files changed, 138 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/dra7-evm.dts b/arch/arm/boot/dts/dra7-evm.dts index ec779072a0a3..4adc28039c30 100644 --- a/arch/arm/boot/dts/dra7-evm.dts +++ b/arch/arm/boot/dts/dra7-evm.dts | |||
@@ -120,6 +120,37 @@ | |||
120 | 0x284 (PIN_INPUT_SLEW | MUX_MODE0) /* usb2_drvvbus */ | 120 | 0x284 (PIN_INPUT_SLEW | MUX_MODE0) /* usb2_drvvbus */ |
121 | >; | 121 | >; |
122 | }; | 122 | }; |
123 | |||
124 | nand_flash_x16: nand_flash_x16 { | ||
125 | /* On DRA7 EVM, GPMC_WPN and NAND_BOOTn comes from DIP switch | ||
126 | * So NAND flash requires following switch settings: | ||
127 | * SW5.9 (GPMC_WPN) = LOW | ||
128 | * SW5.1 (NAND_BOOTn) = HIGH */ | ||
129 | pinctrl-single,pins = < | ||
130 | 0x0 (PIN_INPUT | MUX_MODE0) /* gpmc_ad0 */ | ||
131 | 0x4 (PIN_INPUT | MUX_MODE0) /* gpmc_ad1 */ | ||
132 | 0x8 (PIN_INPUT | MUX_MODE0) /* gpmc_ad2 */ | ||
133 | 0xc (PIN_INPUT | MUX_MODE0) /* gpmc_ad3 */ | ||
134 | 0x10 (PIN_INPUT | MUX_MODE0) /* gpmc_ad4 */ | ||
135 | 0x14 (PIN_INPUT | MUX_MODE0) /* gpmc_ad5 */ | ||
136 | 0x18 (PIN_INPUT | MUX_MODE0) /* gpmc_ad6 */ | ||
137 | 0x1c (PIN_INPUT | MUX_MODE0) /* gpmc_ad7 */ | ||
138 | 0x20 (PIN_INPUT | MUX_MODE0) /* gpmc_ad8 */ | ||
139 | 0x24 (PIN_INPUT | MUX_MODE0) /* gpmc_ad9 */ | ||
140 | 0x28 (PIN_INPUT | MUX_MODE0) /* gpmc_ad10 */ | ||
141 | 0x2c (PIN_INPUT | MUX_MODE0) /* gpmc_ad11 */ | ||
142 | 0x30 (PIN_INPUT | MUX_MODE0) /* gpmc_ad12 */ | ||
143 | 0x34 (PIN_INPUT | MUX_MODE0) /* gpmc_ad13 */ | ||
144 | 0x38 (PIN_INPUT | MUX_MODE0) /* gpmc_ad14 */ | ||
145 | 0x3c (PIN_INPUT | MUX_MODE0) /* gpmc_ad15 */ | ||
146 | 0xd8 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_wait0 */ | ||
147 | 0xcc (PIN_OUTPUT | MUX_MODE0) /* gpmc_wen */ | ||
148 | 0xb4 (PIN_OUTPUT_PULLUP | MUX_MODE0) /* gpmc_csn0 */ | ||
149 | 0xc4 (PIN_OUTPUT | MUX_MODE0) /* gpmc_advn_ale */ | ||
150 | 0xc8 (PIN_OUTPUT | MUX_MODE0) /* gpmc_oen_ren */ | ||
151 | 0xd0 (PIN_OUTPUT | MUX_MODE0) /* gpmc_be0n_cle */ | ||
152 | >; | ||
153 | }; | ||
123 | }; | 154 | }; |
124 | 155 | ||
125 | &i2c1 { | 156 | &i2c1 { |
@@ -377,3 +408,90 @@ | |||
377 | pinctrl-names = "default"; | 408 | pinctrl-names = "default"; |
378 | pinctrl-0 = <&usb2_pins>; | 409 | pinctrl-0 = <&usb2_pins>; |
379 | }; | 410 | }; |
411 | |||
412 | &elm { | ||
413 | status = "okay"; | ||
414 | }; | ||
415 | |||
416 | &gpmc { | ||
417 | status = "okay"; | ||
418 | pinctrl-names = "default"; | ||
419 | pinctrl-0 = <&nand_flash_x16>; | ||
420 | ranges = <0 0 0 0x01000000>; /* minimum GPMC partition = 16MB */ | ||
421 | nand@0,0 { | ||
422 | reg = <0 0 4>; /* device IO registers */ | ||
423 | ti,nand-ecc-opt = "bch8"; | ||
424 | ti,elm-id = <&elm>; | ||
425 | nand-bus-width = <16>; | ||
426 | gpmc,device-width = <2>; | ||
427 | gpmc,sync-clk-ps = <0>; | ||
428 | gpmc,cs-on-ns = <0>; | ||
429 | gpmc,cs-rd-off-ns = <40>; | ||
430 | gpmc,cs-wr-off-ns = <40>; | ||
431 | gpmc,adv-on-ns = <0>; | ||
432 | gpmc,adv-rd-off-ns = <30>; | ||
433 | gpmc,adv-wr-off-ns = <30>; | ||
434 | gpmc,we-on-ns = <5>; | ||
435 | gpmc,we-off-ns = <25>; | ||
436 | gpmc,oe-on-ns = <2>; | ||
437 | gpmc,oe-off-ns = <20>; | ||
438 | gpmc,access-ns = <20>; | ||
439 | gpmc,wr-access-ns = <40>; | ||
440 | gpmc,rd-cycle-ns = <40>; | ||
441 | gpmc,wr-cycle-ns = <40>; | ||
442 | gpmc,wait-pin = <0>; | ||
443 | gpmc,wait-on-read; | ||
444 | gpmc,wait-on-write; | ||
445 | gpmc,bus-turnaround-ns = <0>; | ||
446 | gpmc,cycle2cycle-delay-ns = <0>; | ||
447 | gpmc,clk-activation-ns = <0>; | ||
448 | gpmc,wait-monitoring-ns = <0>; | ||
449 | gpmc,wr-data-mux-bus-ns = <0>; | ||
450 | /* MTD partition table */ | ||
451 | /* All SPL-* partitions are sized to minimal length | ||
452 | * which can be independently programmable. For | ||
453 | * NAND flash this is equal to size of erase-block */ | ||
454 | #address-cells = <1>; | ||
455 | #size-cells = <1>; | ||
456 | partition@0 { | ||
457 | label = "NAND.SPL"; | ||
458 | reg = <0x00000000 0x000020000>; | ||
459 | }; | ||
460 | partition@1 { | ||
461 | label = "NAND.SPL.backup1"; | ||
462 | reg = <0x00020000 0x00020000>; | ||
463 | }; | ||
464 | partition@2 { | ||
465 | label = "NAND.SPL.backup2"; | ||
466 | reg = <0x00040000 0x00020000>; | ||
467 | }; | ||
468 | partition@3 { | ||
469 | label = "NAND.SPL.backup3"; | ||
470 | reg = <0x00060000 0x00020000>; | ||
471 | }; | ||
472 | partition@4 { | ||
473 | label = "NAND.u-boot-spl-os"; | ||
474 | reg = <0x00080000 0x00040000>; | ||
475 | }; | ||
476 | partition@5 { | ||
477 | label = "NAND.u-boot"; | ||
478 | reg = <0x000c0000 0x00100000>; | ||
479 | }; | ||
480 | partition@6 { | ||
481 | label = "NAND.u-boot-env"; | ||
482 | reg = <0x001c0000 0x00020000>; | ||
483 | }; | ||
484 | partition@7 { | ||
485 | label = "NAND.u-boot-env"; | ||
486 | reg = <0x001e0000 0x00020000>; | ||
487 | }; | ||
488 | partition@8 { | ||
489 | label = "NAND.kernel"; | ||
490 | reg = <0x00200000 0x00800000>; | ||
491 | }; | ||
492 | partition@9 { | ||
493 | label = "NAND.file-system"; | ||
494 | reg = <0x00a00000 0x0f600000>; | ||
495 | }; | ||
496 | }; | ||
497 | }; | ||
diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi index 6af8b080ea6d..a8a0ceec6775 100644 --- a/arch/arm/boot/dts/dra7.dtsi +++ b/arch/arm/boot/dts/dra7.dtsi | |||
@@ -964,6 +964,26 @@ | |||
964 | dr_mode = "otg"; | 964 | dr_mode = "otg"; |
965 | }; | 965 | }; |
966 | }; | 966 | }; |
967 | |||
968 | elm: elm@48078000 { | ||
969 | compatible = "ti,am3352-elm"; | ||
970 | reg = <0x48078000 0xfc0>; /* device IO registers */ | ||
971 | interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>; | ||
972 | ti,hwmods = "elm"; | ||
973 | status = "disabled"; | ||
974 | }; | ||
975 | |||
976 | gpmc: gpmc@50000000 { | ||
977 | compatible = "ti,am3352-gpmc"; | ||
978 | ti,hwmods = "gpmc"; | ||
979 | reg = <0x50000000 0x37c>; /* device IO registers */ | ||
980 | interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; | ||
981 | gpmc,num-cs = <8>; | ||
982 | gpmc,num-waitpins = <2>; | ||
983 | #address-cells = <2>; | ||
984 | #size-cells = <1>; | ||
985 | status = "disabled"; | ||
986 | }; | ||
967 | }; | 987 | }; |
968 | }; | 988 | }; |
969 | 989 | ||