| /linux/drivers/gpu/host1x/ |
| H A D | dev.h | 33 int (*init)(struct host1x_channel *channel, struct host1x *host, 56 void (*show_channel_cdma)(struct host1x *host, 59 void (*show_channel_fifo)(struct host1x *host, 62 void (*show_mlocks)(struct host1x *host, struct output *output); 74 void (*enable_protection)(struct host1x *host); 78 int (*init_host_sync)(struct host1x *host, u32 cpm); 80 struct host1x *host, unsigned int id, u32 thresh); 81 void (*enable_syncpt_intr)(struct host1x *host, unsigned int id); 82 void (*disable_syncpt_intr)(struct host1x *host, unsigned int id); 83 void (*disable_all_syncpt_intrs)(struct host1x *host); [all …]
|
| H A D | intr.h | 11 struct host1x; 15 struct host1x *host; 20 int host1x_intr_init(struct host1x *host); 23 void host1x_intr_deinit(struct host1x *host); 26 void host1x_intr_start(struct host1x *host); 29 void host1x_intr_stop(struct host1x *host); 31 void host1x_intr_handle_interrupt(struct host1x *host, unsigned int id); 33 void host1x_intr_add_fence_locked(struct host1x *host, struct host1x_syncpt_fence *fence); 35 bool host1x_intr_remove_fence(struct host1x *host, struct host1x_syncpt_fence *fence);
|
| H A D | dev.c | 45 void host1x_common_writel(struct host1x *host1x, u32 v, u32 r) in host1x_common_writel() argument 47 writel(v, host1x->common_regs + r); in host1x_common_writel() 50 void host1x_hypervisor_writel(struct host1x *host1x, u32 v, u32 r) in host1x_hypervisor_writel() argument 52 writel(v, host1x->hv_regs + r); in host1x_hypervisor_writel() 55 u32 host1x_hypervisor_readl(struct host1x *host1x, u32 r) in host1x_hypervisor_readl() argument 57 return readl(host1x->hv_regs + r); in host1x_hypervisor_readl() 60 void host1x_sync_writel(struct host1x *host1x, u32 v, u32 r) in host1x_sync_writel() argument 62 void __iomem *sync_regs = host1x->regs + host1x->info->sync_offset; in host1x_sync_writel() 67 u32 host1x_sync_readl(struct host1x *host1x, u32 r) in host1x_sync_readl() argument 69 void __iomem *sync_regs = host1x->regs + host1x->info->sync_offset; in host1x_sync_readl() [all …]
|
| H A D | syncpt.h | 20 struct host1x; 39 struct host1x *host; 54 int host1x_syncpt_init(struct host1x *host); 57 void host1x_syncpt_deinit(struct host1x *host); 60 unsigned int host1x_syncpt_nb_pts(struct host1x *host); 63 unsigned int host1x_syncpt_nb_bases(struct host1x *host); 66 unsigned int host1x_syncpt_nb_mlocks(struct host1x *host); 109 void host1x_syncpt_save(struct host1x *host); 112 void host1x_syncpt_restore(struct host1x *host);
|
| H A D | context.c | 21 int host1x_memory_context_list_init(struct host1x *host1x) in host1x_memory_context_list_init() argument 23 struct host1x_memory_context_list *cdl = &host1x->context_list; in host1x_memory_context_list_init() 24 struct device_node *node = host1x->dev->of_node; in host1x_memory_context_list_init() 45 ctx->host = host1x; in host1x_memory_context_list_init() 58 ctx->dev.parent = host1x->dev; in host1x_memory_context_list_init() 66 dev_err(host1x->dev, "could not add context device %d: %d\n", i, err); in host1x_memory_context_list_init() 73 dev_err(host1x->dev, "IOMMU configuration failed for context device %d: %d\n", in host1x_memory_context_list_init() 81 dev_err(host1x->dev, "Context device %d has no IOMMU!\n", i); in host1x_memory_context_list_init() 119 struct host1x_memory_context *host1x_memory_context_alloc(struct host1x *host1x, in host1x_memory_context_alloc() argument 123 struct host1x_memory_context_list *cdl = &host1x->context_list; in host1x_memory_context_alloc()
|
| H A D | bus.h | 11 struct host1x; 15 int host1x_register(struct host1x *host1x); 16 int host1x_unregister(struct host1x *host1x);
|
| H A D | context.h | 14 struct host1x; 25 int host1x_memory_context_list_init(struct host1x *host1x); 28 static inline int host1x_memory_context_list_init(struct host1x *host1x) in host1x_memory_context_list_init() argument
|
| H A D | intr.c | 31 static void host1x_intr_update_hw_state(struct host1x *host, struct host1x_syncpt *sp) in host1x_intr_update_hw_state() 45 void host1x_intr_add_fence_locked(struct host1x *host, struct host1x_syncpt_fence *fence) in host1x_intr_add_fence_locked() 55 bool host1x_intr_remove_fence(struct host1x *host, struct host1x_syncpt_fence *fence) in host1x_intr_remove_fence() 75 void host1x_intr_handle_interrupt(struct host1x *host, unsigned int id) in host1x_intr_handle_interrupt() 101 int host1x_intr_init(struct host1x *host) in host1x_intr_init() 134 void host1x_intr_deinit(struct host1x *host) in host1x_intr_deinit() 138 void host1x_intr_start(struct host1x *host) in host1x_intr_start() 152 void host1x_intr_stop(struct host1x *host) in host1x_intr_stop()
|
| H A D | Kconfig | 7 tristate "NVIDIA Tegra host1x driver" 13 Driver for the NVIDIA Tegra host1x hardware. 15 The Tegra host1x module is the DMA engine for register access to 17 by host1x are referred to as clients. host1x includes some other
|
| H A D | channel.c | 43 struct host1x *host = dev_get_drvdata(job->channel->dev->parent); in host1x_job_submit() 65 struct host1x_channel *host1x_channel_get_index(struct host1x *host, in host1x_channel_get_index() 78 struct host1x *host = dev_get_drvdata(channel->dev->parent); in host1x_channel_stop() 90 void host1x_channel_stop_all(struct host1x *host) in host1x_channel_stop_all() 107 struct host1x *host = dev_get_drvdata(channel->dev->parent); in release_channel() 122 static struct host1x_channel *acquire_unused_channel(struct host1x *host) in acquire_unused_channel() 155 struct host1x *host = dev_get_drvdata(client->dev->parent); in host1x_channel_request()
|
| H A D | channel.h | 17 struct host1x; 41 struct host1x_channel *host1x_channel_get_index(struct host1x *host, 43 void host1x_channel_stop_all(struct host1x *host);
|
| H A D | Makefile | 2 host1x-y = \ 21 host1x-$(CONFIG_IOMMU_API) += \ 24 obj-$(CONFIG_TEGRA_HOST1X) += host1x.o
|
| /linux/drivers/gpu/host1x/hw/ |
| H A D | syncpt_hw.c | 19 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() 122 static void syncpt_enable_protection(struct host1x *host) in syncpt_enable_protection()
|
| H A D | intr_hw.c | 14 static void process_32_syncpts(struct host1x *host, unsigned long val, u32 reg_offset) in process_32_syncpts() 31 struct host1x *host = irq_data->host; in syncpt_thresh_isr() 76 static void host1x_intr_disable_all_syncpt_intrs(struct host1x *host) in host1x_intr_disable_all_syncpt_intrs() 89 host1x_intr_init_host_sync(struct host1x *host, u32 cpm) in host1x_intr_init_host_sync() 124 static void host1x_intr_set_syncpt_threshold(struct host1x *host, in host1x_intr_set_syncpt_threshold() 131 static void host1x_intr_enable_syncpt_intr(struct host1x *host, in host1x_intr_enable_syncpt_intr() 138 static void host1x_intr_disable_syncpt_intr(struct host1x *host, in host1x_intr_disable_syncpt_intr()
|
| H A D | host1x08.h | 11 struct host1x; 13 int host1x08_init(struct host1x *host);
|
| H A D | host1x01.h | 10 struct host1x; 12 int host1x01_init(struct host1x *host);
|
| H A D | host1x07.h | 11 struct host1x; 13 int host1x07_init(struct host1x *host);
|
| H A D | host1x02.h | 11 struct host1x; 13 int host1x02_init(struct host1x *host);
|
| H A D | host1x06.h | 11 struct host1x; 13 int host1x06_init(struct host1x *host);
|
| H A D | host1x05.h | 11 struct host1x; 13 int host1x05_init(struct host1x *host);
|
| H A D | host1x04.h | 11 struct host1x; 13 int host1x04_init(struct host1x *host);
|
| /linux/include/linux/ |
| H A D | host1x.h | 30 struct host1x; 34 u64 host1x_get_dma_mask(struct host1x *host1x); 204 struct host1x; 206 struct host1x_syncpt *host1x_syncpt_get_by_id(struct host1x *host, u32 id); 207 struct host1x_syncpt *host1x_syncpt_get_by_id_noref(struct host1x *host, u32 id); 220 struct host1x_syncpt *host1x_syncpt_alloc(struct host1x *host, 469 struct host1x *host; 481 struct host1x_memory_context *host1x_memory_context_alloc(struct host1x *host1x, 487 static inline struct host1x_memory_context *host1x_memory_context_alloc(struct host1x *host1x, in host1x_memory_context_alloc() argument
|
| /linux/Documentation/gpu/ |
| H A D | tegra.rst | 6 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 …]
|
| /linux/include/trace/events/ |
| H A D | host1x.h | 11 #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,
|
| /linux/drivers/gpu/drm/tegra/ |
| H A D | uapi.c | 78 struct host1x *host = tegra_drm_to_host1x(drm->dev_private); in tegra_drm_ioctl_channel_open() 303 struct host1x *host1x = tegra_drm_to_host1x(drm->dev_private); in tegra_drm_ioctl_syncpoint_allocate() local 312 sp = host1x_syncpt_alloc(host1x, HOST1X_SYNCPT_CLIENT_MANAGED, current->comm); in tegra_drm_ioctl_syncpoint_allocate() 347 struct host1x *host1x = tegra_drm_to_host1x(drm->dev_private); in tegra_drm_ioctl_syncpoint_wait() local 355 sp = host1x_syncpt_get_by_id_noref(host1x, args->id); in tegra_drm_ioctl_syncpoint_wait()
|