UART » History » Version 75
Denis 'GNUtoo' Carikli, 03/10/2020 04:34 PM
i9100: from the bootloader environment
1 | 40 | Denis 'GNUtoo' Carikli | h1. UART |
---|---|---|---|
2 | 1 | Denis 'GNUtoo' Carikli | |
3 | 12 | Denis 'GNUtoo' Carikli | There is an in-depth article covering several Samsung devices in the [[SamsungSerial]] page |
4 | 11 | Denis 'GNUtoo' Carikli | |
5 | 1 | Denis 'GNUtoo' Carikli | h2. Settings |
6 | 12 | Denis 'GNUtoo' Carikli | |
7 | 31 | Denis 'GNUtoo' Carikli | |_. Device and documentation |_. I/O voltage |_. ID<->GND |_. SOC TX |_. SOC RX |_. switch |_. stock bootloader settings |_. Comments | |
8 | 75 | Denis 'GNUtoo' Carikli | | GT-I9000 | 1.8V[8] ? | 150k | D- | D+ | | *UART settings*: ttySAC2 115200 8N1 |
9 | 74 | Denis 'GNUtoo' Carikli | To get a shell in the bootloader: |
10 | * Power off the phone |
||
11 | * Start sending some characters through the UART |
||
12 | * Press the volume down button and the power button to power up the phone |
||
13 | * Release the buttons when the phone has powered up |
||
14 | * Once you get the shell, you can stop sending characters through the UART | At some point the boot procedure switches to the modem UART, it's probably some linux driver doing that | |
||
15 | 71 | Denis 'GNUtoo' Carikli | | GT-I9100 | 1.8V[8] ? | 510k[9] | D- | D+ | "MAX8997":https://git.replicant.us/replicant/kernel_samsung_smdk4412/tree/arch/arm/configs/lineageos_i9100_defconfig#n1294 | *UART settings*: ttySAC2 115200 8N1 |
16 | 58 | Denis 'GNUtoo' Carikli | To get the UART enabled at boot with the stock bootloader: |
17 | 57 | Denis 'GNUtoo' Carikli | * Power the phone off and remove the battery |
18 | * Put a battery in |
||
19 | 62 | Denis 'GNUtoo' Carikli | * Hold the select button |
20 | 57 | Denis 'GNUtoo' Carikli | * Plug the UART |
21 | 70 | Denis 'GNUtoo' Carikli | * Release the select button |
22 | To get the UART enabled at boot with the Replicant 6.0 kernel and the stock bootloader, see the "DHylands_SGS2_Console":https://wiki.mozilla.org/DHylands_SGS2_Console page on the mozilla wiki. | At some point the boot procedure switches to the modem UART, it's probably some linux driver doing that | |
||
23 | 71 | Denis 'GNUtoo' Carikli | | GT-N7000 | 1.8V[8] ? | 510k[9] | D- | D+ | | *UART settings*: 115200 8N1 | | |
24 | 1 | Denis 'GNUtoo' Carikli | | GT-I9100G_CHN_CHN | 1.8V[8] ? | 619k[9] | D- | D+ | ? | *UART settings*: 115200 8N1 | Very few prints from Xloader, the next bootloader used by Android 2.6.3 doesn't seem to print much | |
25 | | GT-I9300 |/2. 1.8V[1] |/4. 619 kOhms[3] |/4. D- |/4. D+ |/4. MAX77693[5] |/4. *UART settings*: 115200 |
||
26 | 62 | Denis 'GNUtoo' Carikli | To increase verbosity during boot: |
27 | * Power off the phone and remove the battery |
||
28 | * Put a battery in |
||
29 | * Press the hold the volume-down button |
||
30 | * Plug the UART and wait for the first lines to be printed |
||
31 | * Release the volume-down button |/2. It gives a shell once Replicant 6 has booted | |
||
32 | 48 | Denis 'GNUtoo' Carikli | | GT-I9305 | |
33 | | GT-N7100 | ? | | |
||
34 | | GT-N7105 | ? | | |
||
35 | 61 | Denis 'GNUtoo' Carikli | | [[GalaxyNexusI9250SerialConsole|Galaxy Nexus (GT-I9250)]] | | 619 kOhms[4] | D+ | D- | FSA9480[7] | UART settings: |
36 | * By default: ttyFIQ0, 115200 8N1 |
||
37 | * After patching Linux: ttyO2, 115200 8N1 |
||
38 | 43 | Denis 'GNUtoo' Carikli | See [[GalaxyNexusI9250SerialConsole]] for more details. | | |
39 | 45 | Denis 'GNUtoo' Carikli | | [[NexusSI902xSerial|Nexus S]] | | 150 kOhm | | | FSA9480 | | | |
40 | 48 | Denis 'GNUtoo' Carikli | | [[OptimusBlackSerial|Optimus Black (P970)]] | 1.8V[6] | N/A[2] | | | DP3T | | | |
41 | 60 | Denis 'GNUtoo' Carikli | | ODROID-U3, console UART | 1.8V |\4. "connector":https://wiki.odroid.com/accessory/development/usb_uart_kit#odroid_port_description_of_uart_connector | *UART settings*: ttySAC1, 115200 8N1 | | |
42 | | ODROID-U3, IO pins UART | 1.8V |\4. "connector":https://wiki.odroid.com/old_product/odroid-x_u_q/odroid_u3/u3_ioport_uart | *UART settings*: ttySAC0, 115200 8N1 | | |
||
43 | 17 | Denis 'GNUtoo' Carikli | |
44 | 1 | Denis 'GNUtoo' Carikli | fn1. Measured between USB GND and USB VCC |
45 | |||
46 | fn2. Code is required to use the switch as you need to configure both the MUIC and DP3T switch |
||
47 | |||
48 | fn3. See "The related driver source code":https://git.replicant.us/replicant/kernel_samsung_smdk4412/tree/drivers/misc/max77693-muic.c#n102 |
||
49 | |||
50 | fn4. See the "postmarketOS wiki page on Serial debugging":https://wiki.postmarketos.org/wiki/Serial_debugging |
||
51 | 30 | Denis 'GNUtoo' Carikli | |
52 | 1 | Denis 'GNUtoo' Carikli | fn5. See the "driver":https://git.replicant.us/replicant/kernel_samsung_smdk4412/tree/drivers/misc/max77693-muic.c and the "ifixit teardown":https://www.ifixit.com/Teardown/Samsung+Galaxy+S+III+Teardown/9391 |
53 | |||
54 | fn6. Reference: [[OptimusBlackSerial]] |
||
55 | 44 | Denis 'GNUtoo' Carikli | |
56 | fn7. See "board-tuna-connector.c":https://git.replicant.us/replicant/kernel_samsung_tuna/tree/arch/arm/mach-omap2/board-tuna-connector.c "fsa9480.c":https://git.replicant.us/replicant/kernel_samsung_tuna/tree/drivers/misc/fsa9480.c in "kernel_samsung_tuna":https://git.replicant.us/replicant/kernel_samsung_tuna |
||
57 | 50 | Denis 'GNUtoo' Carikli | |
58 | fn8. Works, as it was tested on the device. TODO: measure the voltage, as lower UART voltages often works with higher voltage levels. |
||
59 | |||
60 | fn9. Works, as it was tested on the device. TODO: look the official reference in the driver for it. |
||
61 | 23 | Denis 'GNUtoo' Carikli | |
62 | 47 | Denis 'GNUtoo' Carikli | h2. Datasheets |
63 | |||
64 | * "FSA9480.pdf":https://media.digikey.com/pdf/Data%20Sheets/Fairchild%20PDFs/FSA9480.pdf |
||
65 | |||
66 | 23 | Denis 'GNUtoo' Carikli | h2. Interesting links |
67 | |||
68 | 34 | Denis 'GNUtoo' Carikli | * There is a "page on Serial debugging":https://wiki.postmarketos.org/wiki/Serial_debugging on the postmarketOS wiki that contains information for using the serial port for many smartphones models. |
69 | * "mv-uart":https://osmocom.org/projects/mv-uart/wiki A serial port adapter with configurable voltages (and GPIOs) |
||
70 | 53 | Denis 'GNUtoo' Carikli | * "DHylands_SGS2_SerialAdapter":https://wiki.mozilla.org/DHylands_SGS2_SerialAdapter : A very compact setup but with fixed resistor value. |
71 | 68 | Denis 'GNUtoo' Carikli | |
72 | h2. See also |
||
73 | |||
74 | 69 | Denis 'GNUtoo' Carikli | * [[BootloaderInterfaces]]: Documentation about the stock bootloaders interfaces |