python-pyasn: bump to version 1.6.0b1
[buildroot-gz.git] / board / altera / readme.txt
blob1894a7907d6bbfb4e6421bce8b9544cb3d4b61a4
1 SoCkit, SoC Development Kit
3 Intro
4 =====
6 This is the buildroot board support for the Arrow SoCkit Evaluation Board
7 and the Altera Cyclone 5 Development Board.
9 A good source of information for Arrow SoCkit:
10 http://www.rocketboards.org/foswiki/Documentation/ArrowSoCKitEvaluationBoard
12 More information about SoC DK:
13 https://www.altera.com/products/boards_and_kits/dev-kits/altera/kit-cyclone-v-soc.html
15 How it works
16 ============
18 Boot process:
19 -------------
21 In summary, the bootloader has multiple stages, an hardcoded boot routine is
22 loaded from an on-chip ROM.
24   - That first stage is scanning the SD card's partition table to find
25     partition having the 0xA2 type.
26   - This partition is expected to contain a boot image on its first 60 Kb,
27     because u-boot is bigger, we must fill it with a preloader (u-boot-spl)
28     which will load the u-boot image.
29   - Then the u-boot image will load the Linux kernel.
31 A good source of information for the boot process is:
32 http://xillybus.com/tutorials/u-boot-image-altera-soc
34 Note for the SPL:
35 The SPL generated by the u-boot from Rocketboards doesn't seems to work,
36 therefore we provide a patch for {uboot-PKG}/board/altera/socfpga_cyclone5/*
37 based on the files generated with the Altera example design.
39 For more information about this files please look at:
40 http://www.rocketboards.org/foswiki/Documentation/PreloaderUbootCustomization#Common_Source_Code
42 How to build it
43 ===============
45 Configure Buildroot
46 -------------------
48 The altera_sockit_defconfig configuration is a minimal configuration with
49 all that is required to bring the SoCkit:
51   $ make altera_sockit_defconfig
53 and for the SoC Development Board:
55   $ make altera_sockdk_defconfig
57 Build everything
58 ----------------
60 Note: you will need to have access to the network, since Buildroot will
61 download the packages' sources.
63   $ make
65 Result of the build
66 -------------------
68 After building, you should obtain this tree:
70     output/images/
71     ├── rootfs.ext2
72     ├── rootfs.ext3 -> rootfs.ext2
73     ├── rootfs.tar
74     ├── socfpga_cyclone5_sockit.dtb or socfpga_cyclone5_socdk.dtb
75     ├── socfpga.dtb
76     ├── u-boot.img
77     ├── u-boot-spl.bin
78     └── uImage
81 Signing the Preloader
82 ---------------------
84 *** BEWARE ****
85 The u-boot-spl.bin must be signed using the Altera's tool "mkpimage".
86 This tool comes as a part of the Altera development environnment (SoC EDS).
87 A fork of this tool have been done by Maxime Hadjinlian and can be found here:
88 https://github.com/maximeh/mkpimage
90 Remember that without signing the u-boot-spl.bin, the board will not boot !!!
92   $ mkpimage u-boot-spl.bin -o u-boot-spl-signed.bin
94 Prepare your SDcard
95 ===================
97 A good source of information for the partitioning process is:
98 http://www.rocketboards.org/foswiki/view/Projects/SoCKitLinaroLinuxDesktop#Partition_the_SD_Card
100 Create the SDcard partition table
101 ----------------------------------
103 Determine the device associated to the SD card:
105   $ cat /proc/partitions
107 let's assume it is /dev/mmcblk0:
109   $ sudo fdisk /dev/mmcblk0
111 Delete all previous partitions with 'd' then create the new partition table,
112 using these options, pressing enter after each one:
114   * n p 1 9000000 +20480K t 1 b
115   * n p 2 4096 +4496384K t 83
116   * n p 3 2048 +1024K t 3 a2
118 Using the 'p' option, the SD card's partition must look like this:
120 Device         Boot     Start       End  Blocks  Id System
121 /dev/mmcblk0p1        9000000   9041919   20960   b W95 FAT32
122 /dev/mmcblk0p2           4096   8996863 4496384  83 Linux
123 /dev/mmcblk0p3           2048      4095    1024  a2 Unknown
125 Then write the partition table using 'w' and exit.
127 Make partition one a DOS partition:
129   $ sudo mkdosfs /dev/mmcblk0p1
131 Install the binaries to the SDcard
132 ----------------------------------
134 Remember your binaries are located in output/images/, go inside that directory:
136   $ cd output/images
138 The partition with type a2 is the partition scan by the first bootloader stage
139 in the SoCkit ROM to find the next bootloader stage so we must write the signed
140 preloader and the u-boot binaries in that partition:
142   $ sudo dd if=u-boot-spl-signed.bin of=/dev/mmcblk0p3 bs=64k seek=0
143   $ sudo dd if=u-boot.img of=/dev/mmcblk0p3 bs=64k seek=4
145 Copy the Linux kernel and its Device tree:
147   $ sudo mkdir /mnt/sdcard
148   $ sudo mount /dev/mmcblk0p1 /mnt/sdcard
149   $ sudo cp socfpga.dtb uImage /mnt/sdcard
150   $ sudo umount /mnt/sdcard
152 Copy the rootfs:
154   $ sudo dd if=rootfs.ext2 of=/dev/mmcblk0p2 bs=64k
155   $ sudo sync
157 It's Done!
159 Finish
160 ======
162 Eject your SDcard, insert it in your SoCkit, and power it up.
164 if you want a serial console, you can plug a micro B USB cable on the USB-UART
165 port, the serial port config to used is 57600/8-N-1.