http://www.aclevername.com/articles/linux-xilinx-tutorial/index.html
Tutorials for Running Linux on Xilinx FPGAs
| Version: |
r42 2009-12-15 21:44:33 -0700 |
| Authors: |
David Baird
Tim Sander |
| Contact: |
[email protected] |
History
2009-12-16 03:58:03 UTC David Baird <[email protected]>
In the building-linux.html tutorial, I corrected the
mkdosfs command
to format exactly 1 reserved sector (which is required by SystemACE).
2009-06-04 16:00:01 UTC David Baird <[email protected]>
Tim Sander <[email protected]>
contributed the SystemACE
tutorial here.
Thanks!
Overview
These tutorials explain how to run Linux on Xilinx FPGAs. These
tutorials
focus on the Xilinx EDK 10.1 SP3 and kernel releases circa January 2009.
These tutorials assume that:
-
You are able to do "hello world" in EDK.
If you are unable to do "hello world", then you should start
with
this tutorial:
-
You are running Linux and that you are familiar
with shell
concepts.
More information: Here are some shell concepts you should
probably
be familiar with, at a minimum: pwd, rm, cp, mkdir, cd, wget, sudo,
su, $HOME, .bashrc, etc.. If you are not 100% familiar with all
the commands, that may be okay: you might be able to pick these up
as you go along.
-
You know how to install additional software on
your Linux
computer.
More information: As an example, you will need "genext2fs" for
some
of the tutorials. In Debian/Ubuntu, this is accomplished by typing
"apt-get install genext2fs" as root.
-
You have installed the ISE and EDK tools on your
computer. If you don't
know how to do this, then this tutorial might help:
In these tutorials, the tools are assumed to be located
installed at:
- /home/xilinx/10.1_sp3/ise/ISE
- /home/xilinx/10.1_sp3/edk/EDK
- (there is an x101sp3
script which you can easily edit if
your tools are located somewhere else)
You can use "Downloads" to skip over some steps in the tutorials:
It is possible for you to skip over some steps in some of the
tutorials. Look for a "Downloads" section in a particular tutorial
to see if you can simply download the end (or intermediate) results,
thereby skipping some of the steps.
The general steps that are required to get Linux running are listed
below.
These steps are discussed in more detail by the tutorials:
- Install cross-development tools, so that you can compile the
kernel
and userspace applications.
- Create a bitstream (download.bit) using EDK.
- Generate a device-tree (xilinx.dts) using EDK and the device-tree
generator.
- Configure and build the kernel, using the device-tree
(xilinx.dts).
- Build the root filesystem (aka "user space") (this is possibly
the
most complicated part of this whole process).
- To make this process easier to understand, it is preceded by a
minimalist tutorial which creates the smallest possible root
filesystem, containing only two files.
All Tutorials (for Advanced Users)
- Installing ISE and EDK in Linux
- Creating an EDK project
- Install cross-development tools
- Building the Linux kernel
- Building the root filesystem (aka "user space")
- Booting Linux with root filesystem
- initrd method: TODO
- NFS root method: TODO
- SystemACE CompactFlash method: TODO
- __log_buf, shell scripts, and more...: TODO
Beyond These Tutorials
Topics Not Yet Covered by These Tutorials
-
File systems beyond just initrd and initramfs.
If you are using an MTD flash device, you'll probably want to
investigate JFFS2 and YAFFS; The drivers for those file systems are
able to communicate with Linux's MTD interfaces and are aware of how
to explicitly erase blocks.
Acknowledgements
The development of these tutorials has been graciously supported by
the
FPGA
Mission Assurance Center.

--
To unsubscribe, reply using "remove me" as the subject.
|