Skip to contentSkip to conversation

arm: socfpga: unable to boot cyclone5 devkit or SocKit

U-Boot Dinh Nguyen 6 participants 21 messages Apr 10, 2018 – Apr 12, 2018

lore
Share & tools
lore
#0 lore raw

Hi,

I'm seeking advice with an observation that I'm seeing on the Cyclone5 devkit/sockit.

I'm working with U-Boot version v2018.05-rc1. Building the u-boot-with-spl.sfp, then writing the sfp file to the 0xa2 partition on the SD card, does not boot, all I get is this:

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

This issue doesn't happen at all on the DE0 Nano SoC board. I compared the defconfig and came across this. If I remove these config options in the socfpga_sockit_defconfig, then SPL -> U-Boot works fine.

-CONFIG_SPI_FLASH_MACRONIX=y
-CONFIG_SPI_FLASH_SPANSION=y
-CONFIG_SPI_FLASH_STMICRO=y

I'll continue to debug of course, but was wondering if anyone might have a better idea as to what could be happening, I'd appreciate the insight.

Dinh

#1 lore raw
Quoted 24 lines · Dinh Nguyen

Hi,

I'm seeking advice with an observation that I'm seeing on the Cyclone5 devkit/sockit.

I'm working with U-Boot version v2018.05-rc1. Building the u-boot-with-spl.sfp, then writing the sfp file to the 0xa2 partition on the SD card, does not boot, all I get is this:

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

This issue doesn't happen at all on the DE0 Nano SoC board. I compared the defconfig and came across this. If I remove these config options in the socfpga_sockit_defconfig, then SPL -> U-Boot works fine.

(quoted diff) +0 -3
-CONFIG_SPI_FLASH_MACRONIX=y
-CONFIG_SPI_FLASH_SPANSION=y
-CONFIG_SPI_FLASH_STMICRO=y
Quoted 2 lines

I'll continue to debug of course, but was wondering if anyone might have a better idea as to what could be happening, I'd appreciate the insight.

Check the size of the SPL , could it be too big ?

Signature · 2 lines
Best regards,
Marek Vasut
#2 lore raw
Quoted 21 lines · Marek Vasut
Quoted 20 lines · Dinh Nguyen

Hi,

I'm seeking advice with an observation that I'm seeing on the Cyclone5 devkit/sockit.

I'm working with U-Boot version v2018.05-rc1. Building the u-boot-with-spl.sfp, then writing the sfp file to the 0xa2 partition on the SD card, does not boot, all I get is this:

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

This issue doesn't happen at all on the DE0 Nano SoC board. I compared the defconfig and came across this. If I remove these config options in the socfpga_sockit_defconfig, then SPL -> U-Boot works fine.

Quoted 9 lines
Quoted 6 lines
(quoted diff) +0 -3
-CONFIG_SPI_FLASH_MACRONIX=y
-CONFIG_SPI_FLASH_SPANSION=y
-CONFIG_SPI_FLASH_STMICRO=y

I'll continue to debug of course, but was wondering if anyone might have a better idea as to what could be happening, I'd appreciate the insight.

Check the size of the SPL , could it be too big ?

That's a good thought...it could be. The size of the default u-boot-spl-dtb.bin is 58048, removing the SPI, brings that down to 55616, that's smaller than the 64k of OCRAM for SPL?

Dinh

#3 lore raw
Quoted 34 lines · Dinh Nguyen
Quoted 21 lines · Marek Vasut
Quoted 20 lines · Dinh Nguyen

Hi,

I'm seeking advice with an observation that I'm seeing on the Cyclone5 devkit/sockit.

I'm working with U-Boot version v2018.05-rc1. Building the u-boot-with-spl.sfp, then writing the sfp file to the 0xa2 partition on the SD card, does not boot, all I get is this:

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

This issue doesn't happen at all on the DE0 Nano SoC board. I compared the defconfig and came across this. If I remove these config options in the socfpga_sockit_defconfig, then SPL -> U-Boot works fine.

Quoted 9 lines
Quoted 6 lines
(quoted diff) +0 -3
-CONFIG_SPI_FLASH_MACRONIX=y
-CONFIG_SPI_FLASH_SPANSION=y
-CONFIG_SPI_FLASH_STMICRO=y

I'll continue to debug of course, but was wondering if anyone might have a better idea as to what could be happening, I'd appreciate the insight.

Check the size of the SPL , could it be too big ?

Quoted 3 lines

That's a good thought...it could be. The size of the default u-boot-spl-dtb.bin is 58048, removing the SPI, brings that down to 55616, that's smaller than the 64k of OCRAM for SPL?

Right, I think there's something about those last few kiB OR it's the stack that's overwriting piece of U-Boot or malloc area or something. How did it grow so big anyway ?

Signature · 2 lines
Best regards,
Marek Vasut
#4 lore raw
Quoted 35 lines · Marek Vasut
Quoted 34 lines · Dinh Nguyen
Quoted 30 lines · Marek Vasut
Quoted 24 lines · Dinh Nguyen

Hi,

I'm seeking advice with an observation that I'm seeing on the Cyclone5 devkit/sockit.

I'm working with U-Boot version v2018.05-rc1. Building the u-boot-with-spl.sfp, then writing the sfp file to the 0xa2 partition on the SD card, does not boot, all I get is this:

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

This issue doesn't happen at all on the DE0 Nano SoC board. I compared the defconfig and came across this. If I remove these config options in the socfpga_sockit_defconfig, then SPL -> U-Boot works fine.

(quoted diff) +0 -3
-CONFIG_SPI_FLASH_MACRONIX=y
-CONFIG_SPI_FLASH_SPANSION=y
-CONFIG_SPI_FLASH_STMICRO=y
Quoted 2 lines

I'll continue to debug of course, but was wondering if anyone might have a better idea as to what could be happening, I'd appreciate the insight.

Check the size of the SPL , could it be too big ?

Quoted 8 lines
Quoted 3 lines

That's a good thought...it could be. The size of the default u-boot-spl-dtb.bin is 58048, removing the SPI, brings that down to 55616, that's smaller than the 64k of OCRAM for SPL?

Right, I think there's something about those last few kiB OR it's the stack that's overwriting piece of U-Boot or malloc area or something. How did it grow so big anyway ?

Ah, looks like SYS_MALLOC_F_LEN is set to 8k, thus, we're over the 64k limit. Setting SYS_MALLOC_F_LEN to 4k makes it work again. I'm not sure how the SPL grew so big.

Dinh

#5 lore raw
Quoted 42 lines · Dinh Nguyen
Quoted 39 lines · Marek Vasut
Quoted 37 lines · Dinh Nguyen
Quoted 21 lines · Marek Vasut
Quoted 20 lines · Dinh Nguyen

Hi,

I'm seeking advice with an observation that I'm seeing on the Cyclone5 devkit/sockit.

I'm working with U-Boot version v2018.05-rc1. Building the u-boot-with-spl.sfp, then writing the sfp file to the 0xa2 partition on the SD card, does not boot, all I get is this:

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

This issue doesn't happen at all on the DE0 Nano SoC board. I compared the defconfig and came across this. If I remove these config options in the socfpga_sockit_defconfig, then SPL -> U-Boot works fine.

Quoted 9 lines
Quoted 6 lines
(quoted diff) +0 -3
-CONFIG_SPI_FLASH_MACRONIX=y
-CONFIG_SPI_FLASH_SPANSION=y
-CONFIG_SPI_FLASH_STMICRO=y

