Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4ea931e0 authored by Simon Guinot's avatar Simon Guinot Committed by Jason Cooper
Browse files

ARM: Kirkwood: fix ns2 gpios by converting to pinctrl



Note that the pinctrl conversion also fixes GPIO support for ns2 boards.
Since commit f9e75922: "ARM: Kirkwood: Make use of mvebu pincltl and
gpio", the mvbu_gpio driver is used for DT boards. As mvbu_gpio relies
on the pinctrl driver, then a pinctrl definition must be given to allow
the GPIO configuration.

Signed-off-by: default avatarSimon Guinot <simon.guinot@sequanux.org>
Acked-by: default avatarAndrew Lunn <andrew@lunn.ch>
Signed-off-by: default avatarJason Cooper <jason@lakedaemon.net>
parent 5f79c651
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
/include/ "kirkwood.dtsi"
/include/ "kirkwood-6281.dtsi"

/ {
	chosen {
@@ -6,6 +7,21 @@
	};

	ocp@f1000000 {
		pinctrl: pinctrl@10000 {
			pinctrl-0 = < &pmx_spi &pmx_twsi0 &pmx_uart0
					&pmx_ns2_sata0 &pmx_ns2_sata1>;
			pinctrl-names = "default";

			pmx_ns2_sata0: pmx-ns2-sata0 {
				marvell,pins = "mpp21";
				marvell,function = "sata0";
			};
			pmx_ns2_sata1: pmx-ns2-sata1 {
				marvell,pins = "mpp20";
				marvell,function = "sata1";
			};
		};

		serial@12000 {
			clock-frequency = <166666667>;
			status = "okay";
+0 −38
Original line number Diff line number Diff line
@@ -18,47 +18,11 @@
#include <linux/gpio.h>
#include <linux/of.h>
#include "common.h"
#include "mpp.h"

static struct mv643xx_eth_platform_data ns2_ge00_data = {
	.phy_addr	= MV643XX_ETH_PHY_ADDR(8),
};

static unsigned int ns2_mpp_config[] __initdata = {
	MPP0_SPI_SCn,
	MPP1_SPI_MOSI,
	MPP2_SPI_SCK,
	MPP3_SPI_MISO,
	MPP4_NF_IO6,
	MPP5_NF_IO7,
	MPP6_SYSRST_OUTn,
	MPP7_GPO,		/* Fan speed (bit 1) */
	MPP8_TW0_SDA,
	MPP9_TW0_SCK,
	MPP10_UART0_TXD,
	MPP11_UART0_RXD,
	MPP12_GPO,		/* Red led */
	MPP14_GPIO,		/* USB fuse */
	MPP16_GPIO,		/* SATA 0 power */
	MPP17_GPIO,		/* SATA 1 power */
	MPP18_NF_IO0,
	MPP19_NF_IO1,
	MPP20_SATA1_ACTn,
	MPP21_SATA0_ACTn,
	MPP22_GPIO,		/* Fan speed (bit 0) */
	MPP23_GPIO,		/* Fan power */
	MPP24_GPIO,		/* USB mode select */
	MPP25_GPIO,		/* Fan rotation fail */
	MPP26_GPIO,		/* USB device vbus */
	MPP28_GPIO,		/* USB enable host vbus */
	MPP29_GPIO,		/* Blue led (slow register) */
	MPP30_GPIO,		/* Blue led (command register) */
	MPP31_GPIO,		/* Board power off */
	MPP32_GPIO,		/* Power button (0 = Released, 1 = Pushed) */
	MPP33_GPO,		/* Fan speed (bit 2) */
	0
};

#define NS2_GPIO_POWER_OFF	31

static void ns2_power_off(void)
@@ -71,8 +35,6 @@ void __init ns2_init(void)
	/*
	 * Basic setup. Needs to be called early.
	 */
	kirkwood_mpp_conf(ns2_mpp_config);

	if (of_machine_is_compatible("lacie,netspace_lite_v2") ||
	    of_machine_is_compatible("lacie,netspace_mini_v2"))
		ns2_ge00_data.phy_addr = MV643XX_ETH_PHY_ADDR(0);