Skip to content

Commit d6c1c7c

Browse files
Heikki Krogerusplbossart
authored andcommitted
ASoC: Intel: boards: use software node API in SoundWire machines
The function device_add_properties() is going to be removed. Replacing it with software node API equivalents. Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
1 parent 0e1e507 commit d6c1c7c

File tree

2 files changed

+30
-10
lines changed

2 files changed

+30
-10
lines changed

sound/soc/intel/boards/sof_sdw_rt711.c

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,19 +24,29 @@
2424
static int rt711_add_codec_device_props(const char *sdw_dev_name)
2525
{
2626
struct property_entry props[MAX_NO_PROPS] = {};
27+
struct fwnode_handle *fwnode;
2728
struct device *sdw_dev;
2829
int ret;
2930

31+
if (!SOF_RT711_JDSRC(sof_sdw_quirk))
32+
return 0;
33+
3034
sdw_dev = bus_find_device_by_name(&sdw_bus_type, NULL, sdw_dev_name);
3135
if (!sdw_dev)
3236
return -EPROBE_DEFER;
3337

34-
if (SOF_RT711_JDSRC(sof_sdw_quirk)) {
35-
props[0] = PROPERTY_ENTRY_U32("realtek,jd-src",
36-
SOF_RT711_JDSRC(sof_sdw_quirk));
38+
props[0] = PROPERTY_ENTRY_U32("realtek,jd-src",
39+
SOF_RT711_JDSRC(sof_sdw_quirk));
40+
41+
fwnode = fwnode_create_software_node(props, NULL);
42+
if (IS_ERR(fwnode)) {
43+
put_device(sdw_dev);
44+
return PTR_ERR(fwnode);
3745
}
3846

39-
ret = device_add_properties(sdw_dev, props);
47+
ret = device_add_software_node(sdw_dev, to_software_node(fwnode));
48+
49+
fwnode_handle_put(fwnode);
4050
put_device(sdw_dev);
4151

4252
return ret;
@@ -144,7 +154,7 @@ int sof_sdw_rt711_exit(struct device *dev, struct snd_soc_dai_link *dai_link)
144154
if (!sdw_dev)
145155
return -EINVAL;
146156

147-
device_remove_properties(sdw_dev);
157+
device_remove_software_node(sdw_dev);
148158
put_device(sdw_dev);
149159

150160
return 0;

sound/soc/intel/boards/sof_sdw_rt711_sdca.c

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,19 +24,29 @@
2424
static int rt711_sdca_add_codec_device_props(const char *sdw_dev_name)
2525
{
2626
struct property_entry props[MAX_NO_PROPS] = {};
27+
struct fwnode_handle *fwnode;
2728
struct device *sdw_dev;
2829
int ret;
2930

31+
if (!SOF_RT711_JDSRC(sof_sdw_quirk))
32+
return 0;
33+
3034
sdw_dev = bus_find_device_by_name(&sdw_bus_type, NULL, sdw_dev_name);
3135
if (!sdw_dev)
3236
return -EPROBE_DEFER;
3337

34-
if (SOF_RT711_JDSRC(sof_sdw_quirk)) {
35-
props[0] = PROPERTY_ENTRY_U32("realtek,jd-src",
36-
SOF_RT711_JDSRC(sof_sdw_quirk));
38+
props[0] = PROPERTY_ENTRY_U32("realtek,jd-src",
39+
SOF_RT711_JDSRC(sof_sdw_quirk));
40+
41+
fwnode = fwnode_create_software_node(props, NULL);
42+
if (IS_ERR(fwnode)) {
43+
put_device(sdw_dev);
44+
return PTR_ERR(fwnode);
3745
}
3846

39-
ret = device_add_properties(sdw_dev, props);
47+
ret = device_add_software_node(sdw_dev, to_software_node(fwnode));
48+
49+
fwnode_handle_put(fwnode);
4050
put_device(sdw_dev);
4151

4252
return ret;
@@ -144,7 +154,7 @@ int sof_sdw_rt711_sdca_exit(struct device *dev, struct snd_soc_dai_link *dai_lin
144154
if (!sdw_dev)
145155
return -EINVAL;
146156

147-
device_remove_properties(sdw_dev);
157+
device_remove_software_node(sdw_dev);
148158
put_device(sdw_dev);
149159

150160
return 0;

0 commit comments

Comments
 (0)