Re: [U-Boot] [PATCH 05/23] usb: pci: Use pci_find_class() to find the device

2015-01-27 Thread Marek Vasut
On Tuesday, January 27, 2015 at 09:53:01 PM, Simon Glass wrote:
> Hi Marek,

Hi Simon,

> On 27 January 2015 at 10:50, Marek Vasut  wrote:
> > On Tuesday, January 27, 2015 at 02:23:03 AM, Simon Glass wrote:
> >> Use the new utility function instead of local code.
> >> 
> >> Signed-off-by: Simon Glass 
> >> ---
> >> 
> >>  drivers/usb/host/ehci-pci.c | 53
> >> 
> >> + 1 file changed, 1
> >> insertion(+), 52 deletions(-)
> > 
> > Nice!
> > 
> > Acked-by: Marek Vasut 
> > 
> > Do you want to pick it through the x86 tree or shall I pick it through
> > USB ?
> 
> I think x86 is better since it is part of a series.

I agree, thanks!

Best regards,
Marek Vasut
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 05/23] usb: pci: Use pci_find_class() to find the device

2015-01-27 Thread Simon Glass
Hi Marek,

On 27 January 2015 at 10:50, Marek Vasut  wrote:
> On Tuesday, January 27, 2015 at 02:23:03 AM, Simon Glass wrote:
>> Use the new utility function instead of local code.
>>
>> Signed-off-by: Simon Glass 
>> ---
>>
>>  drivers/usb/host/ehci-pci.c | 53
>> + 1 file changed, 1
>> insertion(+), 52 deletions(-)
>
> Nice!
>
> Acked-by: Marek Vasut 
>
> Do you want to pick it through the x86 tree or shall I pick it through USB ?
>

I think x86 is better since it is part of a series.

Regards,
Simon
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 05/23] usb: pci: Use pci_find_class() to find the device

2015-01-27 Thread Marek Vasut
On Tuesday, January 27, 2015 at 02:23:03 AM, Simon Glass wrote:
> Use the new utility function instead of local code.
> 
> Signed-off-by: Simon Glass 
> ---
> 
>  drivers/usb/host/ehci-pci.c | 53
> + 1 file changed, 1
> insertion(+), 52 deletions(-)

Nice!

Acked-by: Marek Vasut 

Do you want to pick it through the x86 tree or shall I pick it through USB ?

Best regards,
Marek Vasut
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 05/23] usb: pci: Use pci_find_class() to find the device

2015-01-27 Thread Bin Meng
On Tue, Jan 27, 2015 at 9:23 AM, Simon Glass  wrote:
> Use the new utility function instead of local code.
>
> Signed-off-by: Simon Glass 
> ---
>
>  drivers/usb/host/ehci-pci.c | 53 
> +
>  1 file changed, 1 insertion(+), 52 deletions(-)
>
> diff --git a/drivers/usb/host/ehci-pci.c b/drivers/usb/host/ehci-pci.c
> index 991b199..b9eabc5 100644
> --- a/drivers/usb/host/ehci-pci.c
> +++ b/drivers/usb/host/ehci-pci.c
> @@ -34,57 +34,6 @@ static struct pci_device_id ehci_pci_ids[] = {
> {0, 0}
>  };
>  #else
> -static pci_dev_t ehci_find_class(int index)
> -{
> -   int bus;
> -   int devnum;
> -   pci_dev_t bdf;
> -   uint32_t class;
> -
> -   for (bus = 0; bus <= pci_last_busno(); bus++) {
> -   for (devnum = 0; devnum < PCI_MAX_PCI_DEVICES-1; devnum++) {
> -   pci_read_config_dword(PCI_BDF(bus, devnum, 0),
> - PCI_CLASS_REVISION, &class);
> -   if (class >> 16 == 0x)
> -   continue;
> -
> -   for (bdf = PCI_BDF(bus, devnum, 0);
> -   bdf <= PCI_BDF(bus, devnum,
> -   PCI_MAX_PCI_FUNCTIONS - 1);
> -   bdf += PCI_BDF(0, 0, 1)) {
> -   pci_read_config_dword(bdf, PCI_CLASS_REVISION,
> - &class);
> -   class >>= 8;
> -   /*
> -* Here be dragons! In case we have multiple
> -* PCI EHCI controllers, this function will
> -* be called multiple times as well. This
> -* function will scan the PCI busses, always
> -* starting from bus 0, device 0, function 0,
> -* until it finds an USB controller. The USB
> -* stack gives us an 'index' of a controller
> -* that is currently being registered, which
> -* is a number, starting from 0 and growing
> -* in ascending order as controllers are 
> added.
> -* To avoid probing the same controller in tne
> -* subsequent runs of this function, we will
> -* skip 'index - 1' detected controllers and
> -* report the index'th controller.
> -*/
> -   if (class != PCI_CLASS_SERIAL_USB_EHCI)
> -   continue;
> -   if (index) {
> -   index--;
> -   continue;
> -   }
> -   /* Return index'th controller. */
> -   return bdf;
> -   }
> -   }
> -   }
> -
> -   return -ENODEV;
> -}
>  #endif
>
>  /*
> @@ -102,7 +51,7 @@ int ehci_hcd_init(int index, enum usb_init_type init,
>  #ifdef CONFIG_PCI_EHCI_DEVICE
> pdev = pci_find_devices(ehci_pci_ids, CONFIG_PCI_EHCI_DEVICE);
>  #else
> -   pdev = ehci_find_class(index);
> +   pdev = pci_find_class(PCI_CLASS_SERIAL_USB_EHCI, index);
>  #endif
> if (pdev < 0) {
> printf("EHCI host controller not found\n");
> --

Reviewed-by: Bin Meng 
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH 05/23] usb: pci: Use pci_find_class() to find the device

2015-01-26 Thread Simon Glass
Use the new utility function instead of local code.

Signed-off-by: Simon Glass 
---

 drivers/usb/host/ehci-pci.c | 53 +
 1 file changed, 1 insertion(+), 52 deletions(-)

diff --git a/drivers/usb/host/ehci-pci.c b/drivers/usb/host/ehci-pci.c
index 991b199..b9eabc5 100644
--- a/drivers/usb/host/ehci-pci.c
+++ b/drivers/usb/host/ehci-pci.c
@@ -34,57 +34,6 @@ static struct pci_device_id ehci_pci_ids[] = {
{0, 0}
 };
 #else
-static pci_dev_t ehci_find_class(int index)
-{
-   int bus;
-   int devnum;
-   pci_dev_t bdf;
-   uint32_t class;
-
-   for (bus = 0; bus <= pci_last_busno(); bus++) {
-   for (devnum = 0; devnum < PCI_MAX_PCI_DEVICES-1; devnum++) {
-   pci_read_config_dword(PCI_BDF(bus, devnum, 0),
- PCI_CLASS_REVISION, &class);
-   if (class >> 16 == 0x)
-   continue;
-
-   for (bdf = PCI_BDF(bus, devnum, 0);
-   bdf <= PCI_BDF(bus, devnum,
-   PCI_MAX_PCI_FUNCTIONS - 1);
-   bdf += PCI_BDF(0, 0, 1)) {
-   pci_read_config_dword(bdf, PCI_CLASS_REVISION,
- &class);
-   class >>= 8;
-   /*
-* Here be dragons! In case we have multiple
-* PCI EHCI controllers, this function will
-* be called multiple times as well. This
-* function will scan the PCI busses, always
-* starting from bus 0, device 0, function 0,
-* until it finds an USB controller. The USB
-* stack gives us an 'index' of a controller
-* that is currently being registered, which
-* is a number, starting from 0 and growing
-* in ascending order as controllers are added.
-* To avoid probing the same controller in tne
-* subsequent runs of this function, we will
-* skip 'index - 1' detected controllers and
-* report the index'th controller.
-*/
-   if (class != PCI_CLASS_SERIAL_USB_EHCI)
-   continue;
-   if (index) {
-   index--;
-   continue;
-   }
-   /* Return index'th controller. */
-   return bdf;
-   }
-   }
-   }
-
-   return -ENODEV;
-}
 #endif
 
 /*
@@ -102,7 +51,7 @@ int ehci_hcd_init(int index, enum usb_init_type init,
 #ifdef CONFIG_PCI_EHCI_DEVICE
pdev = pci_find_devices(ehci_pci_ids, CONFIG_PCI_EHCI_DEVICE);
 #else
-   pdev = ehci_find_class(index);
+   pdev = pci_find_class(PCI_CLASS_SERIAL_USB_EHCI, index);
 #endif
if (pdev < 0) {
printf("EHCI host controller not found\n");
-- 
2.2.0.rc0.207.ga3a616c

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot