Re: [PATCH 8/8] bcm63xx: prepare for on-board watchdog support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Le Saturday 08 August 2009 21:40:33 Ralf Baechle, vous avez écrit :
> On Fri, Aug 07, 2009 at 11:47:15PM +0200, Florian Fainelli wrote:
> > This patch registers the watchdog platform_device that
> > we are going to use in the watchdog platform_driver in
> > a subsequent patch.
> >
> > Signed-off-by: Florian Fainelli <florian@xxxxxxxxxxx>
> > ---
> > diff --git a/arch/mips/bcm63xx/Makefile b/arch/mips/bcm63xx/Makefile
> > index 70ba038..a4abc11 100644
> > --- a/arch/mips/bcm63xx/Makefile
> > +++ b/arch/mips/bcm63xx/Makefile
> > @@ -5,6 +5,7 @@ obj-y		+= dev-usb-ohci.o
> >  obj-y		+= dev-usb-ehci.o
> >  obj-y		+= dev-enet.o
> >  obj-y		+= dev-dsp.o
> > +obj-y		+= dev-wdt.o
> >  obj-$(CONFIG_EARLY_PRINTK)	+= early_printk.o
> >
> >  obj-y		+= boards/
> > diff --git a/arch/mips/bcm63xx/boards/board_bcm963xx.c
> > b/arch/mips/bcm63xx/boards/board_bcm963xx.c index 17a8636..e6a7b4f 100644
> > --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
> > +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
> > @@ -28,6 +28,7 @@
> >  #include <bcm63xx_dev_usb_ohci.h>
> >  #include <bcm63xx_dev_usb_ehci.h>
> >  #include <bcm63xx_dev_dsp.h>
> > +#include <bcm63xx_dev_wdt.h>
> >  #include <board_bcm963xx.h>
> >
> >  #define PFX	"board_bcm963xx: "
> > @@ -798,6 +799,7 @@ int __init board_register_devices(void)
> >  	u32 val;
> >
> >  	bcm63xx_uart_register();
> > +	bcm63xx_wdt_register();
> >
> >  	if (board.has_pccard)
> >  		bcm63xx_pcmcia_register();
> > diff --git a/arch/mips/bcm63xx/dev-wdt.c b/arch/mips/bcm63xx/dev-wdt.c
> > new file mode 100644
> > index 0000000..6e18489
> > --- /dev/null
> > +++ b/arch/mips/bcm63xx/dev-wdt.c
> > @@ -0,0 +1,36 @@
> > +/*
> > + * This file is subject to the terms and conditions of the GNU General
> > Public + * License.  See the file "COPYING" in the main directory of this
> > archive + * for more details.
> > + *
> > + * Copyright (C) 2008 Florian Fainelli <florian@xxxxxxxxxxx>
> > + */
> > +
> > +#include <linux/init.h>
> > +#include <linux/kernel.h>
> > +#include <linux/platform_device.h>
> > +#include <bcm63xx_cpu.h>
> > +
> > +static struct resource wdt_resources[] = {
> > +	{
> > +		.start		= -1, /* filled at runtime */
> > +		.end		= -1, /* filled at runtime */
> > +		.flags		= IORESOURCE_MEM,
> > +	},
> > +};
> > +
> > +static struct platform_device bcm63xx_wdt_device = {
> > +	.name		= "bcm63xx-wdt",
> > +	.id		= 0,
> > +	.num_resources	= ARRAY_SIZE(wdt_resources),
> > +	.resource	= wdt_resources,
> > +};
> > +
> > +int __init bcm63xx_wdt_register(void)
> > +{
> > +	wdt_resources[0].start = bcm63xx_regset_address(RSET_WDT);
> > +	wdt_resources[0].end = wdt_resources[0].start;
> > +	wdt_resources[0].end += RSET_WDT_SIZE - 1;
> > +
> > +	return platform_device_register(&bcm63xx_wdt_device);
> > +}
> > diff --git a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_wdt.h
> > b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_wdt.h new file mode
> > 100644
> > index 0000000..4aae2c7
> > --- /dev/null
> > +++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_wdt.h
> > @@ -0,0 +1,6 @@
> > +#ifndef BCM63XX_DEV_WDT_H_
> > +#define BCM63XX_DEV_WDT_H_
> > +
> > +int bcm63xx_wdt_register(void);
> > +
> > +#endif /* BCM63XX_DEV_WDT_H_ */
>
> bcm63xx_dev_wdt.h only really exists to keep checpatch.pl happy - not a
> terribly good reason.  I suggest to remove the explicit call to
> bcm63xx_wdt_register, make the function static and use some initfunc magic
> to call it and bcm63xx_dev_wdt.h can go.

Thanks for your comment, I just sent two follow-up patches against patch 7/8 
which addresses that for the uart and watchdog registration.
-- 
Best regards, Florian Fainelli
Email: florian@xxxxxxxxxxx
Web: http://openwrt.org
IRC: [florian] on irc.freenode.net
-------------------------------


[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux