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:
Giovanni Di Sirio 2022-06-30 08:07:56 +00:00
parent a65a286664
commit 760e0d90fb
13 changed files with 110 additions and 111 deletions

View File

@ -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
/** /**

View File

@ -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

View File

@ -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
/** /**

View File

@ -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 */
/** @} */ /** @} */

View File

@ -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[] = {

View File

@ -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
/** /**

View File

@ -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
/** /**

View File

@ -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;

View File

@ -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 */
/** @} */ /** @} */

View File

@ -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 */
/** @} */ /** @} */

View File

@ -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 =

View File

@ -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 */
/** @} */ /** @} */

View File

@ -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 */
/** @} */ /** @} */