u-boot: cannot boot linux kernel despite kernel being less than maximum BOOTM_LEN
The final problem you run in to:
ERROR: new format image overwritten - must RESET the board to recover
is because you've loaded the image in to memory in the same location as the entry point but you need to load it in to memory somewhere else so that U-Boot can unpack the image and put the contents where their load address is set to. Since you have 128MB of memory you should be able to put it at +32 or +64MB from start and then things should work.
u-boot hangs at Uncompressing/Loading Kernel Image
I have limited experience in using FIT, so my observation below could be wrong. Anyhow, it looks to me like the first image of your ftb is being used, which in turn has a configuration which does not include a device tree. You are basically loading a kernel without any information about the hardware (such as where and how to access the uart for the serial console), right? More specifically, I think the kernel needs the "chosen" node (e.g. stdout-path) as described here https://www.kernel.org/doc/Documentation/devicetree/bindings/chosen.txt
I'm in a similar situation (developing a board based on a similar "luton" SoC from Vitesse->Microsemi->Microchip, VSC7425). I'm not having any problems booting linux 5.9 with u-boot 2021.07. Then again, it's not exactly the same hardware nor software.
You could try to move your device tree sub-image into the first image, and replace the first configuration with what is found in the second one.
Can i boot a linux kernel without passing a separate DTB from bootloader?
What you're looking for is in the kernel the ARM_APPENDED_DTB
config option. This will let you include the DTB to use with the platform in the same file as the kernel. This can then be booted the normal way on your platform and the kernel will look and find the included DTB.
Related Topics
Is It Necessary to Flush Write Combine Memory Explicitly by Programmer
Dynamically Pick The User Gui and UId Who's Running Docker at The Host from Entrypoint
Jmp Unexpected Behavior in Shellcode When Next(Skipped) Instruction Is a Variable Definition
Visual Studio - X11: The Display Environment Variable Is Missing
How Does Linux Handles The I/O Permission Bitmap in The Tss Structure
Is It Correct to Use The Rc.Local File to Start a Program When The System Starts
Kernel Module Build Fails: Sys/Types.H: No Such File or Directory
Autostart Javafx Application on Raspberrypi
Mount -T Cifs Works on One Version of Linux But Not Another
Installing a Fully Functional Postgis 2.0 on Ubuntu Linux Geos/Gdal Issues
Making Pairs of Words Based on One Column
List of Synchronous and Asynchronous Linux/Posix Signals
Changing /Proc/Sys/Kernel/Core_Pattern File Inside Docker Container
How to Determine a Tar Archive's Format