1 This document explains how to set up a basic Buildroot system on various
2 Atmel boards. Additional details can also be found on the Linux4SAM website:
3 http://www.at91.com/linux4sam/bin/view/Linux4SAM/
5 This guide covers the following configurations:
6 - at91sam9g45m10ek_defconfig
7 - at91sam9rlek_defconfig
8 - at91sam9x5ek_defconfig (at91sam9g15, at91sam9g25, at91sam9x25,
9 at91sam9g35 and at91sam9x35)
10 - atmel_sama5d3xek_defconfig (sama5d31, sama5d33, sama5d34, sama5d35,
12 - atmel_sama5d3_xplained_defconfig
13 - atmel_sama5d3_xplained_dev_defconfig
14 - atmel_sama5d3_xplained_mmc_defconfig
15 - atmel_sama5d3_xplained_mmc_dev_defconfig
16 - atmel_sama5d4_xplained_defconfig
17 - atmel_sama5d4_xplained_dev_defconfig
18 - atmel_sama5d4_xplained_mmc_defconfig
19 - atmel_sama5d4_xplained_mmc_dev_defconfig
20 - atmel_sama5d2_xplained_mmc_defconfig
21 - atmel_sama5d2_xplained_mmc_dev_defconfig
23 These configurations will use AT91Bootstrap, u-boot and a linux kernel from
24 the git trees maintained by Atmel.
26 The configurations labeled as 'dev' provide a development rootfs with tools to
27 tests the features of the SoC:
28 - ALSA tools to test audio
29 - FFMPEG to record video from the ISI/ISC
30 - I2C, SPI, CAN, etc. tools
31 - modetest for LCD screens, HDMI
32 - Wilc1000 firmware for the Atmel Wireless sdio module
34 - GDB/GDB server for debug
36 Configuring and building Buildroot
37 ==================================
39 For most configurations listed above, the Buildroot configuration
40 assumes the system will be flashed on NAND. In this case, after
41 building Buildroot, follow the instructions in the "Flashing the NAND
42 using SAM-BA" section below.
44 For the Xplained boards, an alternative Buildroot configuration is
45 provided to boot from an SD card. Those configurations are labeled as
46 'mmc'. In this case, after building Buildroot, follow the instructions
47 in the "Preparing the SD card" section.
49 To configure and build Buildroot, run:
51 make <board>_defconfig
54 Flashing the NAND using SAM-BA
55 ==============================
61 o at91sam9g45m10ek: DBGU: J10, USB sam-ba: J14
62 o at91sam9rlek: DBGU: J19, USB sam-ba: J21
63 o at91sam9x5ek: DBGU: J11, USB sam-ba: J20
64 o sama5d3xek: DBGU: J14, USB sam-ba: J20
65 o sama5d3 Xplained: DBGU: J23, USB sam-ba: J6
66 o sama5d4ek: DBGU: J22 or J24, USB sam-ba: J1
67 o sama5d4 Xplained: DBGU: J1, USB sam-ba: J11
69 Start the board in RomBOOT:
71 1. open JP8, JP10 and JP12
73 3. close JP8, JP10 and JP12
76 1. J11 on 1-2 (BMS=1), open J12 and J13
82 - Cogent: open *NCS jumper
84 - Ronetix: open J1 and J2
87 - Cogent: close *NCS jumper
88 - Embest: close SW1 (ON position)
89 - Ronetix: close J1 and J2
98 1. open JP5 (NANDCS) and JP6 (SPICS)
109 1. close JP7 (BOOT_DIS)
113 "RomBOOT" should appear on your console (this should be ttyUSBx or ttyACMx)
115 Now locate the USB sam-ba interface it should be ttyACMx, usually ttyACM0
116 dmesg on your machine should give:
117 usb 1-2.1.4: New USB device found, idVendor=03eb, idProduct=6124
118 usb 1-2.1.4: New USB device strings: Mfr=0, Product=0, SerialNumber=0
119 cdc_acm 1-2.1.4:1.0: ttyACM0: USB ACM device
121 Look for idVendor=03eb, idProduct=6124, this is the interface you want to use.
123 You can then flash the board using the provided flasher.sh script in board/atmel:
125 board/atmel/flasher.sh <builddir_path> <interface> <board>
127 For example, for an out of tree build made in
128 /tmp/atmel_sama5d3_xplained/ for the sama5d3 Xplained, you would use:
129 board/atmel/flasher.sh /tmp/atmel_sama5d3_xplained/ /dev/ttyACM0 sama5d3_xplained
131 Reboot, the system should boot up to the buildroot login invite.
133 Preparing the SD card
134 =====================
136 An image named sdcard.img is automatically generated. With this image,
137 you no longer have to care about the creation of the partition and
138 copying files to the SD card.
140 You need at least a 1GB SD card. All the data on the SD card will be
141 lost. To copy the image on the SD card:
143 /!\ Caution be sure to do it on the right mmcblk device /!\
145 dd if=output/images/sdcard.img of=/dev/mmcblk0
147 Insert your SD card in your Xplained board, and enjoy. The default
148 U-Boot environment will load properly the kernel and Device Tree blob
149 from the first partition of the SD card, so everything works
152 By default a 16MB FAT partition is created. It contains at91bootstrap,
153 u-boot, the kernel image and all dtb variants for your board. The dtb
154 used is the basic one:
158 bootcmd=fatload mmc 1:1 0x21000000 at91-sama5d2_xplained.dtb; fatload mmc 1:1 0x22000000 zImage; bootz 0x22000000 - 0x21000000
161 If you want to use a variant such as the _pda7 one, you will have to
162 update your u-boot environment:
164 U-Boot> setenv bootcmd 'fatload mmc 1:1 0x21000000 at91-sama5d2_xplained_pda7.dtb; fatload mmc 1:1 0x22000000 zImage; bootz 0x22000000 - 0x21000000'
166 Saving Environment to FAT...
170 A 512MB ext4 partition is also created to store the rootfs generated.
172 If you want to customize the size of the partitions and their content,
173 take a look at the the genimage.cfg file in the board directory.