[PATCH 1/1] drivers: add memory disk support
Heinrich Schuchardt
heinrich.schuchardt at canonical.com
Wed Apr 20 08:48:28 CEST 2022
On 4/20/22 01:01, Tom Rini wrote:
> On Wed, Apr 20, 2022 at 12:20:43AM +0200, Heinrich Schuchardt wrote:
>> On 4/19/22 23:54, Simon Glass wrote:
>>> Hi Heinrich,
>>>
>>> On Tue, 19 Apr 2022 at 15:14, Heinrich Schuchardt
>>> <heinrich.schuchardt at canonical.com> wrote:
>>>>
>>>> In some scenarios it is desirable to package U-Boot with other files into
>>>> a single blob. This patch allows to embed a memory disk into the U-Boot
>>>> binary. This memory disk can be accessed like any other block
>>>> device as 'mem 0'.
>>>>
>>>> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt at canonical.com>
>>>> ---
>>>> MAINTAINERS | 6 ++
>>>> common/board_r.c | 4 +
>>>> drivers/Kconfig | 2 +
>>>> drivers/Makefile | 1 +
>>>> drivers/block/blk-uclass.c | 2 +
>>>> drivers/memdisk/Kconfig | 13 ++++
>>>> drivers/memdisk/Makefile | 11 +++
>>>> drivers/memdisk/memdisk-uclass.c | 22 ++++++
>>>> drivers/memdisk/memdisk.c | 128 +++++++++++++++++++++++++++++++
>>>> drivers/memdisk/memdisk_file.S | 17 ++++
>>>> include/asm-generic/sections.h | 2 +
>>>> include/blk.h | 1 +
>>>> include/dm/uclass-id.h | 1 +
>>>> include/memdisk.h | 28 +++++++
>>>> 14 files changed, 238 insertions(+)
>>>> create mode 100644 drivers/memdisk/Kconfig
>>>> create mode 100644 drivers/memdisk/Makefile
>>>> create mode 100644 drivers/memdisk/memdisk-uclass.c
>>>> create mode 100644 drivers/memdisk/memdisk.c
>>>> create mode 100644 drivers/memdisk/memdisk_file.S
>>>> create mode 100644 include/memdisk.h
>>>
>>> Can this use binman to create the image and find the memdisk?
>>
>> binman requires board specific layout information. I cannot see how binman
>> would help for a Kconfig option that can be switched on and off for any
>> board.
>>
>> binman may provide addresses in the control device-tree which later could be
>> relocated. But this seems to result in a larger image size.
>
> This is something analogous to the initrd/initramfs framework within the
> Linux kernel, yes?
>
Yes, it is like appending an initrd to a kernel.
Best regards
Heinrich
More information about the U-Boot
mailing list