Files
linux-nv-oot/include/uapi/linux/tegra-ivc-dev.h
Joshua Cha 236a2f09ee nvidia-oot: add IPA type info of IVC channel
Bug 4293372

Signed-off-by: Joshua Cha <joshuac@nvidia.com>
Change-Id: I5c0cf142afdac9a6a1108a38513af6861272a8e9
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/2995973
(cherry picked from commit ebedbb2492ea13211b53a48655e9312ba6b255dd)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3004066
Reviewed-by: Kurt Yi <kyi@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-11-02 18:13:33 -07:00

55 lines
1.5 KiB
C

/* SPDX-License-Identifier: GPL-2.0-only */
/*
* SPDX-FileCopyrightText: Copyright (c) 2022-2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
*
* NVIDIA CORPORATION, its affiliates and licensors retain all intellectual
* property and proprietary rights in and to this material, related
* documentation and any modifications thereto. Any use, reproduction,
* disclosure or distribution of this material and related documentation
* without an express license agreement from NVIDIA CORPORATION or
* its affiliates is strictly prohibited.
*/
#ifndef __UAPI_TEGRA_IVC_DEV_H
#define __UAPI_TEGRA_IVC_DEV_H
#include <linux/ioctl.h>
#define IVC_INVALID_IPA 0U
#define IVC_TRAP_IPA 1U
#define IVC_MSI_IPA 2U
struct nvipc_ivc_info {
uint32_t nframes;
uint32_t frame_size;
uint32_t queue_offset;
uint32_t queue_size;
uint32_t area_size;
bool rx_first;
uint64_t noti_ipa;
uint16_t noti_irq;
uint16_t noti_type; /* IVC_TRAP_IPA, IVC_MSI_IPA */
};
/* IOCTL magic number */
#define NVIPC_IVC_IOCTL_MAGIC 0xAA
/* query ivc info */
#define NVIPC_IVC_IOCTL_GET_INFO \
_IOWR(NVIPC_IVC_IOCTL_MAGIC, 1, struct nvipc_ivc_info)
/* notify remote */
#define NVIPC_IVC_IOCTL_NOTIFY_REMOTE \
_IO(NVIPC_IVC_IOCTL_MAGIC, 2)
/* query vmid */
#define NVIPC_IVC_IOCTL_GET_VMID \
_IOR(NVIPC_IVC_IOCTL_MAGIC, 3, uint32_t)
#define NVIPC_IVC_IOCTL_NUMBER_MAX 3
int ivc_cdev_get_peer_vmid(uint32_t qid, uint32_t *peer_vmid);
int ivc_cdev_get_noti_type(uint32_t qid, uint32_t *noti_type);
#endif