Hi.
I am trying to use a parallel NOR over Beaglebone Black, and it doesn't
seem to be working.
I have connected *logic analyzer* to my *CE*, *OE* and *WE* outputs, and
the lines are not toggling.
Has anyone tried it before and have a valid DTS file?
Which CONFIG parameters should I enable?
I used TI PINMUX TOOL to create my *dts* file, and *gpmc-nor.txt* (with
some adaptations) for the rest of the parameters.
I also enabled the following in my *.config* file:
CONFIG_MTD_CFI
CONFIG_MTD_GEN_PROBE
CONFIG_MTD_MAP_BANKWITDTH_x (1 to 4)
CONFIG_MTD_CFI_I1
CONFIG_MTD_CFI_I2
CONFIG_MTD_CFI_UTIL
CONFIG_MTD_PHYSMAP
CONFIG_MTD_PHYSMAP_OF
CONFIG_MTD_COMPLEX_MAPPING
my *dts *file is as follows:
&am33xx_pinmux {
bbcape_nor_flash_pins: bbcape_nor_flash_pins {
pinctrl-single,pins = <
0x6c (PIN_OUTPUT | MUX_MODE4) /* (V17)
gpmc_a11.gpmc_a27 */
0x68 (PIN_OUTPUT | MUX_MODE4) /* (T16)
gpmc_a10.gpmc_a26 */
0x104 (PIN_OUTPUT | MUX_MODE1) /* (G18)
mmc0_cmd.gpmc_a25 */
0x100 (PIN_OUTPUT | MUX_MODE1) /* (G17)
mmc0_clk.gpmc_a24 */
0xfc (PIN_OUTPUT | MUX_MODE1) /* (G16)
mmc0_dat0.gpmc_a23 */
0xf8 (PIN_OUTPUT | MUX_MODE1) /* (G15)
mmc0_dat1.gpmc_a22 */
0xf4 (PIN_OUTPUT | MUX_MODE1) /* (F18)
mmc0_dat2.gpmc_a21 */
0xf0 (PIN_OUTPUT | MUX_MODE1) /* (F17)
mmc0_dat3.gpmc_a20 */
0xdc (PIN_OUTPUT | MUX_MODE1) /* (T5)
lcd_data15.gpmc_a19 */
0xd8 (PIN_OUTPUT | MUX_MODE1) /* (V4)
lcd_data14.gpmc_a18 */
0xd4 (PIN_OUTPUT | MUX_MODE1) /* (V3)
lcd_data13.gpmc_a17 */
0xd0 (PIN_OUTPUT | MUX_MODE1) /* (V2)
lcd_data12.gpmc_a16 */
0xcc (PIN_OUTPUT | MUX_MODE1) /* (U4)
lcd_data11.gpmc_a15 */
0xc8 (PIN_OUTPUT | MUX_MODE1) /* (U3)
lcd_data10.gpmc_a14 */
0xc4 (PIN_OUTPUT | MUX_MODE1) /* (U2) lcd_data9.gpmc_a13
*/
0xc0 (PIN_OUTPUT | MUX_MODE1) /* (U1)
lcd_data8.gpmc_a12 */
0xec (PIN_OUTPUT | MUX_MODE1) /* (R6)
lcd_ac_bias_en.gpmc_a11 */
0xe8 (PIN_OUTPUT | MUX_MODE1) /* (V5)
lcd_pclk.gpmc_a10 */
0xe4 (PIN_OUTPUT | MUX_MODE1) /* (R5)
lcd_hsync.gpmc_a9 */
0xe0 (PIN_OUTPUT | MUX_MODE1) /* (U5)
lcd_vsync.gpmc_a8 */
0xbc (PIN_OUTPUT | MUX_MODE1) /* (T4)
lcd_data7.gpmc_a7 */
0xb8 (PIN_OUTPUT | MUX_MODE1) /* (T3)
lcd_data6.gpmc_a6 */
0xb4 (PIN_OUTPUT | MUX_MODE1) /* (T2)
lcd_data5.gpmc_a5 */
0xb0 (PIN_OUTPUT | MUX_MODE1) /* (T1)
lcd_data4.gpmc_a4 */
0xac (PIN_OUTPUT | MUX_MODE1) /* (R4)
lcd_data3.gpmc_a3 */
0xa8 (PIN_OUTPUT | MUX_MODE1) /* (R3)
lcd_data2.gpmc_a2 */
0xa4 (PIN_OUTPUT | MUX_MODE1) /* (R2)
lcd_data1.gpmc_a1 */
0xa0 (PIN_OUTPUT | MUX_MODE1) /* (R1)
lcd_data0.gpmc_a0 */
0x1c (PIN_INPUT_PULLUP | MUX_MODE0) /* (T9)
gpmc_ad7.gpmc_ad7 */
0x18 (PIN_INPUT_PULLUP | MUX_MODE0) /* (R9)
gpmc_ad6.gpmc_ad6 */
0x14 (PIN_INPUT_PULLUP | MUX_MODE0) /* (V8)
gpmc_ad5.gpmc_ad5 */
0x10 (PIN_INPUT_PULLUP | MUX_MODE0) /* (U8)
gpmc_ad4.gpmc_ad4 */
0xc (PIN_INPUT_PULLUP | MUX_MODE0) /* (T8)
gpmc_ad3.gpmc_ad3 */
0x8 (PIN_INPUT_PULLUP | MUX_MODE0) /* (R8)
gpmc_ad2.gpmc_ad2 */
0x4 (PIN_INPUT_PULLUP | MUX_MODE0) /* (V7)
gpmc_ad1.gpmc_ad1 */
0x0 (PIN_INPUT_PULLUP | MUX_MODE0) /* (U7)
gpmc_ad0.gpmc_ad0 */
0x70 (PIN_INPUT | MUX_MODE0) /* (T17)
gpmc_wait0.gpmc_wait0 */
0x8c (PIN_INPUT | MUX_MODE2) /* (V12) gpmc_clk.gpmc_wait1
*/
0x74 (PIN_OUTPUT | MUX_MODE0) /* (U17) gpmc_wpn.gpmc_wpn
*/
0x78 (PIN_OUTPUT | MUX_MODE0) /* (U18)
gpmc_be1n.gpmc_be1n */
0x94 (PIN_OUTPUT | MUX_MODE0) /* (T7)
gpmc_oen_ren.gpmc_oen_ren */
0x98 (PIN_OUTPUT | MUX_MODE0) /* (U6)
gpmc_wen.gpmc_wen */
0x7c (PIN_OUTPUT | MUX_MODE0) /* (V6) gpmc
_csn0.gpmc_csn0 */
>;
};
};
&elm {
status = "okay";
};
&gpmc {
status = "okay";
ti,hwmods = "gpmc";
interrupts = <20>;
gpmc,num-cs = <8>;
gpmc,num-waitpins = <4>;
#address-cells = <2>;
#size-cells = <1>;
ranges = <0 0 0x10000000 0x08000000>;
nor@0,0 {
compatible = "cfi-flash";
pinctrl-0 = <&bbcape_nor_flash_pins>;
#address-cells = <1>;
#size-cells = <1>;
reg = <0 0 0x08000000>;
bank-width = <1>;
gpmc,mux-add-data;
gpmc,cs-on-ns = <0>;
gpmc,cs-rd-off-ns = <186>;
gpmc,cs-wr-off-ns = <186>;
gpmc,adv-on-ns = <12>;
gpmc,adv-rd-off-ns = <48>;
gpmc,adv-wr-off-ns = <48>;
gpmc,oe-on-ns = <54>;
gpmc,oe-off-ns = <168>;
gpmc,we-on-ns = <54>;
gpmc,we-off-ns = <168>;
gpmc,rd-cycle-ns = <186>;
gpmc,wr-cycle-ns = <186>;
gpmc,access-ns = <114>;
gpmc,page-burst-access-ns = <6>;
gpmc,bus-turnaround-ns = <12>;
gpmc,cycle2cycle-delay-ns = <18>;
gpmc,wr-data-mux-bus-ns = <90>;
gpmc,wr-access-ns = <186>;
gpmc,cycle2cycle-samecsen;
gpmc,cycle2cycle-diffcsen;
partition@0 {
label = "bootloader-nor";
reg = <0 0x40000>;
};
partition@0x40000 {
label = "params-nor";
reg = <0x40000 0x40000>;
};
partition@0x80000 {
label = "kernel-nor";
reg = <0x80000 0x200000>;
};
partition@0x280000 {
label = "filesystem-nor";
reg = <0x240000 0x7d80000>;
};
};
};
Thanks, for any help.
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/beagleboard/418aff06-e54b-4a1c-a5f0-7fe3e26b3d52%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.