X-Git-Url: https://git.librecmc.org/?p=oweals%2Fu-boot.git;a=blobdiff_plain;f=common%2Fusb_hub.c;h=25c2ac43450db8b92cba39fbab8dd9c9b47ebe21;hp=b46dfa16ccf1285d5ff9f2f142461f6146dd06ab;hb=ba742b839c524f7723799d750a540ad3fe70ca7f;hpb=6c7010b779ef29a40ed66acc414f65d2f4b75ced diff --git a/common/usb_hub.c b/common/usb_hub.c index b46dfa16cc..25c2ac4345 100644 --- a/common/usb_hub.c +++ b/common/usb_hub.c @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: GPL-2.0+ /* * Most of this source has been derived from the Linux USB * project: @@ -13,8 +14,6 @@ * * Adapted for U-Boot: * (C) Copyright 2001 Denis Peter, MPL AG Switzerland - * - * SPDX-License-Identifier: GPL-2.0+ */ /**************************************************************************** @@ -25,6 +24,7 @@ #include #include #include +#include #include #include #include @@ -37,8 +37,6 @@ #endif #include -DECLARE_GLOBAL_DATA_PTR; - #include #define USB_BUFSIZ 512 @@ -67,7 +65,7 @@ static inline bool usb_hub_is_superspeed(struct usb_device *hdev) return hdev->descriptor.bDeviceProtocol == 3; } -#ifdef CONFIG_DM_USB +#if CONFIG_IS_ENABLED(DM_USB) bool usb_hub_is_root_hub(struct udevice *hub) { if (device_get_uclass_id(hub->parent) != UCLASS_USB_HUB) @@ -128,7 +126,7 @@ int usb_get_port_status(struct usb_device *dev, int port, void *data) USB_REQ_GET_STATUS, USB_DIR_IN | USB_RT_PORT, 0, port, data, sizeof(struct usb_port_status), USB_CNTL_TIMEOUT); -#ifdef CONFIG_DM_USB +#if CONFIG_IS_ENABLED(DM_USB) if (ret < 0) return ret; @@ -212,7 +210,7 @@ static void usb_hub_power_on(struct usb_hub_device *hub) max(100, (int)pgood_delay) + 1000); } -#ifndef CONFIG_DM_USB +#if !CONFIG_IS_ENABLED(DM_USB) static struct usb_hub_device hub_dev[USB_MAX_HUB]; static int usb_hub_index; @@ -236,26 +234,18 @@ static struct usb_hub_device *usb_hub_allocate(void) #define MAX_TRIES 5 -static inline char *portspeed(int portstatus) +static inline const char *portspeed(int portstatus) { - char *speed_str; - switch (portstatus & USB_PORT_STAT_SPEED_MASK) { case USB_PORT_STAT_SUPER_SPEED: - speed_str = "5 Gb/s"; - break; + return "5 Gb/s"; case USB_PORT_STAT_HIGH_SPEED: - speed_str = "480 Mb/s"; - break; + return "480 Mb/s"; case USB_PORT_STAT_LOW_SPEED: - speed_str = "1.5 Mb/s"; - break; + return "1.5 Mb/s"; default: - speed_str = "12 Mb/s"; - break; + return "12 Mb/s"; } - - return speed_str; } /** @@ -276,7 +266,7 @@ static int usb_hub_port_reset(struct usb_device *dev, int port, unsigned short portstatus, portchange; int delay = HUB_SHORT_RESET_TIME; /* start with short reset delay */ -#ifdef CONFIG_DM_USB +#if CONFIG_IS_ENABLED(DM_USB) debug("%s: resetting '%s' port %d...\n", __func__, dev->dev->name, port + 1); #else @@ -397,7 +387,7 @@ int usb_hub_port_connect_change(struct usb_device *dev, int port) break; } -#ifdef CONFIG_DM_USB +#if CONFIG_IS_ENABLED(DM_USB) struct udevice *child; ret = usb_scan_device(dev->dev, port + 1, speed, &child); @@ -607,7 +597,7 @@ static struct usb_hub_device *usb_get_hub_device(struct usb_device *dev) { struct usb_hub_device *hub; -#ifndef CONFIG_DM_USB +#if !CONFIG_IS_ENABLED(DM_USB) /* "allocate" Hub device */ hub = usb_hub_allocate(); #else @@ -791,7 +781,7 @@ static int usb_hub_configure(struct usb_device *dev) (le16_to_cpu(hubsts->wHubStatus) & HUB_STATUS_OVERCURRENT) ? \ "" : "no "); -#ifdef CONFIG_DM_USB +#if CONFIG_IS_ENABLED(DM_USB) /* * Update USB host controller's internal representation of this hub * after the hub descriptor is fetched. @@ -933,7 +923,7 @@ int usb_hub_probe(struct usb_device *dev, int ifnum) return ret; } -#ifdef CONFIG_DM_USB +#if CONFIG_IS_ENABLED(DM_USB) int usb_hub_scan(struct udevice *hub) { struct usb_device *udev = dev_get_parent_priv(hub);