09 May, 2007

1 commit


07 May, 2007

1 commit

  • * 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm: (82 commits)
    [ARM] Add comments marking in-use ptrace numbers
    [ARM] Move syscall saving out of the way of utrace
    [ARM] 4360/1: S3C24XX: regs-udc.h remove unused macro
    [ARM] 4358/1: S3C24XX: mach-qt2410.c: remove linux/mmc/protocol.h header
    [ARM] mm 10: allow memory type to be specified with ioremap
    [ARM] mm 9: add additional device memory types
    [ARM] mm 8: define mem_types table L1 bit 4 to be for ARMv6
    [ARM] iop: add missing parens in macro
    [ARM] mm 7: remove duplicated __ioremap() prototypes
    ARM: OMAP: fix OMAP1 mpuio suspend/resume oops
    ARM: OMAP: MPUIO wake updates
    ARM: OMAP: speed up gpio irq handling
    ARM: OMAP: plat-omap changes for 2430 SDP
    ARM: OMAP: gpio object shrinkage, cleanup
    ARM: OMAP: /sys/kernel/debug/omap_gpio
    ARM: OMAP: Implement workaround for GPIO wakeup bug in OMAP2420 silicon
    ARM: OMAP: Enable 24xx GPIO autoidling
    [ARM] 4318/2: DSM-G600 Board Support
    [ARM] 4227/1: minor head.S fixups
    [ARM] 4328/1: Move i.MX UART regs to driver
    ...

    Linus Torvalds
     

28 Apr, 2007

7 commits

  • Update gadget_chip.c, ether.c for newly added Freescale Highspeed USB
    device driver.

    Signed-off-by: Li Yang
    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    Li Yang
     
  • Freescale high-speed USB SOC can be found on some Freescale processors
    among different architectures. It supports both host and device functions.
    This driver adds its device support for Linux USB Gadget layer.
    It is tested on MPC8349 and MPC8313, but should work on other platforms
    with minor tweaks. The driver passed USBCV 1.3 compliance tests. Note
    that this driver doesn't yet include OTG support.

    Signed-off-by: Li Yang
    Signed-off-by: Jiang Bo
    Signed-off-by: Bruce Schmid
    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    Li Yang
     
  • Another workaround for the glitch in the network layer, whereby one call
    ignores the (otherwise kernel-wide) convention that free() calls should
    not oops when passed nulls. This code already handles that API glitch in
    most other paths.

    From: Erik Hovland
    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    Erik Hovland
     
  • skb_push function may return a pointer which is not aligned as required
    by struct rndis_packet_msg_type. Using attribute trick to fix this bug.

    Signed-off-by: Roy Huang
    Signed-off-by: Jie Zhang
    Signed-off-by: Bryan Wu
    Cc: David Brownell
    Signed-off-by: Andrew Morton
    Signed-off-by: Greg Kroah-Hartman

    Wu, Bryan
     
  • With CONFIG_BLOCK=n, this build error happens:
    WARNING: "bdev_read_only" [drivers/usb/gadget/g_file_storage.ko] undefined!

    Signed-off-by: Randy Dunlap
    Acked-by: Alan Stern
    Signed-off-by: Greg Kroah-Hartman

    Randy Dunlap
     
  • This patch changes last use of hardcoded number of irq to
    use platfrom_get_irq.

    Signed-off-by: Milan Svoboda
    Acked-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    Milan Svoboda
     
  • Make the pxa2xx_udc driver fetch its IRQ from platform resources
    rather than using compile-time constants, so that it works properly
    on IXP4xx systems not just PXA21x/25x/26x.

    Other updates:
    - Do that using platform_get_irq()
    - Switch to platform_driver_probe()
    - Handle device_add() errors
    - Remove "function" sysfs attribute and its potential errors
    - Whitespace cleanups

    Signed-off-by: Milan Svoboda
    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    David Brownell
     

26 Apr, 2007

1 commit


22 Apr, 2007

