Home
last modified time | relevance | path

Searched refs:host1x (Results 1 – 25 of 97) sorted by relevance

1234

/kernel/linux/linux-5.10/drivers/gpu/host1x/
Ddev.h31 int (*init)(struct host1x_channel *channel, struct host1x *host,
54 void (*show_channel_cdma)(struct host1x *host,
57 void (*show_channel_fifo)(struct host1x *host,
60 void (*show_mlocks)(struct host1x *host, struct output *output);
72 void (*enable_protection)(struct host1x *host);
76 int (*init_host_sync)(struct host1x *host, u32 cpm,
79 struct host1x *host, unsigned int id, u32 thresh);
80 void (*enable_syncpt_intr)(struct host1x *host, unsigned int id);
81 void (*disable_syncpt_intr)(struct host1x *host, unsigned int id);
82 void (*disable_all_syncpt_intrs)(struct host1x *host);
[all …]
Dcdma.c51 struct host1x *host1x = cdma_to_host1x(cdma); in host1x_pushbuffer_destroy() local
56 if (host1x->domain) { in host1x_pushbuffer_destroy()
57 iommu_unmap(host1x->domain, pb->dma, pb->alloc_size); in host1x_pushbuffer_destroy()
58 free_iova(&host1x->iova, iova_pfn(&host1x->iova, pb->dma)); in host1x_pushbuffer_destroy()
61 dma_free_wc(host1x->dev, pb->alloc_size, pb->mapped, pb->phys); in host1x_pushbuffer_destroy()
73 struct host1x *host1x = cdma_to_host1x(cdma); in host1x_pushbuffer_init() local
88 if (host1x->domain) { in host1x_pushbuffer_init()
91 size = iova_align(&host1x->iova, size); in host1x_pushbuffer_init()
93 pb->mapped = dma_alloc_wc(host1x->dev, size, &pb->phys, in host1x_pushbuffer_init()
98 shift = iova_shift(&host1x->iova); in host1x_pushbuffer_init()
[all …]
Dbus.c259 static int host1x_add_client(struct host1x *host1x, in host1x_add_client() argument
265 mutex_lock(&host1x->devices_lock); in host1x_add_client()
267 list_for_each_entry(device, &host1x->devices, list) { in host1x_add_client()
271 mutex_unlock(&host1x->devices_lock); in host1x_add_client()
277 mutex_unlock(&host1x->devices_lock); in host1x_add_client()
281 static int host1x_del_client(struct host1x *host1x, in host1x_del_client() argument
287 mutex_lock(&host1x->devices_lock); in host1x_del_client()
289 list_for_each_entry_safe(device, dt, &host1x->devices, list) { in host1x_del_client()
293 mutex_unlock(&host1x->devices_lock); in host1x_del_client()
299 mutex_unlock(&host1x->devices_lock); in host1x_del_client()
[all …]
Ddebug.c53 struct host1x *m = dev_get_drvdata(ch->dev->parent); in show_channel()
70 static void show_syncpts(struct host1x *m, struct output *o) in show_syncpts()
99 static void show_all(struct host1x *m, struct output *o, bool show_fifo) in show_all()
165 static void host1x_debugfs_init(struct host1x *host1x) in host1x_debugfs_init() argument
170 host1x->debugfs = de; in host1x_debugfs_init()
172 debugfs_create_file("status", S_IRUGO, de, host1x, &host1x_debug_fops); in host1x_debugfs_init()
173 debugfs_create_file("status_all", S_IRUGO, de, host1x, in host1x_debugfs_init()
179 host1x_hw_debug_init(host1x, de); in host1x_debugfs_init()
189 static void host1x_debugfs_exit(struct host1x *host1x) in host1x_debugfs_exit() argument
191 debugfs_remove_recursive(host1x->debugfs); in host1x_debugfs_exit()
[all …]
Ddebug.h13 struct host1x;
41 void host1x_debug_init(struct host1x *host1x);
42 void host1x_debug_deinit(struct host1x *host1x);
43 void host1x_debug_dump(struct host1x *host1x);
44 void host1x_debug_dump_syncpts(struct host1x *host1x);
Dsyncpt.h18 struct host1x;
35 struct host1x *host;
44 int host1x_syncpt_init(struct host1x *host);
47 void host1x_syncpt_deinit(struct host1x *host);
50 unsigned int host1x_syncpt_nb_pts(struct host1x *host);
53 unsigned int host1x_syncpt_nb_bases(struct host1x *host);
56 unsigned int host1x_syncpt_nb_mlocks(struct host1x *host);
99 void host1x_syncpt_save(struct host1x *host);
102 void host1x_syncpt_restore(struct host1x *host);
Ddev.c38 void host1x_hypervisor_writel(struct host1x *host1x, u32 v, u32 r) in host1x_hypervisor_writel() argument
40 writel(v, host1x->hv_regs + r); in host1x_hypervisor_writel()
43 u32 host1x_hypervisor_readl(struct host1x *host1x, u32 r) in host1x_hypervisor_readl() argument
45 return readl(host1x->hv_regs + r); in host1x_hypervisor_readl()
48 void host1x_sync_writel(struct host1x *host1x, u32 v, u32 r) in host1x_sync_writel() argument
50 void __iomem *sync_regs = host1x->regs + host1x->info->sync_offset; in host1x_sync_writel()
55 u32 host1x_sync_readl(struct host1x *host1x, u32 r) in host1x_sync_readl() argument
57 void __iomem *sync_regs = host1x->regs + host1x->info->sync_offset; in host1x_sync_readl()
186 static void host1x_setup_sid_table(struct host1x *host) in host1x_setup_sid_table()
199 static bool host1x_wants_iommu(struct host1x *host1x) in host1x_wants_iommu() argument
[all …]
Dintr.h15 struct host1x;
68 int host1x_intr_add_action(struct host1x *host, struct host1x_syncpt *syncpt,
78 void host1x_intr_put_ref(struct host1x *host, unsigned int id, void *ref);
81 int host1x_intr_init(struct host1x *host, unsigned int irq_sync);
84 void host1x_intr_deinit(struct host1x *host);
87 void host1x_intr_start(struct host1x *host);
90 void host1x_intr_stop(struct host1x *host);
Dbus.h11 struct host1x;
15 int host1x_register(struct host1x *host1x);
16 int host1x_unregister(struct host1x *host1x);
DKconfig3 tristate "NVIDIA Tegra host1x driver"
7 Driver for the NVIDIA Tegra host1x hardware.
9 The Tegra host1x module is the DMA engine for register access to
11 by host1x are referred to as clients. host1x includes some other
Dsyncpt.c23 host1x_syncpt_base_request(struct host1x *host) in host1x_syncpt_base_request()
45 static struct host1x_syncpt *host1x_syncpt_alloc(struct host1x *host, in host1x_syncpt_alloc()
119 void host1x_syncpt_restore(struct host1x *host) in host1x_syncpt_restore()
137 void host1x_syncpt_save(struct host1x *host) in host1x_syncpt_save()
365 int host1x_syncpt_init(struct host1x *host) in host1x_syncpt_init()
424 struct host1x *host = dev_get_drvdata(client->host->parent); in host1x_syncpt_request()
458 void host1x_syncpt_deinit(struct host1x *host) in host1x_syncpt_deinit()
507 unsigned int host1x_syncpt_nb_pts(struct host1x *host) in host1x_syncpt_nb_pts()
512 unsigned int host1x_syncpt_nb_bases(struct host1x *host) in host1x_syncpt_nb_bases()
517 unsigned int host1x_syncpt_nb_mlocks(struct host1x *host) in host1x_syncpt_nb_mlocks()
[all …]
Dintr.c88 static void reset_threshold_interrupt(struct host1x *host, in reset_threshold_interrupt()
154 static int process_wait_list(struct host1x *host, in process_wait_list()
196 struct host1x *host = syncpt->host; in syncpt_thresh_work()
202 int host1x_intr_add_action(struct host1x *host, struct host1x_syncpt *syncpt, in host1x_intr_add_action()
245 void host1x_intr_put_ref(struct host1x *host, unsigned int id, void *ref) in host1x_intr_put_ref()
261 int host1x_intr_init(struct host1x *host, unsigned int irq_sync) in host1x_intr_init()
284 void host1x_intr_deinit(struct host1x *host) in host1x_intr_deinit()
289 void host1x_intr_start(struct host1x *host) in host1x_intr_start()
304 void host1x_intr_stop(struct host1x *host) in host1x_intr_stop()
Dchannel.c45 struct host1x *host = dev_get_drvdata(job->channel->dev->parent); in host1x_job_submit()
67 struct host1x_channel *host1x_channel_get_index(struct host1x *host, in host1x_channel_get_index()
82 struct host1x *host = dev_get_drvdata(channel->dev->parent); in release_channel()
97 static struct host1x_channel *acquire_unused_channel(struct host1x *host) in acquire_unused_channel()
125 struct host1x *host = dev_get_drvdata(client->dev->parent); in host1x_channel_request()
Dchannel.h16 struct host1x;
38 struct host1x_channel *host1x_channel_get_index(struct host1x *host,
/kernel/linux/linux-5.10/drivers/gpu/host1x/hw/
Dcdma_hw.c91 struct host1x *host1x = cdma_to_host1x(cdma); in cdma_timeout_restart() local
123 dev_dbg(host1x->dev, in cdma_timeout_restart()
170 static void cdma_hw_cmdproc_stop(struct host1x *host, struct host1x_channel *ch, in cdma_hw_cmdproc_stop()
185 static void cdma_hw_teardown(struct host1x *host, struct host1x_channel *ch) in cdma_hw_teardown()
200 struct host1x *host = cdma_to_host1x(cdma); in cdma_freeze()
228 struct host1x *host1x = cdma_to_host1x(cdma); in cdma_resume() local
231 dev_dbg(host1x->dev, in cdma_resume()
235 cdma_hw_cmdproc_stop(host1x, ch, false); in cdma_resume()
250 struct host1x *host1x; in cdma_timeout_handler() local
255 host1x = cdma_to_host1x(cdma); in cdma_timeout_handler()
[all …]
Dintr_hw.c23 struct host1x *host = syncpt->host; in host1x_intr_syncpt_handle()
35 struct host1x *host = dev_id; in syncpt_thresh_isr()
52 static void _host1x_intr_disable_all_syncpt_intrs(struct host1x *host) in _host1x_intr_disable_all_syncpt_intrs()
64 static void intr_hw_init(struct host1x *host, u32 cpm) in intr_hw_init()
82 _host1x_intr_init_host_sync(struct host1x *host, u32 cpm, in _host1x_intr_init_host_sync()
106 static void _host1x_intr_set_syncpt_threshold(struct host1x *host, in _host1x_intr_set_syncpt_threshold()
113 static void _host1x_intr_enable_syncpt_intr(struct host1x *host, in _host1x_intr_enable_syncpt_intr()
120 static void _host1x_intr_disable_syncpt_intr(struct host1x *host, in _host1x_intr_disable_syncpt_intr()
129 static int _host1x_free_syncpt_irq(struct host1x *host) in _host1x_free_syncpt_irq()
Dsyncpt_hw.c19 struct host1x *host = sp->host; in syncpt_restore()
30 struct host1x *host = sp->host; in syncpt_restore_wait_base()
43 struct host1x *host = sp->host; in syncpt_read_wait_base()
55 struct host1x *host = sp->host; in syncpt_load()
78 struct host1x *host = sp->host; in syncpt_cpu_incr()
107 struct host1x *host = sp->host; in syncpt_assign_to_channel()
125 static void syncpt_enable_protection(struct host1x *host) in syncpt_enable_protection()
Dhost1x01.h10 struct host1x;
12 int host1x01_init(struct host1x *host);
Dhost1x04.h11 struct host1x;
13 int host1x04_init(struct host1x *host);
Dhost1x06.h11 struct host1x;
13 int host1x06_init(struct host1x *host);
Dhost1x02.h11 struct host1x;
13 int host1x02_init(struct host1x *host);
Dhost1x07.h11 struct host1x;
13 int host1x07_init(struct host1x *host);
Dhost1x05.h11 struct host1x;
13 int host1x05_init(struct host1x *host);
/kernel/linux/linux-5.10/Documentation/gpu/
Dtegra.rst6 the host1x controller. host1x supplies command streams, gathered from a push
18 - A host1x driver that provides infrastructure and access to the host1x
25 GPU and video engines via host1x.
30 The various host1x clients need to be bound together into a logical device in
32 this is implemented in the host1x driver. When a driver is registered with the
37 to the logical host1x device.
50 .. kernel-doc:: include/linux/host1x.h
52 .. kernel-doc:: drivers/gpu/host1x/bus.c
58 .. kernel-doc:: drivers/gpu/host1x/syncpt.c
140 to host1x.
[all …]
/kernel/linux/linux-5.10/include/trace/events/
Dhost1x.h11 #define TRACE_SYSTEM host1x
21 DECLARE_EVENT_CLASS(host1x,
29 DEFINE_EVENT(host1x, host1x_channel_open,
34 DEFINE_EVENT(host1x, host1x_channel_release,
39 DEFINE_EVENT(host1x, host1x_cdma_begin,
44 DEFINE_EVENT(host1x, host1x_cdma_end,

1234