pinctrl: at91: add pinctrl driver

This driver is based on mach-at91/gpio.c and linux pinctrl driver.
The driver contains the gpio and pinctrl parts (like in linux) because the two parts
share some structures and logics.

Signed-off-by: Raphaël Poggi <poggi.raph@gmail.com>
at91sam9g45: add device tree gpio clocks

Signed-off-by: Raphaël Poggi <poggi.raph@gmail.com>
i2c: at91: add at91sam9x5 config

Signed-off-by: Raphaël Poggi <poggi.raph@gmail.com>
i2c: at91: add support of device tree

Signed-off-by: Raphaël Poggi <poggi.raph@gmail.com>
at91sam9g45: clock: add i2c clocks

Add the device tree and non device tree at91 i2c clocks.

Signed-off-by: Raphaël Poggi <poggi.raph@gmail.com>
dt-bindings: pinctrl: add at91 file

Signed-off-by: Raphaël Poggi <poggi.raph@gmail.com>
dts: at91: initial support of at91sam9m10g45ek dts

Signed-off-by: Raphaël Poggi <poggi.raph@gmail.com>
mtd: atmel_nand: begin device tree integration
of_mtd: add soft_bch and hw_oob_first ecc modes

Signed-off-by: Raphaël Poggi <poggi.raph@gmail.com>
mtd: atmel_nand: manage dt/non dt ecc_mode
board: atmel: initialise ecc_mode

This commit initialise the ecc_mode (NAND_ECC_SOFT) on atmel board init which missing it.
With this member initialised we can use it directly in atmel_nand through the plateform data,
whereas it is not possible when the value is not initialised (value: -1).

Signed-off-by: Raphaël Poggi <poggi.raph@gmail.com>