[Pulpissimo]where are the <board_target>.sh ? - Printable Version +- PULP Community (https://pulp-platform.org/community) +-- Forum: PULP's Community forum (https://pulp-platform.org/community/forumdisplay.php?fid=1) +--- Forum: PULP General questions (https://pulp-platform.org/community/forumdisplay.php?fid=2) +--- Thread: [Pulpissimo]where are the <board_target>.sh ? (/showthread.php?tid=156) |
[Pulpissimo]where are the <board_target>.sh ? - bunohdwnl - 12-13-2019 Hello, in the Pulpissimo's README.md,it says Quote:Supported Boards In the section Compiling Applications for the FPGA Target, it says Quote:To run or debug applications for the FPGA you need to use a recent version of the PULP-SDK (commit id 3256fe7 or newer.'). Configure the SDK for the FPGA platform by running the following commands within the SDK's root directory: Question: When I git clone the pulp-sdk.git and changed directory to pulp-sdk/configs/fpgas/pulpissimo/, I only found the genesys2.sh. Now I am using Digilent Nexys Video Board, but there is no nexys_video.sh . What should I do? RE: [Pulpissimo]where are the <board_target>.sh ? - kgf - 12-13-2019 The sources are actually under the pulpissimo tree. I think by default they are not automatically downloaded https://github.com/pulp-platform/pulpissimo/tree/master/fpga/pulpissimo-nexys_video RE: [Pulpissimo]where are the <board_target>.sh ? - bunohdwnl - 12-13-2019 (12-13-2019, 12:01 PM)kgf Wrote: The sources are actually under the pulpissimo tree. I think by default they are not automatically downloaded Thank you! I think you may misunderstood me. Actually,the pulpissimo-nexys_video directory will be downloaded automatically when I git clone the pulpissimo repository . But the following two commands Code: source configs/pulpissimo.sh should be executed under the pulp-sdk repository(https://github.com/pulp-platform/pulp-sdk) .In the directory pulp-sdk/configs/fpgas/pulpissimo ,I only found genesys2.sh. But I did not find the .sh files for Xilinx ZCU104 、Xilinx ZCU102 、Digilent Nexys Video and ZedBoard. RE: [Pulpissimo]where are the <board_target>.sh ? - bluewww - 12-16-2019 Looks like pulp-sdk is out of sync with the actual hardware support. I'll contact our sdk maintainer about this. I don't think the scripts will differe by much. RE: [Pulpissimo]where are the <board_target>.sh ? - bunohdwnl - 12-16-2019 (12-16-2019, 02:30 AM)bluewww Wrote: Looks like pulp-sdk is out of sync with the actual hardware support. I'll contact our sdk maintainer about this. I don't think the scripts will differe by much. Thank you for your reply! In addition,I have another question. I have built the SDK based on the Standard SDK build section in the pulp-sdk repository's README. In the runtime directory ,it seems only gap* 、vega and wolfe chips are supported now .In rt_gap*.h、rt_vega.h and rt_wolfe.h (red color words in the following directory tree),some enumeration types which are needed in C code have been defined . But these enumerations are unimplemented (just declaration) in the rt_default.h . Question: Now I am using a Digilent Nexys Video Board , I want to know whether I should implement these enumeration types in rt_defaut.h. Code: pulp-sdk/runtime/pulp-rt/include/rt]$tree . ├── chips │ ├── gap │ │ └── config.h │ ├── gap9 │ │ └── config.h │ ├── gap_rev1 │ │ └── config.h │ ├── rt_default.h │ ├── rt_gap9.h │ ├── rt_gap.h │ ├── rt_pulp.h │ ├── rt_pulpissimo.h │ ├── rt_vega.h │ ├── rt_wolfe.h │ └── vega │ └── config.h ├── data │ ├── rt_data_bridge.h │ ├── rt_data_camera.h │ ├── rt_data_i2c.h │ └── rt_data_spim.h ├── implem │ ├── cluster.h │ ├── gap9.h │ ├── hyperram.h │ ├── implem.h │ ├── udma.h │ ├── utils.h │ └── vega.h ├── rt_alloc.h ├── rt_api_decl.h ├── rt_api.h ├── rt_bridge.h ├── rt_camera.h ├── rt_cluster.h ├── rt_compat.h ├── rt_config.h ├── rt_data.h ├── rt_debug.h ├── rt_dev.h ├── rt_dma.h ├── rt_eeprom.h ├── rt_error.h ├── rt_event.h ├── rt_extern_alloc.h ├── rt_flash.h ├── rt_freq.h ├── rt_fs.h ├── rt_gpio.h ├── rt_himax.h ├── rt_hyper.h ├── rt_i2c.h ├── rt_i2s.h ├── rt_irq.h ├── rt_omp.h ├── rt_ov7670.h ├── rt_pad.h ├── rt_pe.h ├── rt_perf.h ├── rt_periph.h ├── rt_pm.h ├── rt_pwm.h ├── rt_rtc.h ├── rt_spim.h ├── rt_sync_mc.h ├── rt_task.h ├── rt_thread.h ├── rt_time.h ├── rt_timer.h ├── rt_uart.h ├── rt_utils.h └── rt_voltage.h Thanks ! RE: [Pulpissimo]where are the <board_target>.sh ? - germain_haugou - 12-16-2019 Hi, Pulpissimo is supported. There is no specific file for pulpissimo in pulp-rt because it's not a chip so we don't have any specific information in terms of padframe and so on For the fpga, we are indeed only supporting genesys2 in the script which is in charge of running a test, but you can still launch the test with classic openocd commands as usual. The runtime does not need to know the fpga, it's compiled the same way whatever the fpga. RE: [Pulpissimo]where are the <board_target>.sh ? - bunohdwnl - 12-17-2019 (12-16-2019, 02:05 PM)germain_haugou Wrote: Hi, If so,can I use the function rt_set_pad_function in my C code ? I just want to run a gpio_in controlling gpio_out C code in my FPGA development board which has been configured by a bitstream file. But the reference manual ( PULP kernel library : pulp-sdk/doc/dox/doc/runtime/html/index.html) describes the rt_set_pad_function as follows: the enumeration type parameter rt_pad_e and rt_pad_func_e only be defined in rt_vega.h 、rt_gap*.h and rt_wolfe.h . Here is my gpio_in controlling gpio_out C code : (a slide_switch drives a LED's ON or OFF ) I referred to this Thread how to manipulating of GPIOs on Pulpissino platform Code: #include <stdio.h> But it doesn't work , the LED seems to be out of the switch's control. RE: [Pulpissimo]where are the <board_target>.sh ? - LPLA - 08-20-2020 (12-16-2019, 02:30 AM)bluewww Wrote: Looks like pulp-sdk is out of sync with the actual hardware support. I'll contact our sdk maintainer about this. I don't think the scripts will differe by much. Any update on this? I am also trying to run some applications on the Zedboard (I am guessing the pulp-rt-examples can be used?). There is no board target for the Zedboard when executing: Quote:source configs/fpgas/pulpissimo/<board_target>.sh Should we take the genesys2.sh as it is the only one in fpgas/pulpissimo or are there any pending updates on the board targets? Edit: I just saw that the simple runtime seems to feature all the board targets while the pulp-sdk does not. Should it be enough to copy the corresponding board_target.sh file from the simple runtime to the SDK? At least the sizes of the genesys2.sh files are different which worries me. Would it even be possible to use the simple runtime when working with FPGAs? It seems to me that it would not be possible because the command: Quote:source sourceme.sh && ./pulp-tools/bin/plpbuild checkout build --p openocd --stdout would fail when using the simple runtime instead of the SDK. Edit: It seems like using the genesys2.sh is fine for other boards as long as we override the frequencies and baudrate if neccessary. RE: [Pulpissimo]where are the <board_target>.sh ? - meggiman - 08-29-2020 (08-20-2020, 03:52 PM)LPLA Wrote:(12-16-2019, 02:30 AM)bluewww Wrote: Looks like pulp-sdk is out of sync with the actual hardware support. I'll contact our sdk maintainer about this. I don't think the scripts will differe by much. Hi LPLA, Sorry for the late reply. It is as you already discovered, you can just source the genesys2.sh file and override the frequencies. So far, there is no board specific configuration except for the frequency and baud rate that would affect generated binary. I updated the README file on the PULPissimo Github page with a hint to this. |