diff options
Diffstat (limited to 'target/linux/layerscape/patches-5.4/701-net-0361-sdk_dpaa-sdk_fman-ls1034a-errata-update-number-to-A0.patch')
-rw-r--r-- | target/linux/layerscape/patches-5.4/701-net-0361-sdk_dpaa-sdk_fman-ls1034a-errata-update-number-to-A0.patch | 259 |
1 files changed, 0 insertions, 259 deletions
diff --git a/target/linux/layerscape/patches-5.4/701-net-0361-sdk_dpaa-sdk_fman-ls1034a-errata-update-number-to-A0.patch b/target/linux/layerscape/patches-5.4/701-net-0361-sdk_dpaa-sdk_fman-ls1034a-errata-update-number-to-A0.patch deleted file mode 100644 index f9b0c70586..0000000000 --- a/target/linux/layerscape/patches-5.4/701-net-0361-sdk_dpaa-sdk_fman-ls1034a-errata-update-number-to-A0.patch +++ /dev/null @@ -1,259 +0,0 @@ -From 512bb2bd0555a8e78713dfdc109d87723a9da5c1 Mon Sep 17 00:00:00 2001 -From: Camelia Groza <camelia.groza@nxp.com> -Date: Fri, 13 Dec 2019 14:49:16 +0200 -Subject: [PATCH] sdk_dpaa: sdk_fman: ls1034a errata: update number to A050385 - -The A050385 erratum extends the A010022 erratum by defining additional -FMan lock-up conditions and suggests new w/a restrictions. - -Signed-off-by: Camelia Groza <camelia.groza@nxp.com> ---- - drivers/net/ethernet/freescale/sdk_dpaa/dpaa_eth.h | 14 +++---- - .../net/ethernet/freescale/sdk_dpaa/dpaa_eth_sg.c | 44 +++++++++++----------- - .../inc/integrations/LS1043/dpaa_integration_ext.h | 2 +- - .../sdk_fman/src/inc/wrapper/lnxwrp_fsl_fman.h | 8 ++-- - .../freescale/sdk_fman/src/wrapper/lnxwrp_fm.c | 16 ++++---- - 5 files changed, 42 insertions(+), 42 deletions(-) - ---- a/drivers/net/ethernet/freescale/sdk_dpaa/dpaa_eth.h -+++ b/drivers/net/ethernet/freescale/sdk_dpaa/dpaa_eth.h -@@ -99,15 +99,15 @@ struct dpa_buffer_layout_s { - * space to account for further alignments. - */ - #define DPA_MAX_FRM_SIZE 9600 --#ifndef FM_ERRATUM_A010022 -+#ifndef FM_ERRATUM_A050385 - #define DPA_BP_RAW_SIZE \ - ((DPA_MAX_FRM_SIZE + DPA_MAX_FD_OFFSET + \ - sizeof(struct skb_shared_info) + 128) & ~(SMP_CACHE_BYTES - 1)) --#else /* FM_ERRATUM_A010022 */ --#define DPA_BP_RAW_SIZE ((unlikely(fm_has_errata_a010022())) ? 2048 : \ -+#else /* FM_ERRATUM_A050385 */ -+#define DPA_BP_RAW_SIZE ((unlikely(fm_has_errata_a050385())) ? 2048 : \ - ((DPA_MAX_FRM_SIZE + DPA_MAX_FD_OFFSET + \ - sizeof(struct skb_shared_info) + 128) & ~(SMP_CACHE_BYTES - 1))) --#endif /* FM_ERRATUM_A010022 */ -+#endif /* FM_ERRATUM_A050385 */ - #endif /* CONFIG_FSL_DPAA_ETH_JUMBO_FRAME */ - - /* This is what FMan is ever allowed to use. -@@ -660,14 +660,14 @@ static inline void _dpa_bp_free_pf(void - * on egress. - */ - --#ifdef FM_ERRATUM_A010022 -+#ifdef FM_ERRATUM_A050385 - #define CROSS_4K(start, size) \ - (((uintptr_t)(start) + (size)) > \ - (((uintptr_t)(start) + 0x1000) & ~0xFFF)) - /* The headroom needs to accommodate our private data (64 bytes) but - * we reserve 256 bytes instead to guarantee 256 data alignment. - */ --#define DPAA_A010022_HEADROOM 256 --#endif /* FM_ERRATUM_A010022 */ -+#define DPAA_A050385_HEADROOM 256 -+#endif /* FM_ERRATUM_A050385 */ - - #endif /* __DPA_H */ ---- a/drivers/net/ethernet/freescale/sdk_dpaa/dpaa_eth_sg.c -+++ b/drivers/net/ethernet/freescale/sdk_dpaa/dpaa_eth_sg.c -@@ -101,8 +101,8 @@ static int _dpa_bp_add_8_bufs(const stru - * We only need enough space to store a pointer, but allocate - * an entire cacheline for performance reasons. - */ --#ifdef FM_ERRATUM_A010022 -- if (unlikely(fm_has_errata_a010022())) { -+#ifdef FM_ERRATUM_A050385 -+ if (unlikely(fm_has_errata_a050385())) { - struct page *new_page = alloc_page(GFP_ATOMIC); - if (unlikely(!new_page)) - goto netdev_alloc_failed; -@@ -765,15 +765,15 @@ int __hot skb_to_contig_fd(struct dpa_pr - } - EXPORT_SYMBOL(skb_to_contig_fd); - --#ifdef FM_ERRATUM_A010022 --/* Verify the conditions that trigger the A010022 errata: -+#ifdef FM_ERRATUM_A050385 -+/* Verify the conditions that trigger the A050385 errata: - * - 4K memory address boundary crossings when the data/SG fragments aren't - * aligned to 256 bytes - * - data and SG fragments that aren't aligned to 16 bytes - * - SG fragments that aren't mod 16 bytes in size (except for the last - * fragment) - */ --static bool a010022_check_skb(struct sk_buff *skb, struct dpa_priv_s *priv) -+static bool a050385_check_skb(struct sk_buff *skb, struct dpa_priv_s *priv) - { - skb_frag_t *frag; - int i, nr_frags; -@@ -840,7 +840,7 @@ static bool a010022_check_skb(struct sk_ - * page. Build a new skb around the new buffer and release the old one. - * A performance drop should be expected. - */ --static struct sk_buff *a010022_realign_skb(struct sk_buff *skb, -+static struct sk_buff *a050385_realign_skb(struct sk_buff *skb, - struct dpa_priv_s *priv) - { - int trans_offset = skb_transport_offset(skb); -@@ -850,7 +850,7 @@ static struct sk_buff *a010022_realign_s - struct page *npage; - void *npage_addr; - -- headroom = DPAA_A010022_HEADROOM; -+ headroom = DPAA_A050385_HEADROOM; - - /* For the new skb we only need the old one's data (both non-paged and - * paged). We can skip the old tailroom. -@@ -941,8 +941,8 @@ int __hot skb_to_sg_fd(struct dpa_priv_s - /* Get a page frag to store the SGTable, or a full page if the errata - * is in place and we need to avoid crossing a 4k boundary. - */ --#ifdef FM_ERRATUM_A010022 -- if (unlikely(fm_has_errata_a010022())) { -+#ifdef FM_ERRATUM_A050385 -+ if (unlikely(fm_has_errata_a050385())) { - struct page *new_page = alloc_page(GFP_ATOMIC); - - if (unlikely(!new_page)) -@@ -1099,9 +1099,9 @@ int __hot dpa_tx_extended(struct sk_buff - int *countptr, offset = 0; - struct sk_buff *nskb; - -- /* Flags to help optimize the A010022 errata restriction checks. -+ /* Flags to help optimize the A050385 errata restriction checks. - * -- * First flag marks if the skb changed between the first A010022 check -+ * First flag marks if the skb changed between the first A050385 check - * and the moment it's converted to an FD. - * - * The second flag marks if the skb needs to be realigned in order to -@@ -1121,8 +1121,8 @@ int __hot dpa_tx_extended(struct sk_buff - - clear_fd(&fd); - --#ifdef FM_ERRATUM_A010022 -- if (unlikely(fm_has_errata_a010022()) && a010022_check_skb(skb, priv)) -+#ifdef FM_ERRATUM_A050385 -+ if (unlikely(fm_has_errata_a050385()) && a050385_check_skb(skb, priv)) - skb_need_wa = true; - #endif - -@@ -1176,7 +1176,7 @@ int __hot dpa_tx_extended(struct sk_buff - /* We're going to store the skb backpointer at the beginning - * of the data buffer, so we need a privately owned skb - * -- * Under the A010022 errata, we are going to have a privately -+ * Under the A050385 errata, we are going to have a privately - * owned skb after realigning the current one, so no point in - * copying it here in that case. - */ -@@ -1194,12 +1194,12 @@ int __hot dpa_tx_extended(struct sk_buff - * more fragments than we support. In this case, - * we have no choice but to linearize it ourselves. - */ --#ifdef FM_ERRATUM_A010022 -+#ifdef FM_ERRATUM_A050385 - /* No point in linearizing the skb now if we are going - * to realign and linearize it again further down due -- * to the A010022 errata -+ * to the A050385 errata - */ -- if (unlikely(fm_has_errata_a010022())) -+ if (unlikely(fm_has_errata_a050385())) - skb_need_wa = true; - else - #endif -@@ -1209,16 +1209,16 @@ int __hot dpa_tx_extended(struct sk_buff - /* Common out-of-memory error path */ - goto enomem; - --#ifdef FM_ERRATUM_A010022 -+#ifdef FM_ERRATUM_A050385 - /* Verify the skb a second time if it has been updated since - * the previous check - */ -- if (unlikely(fm_has_errata_a010022()) && skb_changed && -- a010022_check_skb(skb, priv)) -+ if (unlikely(fm_has_errata_a050385()) && skb_changed && -+ a050385_check_skb(skb, priv)) - skb_need_wa = true; - -- if (unlikely(fm_has_errata_a010022()) && skb_need_wa) { -- nskb = a010022_realign_skb(skb, priv); -+ if (unlikely(fm_has_errata_a050385()) && skb_need_wa) { -+ nskb = a050385_realign_skb(skb, priv); - if (!nskb) - goto skb_to_fd_failed; - dev_kfree_skb(skb); ---- a/drivers/net/ethernet/freescale/sdk_fman/inc/integrations/LS1043/dpaa_integration_ext.h -+++ b/drivers/net/ethernet/freescale/sdk_fman/inc/integrations/LS1043/dpaa_integration_ext.h -@@ -271,7 +271,7 @@ typedef enum - #define FM_AID_MODE_NO_TNUM_SW005 /* refer to pdm TKT068794 - only support of port_id on aid */ - #define FM_ERROR_VSP_NO_MATCH_SW006 /* refer to pdm TKT174304 - no match between errorQ and VSP */ - --#define FM_ERRATUM_A010022 -+#define FM_ERRATUM_A050385 - - /***************************************************************************** - RMan INTEGRATION-SPECIFIC DEFINITIONS ---- a/drivers/net/ethernet/freescale/sdk_fman/src/inc/wrapper/lnxwrp_fsl_fman.h -+++ b/drivers/net/ethernet/freescale/sdk_fman/src/inc/wrapper/lnxwrp_fsl_fman.h -@@ -490,12 +490,12 @@ int fm_get_max_frm(void); - int fm_get_rx_extra_headroom(void); - - /**************************************************************************//** -- @Function fm_has_errata_a010022 -+ @Function fm_has_errata_a050385 - -- @Description Detect if the SoC is vulnerable to the A010022 errata -+ @Description Detect if the SoC is vulnerable to the A050385 errata - *//***************************************************************************/ --#ifdef FM_ERRATUM_A010022 --bool fm_has_errata_a010022(void); -+#ifdef FM_ERRATUM_A050385 -+bool fm_has_errata_a050385(void); - #endif - - /**************************************************************************//** ---- a/drivers/net/ethernet/freescale/sdk_fman/src/wrapper/lnxwrp_fm.c -+++ b/drivers/net/ethernet/freescale/sdk_fman/src/wrapper/lnxwrp_fm.c -@@ -156,8 +156,8 @@ static int fsl_fm_pfc_quanta[] = { - - static t_LnxWrpFm lnxWrpFm; - --#ifdef FM_ERRATUM_A010022 --static bool fm_has_err_a010022; -+#ifdef FM_ERRATUM_A050385 -+static bool fm_has_err_a050385; - #endif - - int fm_get_max_frm() -@@ -172,12 +172,12 @@ int fm_get_rx_extra_headroom() - } - EXPORT_SYMBOL(fm_get_rx_extra_headroom); - --#ifdef FM_ERRATUM_A010022 --bool fm_has_errata_a010022(void) -+#ifdef FM_ERRATUM_A050385 -+bool fm_has_errata_a050385(void) - { -- return fm_has_err_a010022; -+ return fm_has_err_a050385; - } --EXPORT_SYMBOL(fm_has_errata_a010022); -+EXPORT_SYMBOL(fm_has_errata_a050385); - #endif - - static int __init fm_set_max_frm(char *str) -@@ -762,8 +762,8 @@ static t_LnxWrpFmDev * ReadFmDevTreeNode - p_LnxWrpFmDev->defPcd = e_NO_PCD; - } - --#ifdef FM_ERRATUM_A010022 -- fm_has_err_a010022 = of_property_read_bool(fm_node, "fsl,erratum-a010022"); -+#ifdef FM_ERRATUM_A050385 -+ fm_has_err_a050385 = of_property_read_bool(fm_node, "fsl,erratum-a050385"); - #endif - - of_node_put(fm_node); |