From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wr1-f44.google.com (mail-wr1-f44.google.com [209.85.221.44]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id DC30A34B183 for ; Fri, 15 May 2026 17:18:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.44 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778865492; cv=none; b=mmgUmtwd2McSpCEe539woB857OIBOxcjyCaDSWaGl0kICM9jB/ENS2paVoXv7JGJSIu8EQIea2xD+RXznY4IX5gbgf9p+xFIzScx+nMbrojkCM5sZV2B1MjVxK6J5Mtjj0s21EwLL4ad+eyPSKsSNP599rvyoglXIhWAEuseCQ0= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778865492; c=relaxed/simple; bh=A7iji+rXKq/foenCFTEp43CEifw4NZBgLqy3/ylbp4o=; h=From:To:Subject:Date:Message-ID:MIME-Version; b=pfj9f4IN6daRwema9+YrbZVfBnnZHFSCUBOWHrmK6pMDmWbHXctNjoACmFd2EmAwmoY67mAbE3hTo+jm8KiXgyvemSbsMI4fqzsKjVcGIBVCFslypLUl+mtEBvPCBh0HjmXJfx6qV7pvMCGZO0dexGIRTNjAJP3sIgiJeT8ciyM= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=idV6M+or; arc=none smtp.client-ip=209.85.221.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="idV6M+or" Received: by mail-wr1-f44.google.com with SMTP id ffacd0b85a97d-44a5174670eso10288f8f.1 for ; Fri, 15 May 2026 10:18:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1778865489; x=1779470289; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from:from:to:cc:subject:date:message-id:reply-to; bh=jeZUOTxiux+ntqD5XfCjsj5BrXI92DULaKFsiqtZdig=; b=idV6M+or9YDyiRvp2joqgPPifjIC5vAOnVzscbe/AT4rGLG03nAzDM81BczX3waJw5 GTYrvzp9IY8BF0HVLVn+jUd0Ur0AYDmT/MjgNHgjC4nWWGhyEKeXwkhED2r2HlVFSl4A YC9v5v4/OQ23RILoihAILLzzAngZuW17WL1rf+CwjOacWfJVId3i46BOAiNRcLj81VI+ fo9kW5xvs28ackkik98BAgPuPDqTfIDRaMArg3jNGBBfe7jOxYBqrj8DzuXETKieZXxp 5tKu4BEijoTpTvN09M3GFMjzAaHsKPOvtQFl81SEQ6WtOGDjZdoI/1MJxnLaRMWM7R/A D1Fg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778865489; x=1779470289; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=jeZUOTxiux+ntqD5XfCjsj5BrXI92DULaKFsiqtZdig=; b=CbyM/mmsnmEhFqpOGenWv/Y68jPEOzmX3TrASinT4kI24a8mAC0IEzAcDMgx0xvclX e9sCbGxvyPMn5J4VEkXJ955J5HQpNkTPIXcVxR69Ea8+2P7sbWzncG8TMOw0UFKXwjQm voVJ3sCUjhafTxQDQhoBVMKrVpN7FEaLITXxwlLwUQV9j4wVq7S6UoCO/PZTUr4toUbI IlzhiscUtfF9dnt64Fp/rRnTkTpzMTMxVDHglpRwMUb9+l7XIDu+RRhcr6OsAhzSilgs pOCjpWQ8SKN/PHDrAxOXybKqny2/K9hIv4fRyJd1HcVKu/YSSyz1RGlhRwhI/aYQa2A1 SsJg== X-Forwarded-Encrypted: i=1; AFNElJ92RLRFW1/vO9f3SYJhZ/yz0c461p4ePxTjVqJeQyAZD7CPlnOrrCGdq1Ix8sxklj1NKe3nct81q+PC8Yk=@vger.kernel.org X-Gm-Message-State: AOJu0YyLFRj/oR+sO4vOEZnvEgL/i3LpwUYZuf843G3eIZuM0tqCfd0z +eJ9aC5Lse07/h5BoVxgjxhObHg+kJIQoQDJyLLCsLRzRRyJ5jPQ7f7O X-Gm-Gg: Acq92OH6T9NOu1qWy8dvcnXiB8ywNQOZBu7cCyhM4/1L/mZRlb3bula/6+pwiC2/1qu N+1P0YJqClCNmugjW9BBw5T9pTjrmCOATecYuAYH7maQwIlTw0ZnbWHAKoWHRUyGG1z2h+7/zDG Ebq0l3Cfxm2ZB3QHqDwqBXrVK676cX3nmEeku2ODol76CCESWYLV4Q4Ff4+CACu8MfNgmm21jF8 woJg5fgP6gUXYx/ed+Gt6bwytlF1KTIrAPDXBTVbUUHoV7R07i58SeixRh59aZXk6psxRJBb1t5 akVk2PgsIFn/WMCfmUVQp26zlxKzcweu1BfmCHONBF8PPZV5SlkfM7GBQNhUw+bbnH5f/Bly4YY hj4Bz0sX2MTHJV3T+8eJfPHiiL+2SFhGJ5MqJKTk/ajBBZRHCry7zSJgpGo4H3fEv1azmLmMAvW DhddEdtl3Vpy/XR4mpzpG2Ep3e8pOCrtn+5x8dYT+atI3SLWjrBprhc8w3LnhYYzJrd5g1 X-Received: by 2002:a05:600c:a293:b0:48f:e6de:1cba with SMTP id 5b1f17b1804b1-48fe6de1dc5mr42499045e9.17.1778865488955; Fri, 15 May 2026 10:18:08 -0700 (PDT) Received: from Ansuel-XPS24 (host-87-3-252-108.retail.telecomitalia.it. [87.3.252.108]) by smtp.googlemail.com with ESMTPSA id 5b1f17b1804b1-48fea52acb6sm19526045e9.0.2026.05.15.10.18.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 15 May 2026 10:18:08 -0700 (PDT) From: Christian Marangi To: Lorenzo Bianconi , Jakub Kicinski , Felix Fietkau , Christian Marangi , Simon Horman , linux-kernel@vger.kernel.org Subject: [net PATCH] net: airoha: Fix NPU RX DMA descriptor bits Date: Fri, 15 May 2026 19:17:27 +0200 Message-ID: <20260515171734.22998-1-ansuelsmth@gmail.com> X-Mailer: git-send-email 2.53.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit In an internal review from Airoha, it was notice that the RX DMA descriptor bits and mask are wrong. These values probably refer to an old NPU firmware never published. The previous value works correctly but it was reported that in some specific condition in mixed scenario with both Ethernet and WiFi offload it's possible that RX DMA descriptor signal wrong value with the problem to the RX ring or packets getting dropped. To handle these specific scenario, apply the new suggested bits mask from Airoha. Correct functionality of both AN7581 NPU and MT7996 variant were verified and confirmed working. Fixes: a7fc8c641cab ("net: airoha: Fix npu rx DMA definitions") Signed-off-by: Christian Marangi --- include/linux/soc/airoha/airoha_offload.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/include/linux/soc/airoha/airoha_offload.h b/include/linux/soc/airoha/airoha_offload.h index d01ef4a6b3d7..7589fccfeef6 100644 --- a/include/linux/soc/airoha/airoha_offload.h +++ b/include/linux/soc/airoha/airoha_offload.h @@ -71,9 +71,9 @@ static inline void airoha_ppe_dev_check_skb(struct airoha_ppe_dev *dev, #define NPU_RX1_DESC_NUM 512 /* CTRL */ -#define NPU_RX_DMA_DESC_LAST_MASK BIT(27) -#define NPU_RX_DMA_DESC_LEN_MASK GENMASK(26, 14) -#define NPU_RX_DMA_DESC_CUR_LEN_MASK GENMASK(13, 1) +#define NPU_RX_DMA_DESC_LAST_MASK BIT(29) +#define NPU_RX_DMA_DESC_LEN_MASK GENMASK(28, 15) +#define NPU_RX_DMA_DESC_CUR_LEN_MASK GENMASK(14, 1) #define NPU_RX_DMA_DESC_DONE_MASK BIT(0) /* INFO */ #define NPU_RX_DMA_PKT_COUNT_MASK GENMASK(31, 29) -- 2.53.0