1 // SPDX-License-Identifier: GPL-2.0-only 2 /* 3 * ADAV801 audio driver 4 * 5 * Copyright 2014 Analog Devices Inc. 6 */ 7 8 #include <linux/module.h> 9 #include <linux/spi/spi.h> 10 #include <linux/regmap.h> 11 12 #include <sound/soc.h> 13 14 #include "adav80x.h" 15 16 static const struct spi_device_id adav80x_spi_id[] = { 17 { "adav801", 0 }, 18 { } 19 }; 20 MODULE_DEVICE_TABLE(spi, adav80x_spi_id); 21 22 static int adav80x_spi_probe(struct spi_device *spi) 23 { 24 struct regmap_config config; 25 26 config = adav80x_regmap_config; 27 config.read_flag_mask = 0x01; 28 29 return adav80x_bus_probe(&spi->dev, devm_regmap_init_spi(spi, &config)); 30 } 31 32 static struct spi_driver adav80x_spi_driver = { 33 .driver = { 34 .name = "adav801", 35 }, 36 .probe = adav80x_spi_probe, 37 .id_table = adav80x_spi_id, 38 }; 39 module_spi_driver(adav80x_spi_driver); 40 41 MODULE_DESCRIPTION("ASoC ADAV801 driver"); 42 MODULE_AUTHOR("Lars-Peter Clausen <lars@metafoo.de>"); 43 MODULE_AUTHOR("Yi Li <yi.li@analog.com>>"); 44 MODULE_LICENSE("GPL"); 45