[coreboot-gerrit] New patch to review for coreboot: soc/apollolake: Force USB Port 0 to host mode (disable OTG)

Alexandru Gagniuc (alexandrux.gagniuc@intel.com) gerrit at coreboot.org
Fri Jun 3 21:48:36 CEST 2016


Alexandru Gagniuc (alexandrux.gagniuc at intel.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/15064

-gerrit

commit 385fcb0b36462f9fab537ef4e480d8fb3ed59fc1
Author: Alexandru Gagniuc <alexandrux.gagniuc at intel.com>
Date:   Wed May 4 17:10:27 2016 -0700

    soc/apollolake: Force USB Port 0 to host mode (disable OTG)
    
    Due to a hardware bug, automatic OTG negiotiaion does not work, and
    USB port 0 is unusable. The workaround is to disable OTG mode, which
    forces the port into host mode. In host mode, it operates normally
    via the XHCI interface.
    
    Change-Id: I983ebcc42647d224d1e4cde46e7a74b0474f04d7
    Signed-off-by: Alexandru Gagniuc <alexandrux.gagniuc at intel.com>
---
 src/soc/intel/apollolake/chip.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/soc/intel/apollolake/chip.c b/src/soc/intel/apollolake/chip.c
index d7c61c1..248182b 100644
--- a/src/soc/intel/apollolake/chip.c
+++ b/src/soc/intel/apollolake/chip.c
@@ -101,6 +101,9 @@ void platform_fsp_silicon_init_params_cb(struct FSPS_UPD *silupd)
 	silconfig->GraphicsConfigPtr = (uintptr_t)vbt;
 
 	struct device *dev = dev_find_slot(NB_BUS, NB_DEVFN);
+	/* Force USB_P0 to host mode. (hardware bug: OTG negotiation fails). */
+	silconfig->UsbOtg = 0;
+
 	if (!dev || !dev->chip_info) {
 		printk(BIOS_ERR, "BUG! Could not find SOC devicetree config\n");
 		return;



More information about the coreboot-gerrit mailing list