All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v6 net-next 00/17] net: qualcomm: add QCA7000 UART driver
@ 2017-05-23 13:12 Stefan Wahren
  2017-05-23 13:12 ` [PATCH v6 net-next 01/17] net: qualcomm: remove unnecessary includes Stefan Wahren
                   ` (16 more replies)
  0 siblings, 17 replies; 37+ messages in thread
From: Stefan Wahren @ 2017-05-23 13:12 UTC (permalink / raw)
  To: Rob Herring, Mark Rutland, David S. Miller
  Cc: Greg Kroah-Hartman, Jiri Slaby, Lino Sanfilippo, Jakub Kicinski,
	devicetree, netdev, linux-serial, linux-kernel, Stefan Wahren

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)
* use new serial device bus instead of ldisc

The patches 1 - 3 are just for clean up and are not related to
the UART support. Patch 4 adds SET_NETDEV_DEV() to qca_spi.
Patches 5 - 16 prepare the existing QCA7000 code for UART support.
The last patch contains the new driver.

The code itself has been tested on a Freescale i.MX28 board and
a Raspberry Pi Zero.

Changes in v6:
  * rebase to current linux-next
  * use SET_NETDEV_DEV() for qca_spi and qca_uart
  * rename binding to qca,qca7000.txt
  * use qca,qca7000 compatible for both driver
  * handle error cases in qca_uart_probe properly
  * fix skb leak in error path of qcauart_netdev_init
  * use dev_kfree_skb_any instead of kfree_skb
  * take care of tx_work on close / remove
  * use devm_kmalloc for tx buffer
  * minor cleanups

Changes in v5:
  * rebase to current linux-next
  * fix alignment issues in rx path
  * fix buffer overrun with big ethernet frames
  * fix init of UART decoding fsm
  * add device UART settings to Kconfig help
  * add current-speed to slave-device binding
  * merge SPI and UART binding document
  * rename qca_common to qca_7k_common
  * drop patch for retrieving UART settings
  * several cleanups

Changes in v4:
  * rebase to current linux-next
  * use parameter -M for git format-patch
  * change order of local variables where possible
  * implement basic serdev support (without hardware flow control)

Changes in v3:
  * rebase to current net-next

Changes in v2:
  * fix build issue by using netif_trans_update() and dev_trans_start()

[1] - https://github.com/IoE/qca7000

Stefan Wahren (17):
  net: qualcomm: remove unnecessary includes
  net: qca_framing: use u16 for frame offset
  net: qca_7k: Use BIT macro
  net: qca_spi: Use SET_NETDEV_DEV()
  net: qualcomm: use net_device_ops instead of direct call
  net: qualcomm: Improve readability of length defines
  net: qca_spi: remove QCASPI_MTU
  net: qualcomm: move qcaspi_tx_cmd to qca_spi.c
  net: qca_spi: Clarify MODULE_DESCRIPTION
  net: qualcomm: rename qca_framing.c to qca_7k_common.c
  net: qualcomm: prepare frame decoding for UART driver
  net: qualcomm: make qca_7k_common a separate kernel module
  dt-bindings: qca7000-spi: Rework binding
  dt-bindings: qca7000: rename binding
  dt-bindings: slave-device: add current-speed property
  dt-bindings: qca7000: append UART interface to binding
  net: qualcomm: add QCA7000 UART driver

 .../devicetree/bindings/net/qca,qca7000.txt        |  88 +++++
 .../devicetree/bindings/net/qca-qca7000-spi.txt    |  47 ---
 .../devicetree/bindings/serial/slave-device.txt    |   9 +
 drivers/net/ethernet/qualcomm/Kconfig              |  24 +-
 drivers/net/ethernet/qualcomm/Makefile             |   7 +-
 drivers/net/ethernet/qualcomm/qca_7k.c             |  28 --
 drivers/net/ethernet/qualcomm/qca_7k.h             |  15 +-
 .../qualcomm/{qca_framing.c => qca_7k_common.c}    |  26 +-
 .../qualcomm/{qca_framing.h => qca_7k_common.h}    |  24 +-
 drivers/net/ethernet/qualcomm/qca_debug.c          |   5 +-
 drivers/net/ethernet/qualcomm/qca_spi.c            |  48 ++-
 drivers/net/ethernet/qualcomm/qca_spi.h            |   5 +-
 drivers/net/ethernet/qualcomm/qca_uart.c           | 423 +++++++++++++++++++++
 13 files changed, 630 insertions(+), 119 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/net/qca,qca7000.txt
 delete mode 100644 Documentation/devicetree/bindings/net/qca-qca7000-spi.txt
 rename drivers/net/ethernet/qualcomm/{qca_framing.c => qca_7k_common.c} (85%)
 rename drivers/net/ethernet/qualcomm/{qca_framing.h => qca_7k_common.h} (86%)
 create mode 100644 drivers/net/ethernet/qualcomm/qca_uart.c

