23 Jan, 2014

1 commit

  • Pull trivial tree updates from Jiri Kosina:
    "Usual rocket science stuff from trivial.git"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (39 commits)
    neighbour.h: fix comment
    sched: Fix warning on make htmldocs caused by wait.h
    slab: struct kmem_cache is protected by slab_mutex
    doc: Fix typo in USB Gadget Documentation
    of/Kconfig: Spelling s/one/once/
    mkregtable: Fix sscanf handling
    lp5523, lp8501: comment improvements
    thermal: rcar: comment spelling
    treewide: fix comments and printk msgs
    IXP4xx: remove '1 &&' from a condition check in ixp4xx_restart()
    Documentation: update /proc/uptime field description
    Documentation: Fix size parameter for snprintf
    arm: fix comment header and macro name
    asm-generic: uaccess: Spelling s/a ny/any/
    mtd: onenand: fix comment header
    doc: driver-model/platform.txt: fix a typo
    drivers: fix typo in DEVTMPFS_MOUNT Kconfig help text
    doc: Fix typo (acces_process_vm -> access_process_vm)
    treewide: Fix typos in printk
    drivers/gpu/drm/qxl/Kconfig: reformat the help text
    ...

    Linus Torvalds
     

21 Jan, 2014

1 commit

  • Pull staging driver tree changes from Greg KH:
    "Here's the big drivers/staging/ update for 3.14-rc1

    Lots and lots of cleanups, IIO driver updates are also mixed in here
    due to the subsystem still crossing staging and drivers/iio/, and the
    dwc2 driver is moved out of staging. There's a new driver (rts5208),
    which ends up making us adding more lines than removing, but overall
    there was lots of work toward moving code out of here, which was good

    All of this has been in linux-next with no reported issues"

    * tag 'staging-3.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (1084 commits)
    lustre: delete linux/lustre_debug.h
    staging: lustre: remove some unused debug macros
    usb: dwc2: move device tree bindings doc to correct place
    staging: vt6656: sparse fixes: iwctl_giwgenie use memcpy.
    staging: vt6656: sparse fixes: iwctl_siwgenie use memcpy.
    staging: vt6656: sparse fixes ethtool_ioctl Use struct ifreq *
    staging: vt6656: sparse fixes: dpc.c missing dpc.h
    staging: lustre: libcfs_debug: small whitespace cleanups
    staging: lustre: libcfs_debug.h: remove extra blank lines
    staging: lustre: libcfs_debug.h: Align backslashes in macros
    staging: lustre: libcfs_debug.h: align define values
    staging: tidspbridge: adjust error return code (bugfix)
    Staging: rts5139: rts51x_card: fixed style issues
    staging: wlags49_h2: Fix "do not use C99 //" in wl_cs.h, wl_enc.h wl_main.h and wl_wext.h
    Staging: rtl8188eu: Fixed "foo * bar" related coding style issues
    Staging: rtl8188eu: Fixed required spaces after ',' and around '=' and '=='
    staging: vt6655: Fix memory leak in wpa_ioctl()
    imx-drm: parallel-display: honor 'native-mode' property when selecting video mode from DT
    staging: drm/imx: don't drop crtc offsets when doing pageflip
    staging: drm/imx: handle framebuffer offsets correctly
    ...

    Linus Torvalds
     

20 Dec, 2013

1 commit


19 Dec, 2013

1 commit


11 Dec, 2013

1 commit

  • After realizing that we tend to tell developers the same thing over
    and over, let's attempt to document some commin design patterns
    used in the device drivers. The idea is that this can be extended
    so I just start out with two well-known design patterns.

    Cc: Rob Landley
    Cc: Mark Brown
    Cc: Arnd Bergmann
    Cc: Grant Likely
    Signed-off-by: Linus Walleij
    Signed-off-by: Greg Kroah-Hartman

    Linus Walleij
     

26 Nov, 2013

