diff mbox series

[v2,6/6] doc: spl: Add info regarding memory reservation and missing Kconfigs

Message ID 20231110152944.647535-7-devarsht@ti.com
State Changes Requested
Delegated to: Anatolij Gustschin
Headers show
Series Move framebuffer reservation for SPL to RAM end | expand

Commit Message

Devarsh Thakkar Nov. 10, 2023, 3:29 p.m. UTC
Add information regarding memory reservation scheme in SPL
and details regarding scheme which need to be followed while reserving
those areas which need to be preserved across bootstages.

Also add missing CONFIG_SPL Kconfigs and new ones which were added
recently.

Signed-off-by: Devarsh Thakkar <devarsht@ti.com>
---
V1->V3 : No change
---
 doc/develop/spl.rst | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

Comments

Simon Glass Nov. 12, 2023, 8:01 p.m. UTC | #1
Hi Devarsh,

On Fri, 10 Nov 2023 at 08:29, Devarsh Thakkar <devarsht@ti.com> wrote:
>
> Add information regarding memory reservation scheme in SPL
> and details regarding scheme which need to be followed while reserving
> those areas which need to be preserved across bootstages.
>
> Also add missing CONFIG_SPL Kconfigs and new ones which were added
> recently.
>
> Signed-off-by: Devarsh Thakkar <devarsht@ti.com>
> ---
> V1->V3 : No change
> ---
>  doc/develop/spl.rst | 22 ++++++++++++++++++++++
>  1 file changed, 22 insertions(+)
>
> diff --git a/doc/develop/spl.rst b/doc/develop/spl.rst
> index 76e87f07c7..fc570589eb 100644
> --- a/doc/develop/spl.rst
> +++ b/doc/develop/spl.rst
> @@ -65,6 +65,15 @@ CONFIG_SPL_NAND_LOAD (drivers/mtd/nand/raw/nand_spl_load.o)
>  CONFIG_SPL_SPI_LOAD (drivers/mtd/spi/spi_spl_load.o)
>  CONFIG_SPL_RAM_DEVICE (common/spl/spl.c)
>  CONFIG_SPL_WATCHDOG (drivers/watchdog/libwatchdog.o)
> +CONFIG_SPL_SYSCON (drivers/core/syscon-uclass.o)
> +CONFIG_SPL_GZIP (lib/gzip.o)
> +CONFIG_SPL_VIDEO (drivers/video/video-uclass.o drivers/video/vidconsole-uclass.o)
> +CONFIG_SPL_SPLASH_SCREEN (common/splash.o)
> +CONFIG_SPL_SPLASH_SOURCE (common/splash_source.o)
> +CONFIG_SPL_GPIO (drivers/gpio)
> +CONFIG_SPL_DM_GPIO (drivers/gpio/gpio-uclass.o)
> +CONFIG_SPL_BMP (drivers/video/bmp.o)
> +CONFIG_SPL_BLOBLIST (common/bloblist.o)

Did you intend to add the above? If so, please put it in its own patch.

>
>  Adding SPL-specific code
>  ------------------------
> @@ -164,3 +173,16 @@ cflow will spit out a number of warnings as it does not parse
>  the config files and picks functions based on #ifdef.  Parsing the '.i'
>  files instead introduces another set of headaches.  These warnings are
>  not usually important to understanding the flow, however.
> +
> +
> +Reserving memory in SPL
> +-----------------------
> +
> +If memory need to be reserved in RAM during SPL stage so that area won't get touched
> +by SPL and/or u-boot, it need to be reserved starting from end of RAM.

U-Boot (please avoid using any other spelling in docs and comments;
please fix globally)

> +
> +Also the regions which are to be preserved across further stages of boot need to be reserved first starting from
> +framebuffer memory which must be reserved from end of RAM for which helper function spl_reserve_video_from_ram_top is provided.

Worth mentioning that framebuffer being reserved first means it is at
the top of the reservation area with everything else reserved below
it?

> +
> +The corresponding information of reservation for those regions can be passed to further stages of boot using a bloblist.
> +For e.g. the information for framebuffer area reserved by SPL can be passed onto u-boot using BLOBLISTT_U_BOOT_VIDEO.

Can you please wrap to 80 cols?

> --
> 2.34.1
>

Regards,
Simon
diff mbox series

Patch

diff --git a/doc/develop/spl.rst b/doc/develop/spl.rst
index 76e87f07c7..fc570589eb 100644
--- a/doc/develop/spl.rst
+++ b/doc/develop/spl.rst
@@ -65,6 +65,15 @@  CONFIG_SPL_NAND_LOAD (drivers/mtd/nand/raw/nand_spl_load.o)
 CONFIG_SPL_SPI_LOAD (drivers/mtd/spi/spi_spl_load.o)
 CONFIG_SPL_RAM_DEVICE (common/spl/spl.c)
 CONFIG_SPL_WATCHDOG (drivers/watchdog/libwatchdog.o)
+CONFIG_SPL_SYSCON (drivers/core/syscon-uclass.o)
+CONFIG_SPL_GZIP (lib/gzip.o)
+CONFIG_SPL_VIDEO (drivers/video/video-uclass.o drivers/video/vidconsole-uclass.o)
+CONFIG_SPL_SPLASH_SCREEN (common/splash.o)
+CONFIG_SPL_SPLASH_SOURCE (common/splash_source.o)
+CONFIG_SPL_GPIO (drivers/gpio)
+CONFIG_SPL_DM_GPIO (drivers/gpio/gpio-uclass.o)
+CONFIG_SPL_BMP (drivers/video/bmp.o)
+CONFIG_SPL_BLOBLIST (common/bloblist.o)
 
 Adding SPL-specific code
 ------------------------
@@ -164,3 +173,16 @@  cflow will spit out a number of warnings as it does not parse
 the config files and picks functions based on #ifdef.  Parsing the '.i'
 files instead introduces another set of headaches.  These warnings are
 not usually important to understanding the flow, however.
+
+
+Reserving memory in SPL
+-----------------------
+
+If memory need to be reserved in RAM during SPL stage so that area won't get touched
+by SPL and/or u-boot, it need to be reserved starting from end of RAM.
+
+Also the regions which are to be preserved across further stages of boot need to be reserved first starting from
+framebuffer memory which must be reserved from end of RAM for which helper function spl_reserve_video_from_ram_top is provided.
+
+The corresponding information of reservation for those regions can be passed to further stages of boot using a bloblist.
+For e.g. the information for framebuffer area reserved by SPL can be passed onto u-boot using BLOBLISTT_U_BOOT_VIDEO.