1 commit

  • This patch removes the unnecessary bit number from CKENnn_XXXX
    definitions for PXA, so that

    CKEN0_PWM0 --> CKEN_PWM0
    CKEN1_PWM1 --> CKEN_PWM1
    ...
    CKEN24_CAMERA --> CKEN_CAMERA

    The reasons for the change of these defitions are:

    1. they do not scale - they are currently valid for pxa2xx, but
    definitely not valid for pxa3xx, e.g., pxa3xx has bit 3 for camera
    instead of bit 24

    2. they are unnecessary - the peripheral name within the definition
    has already announced its usage, we don't need those bit numbers
    to know which peripheral we are going to enable/disable clock for

    3. they are inconvenient - think about this: a driver programmer
    for pxa has to remember which bit in the CKEN register to turn
    on/off

    Another change in the patch is to make the definitions equal to its
    clock bit index, so that

    #define CKEN_CAMERA (24)

    instead of

    #define CKEN_CAMERA (1 << 24)

    this change, however, will add a run-time bit shift operation in
    pxa_set_cken(), but the benefit of this change is that it scales
    when bit index exceeds 32, e.g., pxa3xx has two registers CKENA
    and CKENB, totally 64 bit for this, suppose CAMERA clock enabling
    bit is CKENB:10, one can simply define CKEN_CAMERA to be (32 + 10)
    and so that pxa_set_cken() need minimum change to adapt to that.

    Signed-off-by: eric miao
    Signed-off-by: Russell King

    Eric Miao
     

27 Mar, 2007

1 commit

  • Various fixes to omap_udc, noted with some recent testing:

    - Cope with some SMP-induced braindamage in ARM's dma_{alloc,free}_coherent()
    implementation: alloc() can be called with IRQs blocked, but since late
    last year that's no longer true for free(). This resolves really NASTY
    problems with logspamming via WARN_ON(), indicating N-page leaks.

    - Be more correct in handling GET_STATUS request for RECIP_ENDPOINT ... the
    previous code only handled RECIP_INTERFACE, this version should be correct
    except for (sigh) bulk/interrupt endpoints.

    - Provide a better name for the function reporting whether the board has
    vbus sensing wired up.

    GET_STATUS requests for endpoint status still acts strangely though, at least
    given one flakey host doesn't always ack the first DATA packet, then the packet
    that gets retransmitted doesn't have data!

    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    David Brownell
     

11 Mar, 2007

1 commit

  • This reverts commit d2487cb4257dafb686f682285854fe7f02ca29d8.

    Russell King points out that it's obviously bogus, and I have to agree.
    Not only does "irq" not even exist in that scope, but we obviously need
    to free the irq that we actually requested, and that's IRQ_USB.

    Reported-by: Russell King
    Cc: Andrew Morton
    Cc: Greg KH
    Cc: David Brownell ,
    Cc: Milan Svoboda
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

10 Mar, 2007

3 commits


24 Feb, 2007

1 commit


20 Feb, 2007

1 commit

  • * 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm: (117 commits)
    [ARM] 4058/2: iop32x: set ->broken_parity_status on n2100 onboard r8169 ports
    [ARM] 4140/1: AACI stability add ac97 timeout and retries
    [ARM] 4139/1: AACI record support
    [ARM] 4138/1: AACI: multiple channel support for IRQ handling
    [ARM] 4211/1: Provide a defconfig for ns9xxx
    [ARM] 4210/1: base for new machine type "NetSilicon NS9360"
    [ARM] 4222/1: S3C2443: Remove reference to missing S3C2443_PM
    [ARM] 4221/1: S3C2443: DMA support
    [ARM] 4220/1: S3C24XX: DMA system initialised from sysdev
    [ARM] 4219/1: S3C2443: DMA source definitions
    [ARM] 4218/1: S3C2412: fix CONFIG_CPU_S3C2412_ONLY wrt to S3C2443
    [ARM] 4217/1: S3C24XX: remove the dma channel show at startup
    [ARM] 4090/2: avoid clash between PXA and SA1111 defines
    [ARM] 4216/1: add .gitignore entries for ARM specific files
    [ARM] 4214/2: S3C2410: Add Armzone QT2410
    [ARM] 4215/1: s3c2410 usb device: per-platform vbus_draw
    [ARM] 4213/1: S3C2410 - Update definition of ADCTSC_XY_PST
    [ARM] 4098/1: ARM: rtc_lock only used with rtc_cmos
    [ARM] 4137/1: Add kexec support
    [ARM] 4201/1: SMP barriers pair needed for the secondary boot process
    ...

    Fix up conflict due to typedef removal in sound/arm/aaci.h

    Linus Torvalds
     

18 Feb, 2007

1 commit


17 Feb, 2007

