linux/drivers/gpu/drm/tegra/falcon.h

/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * Copyright (c) 2015, NVIDIA Corporation.
 */

#ifndef _FALCON_H_
#define _FALCON_H_

#include <linux/types.h>

#define FALCON_UCLASS_METHOD_OFFSET

#define FALCON_UCLASS_METHOD_DATA

#define FALCON_IRQMSET
#define FALCON_IRQMSET_WDTMR
#define FALCON_IRQMSET_HALT
#define FALCON_IRQMSET_EXTERR
#define FALCON_IRQMSET_SWGEN0
#define FALCON_IRQMSET_SWGEN1
#define FALCON_IRQMSET_EXT(v)

#define FALCON_IRQDEST
#define FALCON_IRQDEST_HALT
#define FALCON_IRQDEST_EXTERR
#define FALCON_IRQDEST_SWGEN0
#define FALCON_IRQDEST_SWGEN1
#define FALCON_IRQDEST_EXT(v)

#define FALCON_ITFEN
#define FALCON_ITFEN_CTXEN
#define FALCON_ITFEN_MTHDEN

#define FALCON_IDLESTATE

#define FALCON_CPUCTL
#define FALCON_CPUCTL_STARTCPU

#define FALCON_BOOTVEC

#define FALCON_DMACTL
#define FALCON_DMACTL_DMEM_SCRUBBING
#define FALCON_DMACTL_IMEM_SCRUBBING

#define FALCON_DMATRFBASE

#define FALCON_DMATRFMOFFS

#define FALCON_DMATRFCMD
#define FALCON_DMATRFCMD_IDLE
#define FALCON_DMATRFCMD_IMEM
#define FALCON_DMATRFCMD_SIZE_256B
#define FALCON_DMATRFCMD_DMACTX(v)

#define FALCON_DMATRFFBOFFS

struct falcon_fw_bin_header_v1 {};

struct falcon_fw_os_app_v1 {};

struct falcon_fw_os_header_v1 {};

struct falcon_firmware_section {};

struct falcon_firmware {};

struct falcon {};

int falcon_init(struct falcon *falcon);
void falcon_exit(struct falcon *falcon);
int falcon_read_firmware(struct falcon *falcon, const char *firmware_name);
int falcon_load_firmware(struct falcon *falcon);
int falcon_boot(struct falcon *falcon);
void falcon_execute_method(struct falcon *falcon, u32 method, u32 data);
int falcon_wait_idle(struct falcon *falcon);

#endif /* _FALCON_H_ */