Short-form notes on rebuilding the MooresCloud Holiday Lights from scratch and making the lights work.
This is part 2/3, it covers building a custom devicetree blob for the Holiday.
You will need:
- A computer running Ubuntu or ‘Bash on Ubuntu on Windows 10’ (other Linux variants will work, and probably macOS too, but I haven’t tested and documented them)
- My imx23-holiday.dts source file from https://gist.github.com/Froosh/03a13ce2550c2779f46880f7b5ebbd9d [Make sure you download the RAW file to use – I don’t want to link directly to the raw content so I don’t have to update the link if I make revisions…]
- The latest copy of Linux kernel source code from https://kernel.org (linux-4.x.x.tar.xz)
- Install the development tools you’ll need to generate the devicetree blob
sudo apt-get install build-essential gcc-arm-none-eabi
- Unpack the Linux kernel
tar xJf linux-4.x.x.tar.xz cd linux-4.x.x/
- Copy the downloaded imx23-holiday.dts file to arch/arm/boot/dts/imx23-holiday.dts
cp ../imx23-holiday.dts arch/arm/boot/dts/imx23-holiday.dts
- Compile the devicetree source (dts) to a devicetree blob (dtb)
make ARCH=arm CROSS_COMPILE=arm-none-eabi- mxs_defconfig make ARCH=arm CROSS_COMPILE=arm-none-eabi- imx23-holiday.dtb
- Copy the resulting imx23-holiday.dtb file to somewhere you can use it for step 3
cp arch/arm/boot/dts/imx23-holiday.dtb ../imx23-holiday.dtb
Easy enough, now move on to part 3 where we’ll build the fresh Arch Linux ARM onto a new memory card.