lowRISC / lowRISC/opentitan

[SPI device] Accessing SPI Device in FW Operation Mode using USB

Open
#15,099 16 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Component:FPGA Earlgrey-PROD Triaged Type:Question
Dominant language
SystemVerilog
Stars
3.6k
Forks
1.1k
Avg merge
2d 22h
Merged PRs (30d)
141

Description

Hi all,

as the documentation of the Earl Grey design in combination with CW310 doesn't provide much detail of using SPI over USB on a lower level, I hope someone here can provide some useful information.

The target is to send custom data from a different board acting as host to the CW310 SPI device in FW Operation Mode, but it's not clear how to supply outgoing data, so that its written to the RX region of DP-SRAM and can be read by the SPI device.

According to my understanding, data transfer to and from the SPI Device in Earl Grey can only be done via USB involving the SAM3X and no dedicated SPI Port on the CW310 is configured for that, although it seems more straightforward by accessing the SPI pins directly to establish a board-to-board communication.

Any kind of help is appreciated.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the Earl Grey and CW310 documentation, then trace the described USB path involving the SAM3X and the SPI device's DP-SRAM regions. Document a verified procedure for sending custom host data in FW Operation Mode, including what constitutes successful receipt by the SPI device.

Written by the indexing model from the issue text.

Assessment

Domain
documentation, embedded-iot
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.