* [PATCHv4 0/2] imx2-wdt: Add regmap-mmio support
@ 2014-04-03 1:04 Xiubo Li
2014-04-03 1:04 ` [PATCHv4 1/2] watchdog: imx2_wdt: Sort the header files alphabetically Xiubo Li
` (2 more replies)
0 siblings, 3 replies; 8+ messages in thread
From: Xiubo Li @ 2014-04-03 1:04 UTC (permalink / raw)
To: wim, linux, shawn.guo, linux-watchdog; +Cc: linux-kernel, Xiubo Li
This patches are preparing for Vybird, LS1 and LS2. And on LS1 the IP will
in BE mode.
Changes in V4:
- Add the explanation why uing the regmap APIs.
Changes in V3:
- convert to use regmap-mmio API.
Changes in V2:
- Add the detail information in the commit comment.
- 'big-endians' --> 'big-endian'.
Xiubo Li (2):
watchdog: imx2_wdt: Sort the header files alphabetically
watchdog: imx2_wdt: convert to use regmap API.
drivers/watchdog/imx2_wdt.c | 62 +++++++++++++++++++++++++++------------------
1 file changed, 38 insertions(+), 24 deletions(-)
--
1.8.4
^ permalink raw reply [flat|nested] 8+ messages in thread* [PATCHv4 1/2] watchdog: imx2_wdt: Sort the header files alphabetically 2014-04-03 1:04 [PATCHv4 0/2] imx2-wdt: Add regmap-mmio support Xiubo Li @ 2014-04-03 1:04 ` Xiubo Li 2014-04-03 1:04 ` [PATCHv4 2/2] watchdog: imx2_wdt: convert to use regmap API Xiubo Li 2014-04-03 2:52 ` [PATCHv4 0/2] imx2-wdt: Add regmap-mmio support Shawn Guo 2 siblings, 0 replies; 8+ messages in thread From: Xiubo Li @ 2014-04-03 1:04 UTC (permalink / raw) To: wim, linux, shawn.guo, linux-watchdog; +Cc: linux-kernel, Xiubo Li Signed-off-by: Xiubo Li <Li.Xiubo@freescale.com> Reviewed-by: Guenter Roeck <linux@roeck-us.net> Cc: Shawn Guo <shawn.guo@linaro.org> --- drivers/watchdog/imx2_wdt.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/watchdog/imx2_wdt.c b/drivers/watchdog/imx2_wdt.c index dd51d95..1795922 100644 --- a/drivers/watchdog/imx2_wdt.c +++ b/drivers/watchdog/imx2_wdt.c @@ -21,19 +21,19 @@ * Halt on suspend: Manual Can be automatic */ +#include <linux/clk.h> +#include <linux/fs.h> #include <linux/init.h> +#include <linux/io.h> +#include <linux/jiffies.h> #include <linux/kernel.h> #include <linux/miscdevice.h> #include <linux/module.h> #include <linux/moduleparam.h> #include <linux/platform_device.h> -#include <linux/watchdog.h> -#include <linux/clk.h> -#include <linux/fs.h> -#include <linux/io.h> -#include <linux/uaccess.h> #include <linux/timer.h> -#include <linux/jiffies.h> +#include <linux/uaccess.h> +#include <linux/watchdog.h> #define DRIVER_NAME "imx2-wdt" -- 1.8.4 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCHv4 2/2] watchdog: imx2_wdt: convert to use regmap API. 2014-04-03 1:04 [PATCHv4 0/2] imx2-wdt: Add regmap-mmio support Xiubo Li 2014-04-03 1:04 ` [PATCHv4 1/2] watchdog: imx2_wdt: Sort the header files alphabetically Xiubo Li @ 2014-04-03 1:04 ` Xiubo Li 2014-04-03 16:36 ` Guenter Roeck 2014-04-03 2:52 ` [PATCHv4 0/2] imx2-wdt: Add regmap-mmio support Shawn Guo 2 siblings, 1 reply; 8+ messages in thread From: Xiubo Li @ 2014-04-03 1:04 UTC (permalink / raw) To: wim, linux, shawn.guo, linux-watchdog; +Cc: linux-kernel, Xiubo Li This watchdog driver will be working on IMX2+, Vybrid, LS1, LS2+ platforms, and will be in different endianness mode in those SoCs: SoCs CPU endian mode WDT endian mode ------------------------------------------------ IMX2+ LE LE Vybird LE LE LS1 LE BE LS2 LE LE Other possible SoCs: SoCs CPU endian mode WDT endian mode ------------------------------------------------ Soc1 BE BE Soc2 BE LE And also the watchdog's registers will be 32-bits for some versions, and though it is 16-bits in IMX2+, Vybird and LS+. Using the regmap APIs, could be more easy to support different endianness and also more easy to support 32-bits version... Signed-off-by: Xiubo Li <Li.Xiubo@freescale.com> Reviewed-by: Guenter Roeck <linux@roeck-us.net> Cc: Shawn Guo <shawn.guo@linaro.org> --- drivers/watchdog/imx2_wdt.c | 50 +++++++++++++++++++++++++++++---------------- 1 file changed, 32 insertions(+), 18 deletions(-) diff --git a/drivers/watchdog/imx2_wdt.c b/drivers/watchdog/imx2_wdt.c index 1795922..76fa724 100644 --- a/drivers/watchdog/imx2_wdt.c +++ b/drivers/watchdog/imx2_wdt.c @@ -31,6 +31,7 @@ #include <linux/module.h> #include <linux/moduleparam.h> #include <linux/platform_device.h> +#include <linux/regmap.h> #include <linux/timer.h> #include <linux/uaccess.h> #include <linux/watchdog.h> @@ -61,7 +62,7 @@ static struct { struct clk *clk; - void __iomem *base; + struct regmap *regmap; unsigned timeout; unsigned long status; struct timer_list timer; /* Pings the watchdog when closed */ @@ -87,7 +88,9 @@ static const struct watchdog_info imx2_wdt_info = { static inline void imx2_wdt_setup(void) { - u16 val = __raw_readw(imx2_wdt.base + IMX2_WDT_WCR); + u32 val; + + regmap_read(imx2_wdt.regmap, IMX2_WDT_WCR, &val); /* Suspend timer in low power mode, write once-only */ val |= IMX2_WDT_WCR_WDZST; @@ -100,17 +103,17 @@ static inline void imx2_wdt_setup(void) /* Set the watchdog's Time-Out value */ val |= WDOG_SEC_TO_COUNT(imx2_wdt.timeout); - __raw_writew(val, imx2_wdt.base + IMX2_WDT_WCR); + regmap_write(imx2_wdt.regmap, IMX2_WDT_WCR, val); /* enable the watchdog */ val |= IMX2_WDT_WCR_WDE; - __raw_writew(val, imx2_wdt.base + IMX2_WDT_WCR); + regmap_write(imx2_wdt.regmap, IMX2_WDT_WCR, val); } static inline void imx2_wdt_ping(void) { - __raw_writew(IMX2_WDT_SEQ1, imx2_wdt.base + IMX2_WDT_WSR); - __raw_writew(IMX2_WDT_SEQ2, imx2_wdt.base + IMX2_WDT_WSR); + regmap_write(imx2_wdt.regmap, IMX2_WDT_WSR, IMX2_WDT_SEQ1); + regmap_write(imx2_wdt.regmap, IMX2_WDT_WSR, IMX2_WDT_SEQ2); } static void imx2_wdt_timer_ping(unsigned long arg) @@ -143,12 +146,8 @@ static void imx2_wdt_stop(void) static void imx2_wdt_set_timeout(int new_timeout) { - u16 val = __raw_readw(imx2_wdt.base + IMX2_WDT_WCR); - - /* set the new timeout value in the WSR */ - val &= ~IMX2_WDT_WCR_WT; - val |= WDOG_SEC_TO_COUNT(new_timeout); - __raw_writew(val, imx2_wdt.base + IMX2_WDT_WCR); + regmap_update_bits(imx2_wdt.regmap, IMX2_WDT_WCR, IMX2_WDT_WCR_WT, + WDOG_SEC_TO_COUNT(new_timeout)); } static int imx2_wdt_open(struct inode *inode, struct file *file) @@ -181,7 +180,7 @@ static long imx2_wdt_ioctl(struct file *file, unsigned int cmd, void __user *argp = (void __user *)arg; int __user *p = argp; int new_value; - u16 val; + u32 val; switch (cmd) { case WDIOC_GETSUPPORT: @@ -192,7 +191,7 @@ static long imx2_wdt_ioctl(struct file *file, unsigned int cmd, return put_user(0, p); case WDIOC_GETBOOTSTATUS: - val = __raw_readw(imx2_wdt.base + IMX2_WDT_WRSR); + regmap_read(imx2_wdt.regmap, IMX2_WDT_WRSR, &val); new_value = val & IMX2_WDT_WRSR_TOUT ? WDIOF_CARDRESET : 0; return put_user(new_value, p); @@ -255,15 +254,30 @@ static struct miscdevice imx2_wdt_miscdev = { .fops = &imx2_wdt_fops, }; +static struct regmap_config imx2_wdt_regmap_config = { + .reg_bits = 16, + .reg_stride = 2, + .val_bits = 16, + .max_register = 0x8, +}; + static int __init imx2_wdt_probe(struct platform_device *pdev) { - int ret; struct resource *res; + void __iomem *base; + int ret; res = platform_get_resource(pdev, IORESOURCE_MEM, 0); - imx2_wdt.base = devm_ioremap_resource(&pdev->dev, res); - if (IS_ERR(imx2_wdt.base)) - return PTR_ERR(imx2_wdt.base); + base = devm_ioremap_resource(&pdev->dev, res); + if (IS_ERR(base)) + return PTR_ERR(base); + + imx2_wdt.regmap = devm_regmap_init_mmio_clk(&pdev->dev, NULL, base, + &imx2_wdt_regmap_config); + if (IS_ERR(imx2_wdt.regmap)) { + dev_err(&pdev->dev, "regmap init failed\n"); + return PTR_ERR(imx2_wdt.regmap); + } imx2_wdt.clk = devm_clk_get(&pdev->dev, NULL); if (IS_ERR(imx2_wdt.clk)) { -- 1.8.4 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCHv4 2/2] watchdog: imx2_wdt: convert to use regmap API. 2014-04-03 1:04 ` [PATCHv4 2/2] watchdog: imx2_wdt: convert to use regmap API Xiubo Li @ 2014-04-03 16:36 ` Guenter Roeck 2014-04-04 1:13 ` Li.Xiubo 0 siblings, 1 reply; 8+ messages in thread From: Guenter Roeck @ 2014-04-03 16:36 UTC (permalink / raw) To: Xiubo Li; +Cc: wim, shawn.guo, linux-watchdog, linux-kernel On Thu, Apr 03, 2014 at 09:04:19AM +0800, Xiubo Li wrote: > This watchdog driver will be working on IMX2+, Vybrid, LS1, LS2+ > platforms, and will be in different endianness mode in those SoCs: > > SoCs CPU endian mode WDT endian mode > ------------------------------------------------ > IMX2+ LE LE > Vybird LE LE > LS1 LE BE > LS2 LE LE > > Other possible SoCs: > SoCs CPU endian mode WDT endian mode > ------------------------------------------------ > Soc1 BE BE > Soc2 BE LE > > And also the watchdog's registers will be 32-bits for some versions, > and though it is 16-bits in IMX2+, Vybird and LS+. > > Using the regmap APIs, could be more easy to support different > endianness and also more easy to support 32-bits version... > > Signed-off-by: Xiubo Li <Li.Xiubo@freescale.com> > Reviewed-by: Guenter Roeck <linux@roeck-us.net> > Cc: Shawn Guo <shawn.guo@linaro.org> > --- > drivers/watchdog/imx2_wdt.c | 50 +++++++++++++++++++++++++++++---------------- > 1 file changed, 32 insertions(+), 18 deletions(-) > > diff --git a/drivers/watchdog/imx2_wdt.c b/drivers/watchdog/imx2_wdt.c > index 1795922..76fa724 100644 > --- a/drivers/watchdog/imx2_wdt.c > +++ b/drivers/watchdog/imx2_wdt.c > @@ -31,6 +31,7 @@ > #include <linux/module.h> > #include <linux/moduleparam.h> > #include <linux/platform_device.h> > +#include <linux/regmap.h> > #include <linux/timer.h> > #include <linux/uaccess.h> > #include <linux/watchdog.h> > @@ -61,7 +62,7 @@ > > static struct { > struct clk *clk; > - void __iomem *base; > + struct regmap *regmap; > unsigned timeout; > unsigned long status; > struct timer_list timer; /* Pings the watchdog when closed */ > @@ -87,7 +88,9 @@ static const struct watchdog_info imx2_wdt_info = { > > static inline void imx2_wdt_setup(void) > { > - u16 val = __raw_readw(imx2_wdt.base + IMX2_WDT_WCR); > + u32 val; > + > + regmap_read(imx2_wdt.regmap, IMX2_WDT_WCR, &val); > > /* Suspend timer in low power mode, write once-only */ > val |= IMX2_WDT_WCR_WDZST; > @@ -100,17 +103,17 @@ static inline void imx2_wdt_setup(void) > /* Set the watchdog's Time-Out value */ > val |= WDOG_SEC_TO_COUNT(imx2_wdt.timeout); > > - __raw_writew(val, imx2_wdt.base + IMX2_WDT_WCR); > + regmap_write(imx2_wdt.regmap, IMX2_WDT_WCR, val); > > /* enable the watchdog */ > val |= IMX2_WDT_WCR_WDE; > - __raw_writew(val, imx2_wdt.base + IMX2_WDT_WCR); > + regmap_write(imx2_wdt.regmap, IMX2_WDT_WCR, val); > } > > static inline void imx2_wdt_ping(void) > { > - __raw_writew(IMX2_WDT_SEQ1, imx2_wdt.base + IMX2_WDT_WSR); > - __raw_writew(IMX2_WDT_SEQ2, imx2_wdt.base + IMX2_WDT_WSR); > + regmap_write(imx2_wdt.regmap, IMX2_WDT_WSR, IMX2_WDT_SEQ1); > + regmap_write(imx2_wdt.regmap, IMX2_WDT_WSR, IMX2_WDT_SEQ2); > } > > static void imx2_wdt_timer_ping(unsigned long arg) > @@ -143,12 +146,8 @@ static void imx2_wdt_stop(void) > > static void imx2_wdt_set_timeout(int new_timeout) > { > - u16 val = __raw_readw(imx2_wdt.base + IMX2_WDT_WCR); > - > - /* set the new timeout value in the WSR */ > - val &= ~IMX2_WDT_WCR_WT; > - val |= WDOG_SEC_TO_COUNT(new_timeout); > - __raw_writew(val, imx2_wdt.base + IMX2_WDT_WCR); > + regmap_update_bits(imx2_wdt.regmap, IMX2_WDT_WCR, IMX2_WDT_WCR_WT, > + WDOG_SEC_TO_COUNT(new_timeout)); > } > > static int imx2_wdt_open(struct inode *inode, struct file *file) > @@ -181,7 +180,7 @@ static long imx2_wdt_ioctl(struct file *file, unsigned int cmd, > void __user *argp = (void __user *)arg; > int __user *p = argp; > int new_value; > - u16 val; > + u32 val; > > switch (cmd) { > case WDIOC_GETSUPPORT: > @@ -192,7 +191,7 @@ static long imx2_wdt_ioctl(struct file *file, unsigned int cmd, > return put_user(0, p); > > case WDIOC_GETBOOTSTATUS: > - val = __raw_readw(imx2_wdt.base + IMX2_WDT_WRSR); > + regmap_read(imx2_wdt.regmap, IMX2_WDT_WRSR, &val); > new_value = val & IMX2_WDT_WRSR_TOUT ? WDIOF_CARDRESET : 0; > return put_user(new_value, p); > > @@ -255,15 +254,30 @@ static struct miscdevice imx2_wdt_miscdev = { > .fops = &imx2_wdt_fops, > }; > > +static struct regmap_config imx2_wdt_regmap_config = { > + .reg_bits = 16, > + .reg_stride = 2, > + .val_bits = 16, > + .max_register = 0x8, > +}; > + > static int __init imx2_wdt_probe(struct platform_device *pdev) > { > - int ret; > struct resource *res; > + void __iomem *base; > + int ret; > > res = platform_get_resource(pdev, IORESOURCE_MEM, 0); > - imx2_wdt.base = devm_ioremap_resource(&pdev->dev, res); > - if (IS_ERR(imx2_wdt.base)) > - return PTR_ERR(imx2_wdt.base); > + base = devm_ioremap_resource(&pdev->dev, res); > + if (IS_ERR(base)) > + return PTR_ERR(base); > + > + imx2_wdt.regmap = devm_regmap_init_mmio_clk(&pdev->dev, NULL, base, > + &imx2_wdt_regmap_config); This patch causes the following buiild failure: Building arm:imx_v4_v5_defconfig ... failed -------------- Error log: drivers/built-in.o: In function `imx2_wdt_probe': clk-composite.c:(.init.text+0x82c4): undefined reference to `devm_regmap_init_mmio_clk' make: *** [vmlinux] Error 1 -------------- This is on top of b33ce44 Merge branch 'for-3.15/drivers' of git://git.kernel.dk/linux-block Does it have build dependencies on code which is (or was) not yet available in mainline ? Thanks, Guenter ^ permalink raw reply [flat|nested] 8+ messages in thread
* RE: [PATCHv4 2/2] watchdog: imx2_wdt: convert to use regmap API. 2014-04-03 16:36 ` Guenter Roeck @ 2014-04-04 1:13 ` Li.Xiubo 2014-04-04 1:49 ` Guenter Roeck 0 siblings, 1 reply; 8+ messages in thread From: Li.Xiubo @ 2014-04-04 1:13 UTC (permalink / raw) To: Guenter Roeck Cc: wim@iguana.be, shawn.guo@linaro.org, linux-watchdog@vger.kernel.org, linux-kernel@vger.kernel.org > > + base = devm_ioremap_resource(&pdev->dev, res); > > + if (IS_ERR(base)) > > + return PTR_ERR(base); > > + > > + imx2_wdt.regmap = devm_regmap_init_mmio_clk(&pdev->dev, NULL, base, > > + &imx2_wdt_regmap_config); > > This patch causes the following buiild failure: > > Building arm:imx_v4_v5_defconfig ... failed > -------------- > Error log: > drivers/built-in.o: In function `imx2_wdt_probe': > clk-composite.c:(.init.text+0x82c4): undefined reference to > `devm_regmap_init_mmio_clk' > make: *** [vmlinux] Error 1 > -------------- > > This is on top of > > b33ce44 Merge branch 'for-3.15/drivers' of git://git.kernel.dk/linux-block > > Does it have build dependencies on code which is (or was) not yet available > in mainline ? > This is caused by not compiling the regmap core. Could you add the following patch to have a try ? ========================== diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig index 79d2589..3e55fa9 100644 --- a/drivers/watchdog/Kconfig +++ b/drivers/watchdog/Kconfig @@ -369,6 +369,7 @@ config MAX63XX_WATCHDOG config IMX2_WDT tristate "IMX2+ Watchdog" depends on ARCH_MXC + select REGMAP_MMIO help This is the driver for the hardware watchdog on the Freescale IMX2 and later processors. -------------------------- If it's okey, I'll sent the v5 series to fix this. Thanks very much, BRs Xiubo ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCHv4 2/2] watchdog: imx2_wdt: convert to use regmap API. 2014-04-04 1:13 ` Li.Xiubo @ 2014-04-04 1:49 ` Guenter Roeck 2014-04-04 2:09 ` Li.Xiubo 0 siblings, 1 reply; 8+ messages in thread From: Guenter Roeck @ 2014-04-04 1:49 UTC (permalink / raw) To: Li.Xiubo@freescale.com Cc: wim@iguana.be, shawn.guo@linaro.org, linux-watchdog@vger.kernel.org, linux-kernel@vger.kernel.org On 04/03/2014 06:13 PM, Li.Xiubo@freescale.com wrote: >>> + base = devm_ioremap_resource(&pdev->dev, res); >>> + if (IS_ERR(base)) >>> + return PTR_ERR(base); >>> + >>> + imx2_wdt.regmap = devm_regmap_init_mmio_clk(&pdev->dev, NULL, base, >>> + &imx2_wdt_regmap_config); >> >> This patch causes the following buiild failure: >> >> Building arm:imx_v4_v5_defconfig ... failed >> -------------- >> Error log: >> drivers/built-in.o: In function `imx2_wdt_probe': >> clk-composite.c:(.init.text+0x82c4): undefined reference to >> `devm_regmap_init_mmio_clk' >> make: *** [vmlinux] Error 1 >> -------------- >> >> This is on top of >> >> b33ce44 Merge branch 'for-3.15/drivers' of git://git.kernel.dk/linux-block >> >> Does it have build dependencies on code which is (or was) not yet available >> in mainline ? >> > > This is caused by not compiling the regmap core. > > Could you add the following patch to have a try ? > ========================== > diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig > index 79d2589..3e55fa9 100644 > --- a/drivers/watchdog/Kconfig > +++ b/drivers/watchdog/Kconfig > @@ -369,6 +369,7 @@ config MAX63XX_WATCHDOG > config IMX2_WDT > tristate "IMX2+ Watchdog" > depends on ARCH_MXC > + select REGMAP_MMIO > help > This is the driver for the hardware watchdog > on the Freescale IMX2 and later processors. > -------------------------- > > If it's okey, I'll sent the v5 series to fix this. > Yes, that fixes the problem. Guenter ^ permalink raw reply [flat|nested] 8+ messages in thread
* RE: [PATCHv4 2/2] watchdog: imx2_wdt: convert to use regmap API. 2014-04-04 1:49 ` Guenter Roeck @ 2014-04-04 2:09 ` Li.Xiubo 0 siblings, 0 replies; 8+ messages in thread From: Li.Xiubo @ 2014-04-04 2:09 UTC (permalink / raw) To: Guenter Roeck Cc: wim@iguana.be, shawn.guo@linaro.org, linux-watchdog@vger.kernel.org, linux-kernel@vger.kernel.org > > This is caused by not compiling the regmap core. > > > > Could you add the following patch to have a try ? > > ========================== > > diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig > > index 79d2589..3e55fa9 100644 > > --- a/drivers/watchdog/Kconfig > > +++ b/drivers/watchdog/Kconfig > > @@ -369,6 +369,7 @@ config MAX63XX_WATCHDOG > > config IMX2_WDT > > tristate "IMX2+ Watchdog" > > depends on ARCH_MXC > > + select REGMAP_MMIO > > help > > This is the driver for the hardware watchdog > > on the Freescale IMX2 and later processors. > > -------------------------- > > > > If it's okey, I'll sent the v5 series to fix this. > > > Yes, that fixes the problem. > I'll send the v5 series to fix this. Thanks very much. ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCHv4 0/2] imx2-wdt: Add regmap-mmio support 2014-04-03 1:04 [PATCHv4 0/2] imx2-wdt: Add regmap-mmio support Xiubo Li 2014-04-03 1:04 ` [PATCHv4 1/2] watchdog: imx2_wdt: Sort the header files alphabetically Xiubo Li 2014-04-03 1:04 ` [PATCHv4 2/2] watchdog: imx2_wdt: convert to use regmap API Xiubo Li @ 2014-04-03 2:52 ` Shawn Guo 2 siblings, 0 replies; 8+ messages in thread From: Shawn Guo @ 2014-04-03 2:52 UTC (permalink / raw) To: Xiubo Li; +Cc: wim, linux, linux-watchdog, linux-kernel On Thu, Apr 03, 2014 at 09:04:17AM +0800, Xiubo Li wrote: > Xiubo Li (2): > watchdog: imx2_wdt: Sort the header files alphabetically > watchdog: imx2_wdt: convert to use regmap API. Acked-by: Shawn Guo <shawn.guo@linaro.org> ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2014-04-04 2:09 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-04-03 1:04 [PATCHv4 0/2] imx2-wdt: Add regmap-mmio support Xiubo Li 2014-04-03 1:04 ` [PATCHv4 1/2] watchdog: imx2_wdt: Sort the header files alphabetically Xiubo Li 2014-04-03 1:04 ` [PATCHv4 2/2] watchdog: imx2_wdt: convert to use regmap API Xiubo Li 2014-04-03 16:36 ` Guenter Roeck 2014-04-04 1:13 ` Li.Xiubo 2014-04-04 1:49 ` Guenter Roeck 2014-04-04 2:09 ` Li.Xiubo 2014-04-03 2:52 ` [PATCHv4 0/2] imx2-wdt: Add regmap-mmio support Shawn Guo
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox