/* SPDX-License-Identifier: GPL-2.0+ */ /* * Copyright (C) 2018 BayLibre, SAS * Author: Maxime Jourdan */ #ifndef __MESON_VDEC_DOS_REGS_H_ #define __MESON_VDEC_DOS_REGS_H_ /* DOS registers */ #define VDEC_ASSIST_AMR1_INT8 0x00b4 #define ASSIST_MBOX1_CLR_REG 0x01d4 #define ASSIST_MBOX1_MASK 0x01d8 #define MPSR 0x0c04 #define MCPU_INTR_MSK 0x0c10 #define CPSR 0x0c84 #define IMEM_DMA_CTRL 0x0d00 #define IMEM_DMA_ADR 0x0d04 #define IMEM_DMA_COUNT 0x0d08 #define LMEM_DMA_CTRL 0x0d40 #define MC_STATUS0 0x2424 #define MC_CTRL1 0x242c #define PSCALE_RST 0x2440 #define PSCALE_CTRL 0x2444 #define PSCALE_BMEM_ADDR 0x247c #define PSCALE_BMEM_DAT 0x2480 #define DBLK_CTRL 0x2544 #define DBLK_STATUS 0x254c #define GCLK_EN 0x260c #define MDEC_PIC_DC_CTRL 0x2638 #define MDEC_PIC_DC_STATUS 0x263c #define ANC0_CANVAS_ADDR 0x2640 #define MDEC_PIC_DC_THRESH 0x26e0 /* Firmware interface registers */ #define AV_SCRATCH_0 0x2700 #define AV_SCRATCH_1 0x2704 #define AV_SCRATCH_2 0x2708 #define AV_SCRATCH_3 0x270c #define AV_SCRATCH_4 0x2710 #define AV_SCRATCH_5 0x2714 #define AV_SCRATCH_6 0x2718 #define AV_SCRATCH_7 0x271c #define AV_SCRATCH_8 0x2720 #define AV_SCRATCH_9 0x2724 #define AV_SCRATCH_A 0x2728 #define AV_SCRATCH_B 0x272c #define AV_SCRATCH_C 0x2730 #define AV_SCRATCH_D 0x2734 #define AV_SCRATCH_E 0x2738 #define AV_SCRATCH_F 0x273c #define AV_SCRATCH_G 0x2740 #define AV_SCRATCH_H 0x2744 #define AV_SCRATCH_I 0x2748 #define AV_SCRATCH_J 0x274c #define AV_SCRATCH_K 0x2750 #define AV_SCRATCH_L 0x2754 #define MPEG1_2_REG 0x3004 #define PIC_HEAD_INFO 0x300c #define POWER_CTL_VLD 0x3020 #define M4_CONTROL_REG 0x30a4 /* Stream Buffer (stbuf) regs */ #define VLD_MEM_VIFIFO_START_PTR 0x3100 #define VLD_MEM_VIFIFO_CURR_PTR 0x3104 #define VLD_MEM_VIFIFO_END_PTR 0x3108 #define VLD_MEM_VIFIFO_CONTROL 0x3110 #define MEM_FIFO_CNT_BIT 16 #define MEM_FILL_ON_LEVEL BIT(10) #define MEM_CTRL_EMPTY_EN BIT(2) #define MEM_CTRL_FILL_EN BIT(1) #define VLD_MEM_VIFIFO_WP 0x3114 #define VLD_MEM_VIFIFO_RP 0x3118 #define VLD_MEM_VIFIFO_LEVEL 0x311c #define VLD_MEM_VIFIFO_BUF_CNTL 0x3120 #define MEM_BUFCTRL_MANUAL BIT(1) #define VLD_MEM_VIFIFO_WRAP_COUNT 0x3144 #define DCAC_DMA_CTRL 0x3848 #define DOS_SW_RESET0 0xfc00 #define DOS_GCLK_EN0 0xfc04 #define DOS_GEN_CTRL0 0xfc08 #define DOS_MEM_PD_VDEC 0xfcc0 #define DOS_MEM_PD_HEVC 0xfccc #define DOS_SW_RESET3 0xfcd0 #define DOS_GCLK_EN3 0xfcd4 #define DOS_VDEC_MCRCC_STALL_CTRL 0xfd00 #endif