I'll continue to debug of course, but was wondering if anyone might have a better idea as to what could be happening, I'd appreciate the insight.

Check the size of the SPL , could it be too big ?

That's a good thought...it could be. The size of the default u-boot-spl-dtb.bin is 58048, removing the SPI, brings that down to 55616, that's smaller than the 64k of OCRAM for SPL?

Quoted 8 lines
Quoted 4 lines

Right, I think there's something about those last few kiB OR it's the stack that's overwriting piece of U-Boot or malloc area or something. How did it grow so big anyway ?

Ah, looks like SYS_MALLOC_F_LEN is set to 8k, thus, we're over the 64k limit. Setting SYS_MALLOC_F_LEN to 4k makes it work again. I'm not sure how the SPL grew so big.

I have a couple of theories, but anyway ...

u-boot$ git reset --hard v2018.01 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f3dd87e0b9 Prepare v2018.01
-rw-r--r-- 1 marex marex 52902 Apr 11 00:34 spl/u-boot-spl.bin

u-boot$ git reset --hard v2018.03 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f95ab1fb6e Prepare v2018.03
-rw-r--r-- 1 marex marex 59706 Apr 11 00:34 spl/u-boot-spl.bin

Try bisecting out the commit which caused this 7 kiB growth between 2018.01 and 2018.03 . Even those 53 kiB are quite borderline, but it was at 53 kiB for a while (2017.05 is also ~53 kiB)

Signature · 2 lines
Best regards,
Marek Vasut
#6 lore raw
Quoted 59 lines · Marek Vasut
Quoted 42 lines · Dinh Nguyen
Quoted 39 lines · Marek Vasut
Quoted 37 lines · Dinh Nguyen
Quoted 21 lines · Marek Vasut
Quoted 20 lines · Dinh Nguyen

Hi,

I'm seeking advice with an observation that I'm seeing on the Cyclone5 devkit/sockit.

I'm working with U-Boot version v2018.05-rc1. Building the u-boot-with-spl.sfp, then writing the sfp file to the 0xa2 partition on the SD card, does not boot, all I get is this:

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

This issue doesn't happen at all on the DE0 Nano SoC board. I compared the defconfig and came across this. If I remove these config options in the socfpga_sockit_defconfig, then SPL -> U-Boot works fine.

Quoted 9 lines
Quoted 6 lines
(quoted diff) +0 -3
-CONFIG_SPI_FLASH_MACRONIX=y
-CONFIG_SPI_FLASH_SPANSION=y
-CONFIG_SPI_FLASH_STMICRO=y

I'll continue to debug of course, but was wondering if anyone might have a better idea as to what could be happening, I'd appreciate the insight.

Check the size of the SPL , could it be too big ?

That's a good thought...it could be. The size of the default u-boot-spl-dtb.bin is 58048, removing the SPI, brings that down to 55616, that's smaller than the 64k of OCRAM for SPL?

Quoted 8 lines
Quoted 4 lines

Right, I think there's something about those last few kiB OR it's the stack that's overwriting piece of U-Boot or malloc area or something. How did it grow so big anyway ?

Ah, looks like SYS_MALLOC_F_LEN is set to 8k, thus, we're over the 64k limit. Setting SYS_MALLOC_F_LEN to 4k makes it work again. I'm not sure how the SPL grew so big.

I have a couple of theories, but anyway ...

u-boot$ git reset --hard v2018.01 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f3dd87e0b9 Prepare v2018.01
-rw-r--r-- 1 marex marex 52902 Apr 11 00:34 spl/u-boot-spl.bin

Quoted 9 lines

u-boot$ git reset --hard v2018.03 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f95ab1fb6e Prepare v2018.03
-rw-r--r-- 1 marex marex 59706 Apr 11 00:34 spl/u-boot-spl.bin

Try bisecting out the commit which caused this 7 kiB growth between 2018.01 and 2018.03 . Even those 53 kiB are quite borderline, but it was at 53 kiB for a while (2017.05 is also ~53 kiB)

Doing the bisect points me to this commit:

commit fa2c14676c7c6f3115dd4d9b2a4cc3b35c3ad2a2

Author: Tom Rini <[email protected]>
Date:   Sat Feb 10 16:54:38 2018 -0500

configs: Re-sync with CONFIG_DISTRO_DEFAULTS

A number of platforms include config_distro_defaults.h but do not enable CONFIG_DISTRO_DEFAULTS. As they plainly intended to, set that flag and re-sync config files.

Doing a revert of the above commit shrinks the SPL back down to ~7 kiB.

Dinh

#7 lore raw
Quoted 84 lines · Dinh Nguyen
Quoted 59 lines · Marek Vasut
Quoted 42 lines · Dinh Nguyen
Quoted 39 lines · Marek Vasut
Quoted 37 lines · Dinh Nguyen
Quoted 21 lines · Marek Vasut
Quoted 20 lines · Dinh Nguyen

Hi,

I'm seeking advice with an observation that I'm seeing on the Cyclone5 devkit/sockit.

I'm working with U-Boot version v2018.05-rc1. Building the u-boot-with-spl.sfp, then writing the sfp file to the 0xa2 partition on the SD card, does not boot, all I get is this:

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

This issue doesn't happen at all on the DE0 Nano SoC board. I compared the defconfig and came across this. If I remove these config options in the socfpga_sockit_defconfig, then SPL -> U-Boot works fine.

Quoted 9 lines
Quoted 6 lines
(quoted diff) +0 -3
-CONFIG_SPI_FLASH_MACRONIX=y
-CONFIG_SPI_FLASH_SPANSION=y
-CONFIG_SPI_FLASH_STMICRO=y

I'll continue to debug of course, but was wondering if anyone might have a better idea as to what could be happening, I'd appreciate the insight.

Check the size of the SPL , could it be too big ?

That's a good thought...it could be. The size of the default u-boot-spl-dtb.bin is 58048, removing the SPI, brings that down to 55616, that's smaller than the 64k of OCRAM for SPL?

Quoted 8 lines
Quoted 4 lines

Right, I think there's something about those last few kiB OR it's the stack that's overwriting piece of U-Boot or malloc area or something. How did it grow so big anyway ?

Ah, looks like SYS_MALLOC_F_LEN is set to 8k, thus, we're over the 64k limit. Setting SYS_MALLOC_F_LEN to 4k makes it work again. I'm not sure how the SPL grew so big.

I have a couple of theories, but anyway ...

u-boot$ git reset --hard v2018.01 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f3dd87e0b9 Prepare v2018.01
-rw-r--r-- 1 marex marex 52902 Apr 11 00:34 spl/u-boot-spl.bin

Quoted 9 lines

u-boot$ git reset --hard v2018.03 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f95ab1fb6e Prepare v2018.03
-rw-r--r-- 1 marex marex 59706 Apr 11 00:34 spl/u-boot-spl.bin

Try bisecting out the commit which caused this 7 kiB growth between 2018.01 and 2018.03 . Even those 53 kiB are quite borderline, but it was at 53 kiB for a while (2017.05 is also ~53 kiB)

Doing the bisect points me to this commit:

commit fa2c14676c7c6f3115dd4d9b2a4cc3b35c3ad2a2

Author: Tom Rini <[email protected]>
Date:   Sat Feb 10 16:54:38 2018 -0500

configs: Re-sync with CONFIG_DISTRO_DEFAULTS

