brintos

brintos / linux-shallow public Read only

0
0
Text · 1.3 KiB · c7357c2 Raw
55 lines · c
1/* SPDX-License-Identifier: GPL-2.0 */2/*3 * (C) COPYRIGHT 2018 ARM Limited. All rights reserved.4 * Author: James.Qian.Wang <james.qian.wang@arm.com>5 *6 */7#ifndef _D71_DEV_H_8#define _D71_DEV_H_9 10#include "komeda_dev.h"11#include "komeda_pipeline.h"12#include "d71_regs.h"13 14struct d71_pipeline {15	struct komeda_pipeline base;16 17	/* d71 private pipeline blocks */18	u32 __iomem	*lpu_addr;19	u32 __iomem	*cu_addr;20	u32 __iomem	*dou_addr;21	u32 __iomem	*dou_ft_coeff_addr; /* forward transform coeffs table */22};23 24struct d71_dev {25	struct komeda_dev *mdev;26 27	int	num_blocks;28	int	num_pipelines;29	int	num_rich_layers;30	u32	max_line_size;31	u32	max_vsize;32	u32	supports_dual_link : 1;33	u32	integrates_tbu : 1;34 35	/* global register blocks */36	u32 __iomem	*gcu_addr;37	/* scaling coeffs table */38	u32 __iomem	*glb_scl_coeff_addr[D71_MAX_GLB_SCL_COEFF];39	u32 __iomem	*periph_addr;40 41	struct d71_pipeline *pipes[D71_MAX_PIPELINE];42};43 44#define to_d71_pipeline(x)	container_of(x, struct d71_pipeline, base)45 46extern const struct komeda_pipeline_funcs d71_pipeline_funcs;47 48int d71_probe_block(struct d71_dev *d71,49		    struct block_header *blk, u32 __iomem *reg);50void d71_read_block_header(u32 __iomem *reg, struct block_header *blk);51 52void d71_dump(struct komeda_dev *mdev, struct seq_file *sf);53 54#endif /* !_D71_DEV_H_ */55