forked from leandrof/u-boot
Compare commits
622 Commits
LABEL_2005
...
U-Boot-1_1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ba999c531e | ||
|
|
f836e41460 | ||
|
|
f641471498 | ||
|
|
6a0766ed22 | ||
|
|
43a2b0e76a | ||
|
|
73652699dd | ||
|
|
a0d3518460 | ||
|
|
fcfed4f2f2 | ||
|
|
3231ea64f4 | ||
|
|
82165a334b | ||
|
|
edf0b54338 | ||
|
|
4707fb50cc | ||
|
|
d7762337cb | ||
|
|
e0a46554c3 | ||
|
|
87621bc247 | ||
|
|
5c34eee94d | ||
|
|
ea237a4d25 | ||
|
|
c668670391 | ||
|
|
752d6837c3 | ||
|
|
2255b2d204 | ||
|
|
a3bb7bfc06 | ||
|
|
1a1b7374b8 | ||
|
|
d262a92f0f | ||
|
|
d82718fed0 | ||
|
|
1d92b2e550 | ||
|
|
2b208f5308 | ||
|
|
7ce343e499 | ||
|
|
511d0c72b8 | ||
|
|
8d4ac79436 | ||
|
|
9444b8818f | ||
|
|
eac5ba3e59 | ||
|
|
56fb6ba179 | ||
|
|
d373325efd | ||
|
|
7299712c86 | ||
|
|
ac611700e5 | ||
|
|
854bc8da75 | ||
|
|
aeec782b02 | ||
|
|
d214fbbd87 | ||
|
|
5d5269f87f | ||
|
|
a87d46f732 | ||
|
|
d12ae80889 | ||
|
|
a73c8dbb43 | ||
|
|
98e43917dc | ||
|
|
baf3124953 | ||
|
|
2d658967e1 | ||
|
|
efa20585b3 | ||
|
|
8cacfb85a8 | ||
|
|
5e09054af6 | ||
|
|
4f0645eb79 | ||
|
|
887e2ec9ec | ||
|
|
0dab03ba8f | ||
|
|
f60ba0d35e | ||
|
|
6741ae92f3 | ||
|
|
360b410367 | ||
|
|
fc43de0d4a | ||
|
|
f93286397e | ||
|
|
24d3d37546 | ||
|
|
6608043fd4 | ||
|
|
4c15ef55a2 | ||
|
|
bfdfd7c26c | ||
|
|
2c05165173 | ||
|
|
ec0f7277cb | ||
|
|
d7c2a02dea | ||
|
|
43835aac48 | ||
|
|
7d0432c9e4 | ||
|
|
e8143e72e1 | ||
|
|
0fd30252c8 | ||
|
|
2b75062a0f | ||
|
|
21a9cc028d | ||
|
|
2b393b0f0a | ||
|
|
f5577aae4a | ||
|
|
16850919ff | ||
|
|
3b0ff842bf | ||
|
|
113f64e09a | ||
|
|
15f29f06ed | ||
|
|
ed1cf8456f | ||
|
|
ddde6b7cf8 | ||
|
|
5196a7a03b | ||
|
|
6d3bc9b8cf | ||
|
|
c5185470fe | ||
|
|
4bfb632077 | ||
|
|
6fe16a8769 | ||
|
|
0a0f3a46fb | ||
|
|
6183bb9e5b | ||
|
|
463764c893 | ||
|
|
94568b600a | ||
|
|
2f6fa46d41 | ||
|
|
ddd5d9daf0 | ||
|
|
80f0c0f58f | ||
|
|
d689e3462c | ||
|
|
c72d9c5285 | ||
|
|
7213859d11 | ||
|
|
d8519dc718 | ||
|
|
015c200b1f | ||
|
|
36b904a7fd | ||
|
|
d10afb3916 | ||
|
|
692519b1ed | ||
|
|
a3d9181e00 | ||
|
|
6587f7e1e9 | ||
|
|
d8f961bbda | ||
|
|
4f92ed5fc0 | ||
|
|
9ede3cc511 | ||
|
|
e335496a32 | ||
|
|
e51aae3829 | ||
|
|
7455af41d1 | ||
|
|
a2c95a7224 | ||
|
|
fc6c4a67ae | ||
|
|
193dd95834 | ||
|
|
3ca9122fec | ||
|
|
4c4aca8166 | ||
|
|
4819fad905 | ||
|
|
fd27996dac | ||
|
|
135ae0062f | ||
|
|
048f6b436b | ||
|
|
fc1840e881 | ||
|
|
966083e95f | ||
|
|
144f7795ee | ||
|
|
b9365a26a1 | ||
|
|
87a5c73d66 | ||
|
|
029b6dc77c | ||
|
|
2c33a38bac | ||
|
|
aa0c71acad | ||
|
|
dd9f06f0d5 | ||
|
|
501090aaa6 | ||
|
|
32cb2c70c4 | ||
|
|
e644670b68 | ||
|
|
53dd6ce4f0 | ||
|
|
8623c11e08 | ||
|
|
0352f17687 | ||
|
|
311d802790 | ||
|
|
5078cce81c | ||
|
|
978b10964c | ||
|
|
45a212c4d7 | ||
|
|
bd3143f040 | ||
|
|
edd0b509ba | ||
|
|
c786f427f9 | ||
|
|
d053ce62cd | ||
|
|
8936601084 | ||
|
|
5a3dfef732 | ||
|
|
0de7fa5939 | ||
|
|
b87dfd2854 | ||
|
|
f3e06df7e8 | ||
|
|
ae1d7d4b2e | ||
|
|
dbba399be0 | ||
|
|
cf8f60f0ea | ||
|
|
d22d102808 | ||
|
|
f88a0ae6d7 | ||
|
|
090eb73510 | ||
|
|
d6cc73e4e7 | ||
|
|
b02d0177c1 | ||
|
|
87791f3bf2 | ||
|
|
985b950a9b | ||
|
|
9d40799551 | ||
|
|
a874c8c65f | ||
|
|
edd6cf20e1 | ||
|
|
caaeaf925f | ||
|
|
0095b787fe | ||
|
|
ce05de2950 | ||
|
|
d19206b9a5 | ||
|
|
fbb0b559ae | ||
|
|
fe84b48a94 | ||
|
|
3f7a63e6a3 | ||
|
|
3b5f61a025 | ||
|
|
bba6837732 | ||
|
|
971a5dd11a | ||
|
|
f6e5739a68 | ||
|
|
6c5879f380 | ||
|
|
bb105f24cc | ||
|
|
a63c31cff5 | ||
|
|
f73e73ba0e | ||
|
|
f5e0d03970 | ||
|
|
8d352247ec | ||
|
|
a650cfa286 | ||
|
|
0c32d96ddd | ||
|
|
c12cffc543 | ||
|
|
30a43cc2ae | ||
|
|
10af6d53bc | ||
|
|
14d9ab351c | ||
|
|
1ac7e17e86 | ||
|
|
bc8bb6d458 | ||
|
|
cebd1fcec0 | ||
|
|
cd65a3dc87 | ||
|
|
4bdb53cafb | ||
|
|
b9fff8ee83 | ||
|
|
3e9a299231 | ||
|
|
e00f41eb81 | ||
|
|
3332240318 | ||
|
|
9e18a4bc6c | ||
|
|
df02bd1b3f | ||
|
|
ed4633c93a | ||
|
|
b1d71358a9 | ||
|
|
4176c79964 | ||
|
|
9d4d3e3833 | ||
|
|
5d7022b041 | ||
|
|
9cc8337832 | ||
|
|
1f6ce8f5ba | ||
|
|
3d22d0b89b | ||
|
|
c2ced000f4 | ||
|
|
e461a24113 | ||
|
|
4526c87eec | ||
|
|
2fd9eb509d | ||
|
|
5abc2c5d4c | ||
|
|
e15cd6fdbe | ||
|
|
a4c8d1389f | ||
|
|
62b8f54877 | ||
|
|
392c252efd | ||
|
|
b9b2480f4f | ||
|
|
d945527305 | ||
|
|
ba94a1bba3 | ||
|
|
5770a1e488 | ||
|
|
b62fa913d4 | ||
|
|
27333f8c34 | ||
|
|
df3eece32d | ||
|
|
56ced709af | ||
|
|
6516525083 | ||
|
|
319b9a5467 | ||
|
|
8cba090c58 | ||
|
|
977b50f868 | ||
|
|
278bc4b37f | ||
|
|
f90a39213e | ||
|
|
512f8d5d78 | ||
|
|
d1dd22f92e | ||
|
|
77f633425b | ||
|
|
6080a0eb63 | ||
|
|
4af099bda9 | ||
|
|
1cfefe8cb6 | ||
|
|
67a9468522 | ||
|
|
78b123cd69 | ||
|
|
6f5155a95c | ||
|
|
b75ef85f42 | ||
|
|
b4853b779e | ||
|
|
0c056f0e27 | ||
|
|
483a0cf804 | ||
|
|
f149d8643e | ||
|
|
0cf7d8aa0b | ||
|
|
cb0fdf3cfa | ||
|
|
610cf3676e | ||
|
|
da4849fb30 | ||
|
|
983bebbea3 | ||
|
|
ac2e2b82bc | ||
|
|
5720df78ad | ||
|
|
8546e23902 | ||
|
|
3577d3a33b | ||
|
|
7a635e004e | ||
|
|
0e0ef590b2 | ||
|
|
d860c34ff0 | ||
|
|
7c93b2443c | ||
|
|
71ae411a63 | ||
|
|
76544f80e4 | ||
|
|
6ca24c64a5 | ||
|
|
8fe9bf61ef | ||
|
|
b86d7622b3 | ||
|
|
a83531bb62 | ||
|
|
7fd392c2d0 | ||
|
|
60e270a490 | ||
|
|
9acb626fc1 | ||
|
|
56a4a63c10 | ||
|
|
a367d42640 | ||
|
|
8419c01304 | ||
|
|
cf48eb9abd | ||
|
|
807522fc9a | ||
|
|
b81a4630a3 | ||
|
|
b28a31ca02 | ||
|
|
ad88297e2f | ||
|
|
bb74140def | ||
|
|
6db3970811 | ||
|
|
3a5e21881a | ||
|
|
5fbb2cd3b1 | ||
|
|
9bc97a3d91 | ||
|
|
71b405df4e | ||
|
|
197b049b8b | ||
|
|
2fc000d756 | ||
|
|
1707626650 | ||
|
|
db28ddb4da | ||
|
|
534ff676a9 | ||
|
|
2662b40cac | ||
|
|
d87080b721 | ||
|
|
3511853943 | ||
|
|
62534beb2f | ||
|
|
9e7b5ce61b | ||
|
|
f2841d3770 | ||
|
|
eeaab720f6 | ||
|
|
89f2dfa4c3 | ||
|
|
b66a938342 | ||
|
|
c855ef6768 | ||
|
|
f6dbbe9864 | ||
|
|
2770bcb21c | ||
|
|
0b953ffc65 | ||
|
|
40b0bafbb2 | ||
|
|
ba70d6a417 | ||
|
|
05d8dce9d0 | ||
|
|
5725f94aac | ||
|
|
552fc624f2 | ||
|
|
e443c944cf | ||
|
|
f8edca2e9a | ||
|
|
0b6ba547fa | ||
|
|
7b4fd36b03 | ||
|
|
0a112d8696 | ||
|
|
09e4b0c5d3 | ||
|
|
dc9e499c62 | ||
|
|
d326f4a242 | ||
|
|
97f98001a3 | ||
|
|
991425fe05 | ||
|
|
4c8d1ecce2 | ||
|
|
61f25155ac | ||
|
|
6d8ae5abb5 | ||
|
|
e24e0f0744 | ||
|
|
cd94ba397e | ||
|
|
a7c66ad2e5 | ||
|
|
6e53e27c50 | ||
|
|
ff7fefe679 | ||
|
|
86f5f0342d | ||
|
|
15940c9af3 | ||
|
|
f3fecfe6d7 | ||
|
|
9a7b408c11 | ||
|
|
9551530615 | ||
|
|
c15f80eaef | ||
|
|
b38dbd4622 | ||
|
|
f07217c9e2 | ||
|
|
84c960ce6d | ||
|
|
763b5f34c3 | ||
|
|
be5048f166 | ||
|
|
ca27381df1 | ||
|
|
8123eee875 | ||
|
|
7c60908ffb | ||
|
|
47705af5da | ||
|
|
795bee8496 | ||
|
|
7b230f61db | ||
|
|
a3f0169880 | ||
|
|
3b2e4fd9b0 | ||
|
|
0346983290 | ||
|
|
d8169c9f3b | ||
|
|
0a3471fc78 | ||
|
|
993a22756e | ||
|
|
953c5b6f8b | ||
|
|
23466d6a33 | ||
|
|
74f92e6a3f | ||
|
|
8e7b703a62 | ||
|
|
1264b4050c | ||
|
|
6cb142fa3b | ||
|
|
0afe519a43 | ||
|
|
dc013d4640 | ||
|
|
8ff0208d31 | ||
|
|
f47b661141 | ||
|
|
aba9f1af60 | ||
|
|
5797b821dc | ||
|
|
7c54c7018e | ||
|
|
92b197f0da | ||
|
|
82d716fd0d | ||
|
|
611125a292 | ||
|
|
2281490485 | ||
|
|
d509b81210 | ||
|
|
84ef51a632 | ||
|
|
d2ed2f661b | ||
|
|
8de7ed3abe | ||
|
|
d52fb7e3d1 | ||
|
|
4367a01036 | ||
|
|
5536b2b5a9 | ||
|
|
83784bf63f | ||
|
|
e4558768ae | ||
|
|
3d65390e21 | ||
|
|
8371a2c0d4 | ||
|
|
3c4eb0880b | ||
|
|
9c575e51de | ||
|
|
1f62bc2d08 | ||
|
|
0be248fa9a | ||
|
|
951a954b77 | ||
|
|
ac7d97dcbb | ||
|
|
43638c674a | ||
|
|
f9e029184b | ||
|
|
bfc81252c0 | ||
|
|
4e3ccd2692 | ||
|
|
addb2e1650 | ||
|
|
bf7cac033b | ||
|
|
f1ee982506 | ||
|
|
f8785e96c9 | ||
|
|
24e1217be3 | ||
|
|
9187a35b6c | ||
|
|
19fdeff433 | ||
|
|
e2053f9c7a | ||
|
|
aed9e2269c | ||
|
|
bb1ff049fb | ||
|
|
4f71866470 | ||
|
|
481911c78c | ||
|
|
f18e874ad5 | ||
|
|
e8cd00835e | ||
|
|
00c35bd214 | ||
|
|
82f2e33a8d | ||
|
|
6949328d7d | ||
|
|
f6c0068fc1 | ||
|
|
36d2c5387d | ||
|
|
58ad497833 | ||
|
|
79b4cda076 | ||
|
|
0377dca227 | ||
|
|
7d4d1ce48c | ||
|
|
038ccac511 | ||
|
|
c81eb1f5f5 | ||
|
|
7958202031 | ||
|
|
599f52253a | ||
|
|
ff3c2a9478 | ||
|
|
6624b687bc | ||
|
|
5f0be01356 | ||
|
|
9cdc838613 | ||
|
|
86ea5f93d7 | ||
|
|
48b6242aa1 | ||
|
|
881a87ecba | ||
|
|
654c2d2836 | ||
|
|
075866d840 | ||
|
|
4f7a0e3671 | ||
|
|
8fb1857b40 | ||
|
|
57dc57f14d | ||
|
|
230b31febf | ||
|
|
2688e2f972 | ||
|
|
bf5988e533 | ||
|
|
6ece03f267 | ||
|
|
b2b43463af | ||
|
|
b3c36e6b94 | ||
|
|
9d803d8c0b | ||
|
|
79830d591a | ||
|
|
af646e865f | ||
|
|
e0269579a5 | ||
|
|
48a05a5188 | ||
|
|
84e106c09d | ||
|
|
57cac1fa54 | ||
|
|
f8c3b4f310 | ||
|
|
3a108ed868 | ||
|
|
eacbd31775 | ||
|
|
b636d32261 | ||
|
|
c99f384dce | ||
|
|
27afa7d966 | ||
|
|
b970480948 | ||
|
|
18c5e64c5b | ||
|
|
a7b9fb9110 | ||
|
|
2076d0a15f | ||
|
|
c4b465f63e | ||
|
|
b443f7b628 | ||
|
|
86902b8e36 | ||
|
|
06508f1c9b | ||
|
|
d5e78b7bf4 | ||
|
|
bc680b12d0 | ||
|
|
dffb70f330 | ||
|
|
1e8f1da65b | ||
|
|
19ab485189 | ||
|
|
21a3cbd0d8 | ||
|
|
304ad60f7d | ||
|
|
62ec6418d4 | ||
|
|
e559a6901a | ||
|
|
c2871f0380 | ||
|
|
4e2531378f | ||
|
|
e4f880eddd | ||
|
|
3411d11761 | ||
|
|
a179012e37 | ||
|
|
ec00c33578 | ||
|
|
a15b44dbfa | ||
|
|
ce574ff506 | ||
|
|
9260a56151 | ||
|
|
756ceb8935 | ||
|
|
3bb6680655 | ||
|
|
c7428d49ac | ||
|
|
97c8d0bbbd | ||
|
|
27e166b875 | ||
|
|
e6b6d16de7 | ||
|
|
a9e642e2f8 | ||
|
|
81a3170b15 | ||
|
|
e43232dee8 | ||
|
|
7481266e4e | ||
|
|
3a7b142b62 | ||
|
|
a889bd27ef | ||
|
|
41253be442 | ||
|
|
f013dacf0a | ||
|
|
c75eba3b41 | ||
|
|
4a86d779ff | ||
|
|
b6f8435664 | ||
|
|
d00de23b15 | ||
|
|
d9785c14bf | ||
|
|
d96f41e016 | ||
|
|
a46726fdba | ||
|
|
6e7fb6eaa5 | ||
|
|
1178a412d2 | ||
|
|
0a69b26ed6 | ||
|
|
3d9569b232 | ||
|
|
f08abe311b | ||
|
|
aa7cfc463a | ||
|
|
5568e613ee | ||
|
|
fe126d8b34 | ||
|
|
5a164c8ca9 | ||
|
|
3ca377638a | ||
|
|
c7911c7e8f | ||
|
|
fd49bf0214 | ||
|
|
feaedfcf84 | ||
|
|
3ada834e30 | ||
|
|
ea339205a9 | ||
|
|
527b5a511c | ||
|
|
182e10691f | ||
|
|
f190c11b1f | ||
|
|
4d03a21f23 | ||
|
|
ef04a0aa26 | ||
|
|
8e9655f863 | ||
|
|
57275b69c6 | ||
|
|
d9f2f5008c | ||
|
|
be360d9824 | ||
|
|
5d4ee51061 | ||
|
|
99eb35dbbf | ||
|
|
63ff004c4f | ||
|
|
fe93483a0a | ||
|
|
170d5e6d4c | ||
|
|
e190290ba4 | ||
|
|
7b5cac0e19 | ||
|
|
e9f1110051 | ||
|
|
a547775bac | ||
|
|
c4c13df284 | ||
|
|
1e25f957c8 | ||
|
|
a93316c5e9 | ||
|
|
6902df56a0 | ||
|
|
326bf40fb7 | ||
|
|
ea1fba136a | ||
|
|
20a374fe02 | ||
|
|
84bd92bdda | ||
|
|
3b6748ea0d | ||
|
|
dc91701ff7 | ||
|
|
77ddac9480 | ||
|
|
17a8b276ba | ||
|
|
0f3f901496 | ||
|
|
814d98f24e | ||
|
|
cbdf8824fa | ||
|
|
b604a40b4f | ||
|
|
070610c529 | ||
|
|
f57f70aab9 | ||
|
|
36247821ef | ||
|
|
e6f2e90233 | ||
|
|
4f92ac3648 | ||
|
|
3df5bea0b0 | ||
|
|
7521af1c7d | ||
|
|
95f9dda216 | ||
|
|
47340a46f6 | ||
|
|
96782c63d3 | ||
|
|
c29ab9d71d | ||
|
|
b8e16a3450 | ||
|
|
64db4b10a5 | ||
|
|
87cb6862b9 | ||
|
|
bccae9039e | ||
|
|
6ebc792114 | ||
|
|
5ae31ee114 | ||
|
|
f5c254d719 | ||
|
|
78da60773c | ||
|
|
c0e82d5016 | ||
|
|
3b9dfddfd8 | ||
|
|
645da51097 | ||
|
|
fef636b0cf | ||
|
|
080bdb7f3a | ||
|
|
29ca46c445 | ||
|
|
99b0d2851a | ||
|
|
45237bc00b | ||
|
|
7d314992a8 | ||
|
|
e5e98edd77 | ||
|
|
9b880bd4d8 | ||
|
|
1820d4c73b | ||
|
|
9a8d82fd3c | ||
|
|
d843a575d7 | ||
|
|
93b17ec382 | ||
|
|
5362385ec3 | ||
|
|
2c7b2ab5a0 | ||
|
|
d9631ecf52 | ||
|
|
709d8ec0d8 | ||
|
|
e98f68be94 | ||
|
|
fb34a9a201 | ||
|
|
d8e7e0f044 | ||
|
|
98404649c8 | ||
|
|
0e4018d244 | ||
|
|
c570b2fdf5 | ||
|
|
c2d0ab4da8 | ||
|
|
e6f222815c | ||
|
|
a912733e9b | ||
|
|
f2af3eb55e | ||
|
|
8e6f1a8ec2 | ||
|
|
716c1dcb41 | ||
|
|
49a7581c6c | ||
|
|
8e2be51de8 | ||
|
|
a188b5854f | ||
|
|
31466294b0 | ||
|
|
b66eb5282d | ||
|
|
bd51626c8d | ||
|
|
7a22cd535b | ||
|
|
875c78934e | ||
|
|
db421e6451 | ||
|
|
c177bb5f6c | ||
|
|
1972dc0a9e | ||
|
|
0148e8cb43 | ||
|
|
389db1f113 | ||
|
|
6ed6ce62be | ||
|
|
70a2047ff6 | ||
|
|
2df741bf7c | ||
|
|
fd4bb67bd2 | ||
|
|
fe7eb5d88b | ||
|
|
74f4304ee7 | ||
|
|
e2146b6aea | ||
|
|
9f221d0738 | ||
|
|
c97a2aaf27 | ||
|
|
265817c7e6 | ||
|
|
b63de2c053 | ||
|
|
3706ba1a36 | ||
|
|
9a9200b4a7 | ||
|
|
dafbe3790e | ||
|
|
28cb937584 | ||
|
|
ecb0ccd9c2 | ||
|
|
4bc12f1ccf | ||
|
|
2b792afcc5 | ||
|
|
9ea4b5886a | ||
|
|
0c8721a466 | ||
|
|
a6e6cf0036 | ||
|
|
1caa70788c | ||
|
|
7644f16f6b | ||
|
|
026cb5d864 | ||
|
|
98f4a3dfcb | ||
|
|
5810dc3a2e | ||
|
|
8b4c9e7c14 | ||
|
|
59d80bf180 | ||
|
|
1806c75959 | ||
|
|
29fe1c0fa4 | ||
|
|
ac7eb8a315 | ||
|
|
05b47540aa | ||
|
|
932394ac43 |
15
COPYING
15
COPYING
@@ -2,10 +2,17 @@
|
||||
applications that use U-Boot services by means of the jump table
|
||||
provided by U-Boot exactly for this purpose - this is merely
|
||||
considered normal use of U-Boot, and does *not* fall under the
|
||||
heading of "derived work". Also note that the GPL below is
|
||||
copyrighted by the Free Software Foundation, but the instance of code
|
||||
that it refers to (the U-Boot source code) is copyrighted by me and
|
||||
others who actually wrote it. -- Wolfgang Denk
|
||||
heading of "derived work".
|
||||
|
||||
The header files "include/image.h" and "include/asm-*/u-boot.h"
|
||||
define interfaces to U-Boot. Including these (unmodified) header
|
||||
files in another file is considered normal use of U-Boot, and does
|
||||
*not* fall under the heading of "derived work".
|
||||
|
||||
Also note that the GPL below is copyrighted by the Free Software
|
||||
Foundation, but the instance of code that it refers to (the U-Boot
|
||||
source code) is copyrighted by me and others who actually wrote it.
|
||||
-- Wolfgang Denk
|
||||
|
||||
=======================================================================
|
||||
|
||||
|
||||
39
CREDITS
39
CREDITS
@@ -65,6 +65,12 @@ N: Raphael Bossek
|
||||
E: raphael.bossek@solutions4linux.de
|
||||
D: 8xxrom-0.3.0
|
||||
|
||||
N: Cliff Brake
|
||||
E: cliff.brake@gmail.com
|
||||
D: Port to Vibren PXA255 IDP platform
|
||||
W: http://www.vibren.com
|
||||
W: http://bec-systems.com
|
||||
|
||||
N: Rick Bronson
|
||||
E: rick@efn.org
|
||||
D: Atmel AT91RM9200DK and NAND support
|
||||
@@ -99,6 +105,10 @@ N: Magnus Damm
|
||||
E: damm@opensource.se
|
||||
D: 8xxrom
|
||||
|
||||
N: Richard Danter
|
||||
E: richard.danter@windriver.com
|
||||
D: Support for Wind River PPMC 7xx/74xx boards
|
||||
|
||||
N: George G. Davis
|
||||
E: gdavis@mvista.com
|
||||
D: Board ports for ADS GraphicsClient+ and Intel Assabet
|
||||
@@ -223,6 +233,7 @@ D: Port to Windriver ppmc8260 board
|
||||
N: Sangmoon Kim
|
||||
E: dogoil@etinsys.com
|
||||
D: Support for debris board
|
||||
D: Support for KVME080 board
|
||||
|
||||
N: Frederick W. Klatt
|
||||
E: fred.klatt@windriver.com
|
||||
@@ -247,7 +258,12 @@ D Support for Intrinsyc CERF PXA250 board.
|
||||
|
||||
N: Thomas Lange
|
||||
E: thomas@corelatus.se
|
||||
D: Support for GTH and dbau1x00 boards; lots of PCMCIA fixes
|
||||
D: Support for GTH, GTH2 and dbau1x00 boards; lots of PCMCIA fixes
|
||||
|
||||
N: Marc Leeman
|
||||
E: marc.leeman@barco.com
|
||||
D: Support for Barco Streaming Video Card (SVC) and Sample Compress Network (SCN)
|
||||
W: www.barco.com
|
||||
|
||||
N: The LEOX team
|
||||
E: team@leox.org
|
||||
@@ -306,6 +322,10 @@ E: rof@sysgo.de
|
||||
D: Initial support for SSV-DNP1110, SMC91111 driver
|
||||
W: www.elinos.com
|
||||
|
||||
N: John Otken
|
||||
E: jotken@softadvances.com
|
||||
D: Support for AMCC Luan 440SP board
|
||||
|
||||
N: Tolunay Orkun
|
||||
E: torkun@nextio.com
|
||||
D: Support for Cogent CSB272 & CSB472 boards
|
||||
@@ -340,7 +360,7 @@ W: http://www.windriver.com
|
||||
|
||||
N: Stefan Roese
|
||||
E: stefan.roese@esd-electronics.com
|
||||
D: IBM PPC401/403/405GP Support; Windows environment support
|
||||
D: AMCC PPC401/403/405GP Support; Windows environment support
|
||||
|
||||
N: Erwin Rol
|
||||
E: erwin@muffin.org
|
||||
@@ -356,7 +376,7 @@ D: Author of LiMon-1.4.2, which contributed some ideas
|
||||
|
||||
N: Travis B. Sawyer
|
||||
E: travis.sawyer@sandburst.com
|
||||
D: Support for IBM PPC440GX, XES XPedite1000 440GX PrPMC board. IBM 440gx Ref Platform (Ocotea)
|
||||
D: Support for AMCC PPC440GX, XES XPedite1000 440GX PrPMC board. AMCC 440gx Ref Platform (Ocotea)
|
||||
|
||||
N: Paolo Scaffardi
|
||||
E: arsenio@tin.it
|
||||
@@ -366,6 +386,14 @@ N: Robert Schwebel
|
||||
E: r.schwebel@pengutronix.de
|
||||
D: Support for csb226, logodl and innokom boards (PXA2xx)
|
||||
|
||||
N: Aaron Sells
|
||||
E: sellsa@embeddedplanet.com
|
||||
D: Support for EP82xxM
|
||||
|
||||
N: Art Shipkowski
|
||||
E: art@videon-central.com
|
||||
D: Support for NetSilicon NS7520
|
||||
|
||||
N: Yasushi Shoji
|
||||
E: yashi@atmark-techno.com
|
||||
D: Support for Xilinx MicroBlaze, for Atmark Techno SUZAKU FPGA board
|
||||
@@ -432,3 +460,8 @@ N: Alex Zuepke
|
||||
E: azu@sysgo.de
|
||||
D: Overall improvements on StrongARM, ARM720TDMI; Support for Tuxscreen; initial PCMCIA support for ARM
|
||||
W: www.elinos.com
|
||||
|
||||
N: James MacAulay
|
||||
E: james.macaulay@amirix.com
|
||||
D: Suppport for Amirix AP1000
|
||||
W: www.amirix.com
|
||||
|
||||
53
MAINTAINERS
53
MAINTAINERS
@@ -136,6 +136,7 @@ Matthias Fuchs <matthias.fuchs@esd-electronics.com>
|
||||
AR405 PPC405GP
|
||||
ASH405 PPC405EP
|
||||
CANBT PPC405CR
|
||||
CPCI2DP PPC405GP
|
||||
CPCI405 PPC405GP
|
||||
CPCI4052 PPC405GP
|
||||
CPCI405AB PPC405GP
|
||||
@@ -156,6 +157,7 @@ Matthias Fuchs <matthias.fuchs@esd-electronics.com>
|
||||
VOH405 PPC405EP
|
||||
VOM405 PPC405EP
|
||||
WUH405 PPC405EP
|
||||
CMS700 PPC405EP
|
||||
|
||||
Frank Gottschling <fgottschling@eltec.de>
|
||||
|
||||
@@ -195,6 +197,7 @@ Brad Kemp <Brad.Kemp@seranoa.com>
|
||||
Sangmoon Kim <dogoil@etinsys.com>
|
||||
|
||||
debris MPC8245
|
||||
KVME080 MPC8245
|
||||
|
||||
Thomas Lange <thomas@corelatus.se>
|
||||
|
||||
@@ -238,6 +241,10 @@ Tolunay Orkun <torkun@nextio.com>
|
||||
csb272 PPC405GP
|
||||
csb472 PPC405GP
|
||||
|
||||
John Otken <jotken@softadvances.com>
|
||||
|
||||
luan PPC440SP
|
||||
|
||||
Keith Outwater <Keith_Outwater@mvis.com>
|
||||
|
||||
GEN860T MPC860T
|
||||
@@ -248,11 +255,13 @@ Frank Panno <fpanno@delphintech.com>
|
||||
ep8260 MPC8260
|
||||
|
||||
Peter Pearse <peter.pearse@arm.com>
|
||||
|
||||
Integrator/AP CM 926EJ-S, CM7x0T, CM9x0T
|
||||
Integrator/CP CM 926EJ-S CM920T, CM940T, CM922T-XA10
|
||||
Versatile/AB ARM926EJ-S
|
||||
Versatile/PB ARM926EJ-S
|
||||
integratorcp All current ARM supplied &
|
||||
supported core modules
|
||||
- see http://www.arm.com
|
||||
/products/DevTools
|
||||
/Hardware_Platforms.html
|
||||
versatile ARM926EJ-S
|
||||
versatile ARM926EJ-S
|
||||
|
||||
Denis Peter <d.peter@mpl.ch>
|
||||
|
||||
@@ -266,10 +275,17 @@ Daniel Poirot <dan.poirot@windriver.com>
|
||||
|
||||
Stefan Roese <sr@denx.de>
|
||||
|
||||
uc100 MPC857
|
||||
|
||||
TQM85xx MPC8540/8541/8555/8560
|
||||
|
||||
bamboo PPC440EP
|
||||
bunbinga PPC405EP
|
||||
ebony PPC440GP
|
||||
ocotea PPC440GX
|
||||
p3p440 PPC440GP
|
||||
pcs440ep PPC440EP
|
||||
sequoia PPC440EPx
|
||||
sycamore PPC405GPr
|
||||
walnut PPC405GP
|
||||
yellowstone PPC440GR
|
||||
@@ -303,6 +319,11 @@ Rune Torgersen <runet@innovsys.com>
|
||||
|
||||
MPC8266ADS MPC8266
|
||||
|
||||
|
||||
David Updegraff <dave@cray.com>
|
||||
|
||||
CRAYL1 PPC4xx
|
||||
|
||||
Josef Wagner <Wagner@Microsys.de>
|
||||
|
||||
CPC45 MPC8245
|
||||
@@ -332,7 +353,6 @@ Unknown / orphaned boards:
|
||||
RPXClassic MPC8xx
|
||||
RPXlite MPC8xx
|
||||
|
||||
CRAYL1 PPC4xx
|
||||
ERIC PPC4xx
|
||||
|
||||
MOUSSE MPC824x
|
||||
@@ -350,10 +370,18 @@ Unknown / orphaned boards:
|
||||
# Board CPU #
|
||||
#########################################################################
|
||||
|
||||
Rowel Atienza <rowel@diwalabs.com>
|
||||
|
||||
armadillo ARM720T
|
||||
|
||||
Rishi Bhattacharya <rishi@ti.com>
|
||||
|
||||
omap5912osk ARM926EJS
|
||||
|
||||
Cliff Brake <cliff.brake@gmail.com>
|
||||
|
||||
pxa255_idp xscale
|
||||
|
||||
Rick Bronson <rick@efn.org>
|
||||
|
||||
AT91RM9200DK at91rm9200
|
||||
@@ -413,6 +441,11 @@ Dave Peverley <dpeverley@mpc-data.co.uk>
|
||||
|
||||
omap730p2 ARM926EJS
|
||||
|
||||
Stefan Roese <sr@denx.de>
|
||||
|
||||
ixdpg425 xscale
|
||||
pdnb3 xscale
|
||||
|
||||
Robert Schwebel <r.schwebel@pengutronix.de>
|
||||
|
||||
csb226 xscale
|
||||
@@ -462,6 +495,7 @@ Wolfgang Denk <wd@denx.de>
|
||||
|
||||
Thomas Lange <thomas@corelatus.se>
|
||||
dbau1x00 MIPS32 Au1000
|
||||
gth2 MIPS32 Au1000
|
||||
|
||||
#########################################################################
|
||||
# Nios-32 Systems: #
|
||||
@@ -490,6 +524,9 @@ Scott McNutt <smcnutt@psyent.com>
|
||||
|
||||
PCI5441 Nios-II
|
||||
PK1C20 Nios-II
|
||||
EP1C20 Nios-II
|
||||
EP1S10 Nios-II
|
||||
EP1S40 Nios-II
|
||||
|
||||
#########################################################################
|
||||
# MicroBlaze Systems: #
|
||||
@@ -513,6 +550,10 @@ Matthias Fuchs <matthias.fuchs@esd-electronics.com>
|
||||
|
||||
TASREG MCF5249
|
||||
|
||||
Zachary P. Landau <zachary.landau@labxtechnologies.com>
|
||||
|
||||
r5200 mcf52x2
|
||||
|
||||
#########################################################################
|
||||
# End of MAINTAINERS list #
|
||||
#########################################################################
|
||||
|
||||
174
MAKEALL
174
MAKEALL
@@ -8,7 +8,17 @@ else
|
||||
MAKE=make
|
||||
fi
|
||||
|
||||
[ -d LOG ] || mkdir LOG || exit 1
|
||||
if [ "${MAKEALL_LOGDIR}" ] ; then
|
||||
LOG_DIR=${MAKEALL_LOGDIR}
|
||||
else
|
||||
LOG_DIR="LOG"
|
||||
fi
|
||||
|
||||
if [ ! "${BUILD_DIR}" ] ; then
|
||||
BUILD_DIR="."
|
||||
fi
|
||||
|
||||
[ -d ${LOG_DIR} ] || mkdir ${LOG_DIR} || exit 1
|
||||
|
||||
LIST=""
|
||||
|
||||
@@ -25,15 +35,16 @@ LIST_5xx=" \
|
||||
#########################################################################
|
||||
|
||||
LIST_5xxx=" \
|
||||
cpci5200 icecube_5100 icecube_5200 EVAL5200 \
|
||||
pf5200 PM520 Total5100 Total5200 \
|
||||
Total5200_Rev2 TQM5200_auto o2dnt \
|
||||
BC3450 cpci5200 EVAL5200 fo300 \
|
||||
icecube_5100 icecube_5200 lite5200b mcc200 \
|
||||
o2dnt pf5200 PM520 TB5200 \
|
||||
Total5100 Total5200 Total5200_Rev2 TQM5200 \
|
||||
TQM5200_B TQM5200S v38b \
|
||||
"
|
||||
|
||||
#########################################################################
|
||||
## MPC8xx Systems
|
||||
#########################################################################
|
||||
|
||||
LIST_8xx=" \
|
||||
Adder87x GENIETV MBX860T R360MPI \
|
||||
AdderII GTH MHPC RBC823 \
|
||||
@@ -43,15 +54,17 @@ LIST_8xx=" \
|
||||
CCM IP860 NETPHONE RPXlite_DW \
|
||||
cogent_mpc8xx IVML24 NETTA RRvision \
|
||||
ELPT860 IVML24_128 NETTA2 SM850 \
|
||||
ESTEEM192E IVML24_256 NETTA_ISDN SPD823TS \
|
||||
ETX094 IVMS8 NETVIA svm_sc8xx \
|
||||
FADS823 IVMS8_128 NETVIA_V2 SXNI855T \
|
||||
FADS850SAR IVMS8_256 NX823 TOP860 \
|
||||
FADS860T KUP4K pcu_e TQM823L \
|
||||
FLAGADM KUP4X QS823 TQM823L_LCD \
|
||||
FPS850L LANTEC QS850 TQM850L \
|
||||
GEN860T lwmon QS860T TQM855L \
|
||||
GEN860T_SC MBX quantum TQM860L \
|
||||
EP88x IVML24_256 NETTA_ISDN spc1920 \
|
||||
ESTEEM192E IVMS8 NETVIA SPD823TS \
|
||||
ETX094 IVMS8_128 NETVIA_V2 svm_sc8xx \
|
||||
FADS823 IVMS8_256 NX823 SXNI855T \
|
||||
FADS850SAR KUP4K pcu_e TOP860 \
|
||||
FADS860T KUP4X QS823 TQM823L \
|
||||
FLAGADM LANTEC QS850 TQM823L_LCD \
|
||||
FPS850L lwmon QS860T TQM850L \
|
||||
GEN860T MBX quantum TQM855L \
|
||||
GEN860T_SC TQM860L \
|
||||
TQM885D \
|
||||
uc100 \
|
||||
v37 \
|
||||
"
|
||||
@@ -61,18 +74,21 @@ LIST_8xx=" \
|
||||
#########################################################################
|
||||
|
||||
LIST_4xx=" \
|
||||
ADCIOP AR405 ASH405 bubinga \
|
||||
CANBT CPCI405 CPCI4052 CPCI405AB \
|
||||
CPCI440 CPCIISER4 CRAYL1 csb272 \
|
||||
csb472 DASA_SIM DP405 DU405 \
|
||||
ebony ERIC EXBITGEN G2000 \
|
||||
HUB405 JSE KAREF METROBOX \
|
||||
MIP405 MIP405T ML2 ml300 \
|
||||
ocotea OCRTC ORSG PCI405 \
|
||||
PIP405 PLU405 PMC405 PPChameleonEVB \
|
||||
sbc405 VOH405 W7OLMC W7OLMG \
|
||||
ADCIOP AP1000 AR405 ASH405 \
|
||||
bamboo bubinga CANBT CMS700 \
|
||||
CPCI2DP CPCI405 CPCI4052 CPCI405AB \
|
||||
CPCI405DT CPCI440 CPCIISER4 CRAYL1 \
|
||||
csb272 csb472 DASA_SIM DP405 \
|
||||
DU405 ebony ERIC EXBITGEN \
|
||||
G2000 HH405 HUB405 JSE \
|
||||
KAREF luan METROBOX MIP405 \
|
||||
MIP405T ML2 ml300 ocotea \
|
||||
OCRTC ORSG p3p440 PCI405 \
|
||||
pcs440ep PIP405 PLU405 PMC405 \
|
||||
PPChameleonEVB sbc405 sequoia sequoia_nand \
|
||||
VOH405 VOM405 W7OLMC W7OLMG \
|
||||
walnut WUH405 XPEDITE1K yellowstone \
|
||||
yosemite \
|
||||
yosemite yucca bamboo \
|
||||
"
|
||||
|
||||
#########################################################################
|
||||
@@ -88,11 +104,11 @@ LIST_8220=" \
|
||||
#########################################################################
|
||||
|
||||
LIST_824x=" \
|
||||
A3000 BMW CPC45 CU824 \
|
||||
debris eXalion HIDDEN_DRAGON MOUSSE \
|
||||
MUSENKI MVBLUE OXC PN62 \
|
||||
Sandpoint8240 Sandpoint8245 SL8245 utx8245 \
|
||||
sbc8240 \
|
||||
A3000 barco BMW CPC45 \
|
||||
CU824 debris eXalion HIDDEN_DRAGON \
|
||||
MOUSSE MUSENKI MVBLUE \
|
||||
OXC PN62 Sandpoint8240 Sandpoint8245 \
|
||||
sbc8240 SL8245 utx8245 \
|
||||
"
|
||||
|
||||
#########################################################################
|
||||
@@ -101,12 +117,12 @@ LIST_824x=" \
|
||||
|
||||
LIST_8260=" \
|
||||
atc cogent_mpc8260 CPU86 CPU87 \
|
||||
ep8248 ep8260 gw8260 hymod \
|
||||
IPHASE4539 ISPAN MPC8260ADS MPC8266ADS \
|
||||
MPC8272ADS PM826 PM828 ppmc8260 \
|
||||
Rattler8248 RPXsuper rsdproto sacsng \
|
||||
sbc8260 SCM TQM8260_AC TQM8260_AD \
|
||||
TQM8260_AE ZPC1900 \
|
||||
ep8248 ep8260 ep82xxm gw8260 \
|
||||
hymod IPHASE4539 ISPAN MPC8260ADS \
|
||||
MPC8266ADS MPC8272ADS PM826 PM828 \
|
||||
ppmc8260 Rattler8248 RPXsuper rsdproto \
|
||||
sacsng sbc8260 SCM TQM8260_AC \
|
||||
TQM8260_AD TQM8260_AE ZPC1900 \
|
||||
"
|
||||
|
||||
#########################################################################
|
||||
@@ -114,7 +130,7 @@ LIST_8260=" \
|
||||
#########################################################################
|
||||
|
||||
LIST_83xx=" \
|
||||
MPC8349ADS \
|
||||
TQM834x MPC8349EMDS \
|
||||
"
|
||||
|
||||
|
||||
@@ -126,7 +142,7 @@ LIST_85xx=" \
|
||||
MPC8540ADS MPC8540EVAL MPC8541CDS MPC8548CDS \
|
||||
MPC8555CDS MPC8560ADS PM854 PM856 \
|
||||
sbc8540 sbc8560 stxgp3 TQM8540 \
|
||||
TQM8560 \
|
||||
TQM8541 TQM8555 TQM8560 \
|
||||
"
|
||||
|
||||
#########################################################################
|
||||
@@ -139,7 +155,7 @@ LIST_74xx=" \
|
||||
"
|
||||
|
||||
LIST_7xx=" \
|
||||
BAB7xx CPCI750 ELPPC \
|
||||
BAB7xx CPCI750 ELPPC ppmc7xx \
|
||||
"
|
||||
|
||||
LIST_ppc="${LIST_5xx} ${LIST_5xxx} \
|
||||
@@ -160,24 +176,41 @@ LIST_SA="assabet dnp1110 gcplus lart shannon"
|
||||
## ARM7 Systems
|
||||
#########################################################################
|
||||
|
||||
LIST_ARM7="B2 ep7312 evb4510 impa7 modnet50"
|
||||
LIST_ARM7=" \
|
||||
armadillo B2 ep7312 evb4510 \
|
||||
impa7 integratorap ap7 ap720t \
|
||||
modnet50 \
|
||||
"
|
||||
|
||||
#########################################################################
|
||||
## ARM9 Systems
|
||||
#########################################################################
|
||||
|
||||
LIST_ARM9=" \
|
||||
at91rm9200dk cmc_pu2 integratorcp integratorap \
|
||||
lpd7a400 mx1ads mx1fs2 omap1510inn \
|
||||
omap1610h2 omap1610inn omap730p2 scb9328 \
|
||||
smdk2400 smdk2410 trab VCMA9 \
|
||||
versatile voiceblue \
|
||||
at91rm9200dk cmc_pu2 \
|
||||
ap920t ap922_XA10 ap926ejs ap946es \
|
||||
ap966 cp920t cp922_XA10 cp926ejs \
|
||||
cp946es cp966 lpd7a400 mp2usb \
|
||||
mx1ads mx1fs2 netstar omap1510inn \
|
||||
omap1610h2 omap1610inn omap730p2 sbc2410x \
|
||||
scb9328 smdk2400 smdk2410 trab \
|
||||
VCMA9 versatile versatileab versatilepb \
|
||||
voiceblue \
|
||||
"
|
||||
|
||||
#########################################################################
|
||||
## ARM10 Systems
|
||||
#########################################################################
|
||||
LIST_ARM10=" \
|
||||
integratorcp cp1026 \
|
||||
"
|
||||
|
||||
#########################################################################
|
||||
## ARM11 Systems
|
||||
#########################################################################
|
||||
LIST_ARM11="omap2420h4"
|
||||
LIST_ARM11=" \
|
||||
cp1136 omap2420h4 \
|
||||
"
|
||||
|
||||
#########################################################################
|
||||
## Xscale Systems
|
||||
@@ -185,16 +218,17 @@ LIST_ARM11="omap2420h4"
|
||||
|
||||
LIST_pxa=" \
|
||||
adsvix cerf250 cradle csb226 \
|
||||
innokom lubbock wepep250 xaeniax \
|
||||
xm250 xsengine \
|
||||
delta innokom lubbock pleb2 \
|
||||
pxa255_idp wepep250 xaeniax xm250 \
|
||||
xsengine zylonite \
|
||||
"
|
||||
|
||||
LIST_ixp="ixdp425"
|
||||
LIST_ixp="ixdp425 ixdpg425 pdnb3"
|
||||
|
||||
|
||||
LIST_arm=" \
|
||||
${LIST_SA} \
|
||||
${LIST_ARM7} ${LIST_ARM9} ${LIST_ARM11} \
|
||||
${LIST_ARM7} ${LIST_ARM9} ${LIST_ARM10} ${LIST_ARM11} \
|
||||
${LIST_pxa} ${LIST_ixp} \
|
||||
"
|
||||
|
||||
@@ -206,7 +240,7 @@ LIST_mips4kc="incaip"
|
||||
|
||||
LIST_mips5kc="purple"
|
||||
|
||||
LIST_au1xx0="dbau1000 dbau1100 dbau1500 dbau1550 dbau1550_el"
|
||||
LIST_au1xx0="dbau1000 dbau1100 dbau1500 dbau1550 dbau1550_el gth2"
|
||||
|
||||
LIST_mips="${LIST_mips4kc} ${LIST_mips5kc} ${LIST_au1xx0}"
|
||||
|
||||
@@ -235,23 +269,38 @@ LIST_x86="${LIST_I486}"
|
||||
#########################################################################
|
||||
|
||||
LIST_nios=" \
|
||||
ADNPESC1 ADNPESC1_base_32 \
|
||||
ADNPESC1 ADNPESC1_base_32 \
|
||||
ADNPESC1_DNPEVA2_base_32 \
|
||||
DK1C20 DK1C20_standard_32 \
|
||||
DK1S10 DK1S10_standard_32 DK1S10_mtx_ldk_20 \
|
||||
DK1C20 DK1C20_standard_32 \
|
||||
DK1S10 DK1S10_standard_32 DK1S10_mtx_ldk_20 \
|
||||
"
|
||||
|
||||
#########################################################################
|
||||
## Nios-II Systems
|
||||
#########################################################################
|
||||
|
||||
LIST_nios2="PCI5441 PK1C20"
|
||||
LIST_nios2=" \
|
||||
EP1C20 EP1S10 EP1S40 \
|
||||
PCI5441 PK1C20 \
|
||||
"
|
||||
|
||||
#########################################################################
|
||||
## MicroBlaze Systems
|
||||
#########################################################################
|
||||
|
||||
LIST_microblaze="suzaku"
|
||||
LIST_microblaze=" \
|
||||
suzaku
|
||||
"
|
||||
|
||||
#########################################################################
|
||||
## ColdFire Systems
|
||||
#########################################################################
|
||||
|
||||
LIST_coldfire=" \
|
||||
cobra5272 EB+MCF-EV123 EB+MCF-EV123_internal \
|
||||
M5271EVB M5272C3 M5282EVB TASREG \
|
||||
r5200 M5271EVB \
|
||||
"
|
||||
|
||||
#-----------------------------------------------------------------------
|
||||
|
||||
@@ -265,8 +314,12 @@ build_target() {
|
||||
|
||||
${MAKE} distclean >/dev/null
|
||||
${MAKE} ${target}_config
|
||||
${MAKE} ${JOBS} all 2>&1 >LOG/$target.MAKELOG | tee LOG/$target.ERR
|
||||
${CROSS_COMPILE:-ppc_8xx-}size u-boot | tee -a LOG/$target.MAKELOG
|
||||
|
||||
${MAKE} ${JOBS} all 2>&1 >${LOG_DIR}/$target.MAKELOG \
|
||||
| tee ${LOG_DIR}/$target.ERR
|
||||
|
||||
${CROSS_COMPILE:-ppc_8xx-}size ${BUILD_DIR}/u-boot \
|
||||
| tee -a ${LOG_DIR}/$target.MAKELOG
|
||||
}
|
||||
|
||||
#-----------------------------------------------------------------------
|
||||
@@ -276,11 +329,12 @@ for arg in $@
|
||||
do
|
||||
case "$arg" in
|
||||
ppc|5xx|5xxx|8xx|8220|824x|8260|83xx|85xx|4xx|7xx|74xx| \
|
||||
arm|SA|ARM7|ARM9|ARM11|pxa|ixp| \
|
||||
arm|SA|ARM7|ARM9|ARM10|ARM11|pxa|ixp| \
|
||||
microblaze| \
|
||||
mips|mips_el| \
|
||||
nios|nios2| \
|
||||
x86|I486)
|
||||
x86|I486| \
|
||||
coldfire)
|
||||
for target in `eval echo '$LIST_'${arg}`
|
||||
do
|
||||
build_target ${target}
|
||||
|
||||
260
README
260
README
@@ -145,7 +145,7 @@ Directory Hierarchy:
|
||||
- mpc85xx Files specific to Freescale MPC85xx CPUs
|
||||
- nios Files specific to Altera NIOS CPUs
|
||||
- nios2 Files specific to Altera Nios-II CPUs
|
||||
- ppc4xx Files specific to IBM PowerPC 4xx CPUs
|
||||
- ppc4xx Files specific to AMCC PowerPC 4xx CPUs
|
||||
- pxa Files specific to Intel XScale PXA CPUs
|
||||
- s3c44b0 Files specific to Samsung S3C44B0 CPUs
|
||||
- sa1100 Files specific to Intel StrongARM SA1100 CPUs
|
||||
@@ -246,6 +246,7 @@ The following options need to be configured:
|
||||
CONFIG_SA1110
|
||||
CONFIG_ARM7
|
||||
CONFIG_PXA250
|
||||
CONFIG_CPU_MONAHANS
|
||||
|
||||
MicroBlaze based CPUs:
|
||||
----------------------
|
||||
@@ -261,54 +262,57 @@ The following options need to be configured:
|
||||
PowerPC based boards:
|
||||
---------------------
|
||||
|
||||
CONFIG_ADCIOP CONFIG_GEN860T CONFIG_PCI405
|
||||
CONFIG_ADS860 CONFIG_GENIETV CONFIG_PCIPPC2
|
||||
CONFIG_AMX860 CONFIG_GTH CONFIG_PCIPPC6
|
||||
CONFIG_ADCIOP CONFIG_FPS860L CONFIG_OXC
|
||||
CONFIG_ADS860 CONFIG_GEN860T CONFIG_PCI405
|
||||
CONFIG_AMX860 CONFIG_GENIETV CONFIG_PCIPPC2
|
||||
CONFIG_AP1000 CONFIG_GTH CONFIG_PCIPPC6
|
||||
CONFIG_AR405 CONFIG_gw8260 CONFIG_pcu_e
|
||||
CONFIG_BAB7xx CONFIG_hermes CONFIG_PIP405
|
||||
CONFIG_c2mon CONFIG_hymod CONFIG_PM826
|
||||
CONFIG_CANBT CONFIG_IAD210 CONFIG_ppmc8260
|
||||
CONFIG_CCM CONFIG_ICU862 CONFIG_QS823
|
||||
CONFIG_CMI CONFIG_IP860 CONFIG_QS850
|
||||
CONFIG_cogent_mpc8260 CONFIG_IPHASE4539 CONFIG_QS860T
|
||||
CONFIG_cogent_mpc8xx CONFIG_IVML24 CONFIG_RBC823
|
||||
CONFIG_CPCI405 CONFIG_IVML24_128 CONFIG_RPXClassic
|
||||
CONFIG_CPCI4052 CONFIG_IVML24_256 CONFIG_RPXlite
|
||||
CONFIG_CPCIISER4 CONFIG_IVMS8 CONFIG_RPXsuper
|
||||
CONFIG_CPU86 CONFIG_IVMS8_128 CONFIG_rsdproto
|
||||
CONFIG_CRAYL1 CONFIG_IVMS8_256 CONFIG_sacsng
|
||||
CONFIG_CSB272 CONFIG_JSE CONFIG_Sandpoint8240
|
||||
CONFIG_CU824 CONFIG_LANTEC CONFIG_Sandpoint8245
|
||||
CONFIG_DASA_SIM CONFIG_lwmon CONFIG_sbc8260
|
||||
CONFIG_DB64360 CONFIG_MBX CONFIG_sbc8560
|
||||
CONFIG_DB64460 CONFIG_MBX860T CONFIG_SM850
|
||||
CONFIG_DU405 CONFIG_MHPC CONFIG_SPD823TS
|
||||
CONFIG_DUET_ADS CONFIG_MIP405 CONFIG_STXGP3
|
||||
CONFIG_EBONY CONFIG_MOUSSE CONFIG_SXNI855T
|
||||
CONFIG_ELPPC CONFIG_MPC8260ADS CONFIG_TQM823L
|
||||
CONFIG_ELPT860 CONFIG_MPC8540ADS CONFIG_TQM8260
|
||||
CONFIG_ep8260 CONFIG_MPC8540EVAL CONFIG_TQM850L
|
||||
CONFIG_ERIC CONFIG_MPC8560ADS CONFIG_TQM855L
|
||||
CONFIG_ESTEEM192E CONFIG_MUSENKI CONFIG_TQM860L
|
||||
CONFIG_ETX094 CONFIG_MVS1 CONFIG_TTTech
|
||||
CONFIG_EVB64260 CONFIG_NETPHONE CONFIG_UTX8245
|
||||
CONFIG_FADS823 CONFIG_NETTA CONFIG_V37
|
||||
CONFIG_FADS850SAR CONFIG_NETVIA CONFIG_W7OLMC
|
||||
CONFIG_FADS860T CONFIG_NX823 CONFIG_W7OLMG
|
||||
CONFIG_FLAGADM CONFIG_OCRTC CONFIG_WALNUT
|
||||
CONFIG_FPS850L CONFIG_ORSG CONFIG_ZPC1900
|
||||
CONFIG_FPS860L CONFIG_OXC CONFIG_ZUMA
|
||||
CONFIG_BC3450 CONFIG_hymod CONFIG_PM826
|
||||
CONFIG_c2mon CONFIG_IAD210 CONFIG_ppmc8260
|
||||
CONFIG_CANBT CONFIG_ICU862 CONFIG_QS823
|
||||
CONFIG_CCM CONFIG_IP860 CONFIG_QS850
|
||||
CONFIG_CMI CONFIG_IPHASE4539 CONFIG_QS860T
|
||||
CONFIG_cogent_mpc8260 CONFIG_IVML24 CONFIG_RBC823
|
||||
CONFIG_cogent_mpc8xx CONFIG_IVML24_128 CONFIG_RPXClassic
|
||||
CONFIG_CPCI405 CONFIG_IVML24_256 CONFIG_RPXlite
|
||||
CONFIG_CPCI4052 CONFIG_IVMS8 CONFIG_RPXsuper
|
||||
CONFIG_CPCIISER4 CONFIG_IVMS8_128 CONFIG_rsdproto
|
||||
CONFIG_CPU86 CONFIG_IVMS8_256 CONFIG_sacsng
|
||||
CONFIG_CRAYL1 CONFIG_JSE CONFIG_Sandpoint8240
|
||||
CONFIG_CSB272 CONFIG_LANTEC CONFIG_Sandpoint8245
|
||||
CONFIG_CU824 CONFIG_LITE5200B CONFIG_sbc8260
|
||||
CONFIG_DASA_SIM CONFIG_lwmon CONFIG_sbc8560
|
||||
CONFIG_DB64360 CONFIG_MBX CONFIG_SM850
|
||||
CONFIG_DB64460 CONFIG_MBX860T CONFIG_SPD823TS
|
||||
CONFIG_DU405 CONFIG_MHPC CONFIG_STXGP3
|
||||
CONFIG_DUET_ADS CONFIG_MIP405 CONFIG_SXNI855T
|
||||
CONFIG_EBONY CONFIG_MOUSSE CONFIG_TQM823L
|
||||
CONFIG_ELPPC CONFIG_MPC8260ADS CONFIG_TQM8260
|
||||
CONFIG_ELPT860 CONFIG_MPC8540ADS CONFIG_TQM850L
|
||||
CONFIG_ep8260 CONFIG_MPC8540EVAL CONFIG_TQM855L
|
||||
CONFIG_ERIC CONFIG_MPC8560ADS CONFIG_TQM860L
|
||||
CONFIG_ESTEEM192E CONFIG_MUSENKI CONFIG_TTTech
|
||||
CONFIG_ETX094 CONFIG_MVS1 CONFIG_UTX8245
|
||||
CONFIG_EVB64260 CONFIG_NETPHONE CONFIG_V37
|
||||
CONFIG_FADS823 CONFIG_NETTA CONFIG_W7OLMC
|
||||
CONFIG_FADS850SAR CONFIG_NETVIA CONFIG_W7OLMG
|
||||
CONFIG_FADS860T CONFIG_NX823 CONFIG_WALNUT
|
||||
CONFIG_FLAGADM CONFIG_OCRTC CONFIG_ZPC1900
|
||||
CONFIG_FPS850L CONFIG_ORSG CONFIG_ZUMA
|
||||
|
||||
ARM based boards:
|
||||
-----------------
|
||||
|
||||
CONFIG_AT91RM9200DK, CONFIG_CERF250, CONFIG_DNP1110,
|
||||
CONFIG_ARMADILLO, CONFIG_AT91RM9200DK, CONFIG_CERF250,
|
||||
CONFIG_CSB637, CONFIG_DELTA, CONFIG_DNP1110,
|
||||
CONFIG_EP7312, CONFIG_H2_OMAP1610, CONFIG_HHP_CRADLE,
|
||||
CONFIG_IMPA7, CONFIG_INNOVATOROMAP1510, CONFIG_INNOVATOROMAP1610,
|
||||
CONFIG_LART, CONFIG_LPD7A400 CONFIG_LUBBOCK,
|
||||
CONFIG_OSK_OMAP5912, CONFIG_OMAP2420H4, CONFIG_SHANNON,
|
||||
CONFIG_P2_OMAP730, CONFIG_SMDK2400, CONFIG_SMDK2410,
|
||||
CONFIG_TRAB, CONFIG_VCMA9
|
||||
CONFIG_IMPA7, CONFIG_INNOVATOROMAP1510, CONFIG_INNOVATOROMAP1610,
|
||||
CONFIG_KB9202, CONFIG_LART, CONFIG_LPD7A400,
|
||||
CONFIG_LUBBOCK, CONFIG_OSK_OMAP5912, CONFIG_OMAP2420H4,
|
||||
CONFIG_PLEB2, CONFIG_SHANNON, CONFIG_P2_OMAP730,
|
||||
CONFIG_SMDK2400, CONFIG_SMDK2410, CONFIG_TRAB,
|
||||
CONFIG_VCMA9
|
||||
|
||||
MicroBlaze based boards:
|
||||
------------------------
|
||||
@@ -319,6 +323,7 @@ The following options need to be configured:
|
||||
------------------------
|
||||
|
||||
CONFIG_PCI5441 CONFIG_PK1C20
|
||||
CONFIG_EP1C20 CONFIG_EP1S10 CONFIG_EP1S40
|
||||
|
||||
|
||||
- CPU Module Type: (if CONFIG_COGENT is defined)
|
||||
@@ -377,6 +382,20 @@ The following options need to be configured:
|
||||
that this requires a (stable) reference clock (32 kHz
|
||||
RTC clock or CFG_8XX_XIN)
|
||||
|
||||
- Intel Monahans options:
|
||||
CFG_MONAHANS_RUN_MODE_OSC_RATIO
|
||||
|
||||
Defines the Monahans run mode to oscillator
|
||||
ratio. Valid values are 8, 16, 24, 31. The core
|
||||
frequency is this value multiplied by 13 MHz.
|
||||
|
||||
CFG_MONAHANS_TURBO_RUN_MODE_RATIO
|
||||
|
||||
Defines the Monahans turbo mode to oscillator
|
||||
ratio. Valid values are 1 (default if undefined) and
|
||||
2. The core frequency as calculated above is multiplied
|
||||
by this value.
|
||||
|
||||
- Linux Kernel Interface:
|
||||
CONFIG_CLOCKS_IN_MHZ
|
||||
|
||||
@@ -397,6 +416,37 @@ The following options need to be configured:
|
||||
expect it to be in bytes, others in MB.
|
||||
Define CONFIG_MEMSIZE_IN_BYTES to make it in bytes.
|
||||
|
||||
CONFIG_OF_FLAT_TREE
|
||||
|
||||
New kernel versions are expecting firmware settings to be
|
||||
passed using flat open firmware trees.
|
||||
The environment variable "disable_of", when set, disables this
|
||||
functionality.
|
||||
|
||||
CONFIG_OF_FLAT_TREE_MAX_SIZE
|
||||
|
||||
The maximum size of the constructed OF tree.
|
||||
|
||||
OF_CPU - The proper name of the cpus node.
|
||||
OF_SOC - The proper name of the soc node.
|
||||
OF_TBCLK - The timebase frequency.
|
||||
OF_STDOUT_PATH - The path to the console device
|
||||
|
||||
CONFIG_OF_HAS_BD_T
|
||||
|
||||
The resulting flat device tree will have a copy of the bd_t.
|
||||
Space should be pre-allocated in the dts for the bd_t.
|
||||
|
||||
CONFIG_OF_HAS_UBOOT_ENV
|
||||
|
||||
The resulting flat device tree will have a copy of u-boot's
|
||||
environment variables
|
||||
|
||||
CONFIG_OF_BOARD_SETUP
|
||||
|
||||
Board code has addition modification that it wants to make
|
||||
to the flat device tree before handing it off to the kernel
|
||||
|
||||
- Serial Ports:
|
||||
CFG_PL010_SERIAL
|
||||
|
||||
@@ -497,7 +547,7 @@ The following options need to be configured:
|
||||
- Console UART Number:
|
||||
CONFIG_UART1_CONSOLE
|
||||
|
||||
IBM PPC4xx only.
|
||||
AMCC PPC4xx only.
|
||||
If defined internal UART1 (and not UART0) is used
|
||||
as default U-Boot console.
|
||||
|
||||
@@ -590,7 +640,7 @@ The following options need to be configured:
|
||||
CFG_CMD_DIAG * Diagnostics
|
||||
CFG_CMD_DOC * Disk-On-Chip Support
|
||||
CFG_CMD_DTT * Digital Therm and Thermostat
|
||||
CFG_CMD_ECHO * echo arguments
|
||||
CFG_CMD_ECHO echo arguments
|
||||
CFG_CMD_EEPROM * EEPROM read/write support
|
||||
CFG_CMD_ELF * bootelf, bootvx
|
||||
CFG_CMD_ENV saveenv
|
||||
@@ -960,6 +1010,12 @@ The following options need to be configured:
|
||||
allows for a "silent" boot where a splash screen is
|
||||
loaded very quickly after power-on.
|
||||
|
||||
- Gzip compressed BMP image support: CONFIG_VIDEO_BMP_GZIP
|
||||
|
||||
If this option is set, additionally to standard BMP
|
||||
images, gzipped BMP images can be displayed via the
|
||||
splashscreen support or the bmp command.
|
||||
|
||||
- Compression support:
|
||||
CONFIG_BZIP2
|
||||
|
||||
@@ -1355,7 +1411,7 @@ The following options need to be configured:
|
||||
remaining RAM in a form that can be passed as boot
|
||||
argument to Linux, for instance like that:
|
||||
|
||||
setenv bootargs ... mem=\$(mem)
|
||||
setenv bootargs ... mem=\${mem}
|
||||
saveenv
|
||||
|
||||
This way you can tell Linux not to use this memory,
|
||||
@@ -1434,6 +1490,12 @@ The following options need to be configured:
|
||||
of the backslashes before semicolons and special
|
||||
symbols.
|
||||
|
||||
- Commandline Editing and History:
|
||||
CONFIG_CMDLINE_EDITING
|
||||
|
||||
Enable editiong and History functions for interactive
|
||||
commandline input operations
|
||||
|
||||
- Default Environment:
|
||||
CONFIG_EXTRA_ENV_SETTINGS
|
||||
|
||||
@@ -1481,6 +1543,26 @@ The following options need to be configured:
|
||||
When SystemACE support is added, the "ace" device type
|
||||
becomes available to the fat commands, i.e. fatls.
|
||||
|
||||
- TFTP Fixed UDP Port:
|
||||
CONFIG_TFTP_PORT
|
||||
|
||||
If this is defined, the environment variable tftpsrcp
|
||||
is used to supply the TFTP UDP source port value.
|
||||
If tftpsrcp isn't defined, the normal pseudo-random port
|
||||
number generator is used.
|
||||
|
||||
Also, the environment variable tftpdstp is used to supply
|
||||
the TFTP UDP destination port value. If tftpdstp isn't
|
||||
defined, the normal port 69 is used.
|
||||
|
||||
The purpose for tftpsrcp is to allow a TFTP server to
|
||||
blindly start the TFTP transfer using the pre-configured
|
||||
target IP address and UDP port. This has the effect of
|
||||
"punching through" the (Windows XP) firewall, allowing
|
||||
the remainder of the TFTP transfer to proceed normally.
|
||||
A better solution is to properly configure the firewall,
|
||||
but sometimes that is not allowed.
|
||||
|
||||
- Show boot progress:
|
||||
CONFIG_SHOW_BOOT_PROGRESS
|
||||
|
||||
@@ -1675,6 +1757,12 @@ Configuration Settings:
|
||||
- CFG_MALLOC_LEN:
|
||||
Size of DRAM reserved for malloc() use.
|
||||
|
||||
- CFG_BOOTM_LEN:
|
||||
Normally compressed uImages are limited to an
|
||||
uncompressed size of 8 MBytes. If this is not enough,
|
||||
you can define CFG_BOOTM_LEN in your board config file
|
||||
to adjust this setting to your needs.
|
||||
|
||||
- CFG_BOOTMAPSZ:
|
||||
Maximum size of memory mapped by the startup code of
|
||||
the Linux kernel; all data that must be processed by
|
||||
@@ -1724,6 +1812,12 @@ Configuration Settings:
|
||||
This option also enables the building of the cfi_flash driver
|
||||
in the drivers directory
|
||||
|
||||
- CFG_FLASH_QUIET_TEST
|
||||
If this option is defined, the common CFI flash doesn't
|
||||
print it's warning upon not recognized FLASH banks. This
|
||||
is useful, if some of the configured banks are only
|
||||
optionally available.
|
||||
|
||||
- CFG_RX_ETH_BUFFER:
|
||||
Defines the number of ethernet receive buffers. On some
|
||||
ethernet controllers it is recommended to set this value
|
||||
@@ -1898,6 +1992,17 @@ to save the current settings.
|
||||
These two #defines specify the offset and size of the environment
|
||||
area within the first NAND device.
|
||||
|
||||
- CFG_ENV_OFFSET_REDUND
|
||||
|
||||
This setting describes a second storage area of CFG_ENV_SIZE
|
||||
size used to hold a redundant copy of the environment data,
|
||||
so that there is a valid backup copy in case there is a
|
||||
power failure during a "saveenv" operation.
|
||||
|
||||
Note: CFG_ENV_OFFSET and CFG_ENV_OFFSET_REDUND must be aligned
|
||||
to a block boundary, and CFG_ENV_SIZE must be a multiple of
|
||||
the NAND devices block size.
|
||||
|
||||
- CFG_SPI_INIT_OFFSET
|
||||
|
||||
Defines offset to the initial SPI buffer area in DPRAM. The
|
||||
@@ -2218,6 +2323,26 @@ images ready for download to / installation on your system:
|
||||
- "u-boot" is an image in ELF binary format
|
||||
- "u-boot.srec" is in Motorola S-Record format
|
||||
|
||||
By default the build is performed locally and the objects are saved
|
||||
in the source directory. One of the two methods can be used to change
|
||||
this behavior and build U-Boot to some external directory:
|
||||
|
||||
1. Add O= to the make command line invocations:
|
||||
|
||||
make O=/tmp/build distclean
|
||||
make O=/tmp/build NAME_config
|
||||
make O=/tmp/build all
|
||||
|
||||
2. Set environment variable BUILD_DIR to point to the desired location:
|
||||
|
||||
export BUILD_DIR=/tmp/build
|
||||
make distclean
|
||||
make NAME_config
|
||||
make all
|
||||
|
||||
Note that the command line "O=" setting overrides the BUILD_DIR environment
|
||||
variable.
|
||||
|
||||
|
||||
Please be aware that the Makefiles assume you are using GNU make, so
|
||||
for instance on NetBSD you might need to use "gmake" instead of
|
||||
@@ -2271,6 +2396,22 @@ or to build on a native PowerPC system you can type
|
||||
|
||||
CROSS_COMPILE=' ' MAKEALL
|
||||
|
||||
When using the MAKEALL script, the default behaviour is to build U-Boot
|
||||
in the source directory. This location can be changed by setting the
|
||||
BUILD_DIR environment variable. Also, for each target built, the MAKEALL
|
||||
script saves two log files (<target>.ERR and <target>.MAKEALL) in the
|
||||
<source dir>/LOG directory. This default location can be changed by
|
||||
setting the MAKEALL_LOGDIR environment variable. For example:
|
||||
|
||||
export BUILD_DIR=/tmp/build
|
||||
export MAKEALL_LOGDIR=/tmp/log
|
||||
CROSS_COMPILE=ppc_8xx- MAKEALL
|
||||
|
||||
With the above settings build objects are saved in the /tmp/build, log
|
||||
files are saved in the /tmp/log and the source tree remains clean during
|
||||
the whole build process.
|
||||
|
||||
|
||||
See also "U-Boot Porting Guide" below.
|
||||
|
||||
|
||||
@@ -2446,6 +2587,12 @@ Some configuration options can be set using Environment Variables:
|
||||
Useful on scripts which control the retry operation
|
||||
themselves.
|
||||
|
||||
tftpsrcport - If this is set, the value is used for TFTP's
|
||||
UDP source port.
|
||||
|
||||
tftpdstport - If this is set, the value is used for TFTP's UDP
|
||||
destination port instead of the Well Know Port 69.
|
||||
|
||||
vlan - When set to a value < 4095 the traffic over
|
||||
ethernet is encapsulated/received over 802.1q
|
||||
VLAN tagged frames.
|
||||
@@ -2498,10 +2645,10 @@ Old, simple command line parser:
|
||||
|
||||
- supports environment variables (through setenv / saveenv commands)
|
||||
- several commands on one line, separated by ';'
|
||||
- variable substitution using "... $(name) ..." syntax
|
||||
- variable substitution using "... ${name} ..." syntax
|
||||
- special characters ('$', ';') can be escaped by prefixing with '\',
|
||||
for example:
|
||||
setenv bootcmd bootm \$(address)
|
||||
setenv bootcmd bootm \${address}
|
||||
- You can also escape text by enclosing in single apostrophes, for example:
|
||||
setenv addip 'setenv bootargs $bootargs ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname::off'
|
||||
|
||||
@@ -3206,6 +3353,8 @@ On ARM, the following registers are used:
|
||||
|
||||
==> U-Boot will use R8 to hold a pointer to the global data
|
||||
|
||||
NOTE: DECLARE_GLOBAL_DATA_PTR must be used with file-global scope,
|
||||
or current versions of GCC may "optimize" the code too much.
|
||||
|
||||
Memory Management:
|
||||
------------------
|
||||
@@ -3356,12 +3505,19 @@ Coding Standards:
|
||||
-----------------
|
||||
|
||||
All contributions to U-Boot should conform to the Linux kernel
|
||||
coding style; see the file "Documentation/CodingStyle" in your Linux
|
||||
kernel source directory.
|
||||
coding style; see the file "Documentation/CodingStyle" and the script
|
||||
"scripts/Lindent" in your Linux kernel source directory. In sources
|
||||
originating from U-Boot a style corresponding to "Lindent -pcs" (adding
|
||||
spaces before parameters to function calls) is actually used.
|
||||
|
||||
Please note that U-Boot is implemented in C (and to some small parts
|
||||
in Assembler); no C++ is used, so please do not use C++ style
|
||||
comments (//) in your code.
|
||||
Source files originating from a different project (for example the
|
||||
MTD subsystem) are generally exempt from these guidelines and are not
|
||||
reformated to ease subsequent migration to newer versions of those
|
||||
sources.
|
||||
|
||||
Please note that U-Boot is implemented in C (and to some small parts in
|
||||
Assembler); no C++ is used, so please do not use C++ style comments (//)
|
||||
in your code.
|
||||
|
||||
Please also stick to the following formatting rules:
|
||||
- remove any trailing white space
|
||||
|
||||
24
blackfin_config.mk
Normal file
24
blackfin_config.mk
Normal file
@@ -0,0 +1,24 @@
|
||||
#
|
||||
# (C) Copyright 2000-2002
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
# project.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation; either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
# MA 02111-1307 USA
|
||||
#
|
||||
|
||||
PLATFORM_CPPFLAGS += -DCONFIG_BLACKFIN -D__blackfin__
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# (C) Copyright 2003
|
||||
# (C) Copyright 2003-2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
@@ -23,18 +23,22 @@
|
||||
|
||||
include $(TOPDIR)/config.mk
|
||||
|
||||
LIB = lib$(BOARD).a
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
OBJS = $(BOARD).o flash.o
|
||||
COBJS = $(BOARD).o flash.o
|
||||
|
||||
$(LIB): .depend $(OBJS)
|
||||
$(AR) crv $@ $(OBJS)
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(COBJS))
|
||||
SOBJS := $(addprefix $(obj),$(SOBJS))
|
||||
|
||||
$(LIB): $(obj).depend $(OBJS)
|
||||
$(AR) $(ARFLAGS) $@ $(OBJS)
|
||||
|
||||
#########################################################################
|
||||
|
||||
.depend: Makefile $(SOBJS:.o=.S) $(OBJS:.o=.c)
|
||||
$(CC) -M $(CFLAGS) $(SOBJS:.o=.S) $(OBJS:.o=.c) > $@
|
||||
# defines $(obj).depend target
|
||||
include $(SRCTREE)/rules.mk
|
||||
|
||||
sinclude .depend
|
||||
sinclude $(obj).depend
|
||||
|
||||
#########################################################################
|
||||
|
||||
162
board/BuS/EB+MCF-EV123/EB+MCF-EV123.c
Normal file
162
board/BuS/EB+MCF-EV123/EB+MCF-EV123.c
Normal file
@@ -0,0 +1,162 @@
|
||||
/*
|
||||
* (C) Copyright 2005
|
||||
* BuS Elektronik GmbH & Co.KG <esw@bus-elektonik.de>
|
||||
*
|
||||
* (C) Copyright 2000-2003
|
||||
* Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
#include <command.h>
|
||||
#include "asm/m5282.h"
|
||||
#include "VCxK.h"
|
||||
|
||||
int checkboard (void)
|
||||
{
|
||||
puts ("Board: MCF-EV1 + MCF-EV23 (BuS Elektronik GmbH & Co. KG)\n");
|
||||
#if (TEXT_BASE == CFG_INT_FLASH_BASE)
|
||||
puts (" Boot from Internal FLASH\n");
|
||||
#endif
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
long int initdram (int board_type)
|
||||
{
|
||||
int size,i;
|
||||
|
||||
size = 0;
|
||||
MCFSDRAMC_DCR = MCFSDRAMC_DCR_RTIM_6
|
||||
| MCFSDRAMC_DCR_RC((15 * CFG_CLK)>>4);
|
||||
#ifdef CFG_SDRAM_BASE0
|
||||
|
||||
MCFSDRAMC_DACR0 = MCFSDRAMC_DACR_BASE(CFG_SDRAM_BASE0)
|
||||
| MCFSDRAMC_DACR_CASL(1)
|
||||
| MCFSDRAMC_DACR_CBM(3)
|
||||
| MCFSDRAMC_DACR_PS_16);
|
||||
|
||||
MCFSDRAMC_DMR0 = MCFSDRAMC_DMR_BAM_16M
|
||||
| MCFSDRAMC_DMR_V;
|
||||
|
||||
MCFSDRAMC_DACR0 |= MCFSDRAMC_DACR_IP;
|
||||
|
||||
*(unsigned short *)(CFG_SDRAM_BASE0) = 0xA5A5;
|
||||
MCFSDRAMC_DACR0 |= MCFSDRAMC_DACR_RE;
|
||||
for (i=0; i < 2000; i++)
|
||||
asm(" nop");
|
||||
mbar_writeLong(MCFSDRAMC_DACR0, mbar_readLong(MCFSDRAMC_DACR0)
|
||||
| MCFSDRAMC_DACR_IMRS);
|
||||
*(unsigned int *)(CFG_SDRAM_BASE0 + 0x220) = 0xA5A5;
|
||||
size += CFG_SDRAM_SIZE * 1024 * 1024;
|
||||
#endif
|
||||
#ifdef CFG_SDRAM_BASE1
|
||||
MCFSDRAMC_DACR1 = MCFSDRAMC_DACR_BASE(CFG_SDRAM_BASE1)
|
||||
| MCFSDRAMC_DACR_CASL(1)
|
||||
| MCFSDRAMC_DACR_CBM(3)
|
||||
| MCFSDRAMC_DACR_PS_16;
|
||||
|
||||
MCFSDRAMC_DMR1 = MCFSDRAMC_DMR_BAM_16M
|
||||
| MCFSDRAMC_DMR_V;
|
||||
|
||||
MCFSDRAMC_DACR1 |= MCFSDRAMC_DACR_IP;
|
||||
|
||||
*(unsigned short *)(CFG_SDRAM_BASE1) = 0xA5A5;
|
||||
MCFSDRAMC_DACR1 |= MCFSDRAMC_DACR_RE;
|
||||
for (i=0; i < 2000; i++)
|
||||
asm(" nop");
|
||||
MCFSDRAMC_DACR1 |= MCFSDRAMC_DACR_IMRS;
|
||||
*(unsigned int *)(CFG_SDRAM_BASE1 + 0x220) = 0xA5A5;
|
||||
size += CFG_SDRAM_SIZE1 * 1024 * 1024;
|
||||
#endif
|
||||
return size;
|
||||
}
|
||||
|
||||
|
||||
#if defined(CFG_DRAM_TEST)
|
||||
int testdram (void)
|
||||
{
|
||||
uint *pstart = (uint *) CFG_MEMTEST_START;
|
||||
uint *pend = (uint *) CFG_MEMTEST_END;
|
||||
uint *p;
|
||||
|
||||
printf("SDRAM test phase 1:\n");
|
||||
for (p = pstart; p < pend; p++)
|
||||
*p = 0xaaaaaaaa;
|
||||
|
||||
for (p = pstart; p < pend; p++) {
|
||||
if (*p != 0xaaaaaaaa) {
|
||||
printf ("SDRAM test fails at: %08x\n", (uint) p);
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
printf("SDRAM test phase 2:\n");
|
||||
for (p = pstart; p < pend; p++)
|
||||
*p = 0x55555555;
|
||||
|
||||
for (p = pstart; p < pend; p++) {
|
||||
if (*p != 0x55555555) {
|
||||
printf ("SDRAM test fails at: %08x\n", (uint) p);
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
printf("SDRAM test passed.\n");
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
int misc_init_r(void)
|
||||
{
|
||||
init_vcxk();
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*---------------------------------------------------------------------------*/
|
||||
|
||||
int do_vcimage (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
|
||||
{
|
||||
int rcode = 0;
|
||||
ulong source;
|
||||
|
||||
switch (argc) {
|
||||
case 2:
|
||||
source = simple_strtoul(argv[1],NULL,16);
|
||||
vcxk_loadimage(source);
|
||||
rcode = 0;
|
||||
break;
|
||||
default:
|
||||
printf ("Usage:\n%s\n", cmdtp->usage);
|
||||
rcode = 1;
|
||||
break;
|
||||
}
|
||||
return rcode;
|
||||
}
|
||||
|
||||
/***************************************************/
|
||||
|
||||
U_BOOT_CMD(
|
||||
vcimage, 2, 0, do_vcimage,
|
||||
"vcimage - loads an image to Display\n",
|
||||
"vcimage addr\n"
|
||||
);
|
||||
|
||||
/* EOF EB+MCF-EV123c */
|
||||
44
board/BuS/EB+MCF-EV123/Makefile
Normal file
44
board/BuS/EB+MCF-EV123/Makefile
Normal file
@@ -0,0 +1,44 @@
|
||||
#
|
||||
# (C) Copyright 2000-2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
# project.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation; either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
# MA 02111-1307 USA
|
||||
#
|
||||
|
||||
include $(TOPDIR)/config.mk
|
||||
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
COBJS = $(BOARD).o cfm_flash.o flash.o VCxK.o
|
||||
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(COBJS))
|
||||
SOBJS := $(addprefix $(obj),$(SOBJS))
|
||||
|
||||
$(LIB): $(obj).depend $(OBJS)
|
||||
$(AR) $(ARFLAGS) $@ $(OBJS)
|
||||
|
||||
#########################################################################
|
||||
|
||||
# defines $(obj).depend target
|
||||
include $(SRCTREE)/rules.mk
|
||||
|
||||
sinclude $(obj).depend
|
||||
|
||||
#########################################################################
|
||||
136
board/BuS/EB+MCF-EV123/VCxK.c
Normal file
136
board/BuS/EB+MCF-EV123/VCxK.c
Normal file
@@ -0,0 +1,136 @@
|
||||
/*
|
||||
* (C) Copyright 2005
|
||||
* BuS Elektronik GmbH & Co.KG <esw@bus-elektonik.de>
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
#include <asm/m5282.h>
|
||||
#include "VCxK.h"
|
||||
|
||||
vu_char *vcxk_bws = (vu_char *)(CFG_CS3_BASE);
|
||||
#define VCXK_BWS vcxk_bws
|
||||
|
||||
static ulong vcxk_driver;
|
||||
|
||||
|
||||
ulong search_vcxk_driver(void);
|
||||
void vcxk_cls(void);
|
||||
void vcxk_setbrightness(short brightness);
|
||||
int vcxk_request(void);
|
||||
int vcxk_acknowledge_wait(void);
|
||||
void vcxk_clear(void);
|
||||
|
||||
int init_vcxk(void)
|
||||
{
|
||||
VIDEO_Invert_CFG &= ~VIDEO_Invert_IO;
|
||||
VIDEO_INVERT_PORT |= VIDEO_INVERT_PIN;
|
||||
VIDEO_INVERT_DDR |= VIDEO_INVERT_PIN;
|
||||
|
||||
VIDEO_REQUEST_PORT |= VIDEO_REQUEST_PIN;
|
||||
VIDEO_REQUEST_DDR |= VIDEO_REQUEST_PIN;
|
||||
|
||||
VIDEO_ACKNOWLEDGE_DDR &= ~VIDEO_ACKNOWLEDGE_PIN;
|
||||
|
||||
vcxk_driver = search_vcxk_driver();
|
||||
if (vcxk_driver)
|
||||
{
|
||||
/* use flash resist driver */
|
||||
}
|
||||
else
|
||||
{
|
||||
vcxk_cls();
|
||||
vcxk_cls();
|
||||
vcxk_setbrightness(1000);
|
||||
}
|
||||
VIDEO_ENABLE_DDR |= VIDEO_ENABLE_PIN;
|
||||
VIDEO_ENABLE_PORT |= VIDEO_ENABLE_PIN;
|
||||
VIDEO_ENABLE_PORT &= ~VIDEO_ENABLE_PIN;
|
||||
return 1;
|
||||
}
|
||||
|
||||
void vcxk_loadimage(ulong source)
|
||||
{
|
||||
int cnt;
|
||||
vcxk_acknowledge_wait();
|
||||
for (cnt=0; cnt<16384; cnt++)
|
||||
{
|
||||
VCXK_BWS[cnt*2] = (*(vu_char*) source);
|
||||
source++;
|
||||
}
|
||||
vcxk_request();
|
||||
}
|
||||
|
||||
void vcxk_cls(void)
|
||||
{
|
||||
vcxk_acknowledge_wait();
|
||||
vcxk_clear();
|
||||
vcxk_request();
|
||||
}
|
||||
|
||||
void vcxk_clear(void)
|
||||
{
|
||||
int cnt;
|
||||
for (cnt=0; cnt<16384; cnt++)
|
||||
{
|
||||
VCXK_BWS[cnt*2] = 0x00;
|
||||
}
|
||||
}
|
||||
|
||||
void vcxk_setbrightness(short brightness)
|
||||
{
|
||||
VCXK_BWS[0x8000]=(brightness >> 4) +2;
|
||||
VCXK_BWS[0xC000]= (brightness + 23) >> 8;
|
||||
VCXK_BWS[0xC001]= (brightness + 23) & 0xFF;
|
||||
}
|
||||
|
||||
int vcxk_request(void)
|
||||
{
|
||||
if (vcxk_driver)
|
||||
{
|
||||
/* use flash resist driver */
|
||||
}
|
||||
else
|
||||
{
|
||||
VIDEO_REQUEST_PORT &= ~VIDEO_REQUEST_PIN;
|
||||
VIDEO_REQUEST_PORT |= VIDEO_REQUEST_PIN;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
int vcxk_acknowledge_wait(void)
|
||||
{
|
||||
if (vcxk_driver)
|
||||
{
|
||||
/* use flash resist driver */
|
||||
}
|
||||
else
|
||||
{
|
||||
while (!(VIDEO_ACKNOWLEDGE_PORT & VIDEO_ACKNOWLEDGE_PIN));
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
ulong search_vcxk_driver(void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* eof */
|
||||
48
board/BuS/EB+MCF-EV123/VCxK.h
Normal file
48
board/BuS/EB+MCF-EV123/VCxK.h
Normal file
@@ -0,0 +1,48 @@
|
||||
/*
|
||||
* (C) Copyright 2005
|
||||
* BuS Elektronik GmbH & Co.KG <esw@bus-elektonik.de>
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#ifndef __VCXK_H_
|
||||
#define __VCXK_H_
|
||||
|
||||
extern int init_vcxk(void);
|
||||
void vcxk_loadimage(ulong source);
|
||||
|
||||
#define VIDEO_ACKNOWLEDGE_PORT MCFGPTB_GPTPORT
|
||||
#define VIDEO_ACKNOWLEDGE_DDR MCFGPTB_GPTDDR
|
||||
#define VIDEO_ACKNOWLEDGE_PIN 0x0001
|
||||
|
||||
#define VIDEO_ENABLE_PORT MCFGPTB_GPTPORT
|
||||
#define VIDEO_ENABLE_DDR MCFGPTB_GPTDDR
|
||||
#define VIDEO_ENABLE_PIN 0x0002
|
||||
|
||||
#define VIDEO_REQUEST_PORT MCFGPTB_GPTPORT
|
||||
#define VIDEO_REQUEST_DDR MCFGPTB_GPTDDR
|
||||
#define VIDEO_REQUEST_PIN 0x0004
|
||||
|
||||
#define VIDEO_Invert_CFG MCFGPIO_PEPAR
|
||||
#define VIDEO_Invert_IO MCFGPIO_PEPAR_PEPA2
|
||||
#define VIDEO_INVERT_PORT MCFGPIO_PORTE
|
||||
#define VIDEO_INVERT_DDR MCFGPIO_DDRE
|
||||
#define VIDEO_INVERT_PIN MCFGPIO_PORT2
|
||||
|
||||
#endif
|
||||
212
board/BuS/EB+MCF-EV123/cfm_flash.c
Normal file
212
board/BuS/EB+MCF-EV123/cfm_flash.c
Normal file
@@ -0,0 +1,212 @@
|
||||
/*
|
||||
* Basic Flash Driver for Freescale MCF 5281/5282 internal FLASH
|
||||
*
|
||||
* (C) Copyright 2005 BuS Elektronik GmbH & Co.KG <esw@bus-elektonik.de>
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
#include <asm/m5282.h>
|
||||
#include "cfm_flash.h"
|
||||
|
||||
#if defined(CONFIG_M5281) || defined(CONFIG_M5282)
|
||||
|
||||
#if (CFG_CLK>20000000)
|
||||
#define CFM_CLK (((long) CFG_CLK / (400000 * 8) + 1) | 0x40)
|
||||
#else
|
||||
#define CFM_CLK ((long) CFG_CLK / 400000 + 1)
|
||||
#endif
|
||||
|
||||
#define cmf_backdoor_address(addr) (((addr) & 0x0007FFFF) | 0x04000000 | \
|
||||
(CFG_MBAR & 0xC0000000))
|
||||
|
||||
void cfm_flash_print_info (flash_info_t * info)
|
||||
{
|
||||
printf ("Freescale: ");
|
||||
switch (info->flash_id & FLASH_TYPEMASK) {
|
||||
case FREESCALE_ID_MCF5281 & FLASH_TYPEMASK:
|
||||
printf ("MCF5281 internal FLASH\n");
|
||||
break;
|
||||
case FREESCALE_ID_MCF5282 & FLASH_TYPEMASK:
|
||||
printf ("MCF5282 internal FLASH\n");
|
||||
break;
|
||||
default:
|
||||
printf ("Unknown Chip Type\n");
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void cfm_flash_init (flash_info_t * info)
|
||||
{
|
||||
int sector;
|
||||
ulong protection;
|
||||
MCFCFM_MCR = 0;
|
||||
MCFCFM_CLKD = CFM_CLK;
|
||||
debug ("CFM Clock divider: %ld (%d Hz @ %ld Hz)\n",CFM_CLK,\
|
||||
CFG_CLK / (2* ((CFM_CLK & 0x3F)+1) * (1+((CFM_CLK & 0x40)>>6)*7)),\
|
||||
CFG_CLK);
|
||||
MCFCFM_SACC = 0;
|
||||
MCFCFM_DACC = 0;
|
||||
|
||||
if (MCFCFM_SEC & MCFCFM_SEC_KEYEN)
|
||||
puts("CFM backdoor access is enabled\n");
|
||||
if (MCFCFM_SEC & MCFCFM_SEC_SECSTAT)
|
||||
puts("CFM securety is enabled\n");
|
||||
|
||||
#ifdef CONFIG_M5281
|
||||
info->flash_id = (FREESCALE_MANUFACT & FLASH_VENDMASK) |
|
||||
(FREESCALE_ID_MCF5281 & FLASH_TYPEMASK);
|
||||
info->size = 256*1024;
|
||||
info->sector_count = 16;
|
||||
#else
|
||||
info->flash_id = (FREESCALE_MANUFACT & FLASH_VENDMASK) |
|
||||
(FREESCALE_ID_MCF5282 & FLASH_TYPEMASK);
|
||||
info->size = 512*1024;
|
||||
info->sector_count = 32;
|
||||
#endif
|
||||
protection = MCFCFM_PROT;
|
||||
for (sector = 0; sector < info->sector_count; sector++)
|
||||
{
|
||||
if (sector == 0)
|
||||
{
|
||||
info->start[sector] = CFG_INT_FLASH_BASE;
|
||||
}
|
||||
else
|
||||
{
|
||||
info->start[sector] = info->start[sector-1] + 0x04000;
|
||||
}
|
||||
info->protect[sector] = protection & 1;
|
||||
protection >>= 1;
|
||||
}
|
||||
}
|
||||
|
||||
int cfm_flash_readycheck(int checkblank)
|
||||
{
|
||||
int rc;
|
||||
unsigned char state;
|
||||
|
||||
rc = ERR_OK;
|
||||
while (!(MCFCFM_USTAT & MCFCFM_USTAT_CCIF));
|
||||
state = MCFCFM_USTAT;
|
||||
if (state & MCFCFM_USTAT_ACCERR)
|
||||
{
|
||||
debug ("%s(): CFM access error",__FUNCTION__);
|
||||
rc = ERR_PROG_ERROR;
|
||||
}
|
||||
if (state & MCFCFM_USTAT_PVIOL)
|
||||
{
|
||||
debug ("%s(): CFM protection violation",__FUNCTION__);
|
||||
rc = ERR_PROTECTED;
|
||||
}
|
||||
if (checkblank)
|
||||
{
|
||||
if (!(state & MCFCFM_USTAT_BLANK))
|
||||
{
|
||||
debug ("%s(): CFM erras error",__FUNCTION__);
|
||||
rc = ERR_NOT_ERASED;
|
||||
}
|
||||
}
|
||||
MCFCFM_USTAT = state & 0x34; /* reset state */
|
||||
return rc;
|
||||
}
|
||||
|
||||
/* Erase 16KiB = 8 2KiB pages */
|
||||
|
||||
int cfm_flash_erase_sector (flash_info_t * info, int sector)
|
||||
{
|
||||
ulong address;
|
||||
int page;
|
||||
int rc;
|
||||
rc= ERR_OK;
|
||||
address = cmf_backdoor_address(info->start[sector]);
|
||||
for (page=0; (page<8) && (rc==ERR_OK); page++)
|
||||
{
|
||||
*(volatile __u32*) address = 0;
|
||||
MCFCFM_CMD = MCFCFM_CMD_PGERS;
|
||||
MCFCFM_USTAT = MCFCFM_USTAT_CBEIF;
|
||||
rc = cfm_flash_readycheck(0);
|
||||
if (rc==ERR_OK)
|
||||
{
|
||||
*(volatile __u32*) address = 0;
|
||||
MCFCFM_CMD = MCFCFM_CMD_PGERSVER;
|
||||
MCFCFM_USTAT = MCFCFM_USTAT_CBEIF;
|
||||
rc = cfm_flash_readycheck(1);
|
||||
}
|
||||
address += 0x800;
|
||||
}
|
||||
return rc;
|
||||
}
|
||||
|
||||
int cfm_flash_write_buff (flash_info_t * info, uchar * src, ulong addr, ulong cnt)
|
||||
{
|
||||
int rc;
|
||||
ulong dest, data;
|
||||
|
||||
rc = ERR_OK;
|
||||
if (addr & 3)
|
||||
{
|
||||
debug ("Byte and Word alignment not supported\n");
|
||||
rc = ERR_ALIGN;
|
||||
}
|
||||
if (cnt & 3)
|
||||
{
|
||||
debug ("Byte and Word transfer not supported\n");
|
||||
rc = ERR_ALIGN;
|
||||
}
|
||||
dest = cmf_backdoor_address(addr);
|
||||
while ((cnt>=4) && (rc == ERR_OK))
|
||||
{
|
||||
data =*((volatile u32 *) src);
|
||||
*(volatile u32*) dest = data;
|
||||
MCFCFM_CMD = MCFCFM_CMD_PGM;
|
||||
MCFCFM_USTAT = MCFCFM_USTAT_CBEIF;
|
||||
rc = cfm_flash_readycheck(0);
|
||||
if (*(volatile u32*) addr != data) rc = ERR_PROG_ERROR;
|
||||
src +=4;
|
||||
dest +=4;
|
||||
addr +=4;
|
||||
cnt -=4;
|
||||
}
|
||||
return rc;
|
||||
}
|
||||
|
||||
#ifdef CFG_FLASH_PROTECTION
|
||||
|
||||
int cfm_flash_protect(flash_info_t * info,long sector,int prot)
|
||||
{
|
||||
int rc;
|
||||
|
||||
rc= ERR_OK;
|
||||
if (prot)
|
||||
{
|
||||
MCFCFM_PROT |= (1<<sector);
|
||||
info->protect[sector]=1;
|
||||
}
|
||||
else
|
||||
{
|
||||
MCFCFM_PROT &= ~(1<<sector);
|
||||
info->protect[sector]=0;
|
||||
}
|
||||
return rc;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
40
board/BuS/EB+MCF-EV123/cfm_flash.h
Normal file
40
board/BuS/EB+MCF-EV123/cfm_flash.h
Normal file
@@ -0,0 +1,40 @@
|
||||
/*
|
||||
* Basic Flash Driver for Freescale MCF 5282 internal FLASH
|
||||
*
|
||||
* (C) Copyright 2005 BuS Elektronik GmbH & Co.KG <esw@bus-elektonik.de>
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#ifndef __CFM_FLASH_H_
|
||||
#define __CFM_FLASH_H_
|
||||
|
||||
#define FREESCALE_MANUFACT 0xFACFFACF
|
||||
#define FREESCALE_ID_MCF5281 0x5281
|
||||
#define FREESCALE_ID_MCF5282 0x5282
|
||||
|
||||
extern void cfm_flash_print_info (flash_info_t * info);
|
||||
extern int cfm_flash_erase_sector (flash_info_t * info, int sector);
|
||||
extern void cfm_flash_init (flash_info_t * info);
|
||||
extern int cfm_flash_write_buff (flash_info_t * info, uchar * src, ulong addr, ulong cnt);
|
||||
#ifdef CFG_FLASH_PROTECTION
|
||||
extern int cfm_flash_protect(flash_info_t * info,long sector,int prot);
|
||||
#endif
|
||||
|
||||
#endif
|
||||
28
board/BuS/EB+MCF-EV123/config.mk
Normal file
28
board/BuS/EB+MCF-EV123/config.mk
Normal file
@@ -0,0 +1,28 @@
|
||||
#
|
||||
# (C) Copyright 2000-2003
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
# Coldfire contribution by Bernhard Kuhn <bkuhn@metrowerks.com>
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
# project.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation; either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
# MA 02111-1307 USA
|
||||
#
|
||||
|
||||
sinclude $(TOPDIR)/board/$(BOARDDIR)/textbase.mk
|
||||
ifndef TEXT_BASE
|
||||
TEXT_BASE = 0xFE000000
|
||||
endif
|
||||
413
board/BuS/EB+MCF-EV123/flash.c
Normal file
413
board/BuS/EB+MCF-EV123/flash.c
Normal file
@@ -0,0 +1,413 @@
|
||||
/*
|
||||
* (C) Copyright 2005
|
||||
* BuS Elektronik GmbH & Co.KG <esw@bus-elektonik.de>
|
||||
*
|
||||
* Based On
|
||||
* Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
#include "cfm_flash.h"
|
||||
|
||||
#define PHYS_FLASH_1 CFG_FLASH_BASE
|
||||
#define FLASH_BANK_SIZE 0x200000
|
||||
|
||||
flash_info_t flash_info[CFG_MAX_FLASH_BANKS];
|
||||
|
||||
void flash_print_info (flash_info_t * info)
|
||||
{
|
||||
int i;
|
||||
|
||||
switch (info->flash_id & FLASH_VENDMASK) {
|
||||
case (AMD_MANUFACT & FLASH_VENDMASK):
|
||||
printf ("AMD: ");
|
||||
switch (info->flash_id & FLASH_TYPEMASK) {
|
||||
case (AMD_ID_LV160B & FLASH_TYPEMASK):
|
||||
printf ("AM29LV160B (16Bit)\n");
|
||||
break;
|
||||
default:
|
||||
printf ("Unknown Chip Type\n");
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case FREESCALE_MANUFACT & FLASH_VENDMASK:
|
||||
cfm_flash_print_info (info);
|
||||
break;
|
||||
default:
|
||||
printf ("Unknown Vendor ");
|
||||
break;
|
||||
}
|
||||
|
||||
puts (" Size: ");
|
||||
if ((info->size >> 20) > 0)
|
||||
{
|
||||
printf ("%ld MiB",info->size >> 20);
|
||||
}
|
||||
else
|
||||
{
|
||||
printf ("%ld KiB",info->size >> 10);
|
||||
}
|
||||
printf (" in %d Sectors\n", info->sector_count);
|
||||
|
||||
printf (" Sector Start Addresses:");
|
||||
for (i = 0; i < info->sector_count; i++) {
|
||||
if ((i % 4) == 0) {
|
||||
printf ("\n ");
|
||||
}
|
||||
printf ("%02d: %08lX%s ", i,info->start[i],
|
||||
info->protect[i] ? " P" : " ");
|
||||
}
|
||||
printf ("\n\n");
|
||||
}
|
||||
|
||||
unsigned long flash_init (void)
|
||||
{
|
||||
int i, j;
|
||||
ulong size = 0;
|
||||
|
||||
for (i = 0; i < CFG_MAX_FLASH_BANKS; i++) {
|
||||
ulong flashbase = 0;
|
||||
|
||||
switch (i)
|
||||
{
|
||||
case 1:
|
||||
flash_info[i].flash_id =
|
||||
(AMD_MANUFACT & FLASH_VENDMASK) |
|
||||
(AMD_ID_LV160B & FLASH_TYPEMASK);
|
||||
flash_info[i].size = FLASH_BANK_SIZE;
|
||||
flash_info[i].sector_count = CFG_MAX_FLASH_SECT;
|
||||
memset (flash_info[i].protect, 0, CFG_MAX_FLASH_SECT);
|
||||
flashbase = PHYS_FLASH_1;
|
||||
for (j = 0; j < flash_info[i].sector_count; j++) {
|
||||
if (j == 0) {
|
||||
/* 1st is 16 KiB */
|
||||
flash_info[i].start[j] = flashbase;
|
||||
}
|
||||
if ((j >= 1) && (j <= 2)) {
|
||||
/* 2nd and 3rd are 8 KiB */
|
||||
flash_info[i].start[j] =
|
||||
flashbase + 0x4000 + 0x2000 * (j - 1);
|
||||
}
|
||||
if (j == 3) {
|
||||
/* 4th is 32 KiB */
|
||||
flash_info[i].start[j] = flashbase + 0x8000;
|
||||
}
|
||||
if ((j >= 4) && (j <= 34)) {
|
||||
/* rest is 256 KiB */
|
||||
flash_info[i].start[j] =
|
||||
flashbase + 0x10000 + 0x10000 * (j - 4);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 0:
|
||||
cfm_flash_init (&flash_info[i]);
|
||||
break;
|
||||
default:
|
||||
panic ("configured to many flash banks!\n");
|
||||
}
|
||||
|
||||
size += flash_info[i].size;
|
||||
}
|
||||
|
||||
flash_protect (FLAG_PROTECT_SET,
|
||||
CFG_FLASH_BASE,
|
||||
CFG_FLASH_BASE + 0xffff, &flash_info[0]);
|
||||
|
||||
return size;
|
||||
}
|
||||
|
||||
#define CMD_READ_ARRAY 0x00F0
|
||||
#define CMD_UNLOCK1 0x00AA
|
||||
#define CMD_UNLOCK2 0x0055
|
||||
#define CMD_ERASE_SETUP 0x0080
|
||||
#define CMD_ERASE_CONFIRM 0x0030
|
||||
#define CMD_PROGRAM 0x00A0
|
||||
#define CMD_UNLOCK_BYPASS 0x0020
|
||||
|
||||
#define MEM_FLASH_ADDR1 (*(volatile u16 *)(info->start[0] + (0x00000555<<1)))
|
||||
#define MEM_FLASH_ADDR2 (*(volatile u16 *)(info->start[0] + (0x000002AA<<1)))
|
||||
|
||||
|
||||
#define BIT_ERASE_DONE 0x0080
|
||||
#define BIT_RDY_MASK 0x0080
|
||||
#define BIT_PROGRAM_ERROR 0x0020
|
||||
#define BIT_TIMEOUT 0x80000000 /* our flag */
|
||||
|
||||
#define ERR_READY -1
|
||||
|
||||
int amd_flash_erase_sector(flash_info_t * info, int sector)
|
||||
{
|
||||
int state;
|
||||
ulong result;
|
||||
|
||||
volatile u16 *addr =
|
||||
(volatile u16 *) (info->start[sector]);
|
||||
|
||||
MEM_FLASH_ADDR1 = CMD_UNLOCK1;
|
||||
MEM_FLASH_ADDR2 = CMD_UNLOCK2;
|
||||
MEM_FLASH_ADDR1 = CMD_ERASE_SETUP;
|
||||
|
||||
MEM_FLASH_ADDR1 = CMD_UNLOCK1;
|
||||
MEM_FLASH_ADDR2 = CMD_UNLOCK2;
|
||||
*addr = CMD_ERASE_CONFIRM;
|
||||
|
||||
/* wait until flash is ready */
|
||||
state = 0;
|
||||
set_timer (0);
|
||||
|
||||
do {
|
||||
result = *addr;
|
||||
|
||||
/* check timeout */
|
||||
if (get_timer (0) > CFG_FLASH_ERASE_TOUT) {
|
||||
MEM_FLASH_ADDR1 = CMD_READ_ARRAY;
|
||||
state = ERR_TIMOUT;
|
||||
}
|
||||
|
||||
if (!state && (result & 0xFFFF) & BIT_ERASE_DONE)
|
||||
state = ERR_READY;
|
||||
}
|
||||
while (!state);
|
||||
if (state == ERR_READY)
|
||||
state = ERR_OK;
|
||||
|
||||
MEM_FLASH_ADDR1 = CMD_READ_ARRAY;
|
||||
|
||||
return state;
|
||||
}
|
||||
|
||||
int flash_erase (flash_info_t * info, int s_first, int s_last)
|
||||
{
|
||||
int iflag, cflag;
|
||||
int sector;
|
||||
int rc;
|
||||
|
||||
rc = ERR_OK;
|
||||
|
||||
if (info->flash_id == FLASH_UNKNOWN)
|
||||
{
|
||||
rc = ERR_UNKNOWN_FLASH_TYPE;
|
||||
} /* (info->flash_id == FLASH_UNKNOWN) */
|
||||
|
||||
if ((s_first < 0) || (s_first > s_last) || s_last >= info->sector_count)
|
||||
{
|
||||
rc = ERR_INVAL;
|
||||
}
|
||||
|
||||
cflag = icache_status ();
|
||||
icache_disable ();
|
||||
iflag = disable_interrupts ();
|
||||
|
||||
for (sector = s_first; (sector <= s_last) && (rc == ERR_OK); sector++) {
|
||||
|
||||
if (info->protect[sector])
|
||||
{
|
||||
putc('P'); /* protected sector will not erase */
|
||||
}
|
||||
else
|
||||
{
|
||||
/* erase on unprotected sector */
|
||||
puts("E\b");
|
||||
switch (info->flash_id & FLASH_VENDMASK)
|
||||
{
|
||||
case (AMD_MANUFACT & FLASH_VENDMASK):
|
||||
rc = amd_flash_erase_sector(info,sector);
|
||||
break;
|
||||
case (FREESCALE_MANUFACT & FLASH_VENDMASK):
|
||||
rc = cfm_flash_erase_sector(info,sector);
|
||||
break;
|
||||
default:
|
||||
return ERR_UNKNOWN_FLASH_VENDOR;
|
||||
}
|
||||
putc('.');
|
||||
}
|
||||
}
|
||||
if (rc!=ERR_OK)
|
||||
{
|
||||
printf ("\n ");
|
||||
flash_perror (rc);
|
||||
}
|
||||
else
|
||||
{
|
||||
printf (" done\n");
|
||||
}
|
||||
|
||||
udelay (10000); /* allow flash to settle - wait 10 ms */
|
||||
|
||||
if (iflag)
|
||||
enable_interrupts ();
|
||||
|
||||
if (cflag)
|
||||
icache_enable ();
|
||||
|
||||
return rc;
|
||||
}
|
||||
|
||||
volatile static int amd_write_word (flash_info_t * info, ulong dest, u16 data)
|
||||
{
|
||||
volatile u16 *addr;
|
||||
ulong result;
|
||||
int cflag, iflag;
|
||||
int state;
|
||||
|
||||
/*
|
||||
* Check if Flash is (sufficiently) erased
|
||||
*/
|
||||
addr = (volatile u16 *) dest;
|
||||
|
||||
result = *addr;
|
||||
if ((result & data) != data)
|
||||
return ERR_NOT_ERASED;
|
||||
|
||||
/*
|
||||
* Disable interrupts which might cause a timeout
|
||||
* here. Remember that our exception vectors are
|
||||
* at address 0 in the flash, and we don't want a
|
||||
* (ticker) exception to happen while the flash
|
||||
* chip is in programming mode.
|
||||
*/
|
||||
|
||||
cflag = icache_status ();
|
||||
icache_disable ();
|
||||
iflag = disable_interrupts ();
|
||||
|
||||
MEM_FLASH_ADDR1 = CMD_UNLOCK1;
|
||||
MEM_FLASH_ADDR2 = CMD_UNLOCK2;
|
||||
MEM_FLASH_ADDR1 = CMD_PROGRAM;
|
||||
*addr = data;
|
||||
|
||||
/* arm simple, non interrupt dependent timer */
|
||||
set_timer (0);
|
||||
|
||||
/* wait until flash is ready */
|
||||
state = 0;
|
||||
do {
|
||||
result = *addr;
|
||||
|
||||
/* check timeout */
|
||||
if (get_timer (0) > CFG_FLASH_ERASE_TOUT) {
|
||||
state = ERR_TIMOUT;
|
||||
}
|
||||
if (!state && ((result & BIT_RDY_MASK) == (data & BIT_RDY_MASK)))
|
||||
state = ERR_READY;
|
||||
|
||||
} while (!state);
|
||||
|
||||
*addr = CMD_READ_ARRAY;
|
||||
|
||||
if (state == ERR_READY)
|
||||
state = ERR_OK;
|
||||
if ((*addr != data) && (state != ERR_TIMOUT))
|
||||
state = ERR_PROG_ERROR;
|
||||
|
||||
if (iflag)
|
||||
enable_interrupts ();
|
||||
|
||||
if (cflag)
|
||||
icache_enable ();
|
||||
|
||||
return state;
|
||||
}
|
||||
|
||||
int amd_flash_write_buff(flash_info_t * info, uchar * src, ulong addr, ulong cnt)
|
||||
{
|
||||
int rc;
|
||||
ulong dest;
|
||||
u16 data;
|
||||
|
||||
rc = ERR_OK;
|
||||
if (addr & 1)
|
||||
{
|
||||
debug ("Byte alignment not supported\n");
|
||||
rc = ERR_ALIGN;
|
||||
}
|
||||
if (cnt & 1)
|
||||
{
|
||||
debug ("Byte transfer not supported\n");
|
||||
rc = ERR_ALIGN;
|
||||
}
|
||||
|
||||
dest = addr;
|
||||
while ((cnt>=2) && (rc == ERR_OK))
|
||||
{
|
||||
data =*((volatile u16 *) src);
|
||||
rc=amd_write_word (info,dest,data);
|
||||
src +=2;
|
||||
dest +=2;
|
||||
cnt -=2;
|
||||
}
|
||||
return rc;
|
||||
}
|
||||
|
||||
int write_buff (flash_info_t * info, uchar * src, ulong addr, ulong cnt)
|
||||
{
|
||||
int rc;
|
||||
|
||||
switch (info->flash_id & FLASH_VENDMASK)
|
||||
{
|
||||
case (AMD_MANUFACT & FLASH_VENDMASK):
|
||||
rc = amd_flash_write_buff(info,src,addr,cnt);
|
||||
break;
|
||||
case (FREESCALE_MANUFACT & FLASH_VENDMASK):
|
||||
rc = cfm_flash_write_buff(info,src,addr,cnt);
|
||||
break;
|
||||
default:
|
||||
rc = ERR_UNKNOWN_FLASH_VENDOR;
|
||||
}
|
||||
return rc;
|
||||
|
||||
}
|
||||
int amd_flash_protect(flash_info_t * info,long sector,int prot)
|
||||
{
|
||||
int rc;
|
||||
rc= ERR_OK;
|
||||
if (prot)
|
||||
{
|
||||
info->protect[sector]=1;
|
||||
}
|
||||
else
|
||||
{
|
||||
info->protect[sector]=0;
|
||||
}
|
||||
return rc;
|
||||
}
|
||||
|
||||
#ifdef CFG_FLASH_PROTECTION
|
||||
|
||||
int flash_real_protect(flash_info_t * info,long sector,int prot)
|
||||
{
|
||||
int rc;
|
||||
|
||||
switch (info->flash_id & FLASH_VENDMASK)
|
||||
{
|
||||
case (AMD_MANUFACT & FLASH_VENDMASK):
|
||||
rc = amd_flash_protect(info,sector,prot);
|
||||
break;
|
||||
case (FREESCALE_MANUFACT & FLASH_VENDMASK):
|
||||
rc = cfm_flash_protect(info,sector,prot);
|
||||
break;
|
||||
default:
|
||||
rc = ERR_UNKNOWN_FLASH_VENDOR;
|
||||
}
|
||||
return rc;
|
||||
}
|
||||
|
||||
#endif
|
||||
1
board/BuS/EB+MCF-EV123/textbase.mk
Normal file
1
board/BuS/EB+MCF-EV123/textbase.mk
Normal file
@@ -0,0 +1 @@
|
||||
TEXT_BASE = 0xFFE00000
|
||||
141
board/BuS/EB+MCF-EV123/u-boot.lds
Normal file
141
board/BuS/EB+MCF-EV123/u-boot.lds
Normal file
@@ -0,0 +1,141 @@
|
||||
/*
|
||||
* (C) Copyright 2000-2003
|
||||
* Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
OUTPUT_ARCH(m68k)
|
||||
SEARCH_DIR(/lib); SEARCH_DIR(/usr/lib); SEARCH_DIR(/usr/local/lib);
|
||||
/* Do we need any of these for elf?
|
||||
__DYNAMIC = 0; */
|
||||
SECTIONS
|
||||
{
|
||||
/* Read-only sections, merged into text segment: */
|
||||
. = + SIZEOF_HEADERS;
|
||||
.interp : { *(.interp) }
|
||||
.hash : { *(.hash) }
|
||||
.dynsym : { *(.dynsym) }
|
||||
.dynstr : { *(.dynstr) }
|
||||
.rel.text : { *(.rel.text) }
|
||||
.rela.text : { *(.rela.text) }
|
||||
.rel.data : { *(.rel.data) }
|
||||
.rela.data : { *(.rela.data) }
|
||||
.rel.rodata : { *(.rel.rodata) }
|
||||
.rela.rodata : { *(.rela.rodata) }
|
||||
.rel.got : { *(.rel.got) }
|
||||
.rela.got : { *(.rela.got) }
|
||||
.rel.ctors : { *(.rel.ctors) }
|
||||
.rela.ctors : { *(.rela.ctors) }
|
||||
.rel.dtors : { *(.rel.dtors) }
|
||||
.rela.dtors : { *(.rela.dtors) }
|
||||
.rel.bss : { *(.rel.bss) }
|
||||
.rela.bss : { *(.rela.bss) }
|
||||
.rel.plt : { *(.rel.plt) }
|
||||
.rela.plt : { *(.rela.plt) }
|
||||
.init : { *(.init) }
|
||||
.plt : { *(.plt) }
|
||||
.text :
|
||||
{
|
||||
/* WARNING - the following is hand-optimized to fit within */
|
||||
/* the sector layout of our flash chips! XXX FIXME XXX */
|
||||
|
||||
cpu/mcf52x2/start.o (.text)
|
||||
common/dlmalloc.o (.text)
|
||||
lib_generic/string.o (.text)
|
||||
lib_generic/vsprintf.o (.text)
|
||||
lib_generic/crc32.o (.text)
|
||||
lib_generic/zlib.o (.text)
|
||||
|
||||
/* . = env_offset; */
|
||||
common/environment.o(.text)
|
||||
|
||||
*(.text)
|
||||
*(.fixup)
|
||||
*(.got1)
|
||||
}
|
||||
_etext = .;
|
||||
PROVIDE (etext = .);
|
||||
.rodata :
|
||||
{
|
||||
*(.rodata)
|
||||
*(.rodata1)
|
||||
}
|
||||
.fini : { *(.fini) } =0
|
||||
.ctors : { *(.ctors) }
|
||||
.dtors : { *(.dtors) }
|
||||
|
||||
/* Read-write section, merged into data segment: */
|
||||
. = (. + 0x00FF) & 0xFFFFFF00;
|
||||
_erotext = .;
|
||||
PROVIDE (erotext = .);
|
||||
.reloc :
|
||||
{
|
||||
__got_start = .;
|
||||
*(.got)
|
||||
__got_end = .;
|
||||
_GOT2_TABLE_ = .;
|
||||
*(.got2)
|
||||
_FIXUP_TABLE_ = .;
|
||||
*(.fixup)
|
||||
}
|
||||
__got2_entries = (_FIXUP_TABLE_ - _GOT2_TABLE_) >>2;
|
||||
__fixup_entries = (. - _FIXUP_TABLE_)>>2;
|
||||
|
||||
.data :
|
||||
{
|
||||
*(.data)
|
||||
*(.data1)
|
||||
*(.sdata)
|
||||
*(.sdata2)
|
||||
*(.dynamic)
|
||||
CONSTRUCTORS
|
||||
}
|
||||
_edata = .;
|
||||
PROVIDE (edata = .);
|
||||
|
||||
__u_boot_cmd_start = .;
|
||||
.u_boot_cmd : { *(.u_boot_cmd) }
|
||||
__u_boot_cmd_end = .;
|
||||
|
||||
__start___ex_table = .;
|
||||
__ex_table : { *(__ex_table) }
|
||||
__stop___ex_table = .;
|
||||
|
||||
. = ALIGN(256);
|
||||
__init_begin = .;
|
||||
.text.init : { *(.text.init) }
|
||||
.data.init : { *(.data.init) }
|
||||
. = ALIGN(256);
|
||||
__init_end = .;
|
||||
|
||||
__bss_start = .;
|
||||
.bss :
|
||||
{
|
||||
_sbss = .;
|
||||
*(.sbss) *(.scommon)
|
||||
*(.dynbss)
|
||||
*(.bss)
|
||||
*(COMMON)
|
||||
. = ALIGN(4);
|
||||
_ebss = .;
|
||||
}
|
||||
_end = . ;
|
||||
PROVIDE (end = .);
|
||||
}
|
||||
@@ -4,6 +4,9 @@
|
||||
# Copyright (C) 2000, 2001, 2002, 2003
|
||||
# The LEOX team <team@leox.org>, http://www.leox.org
|
||||
#
|
||||
# (C) Copyright 2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# LEOX.org is about the development of free hardware and software resources
|
||||
# for system on chip.
|
||||
#
|
||||
@@ -31,18 +34,22 @@
|
||||
|
||||
include $(TOPDIR)/config.mk
|
||||
|
||||
LIB = lib$(BOARD).a
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
OBJS = $(BOARD).o flash.o
|
||||
COBJS = $(BOARD).o flash.o
|
||||
|
||||
$(LIB): .depend $(OBJS)
|
||||
$(AR) crv $@ $(OBJS)
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(COBJS))
|
||||
SOBJS := $(addprefix $(obj),$(SOBJS))
|
||||
|
||||
$(LIB): $(obj).depend $(OBJS)
|
||||
$(AR) $(ARFLAGS) $@ $(OBJS)
|
||||
|
||||
#########################################################################
|
||||
|
||||
.depend: Makefile $(SOBJS:.o=.S) $(OBJS:.o=.c)
|
||||
$(CC) -M $(CFLAGS) $(SOBJS:.o=.S) $(OBJS:.o=.c) > $@
|
||||
# defines $(obj).depend target
|
||||
include $(SRCTREE)/rules.mk
|
||||
|
||||
sinclude .depend
|
||||
sinclude $(obj).depend
|
||||
|
||||
#########################################################################
|
||||
|
||||
@@ -124,9 +124,9 @@ nfsserverip=192.168.0.1
|
||||
preboot=echo;echo Type "run nfsboot" to mount root filesystem over NFS;echo
|
||||
gatewayip=192.168.0.1
|
||||
ramargs=setenv bootargs root=/dev/ram rw
|
||||
rootargs=setenv rootpath /tftp/$(ipaddr)
|
||||
nfsargs=setenv bootargs root=/dev/nfs rw nfsroot=$(nfsserverip):$(rootpath)
|
||||
addip=setenv bootargs $(bootargs) ip=$(ipaddr):$(nfsserverip):$(gatewayip):$(netmask):$(hostname):eth0:
|
||||
rootargs=setenv rootpath /tftp/${ipaddr}
|
||||
nfsargs=setenv bootargs root=/dev/nfs rw nfsroot=${nfsserverip}:${rootpath}
|
||||
addip=setenv bootargs ${bootargs} ip=${ipaddr}:${nfsserverip}:${gatewayip}:${netmask}:${hostname}:eth0:
|
||||
ramboot=tftp 400000 /home/leox/pMulti;run ramargs;bootm
|
||||
nfsboot=tftp 400000 /home/leox/uImage;run rootargs;run nfsargs;run addip;bootm
|
||||
bootcmd=run ramboot
|
||||
|
||||
@@ -169,7 +169,7 @@ int board_early_init_f (void)
|
||||
|
||||
int checkboard (void)
|
||||
{
|
||||
unsigned char *s = getenv ("serial#");
|
||||
char *s = getenv ("serial#");
|
||||
|
||||
if (!s || strncmp (s, "ELPT860", 7))
|
||||
printf ("### No HW ID - assuming ELPT860\n");
|
||||
@@ -253,7 +253,7 @@ long int initdram (int board_type)
|
||||
* try 8 column mode
|
||||
*/
|
||||
size8 = dram_size (CFG_MAMR_8COL,
|
||||
(ulong *) SDRAM_BASE1_PRELIM, SDRAM_MAX_SIZE);
|
||||
SDRAM_BASE1_PRELIM, SDRAM_MAX_SIZE);
|
||||
|
||||
udelay (1000);
|
||||
|
||||
@@ -261,7 +261,7 @@ long int initdram (int board_type)
|
||||
* try 9 column mode
|
||||
*/
|
||||
size9 = dram_size (CFG_MAMR_9COL,
|
||||
(ulong *) SDRAM_BASE1_PRELIM, SDRAM_MAX_SIZE);
|
||||
SDRAM_BASE1_PRELIM, SDRAM_MAX_SIZE);
|
||||
|
||||
if (size8 < size9) { /* leave configuration at 9 columns */
|
||||
size_b0 = size9;
|
||||
|
||||
@@ -91,6 +91,7 @@ SECTIONS
|
||||
*(.rodata)
|
||||
*(.rodata1)
|
||||
*(.rodata.str1.4)
|
||||
*(.eh_frame)
|
||||
}
|
||||
.fini : { *(.fini) } =0
|
||||
.ctors : { *(.ctors) }
|
||||
|
||||
@@ -83,6 +83,8 @@ SECTIONS
|
||||
{
|
||||
*(.rodata)
|
||||
*(.rodata1)
|
||||
*(.rodata.str1.4)
|
||||
*(.eh_frame)
|
||||
}
|
||||
.fini : { *(.fini) } =0
|
||||
.ctors : { *(.ctors) }
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
/*
|
||||
* (C) Copyright 2002
|
||||
* Hyperion Entertainment, ThomasF@hyperion-entertainment.com
|
||||
* (C) Copyright 2006
|
||||
* Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
@@ -88,8 +89,6 @@ long initdram (int board_type)
|
||||
|
||||
void after_reloc (ulong dest_addr, gd_t *gd)
|
||||
{
|
||||
/* HJF: DECLARE_GLOBAL_DATA_PTR; */
|
||||
|
||||
board_init_r (gd, dest_addr);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# (C) Copyright 2002
|
||||
# (C) Copyright 2002-2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
@@ -22,8 +22,12 @@
|
||||
#
|
||||
|
||||
include $(TOPDIR)/config.mk
|
||||
ifneq ($(OBJTREE),$(SRCTREE))
|
||||
$(shell mkdir -p $(obj)../menu)
|
||||
$(shell mkdir -p $(obj)../bios_emulator)
|
||||
endif
|
||||
|
||||
LIB = lib$(BOARD).a
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
COBJS = $(BOARD).o articiaS.o flash.o serial.o smbus.o articiaS_pci.o \
|
||||
via686.o i8259.o ../bios_emulator/x86interface.o \
|
||||
@@ -31,26 +35,29 @@ COBJS = $(BOARD).o articiaS.o flash.o serial.o smbus.o articiaS_pci.o \
|
||||
interrupts.o ps2kbd.o video.o usb_uhci.o enet.o \
|
||||
../menu/cmd_menu.o cmd_boota.o nvram.o
|
||||
|
||||
AOBJS = board_asm_init.o memio.o
|
||||
|
||||
OBJS = $(COBJS) $(AOBJS)
|
||||
SOBJS = board_asm_init.o memio.o
|
||||
|
||||
EMUDIR = ../bios_emulator/scitech/src/x86emu/
|
||||
EMUOBJ = $(EMUDIR)decode.o $(EMUDIR)ops2.o $(EMUDIR)fpu.o $(EMUDIR)prim_ops.o \
|
||||
$(EMUDIR)ops.o $(EMUDIR)sys.o
|
||||
EMUSRC = $(EMUOBJ:.o=.c)
|
||||
EMUSRC = $(EMUOBJ:.o=.c)
|
||||
|
||||
$(LIB): .depend $(OBJS) $(EMUSRC)
|
||||
make libx86emu.a -C ../bios_emulator/scitech/src/x86emu -f makefile.uboot CROSS_COMPILE=$(CROSS_COMPILE)
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(COBJS))
|
||||
SOBJS := $(addprefix $(obj),$(SOBJS))
|
||||
EMUOBJ := $(addprefix $(obj),$(EMUOBJ))
|
||||
|
||||
$(LIB): $(obj).depend $(OBJS) $(SOBJS) $(EMUSRC)
|
||||
make $(obj)libx86emu.a -C ../bios_emulator/scitech/src/x86emu -f makefile.uboot CROSS_COMPILE=$(CROSS_COMPILE)
|
||||
-rm $(LIB)
|
||||
$(AR) crv $@ $(OBJS) $(EMUOBJ)
|
||||
$(AR) $(ARFLAGS) $@ $(OBJS) $(SOBJS) $(EMUOBJ)
|
||||
|
||||
|
||||
#########################################################################
|
||||
|
||||
.depend: Makefile $(AOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
$(CC) -M $(CFLAGS) $(AOBJS:.o=.S) $(COBJS:.o=.c) > $@
|
||||
# defines $(obj).depend target
|
||||
include $(SRCTREE)/rules.mk
|
||||
|
||||
sinclude .depend
|
||||
sinclude $(obj).depend
|
||||
|
||||
#########################################################################
|
||||
|
||||
@@ -29,6 +29,8 @@
|
||||
#include "smbus.h"
|
||||
#include "via686.h"
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
#undef DEBUG
|
||||
|
||||
struct dimm_bank {
|
||||
@@ -82,7 +84,6 @@ static inline unsigned short NSto10PS (unsigned char spd_byte)
|
||||
|
||||
long detect_sdram (uint8 * rom, int dimmNum, struct dimm_bank *banks)
|
||||
{
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
int dimm_address = (dimmNum == 0) ? SM_DIMM0_ADDR : SM_DIMM1_ADDR;
|
||||
uint32 busclock = gd->bus_clk;
|
||||
uint32 memclock = busclock;
|
||||
@@ -394,8 +395,6 @@ uint32 burst_to_len (uint32 support)
|
||||
|
||||
long articiaS_ram_init (void)
|
||||
{
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
register uint32 i;
|
||||
register uint32 value1;
|
||||
register uint32 value2;
|
||||
|
||||
@@ -26,6 +26,8 @@
|
||||
#include "memio.h"
|
||||
#include "articiaS.h"
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
#undef ARTICIA_PCI_DEBUG
|
||||
|
||||
#ifdef ARTICIA_PCI_DEBUG
|
||||
@@ -493,8 +495,6 @@ pci_dev_t video_dev;
|
||||
|
||||
int articiaS_init_vga (void)
|
||||
{
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
extern void shutdown_bios(void);
|
||||
pci_dev_t dev = ~0;
|
||||
int busnr = 0;
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
#include "../disk/part_amiga.h"
|
||||
#include <asm/cache.h>
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
#undef BOOTA_DEBUG
|
||||
|
||||
@@ -108,8 +109,6 @@ int do_boota (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
|
||||
|
||||
s = getenv ("autostart");
|
||||
if (s && strcmp (s, "yes") == 0) {
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
void (*boot) (bd_t *, char *, block_dev_desc_t *);
|
||||
char *args;
|
||||
|
||||
|
||||
@@ -656,7 +656,7 @@ char * kbd_initialize(void)
|
||||
| KBD_MODE_DISABLE_MOUSE
|
||||
| KBD_MODE_KCC);
|
||||
|
||||
/* ibm powerpc portables need this to use scan-code set 1 -- Cort */
|
||||
/* AMCC powerpc portables need this to use scan-code set 1 -- Cort */
|
||||
kbd_write_command_w(KBD_CCMD_READ_MODE);
|
||||
if (!(kbd_wait_for_input() & KBD_MODE_KCC)) {
|
||||
/*
|
||||
|
||||
@@ -4,6 +4,8 @@
|
||||
#include "memio.h"
|
||||
#include "articiaS.h"
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
#ifndef CFG_NS16550
|
||||
static uint32 ComPort1;
|
||||
|
||||
@@ -150,8 +152,6 @@ const NS16550_t Com1 = (NS16550_t) CFG_NS16550_COM2;
|
||||
|
||||
int serial_init (void)
|
||||
{
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
uint32 clock_divisor = 115200 / gd->baudrate;
|
||||
|
||||
NS16550_init (Com0, clock_divisor);
|
||||
@@ -239,8 +239,6 @@ void serial_puts (const char *string)
|
||||
|
||||
void serial_setbrg (void)
|
||||
{
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
uint32 clock_divisor = 115200 / gd->baudrate;
|
||||
|
||||
NS16550_init (Com0, clock_divisor);
|
||||
|
||||
@@ -76,6 +76,7 @@ SECTIONS
|
||||
*(.rodata)
|
||||
*(.rodata1)
|
||||
*(.rodata.str1.4)
|
||||
*(.eh_frame)
|
||||
}
|
||||
.fini : { *(.fini) } =0
|
||||
.ctors : { *(.ctors) }
|
||||
|
||||
@@ -28,6 +28,8 @@
|
||||
#include "via686.h"
|
||||
#include "i8259.h"
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
#undef VIA_DEBUG
|
||||
|
||||
#ifdef VIA_DEBUG
|
||||
@@ -226,33 +228,31 @@ __asm (" .globl via_calibrate_time_base \n"
|
||||
|
||||
extern unsigned long via_calibrate_time_base(void);
|
||||
|
||||
void via_calibrate_bus_freq(void)
|
||||
void via_calibrate_bus_freq (void)
|
||||
{
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
unsigned long tb;
|
||||
|
||||
unsigned long tb;
|
||||
/* This is 20 microseconds */
|
||||
#define CALIBRATE_TIME 28636
|
||||
|
||||
/* This is 20 microseconds */
|
||||
#define CALIBRATE_TIME 28636
|
||||
/* Enable the timer (and disable speaker) */
|
||||
unsigned char c;
|
||||
|
||||
c = in_byte (0x61);
|
||||
out_byte (0x61, ((c & ~0x02) | 0x01));
|
||||
|
||||
/* Enable the timer (and disable speaker) */
|
||||
unsigned char c;
|
||||
c = in_byte(0x61);
|
||||
out_byte(0x61, ((c & ~0x02) | 0x01));
|
||||
/* Set timer 2 to low/high writing */
|
||||
out_byte (0x43, 0xb0);
|
||||
out_byte (0x42, CALIBRATE_TIME & 0xff);
|
||||
out_byte (0x42, CALIBRATE_TIME >> 8);
|
||||
|
||||
/* Set timer 2 to low/high writing */
|
||||
out_byte(0x43, 0xb0);
|
||||
out_byte(0x42, CALIBRATE_TIME & 0xff);
|
||||
out_byte(0x42, CALIBRATE_TIME >>8);
|
||||
/* Read the time base */
|
||||
tb = via_calibrate_time_base ();
|
||||
|
||||
/* Read the time base */
|
||||
tb = via_calibrate_time_base();
|
||||
|
||||
if (tb >= 700000)
|
||||
gd->bus_clk = 133333333;
|
||||
else
|
||||
gd->bus_clk = 100000000;
|
||||
if (tb >= 700000)
|
||||
gd->bus_clk = 133333333;
|
||||
else
|
||||
gd->bus_clk = 100000000;
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -26,6 +26,8 @@
|
||||
#include "memio.h"
|
||||
#include <part.h>
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
unsigned char *cursor_position;
|
||||
unsigned int cursor_row;
|
||||
unsigned int cursor_col;
|
||||
@@ -480,7 +482,6 @@ extern char version_string[];
|
||||
void video_banner(void)
|
||||
{
|
||||
block_dev_desc_t *ide;
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
int i;
|
||||
char *s;
|
||||
int maxdev;
|
||||
|
||||
@@ -147,14 +147,14 @@ void _EVT_pumpMessages(void)
|
||||
if (EVT.oldMove != -1) {
|
||||
EVT.evtq[EVT.oldMove].where_x = evt.where_x;/* Modify existing one */
|
||||
EVT.evtq[EVT.oldMove].where_y = evt.where_y;
|
||||
/* EVT.evtq[EVT.oldMove].relative_x += mickeyX; // TODO! */
|
||||
/* EVT.evtq[EVT.oldMove].relative_y += mickeyY; // TODO! */
|
||||
/* EVT.evtq[EVT.oldMove].relative_x += mickeyX; / / TODO! */
|
||||
/* EVT.evtq[EVT.oldMove].relative_y += mickeyY; / / TODO! */
|
||||
evt.what = 0;
|
||||
}
|
||||
else {
|
||||
EVT.oldMove = EVT.freeHead; /* Save id of this move event */
|
||||
/* evt.relative_x = mickeyX; // TODO! */
|
||||
/* evt.relative_y = mickeyY; // TODO! */
|
||||
/* evt.relative_x = mickeyX; / / TODO! */
|
||||
/* evt.relative_y = mickeyY; / / TODO! */
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
@@ -526,7 +526,7 @@ flash_get_size (int portwidth, vu_long * addr, flash_info_t * info)
|
||||
|
||||
int flash_erase (flash_info_t * info, int s_first, int s_last)
|
||||
{
|
||||
volatile unsigned char *addr = (char *) (info->start[0]);
|
||||
volatile unsigned char *addr = (uchar *) (info->start[0]);
|
||||
int flag, prot, sect, l_sect;
|
||||
ulong start, now, last;
|
||||
|
||||
@@ -696,7 +696,7 @@ int flash_erase (flash_info_t * info, int s_first, int s_last)
|
||||
for (sect = s_first; sect <= s_last; sect++) {
|
||||
int sector_size = info->size / info->sector_count;
|
||||
|
||||
addr = (char *) (info->start[sect]);
|
||||
addr = (uchar *) (info->start[sect]);
|
||||
memset ((void *) addr, 0, sector_size);
|
||||
}
|
||||
return 0;
|
||||
@@ -752,7 +752,7 @@ int flash_erase (flash_info_t * info, int s_first, int s_last)
|
||||
/* Start erase on unprotected sectors */
|
||||
for (sect = s_first; sect <= s_last; sect++) {
|
||||
if (info->protect[sect] == 0) { /* not protected */
|
||||
addr = (char *) (info->start[sect]);
|
||||
addr = (uchar *) (info->start[sect]);
|
||||
flash_cmd (info->portwidth, addr, 0, 0x30);
|
||||
l_sect = sect;
|
||||
}
|
||||
@@ -893,7 +893,7 @@ int write_buff (flash_info_t * info, uchar * src, ulong addr, ulong cnt)
|
||||
/* broken for 2x16: TODO */
|
||||
static int write_word (flash_info_t * info, ulong dest, ulong data)
|
||||
{
|
||||
volatile unsigned char *addr = (char *) (info->start[0]);
|
||||
volatile unsigned char *addr = (uchar *) (info->start[0]);
|
||||
ulong start;
|
||||
int flag, i;
|
||||
ulong mask;
|
||||
@@ -926,7 +926,7 @@ static int write_word (flash_info_t * info, ulong dest, ulong data)
|
||||
CHIP_CMD_RST);
|
||||
/* 1st cycle of word/byte program */
|
||||
/* write 0x40 to the location to program */
|
||||
flash_cmd (info->portwidth, (char *) dest, 0,
|
||||
flash_cmd (info->portwidth, (uchar *) dest, 0,
|
||||
CHIP_CMD_PROG);
|
||||
/* 2nd cycle of word/byte program */
|
||||
/* write the data to the destination address */
|
||||
|
||||
@@ -168,7 +168,7 @@ static uchar i2c_select_device (uchar dev_addr, uchar read, int ten_bit)
|
||||
static uchar i2c_get_data (uchar * return_data, int len)
|
||||
{
|
||||
|
||||
unsigned int data, status;
|
||||
unsigned int data, status = 0;
|
||||
int count = 0;
|
||||
|
||||
DP (puts ("i2c_get_data\n"));
|
||||
|
||||
@@ -45,13 +45,13 @@
|
||||
|
||||
#include "ns16550.h"
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
#ifdef CONFIG_MPSC
|
||||
|
||||
|
||||
int serial_init (void)
|
||||
{
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
#if (defined CFG_INIT_CHAN1) || (defined CFG_INIT_CHAN2)
|
||||
int clock_divisor = 230400 / gd->baudrate;
|
||||
#endif
|
||||
@@ -88,8 +88,6 @@ int serial_tstc (void)
|
||||
|
||||
void serial_setbrg (void)
|
||||
{
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
galbrg_set_baudrate (CONFIG_MPSC_PORT, gd->baudrate);
|
||||
}
|
||||
|
||||
@@ -97,8 +95,6 @@ void serial_setbrg (void)
|
||||
|
||||
int serial_init (void)
|
||||
{
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
int clock_divisor = 230400 / gd->baudrate;
|
||||
|
||||
#ifdef CFG_INIT_CHAN1
|
||||
@@ -130,8 +126,6 @@ int serial_tstc (void)
|
||||
|
||||
void serial_setbrg (void)
|
||||
{
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
int clock_divisor = 230400 / gd->baudrate;
|
||||
|
||||
#ifdef CFG_INIT_CHAN1
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
#
|
||||
# (C) Copyright 2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# (C) Copyright 2001
|
||||
# Josh Huber <huber@mclx.com>, Mission Critical Linux, Inc.
|
||||
#
|
||||
@@ -22,23 +25,30 @@
|
||||
#
|
||||
|
||||
include $(TOPDIR)/config.mk
|
||||
ifneq ($(OBJTREE),$(SRCTREE))
|
||||
$(shell mkdir -p $(obj)../common)
|
||||
endif
|
||||
|
||||
LIB = lib$(BOARD).a
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
SOBJS = ../common/misc.o
|
||||
|
||||
OBJS = $(BOARD).o ../common/flash.o ../common/serial.o ../common/memory.o pci.o \
|
||||
COBJS = $(BOARD).o ../common/flash.o ../common/serial.o ../common/memory.o pci.o \
|
||||
mv_eth.o ../common/ns16550.o mpsc.o ../common/i2c.o \
|
||||
sdram_init.o ../common/intel_flash.o
|
||||
|
||||
$(LIB): .depend $(OBJS) $(SOBJS)
|
||||
$(AR) crv $@ $(OBJS) $(SOBJS)
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(COBJS))
|
||||
SOBJS := $(addprefix $(obj),$(SOBJS))
|
||||
|
||||
$(LIB): $(obj).depend $(OBJS) $(SOBJS)
|
||||
$(AR) $(ARFLAGS) $@ $(OBJS) $(SOBJS)
|
||||
|
||||
#########################################################################
|
||||
|
||||
.depend: Makefile $(SOBJS:.o=.S) $(OBJS:.o=.c)
|
||||
$(CC) -M $(CFLAGS) $(SOBJS:.o=.S) $(OBJS:.o=.c) > $@
|
||||
# defines $(obj).depend target
|
||||
include $(SRCTREE)/rules.mk
|
||||
|
||||
sinclude .depend
|
||||
sinclude $(obj).depend
|
||||
|
||||
#########################################################################
|
||||
|
||||
@@ -610,7 +610,7 @@ unsigned long long pattern[] = {
|
||||
int mem_test_data (void)
|
||||
{
|
||||
unsigned long long *pmem = (unsigned long long *) CFG_MEMTEST_START;
|
||||
unsigned long long temp64;
|
||||
unsigned long long temp64 = 0;
|
||||
int num_patterns = sizeof (pattern) / sizeof (pattern[0]);
|
||||
int i;
|
||||
unsigned int hi, lo;
|
||||
@@ -717,7 +717,7 @@ int mem_march (volatile unsigned long long *base,
|
||||
unsigned long long wmask, short read, short write)
|
||||
{
|
||||
unsigned int i;
|
||||
unsigned long long temp;
|
||||
unsigned long long temp = 0;
|
||||
unsigned int hitemp, lotemp, himask, lomask;
|
||||
|
||||
for (i = 0; i < size; i++) {
|
||||
|
||||
@@ -42,6 +42,8 @@
|
||||
|
||||
#include "../include/memory.h"
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
/* Define this if you wish to use the MPSC as a register based UART.
|
||||
* This will force the serial port to not use the SDMA engine at all.
|
||||
*/
|
||||
@@ -114,9 +116,7 @@ static void mpsc_debug_init (void)
|
||||
|
||||
/* Clear the CFR (CHR4) */
|
||||
/* Write random 'Z' bit (bit 29) of CHR4 to enable debug uart *UNDOCUMENTED FEATURE* */
|
||||
temp = GTREGREAD (GALMPSC_CHANNELREG_4 + (CHANNEL * GALMPSC_indent: Standard input:229: Warning:old style assignment ambiguity in "=&". Assuming "= &"
|
||||
|
||||
REG_GAP));
|
||||
temp = GTREGREAD (GALMPSC_CHANNELREG_4 + (CHANNEL * GALMPSC_REG_GAP));
|
||||
temp &= 0xffffff00;
|
||||
temp |= BIT29;
|
||||
GT_REG_WRITE (GALMPSC_CHANNELREG_4 + (CHANNEL * GALMPSC_REG_GAP),
|
||||
@@ -158,7 +158,6 @@ char mpsc_getchar_debug (void)
|
||||
* global variables [josh] */
|
||||
int mpsc_putchar_early (char ch)
|
||||
{
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
int mpsc = CHANNEL;
|
||||
int temp =
|
||||
GTREGREAD (GALMPSC_CHANNELREG_2 + (mpsc * GALMPSC_REG_GAP));
|
||||
@@ -511,7 +510,6 @@ void mpsc_init2 (void)
|
||||
|
||||
int galbrg_set_baudrate (int channel, int rate)
|
||||
{
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
int clock;
|
||||
|
||||
galbrg_disable (channel); /*ok */
|
||||
|
||||
@@ -267,8 +267,9 @@ void mv6436x_eth_initialize (bd_t * bis)
|
||||
dev->send = (void *) db64360_eth_transmit;
|
||||
dev->recv = (void *) db64360_eth_poll;
|
||||
|
||||
dev->priv = (void *) ethernet_private =
|
||||
calloc (sizeof (*ethernet_private), 1);
|
||||
ethernet_private = calloc (sizeof (*ethernet_private), 1);
|
||||
dev->priv = (void *) ethernet_private;
|
||||
|
||||
if (!ethernet_private) {
|
||||
printf ("%s: %s allocation failure, %s\n",
|
||||
__FUNCTION__, dev->name,
|
||||
@@ -281,8 +282,8 @@ void mv6436x_eth_initialize (bd_t * bis)
|
||||
memcpy (ethernet_private->port_mac_addr, dev->enetaddr, 6);
|
||||
|
||||
/* set pointer to memory for stats data structure etc... */
|
||||
ethernet_private->port_private = (void *) port_private =
|
||||
calloc (sizeof (*ethernet_private), 1);
|
||||
port_private = calloc (sizeof (*ethernet_private), 1);
|
||||
ethernet_private->port_private = (void *)port_private;
|
||||
if (!port_private) {
|
||||
printf ("%s: %s allocation failure, %s\n",
|
||||
__FUNCTION__, dev->name,
|
||||
@@ -731,6 +732,7 @@ int mv64360_eth_xmit (struct eth_device *dev, volatile void *dataPtr,
|
||||
pkt_info.cmd_sts = ETH_TX_FIRST_DESC | ETH_TX_LAST_DESC; /* DMA owned, first last */
|
||||
pkt_info.byte_cnt = dataSize;
|
||||
pkt_info.buf_ptr = (unsigned int) dataPtr;
|
||||
pkt_info.return_info = 0;
|
||||
|
||||
status = eth_port_send (ethernet_private, ETH_Q0, &pkt_info);
|
||||
if ((status == ETH_ERROR) || (status == ETH_QUEUE_FULL)) {
|
||||
|
||||
@@ -42,6 +42,8 @@
|
||||
#include "64360.h"
|
||||
#include "mv_regs.h"
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
#undef DEBUG
|
||||
#define MAP_PCI
|
||||
|
||||
@@ -246,8 +248,6 @@ static inline unsigned short NSto10PS (unsigned char spd_byte)
|
||||
/* static int check_dimm(uchar slot, AUX_MEM_DIMM_INFO *info) */
|
||||
static int check_dimm (uchar slot, AUX_MEM_DIMM_INFO * dimmInfo)
|
||||
{
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
unsigned long spd_checksum;
|
||||
|
||||
#ifdef ZUMA_NTL
|
||||
|
||||
@@ -74,6 +74,7 @@ SECTIONS
|
||||
*(.rodata)
|
||||
*(.rodata1)
|
||||
*(.rodata.str1.4)
|
||||
*(.eh_frame)
|
||||
}
|
||||
.fini : { *(.fini) } =0
|
||||
.ctors : { *(.ctors) }
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
#
|
||||
# (C) Copyright 2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# (C) Copyright 2001
|
||||
# Josh Huber <huber@mclx.com>, Mission Critical Linux, Inc.
|
||||
#
|
||||
@@ -22,23 +25,30 @@
|
||||
#
|
||||
|
||||
include $(TOPDIR)/config.mk
|
||||
ifneq ($(OBJTREE),$(SRCTREE))
|
||||
$(shell mkdir -p $(obj)../common)
|
||||
endif
|
||||
|
||||
LIB = lib$(BOARD).a
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
SOBJS = ../common/misc.o
|
||||
|
||||
OBJS = $(BOARD).o ../common/flash.o ../common/serial.o ../common/memory.o pci.o \
|
||||
COBJS = $(BOARD).o ../common/flash.o ../common/serial.o ../common/memory.o pci.o \
|
||||
mv_eth.o ../common/ns16550.o mpsc.o ../common/i2c.o \
|
||||
sdram_init.o ../common/intel_flash.o
|
||||
|
||||
$(LIB): .depend $(OBJS) $(SOBJS)
|
||||
$(AR) crv $@ $(OBJS) $(SOBJS)
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(COBJS))
|
||||
SOBJS := $(addprefix $(obj),$(SOBJS))
|
||||
|
||||
$(LIB): $(obj).depend $(OBJS) $(SOBJS)
|
||||
$(AR) $(ARFLAGS) $@ $(OBJS) $(SOBJS)
|
||||
|
||||
#########################################################################
|
||||
|
||||
.depend: Makefile $(SOBJS:.o=.S) $(OBJS:.o=.c)
|
||||
$(CC) -M $(CFLAGS) $(SOBJS:.o=.S) $(OBJS:.o=.c) > $@
|
||||
# defines $(obj).depend target
|
||||
include $(SRCTREE)/rules.mk
|
||||
|
||||
sinclude .depend
|
||||
sinclude $(obj).depend
|
||||
|
||||
#########################################################################
|
||||
|
||||
@@ -610,7 +610,7 @@ unsigned long long pattern[] = {
|
||||
int mem_test_data (void)
|
||||
{
|
||||
unsigned long long *pmem = (unsigned long long *) CFG_MEMTEST_START;
|
||||
unsigned long long temp64;
|
||||
unsigned long long temp64 = 0;
|
||||
int num_patterns = sizeof (pattern) / sizeof (pattern[0]);
|
||||
int i;
|
||||
unsigned int hi, lo;
|
||||
@@ -717,7 +717,7 @@ int mem_march (volatile unsigned long long *base,
|
||||
unsigned long long wmask, short read, short write)
|
||||
{
|
||||
unsigned int i;
|
||||
unsigned long long temp;
|
||||
unsigned long long temp = 0;
|
||||
unsigned int hitemp, lotemp, himask, lomask;
|
||||
|
||||
for (i = 0; i < size; i++) {
|
||||
|
||||
@@ -42,6 +42,8 @@
|
||||
|
||||
#include "../include/memory.h"
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
/* Define this if you wish to use the MPSC as a register based UART.
|
||||
* This will force the serial port to not use the SDMA engine at all.
|
||||
*/
|
||||
@@ -114,9 +116,7 @@ static void mpsc_debug_init (void)
|
||||
|
||||
/* Clear the CFR (CHR4) */
|
||||
/* Write random 'Z' bit (bit 29) of CHR4 to enable debug uart *UNDOCUMENTED FEATURE* */
|
||||
temp = GTREGREAD (GALMPSC_CHANNELREG_4 + (CHANNEL * GALMPSC_indent: Standard input:229: Warning:old style assignment ambiguity in "=&". Assuming "= &"
|
||||
|
||||
REG_GAP));
|
||||
temp = GTREGREAD (GALMPSC_CHANNELREG_4 + (CHANNEL * GALMPSC_REG_GAP));
|
||||
temp &= 0xffffff00;
|
||||
temp |= BIT29;
|
||||
GT_REG_WRITE (GALMPSC_CHANNELREG_4 + (CHANNEL * GALMPSC_REG_GAP),
|
||||
@@ -158,7 +158,6 @@ char mpsc_getchar_debug (void)
|
||||
* global variables [josh] */
|
||||
int mpsc_putchar_early (char ch)
|
||||
{
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
int mpsc = CHANNEL;
|
||||
int temp =
|
||||
GTREGREAD (GALMPSC_CHANNELREG_2 + (mpsc * GALMPSC_REG_GAP));
|
||||
@@ -511,7 +510,6 @@ void mpsc_init2 (void)
|
||||
|
||||
int galbrg_set_baudrate (int channel, int rate)
|
||||
{
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
int clock;
|
||||
|
||||
galbrg_disable (channel); /*ok */
|
||||
|
||||
@@ -267,8 +267,8 @@ void mv6446x_eth_initialize (bd_t * bis)
|
||||
dev->send = (void *) db64460_eth_transmit;
|
||||
dev->recv = (void *) db64460_eth_poll;
|
||||
|
||||
dev->priv = (void *) ethernet_private =
|
||||
calloc (sizeof (*ethernet_private), 1);
|
||||
ethernet_private = calloc (sizeof (*ethernet_private), 1);
|
||||
dev->priv = (void *)ethernet_private;
|
||||
if (!ethernet_private) {
|
||||
printf ("%s: %s allocation failure, %s\n",
|
||||
__FUNCTION__, dev->name,
|
||||
@@ -281,8 +281,8 @@ void mv6446x_eth_initialize (bd_t * bis)
|
||||
memcpy (ethernet_private->port_mac_addr, dev->enetaddr, 6);
|
||||
|
||||
/* set pointer to memory for stats data structure etc... */
|
||||
ethernet_private->port_private = (void *) port_private =
|
||||
calloc (sizeof (*ethernet_private), 1);
|
||||
port_private = calloc (sizeof (*ethernet_private), 1);
|
||||
ethernet_private->port_private = (void *)port_private;
|
||||
if (!port_private) {
|
||||
printf ("%s: %s allocation failure, %s\n",
|
||||
__FUNCTION__, dev->name,
|
||||
@@ -731,6 +731,7 @@ int mv64460_eth_xmit (struct eth_device *dev, volatile void *dataPtr,
|
||||
pkt_info.cmd_sts = ETH_TX_FIRST_DESC | ETH_TX_LAST_DESC; /* DMA owned, first last */
|
||||
pkt_info.byte_cnt = dataSize;
|
||||
pkt_info.buf_ptr = (unsigned int) dataPtr;
|
||||
pkt_info.return_info = 0;
|
||||
|
||||
status = eth_port_send (ethernet_private, ETH_Q0, &pkt_info);
|
||||
if ((status == ETH_ERROR) || (status == ETH_QUEUE_FULL)) {
|
||||
|
||||
@@ -42,6 +42,8 @@
|
||||
#include "64460.h"
|
||||
#include "mv_regs.h"
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
#undef DEBUG
|
||||
#define MAP_PCI
|
||||
|
||||
@@ -246,8 +248,6 @@ static inline unsigned short NSto10PS (unsigned char spd_byte)
|
||||
/* static int check_dimm(uchar slot, AUX_MEM_DIMM_INFO *info) */
|
||||
static int check_dimm (uchar slot, AUX_MEM_DIMM_INFO * dimmInfo)
|
||||
{
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
unsigned long spd_checksum;
|
||||
|
||||
#ifdef ZUMA_NTL
|
||||
|
||||
@@ -74,6 +74,7 @@ SECTIONS
|
||||
*(.rodata)
|
||||
*(.rodata1)
|
||||
*(.rodata.str1.4)
|
||||
*(.eh_frame)
|
||||
}
|
||||
.fini : { *(.fini) } =0
|
||||
.ctors : { *(.ctors) }
|
||||
|
||||
@@ -91,7 +91,10 @@ extern unsigned int INTERNAL_REG_BASE_ADDR;
|
||||
#define _1G 0x40000000
|
||||
#define _2G 0x80000000
|
||||
|
||||
#ifndef BOOL_WAS_DEFINED
|
||||
#define BOOL_WAS_DEFINED
|
||||
typedef enum _bool{false,true} bool;
|
||||
#endif
|
||||
|
||||
/* Little to Big endian conversion macros */
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# (C) Copyright 2000
|
||||
# (C) Copyright 2000-2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
@@ -23,18 +23,22 @@
|
||||
|
||||
include $(TOPDIR)/config.mk
|
||||
|
||||
LIB = lib$(BOARD).a
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
OBJS = $(BOARD).o flash.o eccx.o
|
||||
COBJS = $(BOARD).o flash.o eccx.o
|
||||
|
||||
$(LIB): .depend $(OBJS)
|
||||
$(AR) crv $@ $(OBJS)
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(COBJS))
|
||||
SOBJS := $(addprefix $(obj),$(SOBJS))
|
||||
|
||||
$(LIB): $(obj).depend $(OBJS)
|
||||
$(AR) $(ARFLAGS) $@ $(OBJS)
|
||||
|
||||
#########################################################################
|
||||
|
||||
.depend: Makefile $(SOBJS:.o=.S) $(OBJS:.o=.c)
|
||||
$(CC) -M $(CFLAGS) $(SOBJS:.o=.S) $(OBJS:.o=.c) > $@
|
||||
# defines $(obj).depend target
|
||||
include $(SRCTREE)/rules.mk
|
||||
|
||||
sinclude .depend
|
||||
sinclude $(obj).depend
|
||||
|
||||
#########################################################################
|
||||
|
||||
@@ -114,8 +114,8 @@ void board_get_enetaddr (uchar * enet)
|
||||
i2c_init (CFG_I2C_SPEED, CFG_I2C_SLAVE);
|
||||
|
||||
/* Read 256 bytes in EEPROM */
|
||||
i2c_read (0x54, 0, 1, buff, 128);
|
||||
i2c_read (0x54, 128, 1, buff + 128, 128);
|
||||
i2c_read (0x54, 0, 1, (uchar *)buff, 128);
|
||||
i2c_read (0x54, 128, 1, (uchar *)buff + 128, 128);
|
||||
|
||||
/* Retrieve MAC address in buffer (key EA) */
|
||||
for (cp = buff;;) {
|
||||
@@ -123,7 +123,7 @@ void board_get_enetaddr (uchar * enet)
|
||||
cp += 3;
|
||||
/* Read MAC address */
|
||||
for (i = 0; i < 6; i++, cp += 2) {
|
||||
enet[i] = aschex_to_byte (cp);
|
||||
enet[i] = aschex_to_byte ((unsigned char *)cp);
|
||||
}
|
||||
}
|
||||
/* Scan to the end of the record */
|
||||
@@ -200,7 +200,7 @@ long int initdram (int board_type)
|
||||
* try 10 column mode
|
||||
*/
|
||||
|
||||
size10 = dram_size (CFG_MAMR_10COL, (ulong *) SDRAM_BASE_PRELIM,
|
||||
size10 = dram_size (CFG_MAMR_10COL, SDRAM_BASE_PRELIM,
|
||||
SDRAM_MAX_SIZE);
|
||||
|
||||
return (size10);
|
||||
|
||||
@@ -78,6 +78,7 @@ SECTIONS
|
||||
*(.rodata)
|
||||
*(.rodata1)
|
||||
*(.rodata.str1.4)
|
||||
*(.eh_frame)
|
||||
}
|
||||
.fini : { *(.fini) } =0
|
||||
.ctors : { *(.ctors) }
|
||||
|
||||
@@ -74,6 +74,8 @@ SECTIONS
|
||||
{
|
||||
*(.rodata)
|
||||
*(.rodata1)
|
||||
*(.rodata.str1.4)
|
||||
*(.eh_frame)
|
||||
}
|
||||
.fini : { *(.fini) } =0
|
||||
.ctors : { *(.ctors) }
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# (C) Copyright 2000
|
||||
# (C) Copyright 2000-2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
@@ -23,18 +23,22 @@
|
||||
|
||||
include $(TOPDIR)/config.mk
|
||||
|
||||
LIB = lib$(BOARD).a
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
OBJS = $(BOARD).o flash.o
|
||||
COBJS = $(BOARD).o flash.o
|
||||
|
||||
$(LIB): .depend $(OBJS)
|
||||
$(AR) crv $@ $(OBJS)
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(COBJS))
|
||||
SOBJS := $(addprefix $(obj),$(SOBJS))
|
||||
|
||||
$(LIB): $(obj).depend $(OBJS)
|
||||
$(AR) $(ARFLAGS) $@ $(OBJS)
|
||||
|
||||
#########################################################################
|
||||
|
||||
.depend: Makefile $(SOBJS:.o=.S) $(OBJS:.o=.c)
|
||||
$(CC) -M $(CFLAGS) $(SOBJS:.o=.S) $(OBJS:.o=.c) > $@
|
||||
# defines $(obj).depend target
|
||||
include $(SRCTREE)/rules.mk
|
||||
|
||||
sinclude .depend
|
||||
sinclude $(obj).depend
|
||||
|
||||
#########################################################################
|
||||
|
||||
@@ -137,7 +137,7 @@ long int initdram (int board_type)
|
||||
* try 10 column mode
|
||||
*/
|
||||
|
||||
size10 = dram_size (CFG_MAMR_10COL, (ulong *) SDRAM_BASE_PRELIM,
|
||||
size10 = dram_size (CFG_MAMR_10COL, SDRAM_BASE_PRELIM,
|
||||
SDRAM_MAX_SIZE);
|
||||
|
||||
return (size10);
|
||||
|
||||
@@ -78,6 +78,7 @@ SECTIONS
|
||||
*(.rodata)
|
||||
*(.rodata1)
|
||||
*(.rodata.str1.4)
|
||||
*(.eh_frame)
|
||||
}
|
||||
.fini : { *(.fini) } =0
|
||||
.ctors : { *(.ctors) }
|
||||
|
||||
@@ -74,6 +74,8 @@ SECTIONS
|
||||
{
|
||||
*(.rodata)
|
||||
*(.rodata1)
|
||||
*(.rodata.str1.4)
|
||||
*(.eh_frame)
|
||||
}
|
||||
.fini : { *(.fini) } =0
|
||||
.ctors : { *(.ctors) }
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# (C) Copyright 2000-2004
|
||||
# (C) Copyright 2000-2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
@@ -23,18 +23,22 @@
|
||||
|
||||
include $(TOPDIR)/config.mk
|
||||
|
||||
LIB = lib$(BOARD).a
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
OBJS = $(BOARD).o flash.o
|
||||
COBJS = $(BOARD).o flash.o
|
||||
|
||||
$(LIB): .depend $(OBJS)
|
||||
$(AR) crv $@ $(OBJS)
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(COBJS))
|
||||
SOBJS := $(addprefix $(obj),$(SOBJS))
|
||||
|
||||
$(LIB): $(obj).depend $(OBJS)
|
||||
$(AR) $(ARFLAGS) $@ $(OBJS)
|
||||
|
||||
#########################################################################
|
||||
|
||||
.depend: Makefile $(SOBJS:.o=.S) $(OBJS:.o=.c)
|
||||
$(CC) -M $(CFLAGS) $(SOBJS:.o=.S) $(OBJS:.o=.c) > $@
|
||||
# defines $(obj).depend target
|
||||
include $(SRCTREE)/rules.mk
|
||||
|
||||
sinclude .depend
|
||||
sinclude $(obj).depend
|
||||
|
||||
#########################################################################
|
||||
|
||||
@@ -94,8 +94,8 @@ like[include/configs/RPXlite.h] :
|
||||
|
||||
#define CONFIG_BOOTCOMMAND \
|
||||
"bootp; " \
|
||||
"setenv bootargs root=/dev/nfs rw nfsroot=$(serverip):$(rootpath) " \
|
||||
"ip=$(ipaddr):$(serverip):$(gatewayip):$(netmask):$(hostname)::off; " \
|
||||
"setenv bootargs root=/dev/nfs rw nfsroot=${serverip}:${rootpath} " \
|
||||
"ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}::off; " \
|
||||
"bootm"
|
||||
|
||||
This is enough for kernel NFS test. But as debug process goes on, you would expect
|
||||
|
||||
@@ -142,7 +142,7 @@ long int initdram (int board_type)
|
||||
* try 9 column mode
|
||||
*/
|
||||
|
||||
size9 = dram_size (CFG_MAMR_9COL, (ulong *)SDRAM_BASE_PRELIM, SDRAM_MAX_SIZE);
|
||||
size9 = dram_size (CFG_MAMR_9COL, SDRAM_BASE_PRELIM, SDRAM_MAX_SIZE);
|
||||
|
||||
/*
|
||||
* Final mapping:
|
||||
|
||||
@@ -78,6 +78,7 @@ SECTIONS
|
||||
*(.rodata)
|
||||
*(.rodata1)
|
||||
*(.rodata.str1.4)
|
||||
*(.eh_frame)
|
||||
}
|
||||
.fini : { *(.fini) } =0
|
||||
.ctors : { *(.ctors) }
|
||||
|
||||
@@ -74,6 +74,8 @@ SECTIONS
|
||||
{
|
||||
*(.rodata)
|
||||
*(.rodata1)
|
||||
*(.rodata.str1.4)
|
||||
*(.eh_frame)
|
||||
}
|
||||
.fini : { *(.fini) } =0
|
||||
.ctors : { *(.ctors) }
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# (C) Copyright 2000-2002
|
||||
# (C) Copyright 2000-2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
@@ -23,18 +23,22 @@
|
||||
|
||||
include $(TOPDIR)/config.mk
|
||||
|
||||
LIB = lib$(BOARD).a
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
OBJS = $(BOARD).o flash.o
|
||||
COBJS = $(BOARD).o flash.o
|
||||
|
||||
$(LIB): .depend $(OBJS)
|
||||
$(AR) crv $@ $(OBJS)
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(COBJS))
|
||||
SOBJS := $(addprefix $(obj),$(SOBJS))
|
||||
|
||||
$(LIB): $(obj).depend $(OBJS)
|
||||
$(AR) $(ARFLAGS) $@ $(OBJS)
|
||||
|
||||
#########################################################################
|
||||
|
||||
.depend: Makefile $(SOBJS:.o=.S) $(OBJS:.o=.c)
|
||||
$(CC) -M $(CFLAGS) $(SOBJS:.o=.S) $(OBJS:.o=.c) > $@
|
||||
# defines $(obj).depend target
|
||||
include $(SRCTREE)/rules.mk
|
||||
|
||||
sinclude .depend
|
||||
sinclude $(obj).depend
|
||||
|
||||
#########################################################################
|
||||
|
||||
@@ -93,7 +93,7 @@ const uint sdram_table[] =
|
||||
|
||||
int checkboard (void)
|
||||
{
|
||||
unsigned char *s = getenv ("serial#");
|
||||
char *s = getenv ("serial#");
|
||||
|
||||
puts ("Board: RRvision ");
|
||||
|
||||
@@ -157,7 +157,7 @@ long int initdram (int board_type)
|
||||
* try 8 column mode
|
||||
*/
|
||||
size8 = dram_size (CFG_MAMR_8COL,
|
||||
(ulong *)SDRAM_BASE2_PRELIM,
|
||||
SDRAM_BASE2_PRELIM,
|
||||
SDRAM_MAX_SIZE);
|
||||
|
||||
udelay (1000);
|
||||
@@ -166,7 +166,7 @@ long int initdram (int board_type)
|
||||
* try 9 column mode
|
||||
*/
|
||||
size9 = dram_size (CFG_MAMR_9COL,
|
||||
(ulong *) SDRAM_BASE2_PRELIM,
|
||||
SDRAM_BASE2_PRELIM,
|
||||
SDRAM_MAX_SIZE);
|
||||
|
||||
if (size8 < size9) { /* leave configuration at 9 columns */
|
||||
|
||||
@@ -80,6 +80,7 @@ SECTIONS
|
||||
*(.rodata)
|
||||
*(.rodata1)
|
||||
*(.rodata.str1.4)
|
||||
*(.eh_frame)
|
||||
}
|
||||
.fini : { *(.fini) } =0
|
||||
.ctors : { *(.ctors) }
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# (C) Copyright 2001
|
||||
# (C) Copyright 2001-2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
@@ -23,18 +23,22 @@
|
||||
|
||||
include $(TOPDIR)/config.mk
|
||||
|
||||
LIB = lib$(BOARD).a
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
OBJS = $(BOARD).o flash.o
|
||||
COBJS = $(BOARD).o flash.o
|
||||
|
||||
$(LIB): .depend $(OBJS)
|
||||
$(AR) crv $@ $(OBJS)
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(COBJS))
|
||||
SOBJS := $(addprefix $(obj),$(SOBJS))
|
||||
|
||||
$(LIB): $(obj).depend $(OBJS)
|
||||
$(AR) $(ARFLAGS) $@ $(OBJS)
|
||||
|
||||
#########################################################################
|
||||
|
||||
.depend: Makefile $(OBJS:.o=.c)
|
||||
$(CC) -M $(CFLAGS) $(OBJS:.o=.c) > $@
|
||||
# defines $(obj).depend target
|
||||
include $(SRCTREE)/rules.mk
|
||||
|
||||
sinclude .depend
|
||||
sinclude $(obj).depend
|
||||
|
||||
#########################################################################
|
||||
|
||||
@@ -70,6 +70,8 @@ SECTIONS
|
||||
. = ALIGN(16);
|
||||
*(.rodata)
|
||||
*(.rodata1)
|
||||
*(.rodata.str1.4)
|
||||
*(.eh_frame)
|
||||
}
|
||||
.fini : { *(.fini) } =0
|
||||
.ctors : { *(.ctors) }
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
#
|
||||
# (C) Copyright 2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# Copyright (C) 2004 Arabella Software Ltd.
|
||||
# Yuli Barcohen <yuli@arabellasw.com>
|
||||
#
|
||||
@@ -23,12 +26,16 @@
|
||||
|
||||
include $(TOPDIR)/config.mk
|
||||
|
||||
LIB = lib$(BOARD).a
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
OBJS := $(BOARD).o
|
||||
COBJS := $(BOARD).o
|
||||
|
||||
$(LIB): $(OBJS) $(SOBJS)
|
||||
$(AR) crv $@ $(OBJS)
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(COBJS))
|
||||
SOBJS := $(addprefix $(obj),$(SOBJS))
|
||||
|
||||
$(LIB): $(obj).depend $(OBJS)
|
||||
$(AR) $(ARFLAGS) $@ $(OBJS)
|
||||
|
||||
clean:
|
||||
rm -f $(SOBJS) $(OBJS)
|
||||
@@ -38,9 +45,9 @@ distclean: clean
|
||||
|
||||
#########################################################################
|
||||
|
||||
.depend: Makefile $(SOBJS:.o=.S) $(OBJS:.o=.c)
|
||||
$(CC) -M $(CPPFLAGS) $(SOBJS:.o=.S) $(OBJS:.o=.c) > $@
|
||||
# defines $(obj).depend target
|
||||
include $(SRCTREE)/rules.mk
|
||||
|
||||
-include .depend
|
||||
sinclude $(obj).depend
|
||||
|
||||
#########################################################################
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004 Arabella Software Ltd.
|
||||
* Copyright (C) 2004-2005 Arabella Software Ltd.
|
||||
* Yuli Barcohen <yuli@arabellasw.com>
|
||||
*
|
||||
* Support for Analogue&Micro Adder boards family.
|
||||
@@ -28,7 +28,8 @@
|
||||
#include <mpc8xx.h>
|
||||
|
||||
/*
|
||||
* SDRAM is single Samsung K4S643232F-T70 chip.
|
||||
* SDRAM is single Samsung K4S643232F-T70 chip (8MB)
|
||||
* or single Micron MT48LC4M32B2TG-7 chip (16MB).
|
||||
* Minimal CPU frequency is 40MHz.
|
||||
*/
|
||||
static uint sdram_table[] = {
|
||||
@@ -53,7 +54,7 @@ static uint sdram_table[] = {
|
||||
0xfffffc04, 0xfffffc04, 0xfffffc04, 0xfffffc04,
|
||||
|
||||
/* Refresh (offset 0x30 in UPM RAM) */
|
||||
0x1ff5fca4, 0xfffffc04, 0xfffffc04, 0xfffffc04,
|
||||
0x1ff5fc84, 0xfffffc04, 0xfffffc04, 0xfffffc04,
|
||||
0xfffffc84, 0xfffffc07, 0xfffffc04, 0xfffffc04,
|
||||
0xfffffc04, 0xfffffc04, 0xfffffc04, 0xfffffc04,
|
||||
|
||||
@@ -63,7 +64,7 @@ static uint sdram_table[] = {
|
||||
|
||||
long int initdram (int board_type)
|
||||
{
|
||||
long int msize = CFG_SDRAM_SIZE;
|
||||
long int msize;
|
||||
volatile immap_t *immap = (volatile immap_t *)CFG_IMMR;
|
||||
volatile memctl8xx_t *memctl = &immap->im_memctl;
|
||||
|
||||
@@ -72,11 +73,11 @@ long int initdram (int board_type)
|
||||
/* Configure SDRAM refresh */
|
||||
memctl->memc_mptpr = MPTPR_PTP_DIV32; /* BRGCLK/32 */
|
||||
|
||||
memctl->memc_mamr = (94 << 24) | CFG_MAMR;
|
||||
memctl->memc_mar = 0x0;
|
||||
memctl->memc_mamr = (94 << 24) | CFG_MAMR; /* No refresh */
|
||||
udelay(200);
|
||||
|
||||
/* Run precharge from location 0x15 */
|
||||
memctl->memc_mar = 0x0;
|
||||
memctl->memc_mcr = 0x80002115;
|
||||
udelay(200);
|
||||
|
||||
@@ -84,13 +85,18 @@ long int initdram (int board_type)
|
||||
memctl->memc_mcr = 0x80002830;
|
||||
udelay(200);
|
||||
|
||||
memctl->memc_mar = 0x88;
|
||||
udelay(200);
|
||||
|
||||
/* Run MRS pattern from location 0x16 */
|
||||
memctl->memc_mar = 0x88;
|
||||
memctl->memc_mcr = 0x80002116;
|
||||
udelay(200);
|
||||
|
||||
memctl->memc_mamr |= MAMR_PTAE; /* Enable refresh */
|
||||
memctl->memc_or1 = ~(CFG_SDRAM_MAX_SIZE - 1) | OR_CSNT_SAM;
|
||||
memctl->memc_br1 = CFG_SDRAM_BASE | BR_PS_32 | BR_MS_UPMA | BR_V;
|
||||
|
||||
msize = get_ram_size(CFG_SDRAM_BASE, CFG_SDRAM_MAX_SIZE);
|
||||
memctl->memc_or1 |= ~(msize - 1);
|
||||
|
||||
return msize;
|
||||
}
|
||||
|
||||
|
||||
@@ -60,6 +60,7 @@ SECTIONS
|
||||
*(.rodata)
|
||||
*(.rodata1)
|
||||
*(.rodata.str1.4)
|
||||
*(.eh_frame)
|
||||
}
|
||||
.fini : { *(.fini) } =0
|
||||
.ctors : { *(.ctors) }
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
|
||||
#
|
||||
# (C) Copyright 2000
|
||||
# (C) Copyright 2000-2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
@@ -24,13 +23,17 @@
|
||||
|
||||
include $(TOPDIR)/config.mk
|
||||
|
||||
LIB = lib$(BOARD).a
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
OBJS := adsvix.o pcmcia.o
|
||||
COBJS := adsvix.o pcmcia.o
|
||||
SOBJS := lowlevel_init.o pxavoltage.o
|
||||
|
||||
$(LIB): $(OBJS) $(SOBJS)
|
||||
$(AR) crv $@ $(OBJS) $(SOBJS)
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(COBJS))
|
||||
SOBJS := $(addprefix $(obj),$(SOBJS))
|
||||
|
||||
$(LIB): $(obj).depend $(OBJS) $(SOBJS)
|
||||
$(AR) $(ARFLAGS) $@ $(OBJS) $(SOBJS)
|
||||
|
||||
clean:
|
||||
rm -f $(SOBJS) $(OBJS)
|
||||
@@ -40,9 +43,9 @@ distclean: clean
|
||||
|
||||
#########################################################################
|
||||
|
||||
.depend: Makefile $(SOBJS:.o=.S) $(OBJS:.o=.c)
|
||||
$(CC) -M $(CPPFLAGS) $(SOBJS:.o=.S) $(OBJS:.o=.c) > $@
|
||||
# defines $(obj).depend target
|
||||
include $(SRCTREE)/rules.mk
|
||||
|
||||
-include .depend
|
||||
sinclude $(obj).depend
|
||||
|
||||
#########################################################################
|
||||
|
||||
@@ -30,6 +30,8 @@
|
||||
|
||||
#include <common.h>
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
/* ------------------------------------------------------------------------- */
|
||||
|
||||
/*
|
||||
@@ -38,8 +40,6 @@
|
||||
|
||||
int board_init (void)
|
||||
{
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
/* memory and cpu-speed are setup before relocation */
|
||||
/* so we do _nothing_ here */
|
||||
|
||||
@@ -62,8 +62,6 @@ int board_late_init(void)
|
||||
|
||||
int dram_init (void)
|
||||
{
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
|
||||
gd->bd->bi_dram[0].size = PHYS_SDRAM_1_SIZE;
|
||||
gd->bd->bi_dram[1].start = PHYS_SDRAM_2;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
# (C) Copyright 2003-2005
|
||||
#
|
||||
# (C) Copyright 2003-2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
@@ -22,12 +23,16 @@
|
||||
|
||||
include $(TOPDIR)/config.mk
|
||||
|
||||
LIB = lib$(BOARD).a
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
OBJS := $(BOARD).o flash.o
|
||||
COBJS := $(BOARD).o flash.o
|
||||
|
||||
$(LIB): $(OBJS) $(SOBJS)
|
||||
$(AR) crv $@ $(OBJS)
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(COBJS))
|
||||
SOBJS := $(addprefix $(obj),$(SOBJS))
|
||||
|
||||
$(LIB): $(OBJS)
|
||||
$(AR) $(ARFLAGS) $@ $(OBJS)
|
||||
|
||||
clean:
|
||||
rm -f $(SOBJS) $(OBJS)
|
||||
@@ -37,9 +42,9 @@ distclean: clean
|
||||
|
||||
#########################################################################
|
||||
|
||||
.depend: Makefile $(SOBJS:.o=.S) $(OBJS:.o=.c)
|
||||
$(CC) -M $(CPPFLAGS) $(SOBJS:.o=.S) $(OBJS:.o=.c) > $@
|
||||
# defines $(obj).depend target
|
||||
include $(SRCTREE)/rules.mk
|
||||
|
||||
-include .depend
|
||||
sinclude $(obj).depend
|
||||
|
||||
#########################################################################
|
||||
|
||||
@@ -61,6 +61,7 @@ SECTIONS
|
||||
*(.rodata)
|
||||
*(.rodata1)
|
||||
*(.rodata.str1.4)
|
||||
*(.eh_frame)
|
||||
}
|
||||
.fini : { *(.fini) } =0
|
||||
.ctors : { *(.ctors) }
|
||||
|
||||
190
board/altera/common/AMDLV065D.c
Normal file
190
board/altera/common/AMDLV065D.c
Normal file
@@ -0,0 +1,190 @@
|
||||
/*
|
||||
* (C) Copyright 2000-2004
|
||||
* Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
|
||||
#include <common.h>
|
||||
#if defined(CONFIG_NIOS)
|
||||
#include <nios.h>
|
||||
#else
|
||||
#include <asm/io.h>
|
||||
#endif
|
||||
|
||||
#define SECTSZ (64 * 1024)
|
||||
flash_info_t flash_info[CFG_MAX_FLASH_BANKS];
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
unsigned long flash_init (void)
|
||||
{
|
||||
int i;
|
||||
unsigned long addr;
|
||||
flash_info_t *fli = &flash_info[0];
|
||||
|
||||
fli->size = CFG_FLASH_SIZE;
|
||||
fli->sector_count = CFG_MAX_FLASH_SECT;
|
||||
fli->flash_id = FLASH_MAN_AMD + FLASH_AMDLV065D;
|
||||
|
||||
addr = CFG_FLASH_BASE;
|
||||
for (i = 0; i < fli->sector_count; ++i) {
|
||||
fli->start[i] = addr;
|
||||
addr += SECTSZ;
|
||||
fli->protect[i] = 1;
|
||||
}
|
||||
|
||||
return (CFG_FLASH_SIZE);
|
||||
}
|
||||
/*--------------------------------------------------------------------*/
|
||||
void flash_print_info (flash_info_t * info)
|
||||
{
|
||||
int i, k;
|
||||
int erased;
|
||||
unsigned long *addr;
|
||||
|
||||
printf (" Size: %ld KB in %d Sectors\n",
|
||||
info->size >> 10, info->sector_count);
|
||||
printf (" Sector Start Addresses:");
|
||||
for (i = 0; i < info->sector_count; ++i) {
|
||||
|
||||
/* Check if whole sector is erased */
|
||||
erased = 1;
|
||||
addr = (unsigned long *) info->start[i];
|
||||
for (k = 0; k < SECTSZ/sizeof(unsigned long); k++) {
|
||||
if ( readl(addr++) != (unsigned long)-1) {
|
||||
erased = 0;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/* Print the info */
|
||||
if ((i % 5) == 0)
|
||||
printf ("\n ");
|
||||
printf (" %08lX%s%s",
|
||||
info->start[i],
|
||||
erased ? " E" : " ",
|
||||
info->protect[i] ? "RO " : " ");
|
||||
}
|
||||
printf ("\n");
|
||||
}
|
||||
|
||||
/*-------------------------------------------------------------------*/
|
||||
|
||||
|
||||
int flash_erase (flash_info_t * info, int s_first, int s_last)
|
||||
{
|
||||
unsigned char *addr = (unsigned char *) info->start[0];
|
||||
unsigned char *addr2;
|
||||
int prot, sect;
|
||||
ulong start;
|
||||
|
||||
/* Some sanity checking */
|
||||
if ((s_first < 0) || (s_first > s_last)) {
|
||||
printf ("- no sectors to erase\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
prot = 0;
|
||||
for (sect = s_first; sect <= s_last; ++sect) {
|
||||
if (info->protect[sect]) {
|
||||
prot++;
|
||||
}
|
||||
}
|
||||
if (prot) {
|
||||
printf ("- Warning: %d protected sectors will not be erased!\n",
|
||||
prot);
|
||||
} else {
|
||||
printf ("\n");
|
||||
}
|
||||
|
||||
/* It's ok to erase multiple sectors provided we don't delay more
|
||||
* than 50 usec between cmds ... at which point the erase time-out
|
||||
* occurs. So don't go and put printf() calls in the loop ... it
|
||||
* won't be very helpful ;-)
|
||||
*/
|
||||
for (sect = s_first; sect <= s_last; sect++) {
|
||||
if (info->protect[sect] == 0) { /* not protected */
|
||||
addr2 = (unsigned char *) info->start[sect];
|
||||
writeb (addr, 0xaa);
|
||||
writeb (addr, 0x55);
|
||||
writeb (addr, 0x80);
|
||||
writeb (addr, 0xaa);
|
||||
writeb (addr, 0x55);
|
||||
writeb (addr2, 0x30);
|
||||
/* Now just wait for 0xff & provide some user
|
||||
* feedback while we wait.
|
||||
*/
|
||||
start = get_timer (0);
|
||||
while ( readb (addr2) != 0xff) {
|
||||
udelay (1000 * 1000);
|
||||
putc ('.');
|
||||
if (get_timer (start) > CFG_FLASH_ERASE_TOUT) {
|
||||
printf ("timeout\n");
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
printf ("\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*-----------------------------------------------------------------------
|
||||
* Copy memory to flash, returns:
|
||||
* 0 - OK
|
||||
* 1 - write timeout
|
||||
* 2 - Flash not erased
|
||||
*/
|
||||
|
||||
int write_buff (flash_info_t * info, uchar * src, ulong addr, ulong cnt)
|
||||
{
|
||||
|
||||
vu_char *cmd = (vu_char *) info->start[0];
|
||||
vu_char *dst = (vu_char *) addr;
|
||||
unsigned char b;
|
||||
ulong start;
|
||||
|
||||
while (cnt) {
|
||||
/* Check for sufficient erase */
|
||||
b = *src;
|
||||
if ((readb (dst) & b) != b) {
|
||||
printf ("%02x : %02x\n", readb (dst), b);
|
||||
return (2);
|
||||
}
|
||||
|
||||
writeb (cmd, 0xaa);
|
||||
writeb (cmd, 0x55);
|
||||
writeb (cmd, 0xa0);
|
||||
writeb (dst, b);
|
||||
|
||||
/* Verify write */
|
||||
start = get_timer (0);
|
||||
while (readb (dst) != b) {
|
||||
if (get_timer (start) > CFG_FLASH_WRITE_TOUT) {
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
dst++;
|
||||
src++;
|
||||
cnt--;
|
||||
}
|
||||
|
||||
return (0);
|
||||
}
|
||||
62
board/altera/common/epled.c
Normal file
62
board/altera/common/epled.c
Normal file
@@ -0,0 +1,62 @@
|
||||
/*
|
||||
* (C) Copyright 2004, Psyent Corporation <www.psyent.com>
|
||||
* Scott McNutt <smcnutt@psyent.com>
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
#include <asm/io.h>
|
||||
#include <nios2-io.h>
|
||||
#include <status_led.h>
|
||||
|
||||
/* The LED port is configured as output only, so we
|
||||
* must track the state manually.
|
||||
*/
|
||||
static led_id_t val = 0;
|
||||
|
||||
void __led_init (led_id_t mask, int state)
|
||||
{
|
||||
nios_pio_t *pio = (nios_pio_t *)CFG_LEDPIO_ADDR;
|
||||
|
||||
if (state == STATUS_LED_ON)
|
||||
val &= ~mask;
|
||||
else
|
||||
val |= mask;
|
||||
writel (&pio->data, val);
|
||||
}
|
||||
|
||||
void __led_set (led_id_t mask, int state)
|
||||
{
|
||||
nios_pio_t *pio = (nios_pio_t *)CFG_LEDPIO_ADDR;
|
||||
|
||||
if (state == STATUS_LED_ON)
|
||||
val &= ~mask;
|
||||
else
|
||||
val |= mask;
|
||||
writel (&pio->data, val);
|
||||
}
|
||||
|
||||
void __led_toggle (led_id_t mask)
|
||||
{
|
||||
nios_pio_t *pio = (nios_pio_t *)CFG_LEDPIO_ADDR;
|
||||
|
||||
val ^= mask;
|
||||
writel (&pio->data, val);
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# (C) Copyright 2001-2004
|
||||
# (C) Copyright 2001-2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
@@ -23,14 +23,17 @@
|
||||
|
||||
include $(TOPDIR)/config.mk
|
||||
|
||||
LIB = lib$(BOARD).a
|
||||
|
||||
OBJS := $(BOARD).o flash.o misc.o
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
COBJS := $(BOARD).o flash.o misc.o
|
||||
SOBJS = vectors.o
|
||||
|
||||
$(LIB): $(OBJS) $(SOBJS)
|
||||
$(AR) crv $@ $^
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(COBJS))
|
||||
SOBJS := $(addprefix $(obj),$(SOBJS))
|
||||
|
||||
$(LIB): $(obj).depend $(OBJS) $(SOBJS)
|
||||
$(AR) $(ARFLAGS) $@ $(OBJS) $(SOBJS)
|
||||
|
||||
clean:
|
||||
rm -f $(SOBJS) $(OBJS)
|
||||
@@ -40,9 +43,9 @@ distclean: clean
|
||||
|
||||
#########################################################################
|
||||
|
||||
.depend: Makefile $(SOBJS:.o=.S) $(OBJS:.o=.c)
|
||||
$(CC) -M $(CPPFLAGS) $(SOBJS:.o=.S) $(OBJS:.o=.c) > $@
|
||||
# defines $(obj).depend target
|
||||
include $(SRCTREE)/rules.mk
|
||||
|
||||
-include .depend
|
||||
sinclude $(obj).depend
|
||||
|
||||
#########################################################################
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# (C) Copyright 2001-2004
|
||||
# (C) Copyright 2001-2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
@@ -23,14 +23,17 @@
|
||||
|
||||
include $(TOPDIR)/config.mk
|
||||
|
||||
LIB = lib$(BOARD).a
|
||||
|
||||
OBJS := $(BOARD).o flash.o misc.o
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
COBJS := $(BOARD).o flash.o misc.o
|
||||
SOBJS = vectors.o
|
||||
|
||||
$(LIB): $(OBJS) $(SOBJS)
|
||||
$(AR) crv $@ $^
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(COBJS))
|
||||
SOBJS := $(addprefix $(obj),$(SOBJS))
|
||||
|
||||
$(LIB): $(obj).depend $(OBJS) $(SOBJS)
|
||||
$(AR) $(ARFLAGS) $@ $(OBJS) $(SOBJS)
|
||||
|
||||
clean:
|
||||
rm -f $(SOBJS) $(OBJS)
|
||||
@@ -40,9 +43,9 @@ distclean: clean
|
||||
|
||||
#########################################################################
|
||||
|
||||
.depend: Makefile $(SOBJS:.o=.S) $(OBJS:.o=.c)
|
||||
$(CC) -M $(CPPFLAGS) $(SOBJS:.o=.S) $(OBJS:.o=.c) > $@
|
||||
# defines $(obj).depend target
|
||||
include $(SRCTREE)/rules.mk
|
||||
|
||||
-include .depend
|
||||
sinclude $(obj).depend
|
||||
|
||||
#########################################################################
|
||||
|
||||
55
board/altera/ep1c20/Makefile
Normal file
55
board/altera/ep1c20/Makefile
Normal file
@@ -0,0 +1,55 @@
|
||||
#
|
||||
# (C) Copyright 2001-2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
# project.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation; either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
# MA 02111-1307 USA
|
||||
#
|
||||
|
||||
include $(TOPDIR)/config.mk
|
||||
ifneq ($(OBJTREE),$(SRCTREE))
|
||||
$(shell mkdir -p $(obj)../common)
|
||||
endif
|
||||
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
COMOBJS := ../common/AMDLV065D.o ../common/epled.o
|
||||
|
||||
COBJS := $(BOARD).o $(COMOBJS)
|
||||
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(COBJS))
|
||||
SOBJS := $(addprefix $(obj),$(SOBJS))
|
||||
|
||||
$(LIB): $(obj).depend $(OBJS)
|
||||
$(AR) $(ARFLAGS) $@ $(OBJS)
|
||||
|
||||
clean:
|
||||
rm -f $(SOBJS) $(OBJS)
|
||||
|
||||
distclean: clean
|
||||
rm -f $(LIB) core *.bak .depend
|
||||
|
||||
#########################################################################
|
||||
|
||||
# defines $(obj).depend target
|
||||
include $(SRCTREE)/rules.mk
|
||||
|
||||
sinclude $(obj).depend
|
||||
|
||||
#########################################################################
|
||||
31
board/altera/ep1c20/config.mk
Normal file
31
board/altera/ep1c20/config.mk
Normal file
@@ -0,0 +1,31 @@
|
||||
#
|
||||
# (C) Copyright 2005, Psyent Corporation <www.psyent.com>
|
||||
# Scott McNutt <smcnutt@psyent.com>
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
# project.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation; either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
# MA 02111-1307 USA
|
||||
#
|
||||
|
||||
TEXT_BASE = 0x01fc0000
|
||||
|
||||
PLATFORM_CPPFLAGS += -mno-hw-div -mno-hw-mul
|
||||
PLATFORM_CPPFLAGS += -I$(TOPDIR)/board/$(VENDOR)/include
|
||||
|
||||
ifeq ($(debug),1)
|
||||
PLATFORM_CPPFLAGS += -DDEBUG
|
||||
endif
|
||||
40
board/altera/ep1c20/ep1c20.c
Normal file
40
board/altera/ep1c20/ep1c20.c
Normal file
@@ -0,0 +1,40 @@
|
||||
/*
|
||||
* (C) Copyright 2005, Psyent Corporation <www.psyent.com>
|
||||
* Scott McNutt <smcnutt@psyent.com>
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
|
||||
int board_early_init_f (void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
int checkboard (void)
|
||||
{
|
||||
puts ("BOARD : Altera EP-1C20\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
long int initdram (int board_type)
|
||||
{
|
||||
return (0);
|
||||
}
|
||||
136
board/altera/ep1c20/u-boot.lds
Normal file
136
board/altera/ep1c20/u-boot.lds
Normal file
@@ -0,0 +1,136 @@
|
||||
/*
|
||||
* (C) Copyright 2004, Psyent Corporation <www.psyent.com>
|
||||
* Scott McNutt <smcnutt@psyent.com>
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
|
||||
OUTPUT_FORMAT("elf32-littlenios2")
|
||||
OUTPUT_ARCH(nios2)
|
||||
ENTRY(_start)
|
||||
|
||||
SECTIONS
|
||||
{
|
||||
.text :
|
||||
{
|
||||
cpu/nios2/start.o (.text)
|
||||
*(.text)
|
||||
*(.text.*)
|
||||
*(.gnu.linkonce.t*)
|
||||
*(.rodata)
|
||||
*(.rodata.*)
|
||||
*(.gnu.linkonce.r*)
|
||||
}
|
||||
. = ALIGN (4);
|
||||
_etext = .;
|
||||
PROVIDE (etext = .);
|
||||
|
||||
/* CMD TABLE - sandwich this in between text and data so
|
||||
* the initialization code relocates the command table as
|
||||
* well -- admittedly, this is just pure laziness ;-)
|
||||
*/
|
||||
__u_boot_cmd_start = .;
|
||||
.u_boot_cmd :
|
||||
{
|
||||
*(.u_boot_cmd)
|
||||
}
|
||||
. = ALIGN(4);
|
||||
__u_boot_cmd_end = .;
|
||||
|
||||
/* INIT DATA sections - "Small" data (see the gcc -G option)
|
||||
* is always gp-relative. Here we make all init data sections
|
||||
* adjacent to simplify the startup code -- and provide
|
||||
* the global pointer for gp-relative access.
|
||||
*/
|
||||
_data = .;
|
||||
.data :
|
||||
{
|
||||
*(.data)
|
||||
*(.data.*)
|
||||
*(.gnu.linkonce.d*)
|
||||
}
|
||||
|
||||
. = ALIGN(16);
|
||||
_gp = .; /* Global pointer addr */
|
||||
PROVIDE (gp = .);
|
||||
|
||||
.sdata :
|
||||
{
|
||||
*(.sdata)
|
||||
*(.sdata.*)
|
||||
*(.gnu.linkonce.s.*)
|
||||
}
|
||||
. = ALIGN(4);
|
||||
|
||||
_edata = .;
|
||||
PROVIDE (edata = .);
|
||||
|
||||
/* UNINIT DATA - Small uninitialized data is first so it's
|
||||
* adjacent to sdata and can be referenced via gp. The normal
|
||||
* bss follows. We keep it adjacent to simplify init code.
|
||||
*/
|
||||
__bss_start = .;
|
||||
.sbss :
|
||||
{
|
||||
*(.sbss)
|
||||
*(.sbss.*)
|
||||
*(.gnu.linkonce.sb.*)
|
||||
*(.scommon)
|
||||
}
|
||||
. = ALIGN(4);
|
||||
.bss :
|
||||
{
|
||||
*(.bss)
|
||||
*(.bss.*)
|
||||
*(.dynbss)
|
||||
*(COMMON)
|
||||
*(.scommon)
|
||||
}
|
||||
. = ALIGN(4);
|
||||
_end = .;
|
||||
PROVIDE (end = .);
|
||||
|
||||
/* DEBUG -- symbol table, string table, etc. etc.
|
||||
*/
|
||||
.stab 0 : { *(.stab) }
|
||||
.stabstr 0 : { *(.stabstr) }
|
||||
.stab.excl 0 : { *(.stab.excl) }
|
||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||
.stab.index 0 : { *(.stab.index) }
|
||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||
.comment 0 : { *(.comment) }
|
||||
.debug 0 : { *(.debug) }
|
||||
.line 0 : { *(.line) }
|
||||
.debug_srcinfo 0 : { *(.debug_srcinfo) }
|
||||
.debug_sfnames 0 : { *(.debug_sfnames) }
|
||||
.debug_aranges 0 : { *(.debug_aranges) }
|
||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||
.debug_info 0 : { *(.debug_info) }
|
||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||
.debug_line 0 : { *(.debug_line) }
|
||||
.debug_frame 0 : { *(.debug_frame) }
|
||||
.debug_str 0 : { *(.debug_str) }
|
||||
.debug_loc 0 : { *(.debug_loc) }
|
||||
.debug_macinfo 0 : { *(.debug_macinfo) }
|
||||
.debug_weaknames 0 : { *(.debug_weaknames) }
|
||||
.debug_funcnames 0 : { *(.debug_funcnames) }
|
||||
.debug_typenames 0 : { *(.debug_typenames) }
|
||||
.debug_varnames 0 : { *(.debug_varnames) }
|
||||
}
|
||||
55
board/altera/ep1s10/Makefile
Normal file
55
board/altera/ep1s10/Makefile
Normal file
@@ -0,0 +1,55 @@
|
||||
#
|
||||
# (C) Copyright 2001-2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
# project.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation; either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
# MA 02111-1307 USA
|
||||
#
|
||||
|
||||
include $(TOPDIR)/config.mk
|
||||
ifneq ($(OBJTREE),$(SRCTREE))
|
||||
$(shell mkdir -p $(obj)../common)
|
||||
endif
|
||||
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
COMOBJS := ../common/AMDLV065D.o ../common/epled.o
|
||||
|
||||
COBJS := $(BOARD).o $(COMOBJS)
|
||||
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(COBJS))
|
||||
SOBJS := $(addprefix $(obj),$(SOBJS))
|
||||
|
||||
$(LIB): $(obj).depend $(OBJS)
|
||||
$(AR) $(ARFLAGS) $@ $(OBJS)
|
||||
|
||||
clean:
|
||||
rm -f $(SOBJS) $(OBJS)
|
||||
|
||||
distclean: clean
|
||||
rm -f $(LIB) core *.bak .depend
|
||||
|
||||
#########################################################################
|
||||
|
||||
# defines $(obj).depend target
|
||||
include $(SRCTREE)/rules.mk
|
||||
|
||||
sinclude $(obj).depend
|
||||
|
||||
#########################################################################
|
||||
31
board/altera/ep1s10/config.mk
Normal file
31
board/altera/ep1s10/config.mk
Normal file
@@ -0,0 +1,31 @@
|
||||
#
|
||||
# (C) Copyright 2005, Psyent Corporation <www.psyent.com>
|
||||
# Scott McNutt <smcnutt@psyent.com>
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
# project.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation; either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
# MA 02111-1307 USA
|
||||
#
|
||||
|
||||
TEXT_BASE = 0x01fc0000
|
||||
|
||||
PLATFORM_CPPFLAGS += -mno-hw-div -mno-hw-mul
|
||||
PLATFORM_CPPFLAGS += -I$(TOPDIR)/board/$(VENDOR)/include
|
||||
|
||||
ifeq ($(debug),1)
|
||||
PLATFORM_CPPFLAGS += -DDEBUG
|
||||
endif
|
||||
40
board/altera/ep1s10/ep1s10.c
Normal file
40
board/altera/ep1s10/ep1s10.c
Normal file
@@ -0,0 +1,40 @@
|
||||
/*
|
||||
* (C) Copyright 2005, Psyent Corporation <www.psyent.com>
|
||||
* Scott McNutt <smcnutt@psyent.com>
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#include <common.h>
|
||||
|
||||
int board_early_init_f (void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
int checkboard (void)
|
||||
{
|
||||
puts ("BOARD : Altera EP-1S10\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
long int initdram (int board_type)
|
||||
{
|
||||
return (0);
|
||||
}
|
||||
136
board/altera/ep1s10/u-boot.lds
Normal file
136
board/altera/ep1s10/u-boot.lds
Normal file
@@ -0,0 +1,136 @@
|
||||
/*
|
||||
* (C) Copyright 2004, Psyent Corporation <www.psyent.com>
|
||||
* Scott McNutt <smcnutt@psyent.com>
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
|
||||
OUTPUT_FORMAT("elf32-littlenios2")
|
||||
OUTPUT_ARCH(nios2)
|
||||
ENTRY(_start)
|
||||
|
||||
SECTIONS
|
||||
{
|
||||
.text :
|
||||
{
|
||||
cpu/nios2/start.o (.text)
|
||||
*(.text)
|
||||
*(.text.*)
|
||||
*(.gnu.linkonce.t*)
|
||||
*(.rodata)
|
||||
*(.rodata.*)
|
||||
*(.gnu.linkonce.r*)
|
||||
}
|
||||
. = ALIGN (4);
|
||||
_etext = .;
|
||||
PROVIDE (etext = .);
|
||||
|
||||
/* CMD TABLE - sandwich this in between text and data so
|
||||
* the initialization code relocates the command table as
|
||||
* well -- admittedly, this is just pure laziness ;-)
|
||||
*/
|
||||
__u_boot_cmd_start = .;
|
||||
.u_boot_cmd :
|
||||
{
|
||||
*(.u_boot_cmd)
|
||||
}
|
||||
. = ALIGN(4);
|
||||
__u_boot_cmd_end = .;
|
||||
|
||||
/* INIT DATA sections - "Small" data (see the gcc -G option)
|
||||
* is always gp-relative. Here we make all init data sections
|
||||
* adjacent to simplify the startup code -- and provide
|
||||
* the global pointer for gp-relative access.
|
||||
*/
|
||||
_data = .;
|
||||
.data :
|
||||
{
|
||||
*(.data)
|
||||
*(.data.*)
|
||||
*(.gnu.linkonce.d*)
|
||||
}
|
||||
|
||||
. = ALIGN(16);
|
||||
_gp = .; /* Global pointer addr */
|
||||
PROVIDE (gp = .);
|
||||
|
||||
.sdata :
|
||||
{
|
||||
*(.sdata)
|
||||
*(.sdata.*)
|
||||
*(.gnu.linkonce.s.*)
|
||||
}
|
||||
. = ALIGN(4);
|
||||
|
||||
_edata = .;
|
||||
PROVIDE (edata = .);
|
||||
|
||||
/* UNINIT DATA - Small uninitialized data is first so it's
|
||||
* adjacent to sdata and can be referenced via gp. The normal
|
||||
* bss follows. We keep it adjacent to simplify init code.
|
||||
*/
|
||||
__bss_start = .;
|
||||
.sbss :
|
||||
{
|
||||
*(.sbss)
|
||||
*(.sbss.*)
|
||||
*(.gnu.linkonce.sb.*)
|
||||
*(.scommon)
|
||||
}
|
||||
. = ALIGN(4);
|
||||
.bss :
|
||||
{
|
||||
*(.bss)
|
||||
*(.bss.*)
|
||||
*(.dynbss)
|
||||
*(COMMON)
|
||||
*(.scommon)
|
||||
}
|
||||
. = ALIGN(4);
|
||||
_end = .;
|
||||
PROVIDE (end = .);
|
||||
|
||||
/* DEBUG -- symbol table, string table, etc. etc.
|
||||
*/
|
||||
.stab 0 : { *(.stab) }
|
||||
.stabstr 0 : { *(.stabstr) }
|
||||
.stab.excl 0 : { *(.stab.excl) }
|
||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||
.stab.index 0 : { *(.stab.index) }
|
||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||
.comment 0 : { *(.comment) }
|
||||
.debug 0 : { *(.debug) }
|
||||
.line 0 : { *(.line) }
|
||||
.debug_srcinfo 0 : { *(.debug_srcinfo) }
|
||||
.debug_sfnames 0 : { *(.debug_sfnames) }
|
||||
.debug_aranges 0 : { *(.debug_aranges) }
|
||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||
.debug_info 0 : { *(.debug_info) }
|
||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||
.debug_line 0 : { *(.debug_line) }
|
||||
.debug_frame 0 : { *(.debug_frame) }
|
||||
.debug_str 0 : { *(.debug_str) }
|
||||
.debug_loc 0 : { *(.debug_loc) }
|
||||
.debug_macinfo 0 : { *(.debug_macinfo) }
|
||||
.debug_weaknames 0 : { *(.debug_weaknames) }
|
||||
.debug_funcnames 0 : { *(.debug_funcnames) }
|
||||
.debug_typenames 0 : { *(.debug_typenames) }
|
||||
.debug_varnames 0 : { *(.debug_varnames) }
|
||||
}
|
||||
55
board/altera/ep1s40/Makefile
Normal file
55
board/altera/ep1s40/Makefile
Normal file
@@ -0,0 +1,55 @@
|
||||
#
|
||||
# (C) Copyright 2001-2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
# project.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation; either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
# MA 02111-1307 USA
|
||||
#
|
||||
|
||||
include $(TOPDIR)/config.mk
|
||||
ifneq ($(OBJTREE),$(SRCTREE))
|
||||
$(shell mkdir -p $(obj)../common)
|
||||
endif
|
||||
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
COMOBJS := ../common/AMDLV065D.o ../common/epled.o
|
||||
|
||||
COBJS := $(BOARD).o $(COMOBJS)
|
||||
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(COBJS))
|
||||
SOBJS := $(addprefix $(obj),$(SOBJS))
|
||||
|
||||
$(LIB): $(obj).depend $(OBJS)
|
||||
$(AR) $(ARFLAGS) $@ $(OBJS)
|
||||
|
||||
clean:
|
||||
rm -f $(SOBJS) $(OBJS)
|
||||
|
||||
distclean: clean
|
||||
rm -f $(LIB) core *.bak .depend
|
||||
|
||||
#########################################################################
|
||||
|
||||
# defines $(obj).depend target
|
||||
include $(SRCTREE)/rules.mk
|
||||
|
||||
sinclude $(obj).depend
|
||||
|
||||
#########################################################################
|
||||
31
board/altera/ep1s40/config.mk
Normal file
31
board/altera/ep1s40/config.mk
Normal file
@@ -0,0 +1,31 @@
|
||||
#
|
||||
# (C) Copyright 2005, Psyent Corporation <www.psyent.com>
|
||||
# Scott McNutt <smcnutt@psyent.com>
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
# project.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation; either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
# MA 02111-1307 USA
|
||||
#
|
||||
|
||||
TEXT_BASE = 0x01fc0000
|
||||
|
||||
PLATFORM_CPPFLAGS += -mno-hw-div -mno-hw-mul
|
||||
PLATFORM_CPPFLAGS += -I$(TOPDIR)/board/$(VENDOR)/include
|
||||
|
||||
ifeq ($(debug),1)
|
||||
PLATFORM_CPPFLAGS += -DDEBUG
|
||||
endif
|
||||
@@ -1,8 +1,6 @@
|
||||
/*
|
||||
* Board specific setup info
|
||||
*
|
||||
* (C) Copyright 2003, ARM Ltd.
|
||||
* Philippe Robin, <philippe.robin@arm.com>
|
||||
* (C) Copyright 2005, Psyent Corporation <www.psyent.com>
|
||||
* Scott McNutt <smcnutt@psyent.com>
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
@@ -23,11 +21,15 @@
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#include <config.h>
|
||||
#include <version.h>
|
||||
#include <common.h>
|
||||
|
||||
.globl platformsetup
|
||||
platformsetup:
|
||||
int checkboard (void)
|
||||
{
|
||||
puts ("BOARD : Altera EP-1S40\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* All done by IntegratorCP's boot monitor! */
|
||||
mov pc, lr
|
||||
long int initdram (int board_type)
|
||||
{
|
||||
return (0);
|
||||
}
|
||||
136
board/altera/ep1s40/u-boot.lds
Normal file
136
board/altera/ep1s40/u-boot.lds
Normal file
@@ -0,0 +1,136 @@
|
||||
/*
|
||||
* (C) Copyright 2004, Psyent Corporation <www.psyent.com>
|
||||
* Scott McNutt <smcnutt@psyent.com>
|
||||
*
|
||||
* See file CREDITS for list of people who contributed to this
|
||||
* project.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of
|
||||
* the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||
* MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
|
||||
OUTPUT_FORMAT("elf32-littlenios2")
|
||||
OUTPUT_ARCH(nios2)
|
||||
ENTRY(_start)
|
||||
|
||||
SECTIONS
|
||||
{
|
||||
.text :
|
||||
{
|
||||
cpu/nios2/start.o (.text)
|
||||
*(.text)
|
||||
*(.text.*)
|
||||
*(.gnu.linkonce.t*)
|
||||
*(.rodata)
|
||||
*(.rodata.*)
|
||||
*(.gnu.linkonce.r*)
|
||||
}
|
||||
. = ALIGN (4);
|
||||
_etext = .;
|
||||
PROVIDE (etext = .);
|
||||
|
||||
/* CMD TABLE - sandwich this in between text and data so
|
||||
* the initialization code relocates the command table as
|
||||
* well -- admittedly, this is just pure laziness ;-)
|
||||
*/
|
||||
__u_boot_cmd_start = .;
|
||||
.u_boot_cmd :
|
||||
{
|
||||
*(.u_boot_cmd)
|
||||
}
|
||||
. = ALIGN(4);
|
||||
__u_boot_cmd_end = .;
|
||||
|
||||
/* INIT DATA sections - "Small" data (see the gcc -G option)
|
||||
* is always gp-relative. Here we make all init data sections
|
||||
* adjacent to simplify the startup code -- and provide
|
||||
* the global pointer for gp-relative access.
|
||||
*/
|
||||
_data = .;
|
||||
.data :
|
||||
{
|
||||
*(.data)
|
||||
*(.data.*)
|
||||
*(.gnu.linkonce.d*)
|
||||
}
|
||||
|
||||
. = ALIGN(16);
|
||||
_gp = .; /* Global pointer addr */
|
||||
PROVIDE (gp = .);
|
||||
|
||||
.sdata :
|
||||
{
|
||||
*(.sdata)
|
||||
*(.sdata.*)
|
||||
*(.gnu.linkonce.s.*)
|
||||
}
|
||||
. = ALIGN(4);
|
||||
|
||||
_edata = .;
|
||||
PROVIDE (edata = .);
|
||||
|
||||
/* UNINIT DATA - Small uninitialized data is first so it's
|
||||
* adjacent to sdata and can be referenced via gp. The normal
|
||||
* bss follows. We keep it adjacent to simplify init code.
|
||||
*/
|
||||
__bss_start = .;
|
||||
.sbss :
|
||||
{
|
||||
*(.sbss)
|
||||
*(.sbss.*)
|
||||
*(.gnu.linkonce.sb.*)
|
||||
*(.scommon)
|
||||
}
|
||||
. = ALIGN(4);
|
||||
.bss :
|
||||
{
|
||||
*(.bss)
|
||||
*(.bss.*)
|
||||
*(.dynbss)
|
||||
*(COMMON)
|
||||
*(.scommon)
|
||||
}
|
||||
. = ALIGN(4);
|
||||
_end = .;
|
||||
PROVIDE (end = .);
|
||||
|
||||
/* DEBUG -- symbol table, string table, etc. etc.
|
||||
*/
|
||||
.stab 0 : { *(.stab) }
|
||||
.stabstr 0 : { *(.stabstr) }
|
||||
.stab.excl 0 : { *(.stab.excl) }
|
||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||
.stab.index 0 : { *(.stab.index) }
|
||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||
.comment 0 : { *(.comment) }
|
||||
.debug 0 : { *(.debug) }
|
||||
.line 0 : { *(.line) }
|
||||
.debug_srcinfo 0 : { *(.debug_srcinfo) }
|
||||
.debug_sfnames 0 : { *(.debug_sfnames) }
|
||||
.debug_aranges 0 : { *(.debug_aranges) }
|
||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||
.debug_info 0 : { *(.debug_info) }
|
||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||
.debug_line 0 : { *(.debug_line) }
|
||||
.debug_frame 0 : { *(.debug_frame) }
|
||||
.debug_str 0 : { *(.debug_str) }
|
||||
.debug_loc 0 : { *(.debug_loc) }
|
||||
.debug_macinfo 0 : { *(.debug_macinfo) }
|
||||
.debug_weaknames 0 : { *(.debug_weaknames) }
|
||||
.debug_funcnames 0 : { *(.debug_funcnames) }
|
||||
.debug_typenames 0 : { *(.debug_typenames) }
|
||||
.debug_varnames 0 : { *(.debug_varnames) }
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# (C) Copyright 2002
|
||||
# (C) Copyright 2002-2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
@@ -23,14 +23,17 @@
|
||||
|
||||
include $(TOPDIR)/config.mk
|
||||
|
||||
LIB = lib$(BOARD).a
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
OBJS = $(BOARD).o
|
||||
OBJS += flash.o
|
||||
COBJS = $(BOARD).o flash.o
|
||||
SOBJS = init.o
|
||||
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(COBJS))
|
||||
SOBJS := $(addprefix $(obj),$(SOBJS))
|
||||
|
||||
$(LIB): $(OBJS) $(SOBJS)
|
||||
$(AR) crv $@ $(OBJS)
|
||||
$(AR) $(ARFLAGS) $@ $(OBJS)
|
||||
|
||||
clean:
|
||||
rm -f $(SOBJS) $(OBJS)
|
||||
@@ -40,9 +43,9 @@ distclean: clean
|
||||
|
||||
#########################################################################
|
||||
|
||||
.depend: Makefile $(SOBJS:.o=.S) $(OBJS:.o=.c)
|
||||
$(CC) -M $(CFLAGS) $(SOBJS:.o=.S) $(OBJS:.o=.c) > $@
|
||||
# defines $(obj).depend target
|
||||
include $(SRCTREE)/rules.mk
|
||||
|
||||
sinclude .depend
|
||||
sinclude $(obj).depend
|
||||
|
||||
#########################################################################
|
||||
|
||||
@@ -31,6 +31,8 @@ void ext_bus_cntlr_init(void);
|
||||
void configure_ppc440ep_pins(void);
|
||||
int is_nand_selected(void);
|
||||
|
||||
unsigned char cfg_simulate_spd_eeprom[128];
|
||||
|
||||
gpio_param_s gpio_tab[GPIO_GROUP_MAX][GPIO_MAX];
|
||||
#if 0
|
||||
{ /* GPIO Alternate1 Alternate2 Alternate3 */
|
||||
@@ -275,7 +277,7 @@ int board_early_init_f(void)
|
||||
}
|
||||
|
||||
#if (CONFIG_COMMANDS & CFG_CMD_NAND)
|
||||
#include <linux/mtd/nand.h>
|
||||
#include <linux/mtd/nand_legacy.h>
|
||||
extern struct nand_chip nand_dev_desc[CFG_MAX_NAND_DEVICE];
|
||||
|
||||
/*----------------------------------------------------------------------------+
|
||||
@@ -357,10 +359,7 @@ void nand_init(void)
|
||||
|
||||
int checkboard(void)
|
||||
{
|
||||
sys_info_t sysinfo;
|
||||
unsigned char *s = getenv("serial#");
|
||||
|
||||
get_sys_info(&sysinfo);
|
||||
char *s = getenv("serial#");
|
||||
|
||||
printf("Board: Bamboo - AMCC PPC440EP Evaluation Board");
|
||||
if (s != NULL) {
|
||||
@@ -369,18 +368,12 @@ int checkboard(void)
|
||||
}
|
||||
putc('\n');
|
||||
|
||||
printf("\tVCO: %lu MHz\n", sysinfo.freqVCOMhz / 1000000);
|
||||
printf("\tCPU: %lu MHz\n", sysinfo.freqProcessor / 1000000);
|
||||
printf("\tPLB: %lu MHz\n", sysinfo.freqPLB / 1000000);
|
||||
printf("\tOPB: %lu MHz\n", sysinfo.freqOPB / 1000000);
|
||||
printf("\tEPB: %lu MHz\n", sysinfo.freqEPB / 1000000);
|
||||
|
||||
return (0);
|
||||
}
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* fixed_sdram_init -- Bamboo has one bank onboard sdram (plus DIMM)
|
||||
* init_spd_array -- Bamboo has one bank onboard sdram (plus DIMM)
|
||||
*
|
||||
* Fixed memory is composed of :
|
||||
* MT46V16M16TG-75 from Micron (x 2), 256Mb, 16 M x16, DDR266,
|
||||
@@ -397,24 +390,40 @@ int checkboard(void)
|
||||
* PLB @ 133 MHz
|
||||
*
|
||||
************************************************************************/
|
||||
void fixed_sdram_init(void)
|
||||
static void init_spd_array(void)
|
||||
{
|
||||
/*
|
||||
* clear this first, if the DDR is enabled by a debugger
|
||||
* then you can not make changes.
|
||||
*/
|
||||
mtsdram(mem_cfg0, 0x00000000); /* Disable EEC */
|
||||
cfg_simulate_spd_eeprom[8] = 0x04; /* 2.5 Volt */
|
||||
cfg_simulate_spd_eeprom[2] = 0x07; /* DDR ram */
|
||||
|
||||
/*--------------------------------------------------------------------
|
||||
* Setup for board-specific specific mem
|
||||
*------------------------------------------------------------------*/
|
||||
/*
|
||||
* Following for CAS Latency = 2.5 @ 133 MHz PLB
|
||||
*/
|
||||
mtsdram(mem_b0cr, 0x00082001);
|
||||
mtsdram(mem_b1cr, 0x00000000);
|
||||
mtsdram(mem_b2cr, 0x00000000);
|
||||
mtsdram(mem_b3cr, 0x00000000);
|
||||
#ifdef CONFIG_DDR_ECC
|
||||
cfg_simulate_spd_eeprom[11] = 0x02; /* ECC ON : 02 OFF : 00 */
|
||||
cfg_simulate_spd_eeprom[31] = 0x08; /* bankSizeID: 32MB */
|
||||
cfg_simulate_spd_eeprom[3] = 0x0C; /* num Row Addr: 12 */
|
||||
#else
|
||||
cfg_simulate_spd_eeprom[11] = 0x00; /* ECC ON : 02 OFF : 00 */
|
||||
cfg_simulate_spd_eeprom[31] = 0x10; /* bankSizeID: 64MB */
|
||||
cfg_simulate_spd_eeprom[3] = 0x0D; /* num Row Addr: 13 */
|
||||
#endif
|
||||
|
||||
cfg_simulate_spd_eeprom[4] = 0x09; /* numColAddr: 9 */
|
||||
cfg_simulate_spd_eeprom[5] = 0x01; /* numBanks: 1 */
|
||||
cfg_simulate_spd_eeprom[0] = 0x80; /* number of SPD bytes used: 128 */
|
||||
cfg_simulate_spd_eeprom[1] = 0x08; /* total number bytes in SPD device = 256 */
|
||||
cfg_simulate_spd_eeprom[21] = 0x00; /* not registered: 0 registered : 0x02*/
|
||||
cfg_simulate_spd_eeprom[6] = 0x20; /* Module data width: 32 bits */
|
||||
cfg_simulate_spd_eeprom[7] = 0x00; /* Module data width continued: +0 */
|
||||
cfg_simulate_spd_eeprom[15] = 0x01; /* wcsbc = 1 */
|
||||
cfg_simulate_spd_eeprom[27] = 0x50; /* tRpNs = 20 ns */
|
||||
cfg_simulate_spd_eeprom[29] = 0x50; /* tRcdNs = 20 ns */
|
||||
|
||||
cfg_simulate_spd_eeprom[30] = 45; /* tRasNs */
|
||||
|
||||
cfg_simulate_spd_eeprom[18] = 0x0C; /* casBit (2,2.5) */
|
||||
|
||||
cfg_simulate_spd_eeprom[9] = 0x75; /* SDRAM Cycle Time (cas latency 2.5) = 7.5 ns */
|
||||
cfg_simulate_spd_eeprom[23] = 0xA0; /* SDRAM Cycle Time (cas latency 2) = 10 ns */
|
||||
cfg_simulate_spd_eeprom[25] = 0x00; /* SDRAM Cycle Time (cas latency 1.5) = N.A */
|
||||
cfg_simulate_spd_eeprom[12] = 0x82; /* refresh Rate Type: Normal (15.625us) + Self refresh */
|
||||
}
|
||||
|
||||
long int initdram (int board_type)
|
||||
@@ -422,10 +431,11 @@ long int initdram (int board_type)
|
||||
long dram_size = 0;
|
||||
|
||||
/*
|
||||
* First init bank0 (onboard sdram) and then configure the DIMM-slots
|
||||
* First write simulated values in eeprom array for onboard bank 0
|
||||
*/
|
||||
fixed_sdram_init();
|
||||
dram_size = spd_sdram (0);
|
||||
init_spd_array();
|
||||
|
||||
dram_size = spd_sdram();
|
||||
|
||||
return dram_size;
|
||||
}
|
||||
@@ -483,20 +493,8 @@ int testdram(void)
|
||||
#if defined(CONFIG_PCI) && defined(CFG_PCI_PRE_INIT)
|
||||
int pci_pre_init(struct pci_controller *hose)
|
||||
{
|
||||
unsigned long strap;
|
||||
unsigned long addr;
|
||||
|
||||
/*--------------------------------------------------------------------------+
|
||||
* Bamboo is always configured as the host & requires the
|
||||
* PCI arbiter to be enabled.
|
||||
*--------------------------------------------------------------------------*/
|
||||
mfsdr(sdr_sdstp1, strap);
|
||||
if ((strap & SDR0_SDSTP1_PAE_MASK) == 0) {
|
||||
printf("PCI: SDR0_STRP1[PAE] not set.\n");
|
||||
printf("PCI: Configuration aborted.\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*-------------------------------------------------------------------------+
|
||||
| Set priority for all PLB3 devices to 0.
|
||||
| Set PLB3 arbiter to fair mode.
|
||||
|
||||
@@ -283,10 +283,8 @@
|
||||
/*----------------------------------------------------------------------------+
|
||||
| PPC440EP GPIOs addresses.
|
||||
+----------------------------------------------------------------------------*/
|
||||
#define GPIO0_BASE 0xEF600B00
|
||||
#define GPIO0_REAL 0xEF600B00
|
||||
|
||||
#define GPIO1_BASE 0xEF600C00
|
||||
#define GPIO1_REAL 0xEF600C00
|
||||
|
||||
/* Offsets */
|
||||
@@ -331,17 +329,6 @@
|
||||
#define GPIO_IS3(x) (x+GPIOx_IS3L) /* GPIO Input register3 High or Low */
|
||||
|
||||
|
||||
/*----------------------------------------------------------------------------+
|
||||
| Declare Configuration values
|
||||
+----------------------------------------------------------------------------*/
|
||||
typedef enum gpio_select { GPIO_SEL, GPIO_ALT1, GPIO_ALT2, GPIO_ALT3 } gpio_select_t;
|
||||
typedef enum gpio_driver { GPIO_DIS, GPIO_IN, GPIO_OUT, GPIO_BI } gpio_driver_t;
|
||||
|
||||
typedef struct { unsigned long add; /* gpio core base address */
|
||||
gpio_driver_t in_out; /* Driver Setting */
|
||||
gpio_select_t alt_nb; /* Selected Alternate */
|
||||
} gpio_param_s;
|
||||
|
||||
/*----------------------------------------------------------------------------+
|
||||
| XX XX
|
||||
|
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# (C) Copyright 2002
|
||||
# (C) Copyright 2002-2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
@@ -21,7 +21,7 @@
|
||||
# MA 02111-1307 USA
|
||||
#
|
||||
|
||||
TEXT_BASE = 0xFFF80000
|
||||
TEXT_BASE = 0xFFFA0000
|
||||
|
||||
PLATFORM_CPPFLAGS += -DCONFIG_440=1
|
||||
|
||||
|
||||
@@ -93,6 +93,7 @@ SECTIONS
|
||||
*(.rodata)
|
||||
*(.rodata1)
|
||||
*(.rodata.str1.4)
|
||||
*(.eh_frame)
|
||||
}
|
||||
.fini : { *(.fini) } =0
|
||||
.ctors : { *(.ctors) }
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# (C) Copyright 2000
|
||||
# (C) Copyright 2000-2006
|
||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||
#
|
||||
# See file CREDITS for list of people who contributed to this
|
||||
@@ -23,12 +23,16 @@
|
||||
|
||||
include $(TOPDIR)/config.mk
|
||||
|
||||
LIB = lib$(BOARD).a
|
||||
LIB = $(obj)lib$(BOARD).a
|
||||
|
||||
OBJS = $(BOARD).o flash.o
|
||||
COBJS = $(BOARD).o flash.o
|
||||
|
||||
SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
|
||||
OBJS := $(addprefix $(obj),$(COBJS))
|
||||
SOBJS := $(addprefix $(obj),$(SOBJS))
|
||||
|
||||
$(LIB): $(OBJS) $(SOBJS)
|
||||
$(AR) crv $@ $(OBJS)
|
||||
$(AR) $(ARFLAGS) $@ $(OBJS)
|
||||
|
||||
clean:
|
||||
rm -f $(SOBJS) $(OBJS)
|
||||
@@ -38,9 +42,9 @@ distclean: clean
|
||||
|
||||
#########################################################################
|
||||
|
||||
.depend: Makefile $(SOBJS:.o=.S) $(OBJS:.o=.c)
|
||||
$(CC) -M $(CFLAGS) $(SOBJS:.o=.S) $(OBJS:.o=.c) > $@
|
||||
# defines $(obj).depend target
|
||||
include $(SRCTREE)/rules.mk
|
||||
|
||||
sinclude .depend
|
||||
sinclude $(obj).depend
|
||||
|
||||
#########################################################################
|
||||
|
||||
@@ -42,7 +42,7 @@ int board_early_init_f(void)
|
||||
*/
|
||||
int checkboard(void)
|
||||
{
|
||||
unsigned char *s = getenv("serial#");
|
||||
char *s = getenv("serial#");
|
||||
|
||||
puts("Board: Bubinga - AMCC PPC405EP Evaluation Board");
|
||||
|
||||
|
||||
@@ -87,6 +87,7 @@ SECTIONS
|
||||
*(.rodata)
|
||||
*(.rodata1)
|
||||
*(.rodata.str1.4)
|
||||
*(.eh_frame)
|
||||
}
|
||||
.fini : { *(.fini) } =0
|
||||
.ctors : { *(.ctors) }
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user