请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:TMDS64EVM 工具与软件:
您好!
我尝试从自定义 ospi 引导加载程序并行引导 Linux (在 A53上)和裸机应用程序(在 R5上)。
自定义引导加载程序基于 SBL_OSPI、并使用 SBL_OSPI_Linux 中用于 Linux 引导的器件进行了扩展。
我在 ospi 闪存中有一个 Linux 应用程序映像、用于在 SD 卡上引导 Linux。 从 SD 卡直接引导 Linux (将引导跳线设置为 SDCARD 引导)成功。
从 ospi 引导加载程序启动时、Linux 引导在中断控制器初始化时失败、并在循环中呈现 am65-cpsw-nuss 以太网初始化:
[ 0.914500] ti-sci 44043000.system-controller: ABI: 4.0 (firmware rev 0x000a '10.1.7--v10.01.07 (Fiery Fox)') [ 1.026931] pca953x 0-0038: supply vcc not found, using dummy regulator [ 1.034036] pca953x 0-0038: using no AI [ 1.061276] omap_i2c 20000000.i2c: bus 0 rev0.12 at 400 kHz [ 1.069359] pca953x 1-0022: supply vcc not found, using dummy regulator [ 1.076421] pca953x 1-0022: using AI [ 1.101798] omap_i2c 20010000.i2c: bus 1 rev0.12 at 400 kHz [ 1.108001] ti-sci-intr 4210000.interrupt-controller: Destination irq resource allocation failed [ 1.117032] ti-sci-intr: probe of 4210000.interrupt-controller failed with error -22 [ 1.125841] ti-sci-intr bus@f4000:interrupt-controller@a00000: Destination irq resource allocation failed [ 1.135668] ti-sci-intr: probe of bus@f4000:interrupt-controller@a00000 failed with error -22 [ 1.144875] ti-sci-inta 48000000.interrupt-controller: VINT resource allocation failed [ 1.153008] ti-sci-inta: probe of 48000000.interrupt-controller failed with error -22 [ 1.161685] ti-udma 485c0100.dma-controller: Number of rings: 68 [ 1.168524] ti-udma 485c0000.dma-controller: Number of rings: 288 [ 1.176488] printk: console [ttyS2] disabled [ 1.181376] 2800000.serial: ttyS2 at MMIO 0x2800000 (irq = 30, base_baud = 3000000) is a 8250 [ 1.190222] printk: console [ttyS2] enabled [ 1.190222] printk: console [ttyS2] enabled [ 1.198718] printk: bootconsole [ns16550a0] disabled [ 1.198718] printk: bootconsole [ns16550a0] disabled [ 1.217052] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode [ 1.260362] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000 [ 1.270834] davinci_mdio 8000f00.mdio: phy[0]: device 8000f00.mdio:00, driver TI DP83867 [ 1.279026] am65-cpsw-nuss 8000000.ethernet: initializing am65 cpsw nuss version 0x6BA00903, cpsw version 0x6BA80903 Ports: 3 quirks:00000002 [ 1.291964] am65-cpsw-nuss 8000000.ethernet: initialized cpsw ale version 1.4 [ 1.299102] am65-cpsw-nuss 8000000.ethernet: ALE Table size 512 [ 1.309081] mmc0: CQHCI version 5.10 [ 1.310061] ti-udma 485c0100.dma-controller: Number of rings: 68 [ 1.320436] ti-udma 485c0000.dma-controller: Number of rings: 288 [ 1.330444] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode [ 1.359045] mmc0: SDHCI controller on fa10000.mmc [fa10000.mmc] using ADMA 64-bit [ 1.376350] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000 [ 1.386817] davinci_mdio 8000f00.mdio: phy[0]: device 8000f00.mdio:00, driver TI DP83867 [ 1.395031] am65-cpsw-nuss 8000000.ethernet: initializing am65 cpsw nuss version 0x6BA00903, cpsw version 0x6BA80903 Ports: 3 quirks:00000002 [ 1.407984] am65-cpsw-nuss 8000000.ethernet: initialized cpsw ale version 1.4 [ 1.415159] am65-cpsw-nuss 8000000.ethernet: ALE Table size 512 [ 1.424061] ti-udma 485c0100.dma-controller: Number of rings: 68 [ 1.430611] mmc1: CQHCI version 5.10 [ 1.431261] ti-udma 485c0000.dma-controller: Number of rings: 288 [ 1.444397] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode [ 1.477581] mmc0: Command Queue Engine enabled [ 1.482104] mmc0: new HS200 MMC card at address 0001 [ 1.482174] mmc1: SDHCI controller on fa00000.mmc [fa00000.mmc] using ADMA 64-bit [ 1.488037] mmcblk0: mmc0:0001 S0J56X 14.8 GiB [ 1.496397] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000 [ 1.507313] mmcblk0: p1 p2 p3 p4 < p5 > [ 1.510118] davinci_mdio 8000f00.mdio: phy[0]: device 8000f00.mdio:00, driver TI DP83867 [ 1.512711] mmcblk0boot0: mmc0:0001 S0J56X 31.5 MiB [ 1.519527] am65-cpsw-nuss 8000000.ethernet: initializing am65 cpsw nuss version 0x6BA00903, cpsw version 0x6BA80903 Ports: 3 quirks:00000002
为了确保裸机应用程序的初始化不是问题、我添加了一个空应用程序、该应用程序不起作用。 因此、我假设问题在于自定义引导加载程序。
我不确定 SBL 引导加载程序如何防止 Linux 初始化中断控制器。
我 感谢您提出的任何想法。
Alex
会的