diff --git a/amd-xgbe-a0-Add-support-for-XGBE-on-A0.patch b/amd-xgbe-a0-Add-support-for-XGBE-on-A0.patch index 6b9d07dc7..fa39d8675 100644 --- a/amd-xgbe-a0-Add-support-for-XGBE-on-A0.patch +++ b/amd-xgbe-a0-Add-support-for-XGBE-on-A0.patch @@ -1,13 +1,11 @@ -From b634bc924371a7df6459af04f37c91f65ac59df2 Mon Sep 17 00:00:00 2001 From: Tom Lendacky -Date: Thu, 28 May 2015 16:38:57 -0400 -Subject: [PATCH 1/2] amd-xgbe-a0: Add support for XGBE on A0 +Date: Sat, 21 Feb 2015 12:25:12 -0500 +Subject: [PATCH] amd-xgbe-a0: Add support for XGBE on A0 Add XGBE driver support for A0 hardware. Signed-off-by: Tom Lendacky [fixup timespec -> timespec64] -[use device_dma_is_coherent] Signed-off-by: Mark Salter --- drivers/net/ethernet/amd/Makefile | 1 + @@ -19,11 +17,11 @@ Signed-off-by: Mark Salter drivers/net/ethernet/amd/xgbe-a0/xgbe-dev.c | 2930 +++++++++++++++++++++++ drivers/net/ethernet/amd/xgbe-a0/xgbe-drv.c | 2218 +++++++++++++++++ drivers/net/ethernet/amd/xgbe-a0/xgbe-ethtool.c | 616 +++++ - drivers/net/ethernet/amd/xgbe-a0/xgbe-main.c | 618 +++++ + drivers/net/ethernet/amd/xgbe-a0/xgbe-main.c | 643 +++++ drivers/net/ethernet/amd/xgbe-a0/xgbe-mdio.c | 312 +++ drivers/net/ethernet/amd/xgbe-a0/xgbe-ptp.c | 278 +++ drivers/net/ethernet/amd/xgbe-a0/xgbe.h | 868 +++++++ - 13 files changed, 10269 insertions(+) + 13 files changed, 10294 insertions(+) create mode 100644 drivers/net/ethernet/amd/xgbe-a0/Makefile create mode 100644 drivers/net/ethernet/amd/xgbe-a0/xgbe-common.h create mode 100644 drivers/net/ethernet/amd/xgbe-a0/xgbe-dcb.c @@ -38,7 +36,7 @@ Signed-off-by: Mark Salter create mode 100644 drivers/net/ethernet/amd/xgbe-a0/xgbe.h diff --git a/drivers/net/ethernet/amd/Makefile b/drivers/net/ethernet/amd/Makefile -index a38a2dc..bf0cf2f 100644 +index a38a2dce3eb3..bf0cf2f8d2db 100644 --- a/drivers/net/ethernet/amd/Makefile +++ b/drivers/net/ethernet/amd/Makefile @@ -18,3 +18,4 @@ obj-$(CONFIG_PCNET32) += pcnet32.o @@ -48,7 +46,7 @@ index a38a2dc..bf0cf2f 100644 +obj-$(CONFIG_AMD_XGBE) += xgbe-a0/ diff --git a/drivers/net/ethernet/amd/xgbe-a0/Makefile b/drivers/net/ethernet/amd/xgbe-a0/Makefile new file mode 100644 -index 0000000..561116f +index 000000000000..561116faadae --- /dev/null +++ b/drivers/net/ethernet/amd/xgbe-a0/Makefile @@ -0,0 +1,8 @@ @@ -62,7 +60,7 @@ index 0000000..561116f +amd-xgbe-a0-$(CONFIG_DEBUG_FS) += xgbe-debugfs.o diff --git a/drivers/net/ethernet/amd/xgbe-a0/xgbe-common.h b/drivers/net/ethernet/amd/xgbe-a0/xgbe-common.h new file mode 100644 -index 0000000..75b08c6 +index 000000000000..75b08c63d39f --- /dev/null +++ b/drivers/net/ethernet/amd/xgbe-a0/xgbe-common.h @@ -0,0 +1,1142 @@ @@ -1210,7 +1208,7 @@ index 0000000..75b08c6 +#endif diff --git a/drivers/net/ethernet/amd/xgbe-a0/xgbe-dcb.c b/drivers/net/ethernet/amd/xgbe-a0/xgbe-dcb.c new file mode 100644 -index 0000000..343301c +index 000000000000..343301cbf7b4 --- /dev/null +++ b/drivers/net/ethernet/amd/xgbe-a0/xgbe-dcb.c @@ -0,0 +1,269 @@ @@ -1485,7 +1483,7 @@ index 0000000..343301c +} diff --git a/drivers/net/ethernet/amd/xgbe-a0/xgbe-debugfs.c b/drivers/net/ethernet/amd/xgbe-a0/xgbe-debugfs.c new file mode 100644 -index 0000000..ecfa6f9 +index 000000000000..ecfa6f91da22 --- /dev/null +++ b/drivers/net/ethernet/amd/xgbe-a0/xgbe-debugfs.c @@ -0,0 +1,373 @@ @@ -1864,7 +1862,7 @@ index 0000000..ecfa6f9 +} diff --git a/drivers/net/ethernet/amd/xgbe-a0/xgbe-desc.c b/drivers/net/ethernet/amd/xgbe-a0/xgbe-desc.c new file mode 100644 -index 0000000..5dd5777 +index 000000000000..5dd57779c82c --- /dev/null +++ b/drivers/net/ethernet/amd/xgbe-a0/xgbe-desc.c @@ -0,0 +1,636 @@ @@ -2506,7 +2504,7 @@ index 0000000..5dd5777 +} diff --git a/drivers/net/ethernet/amd/xgbe-a0/xgbe-dev.c b/drivers/net/ethernet/amd/xgbe-a0/xgbe-dev.c new file mode 100644 -index 0000000..2d88739 +index 000000000000..2d88739de41c --- /dev/null +++ b/drivers/net/ethernet/amd/xgbe-a0/xgbe-dev.c @@ -0,0 +1,2930 @@ @@ -5442,7 +5440,7 @@ index 0000000..2d88739 +} diff --git a/drivers/net/ethernet/amd/xgbe-a0/xgbe-drv.c b/drivers/net/ethernet/amd/xgbe-a0/xgbe-drv.c new file mode 100644 -index 0000000..ca4af9e +index 000000000000..ca4af9e508b8 --- /dev/null +++ b/drivers/net/ethernet/amd/xgbe-a0/xgbe-drv.c @@ -0,0 +1,2218 @@ @@ -7666,7 +7664,7 @@ index 0000000..ca4af9e +} diff --git a/drivers/net/ethernet/amd/xgbe-a0/xgbe-ethtool.c b/drivers/net/ethernet/amd/xgbe-a0/xgbe-ethtool.c new file mode 100644 -index 0000000..165ff1c +index 000000000000..165ff1ceedcc --- /dev/null +++ b/drivers/net/ethernet/amd/xgbe-a0/xgbe-ethtool.c @@ -0,0 +1,616 @@ @@ -8288,10 +8286,10 @@ index 0000000..165ff1c +} diff --git a/drivers/net/ethernet/amd/xgbe-a0/xgbe-main.c b/drivers/net/ethernet/amd/xgbe-a0/xgbe-main.c new file mode 100644 -index 0000000..deb8551 +index 000000000000..a85fb4965835 --- /dev/null +++ b/drivers/net/ethernet/amd/xgbe-a0/xgbe-main.c -@@ -0,0 +1,618 @@ +@@ -0,0 +1,643 @@ +/* + * AMD 10Gb Ethernet driver + * @@ -8478,8 +8476,13 @@ index 0000000..deb8551 +#ifdef CONFIG_ACPI +static int xgbe_acpi_support(struct xgbe_prv_data *pdata) +{ ++ struct acpi_device *adev = pdata->adev; + struct device *dev = pdata->dev; + u32 property; ++ acpi_handle handle; ++ acpi_status status; ++ unsigned long long data; ++ int cca; + int ret; + + /* Obtain the system clock setting */ @@ -8500,6 +8503,24 @@ index 0000000..deb8551 + } + pdata->ptpclk_rate = property; + ++ /* Retrieve the device cache coherency value */ ++ handle = adev->handle; ++ do { ++ status = acpi_evaluate_integer(handle, "_CCA", NULL, &data); ++ if (!ACPI_FAILURE(status)) { ++ cca = data; ++ break; ++ } ++ ++ status = acpi_get_parent(handle, &handle); ++ } while (!ACPI_FAILURE(status)); ++ ++ if (ACPI_FAILURE(status)) { ++ dev_err(dev, "error obtaining acpi coherency value\n"); ++ return -EINVAL; ++ } ++ pdata->coherent = !!cca; ++ + return 0; +} +#else /* CONFIG_ACPI */ @@ -8530,6 +8551,9 @@ index 0000000..deb8551 + } + pdata->ptpclk_rate = clk_get_rate(pdata->ptpclk); + ++ /* Retrieve the device cache coherency value */ ++ pdata->coherent = of_dma_is_coherent(dev->of_node); ++ + return 0; +} +#else /* CONFIG_OF */ @@ -8648,7 +8672,6 @@ index 0000000..deb8551 + goto err_io; + + /* Set the DMA coherency values */ -+ pdata->coherent = device_dma_is_coherent(pdata->dev); + if (pdata->coherent) { + pdata->axdomain = XGBE_DMA_OS_AXDOMAIN; + pdata->arcache = XGBE_DMA_OS_ARCACHE; @@ -8912,7 +8935,7 @@ index 0000000..deb8551 +module_platform_driver(xgbe_a0_driver); diff --git a/drivers/net/ethernet/amd/xgbe-a0/xgbe-mdio.c b/drivers/net/ethernet/amd/xgbe-a0/xgbe-mdio.c new file mode 100644 -index 0000000..b84d048 +index 000000000000..b84d0481bed8 --- /dev/null +++ b/drivers/net/ethernet/amd/xgbe-a0/xgbe-mdio.c @@ -0,0 +1,312 @@ @@ -9230,7 +9253,7 @@ index 0000000..b84d048 +} diff --git a/drivers/net/ethernet/amd/xgbe-a0/xgbe-ptp.c b/drivers/net/ethernet/amd/xgbe-a0/xgbe-ptp.c new file mode 100644 -index 0000000..1016aeb +index 000000000000..1016aeb96162 --- /dev/null +++ b/drivers/net/ethernet/amd/xgbe-a0/xgbe-ptp.c @@ -0,0 +1,278 @@ @@ -9514,7 +9537,7 @@ index 0000000..1016aeb +} diff --git a/drivers/net/ethernet/amd/xgbe-a0/xgbe.h b/drivers/net/ethernet/amd/xgbe-a0/xgbe.h new file mode 100644 -index 0000000..04c00d2 +index 000000000000..04c00d236c49 --- /dev/null +++ b/drivers/net/ethernet/amd/xgbe-a0/xgbe.h @@ -0,0 +1,868 @@ @@ -10386,6 +10409,3 @@ index 0000000..04c00d2 +#endif + +#endif --- -2.4.5 - diff --git a/kernel.spec b/kernel.spec index 66e616380..b37b2d7d5 100644 --- a/kernel.spec +++ b/kernel.spec @@ -2246,6 +2246,9 @@ fi # # %changelog +* Tue Aug 4 2015 Peter Robinson +- Back port AMD Seattle a0 4.1 NIC driver update + * Mon Aug 03 2015 Josh Boyer - 4.1.4-200 - Linux v4.1.4 - CVE-2015-5697 info leak in md driver (rhbz 1249011 1249013)