mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-25 11:04:51 +03:00
gpu: nvgpu: Disable compression for k6.1+
dmabuf internals that nvgpu relies upon for storing meta-data for compressible buffers changed in k6.1. For now, disable compression on all k6.1+ kernels. Additionally, fix numerous compilation issues due to the bit rotted compression config. All normal Tegra products support compression and thus have this config enabled. Over the last several years compression dependent code crept in that wasn't protected under the compression config. Bug 3844023 Change-Id: Ie5b9b5a2bcf1a763806c087af99203d62d0cb6e0 Signed-off-by: Alex Waterman <alexw@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2820846 Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com> Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com> Reviewed-by: svc-mobile-misra <svc-mobile-misra@nvidia.com> Reviewed-by: Sagar Kamble <skamble@nvidia.com> Reviewed-by: Ankur Kishore <ankkishore@nvidia.com> Tested-by: Sagar Kamble <skamble@nvidia.com> GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
This commit is contained in:
committed by
mobile promotions
parent
b754a2f0cf
commit
03533066aa
@@ -66,6 +66,7 @@ gk20a_buffer_state_from_list(struct nvgpu_list_node *node)
|
||||
((uintptr_t)node - offsetof(struct gk20a_buffer_state, list));
|
||||
};
|
||||
|
||||
#ifdef CONFIG_NVGPU_COMPRESSION
|
||||
struct gk20a_dmabuf_priv {
|
||||
struct nvgpu_mutex lock;
|
||||
|
||||
@@ -100,6 +101,7 @@ struct gk20a_dmabuf_priv {
|
||||
/* list node for tracking the dmabuf_priv instances per gpu */
|
||||
struct nvgpu_list_node list;
|
||||
};
|
||||
#endif
|
||||
|
||||
struct sg_table *nvgpu_mm_pin(struct device *dev,
|
||||
struct dma_buf *dmabuf,
|
||||
@@ -111,6 +113,7 @@ void nvgpu_mm_unpin(struct device *dev,
|
||||
struct dma_buf_attachment *attachment,
|
||||
struct sg_table *sgt);
|
||||
|
||||
#ifdef CONFIG_NVGPU_COMPRESSION
|
||||
void gk20a_mm_delete_priv(struct gk20a_dmabuf_priv *priv);
|
||||
|
||||
int gk20a_dmabuf_alloc_or_get_drvdata(struct dma_buf *dmabuf, struct device *dev,
|
||||
@@ -122,6 +125,8 @@ int gk20a_dmabuf_get_state(struct dma_buf *dmabuf, struct gk20a *g,
|
||||
void gk20a_dma_buf_priv_list_clear(struct nvgpu_os_linux *l);
|
||||
struct gk20a_dmabuf_priv *gk20a_dma_buf_get_drvdata(
|
||||
struct dma_buf *dmabuf, struct device *device);
|
||||
#endif
|
||||
|
||||
void *gk20a_dmabuf_vmap(struct dma_buf *dmabuf);
|
||||
void gk20a_dmabuf_vunmap(struct dma_buf *dmabuf, void *addr);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user