This repository contains an open-source bootloader for the Centauri Carbon mainboard, which uses the Allwinner R528 SoC.
Before you begin, ensure you have the following prerequisites installed and configured:
- GCC ARM Toolchain: You'll need the
gcc-arm-none-eabipackage to cross-compile for the ARM architecture. - sunxi-tools: This collection of tools is essential for working with Allwinner SoCs. It includes
sunxi-fel, which is used to communicate with the device in FEL mode. - Serial Interface: A serial interface connected to UART0 on the Centauri Carbon mainboard is required for debugging and communication.
- FEL USB Connection: You'll need to connect your computer to the USB-C hotend port on the mainboard. EXTREME CAUTION: Ensure that the 24V VCC is NOT mated, as this can be dangerous.
On a Debian or Ubuntu-based system, you can install the required packages with the following command:
sudo apt install gcc-arm-none-eabi sunxi-tools-
Build: To build the
hello worldexample and thecc-bootbootloader, run the following command:make
-
Flash "Hello World": To flash the
hello worldexample to the device, use the following command. This will usesunxi-felto flash the application.make flash-hello
-
Flash Bootloader: To flash the bootloader, use the following command. Please note that the bootloader is currently under development and does not yet have full bootloader functionality.
make flash-boot
Note: Both hello and boot leverage UART0 on the CC mainboard. When you flash using make or manually using sunxi-fel, have a 3.3v serial adaptor plugged into UART0 and a terminal connected at 115200 to see the output from either program.
- FEL - linux-sunxi.org: An excellent resource for understanding the FEL mode on Allwinner devices. FEL is a low-level subroutine in the BootROM used for initial programming and recovery via USB.
- linux-sunxi/sunxi-tools: The official repository for the
sunxi-toolscommand-line utilities. - awboot: A related bootloader project that has served as a reference.
- U-Boot Patch for Allwinner R528: A U-Boot mailing list thread discussing the addition of DRAM initialization for the R528 SoC, which is relevant to this project.
- 100ask-t113-pro eLinuxCore SDK: The T113 Pro SDK, which is for a very similar and binary-compatible Allwinner chipset to the R528. This is a valuable reference for hardware and bootloader specifics.
This project is licensed under the GNU General Public License v2.0. See the LICENSE.md file for more details.