diff options
author | Álvaro Fernández Rojas <noltari@gmail.com> | 2025-06-14 09:59:56 +0200 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2025-06-17 17:52:20 -0700 |
commit | e17813968b08b1b09bf80699223dea48851cbd07 (patch) | |
tree | 35498c8e1a8e0f8bf6863eef8f64955a9ecf5a77 | |
parent | 800728abd9f83bda4de62a30ce62a8b41c242020 (diff) |
net: dsa: b53: prevent BRCM_HDR access on older devices
Older switches don't implement BRCM_HDR register so we should avoid
reading or writing it.
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Link: https://patch.msgid.link/20250614080000.1884236-11-noltari@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
-rw-r--r-- | drivers/net/dsa/b53/b53_common.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/net/dsa/b53/b53_common.c b/drivers/net/dsa/b53/b53_common.c index daf7c1906711..2bcbb003b1fd 100644 --- a/drivers/net/dsa/b53/b53_common.c +++ b/drivers/net/dsa/b53/b53_common.c @@ -730,6 +730,11 @@ void b53_brcm_hdr_setup(struct dsa_switch *ds, int port) hdr_ctl |= GC_FRM_MGMT_PORT_M; b53_write8(dev, B53_MGMT_PAGE, B53_GLOBAL_CONFIG, hdr_ctl); + /* B53_BRCM_HDR not present on devices with legacy tags */ + if (dev->tag_protocol == DSA_TAG_PROTO_BRCM_LEGACY || + dev->tag_protocol == DSA_TAG_PROTO_BRCM_LEGACY_FCS) + return; + /* Enable Broadcom tags for IMP port */ b53_read8(dev, B53_MGMT_PAGE, B53_BRCM_HDR, &hdr_ctl); if (tag_en) |