[linux-yocto] [PATCH 68/94] arm-powerpc-drivers: Rearrange the location of the wrapper functions

Bruce Ashfield bruce.ashfield at windriver.com
Sat Nov 9 07:56:00 PST 2013


On 11/7/2013, 8:13 PM, Paul Butler wrote:
> From: John Jacques <john.jacques at lsi.com>
>
> needed to get them included in the simulation build.

Looking at the series as a whole, why not squash this with patch 63/94 ?
No sense introducing the wrapper code, and then moving it later in the
same series.

Bruce

>
> Signed-off-by: John Jacques <john.jacques at lsi.com>
> ---
>   arch/arm/mach-axxia/Makefile            |   1 +
>   arch/arm/mach-axxia/wrappers.c          | 132 ++++++++++++++++++++++++++++++++
>   arch/powerpc/sysdev/Makefile            |   2 +-
>   arch/powerpc/sysdev/lsi_acp_wrappers.c  | 132 ++++++++++++++++++++++++++++++++
>   drivers/net/ethernet/lsi/lsi_acp_mdio.c |  96 +----------------------
>   drivers/net/ethernet/lsi/lsi_acp_net.c  |   2 +-
>   6 files changed, 269 insertions(+), 96 deletions(-)
>   create mode 100644 arch/arm/mach-axxia/wrappers.c
>   create mode 100644 arch/powerpc/sysdev/lsi_acp_wrappers.c
>
> diff --git a/arch/arm/mach-axxia/Makefile b/arch/arm/mach-axxia/Makefile
> index 6282d36..ac05192 100644
> --- a/arch/arm/mach-axxia/Makefile
> +++ b/arch/arm/mach-axxia/Makefile
> @@ -1,6 +1,7 @@
>   #
>   # Makefile for the linux kernel.
>   #
> +obj-y                                   += wrappers.o
>   obj-y					+= axxia.o
>   obj-y					+= clock.o
>   obj-y                                   += io.o
> diff --git a/arch/arm/mach-axxia/wrappers.c b/arch/arm/mach-axxia/wrappers.c
> new file mode 100644
> index 0000000..fe384aa
> --- /dev/null
> +++ b/arch/arm/mach-axxia/wrappers.c
> @@ -0,0 +1,132 @@
> +/*
> + * arch/arm/mach-axxia/wrappers.c
> + *
> + * Copyright (C) 2013 LSI
> + *
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License as published by
> + * the Free Software Foundation; either version 2 of the License, or
> + * (at your option) any later version.
> + *
> + * This program is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the
> + * GNU General Public License for more details.
> + *
> + * You should have received a copy of the GNU General Public License
> + * along with this program; if not, write to the Free Software
> + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307	 USA
> + */
> +
> +#include <linux/module.h>
> +#include <asm/irq.h>
> +#include <linux/io.h>
> +#include <linux/irqdomain.h>
> +#include <linux/skbuff.h>
> +#include <linux/platform_device.h>
> +
> +/*
> +  ==============================================================================
> +  ==============================================================================
> +  Platform Device Registration
> +  ==============================================================================
> +  ==============================================================================
> +*/
> +
> +/*
> +  ------------------------------------------------------------------------------
> +  acp_platform_device_register
> +*/
> +
> +int
> +acp_platform_device_register(struct platform_device *pdev)
> +{
> +	return platform_device_register(pdev);
> +}
> +EXPORT_SYMBOL(acp_platform_device_register);
> +
> +/*
> +  ------------------------------------------------------------------------------
> +  acp_platform_device_unregister
> +*/
> +
> +void
> +acp_platform_device_unregister(struct platform_device *pdev)
> +{
> +	platform_device_unregister(pdev);
> +
> +	return;
> +}
> +EXPORT_SYMBOL(acp_platform_device_unregister);
> +
> +/*
> +  ============================================================================
> +  ============================================================================
> +  SKB
> +  ============================================================================
> +  ============================================================================
> +*/
> +
> +/*
> +  ----------------------------------------------------------------------------
> +  acp_skb_tstamp_tx
> +*/
> +
> +void
> +acp_skb_tstamp_tx(struct sk_buff *orig_skb,
> +		  struct skb_shared_hwtstamps *hwtstamps) {
> +	skb_tstamp_tx(orig_skb, hwtstamps);
> +}
> +EXPORT_SYMBOL(acp_skb_tstamp_tx);
> +
> +/*
> +  ============================================================================
> +  ============================================================================
> +  Interrupts
> +  ============================================================================
> +  ============================================================================
> +*/
> +
> +/*
> + * -------------------------------------------------------------------------
> + * acp_irq_create_mapping
> + */
> +unsigned int acp_irq_create_mapping(struct irq_domain *host,
> +				    irq_hw_number_t hwirq)
> +{
> +	unsigned int mapped_irq;
> +
> +	preempt_disable();
> +	mapped_irq = irq_create_mapping(host, hwirq);
> +	preempt_enable();
> +
> +	return mapped_irq;
> +}
> +EXPORT_SYMBOL(acp_irq_create_mapping);
> +
> +/*
> +  ==============================================================================
> +  ==============================================================================
> +  Linux Stuff
> +  ==============================================================================
> +  ==============================================================================
> +*/
> +
> +/*
> +  ------------------------------------------------------------------------------
> +  acp_wrappers_init
> +*/
> +
> +int __init
> +acp_wrappers_init(void)
> +{
> +	printk(KERN_INFO "Initializing Axxia Wrappers.\n");
> +
> +	return 0;
> +}
> +
> +module_init(acp_wrappers_init);
> +
> +MODULE_AUTHOR("LSI Corporation");
> +MODULE_DESCRIPTION("Timing Test");
> +MODULE_LICENSE("GPL");
> diff --git a/arch/powerpc/sysdev/Makefile b/arch/powerpc/sysdev/Makefile
> index 6354d1c..a95b59f 100644
> --- a/arch/powerpc/sysdev/Makefile
> +++ b/arch/powerpc/sysdev/Makefile
> @@ -73,4 +73,4 @@ obj-$(CONFIG_PPC_XICS)		+= xics/
>
>   obj-$(CONFIG_GE_FPGA)		+= ge/
>
> -obj-$(CONFIG_ACP)		+= lsi_acp_ncr.o
> +obj-$(CONFIG_ACP)		+= lsi_acp_ncr.o lsi_acp_wrappers.o
> diff --git a/arch/powerpc/sysdev/lsi_acp_wrappers.c b/arch/powerpc/sysdev/lsi_acp_wrappers.c
> new file mode 100644
> index 0000000..724c96c
> --- /dev/null
> +++ b/arch/powerpc/sysdev/lsi_acp_wrappers.c
> @@ -0,0 +1,132 @@
> +/*
> + * arch/powerpc/sysdev/lsi_acp_wrappers.c
> + *
> + * Copyright (C) 2013 LSI
> + *
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License as published by
> + * the Free Software Foundation; either version 2 of the License, or
> + * (at your option) any later version.
> + *
> + * This program is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the
> + * GNU General Public License for more details.
> + *
> + * You should have received a copy of the GNU General Public License
> + * along with this program; if not, write to the Free Software
> + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307	 USA
> + */
> +
> +#include <linux/module.h>
> +#include <asm/irq.h>
> +#include <linux/io.h>
> +#include <linux/irqdomain.h>
> +#include <linux/skbuff.h>
> +#include <linux/platform_device.h>
> +
> +/*
> +  ==============================================================================
> +  ==============================================================================
> +  Platform Device Registration
> +  ==============================================================================
> +  ==============================================================================
> +*/
> +
> +/*
> +  ------------------------------------------------------------------------------
> +  acp_platform_device_register
> +*/
> +
> +int
> +acp_platform_device_register(struct platform_device *pdev)
> +{
> +	return platform_device_register(pdev);
> +}
> +EXPORT_SYMBOL(acp_platform_device_register);
> +
> +/*
> +  ------------------------------------------------------------------------------
> +  acp_platform_device_unregister
> +*/
> +
> +void
> +acp_platform_device_unregister(struct platform_device *pdev)
> +{
> +	platform_device_unregister(pdev);
> +
> +	return;
> +}
> +EXPORT_SYMBOL(acp_platform_device_unregister);
> +
> +/*
> +  ============================================================================
> +  ============================================================================
> +  SKB
> +  ============================================================================
> +  ============================================================================
> +*/
> +
> +/*
> +  ----------------------------------------------------------------------------
> +  acp_skb_tstamp_tx
> +*/
> +
> +void
> +acp_skb_tstamp_tx(struct sk_buff *orig_skb,
> +		  struct skb_shared_hwtstamps *hwtstamps) {
> +	skb_tstamp_tx(orig_skb, hwtstamps);
> +}
> +EXPORT_SYMBOL(acp_skb_tstamp_tx);
> +
> +/*
> +  ============================================================================
> +  ============================================================================
> +  Interrupts
> +  ============================================================================
> +  ============================================================================
> +*/
> +
> +/*
> + * -------------------------------------------------------------------------
> + * acp_irq_create_mapping
> + */
> +unsigned int acp_irq_create_mapping(struct irq_domain *host,
> +				    irq_hw_number_t hwirq)
> +{
> +	unsigned int mapped_irq;
> +
> +	preempt_disable();
> +	mapped_irq = irq_create_mapping(host, hwirq);
> +	preempt_enable();
> +
> +	return mapped_irq;
> +}
> +EXPORT_SYMBOL(acp_irq_create_mapping);
> +
> +/*
> +  ==============================================================================
> +  ==============================================================================
> +  Linux Stuff
> +  ==============================================================================
> +  ==============================================================================
> +*/
> +
> +/*
> +  ------------------------------------------------------------------------------
> +  acp_wrappers_init
> +*/
> +
> +int __init
> +acp_wrappers_init(void)
> +{
> +	printk(KERN_INFO "Initializing Axxia Wrappers.\n");
> +
> +	return 0;
> +}
> +
> +module_init(acp_wrappers_init);
> +
> +MODULE_AUTHOR("LSI Corporation");
> +MODULE_DESCRIPTION("Timing Test");
> +MODULE_LICENSE("GPL");
> diff --git a/drivers/net/ethernet/lsi/lsi_acp_mdio.c b/drivers/net/ethernet/lsi/lsi_acp_mdio.c
> index 8602374..739f34c 100644
> --- a/drivers/net/ethernet/lsi/lsi_acp_mdio.c
> +++ b/drivers/net/ethernet/lsi/lsi_acp_mdio.c
> @@ -140,11 +140,6 @@ acp_mdio_read(unsigned long address, unsigned long offset,
>   	*value = (unsigned short)(command & 0xffff);
>   	spin_unlock_irqrestore(&mdio_lock, flags);
>
> -#if 0
> -	printk("%s - Read 0x%x from 0x%x register 0x%x\n",
> -	       __FUNCTION__, *value, address, offset);
> -#endif
> -
>   	return 0;
>   }
>   EXPORT_SYMBOL(acp_mdio_read);
> @@ -240,11 +235,6 @@ acp_mdio_write(unsigned long address, unsigned long offset,
>
>   	spin_unlock_irqrestore(&mdio_lock, flags);
>
> -#if 0
> -	printk("%s - Wrote 0x%x to 0x%x register 0x%x\n",
> -	       __FUNCTION__, value, address, offset);
> -#endif
> -
>   	return 0;
>   }
>   EXPORT_SYMBOL(acp_mdio_write);
> @@ -273,88 +263,6 @@ acp_mdio_initialize(void)
>   /*
>     ==============================================================================
>     ==============================================================================
> -  Platform Device Registration
> -  ==============================================================================
> -  ==============================================================================
> -*/
> -
> -/*
> -  ------------------------------------------------------------------------------
> -  acp_platform_device_register
> -*/
> -
> -int
> -acp_platform_device_register(struct platform_device *pdev)
> -{
> -	return platform_device_register(pdev);
> -}
> -
> -EXPORT_SYMBOL(acp_platform_device_register);
> -
> -/*
> -  ------------------------------------------------------------------------------
> -  acp_platform_device_unregister
> -*/
> -
> -void
> -acp_platform_device_unregister(struct platform_device *pdev)
> -{
> -	platform_device_unregister(pdev);
> -
> -	return;
> -}
> -
> -EXPORT_SYMBOL(acp_platform_device_unregister);
> -
> -/*
> -  ============================================================================
> -  ============================================================================
> -  SKB
> -  ============================================================================
> -  ============================================================================
> -*/
> -
> -/*
> -  ----------------------------------------------------------------------------
> -  acp_skb_tstamp_tx
> -*/
> -
> -void
> -acp_skb_tstamp_tx(struct sk_buff *orig_skb,
> -		  struct skb_shared_hwtstamps *hwtstamps) {
> -	skb_tstamp_tx(orig_skb, hwtstamps);
> -}
> -
> -EXPORT_SYMBOL(acp_skb_tstamp_tx);
> -
> -/*
> -  ============================================================================
> -  ============================================================================
> -  Interrupts
> -  ============================================================================
> -  ============================================================================
> -*/
> -
> -/*
> - * -------------------------------------------------------------------------
> - * acp_irq_create_mapping
> - */
> -unsigned int acp_irq_create_mapping(struct irq_domain *host,
> -				    irq_hw_number_t hwirq)
> -{
> -	unsigned int mapped_irq;
> -
> -	preempt_disable();
> -	mapped_irq = irq_create_mapping(host, hwirq);
> -	preempt_enable();
> -
> -	return mapped_irq;
> -}
> -EXPORT_SYMBOL(acp_irq_create_mapping);
> -
> -/*
> -  ==============================================================================
> -  ==============================================================================
>     Linux Stuff
>     ==============================================================================
>     ==============================================================================
> @@ -366,7 +274,7 @@ EXPORT_SYMBOL(acp_irq_create_mapping);
>   */
>
>   int __init
> -acp_wrappers_init(void)
> +acp_mdio_init(void)
>   {
>   	int rc = -ENODEV;
>   	struct device_node *np = NULL;
> @@ -403,7 +311,7 @@ error:
>   	return rc;
>   }
>
> -module_init(acp_wrappers_init);
> +module_init(acp_mdio_init);
>
>   MODULE_AUTHOR("LSI Corporation");
>   MODULE_DESCRIPTION("Timing Test");
> diff --git a/drivers/net/ethernet/lsi/lsi_acp_net.c b/drivers/net/ethernet/lsi/lsi_acp_net.c
> index 0fe090e..21f4cb9 100644
> --- a/drivers/net/ethernet/lsi/lsi_acp_net.c
> +++ b/drivers/net/ethernet/lsi/lsi_acp_net.c
> @@ -92,7 +92,7 @@
>
>   /* Define to disable full duplex mode on Amarillo boards */
>   #undef AMARILLO_WA
> -/*#define AMARILLO_WA*/
> +#define AMARILLO_WA
>
>   #define LSI_DRV_NAME           "acp-femac"
>   #define LSI_MDIO_NAME          "acp-femac-mdio"
>




More information about the linux-yocto mailing list