2020-02-24 12:07:23

by Togorean, Bogdan

[permalink] [raw]
Subject: [RESEND 2/2] drm: bridge: adv7511: Extend list of audio sample rates

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


2020-04-07 15:12:28

by Andrzej Hajda

[permalink] [raw]
Subject: Re: [RESEND 2/2] drm: bridge: adv7511: Extend list of audio sample rates

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;


2020-04-13 09:02:12

by Togorean, Bogdan

[permalink] [raw]
Subject: RE: [RESEND 2/2] drm: bridge: adv7511: Extend list of audio sample rates

> > 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;
>