mirror of
git://nv-tegra.nvidia.com/linux-nv-oot.git
synced 2025-12-24 02:01:36 +03:00
gpu: host1x: Add context device management code
Add code to register context devices from device tree, allocate them out and manage their refcounts. Bug 3724727 Signed-off-by: Mikko Perttunen <mperttunen@nvidia.com> Change-Id: I5a48ef57c8e9c8bab199dbc2d449535251c7f198 Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2745961 Reviewed-by: svc_kernel_abi <svc_kernel_abi@nvidia.com> Reviewed-by: Brad Griffis <bgriffis@nvidia.com> Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com> Reviewed-by: Bibek Basu <bbasu@nvidia.com> GVS: Gerrit_Virtual_Submit Tested-by: Brad Griffis <bgriffis@nvidia.com>
This commit is contained in:
committed by
Laxman Dewangan
parent
7b4206605d
commit
933d4c9900
@@ -453,4 +453,38 @@ int tegra_mipi_disable(struct tegra_mipi_device *device);
|
||||
int tegra_mipi_start_calibration(struct tegra_mipi_device *device);
|
||||
int tegra_mipi_finish_calibration(struct tegra_mipi_device *device);
|
||||
|
||||
/* host1x memory contexts */
|
||||
|
||||
struct host1x_memory_context {
|
||||
struct host1x *host;
|
||||
|
||||
refcount_t ref;
|
||||
struct pid *owner;
|
||||
|
||||
struct device dev;
|
||||
u64 dma_mask;
|
||||
u32 stream_id;
|
||||
};
|
||||
|
||||
#ifdef CONFIG_IOMMU_API
|
||||
struct host1x_memory_context *host1x_memory_context_alloc(struct host1x *host1x,
|
||||
struct pid *pid);
|
||||
void host1x_memory_context_get(struct host1x_memory_context *cd);
|
||||
void host1x_memory_context_put(struct host1x_memory_context *cd);
|
||||
#else
|
||||
static inline struct host1x_memory_context *host1x_memory_context_alloc(struct host1x *host1x,
|
||||
struct pid *pid)
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static inline void host1x_memory_context_get(struct host1x_memory_context *cd)
|
||||
{
|
||||
}
|
||||
|
||||
static inline void host1x_memory_context_put(struct host1x_memory_context *cd)
|
||||
{
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user