xref: /openbmc/linux/sound/soc/codecs/ssm2602-spi.c (revision afb46f79)
1 /*
2  * SSM2602 SPI audio driver
3  *
4  * Copyright 2014 Analog Devices Inc.
5  *
6  * Licensed under the GPL-2.
7  */
8 
9 #include <linux/module.h>
10 #include <linux/spi/spi.h>
11 #include <linux/regmap.h>
12 
13 #include <sound/soc.h>
14 
15 #include "ssm2602.h"
16 
17 static int ssm2602_spi_probe(struct spi_device *spi)
18 {
19 	return ssm2602_probe(&spi->dev, SSM2602,
20 		devm_regmap_init_spi(spi, &ssm2602_regmap_config));
21 }
22 
23 static int ssm2602_spi_remove(struct spi_device *spi)
24 {
25 	snd_soc_unregister_codec(&spi->dev);
26 	return 0;
27 }
28 
29 static struct spi_driver ssm2602_spi_driver = {
30 	.driver = {
31 		.name	= "ssm2602",
32 		.owner	= THIS_MODULE,
33 	},
34 	.probe		= ssm2602_spi_probe,
35 	.remove		= ssm2602_spi_remove,
36 };
37 module_spi_driver(ssm2602_spi_driver);
38 
39 MODULE_DESCRIPTION("ASoC SSM2602 SPI driver");
40 MODULE_AUTHOR("Cliff Cai");
41 MODULE_LICENSE("GPL");
42