Skip to content

Integrate new Ethernet - #693

Open
thomas6785 wants to merge 3 commits into
lowRISC:mainfrom
thomas6785:ethernet_integrating
Open

Integrate new Ethernet#693
thomas6785 wants to merge 3 commits into
lowRISC:mainfrom
thomas6785:ethernet_integrating

Conversation

@thomas6785

Copy link
Copy Markdown

This PR replaces the old Ethernet IP with the new version at lowrisc/ethernet.

A smoke test is included which covers:

  • accesses most (though not all) Ethernet registers
  • sending a series of packets over a loopback and checking the received packets match
  • read and write to a small number of PHY registers to validate the MDIO connection
  • transmit over TX
  • receive over RX (requires you to send a packet from another device)

The last two of these do not include any checking but it is useful at least to ensure they don't time out

@thomas6785

Copy link
Copy Markdown
Author

Leaving this as draft for a moment as I would like to try accessing more PHY registers to test PHY features if I get a chance before leaving (though I am relatively confident if we can access some PHY registers then the rest should be no different)

@marnovandermaas marnovandermaas left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice to see the smoke test!

Comment thread sw/cmake/uboot.cmake Outdated
# U-Boot repository and tag to use.
set(UBOOT_REPOSITORY https://github.com/lowRISC/u-boot)
set(UBOOT_TAG mocha-mvp2)
set(UBOOT_REPOSITORY /home/thomas6785/proj/now/u-boot)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should keep this as a lowRISC repo.

@thomas6785
thomas6785 force-pushed the ethernet_integrating branch from 3af4108 to 21ad120 Compare July 31, 2026 09:50
Thomas O'Dea added 2 commits July 31, 2026 13:54
New Ethernet IP is vendored in and integrated to the FPGA top
A modification is made to gen_xilinx_ip.tcl to enable XPMs
The ethernet_wrapper.sv is modified to instantiate the new IP
@thomas6785
thomas6785 force-pushed the ethernet_integrating branch from 21ad120 to c834feb Compare July 31, 2026 12:54
@thomas6785
thomas6785 marked this pull request as ready for review July 31, 2026 14:53
@thomas6785

Copy link
Copy Markdown
Author

Marking this as ready for review as I am happy with it - however clang is about the smoketest and I don't have the time or the knowledge of C to address this. As far as I can tell it's only stylistic issues (the test passes fine after all)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants