staging:ti dspbridge: remove bridge_brd_delete function
Remove bridge_brd_delete() function since it is doing the same that bridge_brd_stop(). Signed-off-by: Ernesto Ramos <ernesto@ernesto-desktop.(none)> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
a2205e487e
commit
7c9305b80c
1 changed files with 1 additions and 56 deletions
|
@ -685,61 +685,6 @@ static int bridge_brd_stop(struct bridge_dev_context *dev_ctxt)
|
||||||
return status;
|
return status;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* ======== bridge_brd_delete ========
|
|
||||||
* purpose:
|
|
||||||
* Puts DSP in Low power mode
|
|
||||||
*
|
|
||||||
* Preconditions :
|
|
||||||
* a) None
|
|
||||||
*/
|
|
||||||
static int bridge_brd_delete(struct bridge_dev_context *dev_ctxt)
|
|
||||||
{
|
|
||||||
int status = 0;
|
|
||||||
struct bridge_dev_context *dev_context = dev_ctxt;
|
|
||||||
struct pg_table_attrs *pt_attrs;
|
|
||||||
int clk_status;
|
|
||||||
struct dspbridge_platform_data *pdata =
|
|
||||||
omap_dspbridge_dev->dev.platform_data;
|
|
||||||
|
|
||||||
if (dev_context->dw_brd_state == BRD_STOPPED)
|
|
||||||
return status;
|
|
||||||
|
|
||||||
/* as per TRM, it is advised to first drive
|
|
||||||
* the IVA2 to 'Standby' mode, before turning off the clocks.. This is
|
|
||||||
* to ensure that there are no pending L3 or other transactons from
|
|
||||||
* IVA2 */
|
|
||||||
status = sleep_dsp(dev_context, PWR_EMERGENCYDEEPSLEEP, NULL);
|
|
||||||
clk_status = dsp_clk_disable(DSP_CLK_IVA2);
|
|
||||||
|
|
||||||
/* Release the Ext Base virtual Address as the next DSP Program
|
|
||||||
* may have a different load address */
|
|
||||||
if (dev_context->dw_dsp_ext_base_addr)
|
|
||||||
dev_context->dw_dsp_ext_base_addr = 0;
|
|
||||||
|
|
||||||
dev_context->dw_brd_state = BRD_STOPPED; /* update board state */
|
|
||||||
|
|
||||||
/* This is a good place to clear the MMU page tables as well */
|
|
||||||
if (dev_context->pt_attrs) {
|
|
||||||
pt_attrs = dev_context->pt_attrs;
|
|
||||||
memset((u8 *) pt_attrs->l1_base_va, 0x00, pt_attrs->l1_size);
|
|
||||||
memset((u8 *) pt_attrs->l2_base_va, 0x00, pt_attrs->l2_size);
|
|
||||||
memset((u8 *) pt_attrs->pg_info, 0x00,
|
|
||||||
(pt_attrs->l2_num_pages * sizeof(struct page_info)));
|
|
||||||
}
|
|
||||||
/* Disable the mail box interrupts */
|
|
||||||
if (dev_context->mbox) {
|
|
||||||
omap_mbox_disable_irq(dev_context->mbox, IRQ_RX);
|
|
||||||
omap_mbox_put(dev_context->mbox);
|
|
||||||
dev_context->mbox = NULL;
|
|
||||||
}
|
|
||||||
/* Reset IVA2 clocks*/
|
|
||||||
(*pdata->dsp_prm_write)(OMAP3430_RST1_IVA2_MASK | OMAP3430_RST2_IVA2_MASK |
|
|
||||||
OMAP3430_RST3_IVA2_MASK, OMAP3430_IVA2_MOD, OMAP2_RM_RSTCTRL);
|
|
||||||
|
|
||||||
return status;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* ======== bridge_brd_status ========
|
* ======== bridge_brd_status ========
|
||||||
* Returns the board status.
|
* Returns the board status.
|
||||||
|
@ -1023,7 +968,7 @@ static int bridge_dev_destroy(struct bridge_dev_context *dev_ctxt)
|
||||||
return -EFAULT;
|
return -EFAULT;
|
||||||
|
|
||||||
/* first put the device to stop state */
|
/* first put the device to stop state */
|
||||||
bridge_brd_delete(dev_context);
|
bridge_brd_stop(dev_context);
|
||||||
if (dev_context->pt_attrs) {
|
if (dev_context->pt_attrs) {
|
||||||
pt_attrs = dev_context->pt_attrs;
|
pt_attrs = dev_context->pt_attrs;
|
||||||
kfree(pt_attrs->pg_info);
|
kfree(pt_attrs->pg_info);
|
||||||
|
|
Loading…
Reference in a new issue