ARM: Kirkwood: Convert TS219 to pinctrl.

Make use of the pinctrl driver for configuring all the pins, instead
of using the Orion mpp code.

Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
This commit is contained in:
Andrew Lunn 2012-11-17 17:00:46 +01:00 committed by Jason Cooper
parent 82bb2da178
commit 1f6e46bf6e
3 changed files with 62 additions and 25 deletions

View file

@ -1,8 +1,39 @@
/dts-v1/;
/include/ "kirkwood-ts219.dtsi"
/include/ "kirkwood-6281.dtsi"
/ {
ocp@f1000000 {
pinctrl: pinctrl@10000 {
pinctrl-0 = < &pmx_uart0 &pmx_uart1 &pmx_spi
&pmx_twsi0 &pmx_sata0 &pmx_sata1
&pmx_ram_size &pmx_reset_button
&pmx_USB_copy_button &pmx_board_id>;
pinctrl-names = "default";
pmx_ram_size: pmx-ram-size {
/* RAM: 0: 256 MB, 1: 512 MB */
marvell,pins = "mpp36";
marvell,function = "gpio";
};
pmx_USB_copy_button: pmx-USB-copy-button {
marvell,pins = "mpp15";
marvell,function = "gpio";
};
pmx_reset_button: pmx-reset-button {
marvell,pins = "mpp16";
marvell,function = "gpio";
};
pmx_board_id: pmx-board-id {
/* 0: TS-11x, 1: TS-21x */
marvell,pins = "mpp44";
marvell,function = "gpio";
};
};
};
gpio_keys {
compatible = "gpio-keys";
#address-cells = <1>;

View file

@ -1,8 +1,39 @@
/dts-v1/;
/include/ "kirkwood-ts219.dtsi"
/include/ "kirkwood-6282.dtsi"
/ {
ocp@f1000000 {
pinctrl: pinctrl@10000 {
pinctrl-0 = < &pmx_uart0 &pmx_uart1 &pmx_spi
&pmx_twsi0 &pmx_sata0 &pmx_sata1
&pmx_ram_size &pmx_reset_button
&pmx_USB_copy_button &pmx_board_id>;
pinctrl-names = "default";
pmx_ram_size: pmx-ram-size {
/* RAM: 0: 256 MB, 1: 512 MB */
marvell,pins = "mpp36";
marvell,function = "gpio";
};
pmx_reset_button: pmx-reset-button {
marvell,pins = "mpp37";
marvell,function = "gpio";
};
pmx_USB_copy_button: pmx-USB-copy-button {
marvell,pins = "mpp43";
marvell,function = "gpio";
};
pmx_board_id: pmx-board-id {
/* 0: TS-11x, 1: TS-21x */
marvell,pins = "mpp44";
marvell,function = "gpio";
};
};
};
gpio_keys {
compatible = "gpio-keys";
#address-cells = <1>;

View file

@ -26,41 +26,16 @@
#include <asm/mach/arch.h>
#include <mach/kirkwood.h>
#include "common.h"
#include "mpp.h"
#include "tsx1x-common.h"
static struct mv643xx_eth_platform_data qnap_ts219_ge00_data = {
.phy_addr = MV643XX_ETH_PHY_ADDR(8),
};
static unsigned int qnap_ts219_mpp_config[] __initdata = {
MPP0_SPI_SCn,
MPP1_SPI_MOSI,
MPP2_SPI_SCK,
MPP3_SPI_MISO,
MPP4_SATA1_ACTn,
MPP5_SATA0_ACTn,
MPP8_TW0_SDA,
MPP9_TW0_SCK,
MPP10_UART0_TXD,
MPP11_UART0_RXD,
MPP13_UART1_TXD, /* PIC controller */
MPP14_UART1_RXD, /* PIC controller */
MPP15_GPIO, /* USB Copy button (on devices with 88F6281) */
MPP16_GPIO, /* Reset button (on devices with 88F6281) */
MPP36_GPIO, /* RAM: 0: 256 MB, 1: 512 MB */
MPP37_GPIO, /* Reset button (on devices with 88F6282) */
MPP43_GPIO, /* USB Copy button (on devices with 88F6282) */
MPP44_GPIO, /* Board ID: 0: TS-11x, 1: TS-21x */
0
};
void __init qnap_dt_ts219_init(void)
{
u32 dev, rev;
kirkwood_mpp_conf(qnap_ts219_mpp_config);
kirkwood_pcie_id(&dev, &rev);
if (dev == MV88F6282_DEV_ID)
qnap_ts219_ge00_data.phy_addr = MV643XX_ETH_PHY_ADDR(0);