Skip to content

Commit 093e1d2

Browse files
committed
Added a quick-start guide, which show RaspberryPi configurarion.
1 parent 49dc18d commit 093e1d2

File tree

3 files changed

+114
-5
lines changed

3 files changed

+114
-5
lines changed

_includes/docs_contents.html

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@ <h4>Getting Started</h4>
1010
</li>
1111
<li class="{% if page.title == "License" %}current{% endif %}">
1212
<a href="{{ site.url }}/docs/license">License</a>
13+
</li>
14+
<li class="{% if page.title == "Quick-Start" %}current{% endif %}">
15+
<a href="{{ site.url }}/docs/quick-start">Quick-Start</a>
1316
</li>
1417
</ul>
1518
<h4>API</h4>

docs/license.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
layout: docs
33
title: License
44
prev_section: usage-rules
5+
next_section: quick-start
56
permalink: /docs/license/
67
---
78
Copyright (c) 2013, James Walmsley
@@ -10,13 +11,13 @@ All rights reserved.
1011
http://bitthunder.org/
1112

1213
Redistribution and use in source and binary forms, with or without
13-
modification, are permitted provided that the following conditions are met:
14+
modification, are permitted provided that the following conditions are met:
1415

1516
1. Redistributions of source code must retain the above copyright notice, this
16-
list of conditions and the following disclaimer.
17+
list of conditions and the following disclaimer.
1718
2. Redistributions in binary form must reproduce the above copyright notice,
1819
this list of conditions and the following disclaimer in the documentation
19-
and/or other materials provided with the distribution.
20+
and/or other materials provided with the distribution.
2021
3. Developers should adhere to the basic fair usage-rules as set out at:
2122
<a href="http://bitthunder.org/docs/usage-rules/">http://bitthunder.org/docs/usage-rules/</a>
2223

@@ -32,6 +33,5 @@ ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
3233
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
3334

3435
The views and conclusions contained in the software and documentation are those
35-
of the authors and should not be interpreted as representing official policies,
36+
of the authors and should not be interpreted as representing official policies,
3637
either expressed or implied, of the BitThunder Project.
37-

docs/quick-start.md

Lines changed: 106 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,106 @@
1+
---
2+
layout: docs
3+
title: Quick-Start
4+
next_section:
5+
permalink: /docs/quick-start/
6+
---
7+
8+
This guide will attempt to provide a guide to getting bitthunder building on your development system.
9+
The guide is based around the RaspberryPi, but should be very similar for all other supported platforms.
10+
11+
# Cloning BitThunder
12+
13+
You can clone the latest sources from:
14+
{% highlight bash %}
15+
git clone https://github.com/jameswalmsley/bitthunder.git
16+
# Or using SSH (if your a github member).
17+
git clone [email protected]:jameswalmsley/bitthunder.git
18+
{% endhighlight %}
19+
20+
The public master branch aims to stay relatively stable, so you should always be able to build from it.
21+
22+
# Requirements
23+
24+
## DBUILD
25+
BitThunder includes its own make based build system. Its only real dependency is python. There must be a python
26+
interpreter in the path. Version 2.7 is known to work.
27+
28+
DBUILD is responsible for managing dependencies effectively. Its called DBUILD because its like dark-matter, very mysterious!
29+
30+
## Kconfig-frontends
31+
BitThunder uses the Kconfig system taken from the Linux kernel. Kconfig is simply brilliant, so we borrowed it.
32+
Thanks kernel.org!
33+
34+
Build as follows:
35+
36+
{% highlight bash %}
37+
git clone https://github.com/jameswalmsley/kconfig-frontends.git
38+
# Or using SSH (if your a github member).
39+
git clone [email protected]:jameswalmsley/kconfig-frontends.git
40+
# Note this is a mirror of:
41+
# http://ymorin.is-a-geek.org/projects/kconfig-frontends
42+
43+
cd kconfig-frontends
44+
./bootstrap
45+
./configure
46+
make
47+
sudo make install
48+
{% endhighlight %}
49+
50+
You may also need libreadline, libncurses and libcurses installed to build.
51+
52+
# Building BitThunder
53+
54+
Building BitThunder should now be relatively straight-forward...
55+
56+
{% highlight bash %}
57+
cd bitthunder
58+
make menuconfig
59+
{% endhighlight %}
60+
61+
Now configure your system.
62+
For example when building for the raspberry pi:
63+
64+
Build System:
65+
-> Change toolchain-prefix to location of your compiler:
66+
e.g.
67+
/opt/codesourcery/bin/arm-none-eabi-
68+
69+
System Architecture:
70+
-> Select ARM
71+
-> Select BCM2835 Chip variant
72+
73+
Linking:
74+
-> Enable RAM
75+
-> RAM Start Addess = 0x8000
76+
-> RAM length = 0x01000000
77+
# Thats 16Mb, but you could also set it to 128mb.
78+
79+
Exit and save the configuration. Due to a small problem with Kconfig you now have to run
80+
menuconfig once more.
81+
82+
make menuconfig
83+
84+
Simply exit and save the config file.
85+
86+
To build:
87+
88+
make
89+
90+
In the case of raspberry pi, this should compile and produce binaries under
91+
92+
bsp/arm/raspberrypi
93+
94+
kernel.img -- A raw binary for loading directly in memory.
95+
kernel.elf -- JTAG loadable elf file with full debug info.
96+
kernel.list -- A disassembly of the kernel.
97+
kernel.map -- A map of the kernel.
98+
99+
100+
<div class="note info">
101+
<h5>The build folder</h5>
102+
<p>Also note the build folder in the bsp. This is where all the objects, intermediates and dependency files are placed.
103+
This makes it possible to build different BSPs independently without having to clean everything. -- nice!</p>
104+
</div>
105+
106+
Hopefully you'll get a nice flashing LED on the Pi if it works.

0 commit comments

Comments
 (0)