Let's start converting the access functions to regmap. The first one is the simplest, just converting the codec parameter read helper function snd_hda_param_read().
Signed-off-by: Takashi Iwai tiwai@suse.de --- sound/pci/hda/hda_codec.c | 18 ++++++++++++++++++ sound/pci/hda/hda_codec.h | 3 +-- 2 files changed, 19 insertions(+), 2 deletions(-)
diff --git a/sound/pci/hda/hda_codec.c b/sound/pci/hda/hda_codec.c index 0fd71131193a..3a209e8b6130 100644 --- a/sound/pci/hda/hda_codec.c +++ b/sound/pci/hda/hda_codec.c @@ -34,6 +34,7 @@ #include <sound/tlv.h> #include <sound/initval.h> #include <sound/jack.h> +#include "hda_regmap.h" #include "hda_local.h" #include "hda_beep.h" #include "hda_jack.h" @@ -255,6 +256,23 @@ void snd_hda_sequence_write(struct hda_codec *codec, const struct hda_verb *seq) EXPORT_SYMBOL_GPL(snd_hda_sequence_write);
/** + * snd_hda_param_read - read a parameter + * @codec: the HDA codec + * @nid: NID to read + * @parm: parameter value + */ +int snd_hda_param_read(struct hda_codec *codec, hda_nid_t nid, int parm) +{ + unsigned int verb = (AC_VERB_PARAMETERS << 8) | (nid << 20) | parm; + unsigned int val; + + if (snd_hda_reg_raw_read(codec, verb, &val) < 0) + return -1; + return val; +} +EXPORT_SYMBOL_GPL(snd_hda_param_read); + +/** * snd_hda_get_sub_nodes - get the range of sub nodes * @codec: the HDA codec * @nid: NID to parse diff --git a/sound/pci/hda/hda_codec.h b/sound/pci/hda/hda_codec.h index 3be4e1040036..db310e9c53ff 100644 --- a/sound/pci/hda/hda_codec.h +++ b/sound/pci/hda/hda_codec.h @@ -439,8 +439,7 @@ unsigned int snd_hda_codec_read(struct hda_codec *codec, hda_nid_t nid, unsigned int verb, unsigned int parm); int snd_hda_codec_write(struct hda_codec *codec, hda_nid_t nid, int flags, unsigned int verb, unsigned int parm); -#define snd_hda_param_read(codec, nid, param) \ - snd_hda_codec_read(codec, nid, 0, AC_VERB_PARAMETERS, param) +int snd_hda_param_read(struct hda_codec *codec, hda_nid_t nid, int parm); int snd_hda_get_sub_nodes(struct hda_codec *codec, hda_nid_t nid, hda_nid_t *start_id); int snd_hda_get_connections(struct hda_codec *codec, hda_nid_t nid,