I fixed this in my patch.  The "golden" gcc for arm is 2.95.3.

-ch


> -----Original Message-----
> From: [EMAIL PROTECTED] 
> [mailto:[EMAIL PROTECTED]] On 
> Behalf Of David Brownell
> Sent: Sunday, June 09, 2002 7:50 AM
> To: [EMAIL PROTECTED]
> Subject: [linux-usb-devel] [Fwd: [PATCH] Fix 2.5.x recent 
> OHCI updates]
> 
> 
> In case anyone else runs into this before 2.5.22 ...
> I accidentally relied on something gcc 2.95.3 doesn't
> support.
> 
> -------- Original Message --------
> Subject: [PATCH] Fix 2.5.x recent OHCI updates
> Date: Sat, 08 Jun 2002 17:02:28 -0700
> From: "David S. Miller" <[EMAIL PROTECTED]>
> To: [EMAIL PROTECTED]
> 
> 
> Using anonymous union/struct like this ups the compiler 
> requirements further than specified in init/main.c, so we 
> can't use them just yet.
> 
> Please apply, thanks.
> 
> # This is a BitKeeper generated patch for the following 
> project: # Project Name: Linux kernel tree # This patch 
> format is intended for GNU patch command version 2.5 or 
> higher. # This patch includes the following deltas: # 
>             ChangeSet 1.465   -> 1.466
> # 
> drivers/usb/host/ohci-hcd.c 
> 1.12    -> 1.13
> # 
> drivers/usb/host/ohci-q.c 
> 1.8     -> 1.9
> # 
> drivers/usb/host/ohci.h 
> 1.5     -> 1.6
> #
> # The following is the BitKeeper ChangeSet Log
> # --------------------------------------------
> # 02/06/06    [EMAIL PROTECTED]    1.466
> # OHCI build fix: Do not use nameless struct/union.
> # --------------------------------------------
> #
> diff -Nru a/drivers/usb/host/ohci-hcd.c b/drivers/usb/host/ohci-hcd.c
> --- a/drivers/usb/host/ohci-hcd.c     Sat Jun  8 17:00:58 2002
> +++ b/drivers/usb/host/ohci-hcd.c     Sat Jun  8 17:00:58 2002
> @@ -226,7 +226,7 @@
>               case PIPE_ISOCHRONOUS:
>        
>       if (urb->transfer_flags & USB_ISO_ASAP) {
>        
>               urb->start_frame = ( (ed->state == ED_OPER)
> - 
>                               ? (ed->last_iso + 1)
> + 
>                               ? (ed->u.last_iso + 1)
>        
>                       : (le16_to_cpu (ohci->hcca->frame_no)
>        
>                               + 10)) & 0xffff;
>        
>       }       
> diff -Nru a/drivers/usb/host/ohci-q.c b/drivers/usb/host/ohci-q.c
> --- a/drivers/usb/host/ohci-q.c       Sat Jun  8 17:00:58 2002
> +++ b/drivers/usb/host/ohci-q.c       Sat Jun  8 17:00:58 2002
> @@ -236,11 +236,11 @@
>               break;
> 
>       case PIPE_INTERRUPT:
> - 
>       load = ed->int_load;
> - 
>       interval = ep_2_n_interval (ed->int_period);
> + 
>       load = ed->u.i.int_load;
> + 
>       interval = ep_2_n_interval (ed->u.i.int_period);
>               ed->interval = interval;
>               int_branch = ep_int_balance (ohci, interval, load);
> - 
>       ed->int_branch = int_branch;
> + 
>       ed->u.i.int_branch = int_branch;
> 
>               for (i = 0; i < ep_rev (6, interval); i += inter) {
>        
>       inter = 1;
> @@ -355,9 +355,9 @@
>               break;
> 
>       case PIPE_INTERRUPT:
> - 
>       periodic_unlink (ohci, ed, ed->int_branch, ed->interval);
> - 
>       for (i = ed->int_branch; i < NUM_INTS; i += ed->interval)
> - 
>               ohci->ohci_int_load [i] -= ed->int_load;
> + 
>       periodic_unlink (ohci, ed, ed->u.i.int_branch, ed->interval);
> + 
>       for (i = ed->u.i.int_branch; i < NUM_INTS; i += ed->interval)
> + 
>               ohci->ohci_int_load [i] -= ed->u.i.int_load;
>   #ifdef OHCI_VERBOSE_DEBUG
>               ohci_dump_periodic (ohci, "UNLINK_INT");
>   #endif
> @@ -466,8 +466,8 @@
>        
>               << 16);
> 
>       if (ed->type == PIPE_INTERRUPT && ed->state == ED_UNLINK) {
> -             ed->int_period = interval;
> -             ed->int_load = load;
> +             ed->u.i.int_period = interval;
> +             ed->u.i.int_load = load;
>       }
> 
>       spin_unlock_irqrestore (&ohci->lock, flags);
> @@ -563,7 +563,7 @@
>       td->hwINFO = cpu_to_le32 (info);
>       if ((td->ed->type) == PIPE_ISOCHRONOUS) {
>               td->hwCBP = cpu_to_le32 (data & 0xFFFFF000);
> - 
>       td->ed->last_iso = info & 0xffff;
> + 
>       td->ed->u.last_iso = info & 0xffff;
>       } else {
>               td->hwCBP = cpu_to_le32 (data);
>       } 
>               
> diff -Nru a/drivers/usb/host/ohci.h b/drivers/usb/host/ohci.h
> --- a/drivers/usb/host/ohci.h Sat Jun  8 17:00:58 2002
> +++ b/drivers/usb/host/ohci.h Sat Jun  8 17:00:58 2002
> @@ -37,9 +37,9 @@
>        
>       u8      int_period;
>        
>       u8      int_branch;
>        
>       u8      int_load;
> - 
>       };
> + 
>       } i;
>               u16 
>       last_iso;       /* isochronous */
> - 
> };
> + 
> } u;
> 
>       u8 
>               state;          /* ED_{NEW,UNLINK,OPER} */
>   #define ED_NEW              0x00            /* unused, no 
> dummy td */
> 
> 
> 
> _______________________________________________________________
> 
> Don't miss the 2002 Sprint PCS Application Developer's 
> Conference August 25-28 in Las Vegas - 
> http://devcon.sprintpcs.com/adp/index.cfm?> source=osdntextlink
> 
> 
> _______________________________________________
> [EMAIL PROTECTED]
> To unsubscribe, use the last form field at: 
> https://lists.sourceforge.net/lists/listinfo/l> inux-usb-devel
> 


_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas - 
http://devcon.sprintpcs.com/adp/index.cfm?source=osdntextlink

_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to