1 commit

  • …/iio into staging-next

    Jonathan writes:

    First set of new features, drivers and cleanups for IIO in the 3.14 cycle.
    This mostly consists of patches that didn't quite make the last cycle. Lots
    of interesting things under review currently.

    Core:
    - Add devm_iio_device_register/unregister. I took some convincing on whether
    there would be many devices that really were simple enough to need no
    explicit actions on removal. Turns out there are some.
    - Move some stray docs to above the relevant implemenation.
    - Drop a redundant repeated check on the fact the trigger has actually changed
    when there is a userspace attempt change it.

    Drivers:
    New drivers
    - Freescale MPL3115A2 Pressure / temperature sensor

    New functionality
    - hid_sensors: add sensitivity support.

    DT bindings
    - tsl2563
    - hmc5843

    Cleanups
    - Drop unused scan_type from viperboard adc driver.
    - devm_iio_device_register used in viperboard, ad5421, ad5755, adis16130,
    adxrs450, vcnl4000, adis16220, ad7816, lpc32xx, adt7316, adis16060, isl29018
    and ad2s1200. Note that this was proposed in a number of other drivers
    and this revealed a number of missorderings in remove functions. Also for
    now I have blocked this on any device that any hardware suspend suport on
    the basis that we probably want to power down devices if they have no driver
    support loaded.

    Greg Kroah-Hartman
     

25 Nov, 2013

1 commit


12 Nov, 2013

1 commit

  • Pull spi updates from Mark Brown:
    "As well as the usual driver updates and cleanups there's a few
    improvements to the core here:

    - The start of some improvements to factor out more of the SPI
    message loop into the core. Right now this is just simplifying the
    code a bit but hopefully next time around we'll also have managed
    to roll out some noticable performance improvements which drivers
    can take advantage of.
    - Support for loading modules for ACPI enumerated SPI devices.
    - Managed registration for SPI controllers.
    - Helper for another common I/O pattern"

    * tag 'spi-v3.13' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (116 commits)
    spi/hspi: add device tree support
    spi: atmel: fix return value check in atmel_spi_probe()
    spi: spi-imx: only enable the clocks when we start to transfer a message
    spi/s3c64xx: Fix doubled clock disable on suspend
    spi/s3c64xx: Do not ignore return value of spi_master_resume/suspend
    spi: spi-mxs: Use u32 instead of uint32_t
    spi: spi-mxs: Don't set clock for each xfer
    spi: spi-mxs: Clean up setup_transfer function
    spi: spi-mxs: Remove check of spi mode bits
    spi: spi-mxs: Fix race in setup method
    spi: spi-mxs: Remove bogus setting of ssp clk rate field
    spi: spi-mxs: Remove full duplex check, spi core already does it
    spi: spi-mxs: Fix chip select control bits in DMA mode
    spi: spi-mxs: Fix extra CS pulses and read mode in multi-transfer messages
    spi: spi-mxs: Change flag arguments in txrx functions to bit flags
    spi: spi-mxs: Always clear INGORE_CRC, to keep CS asserted
    spi: spi-mxs: Remove mxs_spi_enable and mxs_spi_disable
    spi: spi-mxs: Always set LOCK_CS
    spi/s3c64xx: Add missing pm_runtime_put on setup fail
    spi/s3c64xx: Add missing pm_runtime_set_active() call in probe()
    ...

    Linus Torvalds
     

17 Sep, 2013

2 commits


11 Sep, 2013

1 commit

  • Pull slave-dmaengine updates from Vinod Koul:
    "This pull brings:
    - Andy's DW driver updates
    - Guennadi's sh driver updates
    - Pl08x driver fixes from Tomasz & Alban
    - Improvements to mmp_pdma by Daniel
    - TI EDMA fixes by Joel
    - New drivers:
    - Hisilicon k3dma driver
    - Renesas rcar dma driver
    - New API for publishing slave driver capablities
    - Various fixes across the subsystem by Andy, Jingoo, Sachin etc..."

    * 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma: (94 commits)
    dma: edma: Remove limits on number of slots
    dma: edma: Leave linked to Null slot instead of DUMMY slot
    dma: edma: Find missed events and issue them
    ARM: edma: Add function to manually trigger an EDMA channel
    dma: edma: Write out and handle MAX_NR_SG at a given time
    dma: edma: Setup parameters to DMA MAX_NR_SG at a time
    dmaengine: pl330: use dma_set_max_seg_size to set the sg limit
    dmaengine: dma_slave_caps: remove sg entries
    dma: replace devm_request_and_ioremap by devm_ioremap_resource
    dma: ste_dma40: Fix potential null pointer dereference
    dma: ste_dma40: Remove duplicate const
    dma: imx-dma: Remove redundant NULL check
    dma: dmagengine: fix function names in comments
    dma: add driver for R-Car HPB-DMAC
    dma: k3dma: use devm_ioremap_resource() instead of devm_request_and_ioremap()
    dma: imx-sdma: Staticize sdma_driver_data structures
    pch_dma: Add MODULE_DEVICE_TABLE
    dmaengine: PL08x: Add cyclic transfer support
    dmaengine: PL08x: Fix reading the byte count in cctl
    dmaengine: PL08x: Add support for different maximum transfer size
    ...

    Linus Torvalds
     

