2018-06-17 13:48:26

by Stefan Agner

[permalink] [raw]
Subject: [PATCH] ALSA: ctxfi: use enum type CT_SUM_CTL where appropriate

Currently a variable of type enum CT_AMIXER_CTL is used for enum
CT_SUM_CTL values. This leads to warnings when using clang:
sound/pci/ctxfi/ctmixer.c:945:32: warning: implicit conversion from enumeration type
'enum CT_SUM_CTL' to different enumeration type 'enum CT_AMIXER_CTL'
[-Wenum-conversion]
for (i = AMIXER_MASTER_F, j = SUM_IN_F;
~ ^~~~~~~~
sound/pci/ctxfi/ctmixer.c:975:29: warning: implicit conversion from enumeration type
'enum CT_SUM_CTL' to different enumeration type 'enum CT_AMIXER_CTL'
[-Wenum-conversion]
for (i = AMIXER_PCM_F, j = SUM_IN_F; i <= AMIXER_PCM_S; i++, j++) {
~ ^~~~~~~~

Introduce enum CT_SUM_CTL k and it instead.

Signed-off-by: Stefan Agner <[email protected]>
---
sound/pci/ctxfi/ctmixer.c | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/sound/pci/ctxfi/ctmixer.c b/sound/pci/ctxfi/ctmixer.c
index db710d0a609f..4777d50fbbf8 100644
--- a/sound/pci/ctxfi/ctmixer.c
+++ b/sound/pci/ctxfi/ctmixer.c
@@ -938,17 +938,18 @@ static int ct_mixer_topology_build(struct ct_mixer *mixer)
struct sum *sum;
struct amixer *amix_d, *amix_s;
enum CT_AMIXER_CTL i, j;
+ enum CT_SUM_CTL k;

/* Build topology from destination to source */

/* Set up Master mixer */
- for (i = AMIXER_MASTER_F, j = SUM_IN_F;
- i <= AMIXER_MASTER_S; i++, j++) {
+ for (i = AMIXER_MASTER_F, k = SUM_IN_F;
+ i <= AMIXER_MASTER_S; i++, k++) {
amix_d = mixer->amixers[i*CHN_NUM];
- sum = mixer->sums[j*CHN_NUM];
+ sum = mixer->sums[k*CHN_NUM];
amix_d->ops->setup(amix_d, &sum->rsc, INIT_VOL, NULL);
amix_d = mixer->amixers[i*CHN_NUM+1];
- sum = mixer->sums[j*CHN_NUM+1];
+ sum = mixer->sums[k*CHN_NUM+1];
amix_d->ops->setup(amix_d, &sum->rsc, INIT_VOL, NULL);
}

@@ -972,12 +973,12 @@ static int ct_mixer_topology_build(struct ct_mixer *mixer)
amix_d->ops->setup(amix_d, &amix_s->rsc, INIT_VOL, NULL);

/* Set up PCM-in mixer */
- for (i = AMIXER_PCM_F, j = SUM_IN_F; i <= AMIXER_PCM_S; i++, j++) {
+ for (i = AMIXER_PCM_F, k = SUM_IN_F; i <= AMIXER_PCM_S; i++, k++) {
amix_d = mixer->amixers[i*CHN_NUM];
- sum = mixer->sums[j*CHN_NUM];
+ sum = mixer->sums[k*CHN_NUM];
amix_d->ops->setup(amix_d, NULL, INIT_VOL, sum);
amix_d = mixer->amixers[i*CHN_NUM+1];
- sum = mixer->sums[j*CHN_NUM+1];
+ sum = mixer->sums[k*CHN_NUM+1];
amix_d->ops->setup(amix_d, NULL, INIT_VOL, sum);
}

--
2.17.1



2018-06-18 15:42:12

by Takashi Iwai

[permalink] [raw]
Subject: Re: [PATCH] ALSA: ctxfi: use enum type CT_SUM_CTL where appropriate

On Sun, 17 Jun 2018 15:46:49 +0200,
Stefan Agner wrote:
>
> Currently a variable of type enum CT_AMIXER_CTL is used for enum
> CT_SUM_CTL values. This leads to warnings when using clang:
> sound/pci/ctxfi/ctmixer.c:945:32: warning: implicit conversion from enumeration type
> 'enum CT_SUM_CTL' to different enumeration type 'enum CT_AMIXER_CTL'
> [-Wenum-conversion]
> for (i = AMIXER_MASTER_F, j = SUM_IN_F;
> ~ ^~~~~~~~
> sound/pci/ctxfi/ctmixer.c:975:29: warning: implicit conversion from enumeration type
> 'enum CT_SUM_CTL' to different enumeration type 'enum CT_AMIXER_CTL'
> [-Wenum-conversion]
> for (i = AMIXER_PCM_F, j = SUM_IN_F; i <= AMIXER_PCM_S; i++, j++) {
> ~ ^~~~~~~~
>
> Introduce enum CT_SUM_CTL k and it instead.
>
> Signed-off-by: Stefan Agner <[email protected]>

Applied, thanks.


Takashi