-
Notifications
You must be signed in to change notification settings - Fork 3k
NXP lpc17xx emac driver #7086
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
NXP lpc17xx emac driver #7086
Conversation
@kjbracey-arm @SeppoTakalo Please review. |
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.
Just passing style nits
u32_t phy_speed_100mbs:1; /**< 10/100 MBS connection speed flag. */ | ||
u32_t phy_full_duplex:1; /**< Half/full duplex connection speed flag. */ | ||
u32_t phy_link_active:1; /**< Phy link active flag. */ | ||
uint32_t phy_speed_100mbs:1; /**< 10/100 MBS connection speed flag. */ |
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.
If touching this, that's not technically portable (or sane). Make them bools or unsigned ints.
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.
Corrected.
idx = LPC_EMAC->TxProduceIndex; | ||
|
||
/* Determine number of free buffers */ | ||
if (idx == cidx) |
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.
{} needed on single lines
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.
Corrected.
@@ -43,12 +48,57 @@ | |||
|
|||
char s_trace_buffer[100] = MEM_MNGR_TRACE; | |||
|
|||
/* For LPC boards define the heap memory bank ourselves to give us section placement | |||
control */ | |||
#ifndef ETHMEM_SECTION |
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.
If we ever do decide to support Nanostack on this board, let's figure out how to put this somewhere central. But this'll do for test.
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.
Yes, that is true.
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.
why are test changes and new tests part of the porting the driver? I would separate these to do a review of tests and then lpcxx emac driver addition
@0xc0170 Ok, I removed the test changes from this pull request and I'll make a new one for those. |
Added support for UBLOX_C027 that was missing from targets.json. |
Added missing lwip memory configurations for UBLOX_C027/ARCH_PRO. |
@0xc0170 Please re-review. Changes now done and we would like to push this into next 5.9 patch release, or ever RC (if we still have time). |
@@ -0,0 +1,178 @@ | |||
|
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.
license header on top of the file missing
Just one small change request and this will go to CI. |
When all TX descriptors were reserved in a row so that TX buffer reclaim interrupt did not happen during reservation sequence, after the interrupt occurred, TX buffer reclaim did no longer free buffers. This happened because when all descriptors were in use, last free index pointed to consumed index.
@0xc0170 Added the license. |
/morph build |
Build : SUCCESSBuild number : 2267 Triggering tests/morph test |
Halting CI builds until RC3 PRs are completed. Will resume after. |
/morph test |
Exporter Build : SUCCESSBuild number : 1902 |
Pausing CI until 5.9 RC3 completes CI. Will restart jobs when able. |
/morph build |
Build : SUCCESSBuild number : 2303 Triggering tests/morph test |
Exporter Build : SUCCESSBuild number : 1925 |
Test : SUCCESSBuild number : 2080 |
This is marked as "refactor", but it's really "fix" as LPC17xx Ethernet is totally nonfunctional in 5.9.0. |
Correct commit order is All 5 commits have the same commit timestamp, from a rebase. The first two commits have reversed author timestamps - Seems to be a known issue: isaacs/github#386 They actually sort by author-date, not commit-date? Your script re-sorts by commit-date, I believe, but that's ineffective as the commit dates are all equal, because of the rebase. I think you may need to work around it by asking Git itself for the order. Something like:
|
Wow. That's nuts. |
Description
Ported NXP lpc17xx ethernet EMAC driver to unified EMAC.
Related greentea test updates are in: #7103.
Pull request type