linux/drivers/usb/host/uhci-hub.c

// SPDX-License-Identifier: GPL-2.0
/*
 * Universal Host Controller Interface driver for USB.
 *
 * Maintainer: Alan Stern <[email protected]>
 *
 * (C) Copyright 1999 Linus Torvalds
 * (C) Copyright 1999-2002 Johannes Erdfelt, [email protected]
 * (C) Copyright 1999 Randy Dunlap
 * (C) Copyright 1999 Georg Acher, [email protected]
 * (C) Copyright 1999 Deti Fliegl, [email protected]
 * (C) Copyright 1999 Thomas Sailer, [email protected]
 * (C) Copyright 2004 Alan Stern, [email protected]
 */

static const __u8 root_hub_hub_des[] =;

#define UHCI_RH_MAXCHILD

/* must write as zeroes */
#define WZ_BITS

/* status change bits:  nonzero writes will clear */
#define RWC_BITS

/* suspend/resume bits: port suspended or port resuming */
#define SUSPEND_BITS

/* A port that either is connected or has a changed-bit set will prevent
 * us from AUTO_STOPPING.
 */
static int any_ports_active(struct uhci_hcd *uhci)
{}

static inline int get_hub_status_data(struct uhci_hcd *uhci, char *buf)
{}

#define CLR_RH_PORTSTAT(x)

#define SET_RH_PORTSTAT(x)

/* UHCI controllers don't automatically stop resume signalling after 20 msec,
 * so we have to poll and check timeouts in order to take care of it.
 */
static void uhci_finish_suspend(struct uhci_hcd *uhci, int port,
		unsigned long port_addr)
{}

/* Wait for the UHCI controller in HP's iLO2 server management chip.
 * It can take up to 250 us to finish a reset and set the CSC bit.
 */
static void wait_for_HP(struct uhci_hcd *uhci, unsigned long port_addr)
{}

static void uhci_check_ports(struct uhci_hcd *uhci)
{}

static int uhci_hub_status_data(struct usb_hcd *hcd, char *buf)
{}

/* size of returned buffer is part of USB spec */
static int uhci_hub_control(struct usb_hcd *hcd, u16 typeReq, u16 wValue,
			u16 wIndex, char *buf, u16 wLength)
{}