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

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

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
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -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);

+0 −4
Original line number Diff line number Diff line
@@ -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
+1 −3
Original line number Diff line number Diff line
@@ -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.
+2 −11
Original line number Diff line number Diff line
@@ -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;
	}

+0 −15
Original line number Diff line number Diff line
@@ -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,