mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-17 01:04:19 +08:00
ASoC: Intel: use software node API in SoundWire machines
The function device_add_properties() is going to be removed. Replacing it with software node API equivalents. Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by: Hans de Goede <hdegoede@redhat.com> Co-developed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com> Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20210813151116.23931-7-pierre-louis.bossart@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
82027585fc
commit
e5a292d394
@ -24,12 +24,22 @@
|
|||||||
static int rt711_add_codec_device_props(struct device *sdw_dev)
|
static int rt711_add_codec_device_props(struct device *sdw_dev)
|
||||||
{
|
{
|
||||||
struct property_entry props[MAX_NO_PROPS] = {};
|
struct property_entry props[MAX_NO_PROPS] = {};
|
||||||
|
struct fwnode_handle *fwnode;
|
||||||
|
int ret;
|
||||||
|
|
||||||
if (!SOF_RT711_JDSRC(sof_sdw_quirk))
|
if (!SOF_RT711_JDSRC(sof_sdw_quirk))
|
||||||
return 0;
|
return 0;
|
||||||
props[0] = PROPERTY_ENTRY_U32("realtek,jd-src", SOF_RT711_JDSRC(sof_sdw_quirk));
|
props[0] = PROPERTY_ENTRY_U32("realtek,jd-src", SOF_RT711_JDSRC(sof_sdw_quirk));
|
||||||
|
|
||||||
return device_add_properties(sdw_dev, props);
|
fwnode = fwnode_create_software_node(props, NULL);
|
||||||
|
if (IS_ERR(fwnode))
|
||||||
|
return PTR_ERR(fwnode);
|
||||||
|
|
||||||
|
ret = device_add_software_node(sdw_dev, to_software_node(fwnode));
|
||||||
|
|
||||||
|
fwnode_handle_put(fwnode);
|
||||||
|
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
static const struct snd_soc_dapm_widget rt711_widgets[] = {
|
static const struct snd_soc_dapm_widget rt711_widgets[] = {
|
||||||
@ -129,7 +139,7 @@ int sof_sdw_rt711_exit(struct snd_soc_card *card, struct snd_soc_dai_link *dai_l
|
|||||||
{
|
{
|
||||||
struct mc_private *ctx = snd_soc_card_get_drvdata(card);
|
struct mc_private *ctx = snd_soc_card_get_drvdata(card);
|
||||||
|
|
||||||
device_remove_properties(ctx->headset_codec_dev);
|
device_remove_software_node(ctx->headset_codec_dev);
|
||||||
put_device(ctx->headset_codec_dev);
|
put_device(ctx->headset_codec_dev);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -24,13 +24,23 @@
|
|||||||
static int rt711_sdca_add_codec_device_props(struct device *sdw_dev)
|
static int rt711_sdca_add_codec_device_props(struct device *sdw_dev)
|
||||||
{
|
{
|
||||||
struct property_entry props[MAX_NO_PROPS] = {};
|
struct property_entry props[MAX_NO_PROPS] = {};
|
||||||
|
struct fwnode_handle *fwnode;
|
||||||
|
int ret;
|
||||||
|
|
||||||
if (!SOF_RT711_JDSRC(sof_sdw_quirk))
|
if (!SOF_RT711_JDSRC(sof_sdw_quirk))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
props[0] = PROPERTY_ENTRY_U32("realtek,jd-src", SOF_RT711_JDSRC(sof_sdw_quirk));
|
props[0] = PROPERTY_ENTRY_U32("realtek,jd-src", SOF_RT711_JDSRC(sof_sdw_quirk));
|
||||||
|
|
||||||
return device_add_properties(sdw_dev, props);
|
fwnode = fwnode_create_software_node(props, NULL);
|
||||||
|
if (IS_ERR(fwnode))
|
||||||
|
return PTR_ERR(fwnode);
|
||||||
|
|
||||||
|
ret = device_add_software_node(sdw_dev, to_software_node(fwnode));
|
||||||
|
|
||||||
|
fwnode_handle_put(fwnode);
|
||||||
|
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
static const struct snd_soc_dapm_widget rt711_sdca_widgets[] = {
|
static const struct snd_soc_dapm_widget rt711_sdca_widgets[] = {
|
||||||
@ -130,7 +140,7 @@ int sof_sdw_rt711_sdca_exit(struct snd_soc_card *card, struct snd_soc_dai_link *
|
|||||||
{
|
{
|
||||||
struct mc_private *ctx = snd_soc_card_get_drvdata(card);
|
struct mc_private *ctx = snd_soc_card_get_drvdata(card);
|
||||||
|
|
||||||
device_remove_properties(ctx->headset_codec_dev);
|
device_remove_software_node(ctx->headset_codec_dev);
|
||||||
put_device(ctx->headset_codec_dev);
|
put_device(ctx->headset_codec_dev);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user