_florent_ changed the topic of #litex to: LiteX FPGA SoC builder and Cores / Github : https://github.com/enjoy-digital, https://github.com/litex-hub / Logs: https://freenode.irclog.whitequark.org/litex
tpb has quit [Remote host closed the connection]
tpb has joined #litex
lf has quit [Ping timeout: 244 seconds]
lf has joined #litex
rozpruwacz has quit [Remote host closed the connection]
hansfbaier has joined #litex
hansfbaier has quit [Client Quit]
hansfbaier has joined #litex
hansfbaier has quit [Client Quit]
hansfbaier has joined #litex
Degi_ has joined #litex
Degi has quit [Ping timeout: 265 seconds]
Degi_ is now known as Degi
<sajattack[m]> lspci is supposed to show "Litex..." if the programming worked right?
<sajattack[m]> Not Squirrel Research Acorn CLE-215+
<hansfbaier> sajattack[m]: IIRC it shows something like 'Xilinx Memory Device'
<hansfbaier> sajattack[m]: let me boot up my test PC..
<hansfbaier> sajattack[m]: 02:00.0 Memory controller: Xilinx Corporation Device 7024
<hansfbaier> sajattack[m]: in the build dir then there are driver/kernel which contains the kernel module (which you have to insert) and driver/user there is a tool to access the kernel driver
<sajattack[m]> Ok
<hansfbaier> sajattack[m]: also, you might want to reboot the PC after flashin
<hansfbaier> sajattack[m]: you can also use this script instead of rebooting: https://pastebin.com/QduqtS5C
<tpb> Title: #!/bin/bash# path to the xilinx device on your PC vvvvvvvvvvvvvvcd /sys/devi - Pastebin.com (at pastebin.com)
<hansfbaier> sajattack[m]: of course all of that has to be run as root
<hansfbaier> sajattack[m]: What JTAG do you use with the Xilinx? I only had success with FTDI FT2232
<sajattack[m]> Yeah I'm having bad luck with jlink
<hansfbaier> sajattack[m]: This adapter is $7 (with shipping) and works like a charm: https://www.aliexpress.com/item/32817551273.html?spm=a2g0s.9042311.0.0.73c54c4dQG2rnK
<tpb> Title: NEW FT232H Multifunction High Speed USB to JTAG UART/ FIFO SPI/ I2C Module|uart usb|usb jtagusb uart - AliExpress (at www.aliexpress.com)
<sajattack[m]> Yeah but shipping will take a month
<sajattack[m]> I might see if the local electronics shop has ftdi cables
<hansfbaier> which FPGA loader do you use? openocd?
<sajattack[m]> Yes
<hansfbaier> FT2232* also work very well
<hansfbaier> sajattack[m]: they only have two interfaces instead of one and cost a bit more
rozpruwacz has joined #litex
kgugala_ has joined #litex
kgugala has quit [Ping timeout: 245 seconds]
hansfbaier has quit [Quit: WeeChat 2.8]
Bertl_oO is now known as Bertl_zZ
kgugala_ has quit [Quit: -a- Connection Timed Out]
kgugala has joined #litex
pftbest has joined #litex
kgugala_ has joined #litex
kgugala has quit [Ping timeout: 240 seconds]
<nats`> hello, is there a recommended module to instantiate an i2c to drive a mdio interface ?
<zyp> mdio is not i2c
frubbl has joined #litex
<zyp> there's a mdio module in liteeth, but as far as I can see it just exposes the signals as register for software bitbanging: https://github.com/enjoy-digital/liteeth/blob/master/liteeth/phy/common.py#L30
<nats`> I agree it's not but I always drived it with hardware i2c module
<nats`> I'll take a look
<zyp> I find that hard to believe, i2c and mdio is incompatible both at the electrical and the protocol level
<nats`> oO
<nats`> uhhmm looking at the code I modified it "a little" :D
<nats`> I could reuse my verilog code need to find a way to include it in the project
<tpb> Title: The FHDL domain-specific language Migen 0.8.dev0 documentation (at m-labs.hk)
<frubbl> nats: The nmigen example is superset of using verilog code
<nats`> thanks I'm applying it
<nats`> maybe a stupid question, but is there a documentation somewhere on how to choose the soc ?
<frubbl> nats: You mean the base class? Well I just looked at the code, what the features the different base classes have and picked the one that comes closest to what I need.
<nats`> I mean using other soc like vexrisc or other (I'm a total beginner with this kind of workflow)
<frubbl> nats: You mean which processor core?
<frubbl> If you want the smallest possible core (slow!) use serv
<frubbl> If you want something space efficient which can run linux, use vexriscv
<frubbl> If you want an embedded core for bare metal, choose picorv32
<frubbl> If you want a PowerPC core, use microwatt
<frubbl> If you want a very space efficient core which can run linux, use mor1kx (OpenRISC architecture)
<frubbl> If you want a RISC-V core for embedded which is written in nmigen, use minerva
<frubbl> If you want a super powerful RISCV core which runs linux choose Rocket
<frubbl> If you are nostalgic and like obsolete FPGA vendor softcores, use lm32
<frubbl> nats: But most of the time you'd probably want vexriscv, that's why it is default
<nats`> ah so SoCCore is a vexrisc ?
<nats`> I'm browsing the source I'm lost sorry
rozpruwacz1 has joined #litex
<frubbl> No SocCore is the a base class other SoC s are built on. VexRiscV is the CPU core
<frubbl> IIRC
<frubbl> It's quite a learning curve, that's for sure, but Python code is very well written and well worth the read
<frubbl> s/Python/the Python/
<frubbl> I learnt a ton reading  _florent_'s code and I still do
<frubbl> nats` ^
<frubbl> It's some of the best code I've ever seen
<nats`> I'm diving in right now :)
<nats`> uhhmm I think I found it " cpu_type = "vexriscv"," in soc_core.py
<nats`> maybe it worth using an integration for an ide because it's a long dive when you use sublime text and grep :D
<frubbl> nats`, yes the cpu_type is an argument to the SoC
<frubbl> Great you found it out!
<frubbl> way to go!
<nats`> vscode is cool, just loading the code is enough to get the navigation through source
RaivisR has quit [Ping timeout: 260 seconds]
<frubbl> nats` Yes it is awesome
frubbl has quit [Quit: Connection closed]
RaivisR has joined #litex
kgugala_ has quit [Quit: -a- Connection Timed Out]
kgugala has joined #litex
rozpruwacz1 has quit [Quit: Leaving.]
Bertl_zZ is now known as Bertl
pepijndevos_ has joined #litex
kgugala has quit [*.net *.split]
pepijndevos has quit [*.net *.split]
<_florent_> nats`: just for info, in the long term, I would like the SoCs to be only based on SoC or LiteXSoC (from soc.py) and completely remove soc_core.py and soc_sdram.py, but for retro-compatibility reasons, soc_code/soc_sdram are still there and mostly wrapping things around soc.py
<_florent_> nats`: so the interesting parts are in soc.py
<_florent_> Otherwise, VexRiscv is the default CPU (because probably the more polyvalent) but you can change it with --cpu-type on your target or cpu_type parameter on SoCCore
<acathla> _florent_, shouldn't you write that somewhere, like directly in the files?
<_florent_> that was also in SoCCore, but I remove it since we are still using SoCCore in the targets and was not sure it would be confusing or not
<acathla> ok
<_florent_> I'll add it back when all the targets will be adapted to use LiteXSoC
<_florent_> and I'll then hide soc_core/soc_sdram somewhere in the codebase to still allow it to be used but not encourage it :)
kgugala has joined #litex
<nats`> _florent_, I'm making note about everything causing me trouble as a newcomer
<nats`> maybe it can be helpful to indicate some documentation work or something like that
<keesj> nats`: I am also using vscode and recently starting using devcontainers (docker stuff) I can now clone my repo and the docker container will build all I need (yosys from source) and then clone litex
<keesj> (to be fair.. I also have tmux and vim and such installed and .. use the terminal a lot). for the flashing I still have some tools outside of the container but with lxserver I might be able to do additional magic
<keesj> stuff keeps slowly changing and my personal progress is slow here.
<keesj> this week-end I hope to just get the default tinyfpga_bx working with the risc core. it currently is not working for me but I don't know why.
keesj has quit [Remote host closed the connection]
keesj has joined #litex
<keesj> so the address where the bios is storred in the flash of the BX is a bit .. weird it at the end of the program partition while the programming tools so flashing it is not trivial unless I am missing something
<keesj> this is the layout https://pastebin.com/tzf1q65Y "default" the "user image" if the bitstream , I modified the code to store the bios in the userdata and flashed that that that .. works but I wonder how this was intented to work. perhaps I am missing a step where the bios gets appended to the bitstream
<tpb> Title: [ { "boardmeta": { "name": "TinyFPGA BX", "fpga": "ice40lp - Pastebin.com (at pastebin.com)
<keesj> where would something like this happen?
<keesj> (I am in the bios so.. reached week-end goal)
kgugala has quit [Quit: -a- Connection Timed Out]
kgugala has joined #litex
peeps[zen] is now known as peepsalot
rozpruwacz has quit [Ping timeout: 256 seconds]
rozpruwacz has joined #litex
peepsalot has quit [Quit: Connection reset by peep]
peepsalot has joined #litex
rozpruwacz1 has joined #litex
HoloIRCUser has joined #litex
pftbest has quit [Remote host closed the connection]
pftbest has joined #litex
RaivisR_ has joined #litex
RaivisR has quit [Ping timeout: 246 seconds]
peepsalot has quit [Ping timeout: 260 seconds]
pftbest has quit [Remote host closed the connection]
hansfbaier has joined #litex
pftbest has joined #litex
pftbest has quit [Ping timeout: 240 seconds]
rozpruwacz1 has quit [Quit: Leaving.]