Linux_SDK_V1.1.2

This commit is contained in:
thead_admin
2023-03-05 22:29:47 +08:00
parent 0ddf19e367
commit 2ed30c5ba9
2 changed files with 19 additions and 12 deletions

View File

@@ -2496,14 +2496,20 @@ static int decoder_hantrodec_remove(struct platform_device *pdev)
root_debugfs_dir = NULL;
}
pm_runtime_resume_and_get(&pdev->dev);
if(irq[0] > 0)
{
free_irq(irq[0],(void *) &hantrodec_data);
}
if(irq[1] > 0)
{
free_irq(irq[1],(void *) &hantrodec_data);
}
/* When vcmd is true, irq free in hantrovcmd_cleanup!
When vcmd is flase, it is not need because in line 2528 freed */
#if 0
if(!vcmd){
if(irq[0] > 0)
{
free_irq(irq[0],(void *) &hantrodec_data);
}
if(irq[1] > 0)
{
free_irq(irq[1],(void *) &hantrodec_data);
}
}
#endif
hantrodec_t *dev = &hantrodec_data;
int i, n =0;
volatile u8* mmu_hwregs[MAX_SUBSYS_NUM][2];

View File

@@ -1188,11 +1188,12 @@ enum MMUStatus MMUCleanup(volatile unsigned char *hwregs[MAX_SUBSYS_NUM][2]) {
if (g_mmu->page_table_array)
iounmap(g_mmu->page_table_array);
} else {
if (g_mmu->stlb_virtual)
dma_free_coherent(&platformdev->dev, g_mmu->stlb_size,
g_mmu->stlb_virtual, (dma_addr_t)g_mmu->stlb_physical);
/* stlb_virtual is same alloc on alloc mtlb_virtual in func MMUEnable()
* so, should not free g_mmu->stlb_virtual.But free handle g_mmu->mtlb_physical
* size should be ( g_mmu->mtlb_size+g_mmu->stlb_size)
*/
if (g_mmu->mtlb_virtual)
dma_free_coherent(&platformdev->dev, g_mmu->mtlb_size,
dma_free_coherent(&platformdev->dev, g_mmu->mtlb_size+g_mmu->stlb_size,
g_mmu->mtlb_virtual, (dma_addr_t)g_mmu->mtlb_physical);
if (g_mmu->page_table_array)
dma_free_coherent(&platformdev->dev, g_mmu->page_table_array_size,