636375593c4a64df016f2cf0748e716daa4e6954
[bootloader-ap.git] / README
1 bootloader-ap (Boot Loader for Application Processors)
2
3 Developed by TJ <linux@tjworld.net>
4 Copyright (C) 2010-
5
6 A GPLv3 licensed (some individual files are BSD licensed) boot-loader for ARM-based communications 
7 devices based on modern System-on-Chip architectures such as the Qualcomm MSM7x30, which is the 
8 first target of this implementation.
9
10 The intention is to provide a completely Free and Open Source boot-loader that can be utilised by 
11 system manufacturers and user's who prefer to install a custom boot-loader.
12
13 Inspired by the HTC Vision device, known as the HTC Desire Z and T-Mobile G2. This device was locked 
14 by HTC to prevent easy customisation.
15
16 = External libraries =
17
18
19 == Zlib 1.2.3 ==
20
21 From http://downloads.sourceforge.net/project/libpng/zlib/1.2.3/zlib-1.2.3.tar.gz
22
23 Extract:
24
25  tar -xzf zlib-1.2.3.tar.gz
26
27 Correct directory name:
28
29  mv zlib-1.2.3 zlib
30
31 Remove unwanted additional directories:
32
33  rm -rf contrib amiga as400 examples msdos old projects qnx win32
34
35
36 = Developer Notes =
37
38 Gathering the chip-set specifications for some parts of this code can be challenging. Prudent use of
39 a search engine can uncover many fragments of open-source code patches to many Linux kernel projects
40 for embedded devices.
41
42 If other source-code is directly imported into this project ensure the license is compatible and note
43 all files that use a different license to the project's license in the COPYRIGHT file.
44
45 To guard against any possible challenge as to the source of specifications and settings that
46 aren't publicly released by chip-set or device manufacturers there is a comment template to prefix
47 to any code that describes or uses those specifications or settings. Here's an example:
48
49 /*
50   SOURCE: HTC Vision Linux kernel 2.6.32 source
51   SOURCE_FILE: arch/arm/mach-msm/arch-init-7x30.S
52   SOURCE_URL: http://dl3.htc.com/RomCode/Source_and_Binaries/vision-2.6.32-g814e0a1.tar.gz
53   SOURCE_FOR: MSM7x30 equates, status-codes, IOMEM addresses, CP15 functions
54 */
55
56 ... some code
57
58 /* SOURCE_END */
59
60 By using pseudo-defines (SOURCE, SOURCE_*, SOURCE_END) inside a C-style comment block (/* ... */) it
61 makes it possible to use an automated tool to gather and document all sources of specifications and 
62 settings.