Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 789dc9be authored by Jeremy Gebben's avatar Jeremy Gebben
Browse files

msm: kgsl: fix build when dma-buf, ashmem and fbdev are not enabled



All of these features can be disabled in the kernel config.
Add appropriate idefs so that the build isn't broken in
this case.

Change-Id: Ife3283c40a87012ab58a679a911090a00e627a61
Signed-off-by: default avatarJeremy Gebben <jgebben@codeaurora.org>
parent 9cf96f15
Loading
Loading
Loading
Loading
+39 −14
Original line number Diff line number Diff line
@@ -193,7 +193,7 @@ kgsl_mem_entry_create(void)

	return entry;
}

#ifdef CONFIG_DMA_SHARED_BUFFER
static void kgsl_destroy_ion(struct kgsl_dma_buf_meta *meta)
{
	if (meta != NULL) {
@@ -204,6 +204,12 @@ static void kgsl_destroy_ion(struct kgsl_dma_buf_meta *meta)
		kfree(meta);
	}
}
#else
static void kgsl_destroy_ion(struct kgsl_dma_buf_meta *meta)
{

}
#endif

void
kgsl_mem_entry_destroy(struct kref *kref)
@@ -2261,19 +2267,6 @@ static long kgsl_ioctl_gpumem_free_id(struct kgsl_device_private *dev_priv,
	return 0;
}

static struct vm_area_struct *kgsl_get_vma_from_start_addr(unsigned int addr)
{
	struct vm_area_struct *vma;

	down_read(&current->mm->mmap_sem);
	vma = find_vma(current->mm, addr);
	up_read(&current->mm->mmap_sem);
	if (!vma)
		KGSL_CORE_ERR("find_vma(%x) failed\n", addr);

	return vma;
}

static inline int _check_region(unsigned long start, unsigned long size,
				uint64_t len)
{
@@ -2281,6 +2274,7 @@ static inline int _check_region(unsigned long start, unsigned long size,
	return (end > len);
}

#ifdef CONFIG_FB
static int kgsl_get_phys_file(int fd, unsigned long *start, unsigned long *len,
			      unsigned long *vstart, struct file **filep)
{
@@ -2377,6 +2371,15 @@ static int kgsl_setup_phys_file(struct kgsl_mem_entry *entry,
err:
	return ret;
}
#else
static int kgsl_setup_phys_file(struct kgsl_mem_entry *entry,
				struct kgsl_pagetable *pagetable,
				unsigned int fd, unsigned int offset,
				size_t size)
{
	return -EINVAL;
}
#endif

static int memdesc_sg_virt(struct kgsl_memdesc *memdesc,
	unsigned long paddr, int size)
@@ -2489,6 +2492,19 @@ static int kgsl_setup_useraddr(struct kgsl_mem_entry *entry,
}

#ifdef CONFIG_ASHMEM
static struct vm_area_struct *kgsl_get_vma_from_start_addr(unsigned int addr)
{
	struct vm_area_struct *vma;

	down_read(&current->mm->mmap_sem);
	vma = find_vma(current->mm, addr);
	up_read(&current->mm->mmap_sem);
	if (!vma)
		KGSL_CORE_ERR("find_vma(%x) failed\n", addr);

	return vma;
}

static int kgsl_setup_ashmem(struct kgsl_mem_entry *entry,
			     struct kgsl_pagetable *pagetable,
			     int fd, unsigned long useraddr, size_t size)
@@ -2557,6 +2573,7 @@ static int kgsl_setup_ashmem(struct kgsl_mem_entry *entry,
}
#endif

#ifdef CONFIG_DMA_SHARED_BUFFER
static int kgsl_setup_ion(struct kgsl_mem_entry *entry,
		struct kgsl_pagetable *pagetable, void *data,
		struct kgsl_device *device)
@@ -2633,6 +2650,14 @@ out:

	return ret;
}
#else
static int kgsl_setup_ion(struct kgsl_mem_entry *entry,
		struct kgsl_pagetable *pagetable, void *data,
		struct kgsl_device *device)
{
	return -EINVAL;
}
#endif

static long kgsl_ioctl_map_user_mem(struct kgsl_device_private *dev_priv,
				     unsigned int cmd, void *data)