#
837a7ec1 |
|
20-Jul-2020 |
Kent McLeod <Kent.Mcleod@data61.csiro.au> |
trivial: Fix compiler warnings in tx2 driver - Remove unused variables - Return error instead of abort during init
|
#
c63b06e8 |
|
16-Jul-2020 |
Kent McLeod <Kent.Mcleod@data61.csiro.au> |
ethdrivers,tx2: Tweak looping logic for tx and rx dev->tx_remain can be updated within the loop, so test it again in the loop condition.
|
#
c60b5ff0 |
|
16-Jul-2020 |
Kent McLeod <Kent.Mcleod@data61.csiro.au> |
ethdrivers,tx2: Batch rx interrupts using timer Use a timer to delay delivery of RX interrupts in order to limit amount of RX interrupts received under heavy load.
|
#
652704a8 |
|
16-Jul-2020 |
Kent McLeod <Kent.Mcleod@data61.csiro.au> |
ethdrivers,tx2: Refactor hardware defs into header Move hardware definitions into header so that they can be accessed by other driver files.
|
#
fe8f21fb |
|
21-May-2020 |
Kent McLeod <Kent.Mcleod@data61.csiro.au> |
trivial: Fix incorrect ring setup in ethdrivers Both intel and tx2 drivers incorrectly configured the amount of descriptors in the rings slightly.
|
#
9210fa7e |
|
20-May-2020 |
Damon Lee <Damon.Lee@data61.csiro.au> |
libethdrivers,tx2: Fit TX,RX tail descriptors The tail descriptors indicate the last descriptor that is available to the DMA controller for the Ethernet module. While it is possible if we set the tail descriptor to be the last descriptor in the allocated ring, this could cause slowdowns when the DMA controller looks at a descriptor in the ring that is not ready to be transmitted/received into. This commit changes it so that the tail descriptors are set when we have buffers ready and so also that it matches the last descriptor that is available to be acted on.
|
#
43c8e19f |
|
11-May-2020 |
Damon Lee <Damon.Lee@data61.csiro.au> |
libethdrivers,tx2: Stop spurious IRQs in TX Disabling interrupts in the TX path prevents extra interrupts from firing while handing the interrupts.
|
#
e163560f |
|
11-May-2020 |
Damon Lee <Damon.Lee@data61.csiro.au> |
libethdrivers,tx2: Refactor RX IRQ handling code This commits refactors the RX path IRQ handling code so the process of disabling RX interrupts is outside of the IRQ status checking code. It makes more sense to disable interrupts in the IRQ handling function and not in the IRQ status checking code. Also rename one of fields in the DMA registers struct so that it matches the actual functionality.
|
#
df8d3dac |
|
11-May-2020 |
Damon Lee <Damon.Lee@data61.csiro.au> |
libethdrivers,tx2: Fix up descriptors and buffers The address of the last descriptor was off by one and some descriptors also had invalid buffers when refilling buffers for the RX ring. This wasn't a problem for applications working under lower throughputs but on higher throughputs, the Ethernet device would sometimes hang possibly due to bus errors on the DMA controller. This commit fixes those issues.
|
#
c5a8ab5f |
|
03-May-2020 |
Kent McLeod <Kent.Mcleod@data61.csiro.au> |
libethdrivers: Update tx2 and intel drivers Add a new initialization mechanism for drivers to allocate their own resources that use the driver framework interfaces.
|
#
21605856 |
|
23-Apr-2020 |
Damon Lee <Damon.Lee@data61.csiro.au> |
libethdrivers,tx2: Ignore false Ethernet interrupt Sometimes when the Ethernet devices starts up, it fires an interrupt to the common interrupt line which is not a TX nor a RX-related interrupt. This commits changes the logic so that it ignores any false interrupts.
|
#
8552d375 |
|
14-Apr-2020 |
Damon Lee <Damon.Lee@data61.csiro.au> |
libethdrivers,tx2: Return bits in eqos_handle_irq Now that the TX interrupt is also working, there may be a situation where both RX and TX interrupts to fire at the same causing the common interrupt line to mask either one of the two. This commit updates the interrupt handler so that it returns a bitfield of interrupts seen so that it avoids this situation. Also replace the magic numbers in the driver with constants and make a minor aesthetics change to make it more readable.
|
#
90c284c4 |
|
09-Feb-2020 |
Oliver Scott <Oliver.Scott@data61.csiro.au> |
tx2-ethernet: port Synopsis driver Port/reverse engineer driver from linux/l4t/u-boot sources.
|