Re: [PATCH] Staging: iio: ad7192: replaced bool in struct

From: Himanshu Jha
Date: Mon Dec 24 2018 - 04:58:37 EST


On Fri, Dec 21, 2018 at 03:26:26PM -0800, Amir Mahdi Ghorbanian wrote:
> Replaced bool in struct with unsigned int bitfield to conserve space and
> more clearly define size of varibales
>
> Signed-off-by: Amir Mahdi Ghorbanian <indigoomega021@xxxxxxxxx>
> ---

There was some discussion on this at Outreachy list:
https://groups.google.com/d/msg/outreachy-kernel/xpQAl-Gn8HA/yqcQRG_qBgAJ

I think unless you post some statistics about 'conserving' space,
it is unlikely that maintainers will apply it.

This idea was originally given by Linus and that thread of discussion
is worth reading too.

> drivers/staging/iio/adc/ad7192.h | 14 +++++++-------
> 1 file changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/staging/iio/adc/ad7192.h b/drivers/staging/iio/adc/ad7192.h
> index 7433a43..7d3e62f 100644
> --- a/drivers/staging/iio/adc/ad7192.h
> +++ b/drivers/staging/iio/adc/ad7192.h
> @@ -35,13 +35,13 @@ struct ad7192_platform_data {
> u16 vref_mv;
> u8 clock_source_sel;
> u32 ext_clk_hz;
> - bool refin2_en;
> - bool rej60_en;
> - bool sinc3_en;
> - bool chop_en;
> - bool buf_en;
> - bool unipolar_en;
> - bool burnout_curr_en;
> + unsigned int refin2_en : 1;
> + unsigned int rej60_en : 1;
> + unsigned int sinc3_en : 1;
> + unsigned int chop_en : 1;
> + unsigned int buf_en : 1;
> + unsigned int unipolar_en : 1;
> + unsigned int burnout_curr_en : 1;
> };
>
> #endif /* IIO_ADC_AD7192_H_ */
> --
> 2.7.4
>

Goodluck!

--
Himanshu Jha
Undergraduate Student
Department of Electronics & Communication
Guru Tegh Bahadur Institute of Technology