[Lenny400] Reviewing the Ingenic board initialisation code
paul at boddie.org.uk
Tue Jun 9 01:52:12 CEST 2015
As you might have noticed, I haven't been looking at the jz4730-related
efforts in recent months, but I very recently got back into looking at the
initialisation code for the jz4740 (or rather jz4720, as I have a Ben
NanoNote), being inspired by the following collection of blog articles about
getting code to run on the MIPS Creator CI20 board:
The CI20 bare-metal project
Since the Ben NanoNote has been supported by a U-Boot variant (maybe only
really available via OpenWrt), and since Linux kernel support is also present
(although that doesn't help with things like PLL and SDRAM initialisation), I
thought it might be informative to bring the Ben up without U-Boot using a
minimal amount of code (as opposed to using the entirety of the continuously
changing beast that is U-Boot).
So far, I've managed to make a USB bootable stage 1 initialising the PLL and
SDRAM (as featured in that blog series) and to glue the framebuffer
initialisation code from U-Boot (originally from Ingenic) to a stage 2 payload
in order to show a nice pattern on the screen. Figuring out what the USB boot
mechanism actually does, and what the limitations really are, is pretty
awkward as the blog author found out.
I'm now intending to extend this work to cover the jz4730 and the Letux 400.
It rather looks like the LCD support is mostly the same, and hopefully with
some appropriate settings and some SoC-specific adjustments, I can repeat the
achievement on the Letux. However, I'm using the USB boot mechanism on the
Does anyone know if it is possible to invoke this mode on the Letux, or
whether the bootloader supports a "software" variant?
More information about the Lenny400