diff options
Diffstat (limited to 'include/linux/spi/spi.h')
| -rw-r--r-- | include/linux/spi/spi.h | 19 | 
1 files changed, 19 insertions, 0 deletions
diff --git a/include/linux/spi/spi.h b/include/linux/spi/spi.h index 99380c0825db..b390fdac1587 100644 --- a/include/linux/spi/spi.h +++ b/include/linux/spi/spi.h @@ -734,6 +734,25 @@ static inline struct spi_controller *spi_alloc_slave(struct device *host,  	return __spi_alloc_controller(host, size, true);  } +struct spi_controller *__devm_spi_alloc_controller(struct device *dev, +						   unsigned int size, +						   bool slave); + +static inline struct spi_controller *devm_spi_alloc_master(struct device *dev, +							   unsigned int size) +{ +	return __devm_spi_alloc_controller(dev, size, false); +} + +static inline struct spi_controller *devm_spi_alloc_slave(struct device *dev, +							  unsigned int size) +{ +	if (!IS_ENABLED(CONFIG_SPI_SLAVE)) +		return NULL; + +	return __devm_spi_alloc_controller(dev, size, true); +} +  extern int spi_register_controller(struct spi_controller *ctlr);  extern int devm_spi_register_controller(struct device *dev,  					struct spi_controller *ctlr);  | 
