Parallel NOR via GPMC

Sorry for multiple posts, I guess I posted it in the wrong forum, so I am posting here again:

I am trying to connect a parallel NOR over beaglebone black. I used the online TI PINMUX TOOL for that, and connected the NOR correspondingly.

Yet, although I see that the kernel code tries to identify any connected NOR device (I see the code reaching to the send-command functions), it ends up with:

of-flash 8000000.nor: do_map_probe() failed ``for type cfi_probe

What I observed using logic analyzer, is that the control lines, during CFI (WE, CS) are not toggled correctly, or at all.
Does any one have an idea?

my device tree 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 | MUX_MODE0) /* (T9) gpmc_ad7.gpmc_ad7 */

0x18 (PIN_INPUT | MUX_MODE0) /* (R9) gpmc_ad6.gpmc_ad6 */

0x14 (PIN_INPUT | MUX_MODE0) /* (V8) gpmc_ad5.gpmc_ad5 */

0x10 (PIN_INPUT | MUX_MODE0) /* (U8) gpmc_ad4.gpmc_ad4 */

0xc (PIN_INPUT | MUX_MODE0) /* (T8) gpmc_ad3.gpmc_ad3 */

0x8 (PIN_INPUT | MUX_MODE0) /* (R8) gpmc_ad2.gpmc_ad2 */

0x4 (PIN_INPUT | MUX_MODE0) /* (V7) gpmc_ad1.gpmc_ad1 */

0x0 (PIN_INPUT | 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_PULLDOWN | MUX_MODE0) /* (T7) gpmc_oen_ren.gpmc_oen_ren */

0x98 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* (U6) gpmc_wen.gpmc_wen */

0x7c (PIN_OUTPUT_PULLDOWN | 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 0x08000000 0x08000000>;

nor@0,0 {

compatible = “cfi-flash”;

pinctrl-names = “default”;

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>;

};

};

};