ChangeSet 1.1525.6.4, 2003/07/01 13:30:27-07:00, [EMAIL PROTECTED]

[PATCH] USB: move ehci's sysfs files to the class device instead of the pci device.


 drivers/usb/host/ehci-dbg.c |   51 ++++++++++++++++++++++++--------------------
 1 files changed, 28 insertions(+), 23 deletions(-)


diff -Nru a/drivers/usb/host/ehci-dbg.c b/drivers/usb/host/ehci-dbg.c
--- a/drivers/usb/host/ehci-dbg.c       Tue Jul  1 14:22:46 2003
+++ b/drivers/usb/host/ehci-dbg.c       Tue Jul  1 14:22:46 2003
@@ -392,9 +392,10 @@
 }
 
 static ssize_t
-show_async (struct device *dev, char *buf)
+show_async (struct class_device *class_dev, char *buf)
 {
-       struct pci_dev          *pdev;
+       struct usb_bus          *bus;
+       struct usb_hcd          *hcd;
        struct ehci_hcd         *ehci;
        unsigned long           flags;
        unsigned                temp, size;
@@ -403,8 +404,9 @@
 
        *buf = 0;
 
-       pdev = container_of (dev, struct pci_dev, dev);
-       ehci = container_of (pci_get_drvdata (pdev), struct ehci_hcd, hcd);
+       bus = to_usb_bus(class_dev);
+       hcd = bus->hcpriv;
+       ehci = hcd_to_ehci (hcd);
        next = buf;
        size = PAGE_SIZE;
 
@@ -427,14 +429,15 @@
 
        return strlen (buf);
 }
-static DEVICE_ATTR (async, S_IRUGO, show_async, NULL);
+static CLASS_DEVICE_ATTR (async, S_IRUGO, show_async, NULL);
 
 #define DBG_SCHED_LIMIT 64
 
 static ssize_t
-show_periodic (struct device *dev, char *buf)
+show_periodic (struct class_device *class_dev, char *buf)
 {
-       struct pci_dev          *pdev;
+       struct usb_bus          *bus;
+       struct usb_hcd          *hcd;
        struct ehci_hcd         *ehci;
        unsigned long           flags;
        union ehci_shadow       p, *seen;
@@ -446,8 +449,9 @@
                return 0;
        seen_count = 0;
 
-       pdev = container_of (dev, struct pci_dev, dev);
-       ehci = container_of (pci_get_drvdata (pdev), struct ehci_hcd, hcd);
+       bus = to_usb_bus(class_dev);
+       hcd = bus->hcpriv;
+       ehci = hcd_to_ehci (hcd);
        next = buf;
        size = PAGE_SIZE;
 
@@ -535,14 +539,15 @@
 
        return PAGE_SIZE - size;
 }
-static DEVICE_ATTR (periodic, S_IRUGO, show_periodic, NULL);
+static CLASS_DEVICE_ATTR (periodic, S_IRUGO, show_periodic, NULL);
 
 #undef DBG_SCHED_LIMIT
 
 static ssize_t
-show_registers (struct device *dev, char *buf)
+show_registers (struct class_device *class_dev, char *buf)
 {
-       struct pci_dev          *pdev;
+       struct usb_bus          *bus;
+       struct usb_hcd          *hcd;
        struct ehci_hcd         *ehci;
        unsigned long           flags;
        unsigned                temp, size, i;
@@ -550,9 +555,9 @@
        static char             fmt [] = "%*s\n";
        static char             label [] = "";
 
-       pdev = container_of (dev, struct pci_dev, dev);
-       ehci = container_of (pci_get_drvdata (pdev), struct ehci_hcd, hcd);
-
+       bus = to_usb_bus(class_dev);
+       hcd = bus->hcpriv;
+       ehci = hcd_to_ehci (hcd);
        next = buf;
        size = PAGE_SIZE;
 
@@ -562,7 +567,7 @@
        i = readw (&ehci->caps->hci_version);
        temp = snprintf (next, size,
                "%s\nEHCI %x.%02x, hcd state %d (driver " DRIVER_VERSION ")\n",
-               pdev->dev.name,
+               hcd->pdev->dev.name,
                i >> 8, i & 0x0ff, ehci->hcd.state);
        size -= temp;
        next += temp;
@@ -636,20 +641,20 @@
 
        return PAGE_SIZE - size;
 }
-static DEVICE_ATTR (registers, S_IRUGO, show_registers, NULL);
+static CLASS_DEVICE_ATTR (registers, S_IRUGO, show_registers, NULL);
 
 static inline void create_debug_files (struct ehci_hcd *bus)
 {
-       device_create_file (&bus->hcd.pdev->dev, &dev_attr_async);
-       device_create_file (&bus->hcd.pdev->dev, &dev_attr_periodic);
-       device_create_file (&bus->hcd.pdev->dev, &dev_attr_registers);
+       class_device_create_file(&bus->hcd.self.class_dev, &class_device_attr_async);
+       class_device_create_file(&bus->hcd.self.class_dev, 
&class_device_attr_periodic);
+       class_device_create_file(&bus->hcd.self.class_dev, 
&class_device_attr_registers);
 }
 
 static inline void remove_debug_files (struct ehci_hcd *bus)
 {
-       device_remove_file (&bus->hcd.pdev->dev, &dev_attr_async);
-       device_remove_file (&bus->hcd.pdev->dev, &dev_attr_periodic);
-       device_remove_file (&bus->hcd.pdev->dev, &dev_attr_registers);
+       class_device_remove_file(&bus->hcd.self.class_dev, &class_device_attr_async);
+       class_device_remove_file(&bus->hcd.self.class_dev, 
&class_device_attr_periodic);
+       class_device_remove_file(&bus->hcd.self.class_dev, 
&class_device_attr_registers);
 }
 
 #endif /* STUB_DEBUG_FILES */



-------------------------------------------------------
This SF.Net email sponsored by: Free pre-built ASP.NET sites including
Data Reports, E-commerce, Portals, and Forums are available now.
Download today and enter to win an XBOX or Visual Studio .NET.
http://aspnet.click-url.com/go/psa00100006ave/direct;at.asp_061203_01/01
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to