-
Notifications
You must be signed in to change notification settings - Fork 6.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix and enable sam4e ethernet port #23031
Conversation
All checks are passing now. checkpatch (informational only, not a failure)
Tip: The bot edits this comment instead of posting a new one, so you can check the comment's history to see earlier messages. |
2bea07b
to
f1d52c0
Compare
f1d52c0
to
890b5a4
Compare
890b5a4
to
1e810ee
Compare
1e810ee
to
25c7c5e
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should add supported: netif:eth
in sam4e_xpro.yaml
too.
Just a reminder that, if #23045 gets merged before this PR, we need to add device tree stuff here as well. I already have the commits for that here: |
25c7c5e
to
948de23
Compare
@stephanosio I added missing netif:eth to sam4e_xpro.yaml, thank you for remind me about it. I cherry-picked both commits plus DTS definition and reworked. Now we have phy-connection-type 0dab05d to select between RMII and MII interfaces. I added more DTS options to work in future and now I'll work on max-frame-size. It'll be here soon. Maybe you can update your version with 84e274f. |
c99464e
to
ccb27ad
Compare
This cleans up DMA flags by separating the necessary flags for devices with one or multiple RX/TX queues. Signed-off-by: Gerson Fernando Budke <[email protected]>
This commit adds a GMAC instance to the SAM 4E device tree. Signed-off-by: Stephanos Ioannidis <[email protected]> Signed-off-by: Gerson Fernando Budke <[email protected]>
Add sam4e gmac pin definitions to use ethernet driver. Signed-off-by: Gerson Fernando Budke <[email protected]>
694cd62
to
62cca3b
Compare
rebase and added: 9ad5426 better approach to handle __nocache Thank you @stephanosio @galak @vlotech for all effort spend with the Kconfig issue. |
Some drivers support NOCACHE_MEMORY sections. To have a default fallback for systems where this isn't available or disabled a fallback define is added. Signed-off-by: Vincent van der Locht <[email protected]> Signed-off-by: Gerson Fernando Budke <[email protected]>
Improve data cache conditional build. Now data cache code is build only if device have support to it. This enables GMAC driver for use with devices that don't have data cache instructions. Signed-off-by: Gerson Fernando Budke <[email protected]>
The NOCACHE_MEMORY can be enabled only for those MCU that support data cache. The currently SoC that doesn't have data cache is SAM4E. Signed-off-by: Gerson Fernando Budke <[email protected]>
This add the following options to GMAC device tree bindings: - max-frame-size - max-speed - phy-connection-type Signed-off-by: Gerson Fernando Budke <[email protected]>
The SAM4E GMAC version can use only MII as phy-connection-type. This update the current default RMII value to MII. Signed-off-by: Gerson Fernando Budke <[email protected]>
The current setup of physical layer forces RMII interface. The code was refactored to have only one point to select proper phy interface. Now, GMAC driver works with both RMII or MII interface. The phy connection type is now selected by device tree. The default phy connection is RMII. Signed-off-by: Gerson Fernando Budke <[email protected]>
This commit updates the Atmel SAM GMAC driver to select max frame size value from the device tree. Now GMAC driver can operate with the three different frame size options available. The current supported values are: 1518, 1536 and 10240. Signed-off-by: Gerson Fernando Budke <[email protected]>
This enable GMAC driver by default if the end application selects NETWORKING. The driver will set MII interface since is the only one available for SAM4E and will select a random MAC value. Signed-off-by: Gerson Fernando Budke <[email protected]>
This commit enables the newly added GMAC instance in the `sam4e_xpro` device tree. Signed-off-by: Stephanos Ioannidis <[email protected]> Signed-off-by: Gerson Fernando Budke <[email protected]>
Fix macro name from disable_all_queue_interrupt to disable_all_priority_queue_interrupt. Signed-off-by: Gerson Fernando Budke <[email protected]>
Set model according with SoC revision A or B. Compatible follows same approach. Signed-off-by: Gerson Fernando Budke <[email protected]>
Set model according with SoC revision A or B. Compatible follows same approach. Signed-off-by: Gerson Fernando Budke <[email protected]>
Fixed the ETH_SAM_GMAC_QUEUES config by adding if-statements per SoC series. Signed-off-by: Vincent van der Locht <[email protected]> Signed-off-by: Gerson Fernando Budke <[email protected]>
62cca3b
to
551ae07
Compare
Hi everyone, I was wondering if there is anything missing here? This is an important feature that have been blocked since Feb and will be great have it on Zephyr 2.3. |
This PR add all missing pieces to fix and enable SAM4E Ethernet port.
The changes were tested on SAM4E and SAMV71 boards using samples/net/telnet. Tests are conducted using DHCPv4, collecting stats and ping 8.8.8.8