On 09/08/2023 20:02, Jonathan Cameron wrote: > On Wed, 9 Aug 2023 08:41:05 +0200 > Marcus Folkesson <marcus.folkesson@xxxxxxxxx> wrote: > >>> ... >>> >>>> +#define MCP3910_OFFCAL(x) (MCP3910_REG_OFFCAL_CH0 + x * 6) >>> >>> Inconsistent macro implementation, i.e. you need to use (x). >> >> Sorry, I do not get you >> >> >> [...] >> >>>> +static int mcp3910_get_osr(struct mcp3911 *adc, int *val) >>>> +{ >>>> + int ret, osr; >>> >>> Strictly speaking osr can't be negative, otherwise it's a UB below. >>> >>> u32 osr = FIELD_GET(MCP3910_CONFIG0_OSR, *val); >>> int ret; >>> >>> and why val is int? >> >> I will change val to u32 for *_get_osr(), *_set_osr() and *_set_scale(). >> >> [...] >> >>>> + if (device_property_read_bool(&adc->spi->dev, "microchip,data-ready-hiz")) >>> >>> This also becomes shorter. >>> >>> One trick to make it even shorter: >>> >>> if (device_property_present(dev, "microchip,data-ready-hiz")) >> >> Thank you, I wasn't aware of device_property_present(). > > I know the read_bool function is direct equivalent of this but where a property > is a flag, it feels more natural to me to check it with that one. > read_present() feels more appropriate for where you want to know a more > complex property is present. > > Doesn't matter that much either way however so up to you. For the OF, of_property_read_bool() is indeed preferred. Is there device-xxx() equivalent? Best regards, Krzysztof