2 commits

  • This is a runtime codespace shrink: in most cases, platform devices should
    put probe() should in the init section, and remove() in the exit section.
    And I have no idea why the module init/exit routines were mismarked.
    It also moves one function table into read-only data.

    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    David Brownell
     
  • A SET_LINE_CODING control request should return a zero length packet
    as an ACK to the host, during the status phase of a USB transaction.

    The return value of gs_setup_class() is treated as the number of
    bytes to write in the status phase of the control request, by
    gs_setup(). For this case, the value returned by gs_setup_class should
    be zero for SET_LINE_CODING but, right now, appears to be
    sizeof(struct usb_cdc_line_coding).

    However, if after doing the memcpy of the line coding descriptor we
    set the variable "ret" to be zero, we should return the appropiate ZLP
    to the host as an ACK in the status phase of the control request.
    I've tested this out using Linux as both host and slave and confirmed
    that the following small change fixes the spurious return of
    sizeof(struct usb_cdc_line_coding)/wLength bytes in the status phase
    of a USB_CDC_REQ_SET_LINE_CODING request. It's not a huge bug but, it
    is worth fixing.

    Signed-off-by: Bryan O'Donoghue
    Signed-off-by: Greg Kroah-Hartman

    Bryan O'Donoghue
     

15 Feb, 2007

2 commits

  • The obsolete SA_xxx interrupt flags have been used despite the scheduled
    removal. Fixup the remaining users.

    Signed-off-by: Thomas Gleixner
    Acked-by: Ingo Molnar
    Cc: "Luck, Tony"
    Cc: Roman Zippel
    Cc: Geert Uytterhoeven
    Cc: Jeff Garzik
    Cc: Wim Van Sebroeck
    Cc: Roland Dreier
    Cc: Alessandro Zummo
    Cc: James Bottomley
    Cc: Greg KH
    Cc: Dave Airlie
    Cc: James Simmons
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Thomas Gleixner
     
  • After Al Viro (finally) succeeded in removing the sched.h #include in module.h
    recently, it makes sense again to remove other superfluous sched.h includes.
    There are quite a lot of files which include it but don't actually need
    anything defined in there. Presumably these includes were once needed for
    macros that used to live in sched.h, but moved to other header files in the
    course of cleaning it up.

    To ease the pain, this time I did not fiddle with any header files and only
    removed #includes from .c-files, which tend to cause less trouble.

    Compile tested against 2.6.20-rc2 and 2.6.20-rc2-mm2 (with offsets) on alpha,
    arm, i386, ia64, mips, powerpc, and x86_64 with allnoconfig, defconfig,
    allmodconfig, and allyesconfig as well as a few randconfigs on x86_64 and all
    configs in arch/arm/configs on arm. I also checked that no new warnings were
    introduced by the patch (actually, some warnings are removed that were emitted
    by unnecessarily included header files).

    Signed-off-by: Tim Schmielau
    Acked-by: Russell King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tim Schmielau
     

12 Feb, 2007

2 commits

  • Bug: pnx8550 code creates directory but resets ->nlink to 1.

    create_proc_entry() et al will correctly set ->nlink for you.

    Signed-off-by: Alexey Dobriyan
    Cc: Ralf Baechle
    Cc: Benjamin Herrenschmidt
    Cc: Paul Mackerras
    Cc: Jeff Dike
    Cc: Corey Minyard
    Cc: Alan Cox
    Cc: Kyle McMartin
    Cc: Martin Schwidefsky
    Cc: Greg KH
    Cc: Ingo Molnar
    Cc: Thomas Gleixner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     
  • Convert all calls to invalidate_inode_pages() into open-coded calls to
    invalidate_mapping_pages().

    Leave the invalidate_inode_pages() wrapper in place for now, marked as
    deprecated.

    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     

08 Feb, 2007