A number of platforms include config_distro_defaults.h but do not enable CONFIG_DISTRO_DEFAULTS. As they plainly intended to, set that flag and re-sync config files.

Quoted 6 lines

Doing a revert of the above commit shrinks the SPL back down to ~7 kiB.

Dinh

It looks like the enablement of CONFIG_DISTRO_DEFAULTS, enables these configs:

CONFIG_ISO_PARTITION=y
CONFIG_SPL_ISO_PARTITION=y
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_SPL_AMIGA_PARTITION is not set
CONFIG_EFI_PARTITION=y
CONFIG_EFI_PARTITION_ENTRIES_NUMBERS=128
CONFIG_EFI_PARTITION_ENTRIES_OFF=0
CONFIG_SPL_EFI_PARTITION=y
CONFIG_PARTITION_UUIDS=y
CONFIG_SPL_PARTITION_UUIDS=y
# CONFIG_PARTITION_TYPE_GUID is not set

Which is contributing to the SPL growth.

Dinh

#8 lore raw
Quoted 109 lines · Dinh Nguyen
Quoted 84 lines · Dinh Nguyen
Quoted 59 lines · Marek Vasut
Quoted 42 lines · Dinh Nguyen
Quoted 39 lines · Marek Vasut
Quoted 37 lines · Dinh Nguyen
Quoted 21 lines · Marek Vasut
Quoted 20 lines · Dinh Nguyen

Hi,

I'm seeking advice with an observation that I'm seeing on the Cyclone5 devkit/sockit.

I'm working with U-Boot version v2018.05-rc1. Building the u-boot-with-spl.sfp, then writing the sfp file to the 0xa2 partition on the SD card, does not boot, all I get is this:

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

U-Boot SPL 2018.05-rc1 (Apr 10 2018 - 13:03:48 -0500)

This issue doesn't happen at all on the DE0 Nano SoC board. I compared the defconfig and came across this. If I remove these config options in the socfpga_sockit_defconfig, then SPL -> U-Boot works fine.

Quoted 9 lines
Quoted 6 lines
(quoted diff) +0 -3
-CONFIG_SPI_FLASH_MACRONIX=y
-CONFIG_SPI_FLASH_SPANSION=y
-CONFIG_SPI_FLASH_STMICRO=y

I'll continue to debug of course, but was wondering if anyone might have a better idea as to what could be happening, I'd appreciate the insight.

Check the size of the SPL , could it be too big ?

That's a good thought...it could be. The size of the default u-boot-spl-dtb.bin is 58048, removing the SPI, brings that down to 55616, that's smaller than the 64k of OCRAM for SPL?

Quoted 8 lines
Quoted 4 lines

Right, I think there's something about those last few kiB OR it's the stack that's overwriting piece of U-Boot or malloc area or something. How did it grow so big anyway ?

Ah, looks like SYS_MALLOC_F_LEN is set to 8k, thus, we're over the 64k limit. Setting SYS_MALLOC_F_LEN to 4k makes it work again. I'm not sure how the SPL grew so big.

I have a couple of theories, but anyway ...

u-boot$ git reset --hard v2018.01 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f3dd87e0b9 Prepare v2018.01
-rw-r--r-- 1 marex marex 52902 Apr 11 00:34 spl/u-boot-spl.bin

Quoted 9 lines

u-boot$ git reset --hard v2018.03 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f95ab1fb6e Prepare v2018.03
-rw-r--r-- 1 marex marex 59706 Apr 11 00:34 spl/u-boot-spl.bin

Try bisecting out the commit which caused this 7 kiB growth between 2018.01 and 2018.03 . Even those 53 kiB are quite borderline, but it was at 53 kiB for a while (2017.05 is also ~53 kiB)

Doing the bisect points me to this commit:

commit fa2c14676c7c6f3115dd4d9b2a4cc3b35c3ad2a2

Author: Tom Rini <[email protected]>
Date:   Sat Feb 10 16:54:38 2018 -0500

configs: Re-sync with CONFIG_DISTRO_DEFAULTS

A number of platforms include config_distro_defaults.h but do not enable CONFIG_DISTRO_DEFAULTS. As they plainly intended to, set that flag and re-sync config files.

Quoted 6 lines

Doing a revert of the above commit shrinks the SPL back down to ~7 kiB.

Dinh

It looks like the enablement of CONFIG_DISTRO_DEFAULTS, enables these configs:

CONFIG_ISO_PARTITION=y
CONFIG_SPL_ISO_PARTITION=y
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_SPL_AMIGA_PARTITION is not set
CONFIG_EFI_PARTITION=y
CONFIG_EFI_PARTITION_ENTRIES_NUMBERS=128
CONFIG_EFI_PARTITION_ENTRIES_OFF=0
CONFIG_SPL_EFI_PARTITION=y
CONFIG_PARTITION_UUIDS=y
CONFIG_SPL_PARTITION_UUIDS=y
# CONFIG_PARTITION_TYPE_GUID is not set

Quoted 2 lines

Which is contributing to the SPL growth.

Turning the following config options off subtracts 7k from the SPL:

+# CONFIG_SPL_ISO_PARTITION is not set
+# CONFIG_SPL_EFI_PARTITION is not set

Not sure if these are needed?

Dinh

#9 lore raw

On 04/11/2018 04:52 AM, Dinh Nguyen wrote:
[...]

Quoted 57 lines
Quoted 49 lines
Quoted 27 lines
Quoted 5 lines

u-boot$ git reset --hard v2018.01 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f3dd87e0b9 Prepare v2018.01
-rw-r--r-- 1 marex marex 52902 Apr 11 00:34 spl/u-boot-spl.bin

Quoted 9 lines

u-boot$ git reset --hard v2018.03 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f95ab1fb6e Prepare v2018.03
-rw-r--r-- 1 marex marex 59706 Apr 11 00:34 spl/u-boot-spl.bin

Try bisecting out the commit which caused this 7 kiB growth between 2018.01 and 2018.03 . Even those 53 kiB are quite borderline, but it was at 53 kiB for a while (2017.05 is also ~53 kiB)

Doing the bisect points me to this commit:

commit fa2c14676c7c6f3115dd4d9b2a4cc3b35c3ad2a2

Author: Tom Rini <[email protected]>
Date:   Sat Feb 10 16:54:38 2018 -0500

configs: Re-sync with CONFIG_DISTRO_DEFAULTS

A number of platforms include config_distro_defaults.h but do not enable CONFIG_DISTRO_DEFAULTS. As they plainly intended to, set that flag and re-sync config files.

Quoted 6 lines

Doing a revert of the above commit shrinks the SPL back down to ~7 kiB.

Dinh

It looks like the enablement of CONFIG_DISTRO_DEFAULTS, enables these configs:

CONFIG_ISO_PARTITION=y
CONFIG_SPL_ISO_PARTITION=y
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_SPL_AMIGA_PARTITION is not set
CONFIG_EFI_PARTITION=y
CONFIG_EFI_PARTITION_ENTRIES_NUMBERS=128
CONFIG_EFI_PARTITION_ENTRIES_OFF=0
CONFIG_SPL_EFI_PARTITION=y
CONFIG_PARTITION_UUIDS=y
CONFIG_SPL_PARTITION_UUIDS=y
# CONFIG_PARTITION_TYPE_GUID is not set

Quoted 2 lines

Which is contributing to the SPL growth.

Turning the following config options off subtracts 7k from the SPL:

