At Mon, 23 Mar 2015 08:00:31 -0700, Mark Brown wrote:
On Mon, Mar 23, 2015 at 10:18:19AM +0100, David Henningsson wrote:
Hmm, I must have missed this. It's great that you try to implement kctl jacks for ASoC, but your actual implementation seems to regress HDA, unless I'm missing something.
In particular, the phantom jacks currently show up in the kctl jack layer only, not in the /dev/input layer, and I prefer to keep it that way in order not to pollute the /dev/input layer with phantom jacks. But it looks like these will just disappear (?!) with your patch, but I'm not entirely sure. Could you elaborate?
We shouldn't be hacking individual drivers to support whatever random subset of userspace interfaces some system decides it wants to use - that isn't making anyone happy. If we want to have the ability to customize which userspace interfaces appear it seems better to put that in the core code so individual drivers don't need to worry about it, from that point of view unifying the interfaces should be progress.
Right, but it's a bit irrelevant. We do want to have a common core code, indeed. However, as David suggested, the latest patchset still doesn't care about "phantom" jack that is a mandatory feature. HD-audio create kctl items even for fixed pins without jack detection. This is needed for having consistent pin mapping.
Now the question is whether we need representing the same item for input jack, even though it's nothing but a place holder. If we want to have consistency between input and kctl jack items, then yes. OTOH, we might want to drop buttons from kctls in anyway, so such a consistency has no importance. Then we may just ignore phantom jacks for input jacks but create only phatom jack kctls, too, either by adding a new flag to indicate that, or let type=0 behaving like that.
Takashi