[v4,00/13] MFD/extcon/ASoC: Rework arizona codec jack-detect support
mbox series

Message ID 20210123121313.79530-1-hdegoede@redhat.com
Headers show
Series
  • MFD/extcon/ASoC: Rework arizona codec jack-detect support
Related show

Message

Hans de Goede Jan. 23, 2021, 12:13 p.m. UTC
Hi all,

Here is v4 of my series to rework the arizona codec jack-detect support
to use the snd_soc_jack helpers instead of direct extcon reporting.

This is done by reworking the extcon driver into an arizona-jackdet
library and then modifying the codec drivers to use that directly,
replacing the old separate extcon child-devices and extcon-driver.

This brings the arizona-codec jack-detect handling inline with how
all other ASoC codec driver do this. This was developed and tested on
a Lenovo Yoga Tablet 1051L with a WM5102 codec.

There are various interdependencies between the patches in this
series, so IMHO it would be best if this entire series would be merged
through the MFD tree.

Note this series applies on top of my "[PATCH v4 0/5] MFD/ASoC: Add
support for Intel Bay Trail boards with WM5102 codec" series.

Changes in v4:
- Add sound/soc/codecs/arizona-jack.c to the WOLFSON MICROELECTRONICS DRIVERS
  MAINTAINERS section
- Small codying style tweaks to the "ASoC: arizona-jack: Cleanup logging" patch

Changes in v3:
- Move the bugfix patches to earlier in the series so that they
  apply to drivers/extcon/extcon-arizona.c so that they can be
  cherry-picked into the stable series
- Split runtime_pm_get -> runtime_pm_get_sync changes out into their
  own patch
- Simply move drivers/extcon/extcon-arizona.c to
  sound/soc/codecs/arizona-jack.c instead of first adding arizona-jack.c
  as a copy and then later removing extcon-arizona.c
- Some other small tweaks, see individual patch changelogs

Regards,

Hans


Hans de Goede (13):
  mfd: arizona: Drop arizona-extcon cells
  extcon: arizona: Fix some issues when HPDET IRQ fires after the jack
    has been unplugged
  extcon: arizona: Fix various races on driver unbind
  extcon: arizona: Fix flags parameter to the gpiod_get("wlf,micd-pol")
    call
  extcon: arizona: Always use pm_runtime_get_sync() when we need the
    device to be awake
  ASoC/extcon: arizona: Move arizona jack code to
    sound/soc/codecs/arizona-jack.c
  ASoC: arizona-jack: Move jack-detect variables to struct arizona_priv
  ASoC: arizona-jack: Use arizona->dev for runtime-pm
  ASoC: arizona-jack: convert into a helper library for codec drivers
  ASoC: arizona-jack: Use snd_soc_jack to report jack events
  ASoC: arizona-jack: Cleanup logging
  ASoC: arizona: Make the wm5102, wm5110, wm8997 and wm8998 drivers use
    the new jack library
  ASoC: Intel: bytcr_wm5102: Add jack detect support

 MAINTAINERS                                   |   3 +-
 drivers/extcon/Kconfig                        |   8 -
 drivers/extcon/Makefile                       |   1 -
 drivers/mfd/arizona-core.c                    |  20 -
 sound/soc/codecs/Makefile                     |   2 +-
 .../soc/codecs/arizona-jack.c                 | 577 +++++++-----------
 sound/soc/codecs/arizona.h                    |  44 ++
 sound/soc/codecs/wm5102.c                     |  12 +-
 sound/soc/codecs/wm5110.c                     |  12 +-
 sound/soc/codecs/wm8997.c                     |  14 +-
 sound/soc/codecs/wm8998.c                     |   9 +
 sound/soc/intel/boards/bytcr_wm5102.c         |  28 +-
 12 files changed, 325 insertions(+), 405 deletions(-)
 rename drivers/extcon/extcon-arizona.c => sound/soc/codecs/arizona-jack.c (76%)

Comments

Lee Jones Feb. 4, 2021, 11:05 a.m. UTC | #1
On Sat, 23 Jan 2021, Hans de Goede wrote:

> Hi all,
> 
> Here is v4 of my series to rework the arizona codec jack-detect support
> to use the snd_soc_jack helpers instead of direct extcon reporting.
> 
> This is done by reworking the extcon driver into an arizona-jackdet
> library and then modifying the codec drivers to use that directly,
> replacing the old separate extcon child-devices and extcon-driver.
> 
> This brings the arizona-codec jack-detect handling inline with how
> all other ASoC codec driver do this. This was developed and tested on
> a Lenovo Yoga Tablet 1051L with a WM5102 codec.
> 
> There are various interdependencies between the patches in this
> series, so IMHO it would be best if this entire series would be merged
> through the MFD tree.
> 
> Note this series applies on top of my "[PATCH v4 0/5] MFD/ASoC: Add
> support for Intel Bay Trail boards with WM5102 codec" series.
> 
> Changes in v4:
> - Add sound/soc/codecs/arizona-jack.c to the WOLFSON MICROELECTRONICS DRIVERS
>   MAINTAINERS section
> - Small codying style tweaks to the "ASoC: arizona-jack: Cleanup logging" patch
> 
> Changes in v3:
> - Move the bugfix patches to earlier in the series so that they
>   apply to drivers/extcon/extcon-arizona.c so that they can be
>   cherry-picked into the stable series
> - Split runtime_pm_get -> runtime_pm_get_sync changes out into their
>   own patch
> - Simply move drivers/extcon/extcon-arizona.c to
>   sound/soc/codecs/arizona-jack.c instead of first adding arizona-jack.c
>   as a copy and then later removing extcon-arizona.c
> - Some other small tweaks, see individual patch changelogs
> 
> Regards,
> 
> Hans
> 
> 
> Hans de Goede (13):
>   mfd: arizona: Drop arizona-extcon cells
>   extcon: arizona: Fix some issues when HPDET IRQ fires after the jack
>     has been unplugged
>   extcon: arizona: Fix various races on driver unbind
>   extcon: arizona: Fix flags parameter to the gpiod_get("wlf,micd-pol")
>     call
>   extcon: arizona: Always use pm_runtime_get_sync() when we need the
>     device to be awake
>   ASoC/extcon: arizona: Move arizona jack code to
>     sound/soc/codecs/arizona-jack.c
>   ASoC: arizona-jack: Move jack-detect variables to struct arizona_priv
>   ASoC: arizona-jack: Use arizona->dev for runtime-pm
>   ASoC: arizona-jack: convert into a helper library for codec drivers
>   ASoC: arizona-jack: Use snd_soc_jack to report jack events
>   ASoC: arizona-jack: Cleanup logging
>   ASoC: arizona: Make the wm5102, wm5110, wm8997 and wm8998 drivers use
>     the new jack library

>   ASoC: Intel: bytcr_wm5102: Add jack detect support

Can't apply this patch ...

>  MAINTAINERS                                   |   3 +-
>  drivers/extcon/Kconfig                        |   8 -
>  drivers/extcon/Makefile                       |   1 -
>  drivers/mfd/arizona-core.c                    |  20 -
>  sound/soc/codecs/Makefile                     |   2 +-
>  .../soc/codecs/arizona-jack.c                 | 577 +++++++-----------
>  sound/soc/codecs/arizona.h                    |  44 ++
>  sound/soc/codecs/wm5102.c                     |  12 +-
>  sound/soc/codecs/wm5110.c                     |  12 +-
>  sound/soc/codecs/wm8997.c                     |  14 +-
>  sound/soc/codecs/wm8998.c                     |   9 +
>  sound/soc/intel/boards/bytcr_wm5102.c         |  28 +-

... since this file doesn't exist?

>  12 files changed, 325 insertions(+), 405 deletions(-)
>  rename drivers/extcon/extcon-arizona.c => sound/soc/codecs/arizona-jack.c (76%)
>
Hans de Goede Feb. 4, 2021, 11:09 a.m. UTC | #2
Hi,

On 2/4/21 12:05 PM, Lee Jones wrote:
> On Sat, 23 Jan 2021, Hans de Goede wrote:
> 
>> Hi all,
>>
>> Here is v4 of my series to rework the arizona codec jack-detect support
>> to use the snd_soc_jack helpers instead of direct extcon reporting.
>>
>> This is done by reworking the extcon driver into an arizona-jackdet
>> library and then modifying the codec drivers to use that directly,
>> replacing the old separate extcon child-devices and extcon-driver.
>>
>> This brings the arizona-codec jack-detect handling inline with how
>> all other ASoC codec driver do this. This was developed and tested on
>> a Lenovo Yoga Tablet 1051L with a WM5102 codec.
>>
>> There are various interdependencies between the patches in this
>> series, so IMHO it would be best if this entire series would be merged
>> through the MFD tree.
>>
>> Note this series applies on top of my "[PATCH v4 0/5] MFD/ASoC: Add
>> support for Intel Bay Trail boards with WM5102 codec" series.
>>
>> Changes in v4:
>> - Add sound/soc/codecs/arizona-jack.c to the WOLFSON MICROELECTRONICS DRIVERS
>>   MAINTAINERS section
>> - Small codying style tweaks to the "ASoC: arizona-jack: Cleanup logging" patch
>>
>> Changes in v3:
>> - Move the bugfix patches to earlier in the series so that they
>>   apply to drivers/extcon/extcon-arizona.c so that they can be
>>   cherry-picked into the stable series
>> - Split runtime_pm_get -> runtime_pm_get_sync changes out into their
>>   own patch
>> - Simply move drivers/extcon/extcon-arizona.c to
>>   sound/soc/codecs/arizona-jack.c instead of first adding arizona-jack.c
>>   as a copy and then later removing extcon-arizona.c
>> - Some other small tweaks, see individual patch changelogs
>>
>> Regards,
>>
>> Hans
>>
>>
>> Hans de Goede (13):
>>   mfd: arizona: Drop arizona-extcon cells
>>   extcon: arizona: Fix some issues when HPDET IRQ fires after the jack
>>     has been unplugged
>>   extcon: arizona: Fix various races on driver unbind
>>   extcon: arizona: Fix flags parameter to the gpiod_get("wlf,micd-pol")
>>     call
>>   extcon: arizona: Always use pm_runtime_get_sync() when we need the
>>     device to be awake
>>   ASoC/extcon: arizona: Move arizona jack code to
>>     sound/soc/codecs/arizona-jack.c
>>   ASoC: arizona-jack: Move jack-detect variables to struct arizona_priv
>>   ASoC: arizona-jack: Use arizona->dev for runtime-pm
>>   ASoC: arizona-jack: convert into a helper library for codec drivers
>>   ASoC: arizona-jack: Use snd_soc_jack to report jack events
>>   ASoC: arizona-jack: Cleanup logging
>>   ASoC: arizona: Make the wm5102, wm5110, wm8997 and wm8998 drivers use
>>     the new jack library
> 
>>   ASoC: Intel: bytcr_wm5102: Add jack detect support
> 
> Can't apply this patch ...
> 
>>  MAINTAINERS                                   |   3 +-
>>  drivers/extcon/Kconfig                        |   8 -
>>  drivers/extcon/Makefile                       |   1 -
>>  drivers/mfd/arizona-core.c                    |  20 -
>>  sound/soc/codecs/Makefile                     |   2 +-
>>  .../soc/codecs/arizona-jack.c                 | 577 +++++++-----------
>>  sound/soc/codecs/arizona.h                    |  44 ++
>>  sound/soc/codecs/wm5102.c                     |  12 +-
>>  sound/soc/codecs/wm5110.c                     |  12 +-
>>  sound/soc/codecs/wm8997.c                     |  14 +-
>>  sound/soc/codecs/wm8998.c                     |   9 +
>>  sound/soc/intel/boards/bytcr_wm5102.c         |  28 +-
> 
> ... since this file doesn't exist?

As mentioned this is a follow-up series on top of the:

"[PATCH v4 0/5] MFD/ASoC: Add support for Intel Bay Trail boards with WM5102 codec"

Series, that series adds that file.

Regards,

Hans

p.s.

Do you want a resend of this one, with the new *-bys added too ?
Lee Jones Feb. 4, 2021, 11:13 a.m. UTC | #3
On Thu, 04 Feb 2021, Hans de Goede wrote:

> Hi,
> 
> On 2/4/21 12:05 PM, Lee Jones wrote:
> > On Sat, 23 Jan 2021, Hans de Goede wrote:
> > 
> >> Hi all,
> >>
> >> Here is v4 of my series to rework the arizona codec jack-detect support
> >> to use the snd_soc_jack helpers instead of direct extcon reporting.
> >>
> >> This is done by reworking the extcon driver into an arizona-jackdet
> >> library and then modifying the codec drivers to use that directly,
> >> replacing the old separate extcon child-devices and extcon-driver.
> >>
> >> This brings the arizona-codec jack-detect handling inline with how
> >> all other ASoC codec driver do this. This was developed and tested on
> >> a Lenovo Yoga Tablet 1051L with a WM5102 codec.
> >>
> >> There are various interdependencies between the patches in this
> >> series, so IMHO it would be best if this entire series would be merged
> >> through the MFD tree.
> >>
> >> Note this series applies on top of my "[PATCH v4 0/5] MFD/ASoC: Add
> >> support for Intel Bay Trail boards with WM5102 codec" series.
> >>
> >> Changes in v4:
> >> - Add sound/soc/codecs/arizona-jack.c to the WOLFSON MICROELECTRONICS DRIVERS
> >>   MAINTAINERS section
> >> - Small codying style tweaks to the "ASoC: arizona-jack: Cleanup logging" patch
> >>
> >> Changes in v3:
> >> - Move the bugfix patches to earlier in the series so that they
> >>   apply to drivers/extcon/extcon-arizona.c so that they can be
> >>   cherry-picked into the stable series
> >> - Split runtime_pm_get -> runtime_pm_get_sync changes out into their
> >>   own patch
> >> - Simply move drivers/extcon/extcon-arizona.c to
> >>   sound/soc/codecs/arizona-jack.c instead of first adding arizona-jack.c
> >>   as a copy and then later removing extcon-arizona.c
> >> - Some other small tweaks, see individual patch changelogs
> >>
> >> Regards,
> >>
> >> Hans
> >>
> >>
> >> Hans de Goede (13):
> >>   mfd: arizona: Drop arizona-extcon cells
> >>   extcon: arizona: Fix some issues when HPDET IRQ fires after the jack
> >>     has been unplugged
> >>   extcon: arizona: Fix various races on driver unbind
> >>   extcon: arizona: Fix flags parameter to the gpiod_get("wlf,micd-pol")
> >>     call
> >>   extcon: arizona: Always use pm_runtime_get_sync() when we need the
> >>     device to be awake
> >>   ASoC/extcon: arizona: Move arizona jack code to
> >>     sound/soc/codecs/arizona-jack.c
> >>   ASoC: arizona-jack: Move jack-detect variables to struct arizona_priv
> >>   ASoC: arizona-jack: Use arizona->dev for runtime-pm
> >>   ASoC: arizona-jack: convert into a helper library for codec drivers
> >>   ASoC: arizona-jack: Use snd_soc_jack to report jack events
> >>   ASoC: arizona-jack: Cleanup logging
> >>   ASoC: arizona: Make the wm5102, wm5110, wm8997 and wm8998 drivers use
> >>     the new jack library
> > 
> >>   ASoC: Intel: bytcr_wm5102: Add jack detect support
> > 
> > Can't apply this patch ...
> > 
> >>  MAINTAINERS                                   |   3 +-
> >>  drivers/extcon/Kconfig                        |   8 -
> >>  drivers/extcon/Makefile                       |   1 -
> >>  drivers/mfd/arizona-core.c                    |  20 -
> >>  sound/soc/codecs/Makefile                     |   2 +-
> >>  .../soc/codecs/arizona-jack.c                 | 577 +++++++-----------
> >>  sound/soc/codecs/arizona.h                    |  44 ++
> >>  sound/soc/codecs/wm5102.c                     |  12 +-
> >>  sound/soc/codecs/wm5110.c                     |  12 +-
> >>  sound/soc/codecs/wm8997.c                     |  14 +-
> >>  sound/soc/codecs/wm8998.c                     |   9 +
> >>  sound/soc/intel/boards/bytcr_wm5102.c         |  28 +-
> > 
> > ... since this file doesn't exist?
> 
> As mentioned this is a follow-up series on top of the:
> 
> "[PATCH v4 0/5] MFD/ASoC: Add support for Intel Bay Trail boards with WM5102 codec"
> 
> Series, that series adds that file.

Okay, that makes sense.  Thanks.

> Regards,
> 
> Hans
> 
> p.s.
> 
> Do you want a resend of this one, with the new *-bys added too ?

Only this one please.

I'll try to take the other one through now.