[U-Boot] [linux-sunxi] Re: Announcing easy Linux installation on Allwinner devices for non-geek users

Michal Suchanek hramrach at gmail.com
Thu Jan 22 16:22:30 CET 2015


On 22 January 2015 at 14:20, Hans de Goede <hdegoede at redhat.com> wrote:
> Hi Siarhei,
>
> See the bottom for my reply to all this.
>
>
> On 22-01-15 13:49, Siarhei Siamashka wrote:

This universal u-boot would be awesome and it looks like it's getting
close enough.

>
>
> You're welcome, and thank you too for all your work on sunxi support,
> especially the sun4i/sun5i/sun7i dram work.
>
> So about the above mail, I've a number of things to say:
>
> 1) I think presenting the user with a list of devices to choose is a good
> idea,
> but I also think your solution is over complicated.
>
> The user will likely use a PC to download and write the image to the sdcard,
> why not simply provide a simple app on the PC side to select the board and
> write the correct u-boot binary ? I had a little bash script doing just that
> for the Fedora images, granted this requires the user to have Linux, so
> maybe we need someone to get to write a win32 util for this, so that we
> can offer both options ?

A bash script should presumably work on any unix so long as the only
operation needed is to copy/symlink a dtb or script.bin

It requires separate FAT partition for kernel. I am not sure all
distro tools handle installing kernel to FAT flawlessly but I think
it's sometimes used on EFI as well.

>
> To me this seems much more simple, and it will e.g. also work for a23 / a33
> based tablets, which do not have hdmi and are really attractive for little
> hobby projects due to their low price (35-40 usd for a complete tablet).

ok, if you want me to write a windows app for this I can probably do
that. I think there was severe limitation with VB dialog capabilities
but you can always write a GTK app and then just compile it for
Windows or something. You probably would not want something like
copying whole pygtk runtime to the boot partition just to show a menu
so either using windows-native scripting or C is probably preferred.

>
> 2) I would love to see a good fex file parser both the generate u-boot
> defconfig
> files and kernel dts files

That would certainly help, especially with those tablets where the
serial pins are dangling or connected to some random unpowered piece
of hardware like the camera and u-boot gets stuck because there is
noise on the console and it interprets it as the user interrupting the
automatic boot sequence.

>
> 3) As for the whole store info in nand based on sid idea, with the recent
> readonly nand patches posted to the list, which AFAIK do not need any nand
> parameters, we could do one better and read the dram timings from the nand
> for the SPL, and the in real u-boot read and parse script.bin from the nanda
> partition. This is a bit of a wild idea I admit, but it could work, 2
> problems
> with it are:
>
> a) It assume a standard Allwinner android nand contents, so not good for
> devices
> where people want to actually write a normal linux distro to the nand /
> bricked
> devices

It does not have to. The memory parameters are in the boot area AFAIK
which should be same on AW formatted flash and mainline formatted
flash because the BROM reads the bootloader from there. It will have
to distinguish AW boot0 and u-boot SPL, though.

>
> b) Does not work on devices without nand (e.g. some olinuxino-lime models)

You always can (and should) write the parameters on the card. Reading
nand is just one way of detecting them.

>
> c) Does not really help for the kernel, we could generate a dtb on the fly
> on u-boot based on the fex file contents, but that is going to be very
> tricky,
> esp with the dtb files evolving as we start supporting more and more hw
> features
> in the upstream kernel.

The problem with generating the dtb or even just using existing fex
with linux-sunxi is that some default values which can be omitted in
manufacturer fex have to be specified in linux-sunxi fex or dtb.

For one, tablet keys default to on when there is no section for them
and I had to explicitly enable them on my tablets.

Thanks

Michal


More information about the U-Boot mailing list