(quoted diff) +2 -0
+# CONFIG_SPL_ISO_PARTITION is not set
+# CONFIG_SPL_EFI_PARTITION is not set
Quoted 1 line

Not sure if these are needed?

IMO not on SoCFPGA. Also CCing Tom.

Signature · 2 lines
Best regards,
Marek Vasut
#10 lore raw
Quoted 8 lines · Marek Vasut

On 04/11/2018 04:52 AM, Dinh Nguyen wrote:
[...]

Quoted 5 lines
Quoted 5 lines
Quoted 5 lines
Quoted 5 lines

u-boot$ git reset --hard v2018.01 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f3dd87e0b9 Prepare v2018.01
-rw-r--r-- 1 marex marex 52902 Apr 11 00:34 spl/u-boot-spl.bin

Quoted 8 lines
Quoted 8 lines
Quoted 8 lines
Quoted 8 lines
Quoted 8 lines

u-boot$ git reset --hard v2018.03 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f95ab1fb6e Prepare v2018.03
-rw-r--r-- 1 marex marex 59706 Apr 11 00:34 spl/u-boot-spl.bin

Try bisecting out the commit which caused this 7 kiB growth between 2018.01 and 2018.03 . Even those 53 kiB are quite borderline, but it was at 53 kiB for a while (2017.05 is also ~53 kiB)

Do you have a size constraint and are not setting the correct CONFIG options so that it becomes a build failure?

Quoted 37 lines
Quoted 37 lines
Quoted 36 lines
Quoted 12 lines

Doing the bisect points me to this commit:

commit fa2c14676c7c6f3115dd4d9b2a4cc3b35c3ad2a2

Author: Tom Rini <[email protected]>
Date:   Sat Feb 10 16:54:38 2018 -0500

configs: Re-sync with CONFIG_DISTRO_DEFAULTS

A number of platforms include config_distro_defaults.h but do not enable CONFIG_DISTRO_DEFAULTS. As they plainly intended to, set that flag and re-sync config files.

Quoted 6 lines

Doing a revert of the above commit shrinks the SPL back down to ~7 kiB.

Dinh

It looks like the enablement of CONFIG_DISTRO_DEFAULTS, enables these configs:

CONFIG_ISO_PARTITION=y
CONFIG_SPL_ISO_PARTITION=y
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_SPL_AMIGA_PARTITION is not set
CONFIG_EFI_PARTITION=y
CONFIG_EFI_PARTITION_ENTRIES_NUMBERS=128
CONFIG_EFI_PARTITION_ENTRIES_OFF=0
CONFIG_SPL_EFI_PARTITION=y
CONFIG_PARTITION_UUIDS=y
CONFIG_SPL_PARTITION_UUIDS=y
# CONFIG_PARTITION_TYPE_GUID is not set

Which is contributing to the SPL growth.

Quoted 8 lines
Quoted 6 lines

Turning the following config options off subtracts 7k from the SPL:

(quoted diff) +2 -0
+# CONFIG_SPL_ISO_PARTITION is not set
+# CONFIG_SPL_EFI_PARTITION is not set

Not sure if these are needed?

IMO not on SoCFPGA. Also CCing Tom.

Yes, all of those options are part of CONFIG_DISTRO_DEFAULTS and are needed so that booting from various distro media works.

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20180411/3d778fd9/attachment.sig>
#11 lore raw
Quoted 63 lines · Tom Rini
Quoted 8 lines · Marek Vasut

On 04/11/2018 04:52 AM, Dinh Nguyen wrote:
[...]

Quoted 5 lines
Quoted 5 lines
Quoted 5 lines
Quoted 5 lines

u-boot$ git reset --hard v2018.01 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f3dd87e0b9 Prepare v2018.01
-rw-r--r-- 1 marex marex 52902 Apr 11 00:34 spl/u-boot-spl.bin

Quoted 8 lines
Quoted 8 lines
Quoted 8 lines
Quoted 8 lines
Quoted 8 lines

u-boot$ git reset --hard v2018.03 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f95ab1fb6e Prepare v2018.03
-rw-r--r-- 1 marex marex 59706 Apr 11 00:34 spl/u-boot-spl.bin

Try bisecting out the commit which caused this 7 kiB growth between 2018.01 and 2018.03 . Even those 53 kiB are quite borderline, but it was at 53 kiB for a while (2017.05 is also ~53 kiB)

Do you have a size constraint and are not setting the correct CONFIG options so that it becomes a build failure?

Quoted 42 lines
Quoted 42 lines
Quoted 34 lines
Quoted 12 lines

Doing the bisect points me to this commit:

commit fa2c14676c7c6f3115dd4d9b2a4cc3b35c3ad2a2

Author: Tom Rini <[email protected]>
Date:   Sat Feb 10 16:54:38 2018 -0500

configs: Re-sync with CONFIG_DISTRO_DEFAULTS

A number of platforms include config_distro_defaults.h but do not enable CONFIG_DISTRO_DEFAULTS. As they plainly intended to, set that flag and re-sync config files.

Quoted 6 lines

Doing a revert of the above commit shrinks the SPL back down to ~7 kiB.

Dinh

It looks like the enablement of CONFIG_DISTRO_DEFAULTS, enables these configs:

CONFIG_ISO_PARTITION=y
CONFIG_SPL_ISO_PARTITION=y
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_SPL_AMIGA_PARTITION is not set
CONFIG_EFI_PARTITION=y
CONFIG_EFI_PARTITION_ENTRIES_NUMBERS=128
CONFIG_EFI_PARTITION_ENTRIES_OFF=0
CONFIG_SPL_EFI_PARTITION=y
CONFIG_PARTITION_UUIDS=y
CONFIG_SPL_PARTITION_UUIDS=y
# CONFIG_PARTITION_TYPE_GUID is not set

Quoted 2 lines

Which is contributing to the SPL growth.

Turning the following config options off subtracts 7k from the SPL:

(quoted diff) +2 -0
+# CONFIG_SPL_ISO_PARTITION is not set
+# CONFIG_SPL_EFI_PARTITION is not set
Quoted 6 lines
Quoted 3 lines
Quoted 1 line

Not sure if these are needed?

IMO not on SoCFPGA. Also CCing Tom.

Yes, all of those options are part of CONFIG_DISTRO_DEFAULTS and are needed so that booting from various distro media works.

In SPL on boards which usually boot from SDMMC or QSPI NOR ? How is EFI or ISO partition needed there ?

Signature · 2 lines
Best regards,
Marek Vasut
#12 lore raw
Quoted 61 lines · Marek Vasut
Quoted 60 lines · Tom Rini
Quoted 8 lines · Marek Vasut

On 04/11/2018 04:52 AM, Dinh Nguyen wrote:
[...]

Quoted 5 lines
Quoted 5 lines
Quoted 5 lines
Quoted 5 lines

u-boot$ git reset --hard v2018.01 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f3dd87e0b9 Prepare v2018.01
-rw-r--r-- 1 marex marex 52902 Apr 11 00:34 spl/u-boot-spl.bin

Quoted 8 lines
Quoted 8 lines
Quoted 8 lines
Quoted 8 lines
Quoted 8 lines

u-boot$ git reset --hard v2018.03 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f95ab1fb6e Prepare v2018.03
-rw-r--r-- 1 marex marex 59706 Apr 11 00:34 spl/u-boot-spl.bin

