ADV7511 support sample rates up to 192kHz. CTS and N parameters should
be computed accordingly so this commit extend the list up to maximum
supported sample rate.
Signed-off-by: Bogdan Togorean <[email protected]>
---
drivers/gpu/drm/bridge/adv7511/adv7511_audio.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/drivers/gpu/drm/bridge/adv7511/adv7511_audio.c b/drivers/gpu/drm/bridge/adv7511/adv7511_audio.c
index 1e9b128d229b..13e8cee6e827 100644
--- a/drivers/gpu/drm/bridge/adv7511/adv7511_audio.c
+++ b/drivers/gpu/drm/bridge/adv7511/adv7511_audio.c
@@ -27,6 +27,18 @@ static void adv7511_calc_cts_n(unsigned int f_tmds, unsigned int fs,
case 48000:
*n = 6144;
break;
+ case 88200:
+ *n = 12544;
+ break;
+ case 96000:
+ *n = 12288;
+ break;
+ case 176400:
+ *n = 25088;
+ break;
+ case 192000:
+ *n = 24576;
+ break;
}
*cts = ((f_tmds * *n) / (128 * fs)) * 1000;
--
2.25.0
On 24.02.2020 13:01, Bogdan Togorean wrote:
> ADV7511 support sample rates up to 192kHz. CTS and N parameters should
> be computed accordingly so this commit extend the list up to maximum
> supported sample rate.
>
> Signed-off-by: Bogdan Togorean <[email protected]>
> ---
> drivers/gpu/drm/bridge/adv7511/adv7511_audio.c | 12 ++++++++++++
> 1 file changed, 12 insertions(+)
>
> diff --git a/drivers/gpu/drm/bridge/adv7511/adv7511_audio.c b/drivers/gpu/drm/bridge/adv7511/adv7511_audio.c
> index 1e9b128d229b..13e8cee6e827 100644
> --- a/drivers/gpu/drm/bridge/adv7511/adv7511_audio.c
> +++ b/drivers/gpu/drm/bridge/adv7511/adv7511_audio.c
> @@ -27,6 +27,18 @@ static void adv7511_calc_cts_n(unsigned int f_tmds, unsigned int fs,
> case 48000:
> *n = 6144;
> break;
> + case 88200:
> + *n = 12544;
> + break;
> + case 96000:
> + *n = 12288;
> + break;
> + case 176400:
> + *n = 25088;
> + break;
> + case 192000:
> + *n = 24576;
> + break;
I would put:
case 32000:
case 48000:
case 96000:
case 192000:
*n = fs * 128 / 1000;
break;
case 44100:
case 88200:
case 176400:
*n = fs * 128 / 900;
break;
To uncover the magic. Up to you.
Reviewed-by: Andrzej Hajda <[email protected]>
Regards
Andrzej
> }
>
> *cts = ((f_tmds * *n) / (128 * fs)) * 1000;
> > ADV7511 support sample rates up to 192kHz. CTS and N parameters should
> > be computed accordingly so this commit extend the list up to maximum
> > supported sample rate.
> >
> > Signed-off-by: Bogdan Togorean <[email protected]>
> > ---
> > drivers/gpu/drm/bridge/adv7511/adv7511_audio.c | 12 ++++++++++++
> > 1 file changed, 12 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/bridge/adv7511/adv7511_audio.c
> b/drivers/gpu/drm/bridge/adv7511/adv7511_audio.c
> > index 1e9b128d229b..13e8cee6e827 100644
> > --- a/drivers/gpu/drm/bridge/adv7511/adv7511_audio.c
> > +++ b/drivers/gpu/drm/bridge/adv7511/adv7511_audio.c
> > @@ -27,6 +27,18 @@ static void adv7511_calc_cts_n(unsigned int f_tmds,
> unsigned int fs,
> > case 48000:
> > *n = 6144;
> > break;
> > + case 88200:
> > + *n = 12544;
> > + break;
> > + case 96000:
> > + *n = 12288;
> > + break;
> > + case 176400:
> > + *n = 25088;
> > + break;
> > + case 192000:
> > + *n = 24576;
> > + break;
>
>
> I would put:
>
> case 32000:
> case 48000:
> case 96000:
> case 192000:
> *n = fs * 128 / 1000;
> break;
> case 44100:
> case 88200:
> case 176400:
> *n = fs * 128 / 900;
> break;
>
> To uncover the magic. Up to you.
Great solution Andrzej,
Thank you for your suggestion.
Regards,
Bogdan
>
> Reviewed-by: Andrzej Hajda <[email protected]>
>
>
> Regards
> Andrzej
> > }
> >
> > *cts = ((f_tmds * *n) / (128 * fs)) * 1000;
>