-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
6919388
commit 8dc49b5
Showing
74 changed files
with
24,693 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
# Sphinx build info version 1 | ||
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. | ||
config: e7b141948ddce73b74afbad686025c6c | ||
tags: 645f666f9bcd5a90fca523b33c5a78b7 |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,115 @@ | ||
Building and Configuring Panda Server | ||
===================================== | ||
|
||
Setting up the build for the Panda Socket Server requires configuring a number | ||
of dependencies and creating a suitable ``CONFIG`` file in the root directory so | ||
that they can be found. | ||
|
||
Dependencies | ||
------------ | ||
|
||
The following dependencies must be configured before any part of the server can | ||
be built. | ||
|
||
Zynq cross-compiler toolchain | ||
This can be downloaded as part of the Xilinx Vivado build environment for | ||
working with Zynq, or probably any ARMv7-A cross-compiler can be used. This | ||
is needed to build all applications running on Panda. | ||
|
||
PandABlocks-FPGA | ||
This part of the Panda project must be available before the server can be | ||
built, as it contains a configuration file defining the low level register | ||
interface to the Panda firmware. | ||
|
||
PandABlocks-rootfs | ||
This part of the Panda project is required in order to provide a working | ||
kernel build tree, and to provide the zpkg build tool. | ||
|
||
|
||
Setting up the ``CONFIG`` file | ||
------------------------------ | ||
|
||
Start by copying the file ``CONFIG.example`` to ``CONFIG`` in the base | ||
directory, and edit the file by commenting out lines as appropriate and editing | ||
them. | ||
|
||
The following symbols must be set to point to the appropriate dependencies: | ||
|
||
``BINUTILS_DIR`` | ||
If the Zynq cross-compiler toolchain is not on the path, this must be set in | ||
order to build the kernel module and the target build. This symbol is not | ||
required for building the simulation server or the documentation. | ||
|
||
``KERNEL_DIR`` | ||
In order to build the kernel module, this symbol must be pointed to the | ||
kernel build tree generated by the PandABlocks-roots build. | ||
|
||
``PANDA_ROOTFS`` | ||
The zpkg build tool is found here. | ||
|
||
The following symbols can all be left at their default values: | ||
|
||
``BUILD_DIR`` | ||
This configures where the built files will be placed. | ||
|
||
``PYTHON`` | ||
This configures which Python interpreter will be used for building. | ||
|
||
``SPHINX_BUILD`` | ||
The sphinx-build Python script used for building the documentation. | ||
|
||
``DEFAULT_TARGETS`` | ||
This determines which makefile targets are generated when ``make`` is run | ||
without specifying a particular target, or when ``make default`` is run. | ||
|
||
|
||
Build Targets | ||
------------- | ||
|
||
The following build targets for the top level makefile are useful: | ||
|
||
``default`` | ||
Builds all the targets specified by ``$(DEFAULT_TARGETS)``, by default | ||
this list is: ``driver``, ``server``, ``sim_server``, ``docs``, ``zpkg``. | ||
|
||
``driver`` | ||
Builds the kernel driver module. | ||
|
||
``server`` | ||
Builds the server version to run on Panda. | ||
|
||
``sim_server`` | ||
Builds a simulation version of the server to run on the local PC. | ||
|
||
``docs`` | ||
Builds the documentation. | ||
|
||
``zpkg`` | ||
Builds the final ``panda-server`` zpgk file. | ||
|
||
``clean`` | ||
Removes the entire ``$(BUILD_DIR)`` directory. | ||
|
||
|
||
Generated Files | ||
--------------- | ||
|
||
In the ``$(BUILD_DIR)`` directory the following subdirectories and files will be | ||
found. In practice the ``.zpg`` file and ``html/`` directory will be wanted. | ||
|
||
``driver/`` | ||
The kernel module required for hardware access is built here. | ||
|
||
| ``server/`` | ||
| ``sim_server/`` | ||
These two directories are used to build the server to run on Panda, and | ||
a simulation server to run on the local PC. | ||
|
||
``html/`` | ||
The documentation is built in html format in this directory. | ||
|
||
| ``panda-server@``\ version\ ``.zpg`` | ||
| ``zpkg-panda-server/`` | ||
A zpkg for the server is built here. |
Oops, something went wrong.