linux/include/uapi/linux/misc/bcm_vk.h

/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
/*
 * Copyright 2018-2020 Broadcom.
 */

#ifndef __UAPI_LINUX_MISC_BCM_VK_H
#define __UAPI_LINUX_MISC_BCM_VK_H

#include <linux/ioctl.h>
#include <linux/types.h>

#define BCM_VK_MAX_FILENAME

struct vk_image {};

struct vk_reset {};

#define VK_MAGIC

/* Load image to Valkyrie */
#define VK_IOCTL_LOAD_IMAGE

/* Send Reset to Valkyrie */
#define VK_IOCTL_RESET

/*
 * Firmware Status accessed directly via BAR space
 */
#define VK_BAR_FWSTS
#define VK_BAR_COP_FWSTS
/* VK_FWSTS definitions */
#define VK_FWSTS_RELOCATION_ENTRY
#define VK_FWSTS_RELOCATION_EXIT
#define VK_FWSTS_INIT_START
#define VK_FWSTS_ARCH_INIT_DONE
#define VK_FWSTS_PRE_KNL1_INIT_DONE
#define VK_FWSTS_PRE_KNL2_INIT_DONE
#define VK_FWSTS_POST_KNL_INIT_DONE
#define VK_FWSTS_INIT_DONE
#define VK_FWSTS_APP_INIT_START
#define VK_FWSTS_APP_INIT_DONE
#define VK_FWSTS_MASK
#define VK_FWSTS_READY
/* Deinit */
#define VK_FWSTS_APP_DEINIT_START
#define VK_FWSTS_APP_DEINIT_DONE
#define VK_FWSTS_DRV_DEINIT_START
#define VK_FWSTS_DRV_DEINIT_DONE
#define VK_FWSTS_RESET_DONE
#define VK_FWSTS_DEINIT_TRIGGERED
/* Last nibble for reboot reason */
#define VK_FWSTS_RESET_REASON_SHIFT
#define VK_FWSTS_RESET_REASON_MASK
#define VK_FWSTS_RESET_SYS_PWRUP
#define VK_FWSTS_RESET_MBOX_DB
#define VK_FWSTS_RESET_M7_WDOG
#define VK_FWSTS_RESET_TEMP
#define VK_FWSTS_RESET_PCI_FLR
#define VK_FWSTS_RESET_PCI_HOT
#define VK_FWSTS_RESET_PCI_WARM
#define VK_FWSTS_RESET_PCI_COLD
#define VK_FWSTS_RESET_L1
#define VK_FWSTS_RESET_L0
#define VK_FWSTS_RESET_UNKNOWN

#endif /* __UAPI_LINUX_MISC_BCM_VK_H */