blob: fc89d8cab0f9849006ce222868604d40bd2b78d1 [file] [log] [blame]
/*
* Copyright (c) 2020 Google LLC
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <zephyr/drivers/ec_host_cmd_periph.h>
#include <zephyr/syscall_handler.h>
static inline void
z_vrfy_ec_host_cmd_periph_init(const struct device *dev,
struct ec_host_cmd_periph_rx_ctx *rx_ctx)
{
struct ec_host_cmd_periph_rx_ctx local_rx_ctx;
Z_OOPS(Z_SYSCALL_OBJ_INIT(dev, K_OBJ_DRIVER_EC_HOST_CMD_PERIPH_API));
z_impl_host_cmd_periph_init(dev, &local_rx_ctx);
Z_OOPS(z_user_to_copy(&local_rx_ctx, rx_ctx, sizeof(*rx_ctx)));
}
#include <syscalls/ec_host_cmd_periph_init_mrsh.c>
static inline void
z_vrfy_ec_host_cmd_periph_send(const struct device *dev,
const struct ec_host_cmd_periph_tx_buf *tx_buf)
{
struct ec_host_cmd_periph_tx_buf local_tx_buf;
Z_OOPS(Z_SYSCALL_OBJ(dev, K_OBJ_DRIVER_EC_HOST_CMD_PERIPH_API));
Z_OOPS(z_user_from_copy(&local_tx_buf, tx_buf, sizeof(*tx_buf)));
/* Ensure that user thread has access to read buffer since
* device will read from this memory location.
*/
Z_OOPS(Z_SYSCALL_MEMORY_READ(local_tx_buf.buf, local_tx_buf.size));
z_impl_host_cmd_periph_send(dev, &local_tx_buf);
}
#include <syscalls/ec_host_cmd_periph_init_mrsh.c>