[ALSA] Intel HD Audio: Use list_for_each_entry(_safe)
authorMatthias Kaehlcke <matthias.kaehlcke@gmail.com>
Mon, 17 Sep 2007 12:40:04 +0000 (14:40 +0200)
committerJaroslav Kysela <perex@perex.cz>
Tue, 16 Oct 2007 14:50:42 +0000 (16:50 +0200)
Intel HD Audio: Use list_for_each_entry(_safe) instead of
list_for_each(_safe)

Signed-off-by: Matthias Kaehlcke <matthias.kaehlcke@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
sound/pci/hda/hda_generic.c
sound/pci/hda/hda_intel.c

index 819c804a579f2db5a6dc6b4cdde793a676b1ec9d..c957eb58de5cb048c6bf9e4dca471dcd2ddc5a37 100644 (file)
@@ -95,13 +95,12 @@ struct hda_gspec {
 static void snd_hda_generic_free(struct hda_codec *codec)
 {
        struct hda_gspec *spec = codec->spec;
-       struct list_head *p, *n;
+       struct hda_gnode *node, *n;
 
        if (! spec)
                return;
        /* free all widgets */
-       list_for_each_safe(p, n, &spec->nid_list) {
-               struct hda_gnode *node = list_entry(p, struct hda_gnode, list);
+       list_for_each_entry_safe(node, n, &spec->nid_list, list) {
                if (node->conn_list != node->slist)
                        kfree(node->conn_list);
                kfree(node);
@@ -203,11 +202,9 @@ static int build_afg_tree(struct hda_codec *codec)
 /* FIXME: should avoid the braindead linear search */
 static struct hda_gnode *hda_get_node(struct hda_gspec *spec, hda_nid_t nid)
 {
-       struct list_head *p;
        struct hda_gnode *node;
 
-       list_for_each(p, &spec->nid_list) {
-               node = list_entry(p, struct hda_gnode, list);
+       list_for_each_entry(node, &spec->nid_list, list) {
                if (node->nid == nid)
                        return node;
        }
@@ -260,11 +257,9 @@ static int select_input_connection(struct hda_codec *codec, struct hda_gnode *no
  */
 static void clear_check_flags(struct hda_gspec *spec)
 {
-       struct list_head *p;
        struct hda_gnode *node;
 
-       list_for_each(p, &spec->nid_list) {
-               node = list_entry(p, struct hda_gnode, list);
+       list_for_each_entry(node, &spec->nid_list, list) {
                node->checked = 0;
        }
 }
@@ -347,12 +342,10 @@ static struct hda_gnode *parse_output_jack(struct hda_codec *codec,
                                           struct hda_gspec *spec,
                                           int jack_type)
 {
-       struct list_head *p;
        struct hda_gnode *node;
        int err;
 
-       list_for_each(p, &spec->nid_list) {
-               node = list_entry(p, struct hda_gnode, list);
+       list_for_each_entry(node, &spec->nid_list, list) {
                if (node->type != AC_WID_PIN)
                        continue;
                /* output capable? */
@@ -664,7 +657,6 @@ static int parse_input_path(struct hda_codec *codec, struct hda_gnode *adc_node)
 static int parse_input(struct hda_codec *codec)
 {
        struct hda_gspec *spec = codec->spec;
-       struct list_head *p;
        struct hda_gnode *node;
        int err;
 
@@ -673,8 +665,7 @@ static int parse_input(struct hda_codec *codec)
         * If it reaches to certain input PINs, we take it as the
         * input path.
         */
-       list_for_each(p, &spec->nid_list) {
-               node = list_entry(p, struct hda_gnode, list);
+       list_for_each_entry(node, &spec->nid_list, list) {
                if (node->wid_caps & AC_WCAP_DIGITAL)
                        continue; /* skip SPDIF */
                if (node->type == AC_WID_AUD_IN) {
@@ -943,7 +934,6 @@ static int parse_loopback_path(struct hda_codec *codec, struct hda_gspec *spec,
 static int build_loopback_controls(struct hda_codec *codec)
 {
        struct hda_gspec *spec = codec->spec;
-       struct list_head *p;
        struct hda_gnode *node;
        int err;
        const char *type;
@@ -951,8 +941,7 @@ static int build_loopback_controls(struct hda_codec *codec)
        if (! spec->out_pin_node[0])
                return 0;
 
-       list_for_each(p, &spec->nid_list) {
-               node = list_entry(p, struct hda_gnode, list);
+       list_for_each_entry(node, &spec->nid_list, list) {
                if (node->type != AC_WID_PIN)
                        continue;
                /* input capable? */
index 68dc9a2e3cf89f4a4b9a7a5d6f41576e332d5649..cbb3da408e8065d39c73bde37ca075759522e821 100644 (file)
@@ -1393,7 +1393,6 @@ static int __devinit create_codec_pcm(struct azx *chip, struct hda_codec *codec,
 
 static int __devinit azx_pcm_create(struct azx *chip)
 {
-       struct list_head *p;
        struct hda_codec *codec;
        int c, err;
        int pcm_dev;
@@ -1404,8 +1403,7 @@ static int __devinit azx_pcm_create(struct azx *chip)
 
        /* create audio PCMs */
        pcm_dev = 0;
-       list_for_each(p, &chip->bus->codec_list) {
-               codec = list_entry(p, struct hda_codec, list);
+       list_for_each_entry(codec, &chip->bus->codec_list, list) {
                for (c = 0; c < codec->num_pcms; c++) {
                        if (codec->pcm_info[c].is_modem)
                                continue; /* create later */
@@ -1424,8 +1422,7 @@ static int __devinit azx_pcm_create(struct azx *chip)
 
        /* create modem PCMs */
        pcm_dev = AZX_MAX_AUDIO_PCMS;
-       list_for_each(p, &chip->bus->codec_list) {
-               codec = list_entry(p, struct hda_codec, list);
+       list_for_each_entry(codec, &chip->bus->codec_list, list) {
                for (c = 0; c < codec->num_pcms; c++) {
                        if (!codec->pcm_info[c].is_modem)
                                continue; /* already created */