Code Monkey home page Code Monkey logo

Comments (13)

trabucayre avatar trabucayre commented on August 17, 2024

Your target is an arty. This one has an FTDI with official VID/PID (0403:6010), but there is no FTDI in your lspci dump.
Are you sure to have an arty board?

from linux-on-litex-vexriscv.

jjagielo avatar jjagielo commented on August 17, 2024

I have an Artix 7, but I redid it with the target as arty_a7 and got the same result. I followed the installation as instructed.

from linux-on-litex-vexriscv.

jjagielo avatar jjagielo commented on August 17, 2024

This is what I get from lpsci

$ lspci
00:00.0 Host bridge: Intel Corporation 12th Gen Core Processor Host Bridge/DRAM Registers (rev 02)
00:01.0 PCI bridge: Intel Corporation 12th Gen Core Processor PCI Express x16 Controller #1 (rev 02)
00:02.0 VGA compatible controller: Intel Corporation Alder Lake-P Integrated Graphics Controller (rev 0c)
00:04.0 Signal processing controller: Intel Corporation Alder Lake Innovation Platform Framework Processor Participant (rev 02)
00:06.0 PCI bridge: Intel Corporation 12th Gen Core Processor PCI Express x4 Controller #0 (rev 02)
00:06.2 PCI bridge: Intel Corporation 12th Gen Core Processor PCI Express x4 Controller #2 (rev 02)
00:08.0 System peripheral: Intel Corporation 12th Gen Core Processor Gaussian & Neural Accelerator (rev 02)
00:0a.0 Signal processing controller: Intel Corporation Platform Monitoring Technology (rev 01)
00:14.0 USB controller: Intel Corporation Alder Lake PCH USB 3.2 xHCI Host Controller (rev 01)
00:14.2 RAM memory: Intel Corporation Alder Lake PCH Shared SRAM (rev 01)
00:14.3 Network controller: Intel Corporation Alder Lake-P PCH CNVi WiFi (rev 01)
00:15.0 Serial bus controller: Intel Corporation Alder Lake PCH Serial IO I2C Controller #0 (rev 01)
00:16.0 Communication controller: Intel Corporation Alder Lake PCH HECI Controller (rev 01)
00:1c.0 PCI bridge: Intel Corporation Device 51bc (rev 01)
00:1d.0 PCI bridge: Intel Corporation Device 51b0 (rev 01)
00:1f.0 ISA bridge: Intel Corporation Alder Lake PCH eSPI Controller (rev 01)
00:1f.3 Multimedia audio controller: Intel Corporation Alder Lake PCH-P High Definition Audio Controller (rev 01)
00:1f.4 SMBus: Intel Corporation Alder Lake PCH-P SMBus Host Controller (rev 01)
00:1f.5 Serial bus controller: Intel Corporation Alder Lake-P PCH SPI Controller (rev 01)
01:00.0 VGA compatible controller: NVIDIA Corporation GA106M [GeForce RTX 3060 Mobile / Max-Q] (rev a1)
01:00.1 Audio device: NVIDIA Corporation Device 228e (rev a1)
03:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller PM9A1/PM9A3/980PRO
04:00.0 PCI bridge: Intel Corporation Device 1133 (rev 02)
05:00.0 PCI bridge: Intel Corporation Device 1133 (rev 02)
05:01.0 PCI bridge: Intel Corporation Device 1133 (rev 02)
05:02.0 PCI bridge: Intel Corporation Device 1133 (rev 02)
05:03.0 PCI bridge: Intel Corporation Device 1133 (rev 02)
06:00.0 USB controller: Intel Corporation Device 1134
3a:00.0 USB controller: Intel Corporation Device 1135
6e:00.0 SD Host controller: O2 Micro, Inc. SD/MMC Card Reader Controller (rev 01)

In the link above, I know for sure that I have an Artix-7... is there something else I need to specify?

from linux-on-litex-vexriscv.

trabucayre avatar trabucayre commented on August 17, 2024

Ok: with the board's link it's more clear ;-)
It's not an arty but another artix7 based board (maybe compatible -> you have to check/compare pinout, RAM, etc...).
With the arty you have an FTDI to program/load bitstream and to have an serial interface, here its through an FX2 and/or an external JTAG interface: this why openocd is unable to find an FTDI device.

from linux-on-litex-vexriscv.

jjagielo avatar jjagielo commented on August 17, 2024

What extra arguments would I need to input besides ./make.py --build=arty_a7 --cpu-count=1 --load?

As well, would there be anything I would need to change when building the project, since I input ./make.py --build=arty_a7 --cpu-count=1 --build currently.

It also supports configuration via USB, how could I make this possible as this might be easier for me?

from linux-on-litex-vexriscv.

trabucayre avatar trabucayre commented on August 17, 2024

One thing not clear to me: why using digilent arty a7?
Your board is supported by litex-boards, you have to add a new entry/config in make.py.
About JTAG interface: the best way is to connect an external USB<->JTAG to CON5.

from linux-on-litex-vexriscv.

jjagielo avatar jjagielo commented on August 17, 2024

So I have the external USB <-> JTAG to CON5 connected. I'm not sure why the error from OpenOCD is popping up. Is there something else wrong?

image

from linux-on-litex-vexriscv.

trabucayre avatar trabucayre commented on August 17, 2024

Jack is for power supply
mini USB connector for FX2
Could you tell me name of the external USB<-> you have used?
If you persist to use arty target, errors may be:

  • a different FTDI than the one on this board
  • access right: your user is not in the FTDI's group owner

from linux-on-litex-vexriscv.

jjagielo avatar jjagielo commented on August 17, 2024

Are you referencing the cord I am using, or the port I am using?

from linux-on-litex-vexriscv.

trabucayre avatar trabucayre commented on August 17, 2024

Port. Both on this picture aren't relative to the programming with and FTDI external device.
You have to populate CON5 (near RAM chip) and connect your external probe here.

from linux-on-litex-vexriscv.

jjagielo avatar jjagielo commented on August 17, 2024

So I can't use CON2 (Micro-usb)?

from linux-on-litex-vexriscv.

trabucayre avatar trabucayre commented on August 17, 2024

Once again: CON2 is connected to an FX2 device, with a specific protocol. It's not an FTDI device, it's not compatible with an FTDI device and consequently openocd will not be able to do something with this device.
Yes I assume it's possible to use it with a tool provided by ztex. But until to you stop to confuse between ztex board and digilent board you will not be able to load/program your board.
And since this board it's not an arty the bitstream generated will not works with your board. I haven't checked the schematic but there is a great chance the pinout is different than digilent arty board (both board are based on ARTIX but it's two differents boards) (I have pointed correct platform/target).

from linux-on-litex-vexriscv.

enjoy-digital avatar enjoy-digital commented on August 17, 2024

Hi @jjagielo,

please first read https://github.com/enjoy-digital/litex/wiki/Feedback-Contribution-Support. Here it seems you are confusing Arty (the Digilent Arty) with Artix-7 (the Xilinx FPGA). To run the project on your board, you first need to add support for your board in the project, which is not currently the case.

However, it seems that the support is present in LiteX-Boards, so running the project on it would be possible. As a first step, you'll have to get test the LiteX-Boards target on your hardware: https://github.com/litex-hub/litex-boards/blob/master/litex_boards/targets/ztex213.py

When you get it working with default settings and are able to load your FPGA, adding the support for the project will consist at listing it on board.py with the right configuration.

from linux-on-litex-vexriscv.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.