diff options
author | Felipe Contreras | 2010-07-04 15:34:29 +0200 |
---|---|---|
committer | Greg Kroah-Hartman | 2010-07-08 22:33:00 +0200 |
commit | 0d8631d2907092a4a58b93bdc636eb6ee001cf03 (patch) | |
tree | 558cec3c0d1a8a8a9f26a1924b60fd20ab3bb9ec /drivers/staging | |
parent | staging: ti dspbridge: mmufault: trivial cleanups (diff) | |
download | kernel-qcow2-linux-0d8631d2907092a4a58b93bdc636eb6ee001cf03.tar.gz kernel-qcow2-linux-0d8631d2907092a4a58b93bdc636eb6ee001cf03.tar.xz kernel-qcow2-linux-0d8631d2907092a4a58b93bdc636eb6ee001cf03.zip |
staging: ti dspbridge: deh: free dummy page immediately
There's no need to keep it around. DSP should stop trying to access
system memory.
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging')
-rw-r--r-- | drivers/staging/tidspbridge/core/ue_deh.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/staging/tidspbridge/core/ue_deh.c b/drivers/staging/tidspbridge/core/ue_deh.c index ee2d23a9fe20..50868a4b7750 100644 --- a/drivers/staging/tidspbridge/core/ue_deh.c +++ b/drivers/staging/tidspbridge/core/ue_deh.c @@ -52,8 +52,6 @@ #include <dspbridge/io_sm.h> -static void *dummy_va_addr; - int bridge_deh_create(struct deh_mgr **ret_deh_mgr, struct dev_object *hdev_obj) { @@ -154,6 +152,7 @@ void bridge_deh_notify(struct deh_mgr *deh_mgr, u32 ulEventMask, u32 dwErrInfo) .element_size = HW_ELEM_SIZE16BIT, .mixed_size = HW_MMU_CPUES, }; + void *dummy_va_addr; if (!deh_mgr) return; @@ -214,6 +213,9 @@ void bridge_deh_notify(struct deh_mgr *deh_mgr, u32 ulEventMask, u32 dwErrInfo) HW_MMU_TRANSLATION_FAULT); dump_dsp_stack(dev_context); dsp_clk_disable(DSP_CLK_GPT8); + + hw_mmu_disable(resources->dw_dmmu_base); + free_page((unsigned long)dummy_va_addr); break; #ifdef CONFIG_BRIDGE_NTFY_PWRERR case DSP_PWRERROR: @@ -276,6 +278,4 @@ int bridge_deh_get_info(struct deh_mgr *deh_mgr, void bridge_deh_release_dummy_mem(void) { - free_page((unsigned long)dummy_va_addr); - dummy_va_addr = NULL; } |