aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorErnesto Ramos <ernesto@ernesto-desktop.(none)>2010-07-28 10:54:55 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2010-07-28 11:23:20 -0400
commit7c9305b80cb81c94d12c7109f8abfe4bc5b08a23 (patch)
tree0facdce5080b35abdae1a477b10ea7c70adc3840
parenta2205e487eb0a8af0bfc421038f1777ca6603ac4 (diff)
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>
-rw-r--r--drivers/staging/tidspbridge/core/tiomap3430.c57
1 files changed, 1 insertions, 56 deletions
diff --git a/drivers/staging/tidspbridge/core/tiomap3430.c b/drivers/staging/tidspbridge/core/tiomap3430.c
index e7584deb191e..f914829c70f5 100644
--- a/drivers/staging/tidspbridge/core/tiomap3430.c
+++ b/drivers/staging/tidspbridge/core/tiomap3430.c
@@ -686,61 +686,6 @@ static int bridge_brd_stop(struct bridge_dev_context *dev_ctxt)
686} 686}
687 687
688/* 688/*
689 * ======== bridge_brd_delete ========
690 * purpose:
691 * Puts DSP in Low power mode
692 *
693 * Preconditions :
694 * a) None
695 */
696static int bridge_brd_delete(struct bridge_dev_context *dev_ctxt)
697{
698 int status = 0;
699 struct bridge_dev_context *dev_context = dev_ctxt;
700 struct pg_table_attrs *pt_attrs;
701 int clk_status;
702 struct dspbridge_platform_data *pdata =
703 omap_dspbridge_dev->dev.platform_data;
704
705 if (dev_context->dw_brd_state == BRD_STOPPED)
706 return status;
707
708 /* as per TRM, it is advised to first drive
709 * the IVA2 to 'Standby' mode, before turning off the clocks.. This is
710 * to ensure that there are no pending L3 or other transactons from
711 * IVA2 */
712 status = sleep_dsp(dev_context, PWR_EMERGENCYDEEPSLEEP, NULL);
713 clk_status = dsp_clk_disable(DSP_CLK_IVA2);
714
715 /* Release the Ext Base virtual Address as the next DSP Program
716 * may have a different load address */
717 if (dev_context->dw_dsp_ext_base_addr)
718 dev_context->dw_dsp_ext_base_addr = 0;
719
720 dev_context->dw_brd_state = BRD_STOPPED; /* update board state */
721
722 /* This is a good place to clear the MMU page tables as well */
723 if (dev_context->pt_attrs) {
724 pt_attrs = dev_context->pt_attrs;
725 memset((u8 *) pt_attrs->l1_base_va, 0x00, pt_attrs->l1_size);
726 memset((u8 *) pt_attrs->l2_base_va, 0x00, pt_attrs->l2_size);
727 memset((u8 *) pt_attrs->pg_info, 0x00,
728 (pt_attrs->l2_num_pages * sizeof(struct page_info)));
729 }
730 /* Disable the mail box interrupts */
731 if (dev_context->mbox) {
732 omap_mbox_disable_irq(dev_context->mbox, IRQ_RX);
733 omap_mbox_put(dev_context->mbox);
734 dev_context->mbox = NULL;
735 }
736 /* Reset IVA2 clocks*/
737 (*pdata->dsp_prm_write)(OMAP3430_RST1_IVA2_MASK | OMAP3430_RST2_IVA2_MASK |
738 OMAP3430_RST3_IVA2_MASK, OMAP3430_IVA2_MOD, OMAP2_RM_RSTCTRL);
739
740 return status;
741}
742
743/*
744 * ======== bridge_brd_status ======== 689 * ======== bridge_brd_status ========
745 * Returns the board status. 690 * Returns the board status.
746 */ 691 */
@@ -1023,7 +968,7 @@ static int bridge_dev_destroy(struct bridge_dev_context *dev_ctxt)
1023 return -EFAULT; 968 return -EFAULT;
1024 969
1025 /* first put the device to stop state */ 970 /* first put the device to stop state */
1026 bridge_brd_delete(dev_context); 971 bridge_brd_stop(dev_context);
1027 if (dev_context->pt_attrs) { 972 if (dev_context->pt_attrs) {
1028 pt_attrs = dev_context->pt_attrs; 973 pt_attrs = dev_context->pt_attrs;
1029 kfree(pt_attrs->pg_info); 974 kfree(pt_attrs->pg_info);