Skip to content

[Bug] bsp/cvitek/cv18xx_aarch64 无法 boot 进入控制台界面 #9243

Description

@unicornx

RT-Thread Version

master

Hardware Type/Architectures

bsp/cvitek/cv18xx_aarch64

Develop Toolchain

GCC

Describe the bug

目前 master 上的代码 duo 的 aarch64 大核无法启动进入控制台界面,只能打印出 RT flag 就 hold 住了。

bisect 看了一下,最近一个可以 work 的 commit 是 ae6a328 Add psoc62、61 config
加入 754c59a [Feature] DFS mount auto by kernel parameters (#8989) 后就会出现该现象。

继续跟踪了一下,发现卡住是因为 components/drivers/core/mnt.c 文件中的 rootfs_mnt_init() 进入了死循环。死循环位置大致在下面的 for 中

static int rootfs_mnt_init(void)
{
......
        for (; rootdelay || rootwait; --timeout)
        {
            if (!rootwait && timeout == 0)
            {
                LOG_E("Wait for /dev/%s init time out", dev);

                /*
                 * We don't return at once because the device driver may init OK
                 * when we break from this point, might as well give it another
                 * try.
                 */
                break;
            }

            if (rt_device_find(dev))
            {
                break;
            }

            rt_thread_mdelay(1);
        }
......
}
INIT_ENV_EXPORT(rootfs_mnt_init);

这个函数,包括整个文件都是 754c59a[Feature] DFS mount auto by kernel parameters (#8989) 新引入的。所以怀疑是引入整个 feature 后 bsp/cvitek/cv18xx_aarch 需要做一些对应的改动但没有做导致。

所以想问问 754c59a 的作者 @GuEe-GUI 是否可以提供一些帮助?

Other additional context

No response

Metadata

Metadata

Assignees

Labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions