Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1610565
| From | Geert Uytterhoeven <geert@linux-m68k.org> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH V6 4/7] mfd: da9061: MFD core support |
| Date | 2017-03-28 13:00 +0200 |
| Message-ID | <tpX0Z-6nN-7@gated-at.bofh.it> (permalink) |
| References | <tpzL3-6pP-1@gated-at.bofh.it> <tpEhH-17e-5@gated-at.bofh.it> <tpUFP-4R5-9@gated-at.bofh.it> <tpUPw-4W7-9@gated-at.bofh.it> <tpWRk-6j4-3@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
Hi Steve,
On Tue, Mar 28, 2017 at 12:42 PM, Steve Twiss
<stwiss.opensource@diasemi.com> wrote:
> On 28 March 2017 09:37, Geert Uytterhoeven wrote:
>> Subject: Re: [PATCH V6 4/7] mfd: da9061: MFD core support
>> On Tue, Mar 28, 2017 at 10:21 AM, Lee Jones <lee.jones@linaro.org> wrote:
>> >> [auto build test WARNING on ljones-mfd/for-mfd-next]
>> >> [also build test WARNING on v4.11-rc4 next-20170327]
>> >> base: https://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git for-mfd-next
>> >> config: x86_64-randconfig-x009-201713 (attached as .config)
>> >> compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
>> >> reproduce:
>> >> # save the attached .config to linux build tree
>> >> make ARCH=x86_64
>> >>
>> >> All warnings (new ones prefixed by >>):
>> >>
>> >> drivers//mfd/da9062-core.c: In function 'da9062_i2c_probe':
>> >> >> drivers//mfd/da9062-core.c:845:21: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
>> >> chip->chip_type = (int)match->data;
>> >> ^
>> >
>> > Please use longs or enums.
>>
>> Enums would still give a warning on 64-bit.
>> The simple fix is change the cast from (int) to (uintptr_t).
>
> Hi Lee and Geert,
>
> How about this? Fix by redefining the enum chip_type to be an int.
> Then, just use substitution:
> #define COMPAT_TYPE_DA9061 1
> #define COMPAT_TYPE_DA9062 2
>
> That would be simple.
> Are there any reasons this would not be acceptable?
I don't see how that can help.
The warning is caused by casting the "void *" (which is either 32-bit or
64-bit) in of_device_if.data to an integer or enum (which is always 32-bit).
The right fix is to cast it to uintptr_t intead of int, like other drivers do.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Re: [PATCH V6 4/7] mfd: da9061: MFD core support Lee Jones <lee.jones@linaro.org> - 2017-03-28 10:30 +0200
Re: [PATCH V6 4/7] mfd: da9061: MFD core support Geert Uytterhoeven <geert@linux-m68k.org> - 2017-03-28 10:40 +0200
RE: [PATCH V6 4/7] mfd: da9061: MFD core support Steve Twiss <stwiss.opensource@diasemi.com> - 2017-03-28 12:50 +0200
Re: [PATCH V6 4/7] mfd: da9061: MFD core support Geert Uytterhoeven <geert@linux-m68k.org> - 2017-03-28 13:00 +0200
RE: [PATCH V6 4/7] mfd: da9061: MFD core support Steve Twiss <stwiss.opensource@diasemi.com> - 2017-03-28 13:40 +0200
Re: [PATCH V6 4/7] mfd: da9061: MFD core support Lee Jones <lee.jones@linaro.org> - 2017-03-29 10:40 +0200
Re: [PATCH V6 4/7] mfd: da9061: MFD core support Geert Uytterhoeven <geert@linux-m68k.org> - 2017-03-29 11:20 +0200
csiph-web