25 Aug, 2013

1 commit


18 Aug, 2013

1 commit


04 Aug, 2013

1 commit


23 Jan, 2013

1 commit

  • The devm_request_and_ioremap() function is very useful and helps avoid a
    whole lot of boilerplate. However, one issue that keeps popping up is
    its lack of a specific error code to determine which of the steps that
    it performs failed. Furthermore, while the function gives an example and
    suggests what error code to return on failure, a wide variety of error
    codes are used throughout the tree.

    In an attempt to fix these problems, this patch adds a new function that
    drivers can transition to. The devm_ioremap_resource() returns a pointer
    to the remapped I/O memory on success or an ERR_PTR() encoded error code
    on failure. Callers can check for failure using IS_ERR() and determine
    its cause by extracting the error code using PTR_ERR().

    devm_request_and_ioremap() is implemented as a wrapper around the new
    API and return NULL on failure as before. This ensures that backwards
    compatibility is maintained until all users have been converted to the
    new API, at which point the old devm_request_and_ioremap() function
    should be removed.

    A semantic patch is included which can be used to convert from the old
    devm_request_and_ioremap() API to the new devm_ioremap_resource() API.
    Some non-trivial cases may require manual intervention, though.

    Signed-off-by: Thierry Reding
    Cc: Arnd Bergmann
    Acked-by: Dmitry Torokhov
    Signed-off-by: Greg Kroah-Hartman

    Thierry Reding
     

18 Jan, 2013

1 commit


10 Sep, 2012

1 commit


22 May, 2012

1 commit

  • Pull pin control subsystem changes from Linus Walleij:

    - Generic Device Tree bindings and hooks for drivers so we can move
    over modern drivers to using this.

    - Device Tree bindings for Tegra SoCs.

    - Funneling some devicetree helper code for the drivers/of subsystem.

    - New pin control drivers for:
    * Freescale MXS
    * Freescale i.MX51
    * Freescale i.MX53
    All of these use Device Tree bindings.

    - Dummy pinctrl handles for stepwise migration to pinctrl, akin to
    dummy regulators.
    - Minor non-urgent fixes and improvments.

    Fix up trivial conflicts in Documentation/driver-model/devres.txt and
    drivers/pinctrl/core.c,

    * tag 'pinctrl-for-v3.5' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (46 commits)
    pinctrl: pinctrl-imx: add imx51 pinctrl driver
    pinctrl: pinctrl-imx: add imx53 pinctrl driver
    pinctrl: pinctrl-pxa3xx: remove empty pinmux disable function
    pinctrl: pinctrl-mxs: remove empty pinmux disable function
    pinctrl: pinctrl-imx: remove empty pinmux disable function
    pinctrl: make pinmux disable function optional
    pinctrl: a minor error checking improvement for pinconf
    pinctrl: mxs: skip gpio nodes for group creation
    pinctrl: mxs: create group for pin config node
    pinctrl: (cosmetic) fix two entries in DocBook comments
    pinctrl: add more info to error msgs in pin_request
    pinctrl: add pinctrl-mxs support
    pinctrl: pinctrl-imx: add imx6q pinctrl driver
    pinctrl: pinctrl-imx: add imx pinctrl core driver
    dt: add of_get_child_count helper function
    pinctrl: support gpio request deferred probing
    pinctrl: add pinctrl_provide_dummies interface for platforms to use
    pinctrl: enhance reporting of errors when loading from DT
    pinctrl: add kerneldoc for pinctrl_ops device tree functions
    pinctrl: propagate map validation errors
    ...

    Linus Torvalds
     

