Commit graph

131 commits

Author SHA1 Message Date
Konstantin Makariev
73629a9861 synaptics_mmi: prevent soft lock on reboot
Reboot callback might be called multiple times causing a soft lock.
This change clears flags and invalidates pointers to avoid repeated
function call.

Change-Id: I73010f64960f238faacd2fac2f2a831e36b63d71
Signed-off-by: Konstantin Makariev <hcv867@motorola.com>
Reviewed-on: https://gerrit.mot.com/1190524
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Konstantin Makariev <kmakariev@motorola.com>
Submit-Approved: Jira Key
2018-06-11 14:52:32 -05:00
haojl2
c187fcf12c synaptics_tcm: Disable wakeup gesture
This feature is not used in moto projects.

Change-Id: I21b4ab7f33e448e4ce7bfaa4992ed26900b64b90
Signed-off-by: haojl2 <haojl2@motorola.com>
Reviewed-on: https://gerrit.mot.com/1189236
SME-Granted: SME Approvals Granted
SLTApproved: Slta Waiver
Tested-by: Jira Key
Reviewed-by: Jianqi Yang <yangj@motorola.com>
Submit-Approved: Jira Key
2018-06-08 05:46:44 -05:00
Wen Xie
fd4d86b0cd motorola: dlkm: Add Sarsensor sx931x
-Add the Semtech Sx9310/Sx9311 DLKM.

Change-Id: I13cc4e70a43d02f6de6148895c168fd9db3ff497
Signed-off-by: Wen Xie <xiewen3@motorola.com>
Reviewed-on: https://gerrit.mot.com/1188111
SLTApproved: Slta Waiver
SME-Granted: SME Approvals Granted
Tested-by: Jira Key
Reviewed-by: Xiangpo Zhao <zhaoxp3@motorola.com>
Submit-Approved: Jira Key
2018-06-08 00:06:50 -05:00
Jeff LaBundy
3ca806f96d misc: cs40l2x: Add GPIO1 device tree entries
Added device tree entries for default GPIO1 rising-edge index,
falling-edge index, and falling-edge timeout to be written to
the corresponding DSP firmware controls during initialization.

Change-Id: Ib8f0b662fdf8367e31608cdc121fdcade0fdd1be
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:36 -05:00
Jeff LaBundy
bf29268493 Documentation: cs40l2x: Add GPIO1 device tree entries
Added device tree binding documentation for GPIO1 rising-edge
wavetable index, falling-edge wavetable index and falling-edge
timeout device tree entries.

Change-Id: I0b527eda2969428aadc0a8bd11131f46387cc3d6
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:36 -05:00
Jeff LaBundy
cd5ebc4a19 misc: cs40l2x: Add bounds checking to timeout controls
Added a safety check to ensure that the values written to the
gpio1_fall_timeout and standby_timeout controls do not exceed the
maximum value supported by the DSP.

Change-Id: I8b5dca1f5013acb2d06688af577d0214ce956559
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:36 -05:00
David Lin
0e68b2ef46 misc: cs40l2x: Do not use stack buffer for regmap_bulk_read
SoC bus controller driver may choose to use DMA for the underling data
transfer. This patch removes the usage of stack for DMA buffer.

Bug: 79998874
Test: manual haptics test
Change-Id: I5729ecc9751eb1af768261b66c499ccb9957cb69
Signed-off-by: David Lin <dtwlin@google.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:36 -05:00
Jeff LaBundy
e9867607c7 misc: cs40l2x: Restore additional registers following basic mode
Added GPIO configuration and amplifier digital volume to the list of
registers restored to their respective default values following the
shutdown of ROM mode, but the initialization of RAM mode (B1 only).

Change-Id: If317a0b7145718d45cea3249037a503d60c32d37
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:36 -05:00
Jeff LaBundy
9454721ee8 misc: cs40l2x: Remove aoh_auto_enable control
* Removed the ability to force the PLL active (aoh_auto_enable = 0)
  as it is forbidden to do so with firmware revision 4.1.0 and above.
* Fixed playback queue polling interval to 5 ms.

Change-Id: I2e79a0becbdd2f7d4e10d15af0f675f945f0ab9f
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:36 -05:00
Jeff LaBundy
4fd0b8d167 misc: cs40l2x: Add suspend blocker support
Added wakeup calls in order to prevent the system from suspending
while continuous vibration is in progress.

Change-Id: I295fbe3098ebda4710bcd90653609c284d8c69a3
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:36 -05:00
Jeff LaBundy
845da911f3 misc: cs40l2x: Eliminate local storage of digital volume
Replaced references to a local copy of digital volume (mapped to the
dig_scale sysfs control) with an actual query of the device.

Change-Id: If5c1a3d65a4466299f198f751f6364e979243fd1
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:36 -05:00
Jeff LaBundy
74625b10a3 misc: cs40l2x: Use firmware amplitude control for playback queue
Replaced changes to the chip-level digital volume control (dig_scale)
during execution of the playback queue with changes to the firmware's
control-port-triggered amplitude control (cp_dig_scale) to prevent
changes to the amplitude of GPIO-triggered playback during execution
of the playback queue.

Change-Id: Ice5b7a36978a73f2c2408f2f1ead8dbb48dbe8f9
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:36 -05:00
Jeff LaBundy
be1a2bed27 misc: cs40l2x: Expose firmware amplitude controls
* Added sysfs controls for the firmware's separate GPIO-triggered
  playback and control-port-triggered playback amplitude controls.
* Increased the minimum supported firmware revision to 4.1.0.

Change-Id: Idae3fa1a839871cfa2760f14fc3b6ecf707fbd93
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:36 -05:00
Jeff LaBundy
d834ef678c misc: cs40l2x: Add f0/ReDC device tree entries
* Added device tree entries for default f0/ReDC values to be written
  to the corresponding DSP firmware controls during initialization.
* Added device tree entries for minimum and maximum values that may
  be written to the f0_stored and redc_stored sysfs controls.

Change-Id: I5b681efc38e466d1545496f327da66f189c8fc89
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:36 -05:00
Jeff LaBundy
ecbe7bb187 Documentation: cs40l2x: Add f0/ReDC device tree entries
Added device tree binding documentation for default, minimum and
maximum f0 and ReDC device tree entries.

Change-Id: I7f3d7170e51e81bf4900c4065500a78fbae55878
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:36 -05:00
Jeff LaBundy
cc094c82cf misc: cs40l2x: Add nested loops to playback queue
Added the ability to group multiple segments together and repeat them
multiple times within the queue.

Change-Id: I0eb3a4931092961e8ac332ee5f4d5507a0128c20
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:36 -05:00
Jeff LaBundy
869f552313 misc: cs40l2x: Use length-limited string functions
* Replaced instances of strcpy and strchr with strlcpy and strnchr,
  respectively.
* Eliminated use of strlen.

Change-Id: I44e0a47329a2d2d3bc440aee3a0f0bce5f4a0971
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
876eacbc38 misc: cs40l2x: Update errata for reduced haptic latency
Updated PLL loop parameters as per new errata issued for the device.

Change-Id: I772b4b93b91eec6ee1ed90461e3df57ceb0562a9
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
04b908a357 misc: cs40l2x: Route VPMON to DSP
Routed the battery monitoring ADC output (VPMON) to the DSP in support
of DSP algorithms that may query the battery voltage.

Change-Id: I8d83ed6a3f8ad7f0d985406eb4ef4038760151ca
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
98d5fb77b8 misc: cs40l2x: Add basic-mode haptics shutdown sequence
Added a shutdown sequence to safely exit basic-mode haptics following
device power-on, prior to re-initializing the device and booting the
DSP into normal operation.

Change-Id: I3955f60fa736071d0af80edc65777100ef9865b0
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
e539311c99 misc: cs40l2x: Add errata for reduced haptic latency
Added errata writes for expedited PLL lock time in support of reduced
haptic latency.

Change-Id: I558a895c9973752759ff17f4212db8bbb6027337
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
dc70b9930b misc: cs40l2x: Add support for OTP memory map 0xE
Added map 0xE to the list of packed OTP memory maps supported by
revision A0 silicon.

Change-Id: I86f60afd5af223617a70d61cb3185e7c38078b64
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
4d12bb0500 misc: cs40l2x: Add Always-On Haptics disable control
* Added a sysfs control to prevent the device from automatically entering
  standby in order to reduce latency of subsequent haptic events.
* Reduced the polling interval of the playback queue for cases in which
  automatic entry into standby is disabled.

Change-Id: I5e695b33641ffe305b95f73f2eef89c94de65922
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
23248efe7d misc: cs40l2x: Add playback queue support
* Added the ability to trigger multiple waveform indexes and delays in
  a sequence based on a string passed to a sysfs control.
* Moved the call to start vibe_timer to the vibe_start_worker function
  and restricted the timer's use to continuous playback.
