Stefan Roese wrote:
> On Wednesday 17 December 2008, Michael Trimarchi wrote:
>   
>> USB ehci code cleanup. Use handshake instead of infinite while loop
>> to check the STD_ASS status
>>
>> Signed-off-by: Michael Trimarchi <trimarchimich...@yahoo.it>
>>
>> ---
>>  drivers/usb/usb_ehci_core.c |   53
>> ++++++++++++++++++++++--------------------- 1 files changed, 27
>> insertions(+), 26 deletions(-)
>>
>> diff --git a/drivers/usb/usb_ehci_core.c b/drivers/usb/usb_ehci_core.c
>> index 07e9a6b..21fd7d0 100644
>> --- a/drivers/usb/usb_ehci_core.c
>> +++ b/drivers/usb/usb_ehci_core.c
>> @@ -28,7 +28,7 @@
>>  #include "usb_ehci.h"
>>
>>  int rootdev;
>> -struct ehci_hccr *hccr;             /* R/O registers, not need for volatile 
>> */
>> +struct ehci_hccr *hccr;     /* R/O registers, not need for volatile */
>>  volatile struct ehci_hcor *hcor;
>>
>>  static uint16_t portreset;
>> @@ -106,20 +106,19 @@ static struct descriptor {
>>  #define ehci_is_TDI()       (0)
>>  #endif
>>
>> -static int handshake(uint32_t *ptr, uint32_t mask, uint32_t done, int
>> msec) +static int handshake(uint32_t *ptr, uint32_t mask, uint32_t done,
>> int usec) {
>>      uint32_t result;
>>      do {
>>              result = ehci_readl(ptr);
>> -            debug("handshake read reg(%x)=%x\n", (uint32_t)ptr, result);
>>              if (result == ~(uint32_t)0)
>>                      return -1;
>>              result &= mask;
>>              if (result == done)
>>                      return 0;
>> -            wait_ms(1);
>> -            msec--;
>> -    } while (msec > 0);
>> +            udelay(1);
>> +            usec--;
>> +    } while (usec > 0);
>>      return -1;
>>  }
>>
>> @@ -138,21 +137,21 @@ static int ehci_reset(void)
>>      cmd = ehci_readl(&hcor->or_usbcmd);
>>      cmd |= CMD_RESET;
>>      ehci_writel(&hcor->or_usbcmd, cmd);
>> -    ret = handshake((uint32_t *)&hcor->or_usbcmd, CMD_RESET, 0, 250);
>> +    ret = handshake((uint32_t *)&hcor->or_usbcmd, CMD_RESET, 0, 250 * 1000);
>>      if (ret < 0) {
>>              printf("EHCI fail to reset\n");
>>              goto out;
>>      }
>>
>> -#if defined(CONFIG_EHCI_IS_TDI)
>> -    reg_ptr = (uint32_t *)((u8 *)hcor + USBMODE);
>> -    tmp = ehci_readl(reg_ptr);
>> -    tmp |= USBMODE_CM_HC;
>> -#if defined(CONFIG_EHCI_MMIO_BIG_ENDIAN)
>> -    tmp |= USBMODE_BE;
>> -#endif
>> -    ehci_writel(reg_ptr, tmp);
>> -#endif
>> +    if (ehci_is_TDI()) {
>> +            reg_ptr = (uint32_t *)((u8 *)hcor + USBMODE);
>> +            tmp = ehci_readl(reg_ptr);
>> +            tmp |= USBMODE_CM_HC;
>> +            #if defined(CONFIG_EHCI_MMIO_BIG_ENDIAN)
>>     
>
> I prefer that the "#if" stays in column 0. 
>   
Yes, thanks.
>   
>> +                    tmp |= USBMODE_BE;
>>     
>
> Indentation problem.
>
> Best regards,
> Stefan
>
> =====================================================================
> DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: +49-8142-66989-0 Fax: +49-8142-66989-80  Email: off...@denx.de
> =====================================================================
>
>   
Regards Michael
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to