Avatar

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

jpiat

About

Username
jpiat
Joined
Visits
507
Last Active
Roles
Member, Administrator, Moderator
Points
60
Badges
0
  • Configuring Logi-Bone using Non-OS environment

    When the INIT pin of the FPGA is configured as an input (FPGA side) it appears high because its pulled-up and can be read by the Master (the Bone in our case) if configured as an input on the master side.
    mhada
  • Configuring Logi-Bone using Non-OS environment

    You are rightthe configuration mode is selected through mode1 and mode0.By default mode0 is pulled to high on the board and mode1 is pulled to low to load from flash by  default. Putting mode1 high will configure mode0, mode1 at '11' which is the third mode, slave serial.

    Init is configured as input all the time, where do you see in the algo that its set to output ?

    Regards,

    Jonathan Piat
    mhada
  • Configuring Logi-Bone using Non-OS environment

    If you pack the bitstream in your code, then it should be fine. Here is the configuration flow :

    1) Set expander GPIO directions (prog pin, mode1 and mux_oen pin as outputs others as inputs)
    2) Set mode1, prog to high, mux_oen to low and wait some µs
    3) set progb low
    4) wait for init pin to go low
    5) set progb high
    6) wait for init pin to go high
    7)) send all the bytes of the bitsream MSB first on SPI
    8) Optionnaly wait for the done pin to go high


    The pins number on the expander are sum-up in unified_loader/logi_loader.h with expander i2c address and register address. You will get info on how to communicate with the expander in unified_loader/i2c_loader.c

    The code for GPMC configuration is on the logi-kernel repository old/beaglebone/modules


    Regards,

    Jonathan Piat
    mhada
  • Configuring Logi-Bone using Non-OS environment

    Moreover i have code to configure the GPMC (for fpga/BBB communication) that should work with starterware. Before device-tree was introduced, i was cconfigurinf teh GPMC at the register level.
    mhada
  • Configuring Logi-Bone using Non-OS environment

    Hi,

    the FPGA is configured only through i2c and SPI. The I2C is used to drive a IO port expander that control the slow signals of teh configuration (init, prog, done) and the spi is used to send teh bitstream. If you have a look at the linux code for the loader, it should be fairly easy to remove all the linux related part and replace with i2c/spi code. Do starterware allow to access a filessystem where teh bitstream would be stored ? Are your using a LOGI-BONE 1.1 or 1.5 ?

    Regards,

    Jonathan Piat
    mhada