author | Ross Qin <ross.qin@nokia.com> |
Thu, 30 Sep 2010 14:38:30 +0800 | |
branch | RCL_3 |
changeset 16 | 22bdd8a90cc4 |
permissions | -rw-r--r-- |
16
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
1 |
Zephyr/Cedar BUILDROM |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
2 |
2003/09/03 |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
3 |
|
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
4 |
BUILDROM has been extended to support the building of 'mostly-thumb' ROMs and mixed ROMs. |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
5 |
|
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
6 |
1. Mostly Thumb ROMs. |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
7 |
|
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
8 |
In Cedar for Zephyr BUILDROM supports the following macros for |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
9 |
specifying which build to construct the ROM from: |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
10 |
_ARM4 - The ARM4 build (eventually this will be removed) |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
11 |
_ARM4T - The 'mostly-thumb' ARM4T. |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
12 |
|
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
13 |
2. Mixed ROMs |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
14 |
|
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
15 |
Mixed ROMs have a kernel built for a different ABI than that targeted |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
16 |
by user-side code. In practice this means an EABI kernel and GCC98r2 |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
17 |
user-side code. By default BUILDROM use the same ABI for the kernel as |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
18 |
specified for user-side code (i.e. one of ARM4 or ARM4T). The default |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
19 |
kernel ABI can be overriden by supplying the appropriate value for |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
20 |
_KABI in BUILDROM's commandline e.g. -D_KABI=ARMV5. |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
21 |
|
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
22 |
The following example builds a 'mostly thumb' techview ROM with an |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
23 |
EABI kernel compiled specifically for XScale: |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
24 |
|
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
25 |
buildrom lubbock -D_ARM4T -D_KABI=XSCALE -o\epoc32\techview.arm4t.xscale.img \epoc32\rom\include\techview |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
26 |
|
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
27 |
The above example shows that the EABI kernel does not have to be the |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
28 |
default ARMV5 build. BUILDROM supports customizations of the default |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
29 |
ARMV5 build. It is also worth noting that the XScale build does not |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
30 |
have to be complete. If BUILDROM cannot find an XScale file it will |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
31 |
look for the equivalent file from the build that has been |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
32 |
customized. Currently this will always be ARMV5, since this is the |
22bdd8a90cc4
synchronize from nokia internal Synergy depository buildtools/92, including fix to bugs 151,468,2049,1371,325,2539, etc.
Ross Qin <ross.qin@nokia.com>
parents:
diff
changeset
|
33 |
only build that supports customization at this time. |