Primary Git Repository for the Zephyr Project. Zephyr is a new generation, scalable, optimized, secure RTOS for multiple hardware architectures.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

32 lines
720 B

/*
* Copyright (c) 2019 Intel Corporation.
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <zephyr/internal/syscall_handler.h>
#include <zephyr/drivers/ptp_clock.h>
#ifdef CONFIG_USERSPACE
int z_vrfy_ptp_clock_get(const struct device *dev,
struct net_ptp_time *tm)
{
struct net_ptp_time ptp_time;
int ret;
K_OOPS(K_SYSCALL_DRIVER_PTP_CLOCK(dev, get));
K_OOPS(K_SYSCALL_MEMORY_WRITE(tm, sizeof(struct net_ptp_time)));
ret = z_impl_ptp_clock_get((const struct device *)dev, &ptp_time);
if (ret != 0) {
return 0;
}
if (k_usermode_to_copy((void *)tm, &ptp_time, sizeof(ptp_time)) != 0) {
return 0;
}
return ret;
}
#include <zephyr/syscalls/ptp_clock_get_mrsh.c>
#endif /* CONFIG_USERSPACE */