Linux Audio

Check our new training course

Loading...
v6.13.7
 1// SPDX-License-Identifier: GPL-2.0-only
 2/*
 3 * SSM2602 SPI 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 "ssm2602.h"
15
16static int ssm2602_spi_probe(struct spi_device *spi)
17{
18	return ssm2602_probe(&spi->dev, SSM2602,
19		devm_regmap_init_spi(spi, &ssm2602_regmap_config));
20}
21
22static const struct of_device_id ssm2602_of_match[] = {
23	{ .compatible = "adi,ssm2602", },
24	{ }
25};
26MODULE_DEVICE_TABLE(of, ssm2602_of_match);
27
28static struct spi_driver ssm2602_spi_driver = {
29	.driver = {
30		.name	= "ssm2602",
31		.of_match_table = ssm2602_of_match,
32	},
33	.probe		= ssm2602_spi_probe,
 
34};
35module_spi_driver(ssm2602_spi_driver);
36
37MODULE_DESCRIPTION("ASoC SSM2602 SPI driver");
38MODULE_AUTHOR("Cliff Cai");
39MODULE_LICENSE("GPL");
v3.15
 
 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
17static 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
23static int ssm2602_spi_remove(struct spi_device *spi)
24{
25	snd_soc_unregister_codec(&spi->dev);
26	return 0;
27}
28
29static 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};
37module_spi_driver(ssm2602_spi_driver);
38
39MODULE_DESCRIPTION("ASoC SSM2602 SPI driver");
40MODULE_AUTHOR("Cliff Cai");
41MODULE_LICENSE("GPL");