]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
net: ti: icssg: Fix wrong macro used in RX classifier configuration
authorMD Danish Anwar <danishanwar@ti.com>
Tue, 10 Mar 2026 13:20:35 +0000 (18:50 +0530)
committerPaolo Abeni <pabeni@redhat.com>
Thu, 12 Mar 2026 12:30:03 +0000 (13:30 +0100)
The RX_CLASS_OR_REG macro is being used with RX_CLASS_OR_EN parameter
when writing to the AND enable register. This should use RX_CLASS_AND_EN
instead to properly configure the classifier AND enable register.

Fix this by using the correct RX_CLASS_AND_EN macro parameter for
RX_CLASS_OR_REG when configuring the PTP duplicate and HSR tag
classifiers.

Fixes: f56438a74d88 ("net: ti: icssg: Add HSR/PRP protocol frame filtering")
Signed-off-by: MD Danish Anwar <danishanwar@ti.com>
Link: https://patch.msgid.link/20260310132035.1299787-1-danishanwar@ti.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/ethernet/ti/icssg/icssg_classifier.c

index cde53d9aaa7bf4ab1258bc9c67eba993803d47cd..87a8577093dbb862581ca30b0119a5cd78b498a9 100644 (file)
@@ -517,7 +517,7 @@ void icssg_ft3_hsr_configurations(struct regmap *miig_rt, int slice,
 
        regmap_write(miig_rt, RX_CLASS_N_REG(slice, CLASSIFIER_PTP_DUP, RX_CLASS_AND_EN),
                     RX_CLASS_DISABLE);
-       regmap_write(miig_rt, RX_CLASS_OR_REG(slice, CLASSIFIER_PTP_DUP, RX_CLASS_OR_EN),
+       regmap_write(miig_rt, RX_CLASS_OR_REG(slice, CLASSIFIER_PTP_DUP, RX_CLASS_AND_EN),
                     RX_CLASS_OR_DUP_PTP);
        regmap_write(miig_rt, RX_CLASS_GATES_N_REG(slice, CLASSIFIER_PTP_DUP),
                     RX_CLASS_GATE_PTP);
@@ -525,7 +525,7 @@ void icssg_ft3_hsr_configurations(struct regmap *miig_rt, int slice,
        if (prueth->hsr_prp_version != PRP_V1) {
                regmap_write(miig_rt, RX_CLASS_N_REG(slice, CLASSIFIER_HSR_TAG, RX_CLASS_AND_EN),
                             RX_CLASS_DISABLE);
-               regmap_write(miig_rt, RX_CLASS_OR_REG(slice, CLASSIFIER_HSR_TAG, RX_CLASS_OR_EN),
+               regmap_write(miig_rt, RX_CLASS_OR_REG(slice, CLASSIFIER_HSR_TAG, RX_CLASS_AND_EN),
                             RX_CLASS_OR_HSR_TAG);
                regmap_write(miig_rt, RX_CLASS_GATES_N_REG(slice, CLASSIFIER_HSR_TAG),
                             RX_CLASS_GATE_PTP);