Re: [PATCH 1/2] ASoC: atmel-classd: add the Audio Class D Amplifier code

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 






On 9/9/2015 17:52, Mark Brown wrote:
On Wed, Sep 09, 2015 at 11:16:08AM +0800, Wu, Songjun wrote:
On 9/8/2015 20:23, Mark Brown wrote:

If you want to have three controls you need to write code so that the
user can only change one of them from 0dB at once, returning an error
otherwise.  That was why it looked like they were three separate
controls.

If user operates two or tree controls at the same time, for my
understanding, these operations are serial actually in kernel, not parallel,
and the last operation will be effective. I only write the function
'classd_get_eq_enum' to get the enumeration value, if user changes one of
controls, the other controls will get 0dB. Is my understanding correct?

Yes, that's what's going to end up happening but it's not how controls
are expected to behave - applications will expect changing one control
to leave others unaffected so it's better to return an error rather than
change the other control.

If application change non EQ controls, the others will be unaffected. But the classD IP can only supports one EQ control at once, these three EQ controls point to the same register field, if application set a different EQ control, the error occurs, there will be many errors, it's not very reasonable to application. The best way I think is if application set one EQ control, the other EQ controls will change to 0dB, it's also consistent with fact.
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux