* [d-kernel] [PATCH] arm64: dts: rockchip: fix compatible string for Repka Pi 5 @ 2026-08-17 10:59 Мишаня Бессонов 2026-08-17 11:28 ` Ivan A. Melnikov 0 siblings, 1 reply; 5+ messages in thread From: Мишаня Бессонов @ 2026-08-17 10:59 UTC (permalink / raw) To: devel-kernel The current in-tree device tree for Repka Pi 5 uses "repka,pi5" as its compatible string. However, the U-Boot bootloader code expects the token "repka,repka-pi5" for proper board identification and FIT image validation. Change the compatible string to "repka,repka-pi5" to align the kernel's DTS with the bootloader. This ensures that variables like fdtfile are correctly matched and the system boots without manual configuration. >From 1b7b76656fe4dc888e29c5ac956136024ca00164 Mon Sep 17 00:00:00 2001 From: Mikhail Bessonov <heliumium1997@gmail.com> Date: Mon, 17 Aug 2026 14:50:48 +0400 Subject: [PATCH] arm64: dts: rockchip: fix compatible string for Repka Pi 5 Signed-off-by: Mikhail Bessonov <heliumium1997@gmail.com> --- arch/arm64/boot/dts/rockchip/rk3588-repka-pi5.dts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm64/boot/dts/rockchip/rk3588-repka-pi5.dts b/arch/arm64/boot/dts/rockchip/rk3588-repka-pi5.dts index 4e4207108dbf..7226abe7aaf1 100644 --- a/arch/arm64/boot/dts/rockchip/rk3588-repka-pi5.dts +++ b/arch/arm64/boot/dts/rockchip/rk3588-repka-pi5.dts @@ -9,7 +9,7 @@ / { model = "Repka Pi 5"; - compatible = "repka,pi5", "rockchip,rk3588"; + compatible = "repka,repka-pi5", "rockchip,rk3588"; aliases { ethernet0 = &gmac1; -- 2.55.0 ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [d-kernel] [PATCH] arm64: dts: rockchip: fix compatible string for Repka Pi 5 2026-08-17 10:59 [d-kernel] [PATCH] arm64: dts: rockchip: fix compatible string for Repka Pi 5 Мишаня Бессонов @ 2026-08-17 11:28 ` Ivan A. Melnikov 2026-08-17 11:39 ` Мишаня Бессонов 0 siblings, 1 reply; 5+ messages in thread From: Ivan A. Melnikov @ 2026-08-17 11:28 UTC (permalink / raw) To: Мишаня Бессонов Cc: devel-kernel [-- Attachment #1: Type: text/plain, Size: 1356 bytes --] On Mon, Aug 17, 2026 at 02:59:19PM +0400, Мишаня Бессонов wrote: > The current in-tree device tree for Repka Pi 5 uses "repka,pi5" as its > compatible string. However, the U-Boot bootloader code expects the token > "repka,repka-pi5" for proper board identification and FIT image validation. Как именно compatible влияет на поведение загрузчика? Не вижу ничего такого в коде загрузчика в репозитории производителя[1][2]. В их linux-rockchip в master'е сейчас вообще написано "rockchip,rk3588-repka-pi5"[3]. Возможно, стоит уточнить у производителя, какая compatible строка канонична. Также пожалуйста уточните, откуда Вы взяли изначальное compatible = "repka,pi5", "rockchip,rk3588"; из предыдущего патчсета. Пока NAK. [1] https://gitflic.ru/project/npo_rbs/repka-os_boot-loader.git [2] https://gitflic.ru/project/npo_rbs/u-boot-2025-10.git [3] https://gitflic.ru/project/npo_rbs/repka-os_linux-rockchip/blob?file=arch%2Farm64%2Fboot%2Fdts%2Frockchip%2Frk3588-repka-pi5.dts&commit=4b64c5c7f6b1747e280e3d5b884717aea3f15c17#gf-code-line-23 -- wbr, iv m. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 870 bytes --] ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [d-kernel] [PATCH] arm64: dts: rockchip: fix compatible string for Repka Pi 5 2026-08-17 11:28 ` Ivan A. Melnikov @ 2026-08-17 11:39 ` Мишаня Бессонов 2026-08-17 20:01 ` Ivan A. Melnikov 0 siblings, 1 reply; 5+ messages in thread From: Мишаня Бессонов @ 2026-08-17 11:39 UTC (permalink / raw) To: Мишаня Бессонов, devel-kernel 1. Как compatible влияет на загрузчик: Современные версии U-Boot (включая 2025.10) используют FIT-образ (Flattened Image Tree) для мультиплатформенных сборок. При старте загрузчик считывает строку compatible из системного дерева устройств платы (или DTB, вшитого в SPL) и сопоставляет её со списком поддерживаемых конфигураций. Если строки не совпадают (например, загрузчик ищет "repka,repka-pi5", а в переданном ядром DTS написано "repka,pi5"), механизм автоматического сопоставления FIT и валидации fdtfile может не отработать корректно без жесткого ручного переназначения переменных окружения. 2. Откуда взялась строка: Признаю, что в первоначальном патчсете строка "repka,pi5" была указана мной ошибочно (в качестве заглушки при адаптации под mainline-интерфейсы 6.18). При финальном тестировании сборки официального загрузчика u-boot-2025-10 для Repka Pi 5 из репозитория производителя, анализ итогового бинарного артефакта u-boot-rockchip.bin с помощью утилиты strings показал, что загрузчик жестко завязан на токен "repka,repka-pi5": $ strings u-boot-rockchip.bin | grep repka fdt-rockchip/rk3588-repka-pi5 repka,repka-pi5 rockchip/rk3588-repka-pi5.dtb fdtfile=rockchip/rk3588-repka-pi5.dtb repka,repka-pi5 Данный токен генерируется на этапе сборки загрузчика из конфигурационных параметров дефконфига платы (параметры CONFIG_DEFAULT_DEVICE_TREE и CONFIG_OF_LIST). Предлагаемый патч устраняет это рассогласование между актуальным деревом устройств в ядре ALT и ожиданиями собираемого загрузчика, обеспечивая старт системы "из коробки". Что касается каноничности строки у производителя — в их текущих репозиториях ядра и загрузчика присутствует рассинхронизация префиксов, но данный патч приводит DTS ядра к фактическому общему знаменателю с их же бинарником U-Boot. ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [d-kernel] [PATCH] arm64: dts: rockchip: fix compatible string for Repka Pi 5 2026-08-17 11:39 ` Мишаня Бессонов @ 2026-08-17 20:01 ` Ivan A. Melnikov 2026-08-19 9:45 ` Мишаня Бессонов 0 siblings, 1 reply; 5+ messages in thread From: Ivan A. Melnikov @ 2026-08-17 20:01 UTC (permalink / raw) To: Мишаня Бессонов Cc: devel-kernel [-- Attachment #1: Type: text/plain, Size: 5367 bytes --] On Mon, Aug 17, 2026 at 03:39:17PM +0400, Мишаня Бессонов wrote: > 1. Как compatible влияет на загрузчик: > Современные версии U-Boot (включая 2025.10) используют FIT-образ > (Flattened Image Tree) для мультиплатформенных сборок. При старте загрузчик > считывает строку compatible из системного дерева устройств платы > (или DTB, вшитого в SPL) Именно из DTB, "вшитого" в u-boot. C тем, что прописано в DTB ядра это никак не связано, на этом этапе DTB ядра ещё не прочитано из файловой системы. SPL обычно даже не в курсе, что на свете существуют файловые системы. > и сопоставляет её со списком поддерживаемых > конфигураций. > Если строки не совпадают (например, загрузчик ищет "repka,repka-pi5", > а в переданном ядром DTS Это загрузчик передаёт DTS ядру, а не наоборт. > написано "repka,pi5"), механизм автоматического > сопоставления FIT и валидации > fdtfile может не отработать корректно без жесткого ручного > переназначения переменных окружения. Я буквально посмотрел в исходники вендорского U-Boot (а Вы?) и не увидел там ничего такого. Однако я не могу быть на 100% уверен, что это *те самые* исходники, и что я ничего не опустил. Поэтому я вполне открыт к техническому диалогу. Покажите код (например, из вендорского репозитория U-Boot) или отрывки логов загрузки, которые убедительно демонстрируют, что Вы правильно интерпретируете поведение U-Boot. Написанные с помощью LLM общие слова не принимаются в качестве аргумента в технической дискуссии. Вы тестировали этот патч? Вы сравнивали логи U-Boot до и после? Покажите разницу. Не описывайте, а покажите. Даже включите её самую релевантную чать в commit message. > 2. Откуда взялась строка: > Признаю, что в первоначальном патчсете строка "repka,pi5" была указана > мной ошибочно > (в качестве заглушки при адаптации под mainline-интерфейсы 6.18). Печально. Больше так не делайте. > При финальном тестировании сборки официального загрузчика > u-boot-2025-10 для Repka Pi 5 из > репозитория производителя, анализ итогового бинарного артефакта > u-boot-rockchip.bin с помощью > утилиты strings показал, что загрузчик жестко завязан на токен > "repka,repka-pi5": > > $ strings u-boot-rockchip.bin | grep repka > fdt-rockchip/rk3588-repka-pi5 > repka,repka-pi5 > rockchip/rk3588-repka-pi5.dt > fdtfile=rockchip/rk3588-repka-pi5.dtb > repka,repka-pi5 Естественно там будет "repka,repka-pi5", оно же прописано в собственном DTB U-Boot'а. > Данный токен генерируется на этапе сборки загрузчика из > конфигурационных параметров дефконфига > платы (параметры CONFIG_DEFAULT_DEVICE_TREE и CONFIG_OF_LIST). Эти CONFIG'и задают имена файлов и никак не связаны c compatible-строками. > Предлагаемый патч устраняет это рассогласование между актуальным > деревом устройств в > ядре ALT и ожиданиями собираемого загрузчика, обеспечивая старт > системы "из коробки". Что касается > каноничности строки у производителя — в их текущих репозиториях ядра и > загрузчика присутствует > рассинхронизация префиксов, но данный патч приводит DTS ядра к > фактическому общему > знаменателю с их же бинарником U-Boot. Если эта "рассинхронизация" не мешает работать вендрскому ядру, то и нашему не должна мешать. Какую проблему Вы пытаетесь решить? -- wbr, iv m. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 870 bytes --] ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [d-kernel] [PATCH] arm64: dts: rockchip: fix compatible string for Repka Pi 5 2026-08-17 20:01 ` Ivan A. Melnikov @ 2026-08-19 9:45 ` Мишаня Бессонов 0 siblings, 0 replies; 5+ messages in thread From: Мишаня Бессонов @ 2026-08-19 9:45 UTC (permalink / raw) To: Мишаня Бессонов, devel-kernel Я думал когда U-Boot не сможет загрузить DTB для ядра он передаёт свой DTB и смотрит совместима ли конкретная плата с встроенным DTB, но я не учёл тот факт что если не удалось загрузить DTB то неоткуда брать строку compatible для проверки On Tue, Aug 18, 2026 at 12:01 AM Ivan A. Melnikov <iv@altlinux.org> wrote: > > On Mon, Aug 17, 2026 at 03:39:17PM +0400, Мишаня Бессонов wrote: > > 1. Как compatible влияет на загрузчик: > > Современные версии U-Boot (включая 2025.10) используют FIT-образ > > (Flattened Image Tree) для мультиплатформенных сборок. При старте загрузчик > > считывает строку compatible из системного дерева устройств платы > > (или DTB, вшитого в SPL) > > Именно из DTB, "вшитого" в u-boot. C тем, что прописано в DTB ядра > это никак не связано, на этом этапе DTB ядра ещё не прочитано > из файловой системы. SPL обычно даже не в курсе, что на свете > существуют файловые системы. > > > и сопоставляет её со списком поддерживаемых > > конфигураций. > > > Если строки не совпадают (например, загрузчик ищет "repka,repka-pi5", > > а в переданном ядром DTS > > Это загрузчик передаёт DTS ядру, а не наоборт. > > > написано "repka,pi5"), механизм автоматического > > сопоставления FIT и валидации > > fdtfile может не отработать корректно без жесткого ручного > > переназначения переменных окружения. > > Я буквально посмотрел в исходники вендорского U-Boot (а Вы?) > и не увидел там ничего такого. Однако я не могу быть на 100% > уверен, что это *те самые* исходники, и что я ничего не опустил. > Поэтому я вполне открыт к техническому диалогу. > > Покажите код (например, из вендорского репозитория U-Boot) > или отрывки логов загрузки, которые убедительно > демонстрируют, что Вы правильно интерпретируете поведение > U-Boot. Написанные с помощью LLM общие слова не принимаются > в качестве аргумента в технической дискуссии. > > Вы тестировали этот патч? Вы сравнивали логи U-Boot до и после? > Покажите разницу. Не описывайте, а покажите. Даже > включите её самую релевантную чать в commit message. > > > 2. Откуда взялась строка: > > Признаю, что в первоначальном патчсете строка "repka,pi5" была указана > > мной ошибочно > > (в качестве заглушки при адаптации под mainline-интерфейсы 6.18). > > Печально. Больше так не делайте. > > > При финальном тестировании сборки официального загрузчика > > u-boot-2025-10 для Repka Pi 5 из > > репозитория производителя, анализ итогового бинарного артефакта > > u-boot-rockchip.bin с помощью > > утилиты strings показал, что загрузчик жестко завязан на токен > > "repka,repka-pi5": > > > > $ strings u-boot-rockchip.bin | grep repka > > fdt-rockchip/rk3588-repka-pi5 > > repka,repka-pi5 > > rockchip/rk3588-repka-pi5.dt > > fdtfile=rockchip/rk3588-repka-pi5.dtb > > repka,repka-pi5 > > Естественно там будет "repka,repka-pi5", оно же прописано в собственном > DTB U-Boot'а. > > > Данный токен генерируется на этапе сборки загрузчика из > > конфигурационных параметров дефконфига > > платы (параметры CONFIG_DEFAULT_DEVICE_TREE и CONFIG_OF_LIST). > > Эти CONFIG'и задают имена файлов и никак не связаны > c compatible-строками. > > > Предлагаемый патч устраняет это рассогласование между актуальным > > деревом устройств в > > ядре ALT и ожиданиями собираемого загрузчика, обеспечивая старт > > системы "из коробки". Что касается > > каноничности строки у производителя — в их текущих репозиториях ядра и > > загрузчика присутствует > > рассинхронизация префиксов, но данный патч приводит DTS ядра к > > фактическому общему > > знаменателю с их же бинарником U-Boot. > > Если эта "рассинхронизация" не мешает работать вендрскому ядру, > то и нашему не должна мешать. > > Какую проблему Вы пытаетесь решить? > > -- > wbr, > iv m. ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2026-08-19 9:45 UTC | newest] Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2026-08-17 10:59 [d-kernel] [PATCH] arm64: dts: rockchip: fix compatible string for Repka Pi 5 Мишаня Бессонов 2026-08-17 11:28 ` Ivan A. Melnikov 2026-08-17 11:39 ` Мишаня Бессонов 2026-08-17 20:01 ` Ivan A. Melnikov 2026-08-19 9:45 ` Мишаня Бессонов
ALT Linux kernel packages development This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/devel-kernel/0 devel-kernel/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 devel-kernel devel-kernel/ http://lore.altlinux.org/devel-kernel \ devel-kernel@altlinux.org devel-kernel@altlinux.ru devel-kernel@altlinux.com public-inbox-index devel-kernel Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.devel-kernel AGPL code for this site: git clone https://public-inbox.org/public-inbox.git