Patchwork [1/4] ARM: ep93xx: move network platform data to separate header

login
register
mail settings
Submitter Arnd Bergmann
Date April 15, 2019, 7:25 p.m.
Message ID <20190415192734.935387-1-arnd@arndb.de>
Download mbox | patch
Permalink /patch/773637/
State New
Headers show

Comments

Arnd Bergmann - April 15, 2019, 7:25 p.m.
The header file is the only thing preventing us from building the
driver in a cross-platform configuration, so move the structure
we are interested in to the global platform_data location
and enable compile testing.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 arch/arm/mach-ep93xx/include/mach/platform.h |  7 +------
 drivers/net/ethernet/cirrus/Kconfig          |  2 +-
 drivers/net/ethernet/cirrus/ep93xx_eth.c     |  2 +-
 include/linux/platform_data/eth-ep93xx.h     | 10 ++++++++++
 4 files changed, 13 insertions(+), 8 deletions(-)
 create mode 100644 include/linux/platform_data/eth-ep93xx.h
Alexander Sverdlin - April 15, 2019, 7:31 p.m.
Hi Arnd,

On 15/04/2019 21:25, Arnd Bergmann wrote:
> The header file is the only thing preventing us from building the
> driver in a cross-platform configuration, so move the structure
> we are interested in to the global platform_data location
> and enable compile testing.

Acked-by: Alexander Sverdlin <alexander.sverdlin@gmail.com>

> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
>  arch/arm/mach-ep93xx/include/mach/platform.h |  7 +------
>  drivers/net/ethernet/cirrus/Kconfig          |  2 +-
>  drivers/net/ethernet/cirrus/ep93xx_eth.c     |  2 +-
>  include/linux/platform_data/eth-ep93xx.h     | 10 ++++++++++
>  4 files changed, 13 insertions(+), 8 deletions(-)
>  create mode 100644 include/linux/platform_data/eth-ep93xx.h
> 
> diff --git a/arch/arm/mach-ep93xx/include/mach/platform.h b/arch/arm/mach-ep93xx/include/mach/platform.h
> index 6c41c794bed5..43446f33c2be 100644
> --- a/arch/arm/mach-ep93xx/include/mach/platform.h
> +++ b/arch/arm/mach-ep93xx/include/mach/platform.h
> @@ -5,6 +5,7 @@
>  
>  #ifndef __ASSEMBLY__
>  
> +#include <linux/platform_data/eth-ep93xx.h>
>  #include <linux/reboot.h>
>  
>  struct device;
> @@ -15,12 +16,6 @@ struct ep93xxfb_mach_info;
>  struct ep93xx_keypad_platform_data;
>  struct ep93xx_spi_info;
>  
> -struct ep93xx_eth_data
> -{
> -	unsigned char	dev_addr[6];
> -	unsigned char	phy_id;
> -};
> -
>  void ep93xx_map_io(void);
>  void ep93xx_init_irq(void);
>  
> diff --git a/drivers/net/ethernet/cirrus/Kconfig b/drivers/net/ethernet/cirrus/Kconfig
> index e9a0213b08c4..6238e6951336 100644
> --- a/drivers/net/ethernet/cirrus/Kconfig
> +++ b/drivers/net/ethernet/cirrus/Kconfig
> @@ -41,7 +41,7 @@ config CS89x0_PLATFORM
>  
>  config EP93XX_ETH
>  	tristate "EP93xx Ethernet support"
> -	depends on ARM && ARCH_EP93XX
> +	depends on (ARM && ARCH_EP93XX) || COMPILE_TEST
>  	select MII
>  	help
>  	  This is a driver for the ethernet hardware included in EP93xx CPUs.
> diff --git a/drivers/net/ethernet/cirrus/ep93xx_eth.c b/drivers/net/ethernet/cirrus/ep93xx_eth.c
> index 13dfdfca49fc..a6da9873570b 100644
> --- a/drivers/net/ethernet/cirrus/ep93xx_eth.c
> +++ b/drivers/net/ethernet/cirrus/ep93xx_eth.c
> @@ -25,7 +25,7 @@
>  #include <linux/io.h>
>  #include <linux/slab.h>
>  
> -#include <mach/hardware.h>
> +#include <linux/platform_data/eth-ep93xx.h>
>  
>  #define DRV_MODULE_NAME		"ep93xx-eth"
>  #define DRV_MODULE_VERSION	"0.1"
> diff --git a/include/linux/platform_data/eth-ep93xx.h b/include/linux/platform_data/eth-ep93xx.h
> new file mode 100644
> index 000000000000..8eef637a804d
> --- /dev/null
> +++ b/include/linux/platform_data/eth-ep93xx.h
> @@ -0,0 +1,10 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +#ifndef _LINUX_PLATFORM_DATA_ETH_EP93XX
> +#define _LINUX_PLATFORM_DATA_ETH_EP93XX
> +
> +struct ep93xx_eth_data {
> +	unsigned char	dev_addr[6];
> +	unsigned char	phy_id;
> +};
> +
> +#endif
>

