Kernel NAND flash support

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Kernel NAND flash support

1,268 Views
hwei
Contributor III

Hi,

I'm working on a custom board with imx6d and linux kernel version 3.10.17.

There are two NAND chips on this board, all two of them can be found in uboot.

But the problem is only one of them can be found in linux kernel.

Here is what I find in kernel document:

* Freescale General-Purpose Media Interface (GPMI)

The GPMI nand controller provides an interface to control the

NAND flash chips. We support only one NAND chip now.

Is that why only one NAND can work in linux kernel?

Is there any method to make them work?

Thanks

Labels (4)
Tags (5)
0 Kudos
3 Replies

655 Views
alejandrolozan1
NXP Employee
NXP Employee

Hi,

Maybe this can help:

[PATCH 0/4] mtd: gpmi: support two nand chips at most

Best Regards,

Alejandro

0 Kudos

655 Views
hwei
Contributor III

Hi Alejandro,

Thanks for your reply.

I've found this before and I'm sure the kernel I use includes that patch, but still it doesn't work.

I checked and found that only one NAND flash could be found in the "nand_scan_ident" fuction.

We use two MT29F16G08ABABAWP NAND. All four chip select pins are connected, and actually only cs0 and cs2 are in use.

And that's what I set in dts file.

            pinctrl_gpmi_nand_2: gpmi-nand-2 {
                    fsl,pins = <
                            MX6QDL_PAD_NANDF_CLE__NAND_CLE 0xb0b1
                            MX6QDL_PAD_NANDF_ALE__NAND_ALE 0xb0b1
                            MX6QDL_PAD_NANDF_WP_B__NAND_WP_B   0xb0b1
                            MX6QDL_PAD_NANDF_RB0__NAND_READY_B 0xb000
                            MX6QDL_PAD_NANDF_CS0__NAND_CE0_B   0xb0b1
                            MX6QDL_PAD_NANDF_CS2__NAND_CE2_B   0xb0b1
                            MX6QDL_PAD_SD4_CMD__NAND_RE_B  0xb0b1
                            MX6QDL_PAD_SD4_CLK__NAND_WE_B  0xb0b1
                            MX6QDL_PAD_NANDF_D0__NAND_DATA00   0xb0b1
                            MX6QDL_PAD_NANDF_D1__NAND_DATA01   0xb0b1
                            MX6QDL_PAD_NANDF_D2__NAND_DATA02   0xb0b1
                            MX6QDL_PAD_NANDF_D3__NAND_DATA03   0xb0b1
                            MX6QDL_PAD_NANDF_D4__NAND_DATA04   0xb0b1
                            MX6QDL_PAD_NANDF_D5__NAND_DATA05   0xb0b1
                            MX6QDL_PAD_NANDF_D6__NAND_DATA06   0xb0b1
                            MX6QDL_PAD_NANDF_D7__NAND_DATA07   0xb0b1
                            MX6QDL_PAD_SD4_DAT0__NAND_DQS  0x00b1
                    >;
            };

Even if I enable all four chip selects, it's still the same.

Is there any problem with my setting? or any other missing?

Thanks

0 Kudos

655 Views
eugenevolkov
Contributor IV

Hi, H Wei!

I have same problem? i cen't see two NAND in linux on CS0 and CS2. How you solved this problem?

0 Kudos