drivers: i2s: Add dummy driver for vnd,i2s

Add dummy driver for "vnd,i2s" to use in build_all tests.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
This commit is contained in:
TOKITA Hiroshi 2024-09-28 15:16:30 +09:00 committed by Benjamin Cabé
parent 6394b261ec
commit 0cbfd2a75e
4 changed files with 70 additions and 0 deletions

View file

@ -13,3 +13,4 @@ zephyr_library_sources_ifdef(CONFIG_I2S_MCUX_FLEXCOMM i2s_mcux_flexcomm.c)
zephyr_library_sources_ifdef(CONFIG_I2S_NRFX i2s_nrfx.c)
zephyr_library_sources_ifdef(CONFIG_I2S_MCUX_SAI i2s_mcux_sai.c)
zephyr_library_sources_ifdef(CONFIG_I2S_ESP32 i2s_esp32.c)
zephyr_library_sources_ifdef(CONFIG_I2S_TEST i2s_test.c)

6
drivers/i2s/Kconfig.test Normal file
View file

@ -0,0 +1,6 @@
# Copyright (c) 2024 TOKITA Hiroshi
# SPDX-License-Identifier: Apache-2.0
config I2S_TEST
def_bool DT_HAS_VND_I2S_ENABLED
depends on DT_HAS_VND_I2S_ENABLED

55
drivers/i2s/i2s_test.c Normal file
View file

@ -0,0 +1,55 @@
/*
* Copyright (c) 2024 TOKITA Hiroshi
*
* SPDX-License-Identifier: Apache-2.0
*/
#define DT_DRV_COMPAT vnd_i2s
#include <zephyr/kernel.h>
#include <zephyr/drivers/i2s.h>
static int vnd_i2s_configure(const struct device *dev, enum i2s_dir dir,
const struct i2s_config *i2s_cfg)
{
return -ENOTSUP;
}
static const struct i2s_config *vnd_i2s_config_get(const struct device *dev, enum i2s_dir dir)
{
return NULL;
}
static int vnd_i2s_trigger(const struct device *dev, enum i2s_dir dir, enum i2s_trigger_cmd cmd)
{
return -ENOTSUP;
}
static int vnd_i2s_read(const struct device *dev, void **mem_block, size_t *size)
{
return -ENOTSUP;
}
static int vnd_i2s_write(const struct device *dev, void *mem_block, size_t size)
{
return -ENOTSUP;
}
static const struct i2s_driver_api vnd_i2s_driver_api = {
.configure = vnd_i2s_configure,
.config_get = vnd_i2s_config_get,
.trigger = vnd_i2s_trigger,
.read = vnd_i2s_read,
.write = vnd_i2s_write,
};
static int vnd_i2s_init(const struct device *dev)
{
return 0;
}
#define VND_I2S_INIT(index) \
DEVICE_DT_INST_DEFINE(index, &vnd_i2s_init, NULL, NULL, NULL, POST_KERNEL, \
CONFIG_I2S_INIT_PRIORITY, &vnd_i2s_driver_api);
DT_INST_FOREACH_STATUS_OKAY(VND_I2S_INIT)

View file

@ -0,0 +1,8 @@
# Copyright (c) 2024 TOKITA Hiroshi
# SPDX-License-Identifier: Apache-2.0
description: Test I2S Controller node
compatible: "vnd,i2s"
include: i2s-controller.yaml