Skip to content

Integrate new Ethernet - #693

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

thomas6785 wants to merge 4 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
@thomas6785
thomas6785 force-pushed the ethernet_integrating branch 2 times, most recently 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)

@marnovandermaas
marnovandermaas force-pushed the ethernet_integrating branch 2 times, most recently from 5bbe5d2 to 31f5324 Compare October 1, 2026 12:02
@marnovandermaas
marnovandermaas force-pushed the ethernet_integrating branch 4 times, most recently from 8ceb488 to e24a285 Compare October 12, 2026 14:18
@marnovandermaas

Copy link
Copy Markdown
Collaborator

Now that CI is passing I think it's best that we merge this pull request.

@marnovandermaas
marnovandermaas added this pull request to the merge queue Oct 12, 2026
@marnovandermaas
marnovandermaas removed this pull request from the merge queue due to a manual request Oct 12, 2026
Thomas O'Dea and others added 4 commits October 12, 2026 20:17
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

Co-authored-by: Marno van der Maas <mvdmaas+git@lowrisc.org>
Co-authored-by: Marno van der Maas <mvdmaas+git@lowrisc.org>
Signed-off-by: Marno van der Maas <mvdmaas+git@lowrisc.org>
@marnovandermaas
marnovandermaas added this pull request to the merge queue Oct 14, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to no response for status checks Oct 14, 2026
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