From nobody Sat Feb 7 19:45:55 2026 Received: from mail-pj1-f44.google.com (mail-pj1-f44.google.com [209.85.216.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 9BD0F214239 for ; Wed, 5 Feb 2025 19:12:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738782779; cv=none; b=gbtUNetfIWLVidXQvbirplQRKtZe0RfcKeedGO8T6AjdLsW8HkZ/bi3Z0D860BTRE8nsJuJDDTcFUKzBAZO5yiVXcXhlX4+VzmcZvKQiZ6BouahQC5XJnwuxDEc1AID6LwmfFPpSfbqMH3JyEzfNYufXDPlQfJts0FQGER8q4ZA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738782779; c=relaxed/simple; bh=emQr1WRfTCyFVdLp/d2GBD9ikd08vqQkCZbU50KHAFI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=gb5PmV7vAD1NQShP3n0hGlCRDKD2Rv8f4svZey2XVr6kNWUx/SiGZMy6m6ojPke2eVrYFLK6kKqd0qhrH6psEurrR6MZhLrd9OfedhJhDSj97J9+hnJNk8K5WsBDcngAotWbO0xytfsTIcO5oaDAM+KmrwgQEnassDLJMN4ZQo0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=broadcom.com; spf=fail smtp.mailfrom=broadcom.com; dkim=pass (1024-bit key) header.d=broadcom.com header.i=@broadcom.com header.b=HSv45CGI; arc=none smtp.client-ip=209.85.216.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=broadcom.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=broadcom.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=broadcom.com header.i=@broadcom.com header.b="HSv45CGI" Received: by mail-pj1-f44.google.com with SMTP id 98e67ed59e1d1-2f9cb23d22cso64503a91.1 for ; Wed, 05 Feb 2025 11:12:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; t=1738782777; x=1739387577; 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=FyxoQmP+DrPfyNDFU6zDEUm+WeVsHxsrhuRbOaUfCms=; b=HSv45CGI4Ea/sVTKiWPO4a1fFgb16sYlmeXa3im+0zas5xWxvtSsIpSzxB7MBVaf67 LPOSeq14W5qHUVwsa1s9iM4Iin+3NCCmoqr//zfjNLs9tjbZskgxmplAMV/wMKFgRG/7 1CkuMMK+foScvUgPApFlcgGxZ8wRQn82P4+bE= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738782777; x=1739387577; 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=FyxoQmP+DrPfyNDFU6zDEUm+WeVsHxsrhuRbOaUfCms=; b=ENM5lZveGEgchAAKyH9v+EPgySWuBX4Zb4HiKEnZONuKOvF5UXyZR5rz5KvZBB9RJs PaAuwrZQRKaeYb16JtCn5hxUoJzsTbCS72ZhUtYGQv/91MqVX0ofWmG+T5vZ2LaWDcqA p9s15OO0qj1IrAGSK3YC64b95KNTIfygDJjK7RYeWWlbi6qbbw0f47pVJyxvaM/DpNy8 wbGjdhodlpLE6eZl6wi/iJyQ1DSmkrcDYAQL/bsAlKRkriNi27iK/oi87dMB4hK5U8LJ 0khhqwiqdQGPxqWFnIbraYmBtwAcwLDR9ewS+7oPL5ShyZEbso0dIxokMRJA17A6+Ktm vWEQ== X-Forwarded-Encrypted: i=1; AJvYcCVZNLcmU3wl3jinbi35+yFjo6bJ1qN07Yl4ZcT3/lCOzJ0OgEGCbYRrGP4v6wxCwubWifRLgjUxM3o0XcY=@vger.kernel.org X-Gm-Message-State: AOJu0Ywm/dr8WyQza+kSKeS0E2ddXhkzf/+qXzeooR8GWNPQNIBZDlX2 wqphce78tb4U6sfqV5Fqz2Haq4xUbVxSgUsObaxoxwdSZqwO8Xa9xJN/GP/0Ag== X-Gm-Gg: ASbGnctsOuX/k633xx0tF5cV9K6hPpViAYIZK4xj1gXHtzkISl3MwxMROcyBPoFB90z GDJPB52iGsA11I0Io11B408FzaQY7gtPUsw5j8kZIplJOAnxt8tZiX96kNGSp3Jd2cRYzfgjLeb q2PasfZ3fW8USdzdO0eF+e4ouqtW6EIo9yAjmiz3ws0RHW1YvyNROToAzwMTQKYB9fW0VGAVP/K t/Lahk+nkl3JMNDGVLsqXtCcnpcSDb5QHotP2IBvXfiD7MeSj7SOItMliu6dLXK8yVbNJigTlTg MdfM6ticku5lLEyL0ykwd28iEXM4QhKwwe/8Jep1gcdeGU6ic6VK4ihpQTxS6RlPFSaZkC0= X-Google-Smtp-Source: AGHT+IGu6hun4FwjJUr/ASi5VtU1r7KzOWGkU1swFqWYgTtfTk7Rzk7GNGUnU+ZBJXjxJW+oGt6ZSw== X-Received: by 2002:a05:6a00:3002:b0:725:b201:2362 with SMTP id d2e1a72fcca58-7303511e562mr5701360b3a.11.1738782746930; Wed, 05 Feb 2025 11:12:26 -0800 (PST) Received: from stbsrv-and-02.and.broadcom.net ([192.19.144.250]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-72fe69ceb1csm12670842b3a.151.2025.02.05.11.12.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 05 Feb 2025 11:12:26 -0800 (PST) From: Jim Quinlan To: linux-pci@vger.kernel.org, Nicolas Saenz Julienne , Bjorn Helgaas , Lorenzo Pieralisi , Cyril Brulebois , Stanimir Varbanov , bcm-kernel-feedback-list@broadcom.com, jim2101024@gmail.com, james.quinlan@broadcom.com Cc: Florian Fainelli , Lorenzo Pieralisi , =?UTF-8?q?Krzysztof=20Wilczy=C5=84ski?= , Manivannan Sadhasivam , Rob Herring , linux-rpi-kernel@lists.infradead.org (moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE), linux-arm-kernel@lists.infradead.org (moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE), linux-kernel@vger.kernel.org (open list) Subject: [PATCH v1 1/6] PCI: brcmstb: Refactor max speed limit functionality Date: Wed, 5 Feb 2025 14:12:01 -0500 Message-ID: <20250205191213.29202-2-james.quinlan@broadcom.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250205191213.29202-1-james.quinlan@broadcom.com> References: <20250205191213.29202-1-james.quinlan@broadcom.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 changes to the code that limits the PCIe max speed. (1) Do the changes before link-up, not after. We do not want to temporarily rise to a higher speed than desired. (2) Use constants from pci_reg.h when possible (3) Use uXX_replace_bits(...) for setting a register field. (4) Use the internal link capabilities register for writing the max speed, not the official config space register where the speed field is RO. Updating this field is not necessary to limit the speed so this mistake was harmless. Signed-off-by: Jim Quinlan --- drivers/pci/controller/pcie-brcmstb.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/drivers/pci/controller/pcie-brcmstb.c b/drivers/pci/controller= /pcie-brcmstb.c index 546056f7f0d3..f8fc3d620ee2 100644 --- a/drivers/pci/controller/pcie-brcmstb.c +++ b/drivers/pci/controller/pcie-brcmstb.c @@ -47,6 +47,7 @@ =20 #define PCIE_RC_CFG_PRIV1_LINK_CAPABILITY 0x04dc #define PCIE_RC_CFG_PRIV1_LINK_CAPABILITY_ASPM_SUPPORT_MASK 0xc00 +#define PCIE_RC_CFG_PRIV1_LINK_CAPABILITY_MAX_LINK_SPEED_MASK 0xf =20 #define PCIE_RC_CFG_PRIV1_ROOT_CAP 0x4f8 #define PCIE_RC_CFG_PRIV1_ROOT_CAP_L1SS_MODE_MASK 0xf8 @@ -413,12 +414,12 @@ static int brcm_pcie_set_ssc(struct brcm_pcie *pcie) static void brcm_pcie_set_gen(struct brcm_pcie *pcie, int gen) { u16 lnkctl2 =3D readw(pcie->base + BRCM_PCIE_CAP_REGS + PCI_EXP_LNKCTL2); - u32 lnkcap =3D readl(pcie->base + BRCM_PCIE_CAP_REGS + PCI_EXP_LNKCAP); + u32 lnkcap =3D readl(pcie->base + PCIE_RC_CFG_PRIV1_LINK_CAPABILITY); =20 - lnkcap =3D (lnkcap & ~PCI_EXP_LNKCAP_SLS) | gen; - writel(lnkcap, pcie->base + BRCM_PCIE_CAP_REGS + PCI_EXP_LNKCAP); + u32p_replace_bits(&lnkcap, gen, PCIE_RC_CFG_PRIV1_LINK_CAPABILITY_MAX_LIN= K_SPEED_MASK); + writel(lnkcap, pcie->base + PCIE_RC_CFG_PRIV1_LINK_CAPABILITY); =20 - lnkctl2 =3D (lnkctl2 & ~0xf) | gen; + u16p_replace_bits(&lnkctl2, gen, PCI_EXP_LNKCTL2_TLS); writew(lnkctl2, pcie->base + BRCM_PCIE_CAP_REGS + PCI_EXP_LNKCTL2); } =20 @@ -1324,6 +1325,10 @@ static int brcm_pcie_start_link(struct brcm_pcie *pc= ie) bool ssc_good =3D false; int ret, i; =20 + /* Limit the generation if specified */ + if (pcie->gen) + brcm_pcie_set_gen(pcie, pcie->gen); + /* Unassert the fundamental reset */ ret =3D pcie->cfg->perst_set(pcie, 0); if (ret) @@ -1350,9 +1355,6 @@ static int brcm_pcie_start_link(struct brcm_pcie *pci= e) =20 brcm_config_clkreq(pcie); =20 - if (pcie->gen) - brcm_pcie_set_gen(pcie, pcie->gen); - if (pcie->ssc) { ret =3D brcm_pcie_set_ssc(pcie); if (ret =3D=3D 0) --=20 2.43.0 From nobody Sat Feb 7 19:45:55 2026 Received: from mail-pl1-f178.google.com (mail-pl1-f178.google.com [209.85.214.178]) (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 E08C51FF7CD for ; Wed, 5 Feb 2025 19:12:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.178 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738782752; cv=none; b=NeWTkk6p6XeLFx5L2j9LMcpnYDvB1btpg8N/X+tYE3gv+5+LGzYQTAHLZstIOIhHJ2AN6c/z1w7LZiR/r6Vmj25FiaKknJWJsq5jIWm2FB2rTK8gk0AUoO3h0A0TR0V7aMw8R2E2hHFD9anYuh8mLzHZP5EmkA4gAS/nbpnbRzY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738782752; c=relaxed/simple; bh=pnzOH1e2axdVqJngQp6tdqFmDskboQFLalroUwFTUdc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Bx1OkPJ6ra6kK+oXIGFdH5VIz5oR06XX4CxPJgD1FPTZyF18gs/JdNoWjsLsz+8x9uOTL/xXoYqnOlCv/F3WBEXOC73EAgOQp/MaFXPe0EENaPxEsjDkVHXOW+SHXTNaeQI6H4KZJBcH2BnvSBW1cDa1dPgR9oe1tqw4uNFhA2U= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=broadcom.com; spf=fail smtp.mailfrom=broadcom.com; dkim=pass (1024-bit key) header.d=broadcom.com header.i=@broadcom.com header.b=G34l7Riw; arc=none smtp.client-ip=209.85.214.178 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=broadcom.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=broadcom.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=broadcom.com header.i=@broadcom.com header.b="G34l7Riw" Received: by mail-pl1-f178.google.com with SMTP id d9443c01a7336-21f2cfd821eso2909905ad.3 for ; Wed, 05 Feb 2025 11:12:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; t=1738782750; x=1739387550; 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=rshGoTVKNv7yJ8UG0ncdA2L3Ez+eMRudoZQa+hQwzgo=; b=G34l7Riw5CEHbbRxZts1CYc48HpXGjRfgWl5FQoMWp8Oo28jSTwQRwdu3DvfK5RjfP yX58EoHrk8Ndjp+fezovoQh9xvZDb2lqna+hPkT9ECX8e2NDwNXRN0pxx0PFLrkwJ/km Mqq2WEcfwyhhkuuNOMUS769/Nj8gI2tCmzI/4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738782750; x=1739387550; 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=rshGoTVKNv7yJ8UG0ncdA2L3Ez+eMRudoZQa+hQwzgo=; b=EmTMo7rJjiOR3M+GrlHwFxCXycxrTl4OJpTc7ROa++Yu0aTHeyvtF8n26PjUWHrKrL 8Mpo2+ZX0g2OFn/rwFe0YJCmUmWfehMa5C8I3ad39EIh1GuaM3mfdadJzVTT1UPD/V7e fu0s5KuxnQO9CRjpvnfz4R+jqxS7gHEQyukZQQctz6tmWQQoYoAVr6dC+w32Q6AwjB1P yn70HU0n6VZDRMcF6t7dBOkQ8vFrhApxiVjvJP6zLXRLOtzRg93eAEUKgqBUiph1uLan bbU0BzyrazU6B020dbXsLv1iYEKrLFLM3e9joi2ZH3zkM+ZQg0LJWAJ0ArUeDwihxUGj pb7Q== X-Forwarded-Encrypted: i=1; AJvYcCUtoljkxMMkEb4oBGmzBKDOt1NxCPwQbBwxGSiMfiJosGxTP80DZ7isovXrAeoFHeGJKB4RTHBVFQ6net8=@vger.kernel.org X-Gm-Message-State: AOJu0YwhB84phC6S/ExJ8awta1qsvvd6qWKsd2Zr+c/0wjUpi0Iq/907 bi0XpGpuGhHUw14AzxpywvFQGykpfOPOO9bREMYCzMvPt8LkmONCMGd0wr1PJA== X-Gm-Gg: ASbGnct+NZJTivAovrXrsNUOFdlxH668qIDTuHiXB8mCrv94pfHASHUPXK/imtu3yr6 m9x907S4Hm5yZqsXhtvX9zOrrh+6d1hadeV1P0ry4FfmgLUi8+dbHX4B7lvLiF116tyCIdu3XGU NdrZ0nbOz3SOrag+Tz74mSzb6q5+IEwWYifKKNGBcxoE1Iy87F2KRgUeU4pP9OSqhGuHaUIkuuP C5zhpGietdyj2F3XXgQa7//yakewX5QM5yHTfgQ0vXojqgZGeI/pGpx8CB5YuQH3yQxpgqUup47 aXjvYuF32aFyeXLIBjpGWyTfBmwc2keUxA/di4XGGuBuINNUhH5w/8N+LRgwMEot1p6BXSQ= X-Google-Smtp-Source: AGHT+IEvH1UsOv2Pdep53yziZn/D7SThmLNGW4jFaeetD7lQZsfU1M4mdvMGq8u34jzx7Ya85/+NnQ== X-Received: by 2002:a05:6a20:2d0b:b0:1ea:ddd1:2fa7 with SMTP id adf61e73a8af0-1ede88b9994mr7396175637.28.1738782750080; Wed, 05 Feb 2025 11:12:30 -0800 (PST) Received: from stbsrv-and-02.and.broadcom.net ([192.19.144.250]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-72fe69ceb1csm12670842b3a.151.2025.02.05.11.12.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 05 Feb 2025 11:12:29 -0800 (PST) From: Jim Quinlan To: linux-pci@vger.kernel.org, Nicolas Saenz Julienne , Bjorn Helgaas , Lorenzo Pieralisi , Cyril Brulebois , Stanimir Varbanov , bcm-kernel-feedback-list@broadcom.com, jim2101024@gmail.com, james.quinlan@broadcom.com Cc: Florian Fainelli , Lorenzo Pieralisi , =?UTF-8?q?Krzysztof=20Wilczy=C5=84ski?= , Manivannan Sadhasivam , Rob Herring , linux-rpi-kernel@lists.infradead.org (moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE), linux-arm-kernel@lists.infradead.org (moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE), linux-kernel@vger.kernel.org (open list) Subject: [PATCH v1 2/6] PCI: brcmstb: Fix error path upon call of regulator_bulk_get() Date: Wed, 5 Feb 2025 14:12:02 -0500 Message-ID: <20250205191213.29202-3-james.quinlan@broadcom.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250205191213.29202-1-james.quinlan@broadcom.com> References: <20250205191213.29202-1-james.quinlan@broadcom.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" If regulator_bulk_get() returns an error, no regulators are created and we need to set their number to zero. If we do not do this and the PCIe link-up fails, regulator_bulk_free() will be invoked and effect a panic. Also print out the error value, as we cannot return an error upwards as Linux will WARN on an error from add_bus(). Fixes: 9e6be018b263 ("PCI: brcmstb: Enable child bus device regulators from= DT") Signed-off-by: Jim Quinlan --- drivers/pci/controller/pcie-brcmstb.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/pci/controller/pcie-brcmstb.c b/drivers/pci/controller= /pcie-brcmstb.c index f8fc3d620ee2..bf919467cbcd 100644 --- a/drivers/pci/controller/pcie-brcmstb.c +++ b/drivers/pci/controller/pcie-brcmstb.c @@ -1417,7 +1417,8 @@ static int brcm_pcie_add_bus(struct pci_bus *bus) =20 ret =3D regulator_bulk_get(dev, sr->num_supplies, sr->supplies); if (ret) { - dev_info(dev, "No regulators for downstream device\n"); + dev_info(dev, "Did not get regulators; err=3D%d\n", ret); + sr->num_supplies =3D 0; goto no_regulators; } =20 --=20 2.43.0 From nobody Sat Feb 7 19:45:55 2026 Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) (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 1C467944F for ; Wed, 5 Feb 2025 19:12:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.181 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738782755; cv=none; b=YxQI3eJ8lHu0BNgoi6uLtQmDFrU7SR+j8Txx23T3x0Jh/4tydIv3Ds9sjb8fJTqrv0CAItDAVg8qfQp44Z9Hl41MXQPHFKp9B1SB7ZjBfN5ovly9F2DLyuq0Xp2lxpLijDwIMJ0WjJiQJeA6cVuZUUk8iMLDD9TBt9X60pZHl4k= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738782755; c=relaxed/simple; bh=UOaTvQH694j5NPXqH8YX0yM0fuej0rpwLUTQghdWl0I=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=CpebZC0NLHPIriSgbcXgu8TwIb4Cz9Zofxc9LIsYmkn8KsWnztgeQTxUeQS3maq88EwkamMF4/aRW9evIhVPxC1aRUJamOZlHyfC9JVfMQtGMPB61479QUZG/voBafqMImaTAVQ/i1OT16l4XGI3K/YlgXajD7IOwuZHIx3rWZk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=broadcom.com; spf=fail smtp.mailfrom=broadcom.com; dkim=pass (1024-bit key) header.d=broadcom.com header.i=@broadcom.com header.b=A9GElEUe; arc=none smtp.client-ip=209.85.214.181 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=broadcom.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=broadcom.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=broadcom.com header.i=@broadcom.com header.b="A9GElEUe" Received: by mail-pl1-f181.google.com with SMTP id d9443c01a7336-21ddab8800bso2623265ad.3 for ; Wed, 05 Feb 2025 11:12:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; t=1738782753; x=1739387553; 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=rl5E0UVjy+KHHY0GruFIRH1nxCM5/nCEesXNNBsIatY=; b=A9GElEUeIbvmJcxzBukyz1jbrl+RbOeLkyl5HcUG284mWMyWpX9mAI4Wh/a2U+PG5e yglnbrryzc/8NupWix+bgE8V1wGSU4eVXw/w3wOi2qx027CpYrUBagMGDz8VX6Q3Y1Y0 kLdS/1tpe86tnsuaAWOdcsuD1yIVrAvGHTxSA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738782753; x=1739387553; 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=rl5E0UVjy+KHHY0GruFIRH1nxCM5/nCEesXNNBsIatY=; b=Z797ZIVhAhLiZ0YXfcQFVVgBkqYBN7FGFLOglnzuCzd9u6tKSNv09yoqCansgBovnE DHuczkqueoDVBi1hPNRjY9WVn2tmU+WA8wzy8OQPDYy81+MN0I5QB8gk/xq5mjv0HBSk pHXdE2Dbxcd5j/JU84xgGqHDGM7Sm2G6UaLfOenVrGYMjndT2/pGg2MX0t5mibOgulGR MdRUF8zk8QsL1FGrvVCEmQQePS1l+IPC/pGUmzIw9BrHAm8bDIItyKvxw4gS6ck5okmG jQA15qUEM5y2HaeQqeRsejfyiBIU87msgVKsFmaQkOWzxbSFrfBUxKkzYSRH96huiNU6 WRxw== X-Forwarded-Encrypted: i=1; AJvYcCXqicAxq84c13nrAO2OtZrZL0tyMtlNfiJdr1ibM4R9FZ6YhIJmEtx2Jm08GzATCzXNPiWiJWU6XoXG6f8=@vger.kernel.org X-Gm-Message-State: AOJu0YxEWNzaM61RNJbNnMeKvyuHJCAuzgAOQGsK6K6Dmedavkt58YyR FCb9bFbqm6fADoO8QbudQgNxfDb9XsbO8trnBcMz/IKD8rdW4BbC8lGjN/otfA== X-Gm-Gg: ASbGncsVbvUMebHZOC7PuBt2eRtrw5JkQzrYvkD8rrTYGJWu/Fmr2ChVxPvjbgGeBsW JJJ8U8LP0U/49BCKjR+q54mXGl9g2/AnDyKQmv1AwYBSAqV/gxFOI0oC56gf6xE64zlazEu6cW8 88ilex/SvFz0ja06m3rNQGpbzhCZ5cfoejAyco7c2imQUFHBZoS5XkcMhL+T13y71+1Fer1fALj KQEvvuNIipUF8ib/TyKH1OwgaWF8InAMw0BbksFs0pyn+nlmIaTyzM8XYgQyQ/pWPEAlvFdSlGi Q7Nwya0bEdaGpWp8k4/OriUOzdnX2K6Oa8+ruywoLS3BGIrOcdKx+lEYVmmbjZFrruC9XH0= X-Google-Smtp-Source: AGHT+IGHNDQdUmc+0d+Oa25tolqBbEh64Eprx1WXUEnsJUtgXypSDf+wemV6e9iAiBws6tIO7Kj01Q== X-Received: by 2002:a05:6a00:3cc3:b0:72d:3c4d:c1ea with SMTP id d2e1a72fcca58-730351017f7mr5551115b3a.7.1738782753270; Wed, 05 Feb 2025 11:12:33 -0800 (PST) Received: from stbsrv-and-02.and.broadcom.net ([192.19.144.250]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-72fe69ceb1csm12670842b3a.151.2025.02.05.11.12.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 05 Feb 2025 11:12:32 -0800 (PST) From: Jim Quinlan To: linux-pci@vger.kernel.org, Nicolas Saenz Julienne , Bjorn Helgaas , Lorenzo Pieralisi , Cyril Brulebois , Stanimir Varbanov , bcm-kernel-feedback-list@broadcom.com, jim2101024@gmail.com, james.quinlan@broadcom.com Cc: Florian Fainelli , Lorenzo Pieralisi , =?UTF-8?q?Krzysztof=20Wilczy=C5=84ski?= , Manivannan Sadhasivam , Rob Herring , linux-rpi-kernel@lists.infradead.org (moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE), linux-arm-kernel@lists.infradead.org (moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE), linux-kernel@vger.kernel.org (open list) Subject: [PATCH v1 3/6] PCI: brcmstb: Fix potential premature regluator disabling Date: Wed, 5 Feb 2025 14:12:03 -0500 Message-ID: <20250205191213.29202-4-james.quinlan@broadcom.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250205191213.29202-1-james.quinlan@broadcom.com> References: <20250205191213.29202-1-james.quinlan@broadcom.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" Our system for enabling and disabling regulators is designed to work only on the port driver below the root complex. The conditions to discriminate for this case should be the same when we are adding or removing the bus. Without this change the regulators may be disabled prematurely when a bus further down the tree is removed. Fixes: 9e6be018b263 ("PCI: brcmstb: Enable child bus device regulators from= DT") Signed-off-by: Jim Quinlan --- drivers/pci/controller/pcie-brcmstb.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/pci/controller/pcie-brcmstb.c b/drivers/pci/controller= /pcie-brcmstb.c index bf919467cbcd..4f5d751cbdd7 100644 --- a/drivers/pci/controller/pcie-brcmstb.c +++ b/drivers/pci/controller/pcie-brcmstb.c @@ -1441,7 +1441,7 @@ static void brcm_pcie_remove_bus(struct pci_bus *bus) struct subdev_regulators *sr =3D pcie->sr; struct device *dev =3D &bus->dev; =20 - if (!sr) + if (!sr || !bus->parent || !pci_is_root_bus(bus->parent)) return; =20 if (regulator_bulk_disable(sr->num_supplies, sr->supplies)) --=20 2.43.0 From nobody Sat Feb 7 19:45:55 2026 Received: from mail-pl1-f179.google.com (mail-pl1-f179.google.com [209.85.214.179]) (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 4A003205AB8 for ; Wed, 5 Feb 2025 19:13:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.179 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738782789; cv=none; b=fnXzfj2lHtM8PYbH1FMxyY/forPJ4jmjeAHmWEpZvmhL63AbOH+f2I9tC1ek591xYbtJKv6waZW3JOh+SxM3ikN5CdOynj2PU2+Ijb+A9MDG17AxnXyAwl4+C4Kgpdv3+5wjlBBuLH9I/o4YDHPwOfxdmAR75r2rgGUxQ+KrMag= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738782789; c=relaxed/simple; bh=tmKlWkoxyVVoBftC1tqR72Fa3nMd+vjFUErcYQ3Ogz8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=F9Rv/DgW3NR51406niv/a2KvZCWTvUlLoOVWSsq9A3ADJR3AMDlsF/yEvKOptmrbOhooIkUkVThAHtWF5taq6nm4xOIBNwL6pe8+aqkrNW79aQL2NcIXtqEXN/Fsxb9Jg82N9+alR1ZMI1Mc0uXoxf+o2463GhWJRBXNCKVcGSQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=broadcom.com; spf=fail smtp.mailfrom=broadcom.com; dkim=pass (1024-bit key) header.d=broadcom.com header.i=@broadcom.com header.b=f/6li2LR; arc=none smtp.client-ip=209.85.214.179 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=broadcom.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=broadcom.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=broadcom.com header.i=@broadcom.com header.b="f/6li2LR" Received: by mail-pl1-f179.google.com with SMTP id d9443c01a7336-21634338cfdso3611325ad.2 for ; Wed, 05 Feb 2025 11:13:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; t=1738782786; x=1739387586; 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=p2SP8UN+7O3+LtijH955HifaeFHXMbD1xCtBylyCBjw=; b=f/6li2LRa/J3WFAPNqmbqk+D1JoF7B/SQOUf3vMHrbmfS1efayd0oAfSdDyfP5e83Q ygsXUXWtvhF7lvpm5mDmg8tmdpT/SY+lqE/YtCi+Ips05BmM7hCyPeHURDgO9/2QPlxM 2Xv7SCmRE1pfOcrCCtyN1xUUB6UyHkgjQjd5g= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738782786; x=1739387586; 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=p2SP8UN+7O3+LtijH955HifaeFHXMbD1xCtBylyCBjw=; b=CRjZm6KZyv8vET61lCprC0c3yTEOoKC33uM1rylPl1kR7dC2gg8eiFuY9Eu2m/ifmK A8XSrzcyVATEQoykQUMCv7rOz67RxtCGPc4Z7u0Dzp5IuIQ8rcPbNETQNelN7p8eU5k9 lJvAbSjxpqHWLclzsNQHqDIiFJ8wMdPVjSJrOVANwuY9SfKcRYhNfF3z8spoJdC3rlZg 0lmJHXR2MWw/ljGbsCOSlGy7jMLztaH5XMgK0Q56qBqtCkxFd4+sZgWUb2Gsnrs2e/zp Txjf6Rj2cXPJ6G0Gn6yr4t8oLruLymQh8JVZaTE0SdGv8E6l97G4TfMubNzAeOcif30Z sgpw== X-Forwarded-Encrypted: i=1; AJvYcCVvXAGr8+rgMa9IHhhQTV6Fa8eWm6AMeascDnjM35Q36XuUflFYp0edFfvjlSOZMdz2oZ2xWfkX4+8AA7M=@vger.kernel.org X-Gm-Message-State: AOJu0Yx6EJNHQ1HLvORm5jZvfT8+4eJaLrUuqglX2XY2R+zgaumx17UQ SmquV0GYbylxufR0ZcUi9LzNsu3TI/T+XcM4AVH8R4b7oyHu0PE9uERMO+kYtw== X-Gm-Gg: ASbGncvW7qjoufw/G6W6E5ODosu6luvjJdh+hjC4BFWwSWbQ41nY94dFJWgIXlQ1HPq PLPhkMa/+W/EW+3hxiivpcJ/PFoGt6cKIyl8XuK/k4Amb4YcLLiPs5TjCmJsEM/AvgxBHWX/PpY zZKr9CwFeJpvKraeA2ppnQn9a0u2F/4mdl3+tFzq2M/lb24CwdvwcG+PJiJ8HsCowwxBJg7pg5A NXcYIVJI1kc/pfJxMPvckyfX5MExCX7x4Mu+lj24o0ES4nTTbl2wFoYgRRuoP10Qz/4o1QyFvh6 l7U6+oQhe4H6dC43gRODalTpsJdPQ4nerEmUJyiYHWV6gqucRZn+C9fEHgSjJScULBythpQ= X-Google-Smtp-Source: AGHT+IFWf34gqo2Cq3GC10EE4JpvnnXxd/baqFQ4/rfJGOY8K+FfkhKwIxsYtkyKK3/Ky0Uqi5YYwA== X-Received: by 2002:a05:6a00:2908:b0:72d:8fa2:9998 with SMTP id d2e1a72fcca58-7303513ac4amr6540559b3a.14.1738782756542; Wed, 05 Feb 2025 11:12:36 -0800 (PST) Received: from stbsrv-and-02.and.broadcom.net ([192.19.144.250]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-72fe69ceb1csm12670842b3a.151.2025.02.05.11.12.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 05 Feb 2025 11:12:36 -0800 (PST) From: Jim Quinlan To: linux-pci@vger.kernel.org, Nicolas Saenz Julienne , Bjorn Helgaas , Lorenzo Pieralisi , Cyril Brulebois , Stanimir Varbanov , bcm-kernel-feedback-list@broadcom.com, jim2101024@gmail.com, james.quinlan@broadcom.com Cc: Florian Fainelli , Lorenzo Pieralisi , =?UTF-8?q?Krzysztof=20Wilczy=C5=84ski?= , Manivannan Sadhasivam , Rob Herring , linux-rpi-kernel@lists.infradead.org (moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE), linux-arm-kernel@lists.infradead.org (moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE), linux-kernel@vger.kernel.org (open list) Subject: [PATCH v1 4/6] PCI: brcmstb: Use same constant table for config space access Date: Wed, 5 Feb 2025 14:12:04 -0500 Message-ID: <20250205191213.29202-5-james.quinlan@broadcom.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250205191213.29202-1-james.quinlan@broadcom.com> References: <20250205191213.29202-1-james.quinlan@broadcom.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" The constants EXT_CFG_DATA and EXT_CFG_INDEX vary by SOC. One of the map_bus methods used these constants, the other used different constants. Fortunately there was no problem because the SoCs that used the latter map_bus method all had the same register constants. Remove the redundant constants and adjust the code to use them. In addition, update EXT_CFG_DATA to use the 4k-page based config space access system, which is what the second map_bus method was already using. Signed-off-by: Jim Quinlan --- drivers/pci/controller/pcie-brcmstb.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/drivers/pci/controller/pcie-brcmstb.c b/drivers/pci/controller= /pcie-brcmstb.c index 4f5d751cbdd7..2d1969d7fd30 100644 --- a/drivers/pci/controller/pcie-brcmstb.c +++ b/drivers/pci/controller/pcie-brcmstb.c @@ -151,9 +151,6 @@ #define MSI_INT_MASK_SET 0x10 #define MSI_INT_MASK_CLR 0x14 =20 -#define PCIE_EXT_CFG_DATA 0x8000 -#define PCIE_EXT_CFG_INDEX 0x9000 - #define PCIE_RGR1_SW_INIT_1_PERST_MASK 0x1 #define PCIE_RGR1_SW_INIT_1_PERST_SHIFT 0x0 =20 @@ -728,8 +725,8 @@ static void __iomem *brcm_pcie_map_bus(struct pci_bus *= bus, =20 /* For devices, write to the config space index register */ idx =3D PCIE_ECAM_OFFSET(bus->number, devfn, 0); - writel(idx, pcie->base + PCIE_EXT_CFG_INDEX); - return base + PCIE_EXT_CFG_DATA + PCIE_ECAM_REG(where); + writel(idx, base + IDX_ADDR(pcie)); + return base + DATA_ADDR(pcie) + PCIE_ECAM_REG(where); } =20 static void __iomem *brcm7425_pcie_map_bus(struct pci_bus *bus, @@ -1712,7 +1709,7 @@ static void brcm_pcie_remove(struct platform_device *= pdev) static const int pcie_offsets[] =3D { [RGR1_SW_INIT_1] =3D 0x9210, [EXT_CFG_INDEX] =3D 0x9000, - [EXT_CFG_DATA] =3D 0x9004, + [EXT_CFG_DATA] =3D 0x8000, [PCIE_HARD_DEBUG] =3D 0x4204, [PCIE_INTR2_CPU_BASE] =3D 0x4300, }; @@ -1720,7 +1717,7 @@ static const int pcie_offsets[] =3D { static const int pcie_offsets_bcm7278[] =3D { [RGR1_SW_INIT_1] =3D 0xc010, [EXT_CFG_INDEX] =3D 0x9000, - [EXT_CFG_DATA] =3D 0x9004, + [EXT_CFG_DATA] =3D 0x8000, [PCIE_HARD_DEBUG] =3D 0x4204, [PCIE_INTR2_CPU_BASE] =3D 0x4300, }; @@ -1734,8 +1731,9 @@ static const int pcie_offsets_bcm7425[] =3D { }; =20 static const int pcie_offsets_bcm7712[] =3D { + [RGR1_SW_INIT_1] =3D 0x9210, [EXT_CFG_INDEX] =3D 0x9000, - [EXT_CFG_DATA] =3D 0x9004, + [EXT_CFG_DATA] =3D 0x8000, [PCIE_HARD_DEBUG] =3D 0x4304, [PCIE_INTR2_CPU_BASE] =3D 0x4400, }; --=20 2.43.0 From nobody Sat Feb 7 19:45:55 2026 Received: from mail-pj1-f44.google.com (mail-pj1-f44.google.com [209.85.216.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 8FCF3944F for ; Wed, 5 Feb 2025 19:12:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738782762; cv=none; b=Z6ItqQVvuX9dugjjXtVuT3vVKd72Yly75CDQymBmBfZoE0oR1/sbXAGMsf32eMsSAO028jEq2W3OZ5MsaiRG2esmrgsn/FPEzo4DDhswwI6zZfOURvFPz+Qx/pSh4LcxrlpUjkCWMdvq5GtmFPVBuJpuDVOKPkmdw8Grilq2iFw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738782762; c=relaxed/simple; bh=wZgft2YLjV2DroNV6XigKYbwwzbKeQIY9KdCoa4mICQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=rPwoejDemflwkGhPPEFt/ysnk7hvpOFPShSaMDdOUW2hCT7Ja1YCnKcKa07leG2tPw6D8T60VDIZFGM7/2jMprzy+euxtfgJqShVdpBK8YLWCBEEYVsVNAauitKqSFDoO6gPU1Ph+dd3ajwR3SX89pbOKoCYFHoGySfEpDctJPY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=broadcom.com; spf=fail smtp.mailfrom=broadcom.com; dkim=pass (1024-bit key) header.d=broadcom.com header.i=@broadcom.com header.b=gNETaXez; arc=none smtp.client-ip=209.85.216.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=broadcom.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=broadcom.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=broadcom.com header.i=@broadcom.com header.b="gNETaXez" Received: by mail-pj1-f44.google.com with SMTP id 98e67ed59e1d1-2f9d74037a7so77358a91.2 for ; Wed, 05 Feb 2025 11:12:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; t=1738782760; x=1739387560; 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=10mgnfIVzR+iSJ+OJSuQ8EcOXoSsF+yM91bimaJiDRM=; b=gNETaXezgNkXhyYIrmQJ9NUstck9E17lhxH3vgBSSteHFXDxiyQozJi3FefJvpTQM4 ozEEZK/Ccx8m+EhjhypuCY3hr/oPXXzPKaoNU1ZoaWuOydrQVwvPLHDL1xLSWzFJqlsa sYVdvtpj/VPihCFCpkC7AWnNu6vpa95xUvHZs= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738782760; x=1739387560; 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=10mgnfIVzR+iSJ+OJSuQ8EcOXoSsF+yM91bimaJiDRM=; b=IehryFS3LII62O9yGv0H5Wa3A8OQ8EvXDlA/E7C9K1+BLU7el0S9AohNEH9KYcqUbt ACxe4CBhCSOWKsjjlfPucV0LSUXUpHrunlzwtSia4ZdZA0a2Wb4rIUJdiqrRg/32shcv 1tpmate1zy9wsI4kkbV46LxYGJFouOJPIhKP47c2Vs/olg3qcLL7yKB6LDP8YnTCjVkQ ypfZABXlXOKxmguwScutLFR8IGQPSD53APf5DBsWzm03Hjh0Haqv2GJ9pSCILTEBWQqN Srp7KzR5ypysTbdaR3Ox/qXxckGJTWm66e2zdqeBFJ4AVVGTNKQrTFMh7+8L1tJCFWnw yFcw== X-Forwarded-Encrypted: i=1; AJvYcCVvGa6NQVaOxc40NWSpAvw6KI/KZTkOIXsqMfIJlB2GGDI2x414zqOiqX7Fp6Elm3XdAVG/wtbVRs3ci+s=@vger.kernel.org X-Gm-Message-State: AOJu0Yw53OVRheTv2f6UQm6ATcKfN0UM37rtF01juVK8po0LW1YI7fkd JnCclCpw9DKVqoBulFB4VsgiL/E/cNXLPHt492aGoH32oE8mI838EJpZDXTfzA== X-Gm-Gg: ASbGncvviin1SnZawwhaHSEKvLeAfqL+dqAUG0DG2wluSMQkF4gHDlXZ36Ci7kUe1kK kZHwWVIGXYkm4QVOl3lhWP6ll2o7JSzDvDosyldtp/lOYMMAqDOgkgtgkQY4mP5nZL/2wD7UBI6 d7bL3j0J7iHnE5+gm37LUIZ/aFOg+Pb2uDpQMmecCtZISJntrO0//k3wWCHbk3CeBXkYzxYw7nd ur0hNF02m2fHE8ywk9qQlOXGkHXvmg0PcuMeRuGsdYgtK+AaIaNG3G5Ck5rm8JoxwhADKhcjXc3 ioXd5z/JzqX61hb8WcmKMKw8fJPxM0P+RT1XhHZNUijO1BMSMYAiCNwyZUrQPxbL6JZTKyQ= X-Google-Smtp-Source: AGHT+IF/Wwlp9qYJd0K8y8zdsTfFgaW5Ghm0UX8Zc6UwKaMRKZ6CF/yzfZfIYoJNe7yUoNtnkLYNSA== X-Received: by 2002:a05:6a00:3905:b0:725:4615:a778 with SMTP id d2e1a72fcca58-7303511d28fmr6538015b3a.7.1738782759745; Wed, 05 Feb 2025 11:12:39 -0800 (PST) Received: from stbsrv-and-02.and.broadcom.net ([192.19.144.250]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-72fe69ceb1csm12670842b3a.151.2025.02.05.11.12.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 05 Feb 2025 11:12:39 -0800 (PST) From: Jim Quinlan To: linux-pci@vger.kernel.org, Nicolas Saenz Julienne , Bjorn Helgaas , Lorenzo Pieralisi , Cyril Brulebois , Stanimir Varbanov , bcm-kernel-feedback-list@broadcom.com, jim2101024@gmail.com, james.quinlan@broadcom.com Cc: Florian Fainelli , Lorenzo Pieralisi , =?UTF-8?q?Krzysztof=20Wilczy=C5=84ski?= , Manivannan Sadhasivam , Rob Herring , linux-rpi-kernel@lists.infradead.org (moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE), linux-arm-kernel@lists.infradead.org (moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE), linux-kernel@vger.kernel.org (open list) Subject: [PATCH v1 5/6] PCI: brcmstb: Make two changes in MDIO register fields Date: Wed, 5 Feb 2025 14:12:05 -0500 Message-ID: <20250205191213.29202-6-james.quinlan@broadcom.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250205191213.29202-1-james.quinlan@broadcom.com> References: <20250205191213.29202-1-james.quinlan@broadcom.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" The HW team has decided to "tighten" some field definitions in the MDIO packet format. Fortunately these two changes may be made in a backwards compatible manner. The CMD field used to be 12 bits and now is one. This change is backwards compatible because the field's starting bit position is unchanged and the only commands we've used have values 0 and 1. The PORT field's width has been changed from four to five bits. When written, the new bit is not contiguous with the other four. Fortunately, this change is backwards compatible because we have never used anything other than 0 for the port field's value. Signed-off-by: Jim Quinlan --- drivers/pci/controller/pcie-brcmstb.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/pci/controller/pcie-brcmstb.c b/drivers/pci/controller= /pcie-brcmstb.c index 2d1969d7fd30..da7b10036948 100644 --- a/drivers/pci/controller/pcie-brcmstb.c +++ b/drivers/pci/controller/pcie-brcmstb.c @@ -176,8 +176,9 @@ #define MDIO_PORT0 0x0 #define MDIO_DATA_MASK 0x7fffffff #define MDIO_PORT_MASK 0xf0000 +#define MDIO_PORT_EXT_MASK 0x200000 #define MDIO_REGAD_MASK 0xffff -#define MDIO_CMD_MASK 0xfff00000 +#define MDIO_CMD_MASK 0x00100000 #define MDIO_CMD_READ 0x1 #define MDIO_CMD_WRITE 0x0 #define MDIO_DATA_DONE_MASK 0x80000000 @@ -328,6 +329,7 @@ static u32 brcm_pcie_mdio_form_pkt(int port, int regad,= int cmd) { u32 pkt =3D 0; =20 + pkt |=3D FIELD_PREP(MDIO_PORT_EXT_MASK, port >> 4); pkt |=3D FIELD_PREP(MDIO_PORT_MASK, port); pkt |=3D FIELD_PREP(MDIO_REGAD_MASK, regad); pkt |=3D FIELD_PREP(MDIO_CMD_MASK, cmd); --=20 2.43.0 From nobody Sat Feb 7 19:45:55 2026 Received: from mail-pl1-f173.google.com (mail-pl1-f173.google.com [209.85.214.173]) (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 6BF511FFC4F for ; Wed, 5 Feb 2025 19:12:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.173 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738782764; cv=none; b=SWEVMYnBMgIyrpgoLR1ADtFxNpPw+hIse51b8TavSGDpfk0IkEqT7Ubz8p14qtnaM+gKYmeEDykO2ChvjEqnX319idJAnj0hSgSnhtXVX9gxgouEMtCqjwU7y4zkhj0X/AU3rmrD0GbD/3SqZA2j4EyQnJEFMb7YLCN8o2VwBx8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738782764; c=relaxed/simple; bh=QXoJSTy8Qec/wV8sRxRD2VX9SrJlzd1/bepXCqAcBgA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=NKydW0VLP6TX2SGNxUEvdw6g7gS39ltLn97eXi3cr2zyDlScD5O1ocsbOtFZHBtqg1ofQYtvquGL5yJmgD+GnYAKgDuT5xuROBgWaBkK8Jab1Yd5/bkMqVV3L7JM08iS1Bwmdcyzw7RWSpteOqx/ZBgqkFQjzTcJu+9xn1SYPZQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=broadcom.com; spf=fail smtp.mailfrom=broadcom.com; dkim=pass (1024-bit key) header.d=broadcom.com header.i=@broadcom.com header.b=CWZ0OJDO; arc=none smtp.client-ip=209.85.214.173 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=broadcom.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=broadcom.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=broadcom.com header.i=@broadcom.com header.b="CWZ0OJDO" Received: by mail-pl1-f173.google.com with SMTP id d9443c01a7336-21f1d4111d4so2798075ad.0 for ; Wed, 05 Feb 2025 11:12:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; t=1738782763; x=1739387563; 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=X0ZTsssVvHzsc0e1DxaZAFNaCnLOP9m4uEkLrLv90vI=; b=CWZ0OJDOmwGP708rLU98leg72Av/z5pMPNC1hmOYXttjcyY4glyYSPI0l5gogUSePi nkAXgToTQLOCnbjZrs6B8aUVm38gDbmi1qfYR1UdVDNJmIWmlBeHJUBS+fav/Inz543S ealfqxIFkE+375jly1Rs9TCuM7Icg47RPyuoM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738782763; x=1739387563; 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=X0ZTsssVvHzsc0e1DxaZAFNaCnLOP9m4uEkLrLv90vI=; b=RfNNOZUF3HwLdUQ8Gom7Iye1uYlZzftkCsmJQ+r6EtefTbD4OqhglxX3KBI+LIuWKh JYuyXBlezJCMDnMg0hsROqjx/OKGmjar6hqS1OBnEaiM9JiInUs7SvGSNJNRRMBbzfiI bO3t6rNC4fFdGp4hhkbwkHw3N/7aYVttQ8xSKR3L9LEX/l5qJIn57XFtvEQC1Z7kF2lm jPUGZFDXpAZpDUGr/clAR2MNnSFPGHDUvDY4G9tkTtjFddS1VBqlvydN6yBHIBA2BzPv dqvMmVYW0WPnS2vHOWaFL3uGpjRaAaCfK40fnvV9Vd0Uo33QLh1fpBoSoFdUeg5/qy7l kD9Q== X-Forwarded-Encrypted: i=1; AJvYcCWUFZ3XVJWL2Agssn45AuX1cEK1sv6jbu78lNImLwYIy1m1wwzo+er3mahuTWip7qareEuFS1hHJJO552s=@vger.kernel.org X-Gm-Message-State: AOJu0Yzi9uUsxa4FAOfpvBZO834a+mNd2YsZqSqtsAZ5jcRJkJK0ep7D lnA4Ftjkdy6U07bU/R4zy5N3LNYkG/3mkJEd7dm1CtSBqlXjQGkF0E6LE1I2Mg== X-Gm-Gg: ASbGncuxsPESSjXGtgVxbPvI1eREnJm3ctcRDcZOlPzkxCqe2h3eQGjXJiPgLCliYCJ Gc2OfB6yZtIbXPsIKidOyTDlV+U7KCYtJznmUSJ1s8YYDPVrKHTc/LG89hMEyF1XwX7z3v1vx5N Xy+jtjDFmpAdwqBVc31L1AiKTpklWaFnl8Gdh7UNY3cqImIAOZOtp6uq5gH7FPYTvgef0WR5mxm vJ+tCAApUujzX3pbXGvCZus1Q89QxC36cYGoHe9UaUiSoAHlA/ZDy39J4ksQE5hPnsrHw2noFyr ULls40G4ChL8qgZ39mMr1uq9LSLAbDR0dpnVybtHoW8R3C/gjkuvUgYwCin436F9sCjd72A= X-Google-Smtp-Source: AGHT+IEXcZFzv42qZ8TJ/klgDwqqS/+A00tWNgeMvaWCk7kbJI8shXduYKzokviPveKCUA311SJ4wA== X-Received: by 2002:a05:6a00:851:b0:725:96f2:9e63 with SMTP id d2e1a72fcca58-73035224858mr7975973b3a.24.1738782762954; Wed, 05 Feb 2025 11:12:42 -0800 (PST) Received: from stbsrv-and-02.and.broadcom.net ([192.19.144.250]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-72fe69ceb1csm12670842b3a.151.2025.02.05.11.12.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 05 Feb 2025 11:12:42 -0800 (PST) From: Jim Quinlan To: linux-pci@vger.kernel.org, Nicolas Saenz Julienne , Bjorn Helgaas , Lorenzo Pieralisi , Cyril Brulebois , Stanimir Varbanov , bcm-kernel-feedback-list@broadcom.com, jim2101024@gmail.com, james.quinlan@broadcom.com Cc: Florian Fainelli , Lorenzo Pieralisi , =?UTF-8?q?Krzysztof=20Wilczy=C5=84ski?= , Manivannan Sadhasivam , Rob Herring , linux-rpi-kernel@lists.infradead.org (moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE), linux-arm-kernel@lists.infradead.org (moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE), linux-kernel@vger.kernel.org (open list) Subject: [PATCH v1 6/6] PCI: brcmstb: Cast an int variable to an irq_hw_number_t Date: Wed, 5 Feb 2025 14:12:06 -0500 Message-ID: <20250205191213.29202-7-james.quinlan@broadcom.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250205191213.29202-1-james.quinlan@broadcom.com> References: <20250205191213.29202-1-james.quinlan@broadcom.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" Just make it clear to the reader that there is a conversion happening, in this case from an int type to an irq_hw_number_t, an unsigned long int. Signed-off-by: Jim Quinlan --- drivers/pci/controller/pcie-brcmstb.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/pci/controller/pcie-brcmstb.c b/drivers/pci/controller= /pcie-brcmstb.c index da7b10036948..1e24e7fc895c 100644 --- a/drivers/pci/controller/pcie-brcmstb.c +++ b/drivers/pci/controller/pcie-brcmstb.c @@ -560,7 +560,7 @@ static int brcm_irq_domain_alloc(struct irq_domain *dom= ain, unsigned int virq, return hwirq; =20 for (i =3D 0; i < nr_irqs; i++) - irq_domain_set_info(domain, virq + i, hwirq + i, + irq_domain_set_info(domain, virq + i, (irq_hw_number_t)hwirq + i, &brcm_msi_bottom_irq_chip, domain->host_data, handle_edge_irq, NULL, NULL); return 0; --=20 2.43.0