Commit de9e24ed authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'staging-3.4-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging

Pull staging tree fixes from Greg Kroah-Hartman:
 "Here are some tiny drivers/staging/ bugfixes.  Some build fixes that
  were recently reported, as well as one kfree bug that is hitting a
  number of users."

* tag 'staging-3.4-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
  staging: ozwpan: Fix bug where kfree is called twice.
  staging: octeon-ethernet: fix build errors by including interrupt.h
  staging: zcache: fix Kconfig crypto dependency
  staging: tidspbridge: remove usage of OMAP2_L4_IO_ADDRESS
parents 8d7d1adc 89f21cc0
...@@ -36,6 +36,7 @@ ...@@ -36,6 +36,7 @@
#include <linux/prefetch.h> #include <linux/prefetch.h>
#include <linux/ratelimit.h> #include <linux/ratelimit.h>
#include <linux/smp.h> #include <linux/smp.h>
#include <linux/interrupt.h>
#include <net/dst.h> #include <net/dst.h>
#ifdef CONFIG_XFRM #ifdef CONFIG_XFRM
#include <linux/xfrm.h> #include <linux/xfrm.h>
......
...@@ -32,6 +32,7 @@ ...@@ -32,6 +32,7 @@
#include <linux/ip.h> #include <linux/ip.h>
#include <linux/ratelimit.h> #include <linux/ratelimit.h>
#include <linux/string.h> #include <linux/string.h>
#include <linux/interrupt.h>
#include <net/dst.h> #include <net/dst.h>
#ifdef CONFIG_XFRM #ifdef CONFIG_XFRM
#include <linux/xfrm.h> #include <linux/xfrm.h>
......
...@@ -31,6 +31,7 @@ ...@@ -31,6 +31,7 @@
#include <linux/etherdevice.h> #include <linux/etherdevice.h>
#include <linux/phy.h> #include <linux/phy.h>
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/interrupt.h>
#include <net/dst.h> #include <net/dst.h>
......
...@@ -383,8 +383,6 @@ static void oz_tx_frame_free(struct oz_pd *pd, struct oz_tx_frame *f) ...@@ -383,8 +383,6 @@ static void oz_tx_frame_free(struct oz_pd *pd, struct oz_tx_frame *f)
pd->tx_pool = &f->link; pd->tx_pool = &f->link;
pd->tx_pool_count++; pd->tx_pool_count++;
f = 0; f = 0;
} else {
kfree(f);
} }
spin_unlock_bh(&pd->tx_frame_lock); spin_unlock_bh(&pd->tx_frame_lock);
if (f) if (f)
......
...@@ -79,10 +79,6 @@ ...@@ -79,10 +79,6 @@
#define OMAP343X_CONTROL_IVA2_BOOTADDR (OMAP2_CONTROL_GENERAL + 0x0190) #define OMAP343X_CONTROL_IVA2_BOOTADDR (OMAP2_CONTROL_GENERAL + 0x0190)
#define OMAP343X_CONTROL_IVA2_BOOTMOD (OMAP2_CONTROL_GENERAL + 0x0194) #define OMAP343X_CONTROL_IVA2_BOOTMOD (OMAP2_CONTROL_GENERAL + 0x0194)
#define OMAP343X_CTRL_REGADDR(reg) \
OMAP2_L4_IO_ADDRESS(OMAP343X_CTRL_BASE + (reg))
/* Forward Declarations: */ /* Forward Declarations: */
static int bridge_brd_monitor(struct bridge_dev_context *dev_ctxt); static int bridge_brd_monitor(struct bridge_dev_context *dev_ctxt);
static int bridge_brd_read(struct bridge_dev_context *dev_ctxt, static int bridge_brd_read(struct bridge_dev_context *dev_ctxt,
...@@ -418,19 +414,27 @@ static int bridge_brd_start(struct bridge_dev_context *dev_ctxt, ...@@ -418,19 +414,27 @@ static int bridge_brd_start(struct bridge_dev_context *dev_ctxt,
/* Assert RST1 i.e only the RST only for DSP megacell */ /* Assert RST1 i.e only the RST only for DSP megacell */
if (!status) { if (!status) {
/*
* XXX: ioremapping MUST be removed once ctrl
* function is made available.
*/
void __iomem *ctrl = ioremap(OMAP343X_CTRL_BASE, SZ_4K);
if (!ctrl)
return -ENOMEM;
(*pdata->dsp_prm_rmw_bits)(OMAP3430_RST1_IVA2_MASK, (*pdata->dsp_prm_rmw_bits)(OMAP3430_RST1_IVA2_MASK,
OMAP3430_RST1_IVA2_MASK, OMAP3430_IVA2_MOD, OMAP3430_RST1_IVA2_MASK, OMAP3430_IVA2_MOD,
OMAP2_RM_RSTCTRL); OMAP2_RM_RSTCTRL);
/* Mask address with 1K for compatibility */ /* Mask address with 1K for compatibility */
__raw_writel(dsp_addr & OMAP3_IVA2_BOOTADDR_MASK, __raw_writel(dsp_addr & OMAP3_IVA2_BOOTADDR_MASK,
OMAP343X_CTRL_REGADDR( ctrl + OMAP343X_CONTROL_IVA2_BOOTADDR);
OMAP343X_CONTROL_IVA2_BOOTADDR));
/* /*
* Set bootmode to self loop if dsp_debug flag is true * Set bootmode to self loop if dsp_debug flag is true
*/ */
__raw_writel((dsp_debug) ? OMAP3_IVA2_BOOTMOD_IDLE : 0, __raw_writel((dsp_debug) ? OMAP3_IVA2_BOOTMOD_IDLE : 0,
OMAP343X_CTRL_REGADDR( ctrl + OMAP343X_CONTROL_IVA2_BOOTMOD);
OMAP343X_CONTROL_IVA2_BOOTMOD));
iounmap(ctrl);
} }
} }
if (!status) { if (!status) {
......
...@@ -53,7 +53,10 @@ int dsp_wdt_init(void) ...@@ -53,7 +53,10 @@ int dsp_wdt_init(void)
int ret = 0; int ret = 0;
dsp_wdt.sm_wdt = NULL; dsp_wdt.sm_wdt = NULL;
dsp_wdt.reg_base = OMAP2_L4_IO_ADDRESS(OMAP34XX_WDT3_BASE); dsp_wdt.reg_base = ioremap(OMAP34XX_WDT3_BASE, SZ_4K);
if (!dsp_wdt.reg_base)
return -ENOMEM;
tasklet_init(&dsp_wdt.wdt3_tasklet, dsp_wdt_dpc, 0); tasklet_init(&dsp_wdt.wdt3_tasklet, dsp_wdt_dpc, 0);
dsp_wdt.fclk = clk_get(NULL, "wdt3_fck"); dsp_wdt.fclk = clk_get(NULL, "wdt3_fck");
...@@ -99,6 +102,9 @@ void dsp_wdt_exit(void) ...@@ -99,6 +102,9 @@ void dsp_wdt_exit(void)
dsp_wdt.fclk = NULL; dsp_wdt.fclk = NULL;
dsp_wdt.iclk = NULL; dsp_wdt.iclk = NULL;
dsp_wdt.sm_wdt = NULL; dsp_wdt.sm_wdt = NULL;
if (dsp_wdt.reg_base)
iounmap(dsp_wdt.reg_base);
dsp_wdt.reg_base = NULL; dsp_wdt.reg_base = NULL;
} }
......
...@@ -2,7 +2,7 @@ config ZCACHE ...@@ -2,7 +2,7 @@ config ZCACHE
bool "Dynamic compression of swap pages and clean pagecache pages" bool "Dynamic compression of swap pages and clean pagecache pages"
# X86 dependency is because zsmalloc uses non-portable pte/tlb # X86 dependency is because zsmalloc uses non-portable pte/tlb
# functions # functions
depends on (CLEANCACHE || FRONTSWAP) && CRYPTO && X86 depends on (CLEANCACHE || FRONTSWAP) && CRYPTO=y && X86
select ZSMALLOC select ZSMALLOC
select CRYPTO_LZO select CRYPTO_LZO
default n default n
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment