1f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas/* 2f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas * MDIO-GPIO bus platform data structures 3f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas * 4f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas * Copyright (C) 2008, Paulius Zaleckas <paulius.zaleckas@teltonika.lt> 5f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas * 6f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas * This file is licensed under the terms of the GNU General Public License 7f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas * version 2. This program is licensed "as is" without any warranty of any 8f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas * kind, whether express or implied. 9f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas */ 10f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas 11f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas#ifndef __LINUX_MDIO_GPIO_H 12f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas#define __LINUX_MDIO_GPIO_H 13f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas 14f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas#include <linux/mdio-bitbang.h> 15f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas 16f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckasstruct mdio_gpio_platform_data { 17f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas /* GPIO numbers for bus pins */ 18f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas unsigned int mdc; 19f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas unsigned int mdio; 20f1d54c47502f42f5c4b89dacbe845ecd87ca002eGuenter Roeck unsigned int mdo; 21f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas 221d2514818a2c3d94dd250e6027cb928a4e192548Guenter Roeck bool mdc_active_low; 231d2514818a2c3d94dd250e6027cb928a4e192548Guenter Roeck bool mdio_active_low; 24f1d54c47502f42f5c4b89dacbe845ecd87ca002eGuenter Roeck bool mdo_active_low; 251d2514818a2c3d94dd250e6027cb928a4e192548Guenter Roeck 26f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas unsigned int phy_mask; 27f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas int irqs[PHY_MAX_ADDR]; 2864882709ef07f3eae29c7afc5aa8b84d12733a72Srinivas Kandagatla /* reset callback */ 2964882709ef07f3eae29c7afc5aa8b84d12733a72Srinivas Kandagatla int (*reset)(struct mii_bus *bus); 30f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas}; 31f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas 32f004f3ea34209d8b836426b26ade3dc502631b18Paulius Zaleckas#endif /* __LINUX_MDIO_GPIO_H */ 33