Renamed things for consistency.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@15669 27425a3e-05d8-49a3-a47f-9c15f0e5edd8
This commit is contained in:
parent
a65a286664
commit
760e0d90fb
|
@ -53,10 +53,10 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Enables support for sandbox Virtual HAL.
|
* @brief Enables support for sandbox virtualized I/O.
|
||||||
*/
|
*/
|
||||||
#if !defined(SB_CFG_ENABLE_VHAL) || defined(__DOXYGEN__)
|
#if !defined(SB_CFG_ENABLE_VIO) || defined(__DOXYGEN__)
|
||||||
#define SB_CFG_ENABLE_VHAL FALSE
|
#define SB_CFG_ENABLE_VIO FALSE
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -110,7 +110,7 @@ include $(CHIBIOS)/os/rt/rt.mk
|
||||||
include $(CHIBIOS)/os/common/ports/ARMv7-M-ALT/compilers/GCC/mk/port.mk
|
include $(CHIBIOS)/os/common/ports/ARMv7-M-ALT/compilers/GCC/mk/port.mk
|
||||||
# SB files (optional).
|
# SB files (optional).
|
||||||
include $(CHIBIOS)/os/sb/host/compilers/GCC/sbhost.mk
|
include $(CHIBIOS)/os/sb/host/compilers/GCC/sbhost.mk
|
||||||
include $(CHIBIOS)/os/sb/vhal/sbvhal.mk
|
include $(CHIBIOS)/os/sb/vhal/sbvio.mk
|
||||||
# VFS files (optional).
|
# VFS files (optional).
|
||||||
include $(CHIBIOS)/os/vfs/vfs.mk
|
include $(CHIBIOS)/os/vfs/vfs.mk
|
||||||
#include $(CHIBIOS)/os/vfs/vfs_syscalls.mk
|
#include $(CHIBIOS)/os/vfs/vfs_syscalls.mk
|
||||||
|
|
|
@ -53,10 +53,10 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Enables support for sandbox Virtual HAL.
|
* @brief Enables support for sandbox virtualized I/O.
|
||||||
*/
|
*/
|
||||||
#if !defined(SB_CFG_ENABLE_VHAL) || defined(__DOXYGEN__)
|
#if !defined(SB_CFG_ENABLE_VIO) || defined(__DOXYGEN__)
|
||||||
#define SB_CFG_ENABLE_VHAL TRUE
|
#define SB_CFG_ENABLE_VIO TRUE
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -15,29 +15,28 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @file templates/vhalconf.h
|
* @file templates/vioconf.h
|
||||||
* @brief VHAL configuration header.
|
* @brief VIO configuration header.
|
||||||
* @details VHAL configuration file, this file allows to enable or disable the
|
* @details VIO configuration file, this file allows to enable or disable the
|
||||||
* various device drivers from your application. You may also use
|
* various virtual peripherals from your application.
|
||||||
* this file in order to override the device drivers default settings.
|
|
||||||
*
|
*
|
||||||
* @addtogroup VHAL_CONF
|
* @addtogroup VIO_CONF
|
||||||
* @{
|
* @{
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef VHALCONF_H
|
#ifndef VIOCONF_H
|
||||||
#define VHALCONF_H
|
#define VIOCONF_H
|
||||||
|
|
||||||
#define __CHIBIOS_VHAL_CONF__
|
#define __CHIBIOS_VIO_CONF__
|
||||||
#define __CHIBIOS_VHAL_CONF_VER_1_0__
|
#define __CHIBIOS_VIO_CONF_VER_1_0__
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Enables the VPAL subsystem.
|
* @brief Enables the VPAL subsystem.
|
||||||
*/
|
*/
|
||||||
#if !defined(SB_CFG_ENABLE_VHAL_PAL) || defined(__DOXYGEN__)
|
#if !defined(VIO_CFG_ENABLE_GPIO) || defined(__DOXYGEN__)
|
||||||
#define SB_CFG_ENABLE_VHAL_PAL TRUE
|
#define VIO_CFG_ENABLE_GPIO TRUE
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif /* VHALCONF_H */
|
#endif /* VIOCONF_H */
|
||||||
|
|
||||||
/** @} */
|
/** @} */
|
|
@ -30,11 +30,11 @@
|
||||||
/* VHAL-related. */
|
/* VHAL-related. */
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
|
|
||||||
static vhal_pal_conf_t vpal_config1 = {
|
static vio_gpio_conf_t gpio_config1 = {
|
||||||
.n = 1U,
|
.n = 1U,
|
||||||
.vpio = {
|
.ports = {
|
||||||
[0] = {
|
[0] = {
|
||||||
.permissions = VPIO_PERM_WRITE,
|
.permissions = VIO_GPIO_PERM_WRITE,
|
||||||
.port = GPIOA,
|
.port = GPIOA,
|
||||||
.mask = 1U,
|
.mask = 1U,
|
||||||
.offset = GPIOA_LED_GREEN
|
.offset = GPIOA_LED_GREEN
|
||||||
|
@ -42,16 +42,16 @@ static vhal_pal_conf_t vpal_config1 = {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
static vhal_pal_conf_t vpal_config2 = {
|
static vio_gpio_conf_t gpio_config2 = {
|
||||||
.n = 0U
|
.n = 0U
|
||||||
};
|
};
|
||||||
|
|
||||||
static vhal_conf_t vhal_config1 = {
|
static vio_conf_t vio_config1 = {
|
||||||
.vpalconf = &vpal_config1
|
.gpioconf = &gpio_config1
|
||||||
};
|
};
|
||||||
|
|
||||||
static vhal_conf_t vhal_config2 = {
|
static vio_conf_t vio_config2 = {
|
||||||
.vpalconf = &vpal_config2
|
.gpioconf = &gpio_config2
|
||||||
};
|
};
|
||||||
|
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
|
@ -103,7 +103,7 @@ static const sb_config_t sb_config1 = {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
// .vfs_driver = (vfs_driver_c *)&root_overlay_driver
|
// .vfs_driver = (vfs_driver_c *)&root_overlay_driver
|
||||||
.vhalconf = &vhal_config1
|
.vioconf = &vio_config1
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Sandbox 2 configuration.*/
|
/* Sandbox 2 configuration.*/
|
||||||
|
@ -123,7 +123,7 @@ static const sb_config_t sb_config2 = {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
// .vfs_driver = (vfs_driver_c *)&root_overlay_driver
|
// .vfs_driver = (vfs_driver_c *)&root_overlay_driver
|
||||||
.vhalconf = &vhal_config2
|
.vioconf = &vio_config2
|
||||||
};
|
};
|
||||||
|
|
||||||
static const char *sbx1_argv[] = {
|
static const char *sbx1_argv[] = {
|
||||||
|
|
|
@ -53,10 +53,10 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Enables support for sandbox Virtual HAL.
|
* @brief Enables support for sandbox virtualized I/O.
|
||||||
*/
|
*/
|
||||||
#if !defined(SB_CFG_ENABLE_VHAL) || defined(__DOXYGEN__)
|
#if !defined(SB_CFG_ENABLE_VIO) || defined(__DOXYGEN__)
|
||||||
#define SB_CFG_ENABLE_VHAL FALSE
|
#define SB_CFG_ENABLE_VIO FALSE
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -53,10 +53,10 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Enables support for sandbox Virtual HAL.
|
* @brief Enables support for sandbox virtualized I/O.
|
||||||
*/
|
*/
|
||||||
#if !defined(SB_CFG_ENABLE_VHAL) || defined(__DOXYGEN__)
|
#if !defined(SB_CFG_ENABLE_VIO) || defined(__DOXYGEN__)
|
||||||
#define SB_CFG_ENABLE_VHAL FALSE
|
#define SB_CFG_ENABLE_VIO FALSE
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -36,8 +36,8 @@
|
||||||
#include "sbsysc.h"
|
#include "sbsysc.h"
|
||||||
#include "sbconf.h"
|
#include "sbconf.h"
|
||||||
|
|
||||||
#if (SB_CFG_ENABLE_VHAL == TRUE) || defined (__DOXYGEN__)
|
#if (SB_CFG_ENABLE_VIO == TRUE) || defined (__DOXYGEN__)
|
||||||
#include "sbvhal.h"
|
#include "sbvio.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
|
@ -108,8 +108,8 @@
|
||||||
#error "SB_CFG_ALARM_VRQ not defined in sbconf.h"
|
#error "SB_CFG_ALARM_VRQ not defined in sbconf.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if !defined(SB_CFG_ENABLE_VHAL) || defined(__DOXYGEN__)
|
#if !defined(SB_CFG_ENABLE_VIO) || defined(__DOXYGEN__)
|
||||||
#error "SB_CFG_ENABLE_VHAL not defined in sbconf.h"
|
#error "SB_CFG_ENABLE_VIO not defined in sbconf.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if !defined(SB_CFG_ENABLE_VFS) || defined(__DOXYGEN__)
|
#if !defined(SB_CFG_ENABLE_VFS) || defined(__DOXYGEN__)
|
||||||
|
@ -253,11 +253,11 @@ typedef struct {
|
||||||
*/
|
*/
|
||||||
vfs_driver_c *vfs_driver;
|
vfs_driver_c *vfs_driver;
|
||||||
#endif
|
#endif
|
||||||
#if (SB_CFG_ENABLE_VHAL == TRUE) || defined(__DOXYGEN__)
|
#if (SB_CFG_ENABLE_VIO == TRUE) || defined(__DOXYGEN__)
|
||||||
/**
|
/**
|
||||||
* @brief VHAL configuration associated to this sandbox.
|
* @brief VIO configuration associated to this sandbox.
|
||||||
*/
|
*/
|
||||||
const vhal_conf_t *vhalconf;
|
const vio_conf_t *vioconf;
|
||||||
#endif
|
#endif
|
||||||
} sb_config_t;
|
} sb_config_t;
|
||||||
|
|
||||||
|
|
|
@ -18,16 +18,16 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @file sb/vhal/sbvhal.c
|
* @file sbvio.c
|
||||||
* @brief ARM SandBox host Virtual HAL code.
|
* @brief ARM SandBox host Virtual I/O code.
|
||||||
*
|
*
|
||||||
* @addtogroup ARM_SANDBOX_HOST_VHAL
|
* @addtogroup ARM_SANDBOX_HOST_VIO
|
||||||
* @{
|
* @{
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "sb.h"
|
#include "sb.h"
|
||||||
|
|
||||||
#if (SB_CFG_ENABLE_VHAL == TRUE) || defined(__DOXYGEN__)
|
#if (SB_CFG_ENABLE_VIO == TRUE) || defined(__DOXYGEN__)
|
||||||
|
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
/* Module local definitions. */
|
/* Module local definitions. */
|
||||||
|
@ -53,6 +53,6 @@
|
||||||
/* Module exported functions. */
|
/* Module exported functions. */
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
|
|
||||||
#endif /* SB_CFG_ENABLE_VHAL == TRUE */
|
#endif /* SB_CFG_ENABLE_VIO == TRUE */
|
||||||
|
|
||||||
/** @} */
|
/** @} */
|
|
@ -18,20 +18,20 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @file sb/vhal/sbvhal.h
|
* @file sbvio.h
|
||||||
* @brief ARM SandBox host Virtual HAL macros and structures.
|
* @brief ARM SandBox host Virtual I/O macros and structures.
|
||||||
*
|
*
|
||||||
* @addtogroup ARM_SANDBOX_HOST_VHAL
|
* @addtogroup ARM_SANDBOX_HOST_VIO
|
||||||
* @{
|
* @{
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef SBVHAL_H
|
#ifndef SBVIO_H
|
||||||
#define SBVHAL_H
|
#define SBVIO_H
|
||||||
|
|
||||||
#if (SB_CFG_ENABLE_VHAL == TRUE) || defined(__DOXYGEN__)
|
#if (SB_CFG_ENABLE_VIO == TRUE) || defined(__DOXYGEN__)
|
||||||
|
|
||||||
#include "vhalconf.h"
|
#include "vioconf.h"
|
||||||
#include "sbvhal_pal.h"
|
#include "sbvio_gpio.h"
|
||||||
|
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
/* Module constants. */
|
/* Module constants. */
|
||||||
|
@ -50,16 +50,16 @@
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Type of a VHAL instance configuration structure.
|
* @brief Type of a VIO instance configuration structure.
|
||||||
*/
|
*/
|
||||||
typedef struct vhal_conf {
|
typedef struct vio_conf {
|
||||||
#if (SB_CFG_ENABLE_VHAL_PAL == TRUE) || defined(__DOXYGEN__)
|
#if (VIO_CFG_ENABLE_GPIO == TRUE) || defined(__DOXYGEN__)
|
||||||
/**
|
/**
|
||||||
* @brief VPAL configuration.
|
* @brief VPAL configuration.
|
||||||
*/
|
*/
|
||||||
const vhal_pal_conf_t *vpalconf;
|
const vio_gpio_conf_t *gpioconf;
|
||||||
#endif
|
#endif
|
||||||
} vhal_conf_t;
|
} vio_conf_t;
|
||||||
|
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
/* Module macros. */
|
/* Module macros. */
|
||||||
|
@ -80,8 +80,8 @@ extern "C" {
|
||||||
/* Module inline functions. */
|
/* Module inline functions. */
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
|
|
||||||
#endif /* SB_CFG_ENABLE_VHAL == TRUE */
|
#endif /* SB_CFG_ENABLE_VIO == TRUE */
|
||||||
|
|
||||||
#endif /* SBVHAL_H */
|
#endif /* SBVIO_H */
|
||||||
|
|
||||||
/** @} */
|
/** @} */
|
|
@ -1,6 +1,6 @@
|
||||||
# List of the ChibiOS sandbox VHAL files.
|
# List of the ChibiOS sandbox VHAL files.
|
||||||
SBVHALSRC = $(CHIBIOS)/os/sb/vhal/sbvhal.c \
|
SBVHALSRC = $(CHIBIOS)/os/sb/vhal/sbvio.c \
|
||||||
$(CHIBIOS)/os/sb/vhal/sbvhal_pal.c
|
$(CHIBIOS)/os/sb/vhal/sbvio_gpio.c
|
||||||
|
|
||||||
SBVHALASM =
|
SBVHALASM =
|
||||||
|
|
|
@ -18,16 +18,16 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @file sb/vhal/sbvhal_pal.c
|
* @file sb/vhal/sbvio_gpio.c
|
||||||
* @brief ARM SandBox host Virtual HAL PAL code.
|
* @brief ARM SandBox host Virtual I/O code.
|
||||||
*
|
*
|
||||||
* @addtogroup ARM_SANDBOX_HOST_VHAL
|
* @addtogroup ARM_SANDBOX_HOST_VIO_GPIO
|
||||||
* @{
|
* @{
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "sb.h"
|
#include "sb.h"
|
||||||
|
|
||||||
#if (SB_CFG_ENABLE_VHAL_PAL == TRUE) || defined(__DOXYGEN__)
|
#if (VIO_CFG_ENABLE_GPIO == TRUE) || defined(__DOXYGEN__)
|
||||||
|
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
/* Module local definitions. */
|
/* Module local definitions. */
|
||||||
|
@ -53,55 +53,55 @@
|
||||||
/* Module exported functions. */
|
/* Module exported functions. */
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
|
|
||||||
void sb_api_vhal_pal(struct port_extctx *ectxp) {
|
void sb_api_vio_gpio(struct port_extctx *ectxp) {
|
||||||
sb_class_t *sbp = (sb_class_t *)chThdGetSelfX()->ctx.syscall.p;
|
sb_class_t *sbp = (sb_class_t *)chThdGetSelfX()->ctx.syscall.p;
|
||||||
uint32_t sub = (unsigned)ectxp->r0;
|
uint32_t sub = (unsigned)ectxp->r0;
|
||||||
uint32_t vport = (unsigned)ectxp->r1;
|
uint32_t vport = (unsigned)ectxp->r1;
|
||||||
const vhal_vpio_conf_t *vpiop;
|
const vio_port_conf_t *vportp;
|
||||||
ectxp->r0 = 0U;
|
ectxp->r0 = 0U;
|
||||||
|
|
||||||
if (vport >= sbp->config->vhalconf->vpalconf->n) {
|
if (vport >= sbp->config->vioconf->gpioconf->n) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
vpiop = &sbp->config->vhalconf->vpalconf->vpio[vport];
|
vportp = &sbp->config->vioconf->gpioconf->ports[vport];
|
||||||
|
|
||||||
switch (sub) {
|
switch (sub) {
|
||||||
case SB_VPAL_WRITE:
|
case SB_VPAL_WRITE:
|
||||||
if ((vpiop->permissions & VPIO_PERM_WRITE) != 0U) {
|
if ((vportp->permissions & VIO_GPIO_PERM_WRITE) != 0U) {
|
||||||
palWriteGroup(vpiop->port, vpiop->mask, vpiop->offset, ectxp->r2);
|
palWriteGroup(vportp->port, vportp->mask, vportp->offset, ectxp->r2);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case SB_VPAL_SET:
|
case SB_VPAL_SET:
|
||||||
if ((vpiop->permissions & VPIO_PERM_WRITE) != 0U) {
|
if ((vportp->permissions & VIO_GPIO_PERM_WRITE) != 0U) {
|
||||||
uint32_t val = palReadGroup(vpiop->port, vpiop->mask, vpiop->offset);
|
uint32_t val = palReadGroup(vportp->port, vportp->mask, vportp->offset);
|
||||||
palWriteGroup(vpiop->port, vpiop->mask, vpiop->offset, ectxp->r2 | val);
|
palWriteGroup(vportp->port, vportp->mask, vportp->offset, ectxp->r2 | val);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case SB_VPAL_CLEAR:
|
case SB_VPAL_CLEAR:
|
||||||
if ((vpiop->permissions & VPIO_PERM_WRITE) != 0U) {
|
if ((vportp->permissions & VIO_GPIO_PERM_WRITE) != 0U) {
|
||||||
uint32_t val = palReadGroup(vpiop->port, vpiop->mask, vpiop->offset);
|
uint32_t val = palReadGroup(vportp->port, vportp->mask, vportp->offset);
|
||||||
palWriteGroup(vpiop->port, vpiop->mask, vpiop->offset, ectxp->r2 & ~val);
|
palWriteGroup(vportp->port, vportp->mask, vportp->offset, ectxp->r2 & ~val);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case SB_VPAL_TOGGLE:
|
case SB_VPAL_TOGGLE:
|
||||||
if ((vpiop->permissions & VPIO_PERM_WRITE) != 0U) {
|
if ((vportp->permissions & VIO_GPIO_PERM_WRITE) != 0U) {
|
||||||
uint32_t val = palReadGroup(vpiop->port, vpiop->mask, vpiop->offset);
|
uint32_t val = palReadGroup(vportp->port, vportp->mask, vportp->offset);
|
||||||
palWriteGroup(vpiop->port, vpiop->mask, vpiop->offset, ectxp->r2 ^ val);
|
palWriteGroup(vportp->port, vportp->mask, vportp->offset, ectxp->r2 ^ val);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case SB_VPAL_READLATCH:
|
case SB_VPAL_READLATCH:
|
||||||
if ((vpiop->permissions & VPIO_PERM_WRITE) != 0U) {
|
if ((vportp->permissions & VIO_GPIO_PERM_WRITE) != 0U) {
|
||||||
ectxp->r0 = palReadGroupLatch(vpiop->port, vpiop->mask, vpiop->offset);
|
ectxp->r0 = palReadGroupLatch(vportp->port, vportp->mask, vportp->offset);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case SB_VPAL_READ:
|
case SB_VPAL_READ:
|
||||||
if ((vpiop->permissions & VPIO_PERM_READ) != 0U) {
|
if ((vportp->permissions & VIO_GPIO_PERM_READ) != 0U) {
|
||||||
ectxp->r0 = palReadGroup(vpiop->port, vpiop->mask, vpiop->offset);
|
ectxp->r0 = palReadGroup(vportp->port, vportp->mask, vportp->offset);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case SB_VPAL_SETMODE:
|
case SB_VPAL_SETMODE:
|
||||||
if ((vpiop->permissions & VPIO_PERM_SETMODE) != 0U) {
|
if ((vportp->permissions & VIO_GPIO_PERM_SETMODE) != 0U) {
|
||||||
/* TODO */
|
/* TODO */
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -110,6 +110,6 @@ void sb_api_vhal_pal(struct port_extctx *ectxp) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* SB_CFG_ENABLE_VHAL_PAL == TRUE */
|
#endif /* VIO_CFG_ENABLE_GPIO == TRUE */
|
||||||
|
|
||||||
/** @} */
|
/** @} */
|
|
@ -18,17 +18,17 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @file sb/vhal/sbvhal_pal.h
|
* @file sb/vhal/sbvio_gpio.h
|
||||||
* @brief ARM SandBox host Virtual HAL PAL macros and structures.
|
* @brief ARM SandBox host Virtual I/O macros and structures.
|
||||||
*
|
*
|
||||||
* @addtogroup ARM_SANDBOX_HOST_VHAL
|
* @addtogroup ARM_SANDBOX_HOST_VIO_GPIO
|
||||||
* @{
|
* @{
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef SBVHAL_PAL_H
|
#ifndef SBVIO_GPIO_H
|
||||||
#define SBVHAL_PAL_H
|
#define SBVIO_GPIO_H
|
||||||
|
|
||||||
#if (SB_CFG_ENABLE_VHAL_PAL == TRUE) || defined(__DOXYGEN__)
|
#if (VIO_CFG_ENABLE_GPIO == TRUE) || defined(__DOXYGEN__)
|
||||||
|
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
/* Module constants. */
|
/* Module constants. */
|
||||||
|
@ -37,15 +37,15 @@
|
||||||
/**
|
/**
|
||||||
* @brief API handler for VHAL PAL driver.
|
* @brief API handler for VHAL PAL driver.
|
||||||
*/
|
*/
|
||||||
#define SB_SVC200_HANDLER sb_api_vhal_pal
|
#define SB_SVC200_HANDLER sb_api_vio_gpio
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @name VPIO permissions
|
* @name VIO GPIO permissions
|
||||||
* @{
|
* @{
|
||||||
*/
|
*/
|
||||||
#define VPIO_PERM_WRITE 1U
|
#define VIO_GPIO_PERM_WRITE 1U
|
||||||
#define VPIO_PERM_READ 2U
|
#define VIO_GPIO_PERM_READ 2U
|
||||||
#define VPIO_PERM_SETMODE 4U
|
#define VIO_GPIO_PERM_SETMODE 4U
|
||||||
/** @} */
|
/** @} */
|
||||||
|
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
|
@ -61,22 +61,22 @@
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Type of a VPIO configuration structure.
|
* @brief Type of a VIO GPIO configuration structure.
|
||||||
*/
|
*/
|
||||||
typedef struct vhal_vpio_conf {
|
typedef struct vio_port_conf {
|
||||||
uint32_t permissions;
|
uint32_t permissions;
|
||||||
ioportid_t port;
|
ioportid_t port;
|
||||||
ioportmask_t mask;
|
ioportmask_t mask;
|
||||||
uint32_t offset;
|
uint32_t offset;
|
||||||
} vhal_vpio_conf_t;
|
} vio_port_conf_t;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Type of a VHAL PAL instance configuration structure.
|
* @brief Type of a VIO GPIOs configuration structure.
|
||||||
*/
|
*/
|
||||||
typedef struct vhal_pal_conf {
|
typedef struct vio_gpio_conf {
|
||||||
uint32_t n;
|
uint32_t n;
|
||||||
vhal_vpio_conf_t vpio[];
|
vio_port_conf_t ports[];
|
||||||
} vhal_pal_conf_t;
|
} vio_gpio_conf_t;
|
||||||
|
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
/* Module macros. */
|
/* Module macros. */
|
||||||
|
@ -89,7 +89,7 @@ typedef struct vhal_pal_conf {
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#endif
|
#endif
|
||||||
void sb_api_vhal_pal(struct port_extctx *ectxp);
|
void sb_api_vio_gpio(struct port_extctx *ectxp);
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -98,8 +98,8 @@ extern "C" {
|
||||||
/* Module inline functions. */
|
/* Module inline functions. */
|
||||||
/*===========================================================================*/
|
/*===========================================================================*/
|
||||||
|
|
||||||
#endif /* SB_CFG_ENABLE_VHAL == TRUE */
|
#endif /* VIO_CFG_ENABLE_GPIO == TRUE */
|
||||||
|
|
||||||
#endif /* SBVHAL_PAL_H */
|
#endif /* SBVIO_GPIO_H */
|
||||||
|
|
||||||
/** @} */
|
/** @} */
|
Loading…
Reference in New Issue