Add a bunch of missing "zephyr/" prefixes to #include statements in various test and test framework files. Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
97 lines
2.8 KiB
C
97 lines
2.8 KiB
C
/*
|
|
* Copyright (c) 2020 Intel Corporation
|
|
* Copyright (c) 2022 Carlo Caione <ccaione@baylibre.com>
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
#include <zephyr/ztest.h>
|
|
#include <zephyr/device.h>
|
|
|
|
#define DT_DRV_COMPAT fakedriver_multireg
|
|
|
|
/*
|
|
* Driver with multiple MMIO regions to manage defined into DT
|
|
*/
|
|
|
|
struct foo_multireg_dev_data {
|
|
int baz;
|
|
|
|
DEVICE_MMIO_NAMED_RAM(chip);
|
|
DEVICE_MMIO_NAMED_RAM(dale);
|
|
};
|
|
|
|
struct foo_multireg_dev_data foo_multireg_data;
|
|
|
|
struct foo_multireg_config_info {
|
|
DEVICE_MMIO_NAMED_ROM(chip);
|
|
DEVICE_MMIO_NAMED_ROM(dale);
|
|
};
|
|
|
|
const struct foo_multireg_config_info foo_multireg_config = {
|
|
DEVICE_MMIO_NAMED_ROM_INIT_BY_NAME(chip, DT_DRV_INST(0)),
|
|
DEVICE_MMIO_NAMED_ROM_INIT_BY_NAME(dale, DT_DRV_INST(0))
|
|
};
|
|
|
|
#define DEV_DATA(dev) ((struct foo_multireg_dev_data *)((dev)->data))
|
|
#define DEV_CFG(dev) ((struct foo_multireg_config_info *)((dev)->config))
|
|
|
|
int foo_multireg_init(const struct device *dev)
|
|
{
|
|
DEVICE_MMIO_NAMED_MAP(dev, chip, K_MEM_CACHE_NONE);
|
|
DEVICE_MMIO_NAMED_MAP(dev, dale, K_MEM_CACHE_NONE);
|
|
|
|
return 0;
|
|
}
|
|
|
|
DEVICE_DEFINE(foo_multireg, "foo_multireg", foo_multireg_init, NULL,
|
|
&foo_multireg_data, &foo_multireg_config,
|
|
POST_KERNEL, CONFIG_KERNEL_INIT_PRIORITY_DEFAULT,
|
|
(void *)0xDEADBEEF);
|
|
/**
|
|
* @brief Test DEVICE_MMIO_NAMED_* macros
|
|
*
|
|
* This is the same as the test_mmio_multiple test but in this test the
|
|
* memory regions are created by the named DT property 'reg'.
|
|
*
|
|
* @see test_mmio_multiple
|
|
*
|
|
* @ingroup kernel_device_tests
|
|
*/
|
|
ZTEST(device, test_mmio_multireg)
|
|
{
|
|
const struct device *dev = device_get_binding("foo_multireg");
|
|
mm_reg_t regs_chip, regs_dale;
|
|
const struct z_device_mmio_rom *rom_chip, *rom_dale;
|
|
|
|
zassert_not_null(dev, "null foo_multireg");
|
|
|
|
regs_chip = DEVICE_MMIO_NAMED_GET(dev, chip);
|
|
regs_dale = DEVICE_MMIO_NAMED_GET(dev, dale);
|
|
rom_chip = DEVICE_MMIO_NAMED_ROM_PTR(dev, chip);
|
|
rom_dale = DEVICE_MMIO_NAMED_ROM_PTR(dev, dale);
|
|
|
|
zassert_not_equal(regs_chip, 0, "bad regs_chip");
|
|
zassert_not_equal(regs_dale, 0, "bad regs_dale");
|
|
|
|
#ifdef DEVICE_MMIO_IS_IN_RAM
|
|
zassert_equal(rom_chip->phys_addr, DT_INST_REG_ADDR_BY_NAME(0, chip),
|
|
"bad phys_addr (chip)");
|
|
zassert_equal(rom_chip->size, DT_INST_REG_SIZE_BY_NAME(0, chip),
|
|
"bad size (chip)");
|
|
zassert_equal(rom_dale->phys_addr, DT_INST_REG_ADDR_BY_NAME(0, dale),
|
|
"bad phys_addr (dale)");
|
|
zassert_equal(rom_dale->size, DT_INST_REG_SIZE_BY_NAME(0, dale),
|
|
"bad size (dale)");
|
|
#else
|
|
zassert_equal(rom_chip->addr, DT_INST_REG_ADDR_BY_NAME(0, chip),
|
|
"bad addr (chip)");
|
|
zassert_equal(regs_chip, rom_chip->addr, "bad regs (chip)");
|
|
zassert_equal(rom_dale->addr, DT_INST_REG_ADDR_BY_NAME(0, dale),
|
|
"bad addr (dale)");
|
|
zassert_equal(regs_dale, rom_dale->addr, "bad regs (dale)");
|
|
zassert_equal(sizeof(struct foo_multireg_dev_data), sizeof(int),
|
|
"too big foo_multireg_dev_data");
|
|
#endif
|
|
}
|