20 Apr, 2012

1 commit


18 Apr, 2012

1 commit


19 Mar, 2012

1 commit


31 Jan, 2012

1 commit


25 Jan, 2012

1 commit


20 Jan, 2012

1 commit

  • Add a resource managed regulator_get() to simplify regulator
    usage in drivers. This allows driver authors to "get and forget"
    about their regulators by automatically calling regulator_put()
    when the driver is detached.

    [Fixed up a couple of coding style issues -- broonie]

    Signed-off-by: Stephen Boyd
    Signed-off-by: Mark Brown

    Stephen Boyd
     

16 Nov, 2011

1 commit

  • Almost every platform_driver does the three steps get_resource,
    request_mem_region, ioremap. This does not only lead to a lot of code
    duplication, but also a huge number of similar error strings and
    inconsistent error codes on failure. So, introduce a helper function
    which simplifies remapping a resource and make it hard to do something
    wrong and add documentation for it.

    Signed-off-by: Wolfram Sang
    Acked-by: Grant Likely
    Acked-by: Tejun Heo
    Signed-off-by: Greg Kroah-Hartman

    Wolfram Sang
     

25 Aug, 2011

2 commits

  • The driver model documentation was added to the kernel tree before
    struct class was added to . Hence this patch that
    updates the paragraph about struct class in
    Documentation/driver-model/binding.txt.

    Signed-off-by: Bart Van Assche
    Cc: Randy Dunlap
    Signed-off-by: Greg Kroah-Hartman

    Bart Van Assche
     
  • Several drivers use device_create_file() where device.groups should be
    used instead. This patch documents that and also removes the comments
    about device classes since these should not be used in new code in the
    way documented until now in Documentation/driver-model/device.txt.

    Signed-off-by: Bart Van Assche
    Cc: Randy Dunlap
    Signed-off-by: Greg Kroah-Hartman

    Bart Van Assche
     

08 Jun, 2011

2 commits


07 May, 2011

1 commit


11 Nov, 2010

1 commit


05 Feb, 2010

1 commit


24 Dec, 2009

1 commit


13 Jul, 2009

1 commit


16 Jun, 2009

1 commit


13 Jun, 2009

1 commit


17 Apr, 2009

1 commit

  • V3 of the early platform driver implementation.

    Platform drivers are great for embedded platforms because we can separate
    driver configuration from the actual driver. So base addresses,
    interrupts and other configuration can be kept with the processor or board
    code, and the platform driver can be reused by many different platforms.

    For early devices we have nothing today. For instance, to configure early
    timers and early serial ports we cannot use platform devices. This
    because the setup order during boot. Timers are needed before the
    platform driver core code is available. The same goes for early printk
    support. Early in this case means before initcalls.

    These early drivers today have their configuration either hard coded or
    they receive it using some special configuration method. This is working
    quite well, but if we want to support both regular kernel modules and
    early devices then we need to have two ways of configuring the same
    driver. A single way would be better.

    The early platform driver patch is basically a set of functions that allow
    drivers to register themselves and architecture code to locate them and
    probe. Registration happens through early_param(). The time for the
    probe is decided by the architecture code.

    See Documentation/driver-model/platform.txt for more details.

    [akpm@linux-foundation.org: coding-style fixes]
    Signed-off-by: Magnus Damm
    Cc: Paul Mundt
    Cc: Kay Sievers
    Cc: David Brownell
    Cc: Tejun Heo
    Signed-off-by: Andrew Morton
    Signed-off-by: Greg Kroah-Hartman

    Magnus Damm
     

23 Feb, 2009

1 commit


03 Feb, 2008

1 commit


20 Oct, 2007

1 commit

  • Most of these fixes were already submitted for old kernel versions, and were
    approved, but for some reason they never made it into the releases.

    Because this is a consolidation of a couple old missed patches, it touches both
    Kconfigs and documentation texts.

    Signed-off-by: Matt LaPlante
    Acked-by: Randy Dunlap
    Signed-off-by: Adrian Bunk

    Matt LaPlante