Zephyr API
4.4.99
A Scalable Open Source RTOS
Toggle main menu visibility
Loading...
Searching...
No Matches
cs40l26.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2026 Cirrus Logic, Inc.
3
* SPDX-License-Identifier: Apache-2.0
4
*/
5
6
#ifndef ZEPHYR_INCLUDE_DRIVERS_HAPTICS_CS40L26_H_
7
#define ZEPHYR_INCLUDE_DRIVERS_HAPTICS_CS40L26_H_
8
9
#include <
zephyr/kernel.h
>
10
11
#ifdef __cplusplus
12
extern
"C"
{
13
#endif
/* __cplusplus */
14
20
26
enum
cs40l26_bank
{
27
CS40L26_ROM_BANK
,
28
CS40L26_BUZ_BANK
,
29
CS40L26_NO_BANK
,
30
};
31
40
int
cs40l26_calibrate
(
const
struct
device
*
const
dev);
41
55
int
cs40l26_configure_buzz
(
const
struct
device
*
const
dev,
const
uint32_t
frequency,
56
const
uint8_t
level,
const
uint32_t
duration);
57
68
int
cs40l26_select_output
(
const
struct
device
*
const
dev,
const
enum
cs40l26_bank
bank,
69
const
uint16_t
index);
70
80
int
cs40l26_set_gain
(
const
struct
device
*
const
dev,
const
uint8_t
gain);
81
82
#ifdef __cplusplus
83
}
84
#endif
/* __cplusplus */
85
86
#endif
/* ZEPHYR_INCLUDE_DRIVERS_HAPTICS_CS40L26_H_ */
cs40l26_set_gain
int cs40l26_set_gain(const struct device *const dev, const uint8_t gain)
Configure gain for haptic effects triggered via haptics_start_output().
cs40l26_configure_buzz
int cs40l26_configure_buzz(const struct device *const dev, const uint32_t frequency, const uint8_t level, const uint32_t duration)
Configure ROM buzz for haptic playback.
cs40l26_bank
cs40l26_bank
Wavetable sources for effects.
Definition
cs40l26.h:26
CS40L26_ROM_BANK
@ CS40L26_ROM_BANK
Playback from the pre-programmed ROM library.
Definition
cs40l26.h:27
CS40L26_NO_BANK
@ CS40L26_NO_BANK
Reserved for driver error handling.
Definition
cs40l26.h:29
CS40L26_BUZ_BANK
@ CS40L26_BUZ_BANK
Playback from buzz source programmed at runtime.
Definition
cs40l26.h:28
cs40l26_select_output
int cs40l26_select_output(const struct device *const dev, const enum cs40l26_bank bank, const uint16_t index)
Select haptic effect triggered via haptics_start_output().
cs40l26_calibrate
int cs40l26_calibrate(const struct device *const dev)
Run calibration to derive ReDC and F0 values and apply results for click compensation.
kernel.h
Public kernel APIs.
uint32_t
__UINT32_TYPE__ uint32_t
Definition
stdint.h:90
uint8_t
__UINT8_TYPE__ uint8_t
Definition
stdint.h:88
uint16_t
__UINT16_TYPE__ uint16_t
Definition
stdint.h:89
device
Runtime device structure (in ROM) per driver instance.
Definition
device.h:513
zephyr
drivers
haptics
cs40l26.h
Generated on
for Zephyr API by
1.17.0