15 commits

  • This patch renames pxa_gpio_set/get functions defined in drivers/usb/gadget/pxa2xx_udc.h to udc_gpio_set/get.

    These functions are moved from drivers/usb/gadget/pxa2xx_udc.h to include/asm-arm/arch-pxa2xx/udc.h

    Creates new functions: udc_gpio_to_irq, udc_gpio_init_vbus, udc_gpio_init_pullup in include/asm-arm/arch-pxa2xx/udc.h. These functions are used in drivers/usb/gadget/pxa2xx_udc.c instead of direct low-level (pxa2xx only) functions.

    Creates all these udc_gpio_* functions in include/asm-arm/arch-ixp4xx/udc.h. This implementation has no real code because ixp4xx doesn't use vbus - only vbus uses all these gpio functions (and because ixp4xx misses any function which converts number of gpio pin into it's irq).

    This is next step to make pxa2xx_udc fully work on ixp4xx platform.

    Signed-off-by: Milan Svoboda
    Signed-off-by: Russell King

    Milan Svoboda
     
  • Add support for the Atmel AT91SAM9263 processor. It is similar to the
    AT91SAM9260 but with more integrated peripherals, 5 GPIO banks, etc.

    Original patch from Nicolas Ferre.

    Signed-off-by: Andrew Victor
    Signed-off-by: Russell King

    Andrew Victor
     
  • Define DEV_CONFIG_CDC when compiling for HUSB2DEV.

    From: Håvard Skinnemoen
    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    Håvard Skinnemoen
     
  • This identifies the driver for the Atmel HUSB2 Device Controller,
    as integrated into the first AVR32 chip, the AT32AP700.

    From: Håvard Skinnemoen
    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    Håvard Skinnemoen
     
  • This patch (as837) fixes several mistakes in the AIO interface of the
    gadgetfs driver:

    The ki_retry method is not supposed to do a put on the kiocb.
    The extra call to aio_put_req() causes memory corruption.
    (Note: This call was removed before, by patch as691, and then
    mysteriously re-introduced later.)

    Even if a read transfer is cancelled, we can and should send
    to the user all the data that did manage to get transferred.

    Testing for AIO cancellation in the I/O completion handler
    is both racy and (now) unnecessary. aio_complete() does its
    own checking, in a safe manner.

    Signed-off-by: Alan Stern
    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    Alan Stern
     
  • Resolve an initizlization issue that could come up if the userspace
    driver wrote invalid descriptors to a dual-speed device.

    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    David Brownell
     
  • This resolves a race in gadgetfs associated with changing device/ep0
    when processing control requests. The fix is to change that state
    earlier, when the control response is issued, so there's no window
    in which userspace could see the wrong state; and enlarge the scope
    of the spinlock during the ep0 request completion handler.

    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    David Brownell
     
  • This simplifies event reading by eliminating arithmetic and being
    more direct/obvious, and tweaks some debug messages slightly.
    The math elimination will change timings, sometimes enough to
    allow a race to appear.

    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    David Brownell
     
  • Minor gadgetfs cleanups:

    - EP0 state constants become consistently STATE_DEV_* rather than
    sometimes omitting the "DEV_"; STATE_EP_* were already consistent.

    - Comment that ep0 state is protected by the spinlock, and update
    code that was neglecting that rule.

    None of this is expected to change behavior.

    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    David Brownell
     
  • This updates the AT91 UDC driver's handling of wakeup events:

    - Fix a bug in the original scheme, which was never updated after
    the {enable,disable}_irq_wake() semantics were updated to address
    refcounting issues (i.e. behave for shared irqs).

    - Couple handling of both type of wakeup events, to be more direct. The
    controller can be source of wakeup events for cases like bus reset
    and USB resume. On some boards, VBUS sensing is also IRQ driven.

    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    David Brownell
     
  • Gadgetfs had a mode in which endpoint descriptors were written by the user
    program before connection. This mode had some bugs, and hasn't seen much
    (if any) use. This patch removes that mode, leaving the mode of operation
    where the user program waits for endpoint 0 to report a SET_CONFIGURATION,
    and only then configures the endpoints.

    From: "Phil Endecott"
    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    Phil Endecott
     
  • Remove some whitespace bugs in gadgetfs (mostly from someone's
    patch updating the AIO support).

    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    David Brownell
     
  • Went looking through some usb stuff and found some unnecessary casts in
    file_storage.c This is part of the KernelJanitors TODO list.

    Signed-off-by: John Daiker
    Acked-by: Alan Stern
    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    John Daiker
     
  • It turns out that minor tweaks to the "CDC Subset" support in the Ethernet
    gadget driver, just updating a config descriptor, let it be automagically
    recognized by a Windows driver supported by MCCI.

    This patch adds those descriptors, so systems using PXA 255 processors
    (like Gumstix etc) can interop with those commercial MS-Windows drivers.
    This is a Good Thing since Microsoft's RNDIS code has bugginess issues,
    which are unfortunately compounded by "won't fix" issues as well as "the
    published specs are incomplete and wrong" issues. Being able to talk to
    the MCCI driver gives Windows users another connectivity option. (MCCI
    also has CDC Ethernet drivers, which can help most non-PXA processors.)

    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    David Brownell
     
  • This moves to to reduce some of the
    clutter of usb header files.

    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    David Brownell