Zephyr Project API 4.4.99
A Scalable Open Source RTOS
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
11
12#ifndef ZEPHYR_INCLUDE_DRIVERS_HAPTICS_CS40L26_H_
13#define ZEPHYR_INCLUDE_DRIVERS_HAPTICS_CS40L26_H_
14
15#include <zephyr/kernel.h>
16
17#ifdef __cplusplus
18extern "C" {
19#endif /* __cplusplus */
20
27
38
47int cs40l26_calibrate(const struct device *const dev);
48
62int cs40l26_configure_buzz(const struct device *const dev, const uint32_t frequency,
63 const uint8_t level, const uint32_t duration);
64
75int cs40l26_select_output(const struct device *const dev, const enum cs40l26_bank bank,
76 const uint16_t index);
77
87int cs40l26_set_gain(const struct device *const dev, const uint8_t gain);
88
90
91#ifdef __cplusplus
92}
93#endif /* __cplusplus */
94
95#endif /* ZEPHYR_INCLUDE_DRIVERS_HAPTICS_CS40L26_H_ */
int cs40l26_set_gain(const struct device *const dev, const uint8_t gain)
Configure gain for haptic effects triggered via haptics_start_output().
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
Wavetable sources for effects.
Definition cs40l26.h:33
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().
int cs40l26_calibrate(const struct device *const dev)
Run calibration to derive ReDC and F0 values and apply results for click compensation.
@ CS40L26_ROM_BANK
Playback from the pre-programmed ROM library.
Definition cs40l26.h:34
@ CS40L26_NO_BANK
Reserved for driver error handling.
Definition cs40l26.h:36
@ CS40L26_BUZ_BANK
Playback from buzz source programmed at runtime.
Definition cs40l26.h:35
Public kernel APIs.
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
__UINT8_TYPE__ uint8_t
Definition stdint.h:88
__UINT16_TYPE__ uint16_t
Definition stdint.h:89
Runtime device structure (in ROM) per driver instance.
Definition device.h:513