Try bisecting out the commit which caused this 7 kiB growth between 2018.01 and 2018.03 . Even those 53 kiB are quite borderline, but it was at 53 kiB for a while (2017.05 is also ~53 kiB)

Do you have a size constraint and are not setting the correct CONFIG options so that it becomes a build failure?

Quoted 40 lines
Quoted 40 lines
Quoted 33 lines
Quoted 12 lines

Doing the bisect points me to this commit:

commit fa2c14676c7c6f3115dd4d9b2a4cc3b35c3ad2a2

Author: Tom Rini <[email protected]>
Date:   Sat Feb 10 16:54:38 2018 -0500

configs: Re-sync with CONFIG_DISTRO_DEFAULTS

A number of platforms include config_distro_defaults.h but do not enable CONFIG_DISTRO_DEFAULTS. As they plainly intended to, set that flag and re-sync config files.

Quoted 6 lines

Doing a revert of the above commit shrinks the SPL back down to ~7 kiB.

Dinh

It looks like the enablement of CONFIG_DISTRO_DEFAULTS, enables these configs:

CONFIG_ISO_PARTITION=y
CONFIG_SPL_ISO_PARTITION=y
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_SPL_AMIGA_PARTITION is not set
CONFIG_EFI_PARTITION=y
CONFIG_EFI_PARTITION_ENTRIES_NUMBERS=128
CONFIG_EFI_PARTITION_ENTRIES_OFF=0
CONFIG_SPL_EFI_PARTITION=y
CONFIG_PARTITION_UUIDS=y
CONFIG_SPL_PARTITION_UUIDS=y
# CONFIG_PARTITION_TYPE_GUID is not set

Quoted 2 lines

Which is contributing to the SPL growth.

Turning the following config options off subtracts 7k from the SPL:

(quoted diff) +2 -0
+# CONFIG_SPL_ISO_PARTITION is not set
+# CONFIG_SPL_EFI_PARTITION is not set
Quoted 6 lines
Quoted 4 lines
Quoted 2 lines
Quoted 1 line

Not sure if these are needed?

IMO not on SoCFPGA. Also CCing Tom.

Yes, all of those options are part of CONFIG_DISTRO_DEFAULTS and are needed so that booting from various distro media works.

In SPL on boards which usually boot from SDMMC or QSPI NOR ? How is EFI or ISO partition needed there ?

I don't think ISO partitioning is needed in SPL. However, for GPT I'm not 100% sure. People tend to go with GPT more often than not these days
- and to be able to fetch U-Boot proper from a GPT partition may make sense.

How much reduction do you get when you only disable CONFIG_SPL_ISO_PARTITION?

Alex

#13 lore raw
Quoted 82 lines · Alexander Graf
Quoted 73 lines · Marek Vasut
Quoted 71 lines · Tom Rini
Quoted 14 lines · Marek Vasut

On 04/11/2018 04:52 AM, Dinh Nguyen wrote:
[...]

Quoted 10 lines
Quoted 10 lines
Quoted 10 lines
Quoted 10 lines

u-boot$ git reset --hard v2018.01 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f3dd87e0b9 Prepare v2018.01
-rw-r--r-- 1 marex marex 52902 Apr 11 00:34 spl/u-boot-spl.bin

u-boot$ git reset --hard v2018.03 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f95ab1fb6e Prepare v2018.03
-rw-r--r-- 1 marex marex 59706 Apr 11 00:34 spl/u-boot-spl.bin

Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines

Try bisecting out the commit which caused this 7 kiB growth between 2018.01 and 2018.03 . Even those 53 kiB are quite borderline, but it was
at 53 kiB for a while (2017.05 is also ~53 kiB)

Do you have a size constraint and are not setting the correct CONFIG options so that it becomes a build failure?

Quoted 46 lines
Quoted 43 lines
Quoted 36 lines
Quoted 14 lines

Doing the bisect points me to this commit:

commit fa2c14676c7c6f3115dd4d9b2a4cc3b35c3ad2a2

Author: Tom Rini <[email protected]>
Date:   Sat Feb 10 16:54:38 2018 -0500

configs: Re-sync with CONFIG_DISTRO_DEFAULTS

A number of platforms include config_distro_defaults.h but do
not enable
CONFIG_DISTRO_DEFAULTS. As they plainly intended to, set that
flag and
re-sync config files.

Quoted 7 lines

Doing a revert of the above commit shrinks the SPL back down to ~7 kiB.

Dinh

It looks like the enablement of CONFIG_DISTRO_DEFAULTS, enables these configs:

CONFIG_ISO_PARTITION=y
CONFIG_SPL_ISO_PARTITION=y
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_SPL_AMIGA_PARTITION is not set
CONFIG_EFI_PARTITION=y
CONFIG_EFI_PARTITION_ENTRIES_NUMBERS=128
CONFIG_EFI_PARTITION_ENTRIES_OFF=0
CONFIG_SPL_EFI_PARTITION=y
CONFIG_PARTITION_UUIDS=y
CONFIG_SPL_PARTITION_UUIDS=y
# CONFIG_PARTITION_TYPE_GUID is not set

Quoted 2 lines

Which is contributing to the SPL growth.

Turning the following config options off subtracts 7k from the SPL:

(quoted diff) +2 -0
+# CONFIG_SPL_ISO_PARTITION is not set
+# CONFIG_SPL_EFI_PARTITION is not set
Quoted 1 line

Not sure if these are needed?

IMO not on SoCFPGA. Also CCing Tom.

Quoted 5 lines
Quoted 2 lines

Yes, all of those options are part of CONFIG_DISTRO_DEFAULTS and are needed so that booting from various distro media works.

In SPL on boards which usually boot from SDMMC or QSPI NOR ? How is EFI or ISO partition needed there ?

Quoted 7 lines

I don't think ISO partitioning is needed in SPL. However, for GPT I'm not 100% sure. People tend to go with GPT more often than not these days - and to be able to fetch U-Boot proper from a GPT partition may make sense.

How much reduction do you get when you only disable CONFIG_SPL_ISO_PARTITION?

~3 kiB

Dinh

#14 lore raw
Quoted 87 lines · Dinh Nguyen
Quoted 86 lines · Alexander Graf
Quoted 73 lines · Marek Vasut
Quoted 71 lines · Tom Rini
Quoted 14 lines · Marek Vasut

On 04/11/2018 04:52 AM, Dinh Nguyen wrote:
[...]

Quoted 10 lines
Quoted 10 lines
Quoted 10 lines
Quoted 10 lines

u-boot$ git reset --hard v2018.01 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f3dd87e0b9 Prepare v2018.01
-rw-r--r-- 1 marex marex 52902 Apr 11 00:34 spl/u-boot-spl.bin

u-boot$ git reset --hard v2018.03 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f95ab1fb6e Prepare v2018.03
-rw-r--r-- 1 marex marex 59706 Apr 11 00:34 spl/u-boot-spl.bin

Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines

Try bisecting out the commit which caused this 7 kiB growth between 2018.01 and 2018.03 . Even those 53 kiB are quite borderline, but it was
at 53 kiB for a while (2017.05 is also ~53 kiB)

Do you have a size constraint and are not setting the correct CONFIG options so that it becomes a build failure?

Quoted 46 lines
Quoted 43 lines
Quoted 36 lines
Quoted 14 lines

Doing the bisect points me to this commit:

commit fa2c14676c7c6f3115dd4d9b2a4cc3b35c3ad2a2

Author: Tom Rini <[email protected]>
Date:   Sat Feb 10 16:54:38 2018 -0500

configs: Re-sync with CONFIG_DISTRO_DEFAULTS

A number of platforms include config_distro_defaults.h but do
not enable
CONFIG_DISTRO_DEFAULTS. As they plainly intended to, set that
flag and
re-sync config files.

Quoted 7 lines

Doing a revert of the above commit shrinks the SPL back down to ~7 kiB.

Dinh

It looks like the enablement of CONFIG_DISTRO_DEFAULTS, enables these configs:

CONFIG_ISO_PARTITION=y
CONFIG_SPL_ISO_PARTITION=y
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_SPL_AMIGA_PARTITION is not set
CONFIG_EFI_PARTITION=y
CONFIG_EFI_PARTITION_ENTRIES_NUMBERS=128
CONFIG_EFI_PARTITION_ENTRIES_OFF=0
CONFIG_SPL_EFI_PARTITION=y
CONFIG_PARTITION_UUIDS=y
CONFIG_SPL_PARTITION_UUIDS=y
# CONFIG_PARTITION_TYPE_GUID is not set

Quoted 2 lines

Which is contributing to the SPL growth.

Turning the following config options off subtracts 7k from the SPL:

(quoted diff) +2 -0
+# CONFIG_SPL_ISO_PARTITION is not set
+# CONFIG_SPL_EFI_PARTITION is not set
Quoted 1 line

Not sure if these are needed?

IMO not on SoCFPGA. Also CCing Tom.

Quoted 5 lines
Quoted 2 lines

Yes, all of those options are part of CONFIG_DISTRO_DEFAULTS and are needed so that booting from various distro media works.

In SPL on boards which usually boot from SDMMC or QSPI NOR ? How is EFI or ISO partition needed there ?

I don't think ISO partitioning is needed in SPL. However, for GPT I'm not 100% sure. People tend to go with GPT more often than not these days - and to be able to fetch U-Boot proper from a GPT partition may make sense.

Quoted 5 lines
Quoted 3 lines

How much reduction do you get when you only disable CONFIG_SPL_ISO_PARTITION?

~3 kiB

Ok, so that's not enough to get us back to reasonable space, but it's at least a step in the right direction. I sent a patch to disable CONFIG_SPL_ISO_PARTITION for everyone by default ;).

If we remove all printfs from part_efi.c we could for example gain another 1.5kb. But I'm not sure that's worth it - and if feels like we're shaving on the wrong end at this point.

Is there any other big chunk in there that wastes space?

Also, Marek, could you maybe tell the linker that we only have 64-8kb space available, so it fails compilation? That way we could catch these issues in Travis already.

Alex

#15 lore raw
Quoted 100 lines · Alexander Graf
Quoted 87 lines · Dinh Nguyen
Quoted 86 lines · Alexander Graf
Quoted 73 lines · Marek Vasut
Quoted 71 lines · Tom Rini
Quoted 14 lines · Marek Vasut

On 04/11/2018 04:52 AM, Dinh Nguyen wrote:
[...]

Quoted 10 lines
Quoted 10 lines
Quoted 10 lines
Quoted 10 lines

u-boot$ git reset --hard v2018.01 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f3dd87e0b9 Prepare v2018.01
-rw-r--r-- 1 marex marex 52902 Apr 11 00:34 spl/u-boot-spl.bin

u-boot$ git reset --hard v2018.03 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f95ab1fb6e Prepare v2018.03
-rw-r--r-- 1 marex marex 59706 Apr 11 00:34 spl/u-boot-spl.bin

Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines

Try bisecting out the commit which caused this 7 kiB growth between 2018.01 and 2018.03 . Even those 53 kiB are quite borderline, but it was
at 53 kiB for a while (2017.05 is also ~53 kiB)

Do you have a size constraint and are not setting the correct CONFIG options so that it becomes a build failure?

Quoted 46 lines
Quoted 43 lines
Quoted 36 lines
Quoted 14 lines

Doing the bisect points me to this commit:

commit fa2c14676c7c6f3115dd4d9b2a4cc3b35c3ad2a2

Author: Tom Rini <[email protected]>
Date:   Sat Feb 10 16:54:38 2018 -0500

configs: Re-sync with CONFIG_DISTRO_DEFAULTS

A number of platforms include config_distro_defaults.h but do
not enable
CONFIG_DISTRO_DEFAULTS. As they plainly intended to, set that
flag and
re-sync config files.

Quoted 7 lines

Doing a revert of the above commit shrinks the SPL back down to ~7 kiB.

Dinh

It looks like the enablement of CONFIG_DISTRO_DEFAULTS, enables these configs:

CONFIG_ISO_PARTITION=y
CONFIG_SPL_ISO_PARTITION=y
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_SPL_AMIGA_PARTITION is not set
CONFIG_EFI_PARTITION=y
CONFIG_EFI_PARTITION_ENTRIES_NUMBERS=128
CONFIG_EFI_PARTITION_ENTRIES_OFF=0
CONFIG_SPL_EFI_PARTITION=y
CONFIG_PARTITION_UUIDS=y
CONFIG_SPL_PARTITION_UUIDS=y
# CONFIG_PARTITION_TYPE_GUID is not set

Quoted 2 lines

Which is contributing to the SPL growth.

Turning the following config options off subtracts 7k from the SPL:

(quoted diff) +2 -0
+# CONFIG_SPL_ISO_PARTITION is not set
+# CONFIG_SPL_EFI_PARTITION is not set
Quoted 1 line

Not sure if these are needed?

IMO not on SoCFPGA. Also CCing Tom.

Quoted 5 lines
Quoted 2 lines

Yes, all of those options are part of CONFIG_DISTRO_DEFAULTS and are needed so that booting from various distro media works.

In SPL on boards which usually boot from SDMMC or QSPI NOR ? How is EFI or ISO partition needed there ?

I don't think ISO partitioning is needed in SPL. However, for GPT I'm not 100% sure. People tend to go with GPT more often than not these days - and to be able to fetch U-Boot proper from a GPT partition may make sense.

Quoted 5 lines
Quoted 3 lines

How much reduction do you get when you only disable CONFIG_SPL_ISO_PARTITION?

~3 kiB

Ok, so that's not enough to get us back to reasonable space, but it's at least a step in the right direction. I sent a patch to disable CONFIG_SPL_ISO_PARTITION for everyone by default ;).

Quoted 5 lines

If we remove all printfs from part_efi.c we could for example gain another 1.5kb. But I'm not sure that's worth it - and if feels like we're shaving on the wrong end at this point.

Is there any other big chunk in there that wastes space?

The entire EFI support, which is never used on SoCFPGA to my knowledge, esp. in SPL .

Quoted 3 lines

Also, Marek, could you maybe tell the linker that we only have 64-8kb space available, so it fails compilation? That way we could catch these issues in Travis already.

Dinh, can you send a patch for that ?

Signature · 2 lines
Best regards,
Marek Vasut
#16 lore raw
Quoted 105 lines

Am 12.04.2018 um 10:37 schrieb Marek Vasut <[email protected]>:

Quoted 101 lines · Alexander Graf
Quoted 90 lines · Dinh Nguyen
Quoted 87 lines · Alexander Graf
Quoted 74 lines · Marek Vasut
Quoted 73 lines · Tom Rini
Quoted 16 lines · Marek Vasut

On 04/11/2018 04:52 AM, Dinh Nguyen wrote:
[...]

