summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2018-04-19 15:59:12 -0400
committerDavid S. Miller <davem@davemloft.net>2018-04-19 15:59:12 -0400
commit32e43779fc019ad777c9502210221e3891fdc1bf (patch)
tree8ce7e96850d9073368e72c8f89133ceb90931bf1 /include/linux
parent3f4fe759f0042c762e03194716c8f79f1905dc40 (diff)
parent0207dd1173fe31c153ffd439c4bb33d1341829b1 (diff)
Merge branch 'Modernize-mdio-gpio'
Andrew Lunn says: ==================== Modernize mdio-gpio This patchset is inspired by a previous version by Linus Walleij It reworks the mdio-gpio code to make use of gpio descriptors instead of gpio numbers. However compared to the previous version, it retains support for platform devices. It does however remove the platform_data header file. The needed GPIOs are now passed by making use of a gpiod lookup table. e.g: static struct gpiod_lookup_table zii_scu_mdio_gpiod_table = { .dev_id = "mdio-gpio.0", .table = { GPIO_LOOKUP_IDX("gpio_ich", 17, NULL, MDIO_GPIO_MDC, GPIO_ACTIVE_HIGH), GPIO_LOOKUP_IDX("gpio_ich", 2, NULL, MDIO_GPIO_MDIO, GPIO_ACTIVE_HIGH), GPIO_LOOKUP_IDX("gpio_ich", 21, NULL, MDIO_GPIO_MDO, GPIO_ACTIVE_LOW), }, }; ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/mdio-bitbang.h2
-rw-r--r--include/linux/mdio-gpio.h9
-rw-r--r--include/linux/platform_data/mdio-gpio.h33
3 files changed, 9 insertions, 35 deletions
diff --git a/include/linux/mdio-bitbang.h b/include/linux/mdio-bitbang.h
index a8ac9cfa014c..5d71e8a8500f 100644
--- a/include/linux/mdio-bitbang.h
+++ b/include/linux/mdio-bitbang.h
@@ -33,8 +33,6 @@ struct mdiobb_ops {
struct mdiobb_ctrl {
const struct mdiobb_ops *ops;
- /* reset callback */
- int (*reset)(struct mii_bus *bus);
};
/* The returned bus is not yet registered with the phy layer. */
diff --git a/include/linux/mdio-gpio.h b/include/linux/mdio-gpio.h
new file mode 100644
index 000000000000..cea443a672cb
--- /dev/null
+++ b/include/linux/mdio-gpio.h
@@ -0,0 +1,9 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+#ifndef __LINUX_MDIO_GPIO_H
+#define __LINUX_MDIO_GPIO_H
+
+#define MDIO_GPIO_MDC 0
+#define MDIO_GPIO_MDIO 1
+#define MDIO_GPIO_MDO 2
+
+#endif
diff --git a/include/linux/platform_data/mdio-gpio.h b/include/linux/platform_data/mdio-gpio.h
deleted file mode 100644
index 11f00cdabe3d..000000000000
--- a/include/linux/platform_data/mdio-gpio.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * MDIO-GPIO bus platform data structures
- *
- * Copyright (C) 2008, Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
- *
- * This file is licensed under the terms of the GNU General Public License
- * version 2. This program is licensed "as is" without any warranty of any
- * kind, whether express or implied.
- */
-
-#ifndef __LINUX_MDIO_GPIO_H
-#define __LINUX_MDIO_GPIO_H
-
-#include <linux/mdio-bitbang.h>
-
-struct mdio_gpio_platform_data {
- /* GPIO numbers for bus pins */
- unsigned int mdc;
- unsigned int mdio;
- unsigned int mdo;
-
- bool mdc_active_low;
- bool mdio_active_low;
- bool mdo_active_low;
-
- u32 phy_mask;
- u32 phy_ignore_ta_mask;
- int irqs[PHY_MAX_ADDR];
- /* reset callback */
- int (*reset)(struct mii_bus *bus);
-};
-
-#endif /* __LINUX_MDIO_GPIO_H */