SPI: spi-gpio: store chipselect information in private structure

The spi-gpio driver currently assumes the chipselect gpio number is
stored in ->controller_data of the device's static board information.

In devicetree environments, this information is unavailable and has to
be derived from the DT node.

This patch moves the gpio storage to the controller's private data so
the DT bindings can easily build upon the driver.

Signed-off-by: Daniel Mack <zonque@gmail.com>
SPI: spi-gpio: Add DT bindings

This patch adds DT bindings to the spi-gpio driver and some
documentation about how to use it.

Signed-off-by: Daniel Mack <zonque@gmail.com>
lis3: add generic DT matching code

This patch adds logic to parse lis3 properties from a device tree node
and store them in a freshly allocated lis3lv02d_platform_data.

Note that the actual match tables are left out here. This part should
happen in the drivers that bind to the individual busses (SPI/I2C/PCI).

Also adds some DT bindinds documentation.

Signed-off-by: Daniel Mack <zonque@gmail.com>
lis3-spi: add DT matching table passthru code

If probed from a device tree, this driver now passes the node
information to the generic part, so the runtime information can be
derived.

Successfully tested on a PXA3xx board.

Signed-off-by: Daniel Mack <zonque@gmail.com>
ALSA: ASoC: add DT bindings for cs4270

Signed-off-by: Daniel Mack <zonque@gmail.com>
Cc: Timur Tabi <timur@freescale.com>
ALSA: ASoC: Add reset-gpio DT property to cs4270 driver

In the process of moving over from static board files to the device
tree, reset pins of peripheral reset pins should be handled by their
corresponding drivers.

Add a reset-gpio DT property to the cs4270 driver, and de-assert it
before probing the chip. The logic could be augmented some day to
re-assert it when codec is put to suspend.

Signed-off-by: Daniel Mack <zonque@gmail.com>
Cc: Timur Tabi <timur@freescale.com>
pxa: raumfeld DT implementation

raumfeld
GPIO: gpio-pxa: simplify pxa_gpio_to_irq() and pxa_irq_to_chip()

Simplify the code in gpio-pxa.c and make them based on irq_base.
When not probed from devicetree, initialize irq_base from
PXA_GPIO_TO_IRQ() or MMP_GPIO_TO_IRQ(), respectively, so the non-DT case
still works.

Only tested on PXA3xx.

Signed-off-by: Daniel Mack <zonque@gmail.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
GPIO: gpio-pxa: fix devicetree functions

Provide an of_xlate function for the PXA GPIO chips and make it work for
devicetree environments.

Successfully tested on a PXA3xx board.

Signed-off-by: Daniel Mack <zonque@gmail.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
input: rotary-encoder: defer calls gpio_to_irq()

Don't call gpio_to_irq() on GPIOs before gpio_request() succeeded on
them. This avoids Ooopses with incorrect DT bindings.

Signed-off-by: Daniel Mack <zonque@gmail.com>
input: rotary-encoder: use gpio_request_one()

Use gpio_request_one() instead of separate calls to gpio_request() and
gpio_direction_input() to simplify the code.

Signed-off-by: Daniel Mack <zonque@gmail.com>
input: rotary-encoder: add DT bindings

This adds devicetree bindings to the rotary encoder driver and some
documentation about how to use them. Tested on a PXA3xx platform.

To allow kernel provided data to override DT values, and to avoid
touching the pdev->platform_data, a copy of struct
rotary_encoder_platform_data is now kept privately in
struct rotary_encoder.

Signed-off-by: Daniel Mack <zonque@gmail.com>
onewire: w1-gpio: add ext_pullup_enable pin in platform data

In the process of porting boards to devicetree implemenation, we should
keep information about external circuitry where they belong - the
individual drivers.

This patch adds a way to specify a GPIO to drive the (optional) external
pull-up logic, rather than using a function pointer for that.

Signed-off-by: Daniel Mack <zonque@gmail.com>
Cc: Evgeniy Polyakov <zbr@ioremap.net>
Cc: Ville Syrjala <syrjala@sci.fi>
onewire: w1-gpio: add DT bindings

This patch add DT bindings to the w1-gpio driver, along with some
documentation on how to use them.

Signed-off-by: Daniel Mack <zonque@gmail.com>
Cc: Evgeniy Polyakov <zbr@ioremap.net>
Cc: Ville Syrjala <syrjala@sci.fi>
RTC: add DT bindings to pxa-rtc

This patch adds generic device tree bindings to the PXA RTC driver.
Documentation for bindings were also added.

Signed-off-by: Daniel Mack <zonque@gmail.com>
Cc: Robert Jarzmik <robert.jarzmik@free.fr>
Cc: Alessandro Zummo <a.zummo@towertech.it>
MMC: pxa-mci: add DT bindings

Signed-off-by: Daniel Mack <zonque@gmail.com>
Cc: Nicolas Pitre <nico@fluxnic.net>
Cc: Chris Ball <cjb@laptop.org>
MTD: pxa3xx-nand: add devicetree bindings

This patch contains a hack to get the DMA resources of the device when
probed from a devicetree node. This can be removed once a generic DMA
controller framework lands.

A mtd_part_parser_data is passed mtd_device_parse_register which
contains a reference to the device node, so MTD partitions can be
added as children.

Signed-off-by: Daniel Mack <zonque@gmail.com>
Cc: David Woodhouse <dwmw2@infradead.org>
ARM: pxa: add devicetree code for irq handling

Properly register on-chip interrupt using the irqdomain logic. The
number of interrupts is taken from the devicetree node.

Signed-off-by: Daniel Mack <zonque@gmail.com>
ARM: pxa3xx: skip default device initialization when booting via DT

When booting via DT, the default PXA devices must not have been probed
before, otherwise the augmented information from the device tree is
ignored.

Signed-off-by: Daniel Mack <zonque@gmail.com>
ARM: pxa3xx: add generic DT machine code

Add a DT_MACHINE_START entry for PXA3xx machines and a auxdata table for
some of the devices. This file can be extended to also support pxa2xx
and pxa9xx boards.

Signed-off-by: Daniel Mack <zonque@gmail.com>