Commit cf78b460 authored by Lucas Russo's avatar Lucas Russo

README.md: use github markdown markups

Now, the README.md file has been remodeled
to start using the Github Flavored Markdown
parsing
parent c9ec7d62
============================================================================== # Beam Position Monitor Software
Repository containing the Beam Position Monitor Software Software for controlling the AFC BPM boards
============================================================================== ## Prerequisites:
Prerequisites: Make sure you have the following libraries installed:
-> Make sure you have the following libraries installed: * zeromq-4.0.4 (http://zeromq.org/area:download)
* czmq-2.1.0 (http://czmq.zeromq.org/page:get-the-software)
* zeromq-4.0.4 (http://zeromq.org/area:download) Cloning this repository
* czmq-2.1.0 (http://czmq.zeromq.org/page:get-the-software)
-> Cloning this repository git clone --recursive https://github.com/lerwys/bpm-software.git
1 - git clone --recursive https://github.com/lerwys/bpm-software.git Install the Majordomo application from this repository (autotools-based)
-> Install the Majordomo application from this repository (autotools-based) cd majordomo/libmdp
3 - cd majordomo/libmdp Execute the traditional sequence of autotools commands:
-> Execute the traditional sequence of autotools commands: ./autogen.sh && make && sudo make install
4 - ./autogen.sh && make && sudo make install ## PCIe Installation Instructions
============================================================================== Install linux header files
PCIe Installation Instructions: sudo apt-get install linux-headers-generic
1 - sudo apt-get install linux-headers-generic Install the GIT package
-> Install the GIT package sudo apt-get install binutils gcc
2 - sudo apt-get install binutils gcc Change folder to the pcie driver location
-> Change folder to the pcie driver location cd kernel
4 - cd kernel Compile the PCIe driver and its tests
-> Compile the PCIe driver and its tests make
5 - make Install the PCIe drivers and libraries
-> Install the PCIe drivers and libraries sudo make install
6 - sudo make install Load the Driver module
-> Load the Driver module sudo insmod /lib/modules/$(uname -r)/extra/PciDriver.ko
7 - sudo insmod /lib/modules/$(uname -r)/extra/PciDriver.ko After this the kernel should have found the FPGA board
and initialized it. Run the following command and check its output
-> After this the kernel should have found the FPGA board and dmesg | tail
initialized it. Run the following command and check its output
8 - dmesg | tail You should see something like the excerpt below:
-> You should see something like the excerpt below:
"
[267002.495109] pciDriver - pcidriver_init : [267002.495109] pciDriver - pcidriver_init :
Major 250 allocated to nodename 'fpga' Major 250 allocated to nodename 'fpga'
[267002.495130] pciDriver - pcidriver_probe : [267002.495130] pciDriver - pcidriver_probe :
...@@ -67,25 +64,23 @@ PCIe Installation Instructions: ...@@ -67,25 +64,23 @@ PCIe Installation Instructions:
Registered Interrupt Handler at pin 1, line 11, IRQ 16 Registered Interrupt Handler at pin 1, line 11, IRQ 16
[267002.495450] pciDriver - pcidriver_init : [267002.495450] pciDriver - pcidriver_init :
Module loaded Module loaded
"
==============================================================================
Running the PCIe self-test: ## Running the PCIe self-test
-> After the installation of the PCIe driver (see above) it is possible to run After the installation of the PCIe driver (see above)
a self test to check if everything is setup properly. For this run the following: it is possible to run a self test to check if
everything is setup properly. For this run the following:
-> Change to the "compiled tests folder" Change to the "compiled tests folder"
1 - cd tests/pcie/bin cd tests/pcie/bin
-> Run the test entitled "testPciDriverMod" Run the test entitled "testPciDriverMod"
2 - sudo ./testPciDriverMod sudo ./testPciDriverMod
-> You should get an output like the following, if everythig is ok: You should get an output like the following, if everythig is ok:
"
Testing OPEN DEVICE... PASSED! Testing OPEN DEVICE... PASSED!
Testing PCIDRIVER_IOC_MMAP_MODE... PASSED! Testing PCIDRIVER_IOC_MMAP_MODE... PASSED!
Testing PCIDRIVER_IOC_MMAP_AREA... PASSED! Testing PCIDRIVER_IOC_MMAP_AREA... PASSED!
...@@ -178,39 +173,41 @@ Running the PCIe self-test: ...@@ -178,39 +173,41 @@ Running the PCIe self-test:
| All tests PASSED! | | All tests PASSED! |
------------------------------------- -------------------------------------
" Notice that some tests that try to evaluate the limits of a current
Linux Kernel may fail in some cases. In the example above,
two tests , due to an attempt to allocate a large buffer in kernel
space.
This is not actually an error or a failure, it is just trying to
allocate more memory than the kernel has available.
-> Notice that some tests that try to evaluate the limits of a current ## Installation Instructions
Linux Kernel may fail in some cases. In the example above,
two tests , due to an attempt to allocate a large buffer in kernel
space.
-> This is not actually an error or a failure, it is just trying to Comple everything
allocate more memory than the kernel has available.
============================================================================== make
Installation Instructions: Compile the examples
-> Comple everything make examples
1 - make Run the server components with the helper script, like shown below:
-> Compile the examples ./init.sh <broker_endpoint>
2 - make examples Typically, one should choose the IPC transport method
for its faster than TCP. For instance:
-> Run the server components with a helper script ./init.sh ipc:///tmp/bpm/0
3 - ./init.sh Now we should be good to start making transactions.
-> Now we should be good to start making transactions. Change to the example applications folder
-> Change to the example applications folder
4 - cd examples cd examples
-> Run the Example application Run the Example application
5 - ./client -v ./client -v
-> Leds should be blinking in the FMC ADC board Leds should be blinking in the FMC ADC board
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment