Skip to content

Commit

Permalink
staging:ti dspbridge: remove bridge_brd_delete function
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
Ernesto Ramos authored and Greg Kroah-Hartman committed Jul 28, 2010
1 parent a2205e4 commit 7c9305b
Showing 1 changed file with 1 addition and 56 deletions.
57 changes: 1 addition & 56 deletions drivers/staging/tidspbridge/core/tiomap3430.c
Original file line number Diff line number Diff line change
Expand Up @@ -685,61 +685,6 @@ static int bridge_brd_stop(struct bridge_dev_context *dev_ctxt)
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 ========
* Returns the board status.
Expand Down Expand Up @@ -1023,7 +968,7 @@ static int bridge_dev_destroy(struct bridge_dev_context *dev_ctxt)
return -EFAULT;

/* first put the device to stop state */
bridge_brd_delete(dev_context);
bridge_brd_stop(dev_context);
if (dev_context->pt_attrs) {
pt_attrs = dev_context->pt_attrs;
kfree(pt_attrs->pg_info);
Expand Down

0 comments on commit 7c9305b

Please sign in to comment.