net: hisilicon: add hix5hd2 mac driver

Add support for the hix5hd2 XGMAC 1Gb ethernet device.
The controller requires two queues for tx and two queues for rx.
Controller fetch buffer from free queue and then push to used queue.
Diver should prepare free queue and free buffer from used queue.

Signed-off-by: Zhangfei Gao <zhangfei.gao@linaro.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Zhangfei Gao 2014-06-03 13:49:37 +08:00 committed by David S. Miller
parent f70e9d88a1
commit 57c5bc9ad7
5 changed files with 1100 additions and 0 deletions

View File

@ -67,6 +67,7 @@ source "drivers/net/ethernet/neterion/Kconfig"
source "drivers/net/ethernet/faraday/Kconfig"
source "drivers/net/ethernet/freescale/Kconfig"
source "drivers/net/ethernet/fujitsu/Kconfig"
source "drivers/net/ethernet/hisilicon/Kconfig"
source "drivers/net/ethernet/hp/Kconfig"
source "drivers/net/ethernet/ibm/Kconfig"
source "drivers/net/ethernet/intel/Kconfig"

View File

@ -31,6 +31,7 @@ obj-$(CONFIG_NET_VENDOR_EXAR) += neterion/
obj-$(CONFIG_NET_VENDOR_FARADAY) += faraday/
obj-$(CONFIG_NET_VENDOR_FREESCALE) += freescale/
obj-$(CONFIG_NET_VENDOR_FUJITSU) += fujitsu/
obj-$(CONFIG_NET_VENDOR_HISILICON) += hisilicon/
obj-$(CONFIG_NET_VENDOR_HP) += hp/
obj-$(CONFIG_NET_VENDOR_IBM) += ibm/
obj-$(CONFIG_NET_VENDOR_INTEL) += intel/

View File

@ -0,0 +1,27 @@
#
# HISILICON device configuration
#
config NET_VENDOR_HISILICON
bool "Hisilicon devices"
default y
depends on ARM
---help---
If you have a network (Ethernet) card belonging to this class, say Y
and read the Ethernet-HOWTO, available from
<http://www.tldp.org/docs.html#howto>.
Note that the answer to this question doesn't directly affect the
kernel: saying N will just cause the configurator to skip all
the questions about Hisilicon devices. If you say Y, you will be asked
for your specific card in the following questions.
if NET_VENDOR_HISILICON
config HIX5HD2_GMAC
tristate "Hisilicon HIX5HD2 Family Network Device Support"
select PHYLIB
help
This selects the hix5hd2 mac family network device.
endif # NET_VENDOR_HISILICON

View File

@ -0,0 +1,5 @@
#
# Makefile for the HISILICON network device drivers.
#
obj-$(CONFIG_HIX5HD2_GMAC) += hix5hd2_gmac.o

File diff suppressed because it is too large Load Diff