Project

General

Profile

GalaxySIIGTI9100G » History » Version 67

Denis 'GNUtoo' Carikli, 04/03/2020 04:47 AM

1 19 Denis 'GNUtoo' Carikli
h1. Galaxy S II (GT-I9100G)
2 2 Denis 'GNUtoo' Carikli
3 20 Denis 'GNUtoo' Carikli
{{>toc}}
4
5 21 Denis 'GNUtoo' Carikli
|/9. !galaxys2.png! | *Device* | Galaxy S II (GT-I9100G) |
6 20 Denis 'GNUtoo' Carikli
| *Manufacturer* | Samsung |
7 21 Denis 'GNUtoo' Carikli
| *Release date* | ? |
8 22 Denis 'GNUtoo' Carikli
| *Codename* | @i9100G@ ? |
9 20 Denis 'GNUtoo' Carikli
| *Status* | Not supported yet |
10 23 Denis 'GNUtoo' Carikli
| *Variants* | GSM: GT-I9100G |
11 20 Denis 'GNUtoo' Carikli
| *Latest images* | None |
12
13 17 Denis 'GNUtoo' Carikli
h2. History
14
15 56 Denis 'GNUtoo' Carikli
Long time ago, we had reports that the "Galaxy SII" had an unsigned bootloader, but we didn't manage to confirm to which exact model it applied to, or if people assumed that the bootloader of the GT-I9100 was unsigned because it uses Xloader which is GPLv2. Samsung also published the source code of various Xloader versions they used on the GT-I9100G for different Android versions. However until now we weren't able to confirm that any device were able to run unsigned bootloaders. Though we verified that at least the bootloader of the I9100G_CHN_CHN is signed.
16
17 17 Denis 'GNUtoo' Carikli
h2. Rationale
18 1 Denis 'GNUtoo' Carikli
19 57 Denis 'GNUtoo' Carikli
* Uses the samsung-ipc protocol
20 17 Denis 'GNUtoo' Carikli
* The modem probably uses MIPI, so it should be isolated
21
* 1G of ram => it should be enough for Replicant 6 and 9
22 1 Denis 'GNUtoo' Carikli
23 34 Denis 'GNUtoo' Carikli
h2. Wiki pages
24
25
* [[I9100GBootloader]]: Research on bootloader freedom for the GT-I9100G
26
27
h2. Various IRC logs of research on it.
28 24 Jens Korte
29 61 Denis 'GNUtoo' Carikli
TODO:
30
* Read the log below and remove what is not relevant
31
* Add what is relevant in various pages of the Replicant wiki or Wikidata and point to that if it's in another page that this one (or wikidata).
32
33 63 Denis 'GNUtoo' Carikli
h3. About OMAP and signed bootloaders
34
35 1 Denis 'GNUtoo' Carikli
(03:25:36 AM) sensiblemn: https://web.archive.org/web/20130613110712/http://gitorious.org/x-loader/x-loader/blobs/master/README
36 14 Kurtis Hanna
(03:26:58 AM) sensiblemn: "X-Loader can be signed by Texas Instruments IFT and installed to Nand flash to achieve Nand booting."
37 62 Denis 'GNUtoo' Carikli
(07:17:23 PM) sensiblemn: [...] https://wiki.tizen.org/Tizen_IVI_Getting_Started_Guide_For_PandaBoard#x-loader_config_files There's also this curious part... "download the MShield signing tool and use the commands below. Contact your TI representative to get access to this tool."
38 14 Kurtis Hanna
39 63 Denis 'GNUtoo' Carikli
h3. GT-I9100G bootloader related
40 1 Denis 'GNUtoo' Carikli
41
(08:47:20 PM) sensiblemn: GNUtoo: i just got a report from a postmarketOS developer saying that booting works with that free software x-loader repo for the i9100G that I found. they had to make a one line commit to get it building, but it boots. https://github.com/hpagseddy/i9100g_xloader/commit/0505138dd163959443f09b7178142c0472f60582
42 62 Denis 'GNUtoo' Carikli
(08:48:24 PM) sensiblemn: so early reports suggest that we found a Galaxy S2 that has a free software bootloader. they said it doesn't even need to be signed with signGP.c.
43 1 Denis 'GNUtoo' Carikli
(10:36:35 PM) hpagseddy[m]: So i have an i9100g and compiled this without any errors in case you guys are interested https://github.com/hpagseddy/i9100g_xloader
44
(10:49:32 PM) freekurt: thanks for jumping in here hpagseddy. we have been trying for quite some time to find a way to liberate the first stage bootloader on Exynos4 SoC based i9100 and i9300 devices. this is great news that the i9100G seems to have a free software first stage bootloader.
45 14 Kurtis Hanna
(10:51:08 PM) hpagseddy[m]: Yep, also there is a thing that i9100g is based on TI OMAP
46 63 Denis 'GNUtoo' Carikli
47 64 Denis 'GNUtoo' Carikli
h3. GT-I9100G Linux upstreaming
48 63 Denis 'GNUtoo' Carikli
49 14 Kurtis Hanna
(11:01:27 PM) hpagseddy[m]: Btw Droid 4 has mainline
50 1 Denis 'GNUtoo' Carikli
(11:02:42 PM) hpagseddy[m]: i9100g uses same display and digitizer with i9100, has a broadcom wifi but sadly a PowerVR GPU
51 64 Denis 'GNUtoo' Carikli
(11:10:48 PM) hpagseddy[m]: Since it uses same display and even same connectors
52
(11:11:06 PM) hpagseddy[m]: I know it because i am using i9100 display on my i9100g :)
53
(11:11:17 PM) hpagseddy[m]: Besides capacitive buttons, all functional
54
(11:11:48 PM) hpagseddy[m]: Even capacitive connector plugged in so if i do some kernel hacks i can get them working too
55
(11:11:50 PM) freekurt: we really appreciate your willingness to do testing if we decide to proceed with trying to mainline this device, which has yet to be determined.
56
(11:14:38 PM) freekurt: it seems as though this device would be quite attractive to other pmOS devs as well, now that the freedom of the bootloader appears to have been determined.
57
(11:15:19 PM) hpagseddy[m]: I hope so, i was the only maintainer over 2 years :)
58
(11:15:27 PM) hpagseddy[m]: Of this device
59
(11:15:37 PM) freekurt: :-) thanks for holding down the fort!
60
(11:15:52 PM) hpagseddy[m]: But if the device gets mainlined, things will definitely change
61 63 Denis 'GNUtoo' Carikli
62
h3. OMAP blaze reference platform related
63 14 Kurtis Hanna
64
(07:17:23 PM) sensiblemn: GNUtoo: ah, it seems like some OMAP devices are GP and others are HS, so the question is whether we can find smartphones and tablets that are GP. Looks like the Blaze Tablet released by TI is GP. https://wiki.tizen.org/Tizen_IVI_Getting_Started_Guide_For_PandaBoard#x-loader_config_files [...]
65
(07:22:26 PM) sensiblemn: also this very odd looking OMAP Blaze cell phone seems to be GP rather than HS. https://www.slashgear.com/texas-instruments-omap-blaze-on-sale-now-1485657/
66
(07:23:30 PM) sensiblemn: https://www.ebay.com/itm/TI-Stereo-Camera-Blaze-development-Plattform-im-Wert-von-1-800USD/131690215016
67
(07:24:04 PM) sensiblemn: https://web.archive.org/web/20180903060622/http://omapedia.org/wiki/OMAP4_Blaze
68
69
TODO:
70
(10:58:08 PM) freekurt: 512 MB of RAM seems rough for AOSP 10, especially when we are trying to get it to work with 2D acceleration. 1GB should be much better.
71 1 Denis 'GNUtoo' Carikli
=> TODO: check Android 10 requirements and add them to the wiki
72 14 Kurtis Hanna
73 64 Denis 'GNUtoo' Carikli
h3. To sort
74 14 Kurtis Hanna
75
(11:23:17 PM) freekurt: hpagseddy: can you enter ServiceMode to determine what kind of modem it uses like was done here? https://www.anandtech.com/show/6386/samsung-galaxy-note-2-review-t-mobile-/9
76
(11:27:59 PM) freekurt: i'm trying to figure out what the code is to enter the service menu.
77 24 Jens Korte
(11:29:52 PM) sunilmohan [~quassel@swecha/sunilmohan] entered the room.
78 14 Kurtis Hanna
(11:31:36 PM) freekurt: looks like it is <notextile>*#32489#</notextile>
79
(11:32:06 PM) freekurt: based on the bottom of this random website https://secretspecs.com/model/samsung/samsung-gt-i9100g/secret-code/
80
(11:34:02 PM) freekurt: i'm sorry, but i don't know how to navigate to the modem information, but it should look like this https://www.anandtech.com/Gallery/Album/2402#7
81
(11:34:43 PM) freekurt: hpagseddy: ^
82
(11:35:53 PM) hpagseddy[m]: Sorry, i had electricity outage
83
(11:36:06 PM) hpagseddy[m]: Give me 10 minutes
84
(11:36:32 PM) freekurt: no rush at all! please take your time. sorry to hear that.
85
(11:39:09 PM) mmu_man left the room (quit: Ping timeout: 260 seconds).
86
(11:54:03 PM) testman left the room (quit: Quit: The Lounge - https://thelounge.chat).
87
(11:59:27 PM) testman [~testman@cpe-92-37-70-209.dynamic.amis.net] entered the room.
88 24 Jens Korte
(11:59:47 PM) sunilmohan left the room (quit: Ping timeout: 268 seconds).
89 14 Kurtis Hanna
(02/01/2020 12:06:23 AM) hpagseddy[m]: <freekurt "looks like it is <notextile>*#32489#"></notextile> Didnt work
90
(12:07:44 AM) sunilmohan [~quassel@c-71-197-225-149.hsd1.wa.comcast.net] entered the room.
91
(12:07:45 AM) sunilmohan left the room (quit: Changing host).
92
(12:07:45 AM) sunilmohan [~quassel@swecha/sunilmohan] entered the room.
93
(12:12:20 AM) sunilmohan left the room (quit: Ping timeout: 265 seconds).
94
(12:14:06 AM) ggoes [~gregf@fsf/staff/ggoes] entered the room.
95
(12:16:46 AM) sunilmohan [~quassel@c-71-197-225-149.hsd1.wa.comcast.net] entered the room.
96
(12:16:46 AM) sunilmohan left the room (quit: Changing host).
97
(12:16:46 AM) sunilmohan [~quassel@swecha/sunilmohan] entered the room.
98
(12:23:11 AM) freekurt: thanks for reporting back. i don't have any more time right now to keep looking for the proper code. will likely ping you sometime later about it.
99
(12:24:20 AM) hpagseddy[m]: its ok i found the code
100
(12:24:38 AM) troulouliou_dev [~troulouli@unaffiliated/troulouliou-dev/x-4757952] entered the room.
101
(12:27:24 AM) freekurt: oh nice. if you are able to find the modem type please let us know.
102
(12:27:42 AM) hpagseddy[m]: So i am at the main menu
103
(12:27:57 AM) hpagseddy[m]: what kind of modem name am i searching for?
104
(12:29:48 AM) sensiblemn:  XMM6262 is an example of an intel based cellular modem
105
(12:30:10 AM) sensiblemn: actually, i'm mistaken about that
106
(12:30:24 AM) sensiblemn: CMC221 is intel if i'm not mistaken
107
(12:30:31 AM) sensiblemn: MDM9615 is qualcomm
108
(12:30:51 AM) sensiblemn: i don't know if all cell modem names follow the same naming structure
109 24 Jens Korte
(12:33:06 AM) sensiblemn: some other qualcomm modems start with IPQ, MSM, QCS, and SDM
110 14 Kurtis Hanna
(12:33:21 AM) sensiblemn: <notextile>*i think*</notextile>
111
(12:33:23 AM) hpagseddy[m]: SP6260?
112
(12:37:10 AM) freekurt: yeah, that might be it. https://forum.xda-developers.com/showpost.php?p=76556946&postcount=38
113
(12:37:25 AM) freekurt: looks like that page suggests that the i9300T has that modem
114
(12:37:44 AM) hpagseddy[m]: oh nice
115
(12:38:39 AM) hpagseddy[m]: it was really hard to navigate throught service mode without menu and back keys
116
(12:39:20 AM) hpagseddy[m]: So the fullname is like SP6260_T1_01.1300
117
(12:44:13 AM) hpagseddy[m]: What if itis "XMM6260"???
118
(12:44:19 AM) hpagseddy[m]:  * What if it is "XMM6260"???
119
(12:44:59 AM) sensiblemn: are you seeing that in service mode?
120
(12:47:36 AM) hpagseddy[m]: no
121
(12:47:52 AM) hpagseddy[m]: i just saw SP6260_T1_01.1300
122
(12:48:22 AM) hpagseddy[m]: since the numbers match and XMM6260 used in S2
123
(12:48:31 AM) hpagseddy[m]: i made a conclusion like this
124
(12:51:03 AM) forkbomb: i'm pretty sure it would be XMM6260 or XMM6262, same as i9300
125
(12:51:21 AM) sensiblemn: oh, that sounds convenient!
126
(12:51:50 AM) hpagseddy[m]: Perfect
127
(12:51:55 AM) forkbomb: the i9300T is just a Telstra branded i9300 afaik
128
(12:52:15 AM) hpagseddy[m]: that device could be the true open source phone \o/
129
(12:52:17 AM) sensiblemn: forkbomb: we are wondering about the i9100G though
130
(12:52:49 AM) hpagseddy[m]: <freekurt "yeah, that might be it. https://"> i9300T has the same SP6260 naming as i9100g as this shows
131
(12:53:10 AM) sensiblemn: you're correct
132
(12:54:16 AM) sensiblemn: also, not sure if this is the correct defconfig, but this kernel from samsung suggests it is xmm6260 also https://github.com/LineageOS/android_kernel_samsung_t1/blob/10ca03795f659f6f1fa995e8c300a08c3a133354/arch/arm/configs/android_t1_omap4430_r03_eng_defconfig#L1097
133
(12:55:09 AM) hpagseddy[m]: t1, thats correct
134
(12:55:18 AM) hpagseddy[m]: but the defconfig isnt
135
(12:55:48 AM) hpagseddy[m]: https://github.com/LineageOS/android_kernel_samsung_t1/blob/10ca03795f659f6f1fa995e8c300a08c3a133354/arch/arm/configs/cyanogenmod_i9100g_defconfig
136
(12:55:52 AM) hpagseddy[m]: this is for the device
137
(12:56:01 AM) forkbomb: hpagseddy[m]: ah, the i9100G is different i think
138
(12:56:06 AM) forkbomb: it's OMAP based
139
(12:56:10 AM) hpagseddy[m]: other one was for the development board??
140
(12:56:15 AM) hpagseddy[m]: Yes it is
141
(12:56:23 AM) hpagseddy[m]: TI OMAP4430, same as Droid 4
142
(12:56:58 AM) sensiblemn: actually, this looks like the correct defconfig for it, still says xmm6260 https://github.com/LineageOS/android_kernel_samsung_t1/blob/cm-12.1/arch/arm/configs/android_t1_omap4430_r03_eng_defconfig#L1097
143
(12:57:38 AM) hpagseddy[m]: i think so
144
(12:57:48 AM) hpagseddy[m]: if it has t1 then it is i9100g
145
(12:58:17 AM) sensiblemn: dang, i messed that last link up. this is it. final answer. https://github.com/LineageOS/android_kernel_samsung_t1/blob/10ca03795f659f6f1fa995e8c300a08c3a133354/arch/arm/configs/cyanogenmod_i9100g_defconfig#L1107
146
(12:59:16 AM) hpagseddy[m]: ah yes
147
(12:59:34 AM) TheJollyRoger left the room (quit: Ping timeout: 240 seconds).
148
(12:59:50 AM) hpagseddy[m]: the other one is most likely development board or prototype configs
149
(01:00:57 AM) sensiblemn: forkbomb: did you hear that we seem to have found a free software first stage bootloader for the i9100G and that it doesn't seem to require any signature checks?
150
(01:01:27 AM) hpagseddy[m]: yes i compiled and ran it on my device with no problem
151
(01:01:59 AM) hpagseddy[m]: also fixed the old build a bit
152
(01:02:02 AM) hpagseddy[m]: >So i have an i9100g and compiled this without any errors in case you guys are interested https://github.com/hpagseddy/i9100g_xloader
153
(01:05:55 AM) forkbomb: no, i didn't. very nice!
154
(01:06:35 AM) hpagseddy[m]: well i dont know how to use it so just compiled and flashed with odin
155
(01:06:45 AM) hpagseddy[m]: also one line fix hehe
156
(01:07:33 AM) hpagseddy[m]: it compiled with no problem on 4.6 gcc
157
(01:14:47 AM) sensiblemn: hpagseddy: it is my understanding that, since x-loader is EOL, and since Replicant wants to upstream as much code as we can, we would have to upstream what x-loader is doing into u-boot SPL, which i don't know how long it would take to do. the fact that very similar devices are already in upstream u-boot likely will help though, if we decide to pursue it.
158
(01:16:01 AM) hpagseddy[m]: Since it is open source, it is ok to keep it untill we have the device booted in my opinion
159
(01:16:17 AM) sensiblemn: yes, for sure.
160
(01:17:00 AM) hpagseddy[m]: but well last decision is yours since you guys are the replicant devs :)
161
(01:22:29 AM) sensiblemn: hpagseddy: have you tested LineageOS 13 on the device before? https://forum.xda-developers.com/galaxy-s2/development/rom-lineageos-13-0-t3620246
162
(01:23:21 AM) hpagseddy[m]: yes it had several issues but performance was good
163
(01:23:33 AM) hpagseddy[m]: it had audio error which was so annoying
164
(01:23:41 AM) hpagseddy[m]: 12.1 was best
165
(01:24:22 AM) sensiblemn: what kind of audio error?
166
(01:25:51 AM) hpagseddy[m]: audio was some kind of disorted
167
(01:39:01 AM) sensiblemn: hpagseddy: did you notice any other issues?
168
(01:39:11 AM) sensiblemn: with 13?
169
(01:40:13 AM) hpagseddy[m]: Gps doesnt work
170
(01:40:18 AM) hpagseddy[m]: Night mode doesnt work
171
(01:16:15 AM) GNUtoo: do we have a git for u-boot or only a tarball?
172
(01:16:16 AM) hpagseddy[m]: sensiblemn: https://forum.xda-developers.com/galaxy-s2/development/guide-repair-totally-sleep-dead-boot-t1701471
173
(01:16:20 AM) hpagseddy[m]: i only know this page
174
(01:17:01 AM) hpagseddy[m]: search u-boot in the page for faster result
175
(01:17:19 AM) hpagseddy[m]: also this https://blog.the-leviathan.ch/?p=408
176
(01:18:33 AM) hpagseddy[m]: so i know it uses u-boot but cant find a link either
177
(01:18:35 AM) GNUtoo: thanks
178
(01:18:56 AM) hpagseddy[m]: you're welcome
179
(01:19:56 AM) sensiblemn: GNUtoo: this looks like omap-usb-tool but it was recently updated https://github.com/LukasTomek/omapboot
180
(01:21:37 AM) hpagseddy[m]: hmm, he forked this repo from https://github.com/kousu/omapboot
181
(01:22:03 AM) hpagseddy[m]: so he added sd card booting
182
(01:22:09 AM) hpagseddy[m]: and some fixed
183
(01:22:13 AM) hpagseddy[m]: fixes*
184
(01:22:25 AM) GNUtoo: https://git.paulk.fr/omap-usb-boot.git
185
(01:22:29 AM) GNUtoo: but it seems down right nw
186
(01:22:32 AM) GNUtoo: *right now
187
(01:23:33 AM) GNUtoo: xloader from IRC logs: https://github.com/hpagseddy/i9100g_xloader
188
(01:23:54 AM) GNUtoo: (thanks hpagseddy[m] )
189
(01:24:22 AM) hpagseddy[m]: you're welcome
190
(01:24:51 AM) hpagseddy[m]: i just fixed one line and decided to fork it
191
(01:26:17 AM) GNUtoo: Yes, I'll try to look into that a bit later, I'm just writing down the important infos in the wiki right now
192
(01:26:23 AM) GNUtoo: *look into the details
193 3 Denis 'GNUtoo' Carikli
(01:26:59 AM) GNUtoo: And if you tested it on the device, then yours is known to work
194
01:56 <@GNUtoo> Did LineageOS or Cyanogenmod support it at some point?
195
01:57 < hpagseddy[m]> Cyanogenmod untill 13.0
196
01:57 < hpagseddy[m]> Omnirom 4.4 and 5.0.2
197
01:57 <@GNUtoo> ok, that explains why LineageOS has some stuff on it but nothing on the wiki
198 7 Denis 'GNUtoo' Carikli
01:57 < hpagseddy[m]> thats all i remember and tested
199 1 Denis 'GNUtoo' Carikli
[...]
200 7 Denis 'GNUtoo' Carikli
01:58 < hpagseddy[m]> GNUtoo: yeah they just forked it and it just stays there
201
[...]
202
01:59 < hpagseddy[m]> but 12.1 is still cyanogen
203
02:00 < sensiblemn> there was an attempt made at 14.1 but it seems like it was unsuccessful because it wouldn't boot
204
02:00 < sensiblemn> https://github.com/xdaamg/android_device_samsung_i9100g/tree/cm-14.1
205 24 Jens Korte
02:00 < hpagseddy[m]> also someone rebased cm11 to lineage 11
206 45 Denis 'GNUtoo' Carikli
207 28 Denis 'GNUtoo' Carikli
h2. Partitions
208
209
The PIT  of the Galaxy SII (GT-I9100G) can be found in the [[GalaxySIII9100GPit]] page.
210 36 Denis 'GNUtoo' Carikli
211 45 Denis 'GNUtoo' Carikli
|_. PIT |_. Linux name |_. mount point |_. partition type |_. block device |_. Description |
212 51 Denis 'GNUtoo' Carikli
| MLO |\2. Not visible on Linux | | | First stage of bootloader |
213
|\2. EFS | | | mmcblk0p1 | modem data partition |
214 52 Denis 'GNUtoo' Carikli
|\2. SBL1 | | | mmcblk0p2 | |
215 51 Denis 'GNUtoo' Carikli
|\2. SBL2 | | Empty | mmcblk0p3 | |
216
|\2. PARAM  | | | mmcblk0p4 | |
217
|\2. KERNEL | None | zImage | mmcblk0p5 | boot partition, See [[IsorecRecoveryIssue]] for more details |
218
|\2. RECOVERY | None | | mmcblk0p6 | recovery partition, See [[IsorecRecoveryIssue]] for more details |
219
|\2. CACHE| | | mmcblk0p7 | Android cache partition |
220
|\2. MODEM| | | mmcblk0p8 | modem firmware partition |
221
|\2. FACTORYFS| | | mmcblk0p9 | Android system partition |
222
|\2. DATAFS| | | mmcblk0p10 | Android application data |
223
|\2. UMS | | | mmcblk0p11 | user data (music, pictures, etc) |
224 35 Denis 'GNUtoo' Carikli
|\2. HIDDEN | | | mmcblk0p12 | contains some data, and Samsung APK |
225
226
This was constructed from the PIT, TODO: check the partitions content
227 46 Denis 'GNUtoo' Carikli
228
h3. MLO
229 53 Hpag Seddy
230 46 Denis 'GNUtoo' Carikli
On a I9100G_CHN_CHN with Android 2.3.6 with the OMAP reported as being in HS mode we have:
231
<pre>
232
--- Entry #0 ---
233
Binary Type: 0 (AP)
234
Device Type: 2 (MMC)
235
Identifier: 1
236
Attributes: 0 (Read-Only)
237
Update Attributes: 0
238
Partition Block Size/Offset: 0
239
Partition Block Count: 0
240
File Offset (Obsolete): 0
241
File Size (Obsolete): 0
242
Partition Name: X-loader
243
Flash Filename: MLO
244
FOTA Filename: 
245
</pre>
246
247
This doesn't give any indication of where is MLO, but it's clearly visible with an hexadecimal editor like vbindiff.
248 48 Denis 'GNUtoo' Carikli
249 46 Denis 'GNUtoo' Carikli
|_. Offset from mmcblk0 |_. size |_. comments |
250
| 0x20000 (256k) | 256k | MLO + potentially other stuff |
251
| 0x40000 (512k) | 256k | MLO + potentially less other stuff |
252
253 47 Denis 'GNUtoo' Carikli
254 46 Denis 'GNUtoo' Carikli
Though SBL1 and SBL2 have location and size reported my the bootloader with heimdall print-pit:
255
<pre>
256
--- Entry #2 ---
257
Binary Type: 0 (AP)
258
Device Type: 2 (MMC)
259
Identifier: 2
260
Attributes: 0 (Read-Only)
261
Update Attributes: 0
262
Partition Block Size/Offset: 49152
263
Partition Block Count: 4096
264
File Offset (Obsolete): 0
265
File Size (Obsolete): 0
266
Partition Name: SBL1
267
Flash Filename: Sbl.bin
268
FOTA Filename: 
269
</pre>
270
271
<pre>
272
--- Entry #3 ---
273
Binary Type: 0 (AP)
274
Device Type: 2 (MMC)
275
Identifier: 3
276
Attributes: 0 (Read-Only)
277
Update Attributes: 0
278
Partition Block Size/Offset: 53248
279
Partition Block Count: 4096
280
File Offset (Obsolete): 0
281
File Size (Obsolete): 0
282
Partition Name: SBL2
283
Flash Filename: 
284
FOTA Filename: 
285
</pre>
286 27 Denis 'GNUtoo' Carikli
287
h2. Recovery
288
289
The device is not supported by TWRP, but it was supported by cyanogenmod recoveries:
290
291 1 Denis 'GNUtoo' Carikli
https://web.archive.org/web/20190328070606/http://download.cyanogenmod.org:80/?device=i9100g
292 41 Denis 'GNUtoo' Carikli
293 31 Denis 'GNUtoo' Carikli
That recovery is a zImage. Note that this recovery may not be FSDG compliant, so the first step would be to make a Replicant recovery for this device/
294 43 Denis 'GNUtoo' Carikli
295
h2. CyanogenMod support and stock Android with the version that has a signed bootloader
296
297
According to the "I9100G CyanogenMod installation instructions":https://web.archive.org/web/20161224202727/https://wiki.cyanogenmod.org/w/Install_CM_for_i9100g , "Users running Android 2.3 on their I9100G MUST first upgrade to stock Android 4.x before installing CyanogenMod, or the device won't boot into the system due to it relying on a newer bootloader. A 4.1 bootloader is recommended."
298
299
However this approach has several issues.
300
301
The update doesn't work anymore. 
302
303
It also requires you to put a SIM card in the device, which results in privacy issues.
304
305
In addition to that, it requires you to give the device a network connection, knowing that the device is running a proprietary Android distribution.
306
307
Once you do that it still fails with "Processing failed".
308
309
Right before the failure you can see "Signup for a Samsung account" on the top of the window with "Terms and conditions".
310 44 Denis 'GNUtoo' Carikli
311
So it probably tries to access some page like https://bada.com/contents/deviceterms/china/208.txt which doesn't exist anymore, and it probably does that to show terms and conditions which were probably unacceptable. 
312
313 43 Denis 'GNUtoo' Carikli
They might also have legally prevented you to work on some part of Replicant if you agreed to them, depending on the country you are located in or you intend to travel to.
314
315 5 Denis 'GNUtoo' Carikli
This is most probably not an issue with the versions that don't have a signed bootloader as the first stage bootloader could simply be replaced by a free software xloader.
316 60 Denis 'GNUtoo' Carikli
317 59 Denis 'GNUtoo' Carikli
h2. Bootloaders
318 60 Denis 'GNUtoo' Carikli
319 15 Denis 'GNUtoo' Carikli
See [[GTI9100GBootloaderFreedom]] and [[GTI9100GBootloaderInterface]]
320 53 Hpag Seddy
321
h2. Hardware
322
323 67 Denis 'GNUtoo' Carikli
h3. Sumary
324
325 53 Hpag Seddy
As far is we get from what we've seen on the motherboard itself, here are our guesses about chips and what they do:
326 55 Hpag Seddy
327
* 6030B1A5 21ZEDL9G2 G1 --- Power IC based on sellers on the web
328
* TWL6040A2 22AH9SW G2 --- Audio codec made by TI https://www.alldatasheet.com/datasheet-pdf/pdf/862981/TI1/TWL6040A2.html
329
* I9811 V 1.0B XG626 F2076538  --- Modem IC
330
* SAMSUNG 210 KMVYLOOOLM-B503 --- EMMC Chip 16GB based on this forum thread https://www.mcrf.ru/forum/showthread.php?t=40277
331 5 Denis 'GNUtoo' Carikli
* K3PE7E700D-XGC1 --- DDR DRAM chip, most likely 1GB
332 1 Denis 'GNUtoo' Carikli
333 67 Denis 'GNUtoo' Carikli
h3. PCB details
334 65 Denis 'GNUtoo' Carikli
335 66 Denis 'GNUtoo' Carikli
Chips markings:
336
337
<pre>
338
Ti logo
339
6030B1A5
340
21ZEDL9G2
341
G1
342
</pre>
343
344
<pre>
345
TI logo
346
TWL6040A2
347
22AH9SW G2
348
G1
349
</pre>
350
351
I'm not sure about G1, maybe it's Gi or G|
352
353
Modem:
354
<pre>
355
I9811
356
V 1.0B
357
XG626
358
H1207
359
</pre>
360
And on the right side, there is F2076538 written.
361
362
363
There is a small battery soldered. That might be interesting if it's able to keep the correct time when the battery is removed. 
364
If not you need to run disable-modem.sh then to turn off the phone and remove the battery, and then put on the battery, set the correct time, and then enable-modem.sh
365
366
<pre>
367
SAMSUNG 210
368
K3PF7E700 XGC1
369
GKB2609G
370
</pre>
371
372
There are with many capacitors around
373
374
Links about similar chips:
375
* https://www.kynix.com/Detail/1185174/K3PE7E700D-XGC2.html
376
* https://memorylink.samsung.com/ecomobile/mem/ecomobile/product/productDetail.do?topMenu=P&subMenu=mobileDram&appNo=&appLabel=&partNo=K3PE7E700M-XGC1&partSetNo=LPDDR2
377
*  https://commons.wikimedia.org/wiki/File:Samsung_Galaxy_Tab_2_10.1_-_Samsung_K3PE7E700M-XGC1-3956.jpg Interesting
378
379
The links talk about things like LPDDR2. The links are not for the same chip but, for the second part number, the reference is pretty close ( K3PE7E700M-XGC1 )
380
381
The third link has a description with "Mobile DRAM LPDDR2" and "Package: FBGA"
382
383 65 Denis 'GNUtoo' Carikli
FBGA is "Fine Ball Grid Array based on ball grid array technology. It has thinner contacts and is mainly used in system-on-a-chip designs" "according to wikipedia":https://en.wikipedia.org/wiki/Ball%20grid%20array
384
385 5 Denis 'GNUtoo' Carikli
h2. Links
386 26 Denis 'GNUtoo' Carikli
387 8 Denis 'GNUtoo' Carikli
* "Official support for CyanogenMod":https://web.archive.org/web/20161225042527/https://wiki.cyanogenmod.org/w/I9100g_Info
388 9 Denis 'GNUtoo' Carikli
* "Unofficial LineageOS 13 for the I9100G":https://forum.xda-developers.com/galaxy-s2/development/rom-lineageos-13-0-t3620246
389 12 Denis 'GNUtoo' Carikli
** "Source code for it":https://github.com/xdaamg
390 11 Denis 'GNUtoo' Carikli
* Infos on the bootloader: https://forum.xda-developers.com/galaxy-s2/development/guide-repair-totally-sleep-dead-boot-t1701471
391 13 Denis 'GNUtoo' Carikli
* "Infos on xloader and how to make a serial port adapter":https://blog.the-leviathan.ch/?p=408
392 1 Denis 'GNUtoo' Carikli
* https://forum.xda-developers.com/showpost.php?p=65159962&postcount=276