Quoted 10 lines
Quoted 10 lines
Quoted 10 lines
Quoted 10 lines

u-boot$ git reset --hard v2018.01 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f3dd87e0b9 Prepare v2018.01
-rw-r--r-- 1 marex marex 52902 Apr 11 00:34 spl/u-boot-spl.bin

u-boot$ git reset --hard v2018.03 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f95ab1fb6e Prepare v2018.03
-rw-r--r-- 1 marex marex 59706 Apr 11 00:34 spl/u-boot-spl.bin

Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines

Try bisecting out the commit which caused this 7 kiB growth between 2018.01 and 2018.03 . Even those 53 kiB are quite borderline, but it was
at 53 kiB for a while (2017.05 is also ~53 kiB)

Do you have a size constraint and are not setting the correct CONFIG options so that it becomes a build failure?

Quoted 46 lines
Quoted 43 lines
Quoted 36 lines
Quoted 14 lines

Doing the bisect points me to this commit:

commit fa2c14676c7c6f3115dd4d9b2a4cc3b35c3ad2a2

Author: Tom Rini <[email protected]>
Date:   Sat Feb 10 16:54:38 2018 -0500

configs: Re-sync with CONFIG_DISTRO_DEFAULTS

A number of platforms include config_distro_defaults.h but do
not enable
CONFIG_DISTRO_DEFAULTS. As they plainly intended to, set that
flag and
re-sync config files.

Quoted 7 lines

Doing a revert of the above commit shrinks the SPL back down to ~7 kiB.

Dinh

It looks like the enablement of CONFIG_DISTRO_DEFAULTS, enables these configs:

CONFIG_ISO_PARTITION=y
CONFIG_SPL_ISO_PARTITION=y
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_SPL_AMIGA_PARTITION is not set
CONFIG_EFI_PARTITION=y
CONFIG_EFI_PARTITION_ENTRIES_NUMBERS=128
CONFIG_EFI_PARTITION_ENTRIES_OFF=0
CONFIG_SPL_EFI_PARTITION=y
CONFIG_PARTITION_UUIDS=y
CONFIG_SPL_PARTITION_UUIDS=y
# CONFIG_PARTITION_TYPE_GUID is not set

Quoted 2 lines

Which is contributing to the SPL growth.

Turning the following config options off subtracts 7k from the SPL:

(quoted diff) +2 -0
+# CONFIG_SPL_ISO_PARTITION is not set
+# CONFIG_SPL_EFI_PARTITION is not set
Quoted 1 line

Not sure if these are needed?

IMO not on SoCFPGA. Also CCing Tom.

Quoted 5 lines
Quoted 2 lines

Yes, all of those options are part of CONFIG_DISTRO_DEFAULTS and are needed so that booting from various distro media works.

In SPL on boards which usually boot from SDMMC or QSPI NOR ? How is EFI or ISO partition needed there ?

I don't think ISO partitioning is needed in SPL. However, for GPT I'm not 100% sure. People tend to go with GPT more often than not these days - and to be able to fetch U-Boot proper from a GPT partition may make sense.

Quoted 5 lines
Quoted 3 lines

How much reduction do you get when you only disable CONFIG_SPL_ISO_PARTITION?

~3 kiB

Ok, so that's not enough to get us back to reasonable space, but it's at least a step in the right direction. I sent a patch to disable CONFIG_SPL_ISO_PARTITION for everyone by default ;).

Quoted 8 lines
Quoted 5 lines

If we remove all printfs from part_efi.c we could for example gain another 1.5kb. But I'm not sure that's worth it - and if feels like we're shaving on the wrong end at this point.

Is there any other big chunk in there that wastes space?

The entire EFI support, which is never used on SoCFPGA to my knowledge, esp. in SPL .

None of it is enabled in SPL :). The „efi partition“ option is a misnomer - it really just enables GPT partition table support which are widely in use with Android for example.

Alex

#17 lore raw
Quoted 109 lines · Alexander Graf
Quoted 109 lines

Am 12.04.2018 um 10:37 schrieb Marek Vasut <[email protected]>:

Quoted 105 lines · Alexander Graf
Quoted 90 lines · Dinh Nguyen
Quoted 87 lines · Alexander Graf
Quoted 74 lines · Marek Vasut
Quoted 73 lines · Tom Rini
Quoted 16 lines · Marek Vasut

On 04/11/2018 04:52 AM, Dinh Nguyen wrote:
[...]

Quoted 10 lines
Quoted 10 lines
Quoted 10 lines
Quoted 10 lines

u-boot$ git reset --hard v2018.01 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f3dd87e0b9 Prepare v2018.01
-rw-r--r-- 1 marex marex 52902 Apr 11 00:34 spl/u-boot-spl.bin

u-boot$ git reset --hard v2018.03 ; bu socfpga_cyclone5 ; ls -la spl/u-boot-spl.bin
HEAD is now at f95ab1fb6e Prepare v2018.03
-rw-r--r-- 1 marex marex 59706 Apr 11 00:34 spl/u-boot-spl.bin

Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines

Try bisecting out the commit which caused this 7 kiB growth between 2018.01 and 2018.03 . Even those 53 kiB are quite borderline, but it was
at 53 kiB for a while (2017.05 is also ~53 kiB)

Do you have a size constraint and are not setting the correct CONFIG options so that it becomes a build failure?

Quoted 46 lines
Quoted 43 lines
Quoted 36 lines
Quoted 14 lines

Doing the bisect points me to this commit:

commit fa2c14676c7c6f3115dd4d9b2a4cc3b35c3ad2a2

Author: Tom Rini <[email protected]>
Date:   Sat Feb 10 16:54:38 2018 -0500

configs: Re-sync with CONFIG_DISTRO_DEFAULTS

A number of platforms include config_distro_defaults.h but do
not enable
CONFIG_DISTRO_DEFAULTS. As they plainly intended to, set that
flag and
re-sync config files.

Quoted 7 lines

Doing a revert of the above commit shrinks the SPL back down to ~7 kiB.

Dinh

It looks like the enablement of CONFIG_DISTRO_DEFAULTS, enables these configs:

CONFIG_ISO_PARTITION=y
CONFIG_SPL_ISO_PARTITION=y
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_SPL_AMIGA_PARTITION is not set
CONFIG_EFI_PARTITION=y
CONFIG_EFI_PARTITION_ENTRIES_NUMBERS=128
CONFIG_EFI_PARTITION_ENTRIES_OFF=0
CONFIG_SPL_EFI_PARTITION=y
CONFIG_PARTITION_UUIDS=y
CONFIG_SPL_PARTITION_UUIDS=y
# CONFIG_PARTITION_TYPE_GUID is not set

Quoted 2 lines

Which is contributing to the SPL growth.

Turning the following config options off subtracts 7k from the SPL:

(quoted diff) +2 -0
+# CONFIG_SPL_ISO_PARTITION is not set
+# CONFIG_SPL_EFI_PARTITION is not set
Quoted 1 line

Not sure if these are needed?

IMO not on SoCFPGA. Also CCing Tom.

Quoted 5 lines
Quoted 2 lines

Yes, all of those options are part of CONFIG_DISTRO_DEFAULTS and are needed so that booting from various distro media works.

In SPL on boards which usually boot from SDMMC or QSPI NOR ? How is EFI or ISO partition needed there ?

