RPi4B: modern firmware vs. Device tree loaded to 0x4000 (size 0xbe0c) [fails] vs. to 0x1f0000 (size 0xbd90) [works]?

Mark Millard marklmi at yahoo.com
Mon Oct 12 06:41:24 UTC 2020


On 2020-Oct-11, at 17:23, Mark Millard <marklmi at yahoo.com> wrote:

> On 2020-Oct-11, at 17:13, Mark Millard <marklmi at yahoo.com> wrote:
> 
>>> 
>>> On 2020-Oct-11, at 16:13, Robert Crowston <crowston at protonmail.com> wrote:
>>> 
>>>>> mmc0 is current device
>>>> 
>>>> should not be mmc0 if you boot from USB/SSD
>>> 
>>> I'm still using sd cards.
>>> 
>>> armstub or not has no effect. Seems like a counter is overflowing in the internals of malloc(). Not even when booting, just when interpreting the bootcmd. I tried raising CONFIG_SYS_MALLOC_F_LEN, but it didn't change much. The malloc() code in question is from 2002, so I doubt it's a bug there. I tried rolling back from HEAD to v2020.10. Same problem.
>> 
>> Are you able to look at the content of the boot command, or at least the beginning
>> of it? Does it look reasonable and have the expected termination at the expected
>> place?
>> 
>> The backtrace that you reported involves:
>> 
>>               case '|':
>>                       done_word(dest, ctx);
>>                       if (next=='|') {
>>                               b_getch(input);
>>                               done_pipe(ctx,PIPE_OR);
>> 
>> but having piped commands (|) seems possibly odd for the
>> context. Garbage memory content may be more likely.
>> 
> 
> My wording was poor because the done_pipe is actually for
> || (or) involving the (potential) pipe symbol.

Looking at a "it will boot" context, u-boot's
printenv does report one definition with || involved:

scan_dev_for_boot_part=part list ${devtype} ${devnum} -bootable devplist; env exists devplist || setenv devplist 1; for distro_bootpart in ${devplist}; do if fstype ${devtype} ${devnum}:${distro_bootpart} bootfstype; then run scan_dev_for_boot; fi; done; setenv devplist

So that might be the context for the parse stage associated with
the failure you gave a back-trace for.

===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)



More information about the freebsd-arm mailing list