The extra list contains some which are used and some which are not. At this
point I think we can safely remove those that are simply not used.

Signed-off-by: Alan Cox <a...@linux.intel.com>
---
 .../staging/media/atomisp/pci/atomisp2/Makefile    |   11 -
 .../media/atomisp/pci/atomisp2/hmm/hmm_bo_dev.c    |  333 --------------------
 .../media/atomisp/pci/atomisp2/hrt/device_access.c |  116 -------
 .../media/atomisp/pci/atomisp2/hrt/memory_access.c |  103 ------
 4 files changed, 563 deletions(-)
 delete mode 100644 drivers/staging/media/atomisp/pci/atomisp2/hmm/hmm_bo_dev.c
 delete mode 100644 
drivers/staging/media/atomisp/pci/atomisp2/hrt/device_access.c
 delete mode 100644 
drivers/staging/media/atomisp/pci/atomisp2/hrt/memory_access.c

diff --git a/drivers/staging/media/atomisp/pci/atomisp2/Makefile 
b/drivers/staging/media/atomisp/pci/atomisp2/Makefile
index 96a7bd0..7417dbd 100644
--- a/drivers/staging/media/atomisp/pci/atomisp2/Makefile
+++ b/drivers/staging/media/atomisp/pci/atomisp2/Makefile
@@ -157,17 +157,6 @@ atomisp-objs += \
        hrt/hive_isp_css_mm_hrt.o \
        atomisp_v4l2.o
        
-extra= \
-       hrt/hive_isp_css_mm_hrt.o \
-       hrt/memory_access.o \
-       hrt/device_access.o \
-       hmm/hmm_dynamic_pool.o \
-       hmm/hmm_vm.o \
-       hmm/hmm_reserved_pool.o \
-       hmm/hmm_bo_dev.o \
-       hmm/hmm.o \
-       hmm/hmm_bo.o
-
 # These will be needed when clean merge CHT support nicely into the driver
 # Keep them here handy for when we get to that point
 #
