* [PATCH] watchdog: sunxi: Fix compilation with C=2
@ 2014-04-04 17:24 Emilio López
2014-04-04 17:35 ` Guenter Roeck
2014-04-04 18:02 ` Guenter Roeck
0 siblings, 2 replies; 7+ messages in thread
From: Emilio López @ 2014-04-04 17:24 UTC (permalink / raw)
To: linux-arm-kernel
When compiling sunxi_defconfig while using C=2, the following error
causes the compilation to fail:
drivers/watchdog/sunxi_wdt.c:60:15: error: constant 0b0001 is not a valid number
Fix it by using hex notation instead of the non-standard binary one
Signed-off-by: Emilio L?pez <emilio@elopez.com.ar>
---
drivers/watchdog/sunxi_wdt.c | 22 +++++++++++-----------
1 file changed, 11 insertions(+), 11 deletions(-)
diff --git a/drivers/watchdog/sunxi_wdt.c b/drivers/watchdog/sunxi_wdt.c
index cd00a78..693b9d2 100644
--- a/drivers/watchdog/sunxi_wdt.c
+++ b/drivers/watchdog/sunxi_wdt.c
@@ -57,17 +57,17 @@ struct sunxi_wdt_dev {
*/
static const int wdt_timeout_map[] = {
- [1] = 0b0001, /* 1s */
- [2] = 0b0010, /* 2s */
- [3] = 0b0011, /* 3s */
- [4] = 0b0100, /* 4s */
- [5] = 0b0101, /* 5s */
- [6] = 0b0110, /* 6s */
- [8] = 0b0111, /* 8s */
- [10] = 0b1000, /* 10s */
- [12] = 0b1001, /* 12s */
- [14] = 0b1010, /* 14s */
- [16] = 0b1011, /* 16s */
+ [1] = 0x1, /* 1s */
+ [2] = 0x2, /* 2s */
+ [3] = 0x3, /* 3s */
+ [4] = 0x4, /* 4s */
+ [5] = 0x5, /* 5s */
+ [6] = 0x6, /* 6s */
+ [8] = 0x7, /* 8s */
+ [10] = 0x8, /* 10s */
+ [12] = 0x9, /* 12s */
+ [14] = 0xA, /* 14s */
+ [16] = 0xB, /* 16s */
};
static int sunxi_wdt_ping(struct watchdog_device *wdt_dev)
--
1.9.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH] watchdog: sunxi: Fix compilation with C=2
2014-04-04 17:24 [PATCH] watchdog: sunxi: Fix compilation with C=2 Emilio López
@ 2014-04-04 17:35 ` Guenter Roeck
2014-04-04 17:57 ` Emilio López
2014-04-04 18:02 ` Guenter Roeck
1 sibling, 1 reply; 7+ messages in thread
From: Guenter Roeck @ 2014-04-04 17:35 UTC (permalink / raw)
To: linux-arm-kernel
On 04/04/2014 10:24 AM, Emilio L?pez wrote:
> When compiling sunxi_defconfig while using C=2, the following error
> causes the compilation to fail:
>
> drivers/watchdog/sunxi_wdt.c:60:15: error: constant 0b0001 is not a valid number
>
> Fix it by using hex notation instead of the non-standard binary one
>
What defines "non-standard" here ? Isn't this a sparse problem that should possibly
be fixed in sparse instead ?
[ I don't mind changing it as the 0bXXXX notation doesn't seem to be used much
in the kernel, but we should not claim something to be non-standard if it is
just not widely used. As normal compilation doesn't seem to have a problem,
we should be sure that it is non-standard if we claim it to be non-standard. ]
Thanks,
Guenter
> Signed-off-by: Emilio L?pez <emilio@elopez.com.ar>
> ---
> drivers/watchdog/sunxi_wdt.c | 22 +++++++++++-----------
> 1 file changed, 11 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/watchdog/sunxi_wdt.c b/drivers/watchdog/sunxi_wdt.c
> index cd00a78..693b9d2 100644
> --- a/drivers/watchdog/sunxi_wdt.c
> +++ b/drivers/watchdog/sunxi_wdt.c
> @@ -57,17 +57,17 @@ struct sunxi_wdt_dev {
> */
>
> static const int wdt_timeout_map[] = {
> - [1] = 0b0001, /* 1s */
> - [2] = 0b0010, /* 2s */
> - [3] = 0b0011, /* 3s */
> - [4] = 0b0100, /* 4s */
> - [5] = 0b0101, /* 5s */
> - [6] = 0b0110, /* 6s */
> - [8] = 0b0111, /* 8s */
> - [10] = 0b1000, /* 10s */
> - [12] = 0b1001, /* 12s */
> - [14] = 0b1010, /* 14s */
> - [16] = 0b1011, /* 16s */
> + [1] = 0x1, /* 1s */
> + [2] = 0x2, /* 2s */
> + [3] = 0x3, /* 3s */
> + [4] = 0x4, /* 4s */
> + [5] = 0x5, /* 5s */
> + [6] = 0x6, /* 6s */
> + [8] = 0x7, /* 8s */
> + [10] = 0x8, /* 10s */
> + [12] = 0x9, /* 12s */
> + [14] = 0xA, /* 14s */
> + [16] = 0xB, /* 16s */
> };
>
> static int sunxi_wdt_ping(struct watchdog_device *wdt_dev)
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH] watchdog: sunxi: Fix compilation with C=2
2014-04-04 17:35 ` Guenter Roeck
@ 2014-04-04 17:57 ` Emilio López
2014-04-04 18:01 ` Guenter Roeck
0 siblings, 1 reply; 7+ messages in thread
From: Emilio López @ 2014-04-04 17:57 UTC (permalink / raw)
To: linux-arm-kernel
Hi,
El 04/04/14 14:35, Guenter Roeck escribi?:
> On 04/04/2014 10:24 AM, Emilio L?pez wrote:
>> When compiling sunxi_defconfig while using C=2, the following error
>> causes the compilation to fail:
>>
>> drivers/watchdog/sunxi_wdt.c:60:15: error: constant 0b0001 is not
>> a valid number
>>
>> Fix it by using hex notation instead of the non-standard binary one
>>
>
> What defines "non-standard" here ?
non-standard as not part of the C standard. Binary constant notation is
a GCC extension as far as I'm aware:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23479
http://gcc.gnu.org/onlinedocs/gcc/Binary-constants.html (Note the "C
Extensions" section)
> Isn't this a sparse problem that
> should possibly
> be fixed in sparse instead ?
It could be fixed in sparse as well, I don't really mind either way. The
binary notation doesn't seem to be used much, if at all, on the kernel
though; most of the matches I saw when quickly grepping were comments.
Cheers,
Emilio
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH] watchdog: sunxi: Fix compilation with C=2
2014-04-04 17:57 ` Emilio López
@ 2014-04-04 18:01 ` Guenter Roeck
0 siblings, 0 replies; 7+ messages in thread
From: Guenter Roeck @ 2014-04-04 18:01 UTC (permalink / raw)
To: linux-arm-kernel
On 04/04/2014 10:57 AM, Emilio L?pez wrote:
> Hi,
>
> El 04/04/14 14:35, Guenter Roeck escribi?:
>> On 04/04/2014 10:24 AM, Emilio L?pez wrote:
>>> When compiling sunxi_defconfig while using C=2, the following error
>>> causes the compilation to fail:
>>>
>>> drivers/watchdog/sunxi_wdt.c:60:15: error: constant 0b0001 is not
>>> a valid number
>>>
>>> Fix it by using hex notation instead of the non-standard binary one
>>>
>>
>> What defines "non-standard" here ?
>
> non-standard as not part of the C standard. Binary constant notation is a GCC extension as far as I'm aware:
>
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23479
> http://gcc.gnu.org/onlinedocs/gcc/Binary-constants.html (Note the "C Extensions" section)
>
Ok.
>> Isn't this a sparse problem that
>> should possibly
>> be fixed in sparse instead ?
>
> It could be fixed in sparse as well, I don't really mind either way. The binary notation doesn't seem to be used much, if at all, on the kernel though; most of the matches I saw when quickly grepping were comments.
>
Nah, if it is non-standard I don't think that would be a good idea.
Guenter
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH] watchdog: sunxi: Fix compilation with C=2
2014-04-04 17:24 [PATCH] watchdog: sunxi: Fix compilation with C=2 Emilio López
2014-04-04 17:35 ` Guenter Roeck
@ 2014-04-04 18:02 ` Guenter Roeck
2014-05-11 19:46 ` Emilio López
1 sibling, 1 reply; 7+ messages in thread
From: Guenter Roeck @ 2014-04-04 18:02 UTC (permalink / raw)
To: linux-arm-kernel
On 04/04/2014 10:24 AM, Emilio L?pez wrote:
> When compiling sunxi_defconfig while using C=2, the following error
> causes the compilation to fail:
>
> drivers/watchdog/sunxi_wdt.c:60:15: error: constant 0b0001 is not a valid number
>
> Fix it by using hex notation instead of the non-standard binary one
>
> Signed-off-by: Emilio L?pez <emilio@elopez.com.ar>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH] watchdog: sunxi: Fix compilation with C=2
2014-04-04 18:02 ` Guenter Roeck
@ 2014-05-11 19:46 ` Emilio López
2014-05-15 8:52 ` Maxime Ripard
0 siblings, 1 reply; 7+ messages in thread
From: Emilio López @ 2014-05-11 19:46 UTC (permalink / raw)
To: linux-arm-kernel
El 04/04/14 15:02, Guenter Roeck escribi?:
> On 04/04/2014 10:24 AM, Emilio L?pez wrote:
>> When compiling sunxi_defconfig while using C=2, the following error
>> causes the compilation to fail:
>>
>> drivers/watchdog/sunxi_wdt.c:60:15: error: constant 0b0001 is not
>> a valid number
>>
>> Fix it by using hex notation instead of the non-standard binary one
>>
>> Signed-off-by: Emilio L?pez <emilio@elopez.com.ar>
>
> Reviewed-by: Guenter Roeck <linux@roeck-us.net>
>
Wim, Maxime, any comments on this?
Cheers,
Emilio
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH] watchdog: sunxi: Fix compilation with C=2
2014-05-11 19:46 ` Emilio López
@ 2014-05-15 8:52 ` Maxime Ripard
0 siblings, 0 replies; 7+ messages in thread
From: Maxime Ripard @ 2014-05-15 8:52 UTC (permalink / raw)
To: linux-arm-kernel
On Sun, May 11, 2014 at 04:46:59PM -0300, Emilio L?pez wrote:
> El 04/04/14 15:02, Guenter Roeck escribi?:
> >On 04/04/2014 10:24 AM, Emilio L?pez wrote:
> >>When compiling sunxi_defconfig while using C=2, the following error
> >>causes the compilation to fail:
> >>
> >> drivers/watchdog/sunxi_wdt.c:60:15: error: constant 0b0001 is not
> >>a valid number
> >>
> >>Fix it by using hex notation instead of the non-standard binary one
> >>
> >>Signed-off-by: Emilio L?pez <emilio@elopez.com.ar>
> >
> >Reviewed-by: Guenter Roeck <linux@roeck-us.net>
> >
>
> Wim, Maxime, any comments on this?
I'm fine with this. Wim? Do you want to take this patch, or can we
have an Acked-by?
Thanks,
Maxime
--
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20140515/1c5a5fa7/attachment.sig>
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2014-05-15 8:52 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-04-04 17:24 [PATCH] watchdog: sunxi: Fix compilation with C=2 Emilio López
2014-04-04 17:35 ` Guenter Roeck
2014-04-04 17:57 ` Emilio López
2014-04-04 18:01 ` Guenter Roeck
2014-04-04 18:02 ` Guenter Roeck
2014-05-11 19:46 ` Emilio López
2014-05-15 8:52 ` Maxime Ripard
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).