31 Mar, 2012

1 commit


25 Mar, 2012

1 commit

  • Pull avoidance patches from Paul Gortmaker:
    "Nearly every subsystem has some kind of header with a proto like:

    void foo(struct device *dev);

    and yet there is no reason for most of these guys to care about the
    sub fields within the device struct. This allows us to significantly
    reduce the scope of headers including headers. For this instance, a
    reduction of about 40% is achieved by replacing the include with the
    simple fact that the device is some kind of a struct.

    Unlike the much larger module.h cleanup, this one is simply two
    commits. One to fix the implicit users, and then one
    to delete the device.h includes from the linux/include/ dir wherever
    possible."

    * tag 'device-for-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:
    device.h: audit and cleanup users in main include dir
    device.h: cleanup users outside of linux/include (C files)

    Linus Torvalds
     

16 Mar, 2012

1 commit

  • The header includes a lot of stuff, and
    it in turn gets a lot of use just for the basic "struct device"
    which appears so often.

    Clean up the users as follows:

    1) For those headers only needing "struct device" as a pointer
    in fcn args, replace the include with exactly that.

    2) For headers not really using anything from device.h, simply
    delete the include altogether.

    3) For headers relying on getting device.h implicitly before
    being included themselves, now explicitly include device.h

    4) For files in which doing #1 or #2 uncovers an implicit
    dependency on some other header, fix by explicitly adding
    the required header(s).

    Any C files that were implicitly relying on device.h to be
    present have already been dealt with in advance.

    Total removals from #1 and #2: 51. Total additions coming
    from #3: 9. Total other implicit dependencies from #4: 7.

    As of 3.3-rc1, there were 110, so a net removal of 42 gives
    about a 38% reduction in device.h presence in include/*

    Signed-off-by: Paul Gortmaker

    Paul Gortmaker
     

03 Feb, 2012

1 commit

  • This switches the PL022 worker to a kthread in order to get
    hold of a mechanism to control the message pump priority. On
    low-latency systems elevating the message kthread to realtime
    priority give a real sleek response curve. This has been
    confirmed by measurements. Realtime priority elevation for
    a certain PL022 port can be requested from platform data.

    Cc: Mark Brown
    Acked-by: Viresh Kumar
    Signed-off-by: Chris Blair
    Signed-off-by: Linus Walleij
    Signed-off-by: Grant Likely

    Chris Blair
     

02 Dec, 2011

1 commit

  • Adds support for configuring the spi bus to use autosuspend for
    runtime power management. This can reduce the latency in starting an
    spi transfer by not suspending the device immediately following
    completion of a transfer. If another transfer then takes place before
    the autosuspend timeout, the call to resume the device can return
    immediately rather than needing to risk sleeping in order to resume
    the device.

    Reviewed-by: Viresh Kumar
    Signed-off-by: Chris Blair
    Signed-off-by: Linus Walleij

    Chris Blair
     

13 Oct, 2010

3 commits

  • What is the dev pointer doing inside the platform data anyway.
    We have another pointer to the actual device at hand, use that.

    Signed-off-by: Linus Walleij
    Signed-off-by: Grant Likely

    Linus Walleij
     
  • This patch adds spi->mode support for the AMBA pl022 driver and
    allows spidev to correctly alter SPI modes. Unused fields used in
    the pl022 header file for the pl022_config_chip have been removed.

    The ab8500 client driver selects the data transfer size instead
    of the platform data.

    For platforms that use the amba pl022 driver, the unused fields
    in the controller data structure have been removed and the .mode
    field in the SPI board info structure is used instead.

    Signed-off-by: Kevin Wells
    Tested-by: Linus Walleij
    Acked-by: Linus Walleij
    Signed-off-by: Grant Likely

    Kevin Wells
     
  • This extends the PL022 SSP/SPI driver with generic DMA engine
    support using the PrimeCell DMA engine interface. Also fix up the
    test code for the U300 platform.

    Signed-off-by: Linus Walleij
    Signed-off-by: Grant Likely

    Linus Walleij
     

25 May, 2010

2 commits


19 Sep, 2009

1 commit

  • The definition of the SPI clock phase for the Motorola mode of
    the PL022 driver was incorrect: the spec had been interpreted as
    data being recieved on rising or falling edge of the clocks while
    the correct interpretation is that data can be recieved on the
    first or second edge transition, falling or rising depending on
    the polarity setting.

    Signed-off-by: Linus Walleij
    Signed-off-by: Russell King

    Linus Walleij
     

11 Jun, 2009

1 commit

  • This adds a driver for the ARM PL022 PrimeCell SSP/SPI
    driver found in the U300 platforms as well as in some
    ARM reference hardware, and in a modified version on the
    Nomadik board.

    Reviewed-by: Alessandro Rubini
    Reviewed-by: Russell King
    Reviewed-by: Baruch Siach

    Signed-off-by: Linus Walleij
    Signed-off-by: Russell King

    Linus Walleij