* Canceled vibe_timer prior to destroying vibe_workqueue.
* Replaced hard-coded waveform indexes with macros.
* Replaced all digital volume register writes with a single function.

Change-Id: I1b28bcc8d9d2a90bda432f0d3def83563baf9496
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
e03c0063ac misc: cs40l2x: Update DSP initialization for revision A0 silicon
* Enabled the device prior to enabling the DSP to ensure internal clocks
  are present while revision A0 silicon initializes firmware.
* Corrected the waveform filename and replaced with a macro.
* Updated the minimum supported firmware revision to 3.0.0.

Change-Id: If41a6865e661e55f3eed8f401bcfe19176af3de3
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
fca66161fa misc: cs40l2x: Add support for Always-On Haptics
* Removed write to GLOBAL_EN during initialization as this control is
  now managed autonomously by firmware.
* Replaced trigger control DSP memory addresses with their fixed-address
  representations in the mailbox space.
* Added sysfs controls for the firmware's GPIO1 falling edge timeout and
  standby timeout controls.
* Increased the minimum supported firmware revision to 2.1.0.

Change-Id: I38cdac4e6ac79fb8f354750ac724ce119eb7764c
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
1fa2701dba Documentation: cs40l2x: Extend support for CS40L2X family
Added device tree binding documentation for CS40L25, CS40L25A and
CS40L25B devices.

Change-Id: I4b809d34aad193915f25044ade404db83d6aa3ad
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
82110af848 misc: cs40l2x: Repartition device initialization
* Removed extraneous variable initialization from cs40l20_init and moved
  linked list initialization to cs40l20_i2c_probe so that cs40l20_init is
  limited to device configuration only.
* Limited REFCLK configuration to revisions A0 and B0 of silicon because
  revision B1 ROM handles it automatically.

Change-Id: I5e626f5476cad4d1b1f5bc359714cf04c0425f1f
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
d0ffbf6bb1 misc: cs40l2x: Update DSP load procedure
Separated DSP initialization into its own function and qualified the
silicon revision to determine the appropriate firmware file and boot
sequence.

Change-Id: Ic2d50e8604d390877cf431811963d95be72d1ba6
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
0518b5bf94 misc: cs40l2x: Regmap updates for extended device family
* Changed regmap cache type to REGCACHE_NONE to disable caching of
  chip-level registers outside the DSP.
* Removed cs40l2x_reg array and cs40l2x_volatile_reg callback.
* Added macros for register addresses introduced with B0 silicon.
* Removed unused register mask/shift macros.

Change-Id: I3e47e265d413a7c22b59abb761ef066074f928d2
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
a09b0ec803 misc: cs40l2x: Update part number resolution
* Updated the qualification of the device ID to include part numbers
  programmed by the OTP controller (e.g. revisions B0 and B1).
* Conditionalized OTP memory unpack and application of errata based
  on silicon revision.

Change-Id: I7c8c6f194c6f300e632b3382dca5f54eed6f6603
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
a0cad12b61 misc: cs40l2x: Extend support for CS40L2X family of devices
* Renamed all files and namespaces from cs40l20 to cs40l2x.
* Added platform driver entries for CS40L25, CS40L25A and CS40L25B.
* Updated copyright year to 2018.

Change-Id: I2b2266a9870e713d454bee3cfc3e01e5e53bc191
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
b7be84d308 misc: cs40l20: Add errata support for revision A0
* Added a check for the expected revision of silicon.
* Added support for revision A0 errata.

Change-Id: Id647367a23d1856ee3c61c0b2e83d4ed71584f09
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
f1d99233ee misc: cs40l20: Add click compensation enable control
Exposed the firmware's click compensation enable control as a sysfs
control.

Change-Id: I9cbc4454c52277eee486dff80c19de481d3668a0
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
26f267a2f3 misc: cs40l20: Update wavetable validation scheme
* Corrected the calculation of algorithm revision
* Limited the comparison of algorithm revisions to the MAJOR field

Change-Id: I903802f98c472109aa5d62915ab611b1ff869c80
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
081966893d misc: cs40l20: Remove superfluous printing
* Replaced printing of wavetable entry count with the num_waves sysfs
  control.
* Removed printing of custom/default wavetable notification as existing
  request_firmware_nowait already prints in the case of failure.

Change-Id: Id86ad20d12bb23b029338c0b847ecdeb80248cfa
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
405a002d3e misc: cs40l20: Show firmware information
Exposed the firmware's heartbeat register as a read-only sysfs control
and printed the firmware revision number at startup.

