Commit 849267df authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab

media: staging: atomisp: remove unused set_pd_base()

There's an implementation for set_pd_base at sh_mmu logic
with is said to be mandatory. However, the implementation
ends by calling a routine that does nothing.

So get rid of this entire nonsense.
Acked-by: default avatarSakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
parent f10127cd
......@@ -182,8 +182,6 @@ void atomisp_css_mmu_invalidate_cache(void);
void atomisp_css_mmu_invalidate_tlb(void);
void atomisp_css_mmu_set_page_table_base_index(unsigned long base_index);
int atomisp_css_start(struct atomisp_sub_device *asd,
enum atomisp_css_pipe_id pipe_id, bool in_reset);
......
......@@ -1159,10 +1159,6 @@ void atomisp_css_mmu_invalidate_tlb(void)
ia_css_mmu_invalidate_cache();
}
void atomisp_css_mmu_set_page_table_base_index(unsigned long base_index)
{
}
/*
* Check whether currently running MIPI buffer size fulfill
* the requirement of the stream to be run
......
......@@ -80,12 +80,10 @@ struct isp_mmu_client {
unsigned int null_pte;
/*
* set/get page directory base address (physical address).
* get page directory base address (physical address).
*
* must be provided.
*/
int (*set_pd_base) (struct isp_mmu *mmu,
phys_addr_t pd_base);
unsigned int (*get_pd_base) (struct isp_mmu *mmu, phys_addr_t pd_base);
/*
* callback to flush tlb.
......
......@@ -344,13 +344,6 @@ static int mmu_map(struct isp_mmu *mmu, unsigned int isp_virt,
/*
* setup L1 page table physical addr to MMU
*/
ret = mmu->driver->set_pd_base(mmu, l1_pt);
if (ret) {
dev_err(atomisp_dev,
"set page directory base address fail.\n");
mutex_unlock(&mmu->pt_mutex);
return ret;
}
mmu->base_address = l1_pt;
mmu->l1_pte = isp_pgaddr_to_pte_valid(mmu, l1_pt);
memset(mmu->l2_pgt_refcount, 0, sizeof(int) * ISP_L1PT_PTES);
......@@ -531,10 +524,8 @@ int isp_mmu_init(struct isp_mmu *mmu, struct isp_mmu_client *driver)
mmu->driver = driver;
if (!driver->set_pd_base || !driver->tlb_flush_all) {
dev_err(atomisp_dev,
"set_pd_base or tlb_flush_all operation "
"not provided.\n");
if (!driver->tlb_flush_all) {
dev_err(atomisp_dev, "tlb_flush_all operation not provided.\n");
return -EINVAL;
}
......
......@@ -40,20 +40,6 @@ static phys_addr_t sh_pte_to_phys(struct isp_mmu *mmu,
return (phys_addr_t)((pte & ~mask) << ISP_PAGE_OFFSET);
}
/*
* set page directory base address (physical address).
*
* must be provided.
*/
static int sh_set_pd_base(struct isp_mmu *mmu,
phys_addr_t phys)
{
unsigned int pte = sh_phys_to_pte(mmu, phys);
/*mmgr_set_base_address(HOST_ADDRESS(pte));*/
atomisp_css_mmu_set_page_table_base_index(HOST_ADDRESS(pte));
return 0;
}
static unsigned int sh_get_pd_base(struct isp_mmu *mmu,
phys_addr_t phys)
{
......@@ -81,7 +67,6 @@ struct isp_mmu_client sh_mmu_mrfld = {
.name = "Silicon Hive ISP3000 MMU",
.pte_valid_mask = MERR_VALID_PTE_MASK,
.null_pte = ~MERR_VALID_PTE_MASK,
.set_pd_base = sh_set_pd_base,
.get_pd_base = sh_get_pd_base,
.tlb_flush_all = sh_tlb_flush,
.phys_to_pte = sh_phys_to_pte,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment