xref: /openbmc/u-boot/doc/README.rockchip (revision 4d9253fb76f59c6f474ca54fe2d45c5706cd86e3)
1adfb2bfeSSimon Glass#
2adfb2bfeSSimon Glass# Copyright (C) 2015 Google. Inc
3adfb2bfeSSimon Glass# Written by Simon Glass <sjg@chromium.org>
4adfb2bfeSSimon Glass#
5adfb2bfeSSimon Glass# SPDX-License-Identifier:	GPL-2.0+
6adfb2bfeSSimon Glass#
7adfb2bfeSSimon Glass
8adfb2bfeSSimon GlassU-Boot on Rockchip
9adfb2bfeSSimon Glass==================
10adfb2bfeSSimon Glass
11adfb2bfeSSimon GlassThere are several repositories available with versions of U-Boot that support
12adfb2bfeSSimon Glassmany Rockchip devices [1] [2].
13adfb2bfeSSimon Glass
14adfb2bfeSSimon GlassThe current mainline support is experimental only and is not useful for
15adfb2bfeSSimon Glassanything. It should provide a base on which to build.
16adfb2bfeSSimon Glass
17f1387130SSimon GlassSo far only support for the RK3288 and RK3036 is provided.
18adfb2bfeSSimon Glass
19adfb2bfeSSimon Glass
20adfb2bfeSSimon GlassPrerequisites
21adfb2bfeSSimon Glass=============
22adfb2bfeSSimon Glass
23adfb2bfeSSimon GlassYou will need:
24adfb2bfeSSimon Glass
25f1387130SSimon Glass   - Firefly RK3288 board or something else with a supported RockChip SoC
26adfb2bfeSSimon Glass   - Power connection to 5V using the supplied micro-USB power cable
27adfb2bfeSSimon Glass   - Separate USB serial cable attached to your computer and the Firefly
28adfb2bfeSSimon Glass        (connect to the micro-USB connector below the logo)
29adfb2bfeSSimon Glass   - rkflashtool [3]
30adfb2bfeSSimon Glass   - openssl (sudo apt-get install openssl)
31adfb2bfeSSimon Glass   - Serial UART connection [4]
32adfb2bfeSSimon Glass   - Suitable ARM cross compiler, e.g.:
33adfb2bfeSSimon Glass        sudo apt-get install gcc-4.7-arm-linux-gnueabi
34adfb2bfeSSimon Glass
35adfb2bfeSSimon Glass
36adfb2bfeSSimon GlassBuilding
37adfb2bfeSSimon Glass========
38adfb2bfeSSimon Glass
39a84b589eSWadim EgorovAt present nine RK3288 boards are supported:
40adfb2bfeSSimon Glass
41744368d6SXu Ziyuan   - EVB RK3288 - use evb-rk3288 configuration
42d7ca67b7Sjk.kernel@gmail.com   - Fennec RK3288 - use fennec-rk3288 configuration
431c62d999SXu Ziyuan   - Firefly RK3288 - use firefly-rk3288 configuration
441c62d999SXu Ziyuan   - Hisense Chromebook - use chromebook_jerry configuration
457da8680bSJernej Skrabec   - MiQi RK3288 - use miqi-rk3288 configuration
46a84b589eSWadim Egorov   - phyCORE-RK3288 RDK - use phycore-rk3288 configuration
47dd63fbc7Sjk.kernel@gmail.com   - PopMetal RK3288 - use popmetal-rk3288 configuration
481c62d999SXu Ziyuan   - Radxa Rock 2 - use rock2 configuration
4943b5c78dSJernej Skrabec   - Tinker RK3288 - use tinker-rk3288 configuration
50adfb2bfeSSimon Glass
51f1387130SSimon GlassTwo RK3036 board are supported:
521d5a6968Shuang lin
53f1387130SSimon Glass   - EVB RK3036 - use evb-rk3036 configuration
54f1387130SSimon Glass   - Kylin - use kylin_rk3036 configuration
551d5a6968Shuang lin
56adfb2bfeSSimon GlassFor example:
57adfb2bfeSSimon Glass
58adfb2bfeSSimon Glass   CROSS_COMPILE=arm-linux-gnueabi- make O=firefly firefly-rk3288_defconfig all
59adfb2bfeSSimon Glass
60adfb2bfeSSimon Glass(or you can use another cross compiler if you prefer)
61adfb2bfeSSimon Glass
62adfb2bfeSSimon Glass
63adfb2bfeSSimon GlassWriting to the board with USB
64adfb2bfeSSimon Glass=============================
65adfb2bfeSSimon Glass
66adfb2bfeSSimon GlassFor USB to work you must get your board into ROM boot mode, either by erasing
67adfb2bfeSSimon Glassyour MMC or (perhaps) holding the recovery button when you boot the board.
68adfb2bfeSSimon GlassTo erase your MMC, you can boot into Linux and type (as root)
69adfb2bfeSSimon Glass
70adfb2bfeSSimon Glass   dd if=/dev/zero of=/dev/mmcblk0 bs=1M
71adfb2bfeSSimon Glass
72adfb2bfeSSimon GlassConnect your board's OTG port to your computer.
73adfb2bfeSSimon Glass
74adfb2bfeSSimon GlassTo create a suitable image and write it to the board:
75adfb2bfeSSimon Glass
76717f8845SJeffy Chen   ./firefly-rk3288/tools/mkimage -n rk3288 -T rkimage -d \
77f2acc55eSSimon Glass	./firefly-rk3288/spl/u-boot-spl-dtb.bin out && \
78adfb2bfeSSimon Glass   cat out | openssl rc4 -K 7c4e0304550509072d2c7b38170d1711 | rkflashtool l
79adfb2bfeSSimon Glass
80adfb2bfeSSimon GlassIf all goes well you should something like:
81adfb2bfeSSimon Glass
82adfb2bfeSSimon Glass   U-Boot SPL 2015.07-rc1-00383-ge345740-dirty (Jun 03 2015 - 10:06:49)
83adfb2bfeSSimon Glass   Card did not respond to voltage select!
84adfb2bfeSSimon Glass   spl: mmc init failed with error: -17
85adfb2bfeSSimon Glass   ### ERROR ### Please RESET the board ###
86adfb2bfeSSimon Glass
87adfb2bfeSSimon GlassYou will need to reset the board before each time you try. Yes, that's all
88adfb2bfeSSimon Glassit does so far. If support for the Rockchip USB protocol or DFU were added
89adfb2bfeSSimon Glassin SPL then we could in principle load U-Boot and boot to a prompt from USB
90adfb2bfeSSimon Glassas several other platforms do. However it does not seem to be possible to
91adfb2bfeSSimon Glassuse the existing boot ROM code from SPL.
92adfb2bfeSSimon Glass
93adfb2bfeSSimon Glass
94adfb2bfeSSimon GlassBooting from an SD card
95adfb2bfeSSimon Glass=======================
96adfb2bfeSSimon Glass
97adfb2bfeSSimon GlassTo write an image that boots from an SD card (assumed to be /dev/sdc):
98adfb2bfeSSimon Glass
99717f8845SJeffy Chen   ./firefly-rk3288/tools/mkimage -n rk3288 -T rksd -d \
100f2acc55eSSimon Glass	firefly-rk3288/spl/u-boot-spl-dtb.bin out && \
101f2acc55eSSimon Glass   sudo dd if=out of=/dev/sdc seek=64 && \
10273e6dbe8SKever Yang   sudo dd if=firefly-rk3288/u-boot-dtb.img of=/dev/sdc seek=16384
103adfb2bfeSSimon Glass
104adfb2bfeSSimon GlassThis puts the Rockchip header and SPL image first and then places the U-Boot
105341e44edSGoldschmidt Simonimage at block 16384 (i.e. 8MB from the start of the SD card). This
106adfb2bfeSSimon Glasscorresponds with this setting in U-Boot:
107adfb2bfeSSimon Glass
10873e6dbe8SKever Yang   #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR	0x4000
109adfb2bfeSSimon Glass
110adfb2bfeSSimon GlassPut this SD (or micro-SD) card into your board and reset it. You should see
111adfb2bfeSSimon Glasssomething like:
112adfb2bfeSSimon Glass
113f1387130SSimon Glass   U-Boot 2016.01-rc2-00309-ge5bad3b-dirty (Jan 02 2016 - 23:41:59 -0700)
114adfb2bfeSSimon Glass
115f1387130SSimon Glass   Model: Radxa Rock 2 Square
116adfb2bfeSSimon Glass   DRAM:  2 GiB
117f1387130SSimon Glass   MMC:   dwmmc@ff0f0000: 0, dwmmc@ff0c0000: 1
118f1387130SSimon Glass   *** Warning - bad CRC, using default environment
119adfb2bfeSSimon Glass
120f1387130SSimon Glass   In:    serial
121f1387130SSimon Glass   Out:   vop@ff940000.vidconsole
122f1387130SSimon Glass   Err:   serial
123f1387130SSimon Glass   Net:   Net Initialization Skipped
124f1387130SSimon Glass   No ethernet found.
125f1387130SSimon Glass   Hit any key to stop autoboot:  0
126adfb2bfeSSimon Glass   =>
127adfb2bfeSSimon Glass
128b47ea792SXu ZiyuanThe rockchip bootrom can load and boot an initial spl, then continue to
129b47ea792SXu Ziyuanload a second-level bootloader(ie. U-BOOT) as soon as it returns to bootrom.
130b47ea792SXu ZiyuanTherefore RK3288 has another loading sequence like RK3036. The option of
131b47ea792SXu ZiyuanU-Boot is controlled with this setting in U-Boot:
132b47ea792SXu Ziyuan
133ee14d29dSPhilipp Tomsich	#define CONFIG_SPL_ROCKCHIP_BACK_TO_BROM
134b47ea792SXu Ziyuan
135b47ea792SXu ZiyuanYou can create the image via the following operations:
136b47ea792SXu Ziyuan
137b47ea792SXu Ziyuan   ./firefly-rk3288/tools/mkimage -n rk3288 -T rksd -d \
138b47ea792SXu Ziyuan	firefly-rk3288/spl/u-boot-spl-dtb.bin out && \
139b47ea792SXu Ziyuan   cat firefly-rk3288/u-boot-dtb.bin >> out && \
140b47ea792SXu Ziyuan   sudo dd if=out of=/dev/sdc seek=64
141b47ea792SXu Ziyuan
142f1387130SSimon GlassIf you have an HDMI cable attached you should see a video console.
143f1387130SSimon Glass
1441d5a6968Shuang linFor evb_rk3036 board:
145717f8845SJeffy Chen	./evb-rk3036/tools/mkimage -n rk3036 -T rksd  -d evb-rk3036/spl/u-boot-spl.bin out && \
1461d5a6968Shuang lin	cat evb-rk3036/u-boot-dtb.bin >> out && \
1471d5a6968Shuang lin	sudo dd if=out of=/dev/sdc seek=64
1481d5a6968Shuang lin
1491d5a6968Shuang linNote: rk3036 SDMMC and debug uart use the same iomux, so if you boot from SD, the
1501d5a6968Shuang lin      debug uart must be disabled
151adfb2bfeSSimon Glass
152f46b859bSHeiko Stübner
153532cb7f5SJagan TekiBooting from an SD card on RK3288 with TPL
154532cb7f5SJagan Teki==========================================
155532cb7f5SJagan Teki
156532cb7f5SJagan TekiSince the size of SPL can't be exceeded 0x8000 bytes in RK3288, it is not possible add
157532cb7f5SJagan Tekinew SPL features like Falcon mode or etc.
158532cb7f5SJagan Teki
159532cb7f5SJagan TekiSo introduce TPL so-that adding new features to SPL is possible because now TPL should
160532cb7f5SJagan Tekirun minimal with code like DDR, clock etc and rest of new features in SPL.
161532cb7f5SJagan Teki
162532cb7f5SJagan TekiAs of now TPL is added on Vyasa-RK3288 board.
163532cb7f5SJagan Teki
164532cb7f5SJagan TekiTo write an image that boots from an SD card (assumed to be /dev/mmcblk0):
165532cb7f5SJagan Teki
166532cb7f5SJagan Teki   ./tools/mkimage -n rk3288 -T rksd -d ./tpl/u-boot-tpl.bin out &&
167532cb7f5SJagan Teki    cat ./spl/u-boot-spl-dtb.bin >> out &&
168532cb7f5SJagan Teki    sudo dd if=out of=/dev/mmcblk0 seek=64 &&
169d80599e8SJagan Teki    sudo dd if=u-boot-dtb.img of=/dev/mmcblk0 seek=16384
170532cb7f5SJagan Teki
171f46b859bSHeiko StübnerBooting from an SD card on RK3188
172f46b859bSHeiko Stübner=================================
173f46b859bSHeiko Stübner
174f46b859bSHeiko StübnerFor rk3188 boards the general storage onto the card stays the same as
175f46b859bSHeiko Stübnerdescribed above, but the image creation needs a bit more care.
176f46b859bSHeiko Stübner
177f46b859bSHeiko StübnerThe bootrom of rk3188 expects to find a small 1kb loader which returns
178f46b859bSHeiko Stübnercontrol to the bootrom, after which it will load the real loader, which
179*4d9253fbSPhilipp Tomsichcan then be up to 29kb in size and does the regular ddr init.  This is
180*4d9253fbSPhilipp Tomsichhandled by a single image (built as the SPL stage) that tests whether
181*4d9253fbSPhilipp Tomsichit is handled for the first or second time via code executed from the
182*4d9253fbSPhilipp Tomsichboot0-hook.
183f46b859bSHeiko Stübner
184f46b859bSHeiko StübnerAdditionally the rk3188 requires everything the bootrom loads to be
185f46b859bSHeiko Stübnerrc4-encrypted. Except for the very first stage the bootrom always reads
186f46b859bSHeiko Stübnerand decodes 2kb pages, so files should be sized accordingly.
187f46b859bSHeiko Stübner
188f46b859bSHeiko Stübner# copy tpl, pad to 1020 bytes and append spl
189*4d9253fbSPhilipp Tomsichtools/mkimage -n rk3188 -T rksd -d spl/u-boot-spl.bin out
190f46b859bSHeiko Stübner
191f46b859bSHeiko Stübner# truncate, encode and append u-boot.bin
192f46b859bSHeiko Stübnertruncate -s %2048 u-boot.bin
193f46b859bSHeiko Stübnercat u-boot.bin | split -b 512 --filter='openssl rc4 -K 7C4E0304550509072D2C7B38170D1711' >> out
194f46b859bSHeiko Stübner
195f46b859bSHeiko Stübner
196a16e2e06SXu ZiyuanUsing fastboot on rk3288
197a16e2e06SXu Ziyuan========================
198a16e2e06SXu Ziyuan- Write GPT partition layout to mmc device which fastboot want to use it to
199a16e2e06SXu Ziyuanstore the image
200a16e2e06SXu Ziyuan
201a16e2e06SXu Ziyuan        => gpt write mmc 1 $partitions
202a16e2e06SXu Ziyuan
203a16e2e06SXu Ziyuan- Invoke fastboot command to prepare
204a16e2e06SXu Ziyuan
205a16e2e06SXu Ziyuan        => fastboot 1
206a16e2e06SXu Ziyuan
207a16e2e06SXu Ziyuan- Start fastboot request on PC
208a16e2e06SXu Ziyuan
209a16e2e06SXu Ziyuan        fastboot -i 0x2207 flash loader evb-rk3288/spl/u-boot-spl-dtb.bin
210a16e2e06SXu Ziyuan
211a16e2e06SXu ZiyuanYou should see something like:
212a16e2e06SXu Ziyuan
213a16e2e06SXu Ziyuan        => fastboot 1
214a16e2e06SXu Ziyuan        WARNING: unknown variable: partition-type:loader
215a16e2e06SXu Ziyuan        Starting download of 357796 bytes
216a16e2e06SXu Ziyuan        ..
217a16e2e06SXu Ziyuan        downloading of 357796 bytes finished
218a16e2e06SXu Ziyuan        Flashing Raw Image
219a16e2e06SXu Ziyuan        ........ wrote 357888 bytes to 'loader'
220a16e2e06SXu Ziyuan
221adfb2bfeSSimon GlassBooting from SPI
222adfb2bfeSSimon Glass================
223adfb2bfeSSimon Glass
224adfb2bfeSSimon GlassTo write an image that boots from SPI flash (e.g. for the Haier Chromebook):
225adfb2bfeSSimon Glass
226dd8e4290SSimon Glass   ./chromebook_jerry/tools/mkimage -n rk3288 -T rkspi \
227dd8e4290SSimon Glass	-d chromebook_jerry/spl/u-boot-spl-dtb.bin spl.bin && \
228dd8e4290SSimon Glass   dd if=spl.bin of=spl-out.bin bs=128K conv=sync && \
229dd8e4290SSimon Glass   cat spl-out.bin chromebook_jerry/u-boot-dtb.img >out.bin && \
230adfb2bfeSSimon Glass   dd if=out.bin of=out.bin.pad bs=4M conv=sync
231adfb2bfeSSimon Glass
232adfb2bfeSSimon GlassThis converts the SPL image to the required SPI format by adding the Rockchip
233adfb2bfeSSimon Glassheader and skipping every 2KB block. Then the U-Boot image is written at
234adfb2bfeSSimon Glassoffset 128KB and the whole image is padded to 4MB which is the SPI flash size.
235adfb2bfeSSimon GlassThe position of U-Boot is controlled with this setting in U-Boot:
236adfb2bfeSSimon Glass
237adfb2bfeSSimon Glass   #define CONFIG_SYS_SPI_U_BOOT_OFFS	(128 << 10)
238adfb2bfeSSimon Glass
239adfb2bfeSSimon GlassIf you have a Dediprog em100pro connected then you can write the image with:
240adfb2bfeSSimon Glass
241adfb2bfeSSimon Glass      sudo em100 -s -c GD25LQ32 -d out.bin.pad -r
242adfb2bfeSSimon Glass
243adfb2bfeSSimon GlassWhen booting you should see something like:
244adfb2bfeSSimon Glass
245adfb2bfeSSimon Glass   U-Boot SPL 2015.07-rc2-00215-g9a58220-dirty (Jun 23 2015 - 12:11:32)
246adfb2bfeSSimon Glass
247adfb2bfeSSimon Glass
248adfb2bfeSSimon Glass   U-Boot 2015.07-rc2-00215-g9a58220-dirty (Jun 23 2015 - 12:11:32 -0600)
249adfb2bfeSSimon Glass
250adfb2bfeSSimon Glass   Model: Google Jerry
251adfb2bfeSSimon Glass   DRAM:  2 GiB
252adfb2bfeSSimon Glass   MMC:
253adfb2bfeSSimon Glass   Using default environment
254adfb2bfeSSimon Glass
255adfb2bfeSSimon Glass   In:    serial@ff690000
256adfb2bfeSSimon Glass   Out:   serial@ff690000
257adfb2bfeSSimon Glass   Err:   serial@ff690000
258adfb2bfeSSimon Glass   =>
259adfb2bfeSSimon Glass
260adfb2bfeSSimon GlassFuture work
261adfb2bfeSSimon Glass===========
262adfb2bfeSSimon Glass
263adfb2bfeSSimon GlassImmediate priorities are:
264adfb2bfeSSimon Glass
265adfb2bfeSSimon Glass- USB host
266adfb2bfeSSimon Glass- USB device
267f1387130SSimon Glass- Run CPU at full speed (code exists but we only see ~60 DMIPS maximum)
268adfb2bfeSSimon Glass- NAND flash
269adfb2bfeSSimon Glass- Support for other Rockchip parts
270adfb2bfeSSimon Glass- Boot U-Boot proper over USB OTG (at present only SPL works)
271adfb2bfeSSimon Glass
272adfb2bfeSSimon Glass
273adfb2bfeSSimon GlassDevelopment Notes
274adfb2bfeSSimon Glass=================
275adfb2bfeSSimon Glass
276adfb2bfeSSimon GlassThere are plenty of patches in the links below to help with this work.
277adfb2bfeSSimon Glass
278adfb2bfeSSimon Glass[1] https://github.com/rkchrome/uboot.git
279adfb2bfeSSimon Glass[2] https://github.com/linux-rockchip/u-boot-rockchip.git branch u-boot-rk3288
280adfb2bfeSSimon Glass[3] https://github.com/linux-rockchip/rkflashtool.git
281adfb2bfeSSimon Glass[4] http://wiki.t-firefly.com/index.php/Firefly-RK3288/Serial_debug/en
282adfb2bfeSSimon Glass
283adfb2bfeSSimon Glassrkimage
284adfb2bfeSSimon Glass-------
285adfb2bfeSSimon Glass
286adfb2bfeSSimon Glassrkimage.c produces an SPL image suitable for sending directly to the boot ROM
287adfb2bfeSSimon Glassover USB OTG. This is a very simple format - just the string RK32 (as 4 bytes)
288adfb2bfeSSimon Glassfollowed by u-boot-spl-dtb.bin.
289adfb2bfeSSimon Glass
290adfb2bfeSSimon GlassThe boot ROM loads image to 0xff704000 which is in the internal SRAM. The SRAM
291adfb2bfeSSimon Glassstarts at 0xff700000 and extends to 0xff718000 where we put the stack.
292adfb2bfeSSimon Glass
293adfb2bfeSSimon Glassrksd
294adfb2bfeSSimon Glass----
295adfb2bfeSSimon Glass
296adfb2bfeSSimon Glassrksd.c produces an image consisting of 32KB of empty space, a header and
297adfb2bfeSSimon Glassu-boot-spl-dtb.bin. The header is defined by 'struct header0_info' although
298adfb2bfeSSimon Glassmost of the fields are unused by U-Boot. We just need to specify the
299adfb2bfeSSimon Glasssignature, a flag and the block offset and size of the SPL image.
300adfb2bfeSSimon Glass
301adfb2bfeSSimon GlassThe header occupies a single block but we pad it out to 4 blocks. The header
302adfb2bfeSSimon Glassis encoding using RC4 with the key 7c4e0304550509072d2c7b38170d1711. The SPL
303adfb2bfeSSimon Glassimage can be encoded too but we don't do that.
304adfb2bfeSSimon Glass
305adfb2bfeSSimon GlassThe maximum size of u-boot-spl-dtb.bin which the boot ROM will read is 32KB,
306adfb2bfeSSimon Glassor 0x40 blocks. This is a severe and annoying limitation. There may be a way
307adfb2bfeSSimon Glassaround this limitation, since there is plenty of SRAM, but at present the
308adfb2bfeSSimon Glassboard refuses to boot if this limit is exceeded.
309adfb2bfeSSimon Glass
310adfb2bfeSSimon GlassThe image produced is padded up to a block boundary (512 bytes). It should be
311adfb2bfeSSimon Glasswritten to the start of an SD card using dd.
312adfb2bfeSSimon Glass
313adfb2bfeSSimon GlassSince this image is set to load U-Boot from the SD card at block offset,
314adfb2bfeSSimon GlassCONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR, dd should be used to write
315adfb2bfeSSimon Glassu-boot-dtb.img to the SD card at that offset. See above for instructions.
316adfb2bfeSSimon Glass
317adfb2bfeSSimon Glassrkspi
318adfb2bfeSSimon Glass-----
319adfb2bfeSSimon Glass
320adfb2bfeSSimon Glassrkspi.c produces an image consisting of a header and u-boot-spl-dtb.bin. The
321adfb2bfeSSimon Glassresulting image is then spread out so that only the first 2KB of each 4KB
322adfb2bfeSSimon Glasssector is used. The header is the same as with rksd and the maximum size is
323adfb2bfeSSimon Glassalso 32KB (before spreading). The image should be written to the start of
324adfb2bfeSSimon GlassSPI flash.
325adfb2bfeSSimon Glass
326adfb2bfeSSimon GlassSee above for instructions on how to write a SPI image.
327adfb2bfeSSimon Glass
328002c634cSSimon Glassrkmux.py
329002c634cSSimon Glass--------
330002c634cSSimon Glass
331002c634cSSimon GlassYou can use this script to create #defines for SoC register access. See the
332002c634cSSimon Glassscript for usage.
333002c634cSSimon Glass
334adfb2bfeSSimon Glass
335adfb2bfeSSimon GlassDevice tree and driver model
336adfb2bfeSSimon Glass----------------------------
337adfb2bfeSSimon Glass
338adfb2bfeSSimon GlassWhere possible driver model is used to provide a structure to the
339adfb2bfeSSimon Glassfunctionality. Device tree is used for configuration. However these have an
340adfb2bfeSSimon Glassoverhead and in SPL with a 32KB size limit some shortcuts have been taken.
341adfb2bfeSSimon GlassIn general all Rockchip drivers should use these features, with SPL-specific
342adfb2bfeSSimon Glassmodifications where required.
343adfb2bfeSSimon Glass
3443f3e1e33SJacob ChenGPT partition layout
3453f3e1e33SJacob Chen----------------------------
3463f3e1e33SJacob Chen
3473f3e1e33SJacob ChenRockchip use a unified GPT partition layout  in open source support.
3483f3e1e33SJacob ChenWith this GPT partition layout, uboot can be compatilbe with other components,
3493f3e1e33SJacob Chenlike miniloader, trusted-os, arm-trust-firmware.
3503f3e1e33SJacob Chen
3513f3e1e33SJacob ChenThere are some documents about partitions in the links below.
3523f3e1e33SJacob Chenhttp://rockchip.wikidot.com/partitions
353adfb2bfeSSimon Glass
354adfb2bfeSSimon Glass--
355adfb2bfeSSimon GlassSimon Glass <sjg@chromium.org>
356adfb2bfeSSimon Glass24 June 2015
357