[PATCH 9/9] ARM: Kirkwood: Convert IX2-200 to pinctrl.
From: andrew@lunn.ch (Andrew Lunn)
Date: 2012-10-24 20:20:10
On Wed, Oct 24, 2012 at 10:04:29PM +0200, Thomas Petazzoni wrote:
Andrew, On Wed, 24 Oct 2012 16:53:54 +0200, Andrew Lunn wrote:quoted
Signed-off-by: Andrew Lunn <andrew@lunn.ch> --- arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts | 90 +++++++++++++++++++++++++ arch/arm/mach-kirkwood/board-iomega_ix2_200.c | 24 ------- 2 files changed, 90 insertions(+), 24 deletions(-)diff --git a/arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts b/arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts index 865aeec..d8fa8e8 100644 --- a/arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts +++ b/arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts@@ -16,6 +16,96 @@ }; ocp at f1000000 { + pinctrl: pinctrl at 10000 { + compatible = "marvell,88f6281-pinctrl"; + reg = <0x10000 0x20>;This definition (compatible + reg) should go in kirkwood.dtsi. The pinctrl unit should be declared at the SoC level. Ditto for all other patches.
The reg maybe. Compatibility not. We need to tell pinctrl which of the
5 different variants of kirkwood this particular kirkwood is. See
drivers/pinctrl/pinctrl-kirkwood.c
enum kirkwood_variant {
VARIANT_MV88F6180 = V(1, 0, 0, 0, 0),
VARIANT_MV88F6190 = V(0, 1, 0, 0, 0),
VARIANT_MV88F6192 = V(0, 0, 1, 0, 0),
VARIANT_MV88F6281 = V(0, 0, 0, 1, 0),
VARIANT_MV88F6282 = V(0, 0, 0, 0, 1),
};
static struct of_device_id kirkwood_pinctrl_of_match[] __devinitdata = {
{ .compatible = "marvell,88f6180-pinctrl", .data = &mv88f6180_info },
{ .compatible = "marvell,88f6190-pinctrl", .data = &mv88f6190_info },
{ .compatible = "marvell,88f6192-pinctrl", .data = &mv88f6192_info },
{ .compatible = "marvell,88f6281-pinctrl", .data = &mv88f6281_info },
{ .compatible = "marvell,88f6282-pinctrl", .data = &mv88f6282_info },
{ }
};
What SoC is mounted on a board is a property of the board....
Andrew