-- 
2.1.4

^ permalink raw reply	[flat|nested] 37+ messages in thread

end of thread, other threads:[~2017-05-25 17:13 UTC | newest]

Thread overview: 37+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-05-23 13:12 [PATCH v6 net-next 00/17] net: qualcomm: add QCA7000 UART driver Stefan Wahren
2017-05-23 13:12 ` [PATCH v6 net-next 01/17] net: qualcomm: remove unnecessary includes Stefan Wahren
2017-05-24 19:41   ` David Miller
2017-05-24 19:41     ` David Miller
2017-05-24 20:05     ` Stefan Wahren
2017-05-24 20:42       ` David Miller
2017-05-23 13:12 ` [PATCH v6 net-next 02/17] net: qca_framing: use u16 for frame offset Stefan Wahren
2017-05-23 13:12 ` [PATCH v6 net-next 03/17] net: qca_7k: Use BIT macro Stefan Wahren
2017-05-23 13:12 ` [PATCH v6 net-next 04/17] net: qca_spi: Use SET_NETDEV_DEV() Stefan Wahren
2017-05-23 13:12 ` [PATCH v6 net-next 05/17] net: qualcomm: use net_device_ops instead of direct call Stefan Wahren
2017-05-23 13:12 ` [PATCH v6 net-next 06/17] net: qualcomm: Improve readability of length defines Stefan Wahren
2017-05-23 13:12 ` [PATCH v6 net-next 07/17] net: qca_spi: remove QCASPI_MTU Stefan Wahren
2017-05-23 13:12 ` [PATCH v6 net-next 08/17] net: qualcomm: move qcaspi_tx_cmd to qca_spi.c Stefan Wahren
2017-05-23 13:12 ` [PATCH v6 net-next 09/17] net: qca_spi: Clarify MODULE_DESCRIPTION Stefan Wahren
2017-05-23 13:12 ` [PATCH v6 net-next 10/17] net: qualcomm: rename qca_framing.c to qca_7k_common.c Stefan Wahren
2017-05-23 13:12 ` [PATCH v6 net-next 11/17] net: qualcomm: prepare frame decoding for UART driver Stefan Wahren
2017-05-23 13:12 ` [PATCH v6 net-next 12/17] net: qualcomm: make qca_7k_common a separate kernel module Stefan Wahren
2017-05-23 13:12 ` [PATCH v6 net-next 13/17] dt-bindings: qca7000-spi: Rework binding Stefan Wahren
2017-05-23 13:12 ` [PATCH v6 net-next 14/17] dt-bindings: qca7000: rename binding Stefan Wahren
2017-05-23 13:12 ` [PATCH v6 net-next 15/17] dt-bindings: slave-device: add current-speed property Stefan Wahren
2017-05-23 13:12 ` [PATCH v6 net-next 16/17] dt-bindings: qca7000: append UART interface to binding Stefan Wahren
2017-05-23 13:12   ` Stefan Wahren
2017-05-23 13:12 ` [PATCH v6 net-next 17/17] net: qualcomm: add QCA7000 UART driver Stefan Wahren
2017-05-23 13:12   ` Stefan Wahren
2017-05-23 18:16   ` Lino Sanfilippo
2017-05-23 19:38     ` Stefan Wahren
2017-05-23 21:01       ` Lino Sanfilippo
2017-05-24  9:06         ` Stefan Wahren
2017-05-24  9:29           ` [PATCH v7 " Stefan Wahren
2017-05-24  9:29             ` Stefan Wahren
2017-05-25 17:13             ` David Miller
2017-05-24  9:32           ` [PATCH RESEND " Stefan Wahren
2017-05-24 14:21             ` Lino Sanfilippo
2017-05-24 14:21               ` Lino Sanfilippo
2017-05-24 14:34               ` Stefan Wahren
2017-05-24 14:34                 ` Stefan Wahren
2017-05-24 14:19           ` Aw: Re: [PATCH v6 " Lino Sanfilippo

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.