Dies ist ein bisschen langwierig, aber ich hoffe, jemand hat Zugriff auf das vollständige Datenblatt für einen der im Titel aufgelisteten Chips und kann mir sagen, durch welche Kombination von VBUS_IN und Widerständen auf ID_CON der BOOT-Pin ausgelöst wird auf dem Chip. Leider wird Fairchild nicht das vollständige Datenblatt für diese Chips veröffentlichen (ich habe gefragt), und im Web ist nur eine Kurzversion (PDF-Link) verfügbar.
Lange Geschichte: Der FSA9480-Chip wird bei einigen Samsung-Handys verwendet, um mithilfe von Messwiderständen am ID-Pin des USB-Anschlusses verschiedenes Zubehör zu erkennen. Durch Informationen aus der Android-Kernelquelle des Telefons haben wir bereits große Fortschritte erzielt. Jetzt versuchen wir, die CPU des Telefons in einen Boot-Wiederherstellungsmodus zu zwingen, der es dazu bringt, einen externen Bootloader vom seriellen Port zu laden, und es sieht so aus, als ob der BOOT-Pin am FSA9480 dies tun könnte, aber wir können nicht herausfinden, wie um es auszulösen.
Bisher habe ich alle Widerstände in der bekannten Liste ohne an den USB-Port angeschlossenen Strom ausprobiert und alle Widerstandswerte, die beim Einschalten des USB-Ports wieder zu einer seriellen Ausgabe führten.
Update: Wir arbeiten an der Theorie, dass dieses Schema aus dem Servicehandbuch ein Signal vom FSA9480 BOOT-Pin zu einem Signal namens BOOT_MODE zeigt, das in jeder vernünftigen Welt zum OM5-Pin des Anwendungsprozessorchips wird. Wir verfügen jedoch nicht über den vollständigen Schaltplan, um dies zu beweisen, und wir verfügen nicht über die internen Details des FSA9480, um zu zeigen, wie dieser Pin ausgelöst wird. Sie würden denken, es wären die Widerstände mit BOOT_ON in ihren Namen (wie RID_FM_BOOT_ON_UART), aber anscheinend nicht. Oder vielleicht ist es das, aber das BOOT_MODE-Signal geht nicht an die richtige Stelle. In beiden Fällen würde das Datenblatt des FSAx80 dies bestätigen.
Ich habe den Startup- und Bootloader-Downloadcode im internen ROM des Anwendungsprozessors (Samsung S5PC110) rückgängig gemacht und festgestellt, dass bei Erfolg das erste Byte des Bootloader-Downloadprotokolls an der seriellen Schnittstelle angezeigt werden sollte. Stattdessen erhalten wir die Ausgabe des primären Bootloaders, der von NAND geladen wird, was auf einen normalen Start hinweist.