[PATCH 3/5] [FS_ENET] OF-related update for FEC and SCC MAC's
Kumar Gala
galak at kernel.crashing.org
Thu Jan 11 04:07:58 EST 2007
On Jan 9, 2007, at 7:11 PM, Vitaly Bordug wrote:
>
> Updated direct resource pass with ioremap call, make it grant
> proper IRQ
> mapping, stuff incompatible with the new approach were respectively
> put under
> #ifndef CONFIG_PPC_MERGE.
>
> Signed-off-by: Vitaly Bordug <vbordug at ru.mvista.com>
> ---
>
> drivers/net/fs_enet/mac-fec.c | 13 +++++++++----
> drivers/net/fs_enet/mac-scc.c | 6 ++++--
> drivers/net/phy/fixed.c | 2 +-
> 3 files changed, 14 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/net/fs_enet/mac-fec.c b/drivers/net/fs_enet/
> mac-fec.c
> index c2c5fd4..474d6d7 100644
> --- a/drivers/net/fs_enet/mac-fec.c
> +++ b/drivers/net/fs_enet/mac-fec.c
> @@ -104,9 +104,9 @@ static int do_pd_setup(struct fs_enet_private
> *fep)
> fep->interrupt = platform_get_irq_byname(pdev,"interrupt");
> if (fep->interrupt < 0)
> return -EINVAL;
> -
> +
> r = platform_get_resource_byname(pdev, IORESOURCE_MEM, "regs");
> - fep->fec.fecp =(void*)r->start;
> + fep->fec.fecp = (void *)ioremap(r->start, r->end - r->start + 1);
you should get rid of the (void *) cast
> if(fep->fec.fecp == NULL)
> return -EINVAL;
> @@ -319,11 +319,14 @@ static void restart(struct net_device *dev)
> * Clear any outstanding interrupt.
> */
> FW(fecp, ievent, 0xffc0);
> +#ifndef CONFIG_PPC_MERGE
> FW(fecp, ivec, (fep->interrupt / 2) << 29);
> -
> +#else
> + FW(fecp, ivec, (irq_map[fep->interrupt].hwirq / 2) << 29);
> +#endif
>
> /*
> - * adjust to speed (only for DUET & RMII)
> + * adjust to speed (only for DUET & RMII)
> */
> #ifdef CONFIG_DUET
> if (fpi->use_rmii) {
> @@ -418,6 +421,7 @@ static void stop(struct net_device *dev)
>
> static void pre_request_irq(struct net_device *dev, int irq)
> {
> +#ifndef CONFIG_PPC_MERGE
> immap_t *immap = fs_enet_immap;
> u32 siel;
>
> @@ -431,6 +435,7 @@ static void pre_request_irq(struct net_device
> *dev, int irq)
> siel &= ~(0x80000000 >> (irq & ~1));
> out_be32(&immap->im_siu_conf.sc_siel, siel);
> }
> +#endif
> }
>
> static void post_free_irq(struct net_device *dev, int irq)
> diff --git a/drivers/net/fs_enet/mac-scc.c b/drivers/net/fs_enet/
> mac-scc.c
> index 95ec587..62057f4 100644
> --- a/drivers/net/fs_enet/mac-scc.c
> +++ b/drivers/net/fs_enet/mac-scc.c
> @@ -121,13 +121,13 @@ static int do_pd_setup(struct fs_enet_private
> *fep)
> return -EINVAL;
>
> r = platform_get_resource_byname(pdev, IORESOURCE_MEM, "regs");
> - fep->scc.sccp = (void *)r->start;
> + fep->scc.sccp = (void *)ioremap(r->start, r->end - r->start + 1);
Get rid of void * cast
>
> if (fep->scc.sccp == NULL)
> return -EINVAL;
>
> r = platform_get_resource_byname(pdev, IORESOURCE_MEM, "pram");
> - fep->scc.ep = (void *)r->start;
> + fep->scc.ep = (void *)ioremap(r->start, r->end - r->start + 1);
Get rid of void * cast
> if (fep->scc.ep == NULL)
> return -EINVAL;
> @@ -397,6 +397,7 @@ static void stop(struct net_device *dev)
>
> static void pre_request_irq(struct net_device *dev, int irq)
> {
> +#ifndef CONFIG_PPC_MERGE
> immap_t *immap = fs_enet_immap;
> u32 siel;
>
> @@ -410,6 +411,7 @@ static void pre_request_irq(struct net_device
> *dev, int irq)
> siel &= ~(0x80000000 >> (irq & ~1));
> out_be32(&immap->im_siu_conf.sc_siel, siel);
> }
> +#endif
> }
>
> static void post_free_irq(struct net_device *dev, int irq)
> diff --git a/drivers/net/phy/fixed.c b/drivers/net/phy/fixed.c
> index 096d4a1..8613539 100644
> --- a/drivers/net/phy/fixed.c
> +++ b/drivers/net/phy/fixed.c
> @@ -349,7 +349,7 @@ static int __init fixed_init(void)
> fixed_mdio_register_device(0, 100, 1);
> #endif
>
> -#ifdef CONFIX_FIXED_MII_10_FDX
> +#ifdef CONFIG_FIXED_MII_10_FDX
> fixed_mdio_register_device(0, 10, 1);
> #endif
> return 0;
> _______________________________________________
> Linuxppc-dev mailing list
> Linuxppc-dev at ozlabs.org
> https://ozlabs.org/mailman/listinfo/linuxppc-dev
More information about the Linuxppc-dev
mailing list