U-Boot

From Pyra Wiki
Revision as of 02:55, 15 September 2024 by Pimaster (talk | contribs) (Initial instructions for compiling)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Compiling Uboot

One off tasks.

Get the source code

Most code is hosted on git. You will need git installed.

git clone `URL`

Some known repositories:

  • http:// dev.pyra-handheld.com/kernel/pyra-uboot.git/
  • http:// dev.pyra-handheld.com/daveshah/pyra-uboot.git/
  • http:// dev.pyra-handheld.com/pimaster/pyra-uboot.git/

Since development on uboot is a bit on the testing/feeling stage, you might have to switch to a specific branch. git switch `tag name` To see branches: git branch

Get a configuration

Uboot can bring up many boards. You need a configuration that is designed to bring up an omap board.

make omap5_pyra_4gb_defconfig

You can then make minor configuration changes with make menuconfig Changing ARM architecture > OMAP5 board select from

  • Pyra Handheld with LC15 CPU
  • Pyra Handheld with OMAP5

This switches between some board code that was written by goldelico to dragonbox. Long term there should be no difference but whilst we are testing, more code gets changed on the dragonbox side. Want to make sure you're compiling something you can edit? Open `include/configs/omap5_pyra.h` and edit the CONFIG_EXTRA_ENV_SETTINGS. Add an "echo This is my custom uboot" or something creative.

Compile

Easy bit.

make

Takes about 3 minutes to compile on the Pyra first time. Small changes afterwards should only take 15-30 seconds.

Cross compiling might work with:

CROSS_COMPILE=arm-linux-gnuabihf make

Install Uboot

The easy way is to copy MLO and u-boot.img to the root of a fat partition. On the Pyra this is good fun because you can put it on an SD card that is in the left slot. If your boot loader doesn't work, you can pop out the SD card and use the boot loader that is installed on the MMC.