Am 9. Februar 2025 10:36:04 UTC schrieb Bernhard Beschow <shen...@gmail.com>:
>TYPE_CHIPIDEA models an IP block which is also used in TYPE_ZYNQ_MACHINE which
>itself is not an IMX device. CONFIG_ZYNQ selects CONFIG_USB_EHCI_SYSBUS while
>TYPE_CHIPIDEA is a separate compilation unit, so only works by accident if
>CONFIG_IMX is given. Fix that by extracting CONFIG_USB_CHIPIDEA from
>CONFIG_IMX.
>
>Fixes: 616ec12d0fcc "hw/arm/xilinx_zynq: Fix USB port instantiation"
>Signed-off-by: Bernhard Beschow <shen...@gmail.com>
>cc: qemu-stable
>---
> hw/arm/Kconfig | 6 +++++-
> hw/usb/Kconfig | 4 ++++
> hw/usb/meson.build | 2 +-
> 3 files changed, 10 insertions(+), 2 deletions(-)
Ping
>
>diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
>index 256013ca80..7eab3914d4 100644
>--- a/hw/arm/Kconfig
>+++ b/hw/arm/Kconfig
>@@ -303,7 +303,7 @@ config ZYNQ
> select PL330
> select SDHCI
> select SSI_M25P80
>- select USB_EHCI_SYSBUS
>+ select USB_CHIPIDEA
> select XILINX # UART
> select XILINX_AXI
> select XILINX_SPI
>@@ -489,6 +489,7 @@ config FSL_IMX25
> select IMX
> select IMX_FEC
> select IMX_I2C
>+ select USB_CHIPIDEA
> select WDT_IMX2
> select SDHCI
>
>@@ -516,6 +517,7 @@ config FSL_IMX6
> select PL310 # cache controller
> select PCI_EXPRESS_DESIGNWARE
> select SDHCI
>+ select USB_CHIPIDEA
> select OR_IRQ
>
> config ASPEED_SOC
>@@ -576,6 +578,7 @@ config FSL_IMX7
> select SDHCI
> select OR_IRQ
> select UNIMP
>+ select USB_CHIPIDEA
>
> config ARM_SMMUV3
> bool
>@@ -591,6 +594,7 @@ config FSL_IMX6UL
> select IMX_I2C
> select WDT_IMX2
> select SDHCI
>+ select USB_CHIPIDEA
> select UNIMP
>
> config MICROBIT
>diff --git a/hw/usb/Kconfig b/hw/usb/Kconfig
>index 5fbecd2f43..69c663be52 100644
>--- a/hw/usb/Kconfig
>+++ b/hw/usb/Kconfig
>@@ -143,3 +143,7 @@ config USB_DWC3
> config XLNX_USB_SUBSYS
> bool
> select USB_DWC3
>+
>+config USB_CHIPIDEA
>+ bool
>+ select USB_EHCI_SYSBUS
>diff --git a/hw/usb/meson.build b/hw/usb/meson.build
>index 1b4d1507e4..17360a5b5a 100644
>--- a/hw/usb/meson.build
>+++ b/hw/usb/meson.build
>@@ -25,8 +25,8 @@ system_ss.add(when: 'CONFIG_USB_XHCI_SYSBUS', if_true:
>files('hcd-xhci-sysbus.c'
> system_ss.add(when: 'CONFIG_USB_XHCI_NEC', if_true: files('hcd-xhci-nec.c'))
> system_ss.add(when: 'CONFIG_USB_DWC2', if_true: files('hcd-dwc2.c'))
> system_ss.add(when: 'CONFIG_USB_DWC3', if_true: files('hcd-dwc3.c'))
>+system_ss.add(when: 'CONFIG_USB_CHIPIDEA', if_true: files('chipidea.c'))
>
>-system_ss.add(when: 'CONFIG_IMX', if_true: files('chipidea.c'))
> system_ss.add(when: 'CONFIG_IMX_USBPHY', if_true: files('imx-usb-phy.c'))
> system_ss.add(when: 'CONFIG_VT82C686', if_true: files('vt82c686-uhci-pci.c'))
> system_ss.add(when: 'CONFIG_XLNX_VERSAL', if_true:
> files('xlnx-versal-usb2-ctrl-regs.c'))