主题中讨论的其他器件: AM4378
大家好、TI Champs
客户要求使用2Gbit NAND 作为引导设备。
他们成功地使用了1Gb。 但他们的客户端请求将内存容量增加到2Gb。
因此、AM4372和 AM4378正在测试2Gbit、但它们仍不是 NAND 引导。
(使用1 Gbit NAND 时、NAND 引导工作正常。)
正如您在下面的日志中看到的、芯片 ID 被读取为0xda
这对应于 AM4372技术参考手册中5.2.6.4.2.3器件检测和参数中指定的受支持 NAND 器件。
U-Boot 2020.01 (Apr 20 2022 - 19:45:18 +0900) CPU : AM437X-GP rev 1.2 Model: ACROWELL AM437x AUM100 DRAM: 256 MiB PMIC: TPS65218 NAND: nand_base: device found, Manufacturer ID: 0x01, Chip ID: 0xda nand_base: AMD/Spansion S34ML02G1 nand_base: 256 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64 256 MiB MMC: OMAP SD/MMC: 0 Loading Environment from FAT... *** Warning - bad CRC, using default environment Loading Environment from NAND... Scanning device for bad blocks *** Warning - bad CRC, using default environment AGAPAO>>get_ram_size=268435456 Net: No ethernet found. Hit any key to stop autoboot: 0 =>
如上所述、我认为 NAND 支持是正确的、但我不知道为什么1Gb 可以引导 NAND、而2Gb 不能引导。
我想要求详细审查是否存在与 SYSBOOT 相关的错误。
有关信息、如果引导至 MMC、然后从 u-boot 执行 NAND 引导、MLO 将正常进行。
因此、您可以验证它没有被错误地写入 NAND。
(请参阅下面的日志)
因此、根据 CPU ROM 代码中的 SYSBOOT 设置、判断进入 NAND 的过程中存在问题。
我要求您进行审核。
U-Boot 2020.01 (Apr 20 2022 - 19:45:18 +0900) CPU : AM437X-GP rev 1.2 Model: ACROWELL AM437x AUM100 DRAM: 256 MiB PMIC: TPS65218 NAND: nand_base: device found, Manufacturer ID: 0x01, Chip ID: 0xda nand_base: AMD/Spansion S34ML02G1 nand_base: 256 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64 256 MiB MMC: OMAP SD/MMC: 0 Loading Environment from FAT... *** Warning - bad CRC, using default environment Loading Environment from NAND... Scanning device for bad blocks *** Warning - bad CRC, using default environment AGAPAO>>get_ram_size=268435456 Net: No ethernet found. Hit any key to stop autoboot: 0 => => run nandboot Booting from nand ... NAND read: device 0 offset 0x100000, size 0x80000 524288 bytes read: OK NAND read: device 0 offset 0x300000, size 0x700000 7340032 bytes read: OK ## Flattened Device Tree blob at 88000000 Booting using the fdt blob at 0x88000000 Loading Device Tree to 8df15000, end 8df29774 ... OK Starting kernel ... [ 0.000000] Booting Linux on physical CPU 0x0 [ 0.000000] Linux version 5.4.106-g023faefa70 (root@ubuntu) (gcc version 9.2.1 20191025 (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10))) #21 PREEMPT Tue Jul 19 10:51:10 KST 2022 [ 0.000000] CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache [ 0.000000] OF: fdt: Machine model: ACROWELL AM437x AUM100 [ 0.000000] Memory policy: Data cache writeback [ 0.000000] efi: Getting EFI parameters from FDT: [ 0.000000] efi: UEFI not found. [ 0.000000] cma: Reserved 48 MiB at 0x8ac00000 [ 0.000000] CPU: All CPU(s) started in SVC mode. [ 0.000000] AM437x ES1.2 (neon) [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 64960 [ 0.000000] Kernel command line: console=ttyS0,115200n8 root=ubi0:am437x-aum100-rootfs rw ubi.mtd=NAND.file-system,2048 rootfstype=ubifs rootwait=1 [ 0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes, linear) [ 0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes, linear) [ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off [ 0.000000] Memory: 195148K/262144K available (9216K kernel code, 318K rwdata, 3292K rodata, 1024K init, 260K bss, 17844K reserved, 49152K cma-reserved, 0K highmem) [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1 [ 0.000000] rcu: Preemptible hierarchical RCU implementation. [ 0.000000] Tasks RCU enabled. [ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies. [ 0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16 [ 0.000000] L2C: platform modifies aux control register: 0x0e030000 -> 0x3e430000 [ 0.000000] L2C: DT/platform modifies aux control register: 0x0e030000 -> 0x3e430000 [ 0.000000] L2C-310 enabling early BRESP for Cortex-A9 [ 0.000000] OMAP L2C310: ROM does not support power control setting [ 0.000000] L2C-310 dynamic clock gating disabled, standby mode disabled [ 0.000000] L2C-310 cache controller enabled, 16 ways, 256 kB [ 0.000000] L2C-310: CACHE_ID 0x410000c9, AUX_CTRL 0x4e430000 [ 0.000000] random: get_random_bytes called from start_kernel+0x2b4/0x470 with crng_init=0 [ 0.000000] /ocp@44000000/interconnect@44c00000/segment@100000/target-module@f0000/prcm@0/l4-rtc-cm@8500/l4-rtc-clkctrl@20 not found from clkctrl data. [ 0.000000] OMAP clockevent source: timer2 at 24000000 Hz [ 0.000017] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns [ 0.000041] clocksource: timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns [ 0.000053] OMAP clocksource: timer1 at 24000000 Hz [ 0.000681] clocksource: 32k_counter: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 58327039986419 ns [ 0.000694] OMAP clocksource: 32k_counter at 32768 Hz [ 0.001400] Console: colour dummy device 80x30 [ 0.001472] Calibrating delay loop... 1196.85 BogoMIPS (lpj=5984256) [ 0.090276] pid_max: default: 32768 minimum: 301 [ 0.090517] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linear) [ 0.090537] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear) [ 0.091665] CPU: Testing write buffer coherency: ok [ 0.091737] CPU0: Spectre v2: using BPIALL workaround [ 0.092781] Setting up static identity map for 0x80100000 - 0x80100060 [ 0.092970] rcu: Hierarchical SRCU implementation. [ 0.093074] EFI services will not be available. [ 0.093510] devtmpfs: initialized [ 0.110029] VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4 [ 0.110574] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns [ 0.110603] futex hash table entries: 256 (order: -1, 3072 bytes, linear) [ 0.114623] pinctrl core: initialized pinctrl subsystem [ 0.115559] DMI not present or invalid. [ 0.116086] NET: Registered protocol family 16 [ 0.118334] DMA: preallocated 256 KiB pool for atomic coherent allocations [ 0.151087] cpuidle: using governor ladder [ 0.151133] cpuidle: using governor menu [ 0.180283] No ATAGs? [ 0.180310] hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers. [ 0.180331] hw-breakpoint: maximum watchpoint size is 4 bytes. [ 0.203338] debugfs: Directory '49000000.edma' with parent 'dmaengine' already present! [ 0.203375] edma 49000000.edma: TI EDMA DMA engine driver [ 0.206170] iommu: Default domain type: Translated [ 0.209388] SCSI subsystem initialized [ 0.209679] usbcore: registered new interface driver usbfs [ 0.209758] usbcore: registered new interface driver hub [ 0.209820] usbcore: registered new device driver usb [ 0.210749] mc: Linux media interface: v0.10 [ 0.210807] videodev: Linux video capture interface: v2.00 [ 0.210923] pps_core: LinuxPPS API ver. 1 registered [ 0.210933] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it> [ 0.210961] PTP clock support registered [ 0.211005] EDAC MC: Ver: 3.0.0 [ 0.212490] Advanced Linux Sound Architecture Driver Initialized. [ 0.213939] clocksource: Switched to clocksource timer1 [ 0.224196] thermal_sys: Registered thermal governor 'fair_share' [ 0.224205] thermal_sys: Registered thermal governor 'bang_bang' [ 0.224221] thermal_sys: Registered thermal governor 'step_wise' [ 0.224229] thermal_sys: Registered thermal governor 'user_space' [ 0.224236] thermal_sys: Registered thermal governor 'power_allocator' [ 0.225040] NET: Registered protocol family 2 [ 0.225944] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes, linear) [ 0.225985] TCP established hash table entries: 2048 (order: 1, 8192 bytes, linear) [ 0.226019] TCP bind hash table entries: 2048 (order: 1, 8192 bytes, linear) [ 0.226057] TCP: Hash tables configured (established 2048 bind 2048) [ 0.226199] UDP hash table entries: 256 (order: 0, 4096 bytes, linear) [ 0.226226] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes, linear) [ 0.226436] NET: Registered protocol family 1 [ 0.227129] RPC: Registered named UNIX socket transport module. [ 0.227145] RPC: Registered udp transport module. [ 0.227152] RPC: Registered tcp transport module. [ 0.227159] RPC: Registered tcp NFSv4.1 backchannel transport module. [ 0.227176] PCI: CLS 0 bytes, default 64 [ 0.229543] Initialise system trusted keyrings [ 0.229905] workingset: timestamp_bits=14 max_order=16 bucket_order=2 [ 0.236410] squashfs: version 4.0 (2009/01/31) Phillip Lougher [ 0.237332] NFS: Registering the id_resolver key type [ 0.237378] Key type id_resolver registered [ 0.237387] Key type id_legacy registered [ 0.237449] ntfs: driver 2.1.32 [Flags: R/O]. [ 0.238373] Key type asymmetric registered [ 0.238390] Asymmetric key parser 'x509' registered [ 0.238452] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245) [ 0.238464] io scheduler mq-deadline registered [ 0.238473] io scheduler kyber registered [ 0.244992] OMAP GPIO hardware version 0.1 [ 0.251016] ti-sysc 44e3e074.target-module: clock get error for fck: -517 [ 0.274068] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400 [ 0.299086] ti-sysc 48322000.target-module: dts flag should be at module level for ti,no-reset-on-init [ 0.313180] pinctrl-single 44e10800.pinmux: 199 pins, size 796 [ 0.380846] Serial: 8250/16550 driver, 10 ports, IRQ sharing enabled [ 0.385902] omap8250 44e09000.serial: No clock speed specified: using default: 48000000 [ 0.386879] printk: console [ttyS0] disabled [ 0.386996] 44e09000.serial: ttyS0 at MMIO 0x44e09000 (irq = 67, base_baud = 3000000) is a 8250 [ 1.085980] printk: console [ttyS0] enabled [ 1.093676] omap_rng 48310000.rng: Random Number Generator ver. 20 [ 1.100101] random: fast init done [ 1.103751] random: crng init done [ 1.131683] brd: module loaded [ 1.146450] loop: module loaded [ 1.157091] libphy: Fixed MDIO Bus: probed [ 1.162332] usbcore: registered new interface driver cdc_ether [ 1.168364] usbcore: registered new interface driver cdc_eem [ 1.174149] usbcore: registered new interface driver cdc_ncm [ 1.182128] dwc3 48390000.usb: Failed to get clk 'ref': -2 [ 1.194287] dwc3 483d0000.usb: Failed to get clk 'ref': -2 [ 1.204367] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller [ 1.209959] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1 [ 1.218368] xhci-hcd xhci-hcd.0.auto: hcc params 0x0238f06d hci version 0x100 quirks 0x0000000002010010 [ 1.227903] xhci-hcd xhci-hcd.0.auto: irq 86, io mem 0x483d0000 [ 1.234338] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.04 [ 1.242651] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1 [ 1.249941] usb usb1: Product: xHCI Host Controller [ 1.254859] usb usb1: Manufacturer: Linux 5.4.106-g023faefa70 xhci-hcd [ 1.261418] usb usb1: SerialNumber: xhci-hcd.0.auto [ 1.267106] hub 1-0:1.0: USB hub found [ 1.270928] hub 1-0:1.0: 1 port detected [ 1.275437] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller [ 1.280972] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2 [ 1.288757] xhci-hcd xhci-hcd.0.auto: Host supports USB 3.0 SuperSpeed [ 1.295434] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM. [ 1.303691] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 5.04 [ 1.312022] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1 [ 1.319294] usb usb2: Product: xHCI Host Controller [ 1.324210] usb usb2: Manufacturer: Linux 5.4.106-g023faefa70 xhci-hcd [ 1.330767] usb usb2: SerialNumber: xhci-hcd.0.auto [ 1.336405] hub 2-0:1.0: USB hub found [ 1.340235] hub 2-0:1.0: 1 port detected [ 1.344929] usbcore: registered new interface driver cdc_acm [ 1.350619] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters [ 1.358817] usbcore: registered new interface driver usbtest [ 1.366011] gadgetfs: USB Gadget filesystem, version 24 Aug 2004 [ 1.372565] i2c /dev entries driver [ 1.380848] cpuidle: enable-method property 'ti,am4372' found operations [ 1.388759] sdhci: Secure Digital Host Controller Interface driver [ 1.395024] sdhci: Copyright(c) Pierre Ossman [ 1.401229] omap_gpio 44e07000.gpio: Could not set line 6 debounce to 200000 microseconds (-22) [ 1.410024] omap_hsmmc 48060000.mmc: Got CD GPIO [ 1.441525] sdhci-pltfm: SDHCI platform and OF driver helper [ 1.449406] ledtrig-cpu: registered to indicate activity on CPUs [ 1.456827] usbcore: registered new interface driver usbhid [ 1.462695] usbhid: USB HID core driver [ 1.470729] davinci-mcasp 4803c000.mcasp: IRQ common not found [ 1.478565] NET: Registered protocol family 10 [ 1.484498] Segment Routing with IPv6 [ 1.488353] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver [ 1.495242] NET: Registered protocol family 17 [ 1.500197] Key type dns_resolver registered [ 1.504871] omap_voltage_late_init: Voltage driver support not added [ 1.512073] Loading compiled-in X.509 certificates [ 1.523419] mmc0: host does not support reading read-only switch, assuming write-enable [ 1.545742] omap-gpmc 50000000.gpmc: GPMC revision 6.0 [ 1.551083] mmc0: new high speed SDHC card at address 59b4 [ 1.557124] gpmc_mem_init: disabling cs 0 mapped at 0x0-0x1000000 [ 1.564094] mmcblk0: mmc0:59b4 USD00 14.8 GiB [ 1.570390] nand: device found, Manufacturer ID: 0x01, Chip ID: 0xda [ 1.576842] nand: AMD/Spansion S34ML02G1 [ 1.580787] nand: 256 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64 [ 1.588598] nand: using OMAP_ECC_BCH8_CODE_HW ECC scheme [ 1.594081] 10 fixed-partitions partitions found on MTD device omap2-nand.0 [ 1.601077] Creating 10 MTD partitions on "omap2-nand.0": [ 1.606541] 0x000000000000-0x000000040000 : "NAND.SPL" [ 1.614635] 0x000000040000-0x000000080000 : "NAND.SPL.backup1" [ 1.622435] mmcblk0: p1 p2 [ 1.627473] 0x000000080000-0x0000000c0000 : "NAND.SPL.backup2" [ 1.635262] 0x0000000c0000-0x000000100000 : "NAND.SPL.backup3" [ 1.642881] 0x000000100000-0x000000180000 : "NAND.u-boot-spl-os" [ 1.650926] 0x000000180000-0x000000280000 : "NAND.u-boot" [ 1.658656] 0x000000280000-0x0000002c0000 : "NAND.u-boot-env" [ 1.666204] 0x0000002c0000-0x000000300000 : "NAND.u-boot-env.backup1" [ 1.674451] 0x000000300000-0x000000a00000 : "NAND.kernel" [ 1.685894] 0x000000a00000-0x000020000000 : "NAND.file-system" [ 1.691768] mtd: partition "NAND.file-system" extends beyond the end of device "omap2-nand.0" -- size truncated to 0xf600000 [ 1.902178] AGAPAO>> DCDC4 PWM [ 1.913543] omap_i2c 44e0b000.i2c: bus 0 rev0.12 at 50 kHz [ 1.919619] ti-sysc 44e3e074.target-module: clock get error for fck: -517 [ 1.928712] omap_i2c 4802a000.i2c: bus 1 rev0.12 at 300 kHz [ 1.945888] omap_reset_deassert: timedout waiting for gfx:0 [ 1.951548] ti-sysc: probe of 44000000.ocp:target-module@56000000 failed with error -110 [ 1.960986] core: _opp_supported_by_regulators: OPP minuV: 931000 maxuV: 969000, not supported by regulator [ 1.970904] cpu cpu0: _opp_add: OPP not supported by regulators (300000000) [ 1.979305] ti-sysc 44e3e074.target-module: clock get error for fck: -517 [ 1.987174] ti-sysc 44e3e074.target-module: clock get error for fck: -517 [ 1.994925] ubi0: attaching mtd9 [ 2.772049] ubi0: scanning is finished [ 2.784339] ubi0: attached mtd9 (name "NAND.file-system", size 246 MiB) [ 2.791004] ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes [ 2.797950] ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 512 [ 2.804750] ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096 [ 2.811747] ubi0: good PEBs: 1968, bad PEBs: 0, corrupted PEBs: 0 [ 2.817887] ubi0: user volume: 1, internal volumes: 1, max. volumes count: 128 [ 2.825160] ubi0: max/mean erase counter: 2/0, WL threshold: 4096, image sequence number: 1832327117 [ 2.834371] ubi0: available PEBs: 0, total reserved PEBs: 1968, PEBs reserved for bad PEB handling: 40 [ 2.843732] ubi0: background thread "ubi_bgt0d" started, PID 60 [ 2.851026] ALSA device list: [ 2.854134] No soundcards found. [ 2.859290] UBIFS (ubi0:0): Mounting in unauthenticated mode [ 2.874052] UBIFS (ubi0:0): background thread "ubifs_bgt0_0" started, PID 61 [ 2.895540] UBIFS (ubi0:0): recovery needed [ 2.976028] UBIFS (ubi0:0): recovery completed [ 2.980918] UBIFS (ubi0:0): UBIFS: mounted UBI device 0, volume 0, name "am437x-aum100-rootfs" [ 2.989662] UBIFS (ubi0:0): LEB size: 126976 bytes (124 KiB), min./max. I/O unit sizes: 2048 bytes/2048 bytes [ 2.999650] UBIFS (ubi0:0): FS size: 242905088 bytes (231 MiB, 1913 LEBs), journal size 9023488 bytes (8 MiB, 72 LEBs) [ 3.010435] UBIFS (ubi0:0): reserved for root: 0 bytes (0 KiB) [ 3.016319] UBIFS (ubi0:0): media format: w4/r0 (latest is w5/r0), UUID F56A4EB3-84AD-4FE7-A8F8-95B2CA8F6833, small LPT model [ 3.028763] VFS: Mounted root (ubifs filesystem) on device 0:16. [ 3.036033] devtmpfs: mounted [ 3.040976] Freeing unused kernel memory: 1024K [ 3.045808] Run /sbin/init as init process INIT: version 2.96 booting INIT: Entering runlevel: 5 Starting syslogd/klogd: done _____ _____ _ _ | _ |___ ___ ___ ___ | _ |___ ___ |_|___ ___| |_ | | _| .'| . | . | | __| _| . | | | -_| _| _| |__|__|_| |__,|_ |___| |__| |_| |___|_| |___|___|_| |___| |___| Arago Project http://arago-project.org am437x-aum100 /dev/ttyS0 Arago 2020.09 am437x-aum100 /dev/ttyS0 am437x-aum100 login: root root@am437x-aum100:~#
谢谢。
此致、
插孔