[PATCH v3 0/4] Various nb8800 tweaks
Marc Gonzalez
marc_gonzalez at sigmadesigns.com
Tue Nov 14 02:53:34 PST 2017
Hello,
The main feature in this series is suspend/resume support (patch 4).
It is implemented by closing the device on suspend, and reopening it
on resume. To achieve this, HW inits are moved to ndo_open (patch 3).
After some back and forth with the HW dev, it turns out that the "raw" IP
does not support disabling DMA in software, so I want to get rid of the
nb8800_dma_stop() hack. Since there is no standard way to disable DMA,
I dropped generic support (patch 1).
The HW dev has also stated that it is safe to tweak the flow control bit
in the NB8800_RXC_CR register at any time (patch 2) i.e. no need for
special handling when RX DMA is enabled, despite the documentation stating:
> The Receive Channel Control Register holds channel enable, mode, endian,
> DMA control, and interrupt control information. This register can only be
> written when the Receive DMA Channel is idle - the Enable bit in it is "0".
Marc Gonzalez (4):
net: nb8800: Drop generic support
net: nb8800: Simplify nb8800_pause_config()
net: nb8800: Move HW init to ndo_open()
net: nb8800: Add support for suspend/resume
drivers/net/ethernet/aurora/nb8800.c | 189 +++++++++++------------------------
drivers/net/ethernet/aurora/nb8800.h | 4 +-
2 files changed, 63 insertions(+), 130 deletions(-)
More information about the linux-arm-kernel
mailing list