|  | /* SPDX-License-Identifier: GPL-2.0-only */ | 
|  | /* | 
|  | * Copyright (c) 2022, NVIDIA Corporation. | 
|  | */ | 
|  |  | 
|  | #ifndef DRM_TEGRA_RISCV_H | 
|  | #define DRM_TEGRA_RISCV_H | 
|  |  | 
|  | struct tegra_drm_riscv_descriptor { | 
|  | u32 manifest_offset; | 
|  | u32 code_offset; | 
|  | u32 code_size; | 
|  | u32 data_offset; | 
|  | u32 data_size; | 
|  | }; | 
|  |  | 
|  | struct tegra_drm_riscv { | 
|  | /* User initializes */ | 
|  | struct device *dev; | 
|  | void __iomem *regs; | 
|  |  | 
|  | struct tegra_drm_riscv_descriptor bl_desc; | 
|  | struct tegra_drm_riscv_descriptor os_desc; | 
|  | }; | 
|  |  | 
|  | int tegra_drm_riscv_read_descriptors(struct tegra_drm_riscv *riscv); | 
|  | int tegra_drm_riscv_boot_bootrom(struct tegra_drm_riscv *riscv, phys_addr_t image_address, | 
|  | u32 gscid, const struct tegra_drm_riscv_descriptor *desc); | 
|  |  | 
|  | #endif |