aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorAjay Kumar Gupta <ajay.gupta@ti.com>2010-03-25 07:14:26 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2010-04-30 12:25:08 -0400
commit5e0e61afa5b342c0197fce2d4fd2a2b515e96b31 (patch)
tree3ee1f94b1998e90588d8f4968d3c1e3cc08f5511 /drivers
parent2f831751c5a0511fec6a9074643d9914eedabc83 (diff)
musb: save and restore missing bus control register
Added the missing BUS_CONTROL register in musb save/restore routines. Signed-off-by: Ajay Kumar Gupta <ajay.gupta@ti.com> Signed-off-by: Felipe Balbi <felipe.balbi@nokia.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/usb/musb/musb_core.c2
-rw-r--r--drivers/usb/musb/musb_core.h2
2 files changed, 3 insertions, 1 deletions
diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c
index 0e8b8ab1d168..3342b82d4e53 100644
--- a/drivers/usb/musb/musb_core.c
+++ b/drivers/usb/musb/musb_core.c
@@ -2176,6 +2176,7 @@ void musb_save_context(struct musb *musb)
2176 if (is_host_enabled(musb)) { 2176 if (is_host_enabled(musb)) {
2177 musb_context.frame = musb_readw(musb_base, MUSB_FRAME); 2177 musb_context.frame = musb_readw(musb_base, MUSB_FRAME);
2178 musb_context.testmode = musb_readb(musb_base, MUSB_TESTMODE); 2178 musb_context.testmode = musb_readb(musb_base, MUSB_TESTMODE);
2179 musb_context.busctl = musb_read_ulpi_buscontrol(musb->mregs);
2179 } 2180 }
2180 musb_context.power = musb_readb(musb_base, MUSB_POWER); 2181 musb_context.power = musb_readb(musb_base, MUSB_POWER);
2181 musb_context.intrtxe = musb_readw(musb_base, MUSB_INTRTXE); 2182 musb_context.intrtxe = musb_readw(musb_base, MUSB_INTRTXE);
@@ -2247,6 +2248,7 @@ void musb_restore_context(struct musb *musb)
2247 if (is_host_enabled(musb)) { 2248 if (is_host_enabled(musb)) {
2248 musb_writew(musb_base, MUSB_FRAME, musb_context.frame); 2249 musb_writew(musb_base, MUSB_FRAME, musb_context.frame);
2249 musb_writeb(musb_base, MUSB_TESTMODE, musb_context.testmode); 2250 musb_writeb(musb_base, MUSB_TESTMODE, musb_context.testmode);
2251 musb_write_ulpi_buscontrol(musb->mregs, musb_context.busctl);
2250 } 2252 }
2251 musb_writeb(musb_base, MUSB_POWER, musb_context.power); 2253 musb_writeb(musb_base, MUSB_POWER, musb_context.power);
2252 musb_writew(musb_base, MUSB_INTRTXE, musb_context.intrtxe); 2254 musb_writew(musb_base, MUSB_INTRTXE, musb_context.intrtxe);
diff --git a/drivers/usb/musb/musb_core.h b/drivers/usb/musb/musb_core.h
index cd9f4a9a06c6..ac17b004909b 100644
--- a/drivers/usb/musb/musb_core.h
+++ b/drivers/usb/musb/musb_core.h
@@ -478,7 +478,7 @@ struct musb_context_registers {
478 u16 frame; 478 u16 frame;
479 u8 index, testmode; 479 u8 index, testmode;
480 480
481 u8 devctl, misc; 481 u8 devctl, busctl, misc;
482 482
483 struct musb_csr_regs index_regs[MUSB_C_NUM_EPS]; 483 struct musb_csr_regs index_regs[MUSB_C_NUM_EPS];
484}; 484};