On Wed, Feb 13, 2019 at 09:13:31PM +0100, Heinrich Schuchardt wrote: > > > On 2/13/19 2:24 PM, Tom Rini wrote: > > On Wed, Feb 13, 2019 at 02:16:12PM +0100, Heinrich Schuchardt wrote: > >> > >> > >> On 2/13/19 1:25 PM, Tom Rini wrote: > >>> On Wed, Feb 13, 2019 at 11:13:19AM +0100, Philipp Tomsich wrote: > >>>> > >>>> > >>>>> On 13.02.2019, at 11:10, David Wu <david...@rock-chips.com> wrote: > >>>>> > >>>>> Hi Philipp, > >>>>> > >>>>> 在 2019/2/12 下午9:54, Philipp Tomsich 写道: > >>>>>>> On 12.02.2019, at 13:38, David Wu <david...@rock-chips.com> wrote: > >>>>>>> > >>>>>>> Hi Philipp, > >>>>>>> > >>>>>>> 在 2019/2/10 上午2:24, Philipp Tomsich 写道: > >>>>>>>> That said, I have been fighting issues from this patchset when > >>>>>>>> trying to read > >>>>>>>> from devices on the i2c0 bus on a RK3399—which had me add a “simple” > >>>>>>>> pinctrl device again, as pulling all the dependencies into the SPL > >>>>>>>> is a pain. > >>>>>>> > >>>>>>> I think you can also add the simple ops if necessary. Full pinctrl > >>>>>>> should only be used at the U-boot stage, or the SPL stage where the > >>>>>>> TPL is available. > >>>>>>> > >>>>>>> For most boards about 3288, there is no need to enable pinctrl at SPL > >>>>>>> stage, such as Tinker board. > >>>>>> Could you check whether TPL_MAX_SIZE and SPL_MAX_SIZE are correct for > >>>>>> the RK3288? If not, please submit a patch. > >>>>> > >>>>> It is correct, 32KB. > >>>> > >>>> Interesting... > >>>> I wonder why the build did not fail then, if SPL became too big. > >>> > >>> This is probably the "we need BOARD_SIZE_CHECK used more widely too" > >>> issue that's come up in other threads. The linker-only check does not > >>> catch the CONFIG_OF_SEPARATE dtb exceeds limit problem as it's > >>> post-link. > >>> > >> > >> This is the error message I currently get for U-Boot 2019.04 when > >> building for the Tinker Board: > >> > >> mkdir -p foo/usr/lib/u-boot/tinker/ > >> denx/tools/mkimage -n rk3288 -T rksd -d denx/spl/u-boot-spl-dtb.bin \ > >> foo/usr/lib/u-boot/tinker/u-boot.img > >> Warning: SPL image is too large (size 0x8800) and will not boot > >> Error: image verification failed > >> cat denx/u-boot-dtb.bin >> foo/usr/lib/u-boot/tinker/u-boot.img > >> cp sd_fusing.sh foo/usr/lib/u-boot/tinker/ > >> > >> @Tom > >> Shouldn't the mkimage step be included in Travis CI testing? > > > > No, mkimage fails for almost every aarch64 target as we don't include > > ATF or the other blobs required to make things bootable. > > BOARD_SIZE_CHECK is where we can confirm that the U-Boot binary isn't > > too large. > > > > Hello Tom, > > BOARD_SIZE_CHECK seems to be about the U-Boot image not about SPL. I
I was possibly being slightly too literal, sorry. We need to adapt and use the "check the resulting final binary is OK size-wise" logic to be available and used everywhere. Given that we're now at I think 3 or 4 different SoCs running into this same exact problem, we really do need to. > guess we need to copy this line to rk3288_common.h: > > include/configs/rk3188_common.h:31: > #define CONFIG_SPL_MAX_SIZE (0x8000 - 0x800) > > But when I insert this line I get no linker error but the size of > denx/spl/u-boot-spl-dtb.bin is still too big. > > Shouldn't count the DTB size be accounted for when doing the > CONFIG_SPL_MAX_SIZE check? > > CONFIG_SPL_MAX_SIZE 30720 bytes > spl/u-boot-spl-nodtb.bin 28932 bytes > spl/u-boot-spl.dtb 4096 bytes > spl/u-boot-spl-dtb.bin 32986 bytes SPL_MAX_SIZE is a linker check and as such will not catch post-linking things, is the problem. We should however make it not be a linker check and instead leverage it with the logic behind BOARD_SIZE_CHECK, thanks! -- Tom
signature.asc
Description: PGP signature
_______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot