Re: [PATCH 3/5] SPI: Add helper macro for spi_driver boilerplate

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Nov 16, 2011 at 2:13 AM, Lars-Peter Clausen <lars@xxxxxxxxxx> wrote:
> This patch introduces the module_spi_driver macro which is a convenience macro
> for SPI driver modules similar to module_platform_driver. It is intended to be
> used by drivers which init/exit section does nothing but register/unregister
> the SPI driver. By using this macro it is possible to eliminate a few lines of
> boilerplate code per SPI driver.
>
> Signed-off-by: Lars-Peter Clausen <lars@xxxxxxxxxx>

Acked-by: Grant Likely <grant.likely@xxxxxxxxxxxx>

> ---
>  include/linux/spi/spi.h |   11 +++++++++++
>  1 files changed, 11 insertions(+), 0 deletions(-)
>
> diff --git a/include/linux/spi/spi.h b/include/linux/spi/spi.h
> index bb4f5fb..176fce9 100644
> --- a/include/linux/spi/spi.h
> +++ b/include/linux/spi/spi.h
> @@ -200,6 +200,17 @@ static inline void spi_unregister_driver(struct spi_driver *sdrv)
>                driver_unregister(&sdrv->driver);
>  }
>
> +/**
> + * module_spi_driver() - Helper macro for registering a SPI driver
> + * @__spi_driver: spi_driver struct
> + *
> + * Helper macro for SPI drivers which do not do anything special in module
> + * init/exit. This eliminates a lot of boilerplate. Each module may only
> + * use this macro once, and calling it replaces module_init() and module_exit()
> + */
> +#define module_spi_driver(__spi_driver) \
> +       module_driver(__spi_driver, spi_register_driver, \
> +                       spi_unregister_driver)
>
>  /**
>  * struct spi_master - interface to SPI master controller
> --
> 1.7.7.1
>
>
>



-- 
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.
--
To unsubscribe from this list: send the line "unsubscribe linux-i2c" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux GPIO]     [Linux SPI]     [Linux Hardward Monitoring]     [LM Sensors]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux