<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-dev/sound/soc/codecs/rt5677.h, branch linus/master</title>
<subtitle>Linux kernel development work - see feature branches</subtitle>
<id>https://git.zx2c4.com/linux-dev/atom/sound/soc/codecs/rt5677.h?h=linus%2Fmaster</id>
<link rel='self' href='https://git.zx2c4.com/linux-dev/atom/sound/soc/codecs/rt5677.h?h=linus%2Fmaster'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/'/>
<updated>2019-11-11T13:02:06Z</updated>
<entry>
<title>ASoC: rt5677: Set ADC clock to use PLL and enable ASRC</title>
<updated>2019-11-11T13:02:06Z</updated>
<author>
<name>Curtis Malainey</name>
<email>cujomalainey@chromium.org</email>
</author>
<published>2019-11-06T01:13:35Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=ba0b3a977ecf525231d36f2d9f3a6ea05c35090a'/>
<id>urn:sha1:ba0b3a977ecf525231d36f2d9f3a6ea05c35090a</id>
<content type='text'>
Use the PLL to kept the correct 24M clock rate so frequency shift does
not occur when using the DSP VAD.

Signed-off-by: Curtis Malainey &lt;cujomalainey@chromium.org&gt;
Link: https://lore.kernel.org/r/20191106011335.223061-11-cujomalainey@chromium.org
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
<entry>
<title>ASoC: rt5677: Disable irq at suspend</title>
<updated>2019-11-11T13:02:04Z</updated>
<author>
<name>Ben Zhang</name>
<email>benzh@chromium.org</email>
</author>
<published>2019-11-06T01:13:32Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=ee0be4a99d4923a9b9c681b008df561648731793'/>
<id>urn:sha1:ee0be4a99d4923a9b9c681b008df561648731793</id>
<content type='text'>
The irq is disabled at suspend to avoid running the threaded irq
handler after the codec has been powered off. At resume, codec irq is
re-enabled and the interrupt status register is checked to see if
headphone has been pluggnd/unplugged while the device is suspended.

There is still a chance that the headphone gets enabled or disabled
after the codec is suspended. disable_irq syncs the threaded irq
handler, but soc-jack's threaded irq handler schedules a delayed
work to poll gpios (for debounce). This is still OK. The codec won't
be powered back on again because all audio paths have been suspended,
and there are no force enabled supply widgets (MICBIAS1 is disabled).
The gpio status read after codec power off could be wrong, so the
gpio values are checked again after resume.

Signed-off-by: Ben Zhang &lt;benzh@chromium.org&gt;
Signed-off-by: Curtis Malainey &lt;cujomalainey@chromium.org&gt;
Link: https://lore.kernel.org/r/20191106011335.223061-8-cujomalainey@chromium.org
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
<entry>
<title>ASoC: rt5677: Stop and restart DSP over suspend/resume</title>
<updated>2019-11-11T13:02:03Z</updated>
<author>
<name>Ben Zhang</name>
<email>benzh@chromium.org</email>
</author>
<published>2019-11-06T01:13:31Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=3f81068dc8e5fc0d3b0d67a5ae99c5140a4e96cb'/>
<id>urn:sha1:3f81068dc8e5fc0d3b0d67a5ae99c5140a4e96cb</id>
<content type='text'>
MCLK1 gets disabled at suspend and re-enabled at resume. Before
MCLK1 is re-enabled, if the DSP is already on (either the DSP was
left on during suspend, or the DSP is turned on early at resume),
i2c register read returns garbage and corrupts the regmap cache.

This patch stops the DSP before suspend and restarts it after
resume with a dalay to ensure MCLK is on while loading firmware.

Signed-off-by: Ben Zhang &lt;benzh@chromium.org&gt;
Signed-off-by: Curtis Malainey &lt;cujomalainey@chromium.org&gt;
Link: https://lore.kernel.org/r/20191106011335.223061-7-cujomalainey@chromium.org
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
<entry>
<title>ASoC: rt5677: Load firmware via SPI using delayed work</title>
<updated>2019-11-11T13:01:59Z</updated>
<author>
<name>Ben Zhang</name>
<email>benzh@chromium.org</email>
</author>
<published>2019-11-06T01:13:26Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=461c623270e4fa9cbab44e3ac2f0ddab2842c034'/>
<id>urn:sha1:461c623270e4fa9cbab44e3ac2f0ddab2842c034</id>
<content type='text'>
The firmware rt5677_elf_vad is an ELF binary obtained from
request_firmware(). Sections of the ELF are loaded to
the DSP via SPI. A model (e.g. en_us.mmap) can optionally be
loaded to the DSP at RT5677_MODEL_ADDR to overwrite the
baked-in model in rt5677_elf_vad.

Then we switch to DSP mode, load firmware, and let DSP run.
When a hotword is detected, an interrupt is fired and
rt5677_irq() is called. When 'DSP VAD Switch' is turned off,
the codec is set back to normal mode.

The kcontrol 'DSP VAD Switch' is automatically enabled/disabled
when the hotwording PCM stream is opened/closed.

Signed-off-by: Ben Zhang &lt;benzh@chromium.org&gt;
Signed-off-by: Curtis Malainey &lt;cujomalainey@chromium.org&gt;
Link: https://lore.kernel.org/r/20191106011335.223061-2-cujomalainey@chromium.org
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
<entry>
<title>Merge tag 'v5.2-rc6' into asoc-5.3</title>
<updated>2019-06-26T11:39:34Z</updated>
<author>
<name>Mark Brown</name>
<email>broonie@kernel.org</email>
</author>
<published>2019-06-26T11:39:34Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=53c8b29abe42e5601cfa0ea5962532f0cfdec8a0'/>
<id>urn:sha1:53c8b29abe42e5601cfa0ea5962532f0cfdec8a0</id>
<content type='text'>
Linux 5.2-rc6
</content>
</entry>
<entry>
<title>treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500</title>
<updated>2019-06-19T15:09:55Z</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2019-06-04T08:11:33Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=d2912cb15bdda8ba4a5dd73396ad62641af2f520'/>
<id>urn:sha1:d2912cb15bdda8ba4a5dd73396ad62641af2f520</id>
<content type='text'>
Based on 2 normalized pattern(s):

  this program is free software you can redistribute it and or modify
  it under the terms of the gnu general public license version 2 as
  published by the free software foundation

  this program is free software you can redistribute it and or modify
  it under the terms of the gnu general public license version 2 as
  published by the free software foundation #

extracted by the scancode license scanner the SPDX license identifier

  GPL-2.0-only

has been chosen to replace the boilerplate/reference in 4122 file(s).

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Reviewed-by: Enrico Weigelt &lt;info@metux.net&gt;
Reviewed-by: Kate Stewart &lt;kstewart@linuxfoundation.org&gt;
Reviewed-by: Allison Randal &lt;allison@lohutok.net&gt;
Cc: linux-spdx@vger.kernel.org
Link: https://lkml.kernel.org/r/20190604081206.933168790@linutronix.de
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>ASoC: rt5677: clear interrupts by polarity flip</title>
<updated>2019-06-19T11:46:24Z</updated>
<author>
<name>Ben Zhang</name>
<email>benzh@chromium.org</email>
</author>
<published>2019-06-18T23:45:54Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=4f7b018b55db0361718161e1471d8b7a16fdfa47'/>
<id>urn:sha1:4f7b018b55db0361718161e1471d8b7a16fdfa47</id>
<content type='text'>
The rt5677 jack detection function has a requirement that the polarity
of an interrupt be flipped after it fires in order to clear the
interrupt.

This patch implements an irq_chip with irq_domain directly instead of
using regmap-irq, so that interrupt source line polarities can be
flipped in the irq handler.

The reason that this patch does not add this feature within regmap-irq
is that future patches will add hotword detection support to this irq
handler. Those patches will require adding additional logic that would
not make sense to have in regmap-irq.

Signed-off-by: Ben Zhang &lt;benzh@chromium.org&gt;
Signed-off-by: Fletcher Woodruff &lt;fletcherw@chromium.org&gt;
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
<entry>
<title>ASoC: rt5677: move jack-detect init to i2c probe</title>
<updated>2019-06-17T15:12:45Z</updated>
<author>
<name>Fletcher Woodruff</name>
<email>fletcherw@chromium.org</email>
</author>
<published>2019-06-14T19:48:52Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=241800642ea3482ab3f80a2a3662e9f2e6a82208'/>
<id>urn:sha1:241800642ea3482ab3f80a2a3662e9f2e6a82208</id>
<content type='text'>
This patch moves the code to select the gpios for jack detection
from rt5677_probe to rt5677_init_irq (called from rt5677_i2c_probe).

It also sets some registers to fix bugs related to jack detection, and
adds some constants and comments to make it easier to understand what
certain register settings are controlling.

Signed-off-by: Ben Zhang &lt;benzh@chromium.org&gt;
Signed-off-by: Fletcher Woodruff &lt;fletcherw@chromium.org&gt;
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
<entry>
<title>ASoC: rt5677: Add missing voice activation register definitions</title>
<updated>2019-05-30T15:32:34Z</updated>
<author>
<name>Curtis Malainey</name>
<email>cujomalainey@chromium.org</email>
</author>
<published>2019-05-29T19:30:48Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=f499edf9fa90f184af9f457fd0912a788754af25'/>
<id>urn:sha1:f499edf9fa90f184af9f457fd0912a788754af25</id>
<content type='text'>
Most of the voice activation definitions were missing, they will be
needed for when hotwording is added. Also the source bits are only 2
wide not 3 and needed to be corrected.

Signed-off-by: Curtis Malainey &lt;cujomalainey@chromium.org&gt;
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
<entry>
<title>ASoC: rt5677: Add component driver name</title>
<updated>2019-05-08T06:43:52Z</updated>
<author>
<name>Curtis Malainey</name>
<email>cujomalainey@chromium.org</email>
</author>
<published>2019-05-07T23:32:13Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=893d1a9c5c1c246eb756c828a12b5966d2ed9a17'/>
<id>urn:sha1:893d1a9c5c1c246eb756c828a12b5966d2ed9a17</id>
<content type='text'>
Add name to component driver so it is possible to lookup the component
when needed.

Signed-off-by: Curtis Malainey &lt;cujomalainey@chromium.org&gt;
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
</feed>
