Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

phy: usb: Fix missing elements in BCM4908 USB init array

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.

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.

Fixes: 4536fe9640b6 ("phy: usb: suppress OC condition for 7439b2")
Signed-off-by: Sam Edwards <CFSworks@gmail.com>
Reviewed-by: Justin Chen <justin.chen@broadcom.com>
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
Link: https://lore.kernel.org/r/20241004034131.1363813-2-CFSworks@gmail.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>

authored by

Sam Edwards and committed by
Vinod Koul
cb4c7df5 9852d85e

+2
+2
drivers/phy/broadcom/phy-brcm-usb-init.c
··· 220 220 0, /* USB_CTRL_SETUP_SCB2_EN_MASK */ 221 221 0, /* USB_CTRL_SETUP_SS_EHCI64BIT_EN_MASK */ 222 222 0, /* USB_CTRL_SETUP_STRAP_IPP_SEL_MASK */ 223 + 0, /* USB_CTRL_SETUP_OC3_DISABLE_PORT0_MASK */ 224 + 0, /* USB_CTRL_SETUP_OC3_DISABLE_PORT1_MASK */ 223 225 0, /* USB_CTRL_SETUP_OC3_DISABLE_MASK */ 224 226 0, /* USB_CTRL_PLL_CTL_PLL_IDDQ_PWRDN_MASK */ 225 227 0, /* USB_CTRL_USB_PM_BDC_SOFT_RESETB_MASK */