diff --git a/drivers/staging/media/atomisp/pci/atomisp2/hmm/hmm_bo_dev.c 
b/drivers/staging/media/atomisp/pci/atomisp2/hmm/hmm_bo_dev.c
deleted file mode 100644
index d22a2d2..0000000
--- a/drivers/staging/media/atomisp/pci/atomisp2/hmm/hmm_bo_dev.c
+++ /dev/null
@@ -1,333 +0,0 @@
-/*
- * Support for Medifield PNW Camera Imaging ISP subsystem.
- *
- * Copyright (c) 2010 Intel Corporation. All Rights Reserved.
- *
- * Copyright (c) 2010 Silicon Hive www.siliconhive.com.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License version
- * 2 as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301, USA.
- *
- */
-#include <linux/kernel.h>
-#include <linux/types.h>
-#include <linux/gfp.h>
-#include <linux/mm.h>          /* for GFP_ATOMIC */
-#include <linux/slab.h>                /* for kmalloc */
-#include <linux/module.h>
-#include <linux/moduleparam.h>
-#include <linux/string.h>
-#include <linux/list.h>
-#include <linux/errno.h>
-
-#ifdef CONFIG_ION
-#include <linux/ion.h>
-#endif
-
-#include "atomisp_internal.h"
-#include "hmm/hmm_common.h"
-#include "hmm/hmm_bo_dev.h"
-#include "hmm/hmm_bo.h"
-
-/*
- * hmm_bo_device functions.
- */
-int hmm_bo_device_init(struct hmm_bo_device *bdev,
-                      struct isp_mmu_client *mmu_driver,
-                      unsigned int vaddr_start, unsigned int size)
-{
-       int ret;
-
-       check_bodev_null_return(bdev, -EINVAL);
-
-       ret = isp_mmu_init(&bdev->mmu, mmu_driver);
-       if (ret) {
-               dev_err(atomisp_dev, "isp_mmu_init failed.\n");
-               goto isp_mmu_init_err;
-       }
-
-       ret = hmm_vm_init(&bdev->vaddr_space, vaddr_start, size);
-       if (ret) {
-               dev_err(atomisp_dev, "hmm_vm_init failed. vaddr_start = 0x%x, 
size = %d\n",
-                       vaddr_start, size);
-               goto vm_init_err;
-       }
-
-       INIT_LIST_HEAD(&bdev->free_bo_list);
-       INIT_LIST_HEAD(&bdev->active_bo_list);
-
-       spin_lock_init(&bdev->list_lock);
-#ifdef CONFIG_ION
-       /*
-        * TODO:
-        * The ion_dev should be defined by ION driver. But ION driver does
-        * not implement it yet, will fix it when it is ready.
-        */
-       if (!ion_dev)
-               goto vm_init_err;
-
-       bdev->iclient = ion_client_create(ion_dev, "atomisp");
-       if (IS_ERR_OR_NULL(bdev->iclient)) {
-               ret = PTR_ERR(bdev->iclient);
-               if (!bdev->iclient)
-                       ret = -EINVAL;
-               goto vm_init_err;
-       }
-#endif
-       bdev->flag = HMM_BO_DEVICE_INITED;
-
-       return 0;
-
-vm_init_err:
-       isp_mmu_exit(&bdev->mmu);
-isp_mmu_init_err:
-       return ret;
-}
-
-void hmm_bo_device_exit(struct hmm_bo_device *bdev)
-{
-       check_bodev_null_return_void(bdev);
-
-       /*
-        * destroy all bos in the bo list, even they are in use.
-        */
-       if (!list_empty(&bdev->active_bo_list))
-               dev_warn(atomisp_dev,
-                            "there're still activated bo in use. "
-                            "force to free them.\n");
-
-       while (!list_empty(&bdev->active_bo_list))
-               hmm_bo_unref(list_to_hmm_bo(bdev->active_bo_list.next));
-
-       if (!list_empty(&bdev->free_bo_list))
-               dev_warn(atomisp_dev,
-                               "there're still bo in free_bo_list. "
-                               "force to free them.\n");
-
-       while (!list_empty(&bdev->free_bo_list))
-               hmm_bo_unref(list_to_hmm_bo(bdev->free_bo_list.next));
-
-       isp_mmu_exit(&bdev->mmu);
-       hmm_vm_clean(&bdev->vaddr_space);
-#ifdef CONFIG_ION
-       if (bdev->iclient != NULL)
-               ion_client_destroy(bdev->iclient);
-#endif
-}
-
-int hmm_bo_device_inited(struct hmm_bo_device *bdev)
-{
-       check_bodev_null_return(bdev, -EINVAL);
-
-       return bdev->flag == HMM_BO_DEVICE_INITED;
-}
-
-/*
- * find the buffer object with virtual address vaddr.
- * return NULL if no such buffer object found.
- */
-struct hmm_buffer_object *hmm_bo_device_search_start(struct hmm_bo_device 
*bdev,
-                                                    ia_css_ptr vaddr)
-{
-       struct list_head *pos;
-       struct hmm_buffer_object *bo;
-       unsigned long flags;
-
-       check_bodev_null_return(bdev, NULL);
-
-       spin_lock_irqsave(&bdev->list_lock, flags);
-       list_for_each(pos, &bdev->active_bo_list) {
-               bo = list_to_hmm_bo(pos);
-               /* pass bo which has no vm_node allocated */
-               if (!hmm_bo_vm_allocated(bo))
-                       continue;
-               if (bo->vm_node->start == vaddr)
-                       goto found;
-       }
-       spin_unlock_irqrestore(&bdev->list_lock, flags);
-       return NULL;
-found:
-       spin_unlock_irqrestore(&bdev->list_lock, flags);
-       return bo;
-}
-
-static int in_range(unsigned int start, unsigned int size, unsigned int addr)
-{
-       return (start <= addr) && (start + size > addr);
-}
-
-struct hmm_buffer_object *hmm_bo_device_search_in_range(struct hmm_bo_device
-                                                       *bdev,
-                                                       unsigned int vaddr)
-{
-       struct list_head *pos;
-       struct hmm_buffer_object *bo;
-       unsigned long flags;
-       int cnt = 0;
-
-       check_bodev_null_return(bdev, NULL);
-
-       spin_lock_irqsave(&bdev->list_lock, flags);
-       list_for_each(pos, &bdev->active_bo_list) {
-               cnt++;
-               bo = list_to_hmm_bo(pos);
-               /* pass bo which has no vm_node allocated */
-               if (!hmm_bo_vm_allocated(bo))
-                       continue;
-               if (in_range(bo->vm_node->start, bo->vm_node->size, vaddr))
-                       goto found;
-       }
-       spin_unlock_irqrestore(&bdev->list_lock, flags);
-       return NULL;
-found:
-       if (cnt > HMM_BO_CACHE_SIZE)
-               list_move(pos, &bdev->active_bo_list);
-       spin_unlock_irqrestore(&bdev->list_lock, flags);
-       return bo;
-}
-
-struct hmm_buffer_object *
-hmm_bo_device_search_vmap_start(struct hmm_bo_device *bdev, const void *vaddr)
-{
-       struct list_head *pos;
-       struct hmm_buffer_object *bo;
-       unsigned long flags;
-
-       check_bodev_null_return(bdev, NULL);
-
-       spin_lock_irqsave(&bdev->list_lock, flags);
-       list_for_each(pos, &bdev->active_bo_list) {
-               bo = list_to_hmm_bo(pos);
-               /* pass bo which has no vm_node allocated */
-               if (!hmm_bo_vm_allocated(bo))
-                       continue;
-               if (bo->vmap_addr == vaddr)
-                       goto found;
-       }
-       spin_unlock_irqrestore(&bdev->list_lock, flags);
-       return NULL;
-found:
-       spin_unlock_irqrestore(&bdev->list_lock, flags);
-       return bo;
-}
-
-/*
- * find a buffer object with pgnr pages from free_bo_list and
- * activate it (remove from free_bo_list and add to
- * active_bo_list)
- *
- * return NULL if no such buffer object found.
- */
-struct hmm_buffer_object *hmm_bo_device_get_bo(struct hmm_bo_device *bdev,
-                                              unsigned int pgnr)
-{
-       struct list_head *pos;
-       struct hmm_buffer_object *bo;
-       unsigned long flags;
-
-       check_bodev_null_return(bdev, NULL);
-
-       spin_lock_irqsave(&bdev->list_lock, flags);
-       list_for_each(pos, &bdev->free_bo_list) {
-               bo = list_to_hmm_bo(pos);
-               if (bo->pgnr == pgnr)
-                       goto found;
-       }
-       spin_unlock_irqrestore(&bdev->list_lock, flags);
-       return NULL;
-found:
-       list_del(&bo->list);
-       list_add(&bo->list, &bdev->active_bo_list);
-       spin_unlock_irqrestore(&bdev->list_lock, flags);
-
-       return bo;
-}
-
-/*
- * destroy all buffer objects in the free_bo_list.
- */
-void hmm_bo_device_destroy_free_bo_list(struct hmm_bo_device *bdev)
-{
-       struct hmm_buffer_object *bo, *tmp;
-       unsigned long flags;
-       struct list_head new_head;
-
-       check_bodev_null_return_void(bdev);
-
-       spin_lock_irqsave(&bdev->list_lock, flags);
-       list_replace_init(&bdev->free_bo_list, &new_head);
-       spin_unlock_irqrestore(&bdev->list_lock, flags);
-
-       list_for_each_entry_safe(bo, tmp, &new_head, list) {
-               list_del(&bo->list);
-               hmm_bo_unref(bo);
-       }
-}
-
-/*
- * destroy buffer object with start virtual address vaddr.
- */
-void hmm_bo_device_destroy_free_bo_addr(struct hmm_bo_device *bdev,
-                                       unsigned int vaddr)
-{
-       struct list_head *pos;
-       struct hmm_buffer_object *bo;
-       unsigned long flags;
-
-       check_bodev_null_return_void(bdev);
-
-       spin_lock_irqsave(&bdev->list_lock, flags);
-       list_for_each(pos, &bdev->free_bo_list) {
-               bo = list_to_hmm_bo(pos);
-               /* pass bo which has no vm_node allocated */
-               if (!hmm_bo_vm_allocated(bo))
-                       continue;
-               if (bo->vm_node->start == vaddr)
-                       goto found;
-       }
-       spin_unlock_irqrestore(&bdev->list_lock, flags);
-       return;
-found:
-       list_del(&bo->list);
-       spin_unlock_irqrestore(&bdev->list_lock, flags);
-       hmm_bo_unref(bo);
-}
-
-/*
- * destroy all buffer objects with pgnr pages.
- */
-void hmm_bo_device_destroy_free_bo_size(struct hmm_bo_device *bdev,
-                                       unsigned int pgnr)
-{
-       struct list_head *pos;
-       struct hmm_buffer_object *bo;
-       unsigned long flags;
-
-       check_bodev_null_return_void(bdev);
-
-retry:
-       spin_lock_irqsave(&bdev->list_lock, flags);
-       list_for_each(pos, &bdev->free_bo_list) {
-               bo = list_to_hmm_bo(pos);
-               if (bo->pgnr == pgnr)
-                       goto found;
-       }
-       spin_unlock_irqrestore(&bdev->list_lock, flags);
-       return;
-found:
-       list_del(&bo->list);
-       spin_unlock_irqrestore(&bdev->list_lock, flags);
-       hmm_bo_unref(bo);
-       goto retry;
-}
diff --git a/drivers/staging/media/atomisp/pci/atomisp2/hrt/device_access.c 
b/drivers/staging/media/atomisp/pci/atomisp2/hrt/device_access.c
deleted file mode 100644
index c870266..0000000
--- a/drivers/staging/media/atomisp/pci/atomisp2/hrt/device_access.c
+++ /dev/null
@@ -1,116 +0,0 @@
-
-#include "device_access.h"
-
-#include "assert_support.h"
-
-#include <hrt/master_port.h>   /* hrt_master_port_load() */
-
-/*
- * This is an HRT backend implementation for CSIM
- */
-
-static sys_address             base_address = (sys_address)-1;
-
-void device_set_base_address(
-       const sys_address               base_addr)
-{
-       base_address = base_addr;
-return;
-}
-
-
-sys_address device_get_base_address(void)
-{
-return base_address;
-}
-
-uint8_t device_load_uint8(
-       const hrt_address               addr)
-{
-assert(base_address != (sys_address)-1);
-return hrt_master_port_uload_8(base_address + addr);
-}
-
-uint16_t device_load_uint16(
-       const hrt_address               addr)
-{
-assert(base_address != (sys_address)-1);
-assert((addr & 0x01) == 0);
-return hrt_master_port_uload_16(base_address + addr);
-}
-
-uint32_t device_load_uint32(
-       const hrt_address               addr)
-{
-assert(base_address != (sys_address)-1);
-assert((addr & 0x03) == 0);
-return hrt_master_port_uload_32(base_address + addr);
-}
-
-uint64_t device_load_uint64(
-       const hrt_address               addr)
-{
-assert(base_address != (sys_address)-1);
-assert((addr & 0x07) == 0);
-assert(0);
-return 0;
-}
-
-void device_store_uint8(
-       const hrt_address               addr,
-       const uint8_t                   data)
-{
-assert(base_address != (sys_address)-1);
-hrt_master_port_store_8(base_address + addr, data);
-return;
-}
-
-void device_store_uint16(
-       const hrt_address               addr,
-       const uint16_t                  data)
-{
-assert(base_address != (sys_address)-1);
-assert((addr & 0x01) == 0);
-hrt_master_port_store_16(base_address + addr, data);
-return;
-}
-
-void device_store_uint32(
-       const hrt_address               addr,
-       const uint32_t                  data)
-{
-assert(base_address != (sys_address)-1);
-assert((addr & 0x03) == 0);
-hrt_master_port_store_32(base_address + addr, data);
-return;
-}
-
-void device_store_uint64(
-       const hrt_address               addr,
-       const uint64_t                  data)
-{
-assert(base_address != (sys_address)-1);
-assert((addr & 0x07) == 0);
-assert(0);
-(void)data;
-return;
-}
-
-void device_load(
-       const hrt_address               addr,
-       void                                    *data,
-       const size_t                    size)
-{
-assert(base_address != (sys_address)-1);
-       hrt_master_port_load((uint32_t)(base_address + addr), data, size);
-}
-
-void device_store(
-       const hrt_address               addr,
-       const void                              *data,
-       const size_t                    size)
-{
-assert(base_address != (sys_address)-1);
-       hrt_master_port_store((uint32_t)(base_address + addr), data, size);
-return;
-}
diff --git a/drivers/staging/media/atomisp/pci/atomisp2/hrt/memory_access.c 
b/drivers/staging/media/atomisp/pci/atomisp2/hrt/memory_access.c
deleted file mode 100644
index 60e70cb..0000000
--- a/drivers/staging/media/atomisp/pci/atomisp2/hrt/memory_access.c
+++ /dev/null
@@ -1,103 +0,0 @@
-
-#include "memory_access.h"
-
-#include <stddef.h>            /* NULL */
-#include <stdbool.h>
-
-#include "device_access.h"
-
-#include "mmu_device.h"
-
-#include "assert_support.h"
-
-/* Presently system specific */
-#include <hmm/hmm.h>
-/* Presently system specific */
-#include "hive_isp_css_mm_hrt.h"
-
-/*
- * This is an HRT backend implementation for CSIM
- * 31 July 2012, rvanimme: this implementation is also used in Android context
- */
-
-static sys_address     page_table_base_address = (sys_address)-1;
-
-void mmgr_set_base_address(const sys_address base_addr)
-{
-       page_table_base_address = base_addr;
-
-/*
- * This is part of "device_access.h", but it may be
- * that "hive_isp_css_mm_hrt.h" requires it
- */
-/* hrt_isp_css_mm_set_ddr_address_offset(offset); */
-/*     mmu_set_page_table_base_index(MMU0_ID, page_table_base_address); */
-}
-
-ia_css_ptr mmgr_malloc(const size_t size)
-{
-       return mmgr_alloc_attr(size, MMGR_ATTRIBUTE_CACHED);
-}
-
-ia_css_ptr mmgr_calloc(const size_t N, const size_t size)
-{
-       return mmgr_alloc_attr(N * size,
-               MMGR_ATTRIBUTE_CLEARED|MMGR_ATTRIBUTE_CACHED);
-}
-
-ia_css_ptr mmgr_alloc_attr(const size_t        size, const uint16_t attribute)
-{
-       ia_css_ptr      ptr;
-       size_t  extra_space = 0;
-       size_t  aligned_size = size;
-
-       assert(page_table_base_address != (sys_address)-1);
-       assert((attribute & MMGR_ATTRIBUTE_UNUSED) == 0);
-       WARN_ON(attribute & MMGR_ATTRIBUTE_CONTIGUOUS);
-
-       if (attribute & MMGR_ATTRIBUTE_CLEARED) {
-               if (attribute & MMGR_ATTRIBUTE_CACHED) {
-                       ptr = hrt_isp_css_mm_calloc_cached(
-                                               aligned_size + extra_space);
-               } else { /* !MMGR_ATTRIBUTE_CACHED */
-                       ptr = hrt_isp_css_mm_calloc(
-                                               aligned_size + extra_space);
-               }
-       } else { /* MMGR_ATTRIBUTE_CLEARED */
-               if (attribute & MMGR_ATTRIBUTE_CACHED) {
-                       ptr = hrt_isp_css_mm_alloc_cached(
-                                               aligned_size + extra_space);
-               } else { /* !MMGR_ATTRIBUTE_CACHED */
-                       ptr = hrt_isp_css_mm_alloc(
-                                       aligned_size + extra_space);
-               }
-       }
-       return ptr;
-}
-
-ia_css_ptr mmgr_mmap(const void *ptr, const size_t size, uint16_t attribute,
-               void *context)
-{
-       struct hrt_userbuffer_attr *userbuffer_attr = context;
-       return hrt_isp_css_mm_alloc_user_ptr(size, (void *)ptr,
-                                       userbuffer_attr->pgnr,
-                                       userbuffer_attr->type,
-                                       attribute & HRT_BUF_FLAG_CACHED);
-}
-
-void mmgr_clear(
-       ia_css_ptr                      vaddr,
-       const size_t                    size)
-{
-       hmm_set(vaddr, 0, size);
-}
-
-void mmgr_load(const ia_css_ptr        vaddr, void *data, const size_t size)
-{
-       hmm_load(vaddr, data, size);
-}
-
-void mmgr_store(const ia_css_ptr vaddr,        const void *data, const size_t 
size)
-{
-       hmm_store(vaddr, data, size);
-}

Reply via email to