From nobody Thu Oct 9 03:14:15 2025 Received: from mail-pl1-f182.google.com (mail-pl1-f182.google.com [209.85.214.182]) (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 6458D28DB4C; Fri, 20 Jun 2025 13:42:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.182 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750426924; cv=none; b=Y3pPtFzQlqXGomPd7/lhJsUee1T5qH730c3azY8v2ktznep+CtN2gm7SrHI0JqTtLhM7dATf8BevwL3X3AL+9gsvvvjmY+UeIC2U+1WWL4dmiLxZyNmZ4uIpD8EbWOeKxxb/VhNculIjZtlydWHe2UCUEpiEzfln/nMXyMbNBJs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750426924; c=relaxed/simple; bh=cKeD8MJ11uQjEVwv2q6OaS91Wmxgb2CLaPxh4I+NOBU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=T2AfXRcLaHFfKKSZH1uEXYcGrxGsIwxOqUEEdsKsJd+DvFmTDk7CzT1fGE+6feoUUumUeTj5PTrbqkIfvLh6vbwcDpjicTcZHVGopUeiTTzaAAreqYbSTLLNuSJ7BOd/MFZjKbHstsSIaEv4+i02QhHx/kSSB7vioIs45GEw/kc= 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=nNmsdmcd; arc=none smtp.client-ip=209.85.214.182 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="nNmsdmcd" Received: by mail-pl1-f182.google.com with SMTP id d9443c01a7336-2353a2bc210so16368675ad.2; Fri, 20 Jun 2025 06:42:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1750426920; x=1751031720; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=LE9bQHddXM1L6vafWPqB8LgPsA3C5qgIW5OXgUaknnM=; b=nNmsdmcdCf4nP3Rf1XejKQq9DzuarSE+1zDiB5CMN6jhSUF0ugBmCXqPekAHGGxaCn YxKFrmPNgUAv15O+jZbWJ4WI26dIhtwCKbhaXVyqZOYLLV0oK3AlRt1dK8K5cZ98tzS1 1PzjQx5Xrm7Su2T9qkzn0NDqOOc1a1ocbylmrIWWF36Zzi3XpEFsQrv9B0quLz/aphP/ 6DcS9f007wNzUhgk/uaPecGlQMS3ebxHwvyUeMVlrMBAijnPWeF27nCbVeRapm7Z+YcV 0BeAYqzm+VDeRQvznyvDKlAW7dgATqVT6I6mVIMwc/FJiJeI9miYLJgGz6bcpw931JuV Rn1A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750426920; x=1751031720; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=LE9bQHddXM1L6vafWPqB8LgPsA3C5qgIW5OXgUaknnM=; b=ZYlDTfmSoACH/W4y2M44noZBQuq1RidG0Sd04286f7gQR1dJklyaWZq2SmpKjS9EMe bVVDhlEzp5UyeCU6sFvm9SngXv+TM+TVtdTX4GmObljVmNFX+QhwQXIZTv7Kbmb1OfBm ye7uevBclQl1pGfQAdEzTlt+mAEjX05Xj3L9iFQ4mLCszb4OTMbCROKPhrCu5rwMHjcJ gS9XTFZK1X93TEF2Xbjldv6OOrRKOoFNGot+hqYWTif/qbkWcfHeJs3+zPRcTEnb3+Ag XALiXOONTKpmoZqiSunRf0yiIT07Itt4o9vHWKUhft2kXH6rp9iRLb/NYn9wsU+A12tW woWg== X-Forwarded-Encrypted: i=1; AJvYcCUN0ZSgbqSJaJKy2Flgwe0xh+m5xI34FoYL121UEnS4RQXKItCW2XS/lZc67qtEptFisd8mo+xw@vger.kernel.org, AJvYcCUqYQAbWnbyBso5it4PPb9qVcekIZLiVoLGyH6LpoFos7V4eauqBZjptNdRHZEAZAohKN9faNNYwXNX@vger.kernel.org, AJvYcCVG1b4zGuoY8Hgwn9CuYn0UbLP8W0q8Ob7B/46zdhW7XkeJm3FzQGyWSLfcuAEo/CBDqpmzHTD80Rto6rNO@vger.kernel.org X-Gm-Message-State: AOJu0Yx02QJu7FoONIwPt9WeCOy2pNWC/VCCBbnoyBCuEJ8UJPv/sIeF Edy5iA4Ypg5KisiMptg86aENMBOW+V92hoyRWL75j3lCwRZ4bbJnfZwH X-Gm-Gg: ASbGncsbc0T/zCMxD/Jrdbs4gMB24kuWVL23r9LQMf2JSo3zJrZUsTVFJOPTqBkpdOb pwJ+Jlmjga3GMzFJAnr1/gBU2VccRjirvL30hn8Y4mp6cZ6czfQiukGS+qVeE15KW5FYapH2KDj /hJNX3iBxOGICSX/PWCbQzijeIS4leN28CzKn3ry4QcP8VsFf/YyplVWDprK25+wc98IHfb64uB dSons7lTGMdqfoHA6Ah4rIEOixZgqx3cGIgoXKjD1atAHM13F3je+ZPkKIzvV6HwcARy3cv/Jk9 /ifGRRuh9XJq1yh6vZn2ZqAU3XwAoi2jSkI0sLPt4YfgD8kfAhTlyF/wn/QPFacL+CpLWzfYO6u 3fDmyRsrR57aJLnM= X-Google-Smtp-Source: AGHT+IE1nsULJpWgm02bIhhOQ0wFOwAxlY7BAaPrFj0l5NnELEdC2caeS/Mhi44XQtbjxwP25bzu2Q== X-Received: by 2002:a17:902:ec8c:b0:234:a139:1203 with SMTP id d9443c01a7336-237d9960355mr48220785ad.32.1750426919613; Fri, 20 Jun 2025 06:41:59 -0700 (PDT) Received: from localhost.localdomain ([207.34.150.221]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-237d861047fsm18885505ad.134.2025.06.20.06.41.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 20 Jun 2025 06:41:59 -0700 (PDT) From: Kyle Hendry To: Florian Fainelli , Andrew Lunn , Vladimir Oltean , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Russell King Cc: noltari@gmail.com, jonas.gorski@gmail.com, Kyle Hendry , Florian Fainelli , netdev@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [RFC PATCH net-next 1/6] net: dsa: b53: Add phy_enable(), phy_disable() methods Date: Fri, 20 Jun 2025 06:41:16 -0700 Message-ID: <20250620134132.5195-2-kylehendrydev@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250620134132.5195-1-kylehendrydev@gmail.com> References: <20250620134132.5195-1-kylehendrydev@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Add phy enable/disable to b53 ops to be called when enabling/disabling ports. Signed-off-by: Kyle Hendry --- drivers/net/dsa/b53/b53_common.c | 6 ++++++ drivers/net/dsa/b53/b53_priv.h | 2 ++ 2 files changed, 8 insertions(+) diff --git a/drivers/net/dsa/b53/b53_common.c b/drivers/net/dsa/b53/b53_com= mon.c index 46978757c972..77acc7b8abfb 100644 --- a/drivers/net/dsa/b53/b53_common.c +++ b/drivers/net/dsa/b53/b53_common.c @@ -689,6 +689,9 @@ int b53_enable_port(struct dsa_switch *ds, int port, st= ruct phy_device *phy) =20 cpu_port =3D dsa_to_port(ds, port)->cpu_dp->index; =20 + if (dev->ops->phy_enable) + dev->ops->phy_enable(dev, port); + if (dev->ops->irq_enable) ret =3D dev->ops->irq_enable(dev, port); if (ret) @@ -727,6 +730,9 @@ void b53_disable_port(struct dsa_switch *ds, int port) reg |=3D PORT_CTRL_RX_DISABLE | PORT_CTRL_TX_DISABLE; b53_write8(dev, B53_CTRL_PAGE, B53_PORT_CTRL(port), reg); =20 + if (dev->ops->phy_disable) + dev->ops->phy_disable(dev, port); + if (dev->ops->irq_disable) dev->ops->irq_disable(dev, port); } diff --git a/drivers/net/dsa/b53/b53_priv.h b/drivers/net/dsa/b53/b53_priv.h index b1b9e8882ba4..f1124f5e50da 100644 --- a/drivers/net/dsa/b53/b53_priv.h +++ b/drivers/net/dsa/b53/b53_priv.h @@ -45,6 +45,8 @@ struct b53_io_ops { int (*phy_write16)(struct b53_device *dev, int addr, int reg, u16 value); int (*irq_enable)(struct b53_device *dev, int port); void (*irq_disable)(struct b53_device *dev, int port); + void (*phy_enable)(struct b53_device *dev, int port); + void (*phy_disable)(struct b53_device *dev, int port); void (*phylink_get_caps)(struct b53_device *dev, int port, struct phylink_config *config); struct phylink_pcs *(*phylink_mac_select_pcs)(struct b53_device *dev, --=20 2.43.0 From nobody Thu Oct 9 03:14:15 2025 Received: from mail-pl1-f182.google.com (mail-pl1-f182.google.com [209.85.214.182]) (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 A174D28A41B; Fri, 20 Jun 2025 13:42:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.182 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750426925; cv=none; b=Nx3B2CbUTw5h0JW1f55pEBU6LoLUeOn6yve0kXjMRupVGuUtHazEAjUn7tx/1XUfcq8Zm7yBYTPbCSaEF4UiaWNsR7Ifc6rprxkvop9h4nEuurKkQkeRZBsz9TU/bw68sig7kU9DH4+qjwZ7xjld9AeLFnK6XK3lYtUo70u/HQ4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750426925; c=relaxed/simple; bh=2Z+6ava4xwu7u6Yc1S3o+CtXLhSW5qVEEE9nA1nMS5I=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=GMlm3u7JoUej1Cj+T0w4UKY6b/Qa7zx7i2bVTfYF+Wuw8uBB1DwgGjfSji7QBaDEI9024YDbZ+EfViomLdZbmNCS2LOkKePrwpJC0J1VFbbphLfG2xj4C6hZce/GXPfq1JbmGYTcMcAZHetG6IHdZVyr9KWJHKyfymZwuVH0icY= 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=GY0ClwGu; arc=none smtp.client-ip=209.85.214.182 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="GY0ClwGu" Received: by mail-pl1-f182.google.com with SMTP id d9443c01a7336-2366e5e4dbaso15177025ad.1; Fri, 20 Jun 2025 06:42:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1750426923; x=1751031723; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=X25TgPjcZ3fkjftiPDPm5horCo+r7wLhcQXafmRaqwU=; b=GY0ClwGuKIswkSh/UGkrxGwDhOSvo22mhLoUXXDN3yXZyGZOO3pFo4Mh2dAkzegzCH hIJ8dmzurxmUTPeI+avyq7wOypeFfnIda1Ts+RWgABHM/fO3Y+EsHe8vUdkmnRVsQMyL pvT0cnq4MFQmMHtEDbpHvd9VozxAeTKqFRLLtm1Ky9ai62f4dPip1x0waxkeop0zlwT2 C04QxzASznaFoIJKJzr3VPLZz7PdSLEJaRSJIiynUIkHKqZWQq1V3XulHiq44kIV5Xmi OkrVOMtOwf+Opj5ObsanX+8IzIpV4UDle30u/65mx2v79Viy4xH3DhXvb66Rnap6yoTE zDdg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750426923; x=1751031723; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=X25TgPjcZ3fkjftiPDPm5horCo+r7wLhcQXafmRaqwU=; b=myVTWtcXn/wrR52xC2Zy3c8/1M6WoVypq70f/syPmvCR0TReG+s8kEfVJRvK8PZcrk ryBaVIwsyPLofX7GYd93ZQfXN8CNSkLryu9EEg1e+msaq/0zDE40ErWGbr9EaBNI8gUk ttg8J2gWMoH7Y130gxRo5gh4r9hGn46siRaLloEJ5e9UQLJ8NJayBfuAl7xwk8/ifOn+ 0HmGOGHKj6NUqr51uxAXGKCFQC5hBuPVjTkOqPz2zWly8uIHJg0XDzXc0yghbWpO7j+O 7Ga4luYVtnjjCNF3q66vYVVnj98WG0eaVwALKXXc2+d4EbSpeA2SC3g2dy60Z2aafWAf 7+bw== X-Forwarded-Encrypted: i=1; AJvYcCV0Z+zbvv2kJT/QCu/Mw0lU0bYZ1HXnQUaavdBGogfjUNTvy+ztYA2MYkrgnIL/sSVVL/J4YC6N@vger.kernel.org, AJvYcCWpPuxP6qAjhSM9xcPvX8j6lgk8pPpS1GCdehd4Vza+8fI7H8jDIkSnc8vJYe3XpJQ8vLtZBgNM2R5P@vger.kernel.org, AJvYcCXQpEeVUGDLcC39HWbfA0EixRnj1fYzL4d5tLE4u2aT0zq936I3tliOB80TEajWnzHg5blz5nylkijdAdNL@vger.kernel.org X-Gm-Message-State: AOJu0YzkAU+I/cYD/44MrtfhFOwVna8V08X66b/wCNSQLtQBOFlTe7V7 usOVbaSWipd3iWSVzKzh1DAIiydO3oleusahXeeSqRWVczlK+QLStUxff58Cig== X-Gm-Gg: ASbGncv2HMWGzWrn4LuiEGZrnssHPDIhJ8HjS4gwCW3SDNTvjQT4ERSzIKnCQFjMx2m esFIipFZDAjnNFSbKOzEAcYkGuEVlm336BejV3U8tE/73+YgzWxQTQm8OdOJWqo2vc3sI/mFbCq AoehONjBttnc9P5Il3BMerCtpLdDaRGedYwdQhf8ou2YpKUP/Cnt/542geT3u2h8xW7edmWJVUZ B/L8AEhGI1C5oJ8CWR2yGunvCZLy+7grLFfgG395JjN2je+UgU2AoPPcgS/cmJQww3nl882yaSS +7B8EBrtzHacCyy1J+Vmzl47FiOlxDcz/SmUZmEvzmzAkkFnWjiDf6mqzjTKu8wP0wM3txjje0b SZN+d X-Google-Smtp-Source: AGHT+IGVQoPnTB3eOnpmUR2wC3PM3oLPk2qxLsbvkYkciaQQOhUeGguncgOfH5RL+kzct7DVDiY9Og== X-Received: by 2002:a17:903:1665:b0:231:d0da:5e1f with SMTP id d9443c01a7336-237db0d8ea3mr39963385ad.21.1750426922647; Fri, 20 Jun 2025 06:42:02 -0700 (PDT) Received: from localhost.localdomain ([207.34.150.221]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-237d861047fsm18885505ad.134.2025.06.20.06.42.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 20 Jun 2025 06:42:02 -0700 (PDT) From: Kyle Hendry To: Florian Fainelli , Andrew Lunn , Vladimir Oltean , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Russell King Cc: noltari@gmail.com, jonas.gorski@gmail.com, Kyle Hendry , Florian Fainelli , netdev@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [RFC PATCH net-next 2/6] net: dsa: b53: mmap: Add reference to bcm63xx gpio controller Date: Fri, 20 Jun 2025 06:41:17 -0700 Message-ID: <20250620134132.5195-3-kylehendrydev@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250620134132.5195-1-kylehendrydev@gmail.com> References: <20250620134132.5195-1-kylehendrydev@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" On bcm63xx SoCs there are registers that control the PHYs in the GPIO controller. Allow the b53 driver to access them by passing in the syscon through the device tree. Signed-off-by: Kyle Hendry --- drivers/net/dsa/b53/b53_mmap.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/net/dsa/b53/b53_mmap.c b/drivers/net/dsa/b53/b53_mmap.c index c687360a5b7f..a0c06d703861 100644 --- a/drivers/net/dsa/b53/b53_mmap.c +++ b/drivers/net/dsa/b53/b53_mmap.c @@ -21,6 +21,7 @@ #include #include #include +#include #include #include =20 @@ -28,6 +29,7 @@ =20 struct b53_mmap_priv { void __iomem *regs; + struct regmap *gpio_ctrl; }; =20 static int b53_mmap_read8(struct b53_device *dev, u8 page, u8 reg, u8 *val) @@ -313,6 +315,8 @@ static int b53_mmap_probe(struct platform_device *pdev) =20 priv->regs =3D pdata->regs; =20 + priv->gpio_ctrl =3D syscon_regmap_lookup_by_phandle(np, "brcm,gpio-ctrl"); + dev =3D b53_switch_alloc(&pdev->dev, &b53_mmap_ops, priv); if (!dev) return -ENOMEM; --=20 2.43.0 From nobody Thu Oct 9 03:14:15 2025 Received: from mail-pl1-f169.google.com (mail-pl1-f169.google.com [209.85.214.169]) (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 C78CA292900; Fri, 20 Jun 2025 13:42:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.169 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750426928; cv=none; b=HW/IKZOBg3YEpHONJsDmZ5ARTOh8yntGNMC/rQYkXwmk7Q2LNC/U6z0ISyngtp0tMuH4y1T5glwx9fuAE+l4jIlrjkXyMubc3MlZ7QOpUopW6kIwmAT10ZfNFLxYi0BvpSFPVLSPzXEY9maHRFU0tQ6AVcixrJPT72+iBi8pyko= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750426928; c=relaxed/simple; bh=eIiuVBlfo02lyIT3V1fu69Cw3GW5a++j976aLbRwJRU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=XC8anF8jW7PDRSTl2KWS55WW0nINAGMkbbcfjjzaAIjN71RCo9RIayxd3zufYQ2Mt4pPIhZZjm5RDqFs2llpIgHOAdWJ72T2G0UIfirMsnER7/iZwlXxQKtQBfpI87qhvAhh4SuS/8Bfa7Ta6Xdj402tk50ci9GbZfhMEUGOgxQ= 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=joBAyiRa; arc=none smtp.client-ip=209.85.214.169 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="joBAyiRa" Received: by mail-pl1-f169.google.com with SMTP id d9443c01a7336-23508d30142so25649055ad.0; Fri, 20 Jun 2025 06:42:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1750426926; x=1751031726; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ZtCHmfEP5YnQ6wrmUx90FMQC08fmdUCpc7zZpVMED34=; b=joBAyiRagtbgCGGIVmHe63oAO+/cSsCv/CA30fptla3xxS88UV+fXgqAtBNms/wM30 JF3f7cjSF+eUhmedAIv4bZsRR0cosUAXNyng4pqG+6Ld7IcfDxLIHjJYCjXWML1yGaPP ukK8e6S76K9jtznGaWq59fOm7fVV5jpj8j1k7VcV65WCXJPM/4eLkV8v5+/jg2T05Y/6 qsakZ7zKhDsUV12+jRWGEKcjoNg+CEiK1moSYszslwTlIOMfDvVDVgwQUhrM4o3aeOAI YKbQ3iBMiotv1Wivi+3mkZFLTPwkFXTiiaUKnHu3Fd7317CzzgiWi9ddfYPcz1cvV4CF cUZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750426926; x=1751031726; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ZtCHmfEP5YnQ6wrmUx90FMQC08fmdUCpc7zZpVMED34=; b=fO15BMnEOeb3y/S1qHnosVhu2grQeGB2jfsnd5qxhLCgyjL7BLgYvmLX8ylcwalsBV ZkU23byp7DI3Ic2i2emcXWmTSRde6OrHyFdwDyctHufdp7HEaPu+yQBDxqeoQizS25Ld ORaXvx390zjM2b73UD8Fqa8aJVIXS4g0OOQMwP+qgoB8WvlnwaMwMF+27FN6o/7D25Cg CgMkg2XtDrvAaIqZPGly5jj/CCiAeC+WXfdqvrsNzrm96DBP7KzUSSzyYwmTGtPt0/PU LVR0DpvWebmZ/XNMWFwf9cHUxBcJXAu6UMmxKMjSoky0dbtajgcF5M8hc2MZUaWFEU5B BwhQ== X-Forwarded-Encrypted: i=1; AJvYcCVFU7RXL35JJqX0UmddICV99OM9bZinwjN3fkw5T5QpUopBgews38GTTwfxFgzEWMS79pb4qnDtmK2W@vger.kernel.org, AJvYcCVq++DmRfHI+Rk9FzSW06e7+Or6ooqkwwRizekL34lAvqJbmU7WYSeSBY83AVAMQcgZKqPy/sAz7Xty5245@vger.kernel.org, AJvYcCXX4hUowoSaGvFuekIZFce/kQDrAhZWvGtNU53b9dI5DGZp9115TCOPo2hYbR6L2EfLkIF9F6sY@vger.kernel.org X-Gm-Message-State: AOJu0Yz+EwkQ5AQYro7Ssz1aDu6qH0vxu3Y9VRrzwvwMQcxRvmH2innt 3pHF+VKKGhki/t1RC//I5SZG/m3n/KLRWONBysmouWaKbFN1lM97mKDi X-Gm-Gg: ASbGncs1BO+ofy24fjTDSlVERB7qMTxnPqtyx7Rp/c5wxSpd+LfIGcX6GWgl8ChysSx e6pBAczFQ0o8l2Zs2+W3eU0uemEktZvBdaQXFzW0O7fBzV4MWKGfm06iW5IvBYdLw9evf4VsqeL z+JGyGYj8Vm225+cjv24nTcYS1UurLkie9IF1g/kA4PlUA0HxLgBh1ssChBgaYbV/aCY+kY0D/Y Xp20vQzazl6s0WlDTHrKLtNI19gtGQapwALE53glhbQbKkltk68uEY8aboiQaiukz6S0SnlqCT8 w68DKPUnEe2MhCvsc54qkF2ZhUGgDkNSx8ChnAChV7tjKlkZpcQbvWDXN5ef3K4C1sgLQ3pesih lY9Py X-Google-Smtp-Source: AGHT+IG3DXSD4t64F9fyueP0r4yQqhl3zYfjVhDf4TZRAk46wMKvnfDgiFmqk/fbXTrznYBnGe20CA== X-Received: by 2002:a17:902:dac6:b0:235:ecf2:397 with SMTP id d9443c01a7336-237d9a7a3e8mr51879305ad.33.1750426925680; Fri, 20 Jun 2025 06:42:05 -0700 (PDT) Received: from localhost.localdomain ([207.34.150.221]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-237d861047fsm18885505ad.134.2025.06.20.06.42.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 20 Jun 2025 06:42:05 -0700 (PDT) From: Kyle Hendry To: Florian Fainelli , Andrew Lunn , Vladimir Oltean , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Russell King Cc: noltari@gmail.com, jonas.gorski@gmail.com, Kyle Hendry , Florian Fainelli , netdev@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [RFC PATCH net-next 3/6] dt-bindings: net: dsa: b53: Document brcm,gpio-ctrl property Date: Fri, 20 Jun 2025 06:41:18 -0700 Message-ID: <20250620134132.5195-4-kylehendrydev@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250620134132.5195-1-kylehendrydev@gmail.com> References: <20250620134132.5195-1-kylehendrydev@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Add description for bcm63xx gpio-ctrl phandle Signed-off-by: Kyle Hendry --- Documentation/devicetree/bindings/net/dsa/brcm,b53.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Documentation/devicetree/bindings/net/dsa/brcm,b53.yaml b/Docu= mentation/devicetree/bindings/net/dsa/brcm,b53.yaml index d6c957a33b48..c40ebd1ddffb 100644 --- a/Documentation/devicetree/bindings/net/dsa/brcm,b53.yaml +++ b/Documentation/devicetree/bindings/net/dsa/brcm,b53.yaml @@ -66,6 +66,11 @@ properties: - brcm,bcm63268-switch - const: brcm,bcm63xx-switch =20 + brcm,gpio-ctrl: + description: + A phandle to the syscon node of the bcm63xx gpio controller + $ref: /schemas/types.yaml#/definitions/phandle + required: - compatible - reg --=20 2.43.0 From nobody Thu Oct 9 03:14:15 2025 Received: from mail-pl1-f182.google.com (mail-pl1-f182.google.com [209.85.214.182]) (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 73125295523; Fri, 20 Jun 2025 13:42:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.182 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750426930; cv=none; b=QkdOSkOQrcF3fxhYE386FfWDamP2gvdeojdvBvuKQiH1hp49EmE2+uYhVGP5csySMP5+onT3NgmkDo2iBZ5N48cS6ETcPju+jusQXB2ymSVLvBLNPHlu7Gaj3R8YTRXxmxoV+dqT72MKuE+4lvPTjRkckKQRZLskKCP5jSYhwUc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750426930; c=relaxed/simple; bh=O7NSU7w6z0Hcjgc0tS9pN9tgseLHRIsdORtIpN1QxPo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=IF8ML6fRRg9eTv3sysFcn9W+qtN16Q0Dh9GAW6P3yF1HNU2l1ipDcOwM6pYVf+9IUyeH9XW9GPlHZcx8X/0uL1rMIvyFhWMdLqE/WefFRVL+gwhtWfZ8qYF+HlaTkoqqrfdgmLNy7rjDE65TOtip5b6OznUrcGRhk5xSAH0AWrE= 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=mFhKygTf; arc=none smtp.client-ip=209.85.214.182 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="mFhKygTf" Received: by mail-pl1-f182.google.com with SMTP id d9443c01a7336-234d3261631so12967485ad.1; Fri, 20 Jun 2025 06:42:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1750426929; x=1751031729; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=v4PrwJRNlMfwkB4OAPUaXOmp2IqH98k7aBvjhcWB4Fo=; b=mFhKygTf905PD4h9PeL0W1JYPgBRlObqY+aGpnZkT7fItOzmXroUfEVeFxeFk9cKe/ xSi9HaGc+yBfh0rvrxbO5uw6rPYOF3my64j8fTCTAyjZnK9Xw9eIHw+8y0/7+vwj1dVS ZvBJGUtupfGsE0RGIE4nJdlwHZ2MSwbOVfjVGvYNZSbO088lr+aWtiDnLaAidiIINbnV HrS16TVt1YtTn5YSfOYGpc2Z+s6IHIRWFaWPdAeDaiVKzzJpFFzM5pd1rpxlIfW8MzyY pILr5BwFjf2e/vgwo52Wz++kO70fAL3gum2JGvPRrKSo3dbBpls2Fn8rXrjzH8zT7sdj zhJA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750426929; x=1751031729; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=v4PrwJRNlMfwkB4OAPUaXOmp2IqH98k7aBvjhcWB4Fo=; b=VRF6WZgIFrAT/f6IeLrh9Ot10ZFzx9hWoPuG0YYICkk7Gz/J3/QVBrHgJf5EIUrBNH vP1UAF/vKVUKJuvvZJqq885DdS35H6cXxsEJ5wG6X8fAHHI4TzERo/QYmF+VszGotDLY 9oTE6ms35egsqi+ov6NZ5ztfBkquIRBgKJxix1xgkdrY+XVdXaEpRIOi1SIIAQBR4AXc 376CblQjb3VAlMHDy8UC7nqd6J5D4sHfxXPqEBU5W6pDGJTBcUMJYWJI2OzO2XkplcjG aBvxgoP9dpCYb2wKZ9Y1RXW19PVTe+HE31ir2hdZwNXU1sgDti5WB8k3ulfU4vD15ad5 XAug== X-Forwarded-Encrypted: i=1; AJvYcCUeRGKCS098UTCEsmfzY9bP5HD/l7h9OsXSHfPOrLyVYTy4L5kodhfRJ4g7zfl/hu/rSZFiNYiygmK+2pYM@vger.kernel.org, AJvYcCVmn0pi7DAQdgcS31WBjVM/wfw6iNRGrybsT2CmQ9HLFYT6w7+Iid3vDCSMBYZsiYbDHWwZjUL0@vger.kernel.org, AJvYcCWYHsJnDeXIw6hNBN0xxMqtdG5fzv+B+4RAo5PjzPMT0WAzdit7we9XPv52woBRQ5tibl2qY4/yV5eo@vger.kernel.org X-Gm-Message-State: AOJu0YwgTo5ri3DTAbohZX13PS1Ta8gA2/Gdqo0fOlIiF/rrpElY6pdf hRU/AbuMrA8Q71BaMU9LlVnacF6eCctpnZ1irgFX3j9N2uda5SOqCrUc X-Gm-Gg: ASbGncsMNJhkzpzcXmc836pewRiOSfvBtGoqxlMQ/5G8dBLQf1u7LtHWwrGaSGtYyZL OkHYi/3stLCGSDxR751ieZBso/IdgIcZs37yYYNQOKiiIMU3OKmgeVhETv2dKB6xmsbUYGiu5D+ 0AQnmvpv3tbQp2EAqHwXF+hEIE69hsfPEJ9l65ks92fQ0X3i83sjHpn8s/axpBPVHEfyGuzh6+/ tJHnjYD3u/JTYrk4a/jlg4YK5DFT95JtXXr9Hk+t8JTdmEuBomM8pW/QCUHRxqTNgXQqtckR9e6 MUgj2+Owpwp8GvP2IQEZC/A27seZyjxN7Iel7w4uiMDmLlcpr0ObdUiYXotXOEGtsz6lhQk6YZ7 wE9gn X-Google-Smtp-Source: AGHT+IED2Sma74TmFQCXHWQz6h6HmzHgOGQKtnSIJXQFnE9KD0MU7E4a3Gq0g7Ql/v2IZ4UAr6hlwg== X-Received: by 2002:a17:902:e88f:b0:235:f3df:bbff with SMTP id d9443c01a7336-237d97674eemr44936455ad.4.1750426928720; Fri, 20 Jun 2025 06:42:08 -0700 (PDT) Received: from localhost.localdomain ([207.34.150.221]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-237d861047fsm18885505ad.134.2025.06.20.06.42.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 20 Jun 2025 06:42:08 -0700 (PDT) From: Kyle Hendry To: Florian Fainelli , Andrew Lunn , Vladimir Oltean , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Russell King Cc: noltari@gmail.com, jonas.gorski@gmail.com, Kyle Hendry , Florian Fainelli , netdev@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [RFC PATCH net-next 4/6] net: dsa: b53: mmap: Add register layout for bcm63268 Date: Fri, 20 Jun 2025 06:41:19 -0700 Message-ID: <20250620134132.5195-5-kylehendrydev@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250620134132.5195-1-kylehendrydev@gmail.com> References: <20250620134132.5195-1-kylehendrydev@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Add a structure to describe the ephy control register. Add table with single entry for bcm63268. When probing, try to match table entry with the chip_id. Signed-off-by: Kyle Hendry --- drivers/net/dsa/b53/b53_mmap.c | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/drivers/net/dsa/b53/b53_mmap.c b/drivers/net/dsa/b53/b53_mmap.c index a0c06d703861..1bebf5b9826b 100644 --- a/drivers/net/dsa/b53/b53_mmap.c +++ b/drivers/net/dsa/b53/b53_mmap.c @@ -27,9 +27,31 @@ =20 #include "b53_priv.h" =20 +struct b53_phy_info { + u32 chip_id; + u32 mask; + u32 num_ephy; + const u32 *ephy_offset; +}; + struct b53_mmap_priv { void __iomem *regs; struct regmap *gpio_ctrl; + const struct b53_phy_info *phy_info; +}; + +static const u32 bcm63268_ephy_offsets[] =3D {4, 9, 14}; + +static const struct b53_phy_info bcm63xx_ephy_info[] =3D { + { + /* 6318 has different reg layout, + * need to distinguish it somehow + */ + .chip_id =3D BCM63268_DEVICE_ID, + .mask =3D GENMASK(4, 0), + .num_ephy =3D ARRAY_SIZE(bcm63268_ephy_offsets), + .ephy_offset =3D bcm63268_ephy_offsets, + } }; =20 static int b53_mmap_read8(struct b53_device *dev, u8 page, u8 reg, u8 *val) @@ -296,7 +318,7 @@ static int b53_mmap_probe(struct platform_device *pdev) struct b53_platform_data *pdata =3D pdev->dev.platform_data; struct b53_mmap_priv *priv; struct b53_device *dev; - int ret; + int i, ret; =20 if (!pdata && np) { ret =3D b53_mmap_probe_of(pdev, &pdata); @@ -316,6 +338,14 @@ static int b53_mmap_probe(struct platform_device *pdev) priv->regs =3D pdata->regs; =20 priv->gpio_ctrl =3D syscon_regmap_lookup_by_phandle(np, "brcm,gpio-ctrl"); + if (!IS_ERR(priv->gpio_ctrl)) { + for (i =3D 0; i < ARRAY_SIZE(bcm63xx_ephy_info); i++) { + if (bcm63xx_ephy_info[i].chip_id =3D=3D pdata->chip_id) { + priv->phy_info =3D &bcm63xx_ephy_info[i]; + break; + } + } + } =20 dev =3D b53_switch_alloc(&pdev->dev, &b53_mmap_ops, priv); if (!dev) --=20 2.43.0 From nobody Thu Oct 9 03:14:15 2025 Received: from mail-pl1-f174.google.com (mail-pl1-f174.google.com [209.85.214.174]) (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 0B27A298984; Fri, 20 Jun 2025 13:42:12 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.174 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750426934; cv=none; b=U6P03cDTSphzaTf87niYbMYky25dExbukG0RWswHICR6Z7aJ6G4Q5JDykIIRI2QObz69uatL+gMcb7u44AFdVy6kJYw2DN1XWX6s7CnsQ1aEdErgJmejNhAKPgIfHcBVSahgU967N8vns4VaX2emDFrK5Cr8pG/T5GIvjQ31duA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750426934; c=relaxed/simple; bh=ABFeL1LM48SG2ww/d54d4OPabMjG33GrF1JFouQGUJw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=j4tPCt4n/YXXXStLuuIXqnMuwHb/Tpl0NuHbRgAj9oFa4FuUzyy1D5MeiAqXAsh2zsTIgetLYgM6+/aCKqfcUwZtctSUluEKp17R1ImimY/h9RXS7wyEOja/5sWLjoCYpXxygrKovKpcDQ52MHDzcXkjgvcUVTS2wWgztY6F3Z4= 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=f2QTAdM5; arc=none smtp.client-ip=209.85.214.174 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="f2QTAdM5" Received: by mail-pl1-f174.google.com with SMTP id d9443c01a7336-2366e5e4dbaso15179345ad.1; Fri, 20 Jun 2025 06:42:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1750426932; x=1751031732; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=KktFXTrDVATNNZzxTieALU70Rf6coIugRNl40iZdiyg=; b=f2QTAdM5wxEzkL0ZID6NYT9oym+EqM70jaemX3ulI/Rn9ntiPgw5OWjFBTe3lKvWCb 3a21hECs7XQ1uybuZote+senOr1qGAKQrjG/wVYG+gQ4CEAW4+pOwQ2QLWLg4u1sHx9p Nbe+4kSBn9hVNjedIJJpOTYbg1cZVA/70eKmaVleldj1Xx1HRYHTkoCz4ZuGAVQeYRan Z8PFjhQXJ+OSqOXMpprCoIZxKyp8w9BEMGAwnXlYuiCT67r16Q5W8nAHpF87XUW2tVql 1Z1KU40OkNmU0kEN3WCWrlI3gYB8v77kGUbRiva6t7JVRCWsAQmJo9Xb9JHZvHX+4G+S Qeeg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750426932; x=1751031732; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=KktFXTrDVATNNZzxTieALU70Rf6coIugRNl40iZdiyg=; b=VK13cBCSQFBRHAbW3k31u3m6pQKgv/P2hIkBEW3G+96eCvDXT0DMQmyi19Z9heKtk1 So44b9RoW2JweP6BsQOlFR28cg2sLZbk1/xYte2g5y5Hq1nbKW/hRYU4H6xxxse6DEP6 AiXHqA5QSGd+fNsPPlbet+Yv4HEO2vHORyzallcQM+L95CF5N+qka0h719Zi8ZAhynCi +rxNMVjqOXia/WTjG321zlNmXY/Z3edNFvTzLg8BEZ1+2AMqcWWTlOhZ9IcznSCh0LZ9 Q3MVTmUwwApBABYRKjX5vE/WN+nUgNVfPS4q4FdDQGaEpfeyrZ0iMBXyj8u5urncslSG m/hg== X-Forwarded-Encrypted: i=1; AJvYcCW56cnOdlsnX+VkA8pGM8zU4lBVP5eojliI5CQqSw5PifuCM0p5UWRBtCLLp5yafP8X4pmoaXd5@vger.kernel.org, AJvYcCWZzcaxqIuXG4J2uNNSOaX7dlyp8urYfd8Wi2i6AqVGgVMzQ9rkPo7VrOOnZWuDcBo1GYRcXjnO/Hdm@vger.kernel.org, AJvYcCX392xIumfrW78am0pE7XJxvj3L9nBnepKAFnsd0NOZToIU96CFNQx66WmpzpZUsB55tK24nZ7iBfxcyYPg@vger.kernel.org X-Gm-Message-State: AOJu0YyGnMFSHB/oQwMjQexeBztAsNZyvcGienWMbW16h7wEuv8m06fY nZ7UPhR2AMbf4xdtl3zRqMAYjkrLji999DCryM0Vg7/rHrxgOzYvu3CF X-Gm-Gg: ASbGnctkUYsY7vIhNTscYyGEtGiCUOmNQutIyRdBuocxfcS0NFl7D7BfLYFw/5EPc3m ox/61hdPPLqXX8dSemOXnphTqjN4kmS1t11BuwAnilN8pfNoNIa8tOe0SU+/ycKSXImILpUDigA mLyYjuQSQerpgZtvlxeNU6pHx0nTnoCy2OjOQEu8uNlZq5L5+H/tEhw14chGkgzMEHriUJJEX7H AtOs4cbco+qJoRpTiA7Zhsyl0rOlnStPfB4tvImilXEsuCYD/xNqnQs5fH8lS8V7PAX+URBUzLm loRDXRZxm/Ii7ec4MpTP/A7rWakXAxIpdO1dCa68wepwKhZDMfCOg+HE+FGmLXHEICjXi2HUQXk 3iK08A4nVmvOLwIg= X-Google-Smtp-Source: AGHT+IEkfNpDp8DfTvJe/U+wjjEbT3Li3d9mEcyRhJ4Nu5pG4ryaYXiA26GJsWY6pgmLirClvvdUNw== X-Received: by 2002:a17:903:1a90:b0:231:9817:6ec1 with SMTP id d9443c01a7336-237db09947cmr43638435ad.17.1750426932199; Fri, 20 Jun 2025 06:42:12 -0700 (PDT) Received: from localhost.localdomain ([207.34.150.221]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-237d861047fsm18885505ad.134.2025.06.20.06.42.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 20 Jun 2025 06:42:11 -0700 (PDT) From: Kyle Hendry To: Florian Fainelli , Andrew Lunn , Vladimir Oltean , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Russell King Cc: noltari@gmail.com, jonas.gorski@gmail.com, Kyle Hendry , Florian Fainelli , netdev@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [RFC PATCH net-next 5/6] net: dsa: b53: mmap: Clear resets on bcm63xx EPHYs Date: Fri, 20 Jun 2025 06:41:20 -0700 Message-ID: <20250620134132.5195-6-kylehendrydev@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250620134132.5195-1-kylehendrydev@gmail.com> References: <20250620134132.5195-1-kylehendrydev@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Make sure the ephy resets aren't being held by setting lowest bits in ephy control register. Signed-off-by: Kyle Hendry --- drivers/net/dsa/b53/b53_mmap.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/drivers/net/dsa/b53/b53_mmap.c b/drivers/net/dsa/b53/b53_mmap.c index 1bebf5b9826b..a4a2f2965bcc 100644 --- a/drivers/net/dsa/b53/b53_mmap.c +++ b/drivers/net/dsa/b53/b53_mmap.c @@ -24,9 +24,12 @@ #include #include #include +#include =20 #include "b53_priv.h" =20 +#define BCM63XX_EPHY_REG 0x3C + struct b53_phy_info { u32 chip_id; u32 mask; @@ -253,6 +256,14 @@ static int b53_mmap_phy_write16(struct b53_device *dev= , int addr, int reg, return -EIO; } =20 +static void bcm63xx_ephy_reset(struct regmap *regmap, int num_ephy) +{ + u32 mask =3D GENMASK((num_ephy - 1), 0); + + /* Set lowest bits to deassert resets */ + regmap_update_bits(regmap, BCM63XX_EPHY_REG, mask, mask); +} + static const struct b53_io_ops b53_mmap_ops =3D { .read8 =3D b53_mmap_read8, .read16 =3D b53_mmap_read16, @@ -345,6 +356,8 @@ static int b53_mmap_probe(struct platform_device *pdev) break; } } + if (priv->phy_info) + bcm63xx_ephy_reset(priv->gpio_ctrl, priv->phy_info->num_ephy); } =20 dev =3D b53_switch_alloc(&pdev->dev, &b53_mmap_ops, priv); --=20 2.43.0 From nobody Thu Oct 9 03:14:15 2025 Received: from mail-pl1-f180.google.com (mail-pl1-f180.google.com [209.85.214.180]) (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 14ACF299AA4; Fri, 20 Jun 2025 13:42:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.180 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750426937; cv=none; b=tRXCN0IFMApnyBweXDbUbja2fpJ4Ef6nShadT6xpYiHX+Wuk0WUm8AtQSc5qLiTQeAHjV4Xi9rRgaE7U934r7Q4uVe4VszORYPkSrkrQnMW10oVuTqpkw+oHHc2H+SfkE57VE2Dz9sWS8AfKAwho0MWogJg0dYdaU9hCiPiRL5c= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750426937; c=relaxed/simple; bh=frII0sqlDiSbWDSlPxgeD6vfP+S0Yy8Kxk0CZ2aQw6A=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=TvnDARjaI6WUzxHxJQcXiIV1P/1HLO8bh6KaBk+r0gyCNI3nBwUGA9wFzl4astEzGHXM7/GnzczvpJRHWpOrq6XKBhivTCa+TFyXI/HMKaYfMg6Ihfco9bAQgXADHWDXb5wDaOdEhFgFqr1TOSXlVE1aVtNibi4DXkj098A345g= 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=mWhbQ3ZV; arc=none smtp.client-ip=209.85.214.180 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="mWhbQ3ZV" Received: by mail-pl1-f180.google.com with SMTP id d9443c01a7336-2366e5e4dbaso15180215ad.1; Fri, 20 Jun 2025 06:42:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1750426935; x=1751031735; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=dNBwt43MHIWMmmpsxqwqFsalJ3qguFb5ELzUaUDEscI=; b=mWhbQ3ZVVl+XHyg6FVw0TnYpT393xVic+wDp0QyC/0MgEA8qLRb/vh3+F5NDahQgRw oxDPTAGLhqXG54pIBjR7C7JKZHAM+PPwrXAtFnMlX+G9T/0syzvwPoRdu8E1TVF9FTt2 DPAITh66IOOiZFkmiLYsECHF9S+qLmsdGmKqkHuUZIolcwZEWcoHIOBPMedPjMjY441f d0CZsw0I7u2hmqMEeR/sD6PCpgJGO4WyPQ2Z5f24wXR8CAhDA5AH1FMNwtfd282Ibgrx dKMxzz7g6uu+JqIi3wC8gpJBpcrNzYGcxsB94Oxb94Q8CSJ70GLrofCI2q542iBR8yfb B/iA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750426935; x=1751031735; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=dNBwt43MHIWMmmpsxqwqFsalJ3qguFb5ELzUaUDEscI=; b=VfensFfG0sqVGm72Lfl8cZTFM/v3aLhslcO1OsPqQ7f4aQ3RIh9Mdki8oaLpS9iuBR NHv1NlgaAThVxk55qyyEPJpCpiBMOvqU2Gc8j81bSGVALj66iXj49NXQVNb8HGdnZw9B v++/hxYAyDY2Z7Nkeh9il7T00jIiF48G1bfI1CGiHFSvrkqtd/ebprnceQkrB2YZMx// dGy58/s9G5pSFaIPvAWqdPvUjVxYwc2yoH4eO/pDxoVvcqHhCbbtnAWhAncAk0qBL0qn NfUxdeNXbEBkuoFcSFJgrNnm3EvEAW08WJrcDh51bUTn6ARovKH8BUvFp4WEueNPp0Qn X1vg== X-Forwarded-Encrypted: i=1; AJvYcCVWELuJrelnblK9mlDW24Zcz0kCUKapSvoT9GeLQGchK44aEUZ/irrbo3yg6inPYcGlVDvEX3HGTeynQfzM@vger.kernel.org, AJvYcCWYcimRkUFryAClIkaKfk9I2+D1tFHnXdDBTRM4Ny+h/UBxteUN1IPSbIsoLfTW2cOOqOGvtXGK@vger.kernel.org, AJvYcCXKmhF1lAgyWHBmMMKKmcLqjSXejV9ZctnCpTnYroqD3eaXQOFJ/UMY1nzB2fz36U4/1SiQkoFkFa1R@vger.kernel.org X-Gm-Message-State: AOJu0Yzfdynu0H7bRqp8vBaLgc8OVnqJs9PP3ZpEnNEgJgO8Bjj6hIL4 4vji+Fi/nUtEck0edHzZbda+rXFAPBY+/HaAzvwFb1HgKQpYB9+GkYlv X-Gm-Gg: ASbGncstoCXBNSwQUQD+V8QwFWTcfcarZCnsp1rYqxLXJAOVe0hFdHvk3z455Tr/p+q NGodGH6eXb38KJKkBt+BFDDZasz0ov+Dh0Lhgp+dXaD05im7AXPzEdnokwo9+PjAf7MopVp6poH +cPBmSMViAtb6WXxFsSo6uWP0K1Kdwyo0drBJdmFTaE3oxN53p0WIcw5HFMv6J/1Aq9JmtCRqSA g6Slg4nlwfZZ5ZwlQfWLKM8sU4LkL1Zod0pOjkkhcZO8jAh45LYiXNQigfJPyc0y3fFlI35MVVo VvaboNYkcK+Pb0OyoDa4VDHMY4rj2jgvzGXlZfaaDqdDe26+WfRAjvM2Za5rgavARU+Ayd4Gc8e GQRzg X-Google-Smtp-Source: AGHT+IG7wam8fQo1fx9LX6RAyzqtMQVwrj4OaPZzWacH85+bQVS4c210WpX0nCi0F8AReA91nXk5kw== X-Received: by 2002:a17:903:1665:b0:231:d0da:5e1f with SMTP id d9443c01a7336-237db0d8ea3mr39974165ad.21.1750426935169; Fri, 20 Jun 2025 06:42:15 -0700 (PDT) Received: from localhost.localdomain ([207.34.150.221]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-237d861047fsm18885505ad.134.2025.06.20.06.42.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 20 Jun 2025 06:42:14 -0700 (PDT) From: Kyle Hendry To: Florian Fainelli , Andrew Lunn , Vladimir Oltean , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Russell King Cc: noltari@gmail.com, jonas.gorski@gmail.com, Kyle Hendry , Florian Fainelli , netdev@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [RFC PATCH net-next 6/6] net: dsa: b53: mmap: Implement bcm63xx ephy power control Date: Fri, 20 Jun 2025 06:41:21 -0700 Message-ID: <20250620134132.5195-7-kylehendrydev@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250620134132.5195-1-kylehendrydev@gmail.com> References: <20250620134132.5195-1-kylehendrydev@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Implement the phy enable/disable calls for b53 mmap, and set the power down registers in the ephy control register appropriately. Signed-off-by: Kyle Hendry --- drivers/net/dsa/b53/b53_mmap.c | 50 ++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/drivers/net/dsa/b53/b53_mmap.c b/drivers/net/dsa/b53/b53_mmap.c index a4a2f2965bcc..cf34a7d1048f 100644 --- a/drivers/net/dsa/b53/b53_mmap.c +++ b/drivers/net/dsa/b53/b53_mmap.c @@ -29,6 +29,7 @@ #include "b53_priv.h" =20 #define BCM63XX_EPHY_REG 0x3C +#define BCM63XX_EPHY_POWER_DOWN_BIAS BIT(24) =20 struct b53_phy_info { u32 chip_id; @@ -264,6 +265,53 @@ static void bcm63xx_ephy_reset(struct regmap *regmap, = int num_ephy) regmap_update_bits(regmap, BCM63XX_EPHY_REG, mask, mask); } =20 +static void bcm63xx_ephy_set(struct b53_device *dev, int port, bool enable) +{ + struct b53_mmap_priv *priv =3D dev->priv; + const struct b53_phy_info *info =3D priv->phy_info; + u32 val, mask; + int i; + + if (enable) { + val =3D 0; + mask =3D (info->mask << info->ephy_offset[port]) + | BCM63XX_EPHY_POWER_DOWN_BIAS; + regmap_update_bits(priv->gpio_ctrl, BCM63XX_EPHY_REG, mask, val); + } else { + if (!regmap_read(priv->gpio_ctrl, BCM63XX_EPHY_REG, &val)) { + val |=3D info->mask << info->ephy_offset[port]; + /*Check if all phys are full off and set bias bit*/ + for (i =3D 0; i < info->num_ephy; i++) { + mask =3D info->mask << info->ephy_offset[i]; + if ((val & mask) !=3D mask) + break; + } + + if (i =3D=3D info->num_ephy) + val |=3D BCM63XX_EPHY_POWER_DOWN_BIAS; + + /*Might need a lock around the read/write*/ + regmap_write(priv->gpio_ctrl, BCM63XX_EPHY_REG, val); + } + } +} + +static void b53_mmap_phy_enable(struct b53_device *dev, int port) +{ + struct b53_mmap_priv *priv =3D dev->priv; + + if (priv->phy_info && port < priv->phy_info->num_ephy) + bcm63xx_ephy_set(dev, port, true); +} + +static void b53_mmap_phy_disable(struct b53_device *dev, int port) +{ + struct b53_mmap_priv *priv =3D dev->priv; + + if (priv->phy_info && port < priv->phy_info->num_ephy) + bcm63xx_ephy_set(dev, port, false); +} + static const struct b53_io_ops b53_mmap_ops =3D { .read8 =3D b53_mmap_read8, .read16 =3D b53_mmap_read16, @@ -277,6 +325,8 @@ static const struct b53_io_ops b53_mmap_ops =3D { .write64 =3D b53_mmap_write64, .phy_read16 =3D b53_mmap_phy_read16, .phy_write16 =3D b53_mmap_phy_write16, + .phy_enable =3D b53_mmap_phy_enable, + .phy_disable =3D b53_mmap_phy_disable, }; =20 static int b53_mmap_probe_of(struct platform_device *pdev, --=20 2.43.0