I don't think ISO partitioning is needed in SPL. However, for GPT I'm not 100% sure. People tend to go with GPT more often than not these days - and to be able to fetch U-Boot proper from a GPT partition may make sense.

Quoted 5 lines
Quoted 3 lines

How much reduction do you get when you only disable CONFIG_SPL_ISO_PARTITION?

~3 kiB

Ok, so that's not enough to get us back to reasonable space, but it's at least a step in the right direction. I sent a patch to disable CONFIG_SPL_ISO_PARTITION for everyone by default ;).

If we remove all printfs from part_efi.c we could for example gain another 1.5kb. But I'm not sure that's worth it - and if feels like we're shaving on the wrong end at this point.

Quoted 6 lines
Quoted 4 lines
Quoted 1 line

Is there any other big chunk in there that wastes space?

The entire EFI support, which is never used on SoCFPGA to my knowledge, esp. in SPL .

None of it is enabled in SPL :). The „efi partition“ option is a misnomer - it really just enables GPT partition table support which are widely in use with Android for example.

I suspect we can disable that, since SoCFPGA boots from this a2 partition type on MBR only (bootrom limitation).

Signature · 2 lines
Best regards,
Marek Vasut
#18 lore raw
Quoted 102 lines · Marek Vasut
Quoted 101 lines · Alexander Graf
Quoted 101 lines

Am 12.04.2018 um 10:37 schrieb Marek Vasut <[email protected]>:

Quoted 98 lines · Alexander Graf
Quoted 81 lines · Dinh Nguyen
Quoted 78 lines · Alexander Graf
Quoted 75 lines · Marek Vasut
Quoted 65 lines · Tom Rini
Quoted 16 lines · Marek Vasut

On 04/11/2018 04:52 AM, Dinh Nguyen wrote:
[...]

Quoted 10 lines
Quoted 10 lines
Quoted 10 lines
Quoted 10 lines

u-boot$ git reset --hard v2018.01 ; bu socfpga_cyclone5 ; ls -la
spl/u-boot-spl.bin
HEAD is now at f3dd87e0b9 Prepare v2018.01
-rw-r--r-- 1 marex marex 52902 Apr 11 00:34 spl/u-boot-spl.bin

u-boot$ git reset --hard v2018.03 ; bu socfpga_cyclone5 ; ls -la
spl/u-boot-spl.bin
HEAD is now at f95ab1fb6e Prepare v2018.03
-rw-r--r-- 1 marex marex 59706 Apr 11 00:34 spl/u-boot-spl.bin

Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines

Try bisecting out the commit which caused this 7 kiB growth between
2018.01 and 2018.03 . Even those 53 kiB are quite borderline, but it
was
at 53 kiB for a while (2017.05 is also ~53 kiB)

Do you have a size constraint and are not setting the correct CONFIG options so that it becomes a build failure?

Quoted 40 lines
Quoted 40 lines
Quoted 36 lines
Quoted 14 lines

Doing the bisect points me to this commit:

commit fa2c14676c7c6f3115dd4d9b2a4cc3b35c3ad2a2

Author: Tom Rini <[email protected]>
Date:   Sat Feb 10 16:54:38 2018 -0500

configs: Re-sync with CONFIG_DISTRO_DEFAULTS

A number of platforms include config_distro_defaults.h but do
not enable
CONFIG_DISTRO_DEFAULTS. As they plainly intended to, set that
flag and
re-sync config files.

Quoted 7 lines

Doing a revert of the above commit shrinks the SPL back down to ~7 kiB.

Dinh

It looks like the enablement of CONFIG_DISTRO_DEFAULTS, enables these configs:

CONFIG_ISO_PARTITION=y
CONFIG_SPL_ISO_PARTITION=y
# CONFIG_AMIGA_PARTITION is not set
# CONFIG_SPL_AMIGA_PARTITION is not set
CONFIG_EFI_PARTITION=y
CONFIG_EFI_PARTITION_ENTRIES_NUMBERS=128
CONFIG_EFI_PARTITION_ENTRIES_OFF=0
CONFIG_SPL_EFI_PARTITION=y
CONFIG_PARTITION_UUIDS=y
CONFIG_SPL_PARTITION_UUIDS=y
# CONFIG_PARTITION_TYPE_GUID is not set

Quoted 2 lines

Which is contributing to the SPL growth.

Turning the following config options off subtracts 7k from the SPL:

Quoted 7 lines
Quoted 5 lines
Quoted 4 lines
(quoted diff) +2 -0
+# CONFIG_SPL_ISO_PARTITION is not set
+# CONFIG_SPL_EFI_PARTITION is not set

Not sure if these are needed?

IMO not on SoCFPGA. Also CCing Tom.

Yes, all of those options are part of CONFIG_DISTRO_DEFAULTS and are needed so that booting from various distro media works.

In SPL on boards which usually boot from SDMMC or QSPI NOR ? How is EFI or ISO partition needed there ?

Quoted 8 lines
Quoted 7 lines

I don't think ISO partitioning is needed in SPL. However, for GPT I'm not 100% sure. People tend to go with GPT more often than not these days - and to be able to fetch U-Boot proper from a GPT partition may make sense.

How much reduction do you get when you only disable CONFIG_SPL_ISO_PARTITION?

~3 kiB

Ok, so that's not enough to get us back to reasonable space, but it's at least a step in the right direction. I sent a patch to disable CONFIG_SPL_ISO_PARTITION for everyone by default ;).

If we remove all printfs from part_efi.c we could for example gain another 1.5kb. But I'm not sure that's worth it - and if feels like we're shaving on the wrong end at this point.

Quoted 6 lines
Quoted 4 lines
Quoted 3 lines
Quoted 1 line

Is there any other big chunk in there that wastes space?

The entire EFI support, which is never used on SoCFPGA to my knowledge, esp. in SPL .

None of it is enabled in SPL :). The „efi partition“ option is a misnomer - it really just enables GPT partition table support which are widely in use with Android for example.

I suspect we can disable that, since SoCFPGA boots from this a2 partition type on MBR only (bootrom limitation).

That's a very good point. If the bootrom does not support GPT, there is basically no point in enabling it in SPL, I agree.

Alex

#19 lore raw

On 04/12/2018 11:42 AM, Alexander Graf wrote:
[...]

Quoted 9 lines
Quoted 5 lines
Quoted 3 lines

None of it is enabled in SPL :). The „efi partition“ option is a misnomer - it really just enables GPT partition table support which are widely in use with Android for example.

I suspect we can disable that, since SoCFPGA boots from this a2 partition type on MBR only (bootrom limitation).

That's a very good point. If the bootrom does not support GPT, there is basically no point in enabling it in SPL, I agree.

Patch please !

Signature · 2 lines
Best regards,
Marek Vasut
#20 lore raw
Quoted 5 lines · Marek Vasut

On 04/12/2018 11:42 AM, Alexander Graf wrote:
[...]

Quoted 3 lines
Quoted 3 lines
Quoted 3 lines

None of it is enabled in SPL :). The „efi partition“ option is a misnomer - it really just enables GPT partition table support which are widely in use with Android for example.

Quoted 8 lines
Quoted 6 lines
Quoted 2 lines

I suspect we can disable that, since SoCFPGA boots from this a2 partition type on MBR only (bootrom limitation).

That's a very good point. If the bootrom does not support GPT, there is basically no point in enabling it in SPL, I agree.

Patch please !

Ok...Let met get to it! Thanks for the help in debugging this issue?

Dinh