hc
2024-05-16 8d2a02b24d66aa359e83eebc1ed3c0f85367a1cb
kernel/drivers/gpu/host1x/dev.h
....@@ -1,17 +1,6 @@
1
+/* SPDX-License-Identifier: GPL-2.0-only */
12 /*
23 * Copyright (c) 2012-2015, NVIDIA Corporation.
3
- *
4
- * This program is free software; you can redistribute it and/or modify it
5
- * under the terms and conditions of the GNU General Public License,
6
- * version 2, as published by the Free Software Foundation.
7
- *
8
- * This program is distributed in the hope it will be useful, but WITHOUT
9
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
10
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
11
- * more details.
12
- *
13
- * You should have received a copy of the GNU General Public License
14
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
154 */
165
176 #ifndef HOST1X_DEV_H
....@@ -94,6 +83,12 @@
9483 int (*free_syncpt_irq)(struct host1x *host);
9584 };
9685
86
+struct host1x_sid_entry {
87
+ unsigned int base;
88
+ unsigned int offset;
89
+ unsigned int limit;
90
+};
91
+
9792 struct host1x_info {
9893 unsigned int nb_channels; /* host1x: number of channels supported */
9994 unsigned int nb_pts; /* host1x: number of syncpoints supported */
....@@ -102,7 +97,10 @@
10297 int (*init)(struct host1x *host1x); /* initialize per SoC ops */
10398 unsigned int sync_offset; /* offset of syncpoint registers */
10499 u64 dma_mask; /* mask of addressable memory */
100
+ bool has_wide_gather; /* supports GATHER_W opcode */
105101 bool has_hypervisor; /* has hypervisor registers */
102
+ unsigned int num_sid_entries;
103
+ const struct host1x_sid_entry *sid_table;
106104 };
107105
108106 struct host1x {
....@@ -143,6 +141,8 @@
143141 struct list_head devices;
144142
145143 struct list_head list;
144
+
145
+ struct device_dma_parameters dma_parms;
146146 };
147147
148148 void host1x_hypervisor_writel(struct host1x *host1x, u32 r, u32 v);