usb: ohci: Use a flexible array member for portstatus

The struct is only used to overlay the MMIO region, so the behavior is
the same. This obsoletes the Kconfig option for the number of ports.

Signed-off-by: Samuel Holland <samuel@sholland.org>
diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
index 1aabe06..4efdd70 100644
--- a/drivers/usb/host/Kconfig
+++ b/drivers/usb/host/Kconfig
@@ -365,11 +365,6 @@
 	string "Display name for the OHCI controller"
 	depends on USB_OHCI_NEW && !DM_USB
 
-config SYS_USB_OHCI_MAX_ROOT_PORTS
-	int "Maximal number of ports of the root hub"
-	depends on USB_OHCI_NEW
-	default 1 if ARCH_SUNXI
-
 config SYS_OHCI_SWAP_REG_ACCESS
 	bool "Perform byte swapping on OHCI controller register accesses"
 	depends on USB_OHCI_NEW
diff --git a/drivers/usb/host/ohci.h b/drivers/usb/host/ohci.h
index 7699f2e..87ef190 100644
--- a/drivers/usb/host/ohci.h
+++ b/drivers/usb/host/ohci.h
@@ -146,14 +146,6 @@
 	u8		reserved_for_hc[116];
 } __attribute__((aligned(256)));
 
-
-/*
- * Maximum number of root hub ports.
- */
-#ifndef CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS
-#define CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS 1
-#endif
-
 /*
  * This is the structure of the OHCI controller's memory mapped I/O
  * region.  This is Memory Mapped I/O.	You must use the ohci_readl() and
@@ -186,7 +178,7 @@
 		__u32	a;
 		__u32	b;
 		__u32	status;
-		__u32	portstatus[CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS];
+		__u32	portstatus[];
 	} roothub;
 } __attribute__((aligned(32)));