[LEDE-DEV] mt7621 nand driver status.
John Crispin
john at phrozen.org
Wed Aug 24 04:49:26 PDT 2016
On 24/08/2016 13:44, Kenneth Johansson wrote:
> On 2016-08-24 13:32, John Crispin wrote:
>>
>> On 24/08/2016 13:25, Kenneth Johansson wrote:
>>> What is the status of the nand driver for mt7621 ??
>>>
>>> when I try to use it the probing is ok but it fails when I try to
>>> read/write.
>>>
>>>
>> known to be working and i used it on the ERX just last week. what
>> specifc board is this and can you post your dts file please. initial
>> guess is that pinmux might be bad.
>
> CONFIG_TARGET_SUBTARGET="mt7621"
> CONFIG_TARGET_PROFILE="DEVICE_mt7621"
>
>
> just a thought how do we pass detection with wrong pinmux setting.
> badblocks is found it's when the first page read with ecc it fails.
>
> also this code is in the driver, so whatever pins is in the DTS this
> code sets back to nand function.
>
> data = DRV_Reg32(RALINK_SYSCTL_BASE+0x60);
> data &= ~((0x3<<18)|(0x3<<16));
> data |= ((0x2<<18) |(0x2<<16));
> DRV_WriteReg32(RALINK_SYSCTL_BASE+0x60, data);
>
> DTS is from target/linux/ramips/dts/mt7621.dtsi with one change.
>
> ----------
> diff --git a/target/linux/ramips/dts/mt7621.dtsi
> b/target/linux/ramips/dts/mt7621.dtsi
> index a8b98ed..1b2c22c 100644
> --- a/target/linux/ramips/dts/mt7621.dtsi
> +++ b/target/linux/ramips/dts/mt7621.dtsi
> @@ -360,7 +360,7 @@
> };
>
> nand: nand at 1e003000 {
> - status = "disabled";
> +
>
> compatible = "mtk,mt7621-nand";
> bank-width = <2>;
> ----------
>
sdhci and nand share the same pins. target/linux/ramips/dts/MT7621.dts
enables gpio mode for the sdhci pins. also make sure that the sdhci
driver is not loaded.
John
>
>
>> John
>>
>>> [ 4.150000] MediaTek Nand driver init, version v2.1 Fix AHB virt2phys
>>> error
>>> [ 4.170000] Allocate 16 byte aligned buffer: 806f3100
>>> [ 4.180000] Enable NFI Clock
>>> [ 4.180000] # MTK NAND # : Use HW ECC
>>> [ 4.190000] Device not found, ID: ecf1
>>> [ 4.200000] Not Support this Device!
>>> [ 4.200000] chip_mode=00000002
>>> [ 4.210000] Support this Device in MTK table! ecf1
>>> [ 4.220000] nand: device found, Manufacturer ID: 0xec, Chip ID: 0xf1
>>> [ 4.230000] nand: Samsung NAND 128MiB 3,3V 8-bit
>>> [ 4.240000] nand: 128 MiB, SLC, erase size: 128 KiB, page size: 2048,
>>> OOB size: 64
>>> [ 4.260000] [NAND]select ecc bit:4, sparesize :64 spare_per_sector=16
>>> [ 4.270000] Scanning device for bad blocks
>>> [ 4.280000] Bad eraseblock 2 at 0x000000040000
>>> [ 4.290000] Bad eraseblock 3 at 0x000000060000
>>> [ 4.400000] Bad eraseblock 306 at 0x000002640000
>>> [ 4.440000] Bad eraseblock 386 at 0x000003040000
>>> [ 4.510000] Bad eraseblock 588 at 0x000004980000
>>> [ 4.670000] 4 ofpart partitions found on MTD device MT7621-NAND
>>> [ 4.680000] Creating 4 MTD partitions on "MT7621-NAND":
>>> [ 4.690000] 0x000000000000-0x000000080000 : "uboot"
>>> [ 4.700000] 0x000000080000-0x000000100000 : "uboot_env"
>>> [ 4.710000] 0x000000100000-0x000000140000 : "factory"
>>> [ 4.720000] 0x000000140000-0x000001000000 : "rootfs"
>>> [ 4.740000] mtd: device 3 (rootfs) set to be root filesystem
>>> [ 4.750000] mtdsplit: no squashfs found in "rootfs"
>>> [ 4.760000] [mtk_nand] probe successfully!
>>>
>>>
>>> #cat /dev/mtd0 >/dev/null
>>> [ 75.910000] [mtk_nand_mcu_read_data] timeout
>>> [ 75.940000] [mtk_nand_mcu_read_data] timeout
>>> [ 75.980000] [mtk_nand_mcu_read_data] timeout
>>> [ 76.020000] [mtk_nand_mcu_read_data] timeout
>>>
>>>
>>> _______________________________________________
>>> Lede-dev mailing list
>>> Lede-dev at lists.infradead.org
>>> http://lists.infradead.org/mailman/listinfo/lede-dev
>> _______________________________________________
>> Lede-dev mailing list
>> Lede-dev at lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/lede-dev
>
>
More information about the Lede-dev
mailing list