Skip to content

Commit

Permalink
usb: convert port_owners type from void * to struct dev_state *
Browse files Browse the repository at this point in the history
This patch is to convert port_owners type from void * to struct dev_state *
in order to make code more readable.

Acked-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Lan Tianyu <tianyu.lan@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  • Loading branch information
Lan Tianyu authored and Greg Kroah-Hartman committed Jul 6, 2012
1 parent 77c4400 commit 336c5c3
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 12 deletions.
21 changes: 12 additions & 9 deletions drivers/usb/core/hub.c
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ struct usb_hub {
u8 indicator[USB_MAXCHILDREN];
struct delayed_work leds;
struct delayed_work init_work;
void **port_owners;
struct dev_state **port_owners;
};

static inline int hub_is_superspeed(struct usb_device *hdev)
Expand Down Expand Up @@ -1271,7 +1271,8 @@ static int hub_configure(struct usb_hub *hub,

hdev->children = kzalloc(hdev->maxchild *
sizeof(struct usb_device *), GFP_KERNEL);
hub->port_owners = kzalloc(hdev->maxchild * sizeof(void *), GFP_KERNEL);
hub->port_owners = kzalloc(hdev->maxchild * sizeof(struct dev_state *),
GFP_KERNEL);
if (!hdev->children || !hub->port_owners) {
ret = -ENOMEM;
goto fail;
Expand Down Expand Up @@ -1649,7 +1650,7 @@ hub_ioctl(struct usb_interface *intf, unsigned int code, void *user_data)
* to one of these "claimed" ports, the program will "own" the device.
*/
static int find_port_owner(struct usb_device *hdev, unsigned port1,
void ***ppowner)
struct dev_state ***ppowner)
{
if (hdev->state == USB_STATE_NOTATTACHED)
return -ENODEV;
Expand All @@ -1664,10 +1665,11 @@ static int find_port_owner(struct usb_device *hdev, unsigned port1,
}

/* In the following three functions, the caller must hold hdev's lock */
int usb_hub_claim_port(struct usb_device *hdev, unsigned port1, void *owner)
int usb_hub_claim_port(struct usb_device *hdev, unsigned port1,
struct dev_state *owner)
{
int rc;
void **powner;
struct dev_state **powner;

rc = find_port_owner(hdev, port1, &powner);
if (rc)
Expand All @@ -1678,10 +1680,11 @@ int usb_hub_claim_port(struct usb_device *hdev, unsigned port1, void *owner)
return rc;
}

int usb_hub_release_port(struct usb_device *hdev, unsigned port1, void *owner)
int usb_hub_release_port(struct usb_device *hdev, unsigned port1,
struct dev_state *owner)
{
int rc;
void **powner;
struct dev_state **powner;

rc = find_port_owner(hdev, port1, &powner);
if (rc)
Expand All @@ -1692,10 +1695,10 @@ int usb_hub_release_port(struct usb_device *hdev, unsigned port1, void *owner)
return rc;
}

void usb_hub_release_all_ports(struct usb_device *hdev, void *owner)
void usb_hub_release_all_ports(struct usb_device *hdev, struct dev_state *owner)
{
int n;
void **powner;
struct dev_state **powner;

n = find_port_owner(hdev, 1, &powner);
if (n == 0) {
Expand Down
9 changes: 6 additions & 3 deletions drivers/usb/core/usb.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
#include <linux/pm.h>

struct dev_state;

/* Functions local to drivers/usb/core/ */

extern int usb_create_sysfs_dev_files(struct usb_device *dev);
Expand Down Expand Up @@ -41,10 +43,11 @@ extern void usb_forced_unbind_intf(struct usb_interface *intf);
extern void usb_rebind_intf(struct usb_interface *intf);

extern int usb_hub_claim_port(struct usb_device *hdev, unsigned port,
void *owner);
struct dev_state *owner);
extern int usb_hub_release_port(struct usb_device *hdev, unsigned port,
void *owner);
extern void usb_hub_release_all_ports(struct usb_device *hdev, void *owner);
struct dev_state *owner);
extern void usb_hub_release_all_ports(struct usb_device *hdev,
struct dev_state *owner);
extern bool usb_device_is_owned(struct usb_device *udev);

extern int usb_hub_init(void);
Expand Down

0 comments on commit 336c5c3

Please sign in to comment.