Patch

diff --git a/arch/arm/mach-ep93xx/include/mach/platform.h b/arch/arm/mach-ep93xx/include/mach/platform.h
index 6c41c794bed5..43446f33c2be 100644
--- a/arch/arm/mach-ep93xx/include/mach/platform.h
+++ b/arch/arm/mach-ep93xx/include/mach/platform.h
@@ -5,6 +5,7 @@ 
 
 #ifndef __ASSEMBLY__
 
+#include <linux/platform_data/eth-ep93xx.h>
 #include <linux/reboot.h>
 
 struct device;
@@ -15,12 +16,6 @@  struct ep93xxfb_mach_info;
 struct ep93xx_keypad_platform_data;
 struct ep93xx_spi_info;
 
-struct ep93xx_eth_data
-{
-	unsigned char	dev_addr[6];
-	unsigned char	phy_id;
-};
-
 void ep93xx_map_io(void);
 void ep93xx_init_irq(void);
 
diff --git a/drivers/net/ethernet/cirrus/Kconfig b/drivers/net/ethernet/cirrus/Kconfig
index e9a0213b08c4..6238e6951336 100644
--- a/drivers/net/ethernet/cirrus/Kconfig
+++ b/drivers/net/ethernet/cirrus/Kconfig
@@ -41,7 +41,7 @@  config CS89x0_PLATFORM
 
 config EP93XX_ETH
 	tristate "EP93xx Ethernet support"
-	depends on ARM && ARCH_EP93XX
+	depends on (ARM && ARCH_EP93XX) || COMPILE_TEST
 	select MII
 	help
 	  This is a driver for the ethernet hardware included in EP93xx CPUs.
diff --git a/drivers/net/ethernet/cirrus/ep93xx_eth.c b/drivers/net/ethernet/cirrus/ep93xx_eth.c
index 13dfdfca49fc..a6da9873570b 100644
--- a/drivers/net/ethernet/cirrus/ep93xx_eth.c
+++ b/drivers/net/ethernet/cirrus/ep93xx_eth.c
@@ -25,7 +25,7 @@ 
 #include <linux/io.h>
 #include <linux/slab.h>
 
-#include <mach/hardware.h>
+#include <linux/platform_data/eth-ep93xx.h>
 
 #define DRV_MODULE_NAME		"ep93xx-eth"
 #define DRV_MODULE_VERSION	"0.1"
diff --git a/include/linux/platform_data/eth-ep93xx.h b/include/linux/platform_data/eth-ep93xx.h
new file mode 100644
index 000000000000..8eef637a804d
--- /dev/null
+++ b/include/linux/platform_data/eth-ep93xx.h
@@ -0,0 +1,10 @@ 
+/* SPDX-License-Identifier: GPL-2.0 */
+#ifndef _LINUX_PLATFORM_DATA_ETH_EP93XX
+#define _LINUX_PLATFORM_DATA_ETH_EP93XX
+
+struct ep93xx_eth_data {
+	unsigned char	dev_addr[6];
+	unsigned char	phy_id;
+};
+
+#endif