summaryrefslogtreecommitdiff
path: root/src/mainboard/lenovo/x60/dock.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mainboard/lenovo/x60/dock.c')
-rw-r--r--src/mainboard/lenovo/x60/dock.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/mainboard/lenovo/x60/dock.c b/src/mainboard/lenovo/x60/dock.c
index 49e2d21b1f..eed00a1a26 100644
--- a/src/mainboard/lenovo/x60/dock.c
+++ b/src/mainboard/lenovo/x60/dock.c
@@ -132,10 +132,12 @@ int dock_connect(void)
/* Assert D_PLTRST# */
outb(0xfe, 0x1680);
- udelay(1000);
+ udelay(100000);
/* Deassert D_PLTRST# */
outb(0xff, 0x1680);
+ udelay(1000);
+
/* startup 14.318MHz Clock */
dock_write_register(0x29, 0x06);
/* wait until clock is settled */
@@ -232,11 +234,17 @@ int dock_connect(void)
/* Enable USB and Ultrabay power */
outb(0x03, 0x1628);
+
+ dock_write_register(0x07, 0x03);
+ dock_write_register(0x30, 0x01);
+ console_init();
return 0;
}
void dock_disconnect(void)
{
+ /* disable Ultrabay and USB Power */
+ outb(0x00, 0x1628);
/* disconnect LPC bus */
outb(0x00, 0x164c);
/* Assert PLTRST and DLPCPD */