[PATCH RFC v2 net-next 0/8] net: qualcomm: add QCA7000 UART driver
From: Stefan Wahren
Date: Mon Sep 26 2016 - 07:08:47 EST
The Qualcomm QCA7000 HomePlug GreenPHY supports two interfaces:
UART and SPI. This patch series adds the missing support for UART.
This driver based on the Qualcomm code [1], but contains some changes:
* use random MAC address per default
* use net_device_stats from device
* share frame decoding between SPI and UART driver
* improve error handling
* reimplement tty_wakeup with work queue (based on slcan)
The patches 1 - 3 are just for clean up and are not related to
the UART support. Patches 4 - 7 prepare the existing QCA7000
code for UART support. The last patch contains the new driver.
In order to test the driver a modified slattach in userspace is also
required. A prepared busybox (includes slattach) can be found here [2].
The code itself has been tested on a Freescale i.MX28 board.
Changes in v2:
* fix build issue by using netif_trans_update() and dev_trans_start()
[1] - https://github.com/IoE/qca7000
[2] - https://github.com/lategoodbye/busybox/commits/qca7k_support_1_24
Stefan Wahren (8):
net: qualcomm: remove unnecessary includes
net: qca_debug: use net_device_ops instead of direct call
net: qualcomm: move qcaspi_tx_cmd to qca_spi.c
net: qualcomm: rename qca_framing.c to qca_common.c
net: qualcomm: move MTU handling to qca_common
net: qualcomm: prepare frame decoding for UART driver
net: qualcomm: make qca_common a separate kernel module
net: qualcomm: add QCA7000 UART driver
drivers/net/ethernet/qualcomm/Kconfig | 20 +-
drivers/net/ethernet/qualcomm/Makefile | 7 +-
drivers/net/ethernet/qualcomm/qca_7k.c | 28 --
drivers/net/ethernet/qualcomm/qca_7k.h | 1 -
drivers/net/ethernet/qualcomm/qca_common.c | 178 +++++++++++
drivers/net/ethernet/qualcomm/qca_common.h | 147 +++++++++
drivers/net/ethernet/qualcomm/qca_debug.c | 5 +-
drivers/net/ethernet/qualcomm/qca_framing.c | 156 ----------
drivers/net/ethernet/qualcomm/qca_framing.h | 134 ---------
drivers/net/ethernet/qualcomm/qca_spi.c | 41 ++-
drivers/net/ethernet/qualcomm/qca_spi.h | 5 +-
drivers/net/ethernet/qualcomm/qca_uart.c | 447 ++++++++++++++++++++++++++++
include/uapi/linux/tty.h | 1 +
13 files changed, 828 insertions(+), 342 deletions(-)
create mode 100644 drivers/net/ethernet/qualcomm/qca_common.c
create mode 100644 drivers/net/ethernet/qualcomm/qca_common.h
delete mode 100644 drivers/net/ethernet/qualcomm/qca_framing.c
delete mode 100644 drivers/net/ethernet/qualcomm/qca_framing.h
create mode 100644 drivers/net/ethernet/qualcomm/qca_uart.c
--
2.1.4