Messages in this thread | | | Subject | Re: [PATCH 4/5] mtd: spi-nor: Add driver for Adaptrum Anarion QSPI controller | From | Alexandru Gagniuc <> | Date | Mon, 31 Jul 2017 15:59:17 -0700 |
| |
On 07/31/2017 03:43 PM, Marek Vasut wrote: > On 08/01/2017 12:20 AM, Alexandru Gagniuc wrote: >> On 07/31/2017 02:33 PM, Marek Vasut wrote: >>> On 07/31/2017 07:17 PM, Alexandru Gagniuc wrote: >>>>>> +struct anarion_qspi { >>>>>> + struct spi_nor nor; >>>>>> + struct device *dev; >>>>>> + uintptr_t regbase; >>>>> >>>>> Should be void __iomem * I guess ? >>>> >>>> I chose uintptr_t as opposed to void *, because arithmetic on void * is >>>> not valid in C. What is the right answer hen, without risking undefined >>>> behavior? >>> >>> What sort of arithmetic ? It's perfectly valid in general ... >> >> ISO/IEC 9899:201x, Section 6.5.6, constraint(2) is not met when the one >> of the operands to addition is a void pointer. >> Section 6.2.5 (19) defines void to be an incomplete type. > > Is that something new in C 201x draft ?
C99 had similar restrictions.
> Anyway, this would mean half of the drivers are broken, so I'm not convinced.
They are. Feel free to send me a private email if you want to discuss this further.
Alex
| |