[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <d8e12243-20d2-4a37-92d1-df6b9b32dc63@broadcom.com>
Date: Fri, 4 Oct 2024 09:14:25 -0700
From: Florian Fainelli <florian.fainelli@...adcom.com>
To: Sam Edwards <cfsworks@...il.com>, Justin Chen <justin.chen@...adcom.com>,
Al Cooper <alcooperx@...il.com>
Cc: Broadcom internal kernel review list
<bcm-kernel-feedback-list@...adcom.com>, Vinod Koul <vkoul@...nel.org>,
Kishon Vijay Abraham I <kishon@...nel.org>, linux-kernel@...r.kernel.org,
linux-phy@...ts.infradead.org
Subject: Re: [PATCH v2 1/2] phy: usb: Fix missing elements in BCM4908 USB init
array
On 10/3/24 20:41, Sam Edwards wrote:
> The Broadcom USB PHY driver contains a lookup table
> (`reg_bits_map_tables`) to resolve register bitmaps unique to certain
> versions of the USB PHY as found in various Broadcom chip families. A
> recent commit (see 'fixes' tag) introduced two new elements to each chip
> family in this table -- except for one: BCM4908. This resulted in the
> xHCI controller not being initialized correctly, causing a panic on
> boot.
Yes, I think I see what happened here, we took the patch in the "fixes"
tag from the our downstream tree, and it applied just fine, we will keep
a closer eye on other entries in the future.
>
> The next patch will update this table to use designated initializers in
> order to prevent this from happening again. For now, just add back the
> missing array elements to resolve the regression.
Out of curiosity, can you check whether building with
-Wmissing-field-initializers would have caught this?
>
> Fixes: 4536fe9640b6 ("phy: usb: suppress OC condition for 7439b2")
> Signed-off-by: Sam Edwards <CFSworks@...il.com>
Reviewed-by: Florian Fainelli <florian.fainelli@...adcom.com>
> ---
> drivers/phy/broadcom/phy-brcm-usb-init.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/phy/broadcom/phy-brcm-usb-init.c b/drivers/phy/broadcom/phy-brcm-usb-init.c
> index 39536b6d96a9..5ebb3a616115 100644
> --- a/drivers/phy/broadcom/phy-brcm-usb-init.c
> +++ b/drivers/phy/broadcom/phy-brcm-usb-init.c
> @@ -220,6 +220,8 @@ usb_reg_bits_map_table[BRCM_FAMILY_COUNT][USB_CTRL_SELECTOR_COUNT] = {
> 0, /* USB_CTRL_SETUP_SCB2_EN_MASK */
> 0, /* USB_CTRL_SETUP_SS_EHCI64BIT_EN_MASK */
> 0, /* USB_CTRL_SETUP_STRAP_IPP_SEL_MASK */
> + 0, /* USB_CTRL_SETUP_OC3_DISABLE_PORT0_MASK */
> + 0, /* USB_CTRL_SETUP_OC3_DISABLE_PORT1_MASK */
> 0, /* USB_CTRL_SETUP_OC3_DISABLE_MASK */
> 0, /* USB_CTRL_PLL_CTL_PLL_IDDQ_PWRDN_MASK */
> 0, /* USB_CTRL_USB_PM_BDC_SOFT_RESETB_MASK */
--
Florian
Powered by blists - more mailing lists