Change-Id: Iaf844e72b2f2618a7c67156432c63e2375c388ab
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
a67e3232cb misc: cs40l20: Validate wavetable version and size
* Added a means to reject user-provided wavetables that do not match the
  algorithm ID and revision advertised by the firmware.
* Added a means to calculate the maximum allowable wavetable size for a
  given revision of firmware, and then reject user-provided wavetables
  that exceed the calculated limit.

Change-Id: Ib1d04bdc5f8d6c2150cd1d313a3f61178adeffe6
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
81adc68352 misc: cs40l20: Add support for stored ReDC
Added the redc_stored sysfs control to expose access to the firmware's
stored ReDC input parameter.

Change-Id: Ifb6ca330f9b1a546c024d9e066dbb4da5fafe4c6
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:35 -05:00
Jeff LaBundy
afdf7df102 misc: cs40l20: Regmap updates
Corrected various register default values, updated the list of registers
marked as volatile and removed some inapplicable register macros.

Change-Id: I51ca890aaa98001e85728a113670a391911b00a1
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:34 -05:00
Jeff LaBundy
38fb393fa4 misc: cs40l20: Add digital scale control
Exposed a means to apply attenuation to the device's digital signal
path with the dig_scale control.

Change-Id: I66cd3bc425e770faf8b2ee0fd89ffbb20a394d5c
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:34 -05:00
Jeff LaBundy
cb96274331 misc: cs40l20: Mark OTP memory registers as precious
Added precious_reg regmap callback to prevent the device's OTP memory
from being read outside of the driver's control.

Change-Id: I1dbd76a1d918187d8e2d9757b26785aad5484dba
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:34 -05:00
Jeff LaBundy
8783a8fadc misc: cs40l20: Add OTP unpack support
Updated the initialization sequence to apply trim data stored in
OTP memory.

Change-Id: I4854fe8ee394d04522c7db540b68b270a674901b
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:34 -05:00
Jeff LaBundy
4fc2938a7b misc: cs40l20: Accommodate firmware load time
* Added a timeout loop to allow the firmware sufficient time to load
  after the DSP is enabled.
* Increased the minimum supported firmware revision to 0x000205.

Change-Id: I7403060a7ea11a19efb9debdd4c3aac694662b6e
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:34 -05:00
Jeff LaBundy
0c7591e6b9 misc: cs40l20: Handle diagnostics interruption
* Preserved device state correctly if new work is scheduled before
  diagnostics is cancelled.
* Removed hard coding of diagnostics trigger index.
* Updated minimum supported firmware revision to 0x000202.

Change-Id: I5b667cf32a588e329eb03face69ad8e7e0a13e71
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:34 -05:00
Jeff LaBundy
7b0b39679a misc: cs40l20: Update diagnostics sequences
* Rearranged entry into and exit from closed-loop mode
* Checked for mutex lock in f0/ReDC capture function
* Moved mutex init and destroy to probe and remove, respectively

Change-Id: I38d83e9eb3881f833bf000ce760f4a8fda7fa17f
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:34 -05:00
Jeff LaBundy
c259c6853e misc: cs40l20: Add diagnostics support
Added support for diagnostics stimulus generation as well as f0
and ReDC reporting.

Change-Id: I0a496501cc229026897865cca2333ba0a70f8bf0
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:34 -05:00
Jeff LaBundy
e637d16c8e misc: cs40l20: Add support for Y memory
Added support for large wavetables that straddle both X memory (XM) and
Y memory (YM).

Change-Id: If946713744228a1010ff12715548c74a76fa3a85
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:34 -05:00
Jeff LaBundy
4993ca75e1 misc: cs40l20: Add extended-length playback support
Allowed for the MSB of the cp_trigger_index sysfs control to indicate
that playback should be rendered until forcibly stopped.

Change-Id: Ic9c0111a7b4110d482174bfd475697bb2ac2c17a
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:34 -05:00
Jeff LaBundy
c699185902 misc: cs40l20: sysfs control enhancements
* Added missing mutex lock/unlock around regmap access.
* Changed waveform index store functions to use an unsigned int.
* Added measured-f0 show function and stored-f0 show/store functions.

Change-Id: I00eb137ee65bb863d3208b0a1ab3b5e3f7464fbe
Signed-off-by: Jeff LaBundy <jeff.labundy@cirrus.com>
Signed-off-by: Ravi Vembu <raviv@motorola.com>
2018-06-06 14:15:34 -05:00