[ast2500] aspeed-smc fail with MX25L25635F

Shakeeb B K shakeebbk at gmail.com
Thu Apr 1 21:17:54 AEDT 2021


Hi All,

We figured that the issue here is with part MX25L25635F not supporting 4B
dual mode opcode - 0x3c. It instead uses 0x3b.

aspeed-smc enables dual mode by default with SNOR_HWCAPS_READ_1_1_2 in the
setup,
and hence disabling dual mode from  flash_info table in spi-nor is not
helpful.

I see that there is no way to override opcode in spi-nor framework either.
There are a couple of queries here -
1. Why is SNOR_HWCAPS_READ_1_1_2 enabled by default in aspeed-smc, while we
could have done with the flash_info table?
2. Can there be an extension in spi-nor to support read opcode override?

Any thoughts on what would be the preferred fix?

Thanks,
Shakeeb

On Thu, Mar 18, 2021 at 9:32 PM Shakeeb B K <shakeebbk at gmail.com> wrote:

> Hi All,
>
> We are working with Macronix MX25L25635F, and are not able to get spi nor
> access working from linux(develop-5.10).
> u-boot flash drivers work fine - able to verify the flash contents.
> But linux aspeed-smc seems to be having issues, with read calibration
> failing all the time
> [    1.746960] aspeed-smc 1e620000.spi: Using 50 MHz SPI frequency
> [    1.753028] aspeed-smc 1e620000.spi: control register: 000b0641
> [    1.758982] aspeed-smc 1e620000.spi: control register changed to:
> 00000600
> [    1.765947] aspeed-smc 1e620000.spi: default control register: 00000600
> [    1.772810] aspeed-smc 1e620000.spi: mx25l25635e (32768 Kbytes)
> [    1.778773] aspeed-smc 1e620000.spi: CE0 window [ 0x20000000 -
> 0x22000000 ] 32MB
> [    1.786286] aspeed-smc 1e620000.spi: CE1 window [ 0x22000000 -
> 0x2a000000 ] 128MB
> [    1.793873] aspeed-smc 1e620000.spi: write control register: 00120602
> [    1.800341] aspeed-smc 1e620000.spi: read control register: 203c0641
> [    1.806791] aspeed-smc 1e620000.spi: AHB frequency: 198 MHz
> [    1.823440] aspeed-smc 1e620000.spi: Trying HCLK/5 [203c0d41] ...
> [    1.831524] aspeed-smc 1e620000.spi:   * [00080000] 0 HCLK delay, 4ns
> DI delay : FAIL
> [    1.841333] aspeed-smc 1e620000.spi:   * [00000000] 0 HCLK delay, 0ns
> DI delay : FAIL
> [    1.851152] aspeed-smc 1e620000.spi:   * [00090000] 1 HCLK delay, 4ns
> DI delay : FAIL
> [    1.860969] aspeed-smc 1e620000.spi:   * [00010000] 1 HCLK delay, 0ns
> DI delay : FAIL
> [    1.870746] aspeed-smc 1e620000.spi:   * [000a0000] 2 HCLK delay, 4ns
> DI delay : FAIL
> [    1.880579] aspeed-smc 1e620000.spi:   * [00020000] 2 HCLK delay, 0ns
> DI delay : FAIL
> [    1.890435] aspeed-smc 1e620000.spi:   * [000b0000] 3 HCLK delay, 4ns
> DI delay : FAIL
> [    1.900301] aspeed-smc 1e620000.spi:   * [00030000] 3 HCLK delay, 0ns
> DI delay : FAIL
> [    1.910182] aspeed-smc 1e620000.spi:   * [000c0000] 4 HCLK delay, 4ns
> DI delay : FAIL
> [    1.920060] aspeed-smc 1e620000.spi:   * [00040000] 4 HCLK delay, 0ns
> DI delay : FAIL
> [    1.929964] aspeed-smc 1e620000.spi:   * [000d0000] 5 HCLK delay, 4ns
> DI delay : FAIL
> [    1.939869] aspeed-smc 1e620000.spi:   * [00050000] 5 HCLK delay, 0ns
> DI delay : FAIL
> [    1.947796] aspeed-smc 1e620000.spi: Trying HCLK/4 [203c0641] ...
> [    1.955529] aspeed-smc 1e620000.spi:   * [00008000] 0 HCLK delay, 4ns
> DI delay : FAIL
> [    1.964998] aspeed-smc 1e620000.spi:   * [00000000] 0 HCLK delay, 0ns
> DI delay : FAIL
> [    1.974483] aspeed-smc 1e620000.spi:   * [00009000] 1 HCLK delay, 4ns
> DI delay : FAIL
> [    1.983967] aspeed-smc 1e620000.spi:   * [00001000] 1 HCLK delay, 0ns
> DI delay : FAIL
> [    1.993475] aspeed-smc 1e620000.spi:   * [0000a000] 2 HCLK delay, 4ns
> DI delay : FAIL
> [    2.002986] aspeed-smc 1e620000.spi:   * [00002000] 2 HCLK delay, 0ns
> DI delay : FAIL
> [    2.012508] aspeed-smc 1e620000.spi:   * [0000b000] 3 HCLK delay, 4ns
> DI delay : FAIL
> [    2.022035] aspeed-smc 1e620000.spi:   * [00003000] 3 HCLK delay, 0ns
> DI delay : FAIL
> [    2.031581] aspeed-smc 1e620000.spi:   * [0000c000] 4 HCLK delay, 4ns
> DI delay : FAIL
> [    2.041131] aspeed-smc 1e620000.spi:   * [00004000] 4 HCLK delay, 0ns
> DI delay : FAIL
> [    2.050639] aspeed-smc 1e620000.spi:   * [0000d000] 5 HCLK delay, 4ns
> DI delay : FAIL
> [    2.060203] aspeed-smc 1e620000.spi:   * [00005000] 5 HCLK delay, 0ns
> DI delay : FAIL
> [    2.068116] aspeed-smc 1e620000.spi: No good frequency, using dumb slow
> [    2.077460] 5 fixed-partitions partitions found on MTD device bmc
> [    2.083721] Creating 5 MTD partitions on "bmc":
> [    2.088289] 0x000000000000-0x000000060000 : "u-boot"
> [    2.096067] 0x000000060000-0x000000080000 : "u-boot-env"
> [    2.104054] 0x000000080000-0x0000004c0000 : "kernel"
> [    2.111699] 0x0000004c0000-0x000001c00000 : "rofs"
> [    2.119091] 0x000001c00000-0x000002000000 : "rwfs"
> ...
> rofs = mtd4 squashfs rwfs = mtd5 jffs2
> mount: mounting /dev/mtdblock4 on run/initramfs/ro failed: Invalid argument
> [    3.654132] jffs2: Node totlen on flash (0xffffffff) != totlen from
> node ref (0x0000000c)
> [    3.685843] jffs2: Node totlen on flash (0xffffffff) != totlen from
> node ref (0x00000044)
> [    3.694229] overlayfs: upper fs does not support tmpfile.
> [    3.699946] jffs2: Node totlen on flash (0xffffffff) != totlen from
> node ref (0x0000002c)
> [    3.708309] jffs2: Node totlen on flash (0xffffffff) != totlen from
> node ref (0x00000044)
> [    3.716672] overlayfs: upper fs does not support RENAME_WHITEOUT.
> [    3.722885] overlayfs: upper fs does not support xattr, falling back to
> index=off and metacopy=off.
> chroot: can't execute '/bin/sh': No such file or directory
>
> Unable to confirm /sbin/init is an executable non-empty file
> in merged file system mounted at /root.
>
> Found a related discussion on
> https://lists.ozlabs.org/pipermail/openbmc/2019-April/015925.html,
> but the workaround mentioned there - to drop read calibration with *optimize_read=false
> *didn't help.
> FYI - Able to boot the same image from tftpboot and qemu.
>
> Has anyone come across similar issue or any suggestions to try out?
>
> Thanks,
> Shakeeb
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ozlabs.org/pipermail/openbmc/attachments/20210401/6951cc6f/attachment.htm>


More information about the openbmc mailing list