~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/sound/soc/codecs/es8328-i2c.c

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /sound/soc/codecs/es8328-i2c.c (Version linux-6.12-rc7) and /sound/soc/codecs/es8328-i2c.c (Version linux-4.12.14)


  1 // SPDX-License-Identifier: GPL-2.0-only       << 
  2 /*                                                  1 /*
  3  * es8328-i2c.c  --  ES8328 ALSA SoC I2C Audio      2  * es8328-i2c.c  --  ES8328 ALSA SoC I2C Audio driver
  4  *                                                  3  *
  5  * Copyright 2014 Sutajio Ko-Usagi PTE LTD          4  * Copyright 2014 Sutajio Ko-Usagi PTE LTD
  6  *                                                  5  *
  7  * Author: Sean Cross <xobs@kosagi.com>             6  * Author: Sean Cross <xobs@kosagi.com>
                                                   >>   7  *
                                                   >>   8  * This program is free software; you can redistribute it and/or modify
                                                   >>   9  * it under the terms of the GNU General Public License version 2 as
                                                   >>  10  * published by the Free Software Foundation.
  8  */                                                11  */
  9                                                    12 
 10 #include <linux/module.h>                          13 #include <linux/module.h>
 11 #include <linux/i2c.h>                             14 #include <linux/i2c.h>
 12 #include <linux/regmap.h>                          15 #include <linux/regmap.h>
 13                                                    16 
 14 #include <sound/soc.h>                             17 #include <sound/soc.h>
 15                                                    18 
 16 #include "es8328.h"                                19 #include "es8328.h"
 17                                                    20 
 18 static const struct i2c_device_id es8328_id[]      21 static const struct i2c_device_id es8328_id[] = {
 19         { "es8328" },                          !!  22         { "es8328", 0 },
 20         { "es8388" },                          !!  23         { "es8388", 0 },
 21         { }                                        24         { }
 22 };                                                 25 };
 23 MODULE_DEVICE_TABLE(i2c, es8328_id);               26 MODULE_DEVICE_TABLE(i2c, es8328_id);
 24                                                    27 
 25 static const struct of_device_id es8328_of_mat     28 static const struct of_device_id es8328_of_match[] = {
 26         { .compatible = "everest,es8328", },       29         { .compatible = "everest,es8328", },
 27         { .compatible = "everest,es8388", },       30         { .compatible = "everest,es8388", },
 28         { }                                        31         { }
 29 };                                                 32 };
 30 MODULE_DEVICE_TABLE(of, es8328_of_match);          33 MODULE_DEVICE_TABLE(of, es8328_of_match);
 31                                                    34 
 32 static int es8328_i2c_probe(struct i2c_client  !!  35 static int es8328_i2c_probe(struct i2c_client *i2c,
                                                   >>  36                             const struct i2c_device_id *id)
 33 {                                                  37 {
 34         return es8328_probe(&i2c->dev,             38         return es8328_probe(&i2c->dev,
 35                         devm_regmap_init_i2c(i     39                         devm_regmap_init_i2c(i2c, &es8328_regmap_config));
 36 }                                                  40 }
 37                                                    41 
                                                   >>  42 static int es8328_i2c_remove(struct i2c_client *i2c)
                                                   >>  43 {
                                                   >>  44         snd_soc_unregister_codec(&i2c->dev);
                                                   >>  45         return 0;
                                                   >>  46 }
                                                   >>  47 
 38 static struct i2c_driver es8328_i2c_driver = {     48 static struct i2c_driver es8328_i2c_driver = {
 39         .driver = {                                49         .driver = {
 40                 .name           = "es8328",        50                 .name           = "es8328",
 41                 .of_match_table = es8328_of_ma     51                 .of_match_table = es8328_of_match,
 42         },                                         52         },
 43         .probe = es8328_i2c_probe,             !!  53         .probe    = es8328_i2c_probe,
                                                   >>  54         .remove   = es8328_i2c_remove,
 44         .id_table = es8328_id,                     55         .id_table = es8328_id,
 45 };                                                 56 };
 46                                                    57 
 47 module_i2c_driver(es8328_i2c_driver);              58 module_i2c_driver(es8328_i2c_driver);
 48                                                    59 
 49 MODULE_DESCRIPTION("ASoC ES8328 audio CODEC I2     60 MODULE_DESCRIPTION("ASoC ES8328 audio CODEC I2C driver");
 50 MODULE_AUTHOR("Sean Cross <xobs@kosagi.com>");     61 MODULE_AUTHOR("Sean Cross <xobs@kosagi.com>");
 51 MODULE_LICENSE("GPL");                             62 MODULE_LICENSE("GPL");
 52                                                    63 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php