Hi
On Thu, Aug 13, 2015 at 4:26 AM, Mark Brown broonie@kernel.org wrote:
Locally I tried to move clock initialization out of platform code to codec itself. Codec calls devm_clk_get() in init and sets frequency in nau8825_set_sysclk(). See it here https://github.com/anatol/linux/tree/nau8825 It works fine on a Tegra-based device. But I found that devm_clk_get() is DTS specific and does not work with ACPI. We need NAU8825 driver for Intel platform as well.
No, that is not the case at all - what makes you claim that devm_clk_get() is DT specific?
clk_dev uses of_clk_get_by_name() that is implemented for DTS only. See include/linux/clk.h.
ACPI has a compatible API for getting simple properties (strings/numbers), but no API for dealing with clocks.
I very much doubt that this will be a problem for all boards. To repeat what I said in my previous reply:
| The assumption would be that if the system doesn't have or need jack | detection then the jack pins won't be reconfigurable anyway.
Your board may be wired up with jack detection configured in a way that needs this, I would be surprised if all boards were.
I am still trying to understand the use-case for NAU8825 without jack detection functionality. Are you talking about a board configuration that does not wire jack to JKDET codec pin and (maybe) statically connects output to speakers?
If platform driver does not enable jack detection, what NAU8825 functionality suppose to work? Does output (HPL/HPR) suppose to work? Does mic suppose to work? Is OMTP/CTIA mic detection functionality needed?