Project

General

Profile

GalaxySIIGTI9100G » History » Version 63

Denis 'GNUtoo' Carikli, 04/03/2020 04:35 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
h3. GT-I9100G general
48
49 14 Kurtis Hanna
(11:01:27 PM) hpagseddy[m]: Btw Droid 4 has mainline
50
(11:02:42 PM) hpagseddy[m]: i9100g uses same display and digitizer with i9100, has a broadcom wifi but sadly a PowerVR GPU
51 63 Denis 'GNUtoo' Carikli
52
h3. OMAP blaze reference platform related
53
54
(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 [...]
55
(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/
56
(07:23:30 PM) sensiblemn: https://www.ebay.com/itm/TI-Stereo-Camera-Blaze-development-Plattform-im-Wert-von-1-800USD/131690215016
57
(07:24:04 PM) sensiblemn: https://web.archive.org/web/20180903060622/http://omapedia.org/wiki/OMAP4_Blaze
58
59
TODO:
60
(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.
61
=> TODO: check Android 10 requirements and add them to the wiki
62
63
To sort:
64
65 14 Kurtis Hanna
(11:10:26 PM) hpagseddy[m]: So you can check display will work
66
(11:10:48 PM) hpagseddy[m]: Since it uses same display and even same connectors
67
(11:11:06 PM) hpagseddy[m]: I know it because i am using i9100 display on my i9100g :)
68
(11:11:17 PM) hpagseddy[m]: Besides capacitive buttons, all functional
69
(11:11:48 PM) hpagseddy[m]: Even capacitive connector plugged in so if i do some kernel hacks i can get them working too
70
(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.
71
(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.
72
(11:15:19 PM) hpagseddy[m]: I hope so, i was the only maintainer over 2 years :)
73
(11:15:27 PM) hpagseddy[m]: Of this device
74
(11:15:37 PM) freekurt: :-) thanks for holding down the fort!
75
(11:15:52 PM) hpagseddy[m]: But if the device gets mainlined, things will definitely change
76
(11:16:27 PM) freekurt: do you know the precise name of the modem that it uses?
77
(11:16:39 PM) hpagseddy[m]: Sadly no
78
(11:16:58 PM) freekurt: i think there is a command you can run in android that will tell you
79
(11:17:16 PM) freekurt: but i forget what it is. i'll try to find it.
80
(11:17:29 PM) hpagseddy[m]: If you can provide it, i can tell the output
81
(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
82
(11:27:59 PM) freekurt: i'm trying to figure out what the code is to enter the service menu.
83 24 Jens Korte
(11:29:52 PM) sunilmohan [~quassel@swecha/sunilmohan] entered the room.
84 14 Kurtis Hanna
(11:31:36 PM) freekurt: looks like it is <notextile>*#32489#</notextile>
85
(11:32:06 PM) freekurt: based on the bottom of this random website https://secretspecs.com/model/samsung/samsung-gt-i9100g/secret-code/
86
(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
87
(11:34:43 PM) freekurt: hpagseddy: ^
88
(11:35:53 PM) hpagseddy[m]: Sorry, i had electricity outage
89
(11:36:06 PM) hpagseddy[m]: Give me 10 minutes
90
(11:36:32 PM) freekurt: no rush at all! please take your time. sorry to hear that.
91
(11:39:09 PM) mmu_man left the room (quit: Ping timeout: 260 seconds).
92
(11:54:03 PM) testman left the room (quit: Quit: The Lounge - https://thelounge.chat).
93
(11:59:27 PM) testman [~testman@cpe-92-37-70-209.dynamic.amis.net] entered the room.
94 24 Jens Korte
(11:59:47 PM) sunilmohan left the room (quit: Ping timeout: 268 seconds).
95 14 Kurtis Hanna
(02/01/2020 12:06:23 AM) hpagseddy[m]: <freekurt "looks like it is <notextile>*#32489#"></notextile> Didnt work
96
(12:07:44 AM) sunilmohan [~quassel@c-71-197-225-149.hsd1.wa.comcast.net] entered the room.
97
(12:07:45 AM) sunilmohan left the room (quit: Changing host).
98
(12:07:45 AM) sunilmohan [~quassel@swecha/sunilmohan] entered the room.
99
(12:12:20 AM) sunilmohan left the room (quit: Ping timeout: 265 seconds).
100
(12:14:06 AM) ggoes [~gregf@fsf/staff/ggoes] entered the room.
101
(12:16:46 AM) sunilmohan [~quassel@c-71-197-225-149.hsd1.wa.comcast.net] entered the room.
102
(12:16:46 AM) sunilmohan left the room (quit: Changing host).
103
(12:16:46 AM) sunilmohan [~quassel@swecha/sunilmohan] entered the room.
104
(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.
105
(12:24:20 AM) hpagseddy[m]: its ok i found the code
106
(12:24:38 AM) troulouliou_dev [~troulouli@unaffiliated/troulouliou-dev/x-4757952] entered the room.
107
(12:27:24 AM) freekurt: oh nice. if you are able to find the modem type please let us know.
108
(12:27:42 AM) hpagseddy[m]: So i am at the main menu
109
(12:27:57 AM) hpagseddy[m]: what kind of modem name am i searching for?
110
(12:29:48 AM) sensiblemn:  XMM6262 is an example of an intel based cellular modem
111
(12:30:10 AM) sensiblemn: actually, i'm mistaken about that
112
(12:30:24 AM) sensiblemn: CMC221 is intel if i'm not mistaken
113
(12:30:31 AM) sensiblemn: MDM9615 is qualcomm
114
(12:30:51 AM) sensiblemn: i don't know if all cell modem names follow the same naming structure
115 24 Jens Korte
(12:33:06 AM) sensiblemn: some other qualcomm modems start with IPQ, MSM, QCS, and SDM
116 14 Kurtis Hanna
(12:33:21 AM) sensiblemn: <notextile>*i think*</notextile>
117
(12:33:23 AM) hpagseddy[m]: SP6260?
118
(12:37:10 AM) freekurt: yeah, that might be it. https://forum.xda-developers.com/showpost.php?p=76556946&postcount=38
119
(12:37:25 AM) freekurt: looks like that page suggests that the i9300T has that modem
120
(12:37:44 AM) hpagseddy[m]: oh nice
121
(12:38:39 AM) hpagseddy[m]: it was really hard to navigate throught service mode without menu and back keys
122
(12:39:20 AM) hpagseddy[m]: So the fullname is like SP6260_T1_01.1300
123
(12:44:13 AM) hpagseddy[m]: What if itis "XMM6260"???
124
(12:44:19 AM) hpagseddy[m]:  * What if it is "XMM6260"???
125
(12:44:59 AM) sensiblemn: are you seeing that in service mode?
126
(12:47:36 AM) hpagseddy[m]: no
127
(12:47:52 AM) hpagseddy[m]: i just saw SP6260_T1_01.1300
128
(12:48:22 AM) hpagseddy[m]: since the numbers match and XMM6260 used in S2
129
(12:48:31 AM) hpagseddy[m]: i made a conclusion like this
130
(12:51:03 AM) forkbomb: i'm pretty sure it would be XMM6260 or XMM6262, same as i9300
131
(12:51:21 AM) sensiblemn: oh, that sounds convenient!
132
(12:51:50 AM) hpagseddy[m]: Perfect
133
(12:51:55 AM) forkbomb: the i9300T is just a Telstra branded i9300 afaik
134
(12:52:15 AM) hpagseddy[m]: that device could be the true open source phone \o/
135
(12:52:17 AM) sensiblemn: forkbomb: we are wondering about the i9100G though
136
(12:52:49 AM) hpagseddy[m]: <freekurt "yeah, that might be it. https://"> i9300T has the same SP6260 naming as i9100g as this shows
137
(12:53:10 AM) sensiblemn: you're correct
138
(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
139
(12:55:09 AM) hpagseddy[m]: t1, thats correct
140
(12:55:18 AM) hpagseddy[m]: but the defconfig isnt
141
(12:55:48 AM) hpagseddy[m]: https://github.com/LineageOS/android_kernel_samsung_t1/blob/10ca03795f659f6f1fa995e8c300a08c3a133354/arch/arm/configs/cyanogenmod_i9100g_defconfig
142
(12:55:52 AM) hpagseddy[m]: this is for the device
143
(12:56:01 AM) forkbomb: hpagseddy[m]: ah, the i9100G is different i think
144
(12:56:06 AM) forkbomb: it's OMAP based
145
(12:56:10 AM) hpagseddy[m]: other one was for the development board??
146
(12:56:15 AM) hpagseddy[m]: Yes it is
147
(12:56:23 AM) hpagseddy[m]: TI OMAP4430, same as Droid 4
148
(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
149
(12:57:38 AM) hpagseddy[m]: i think so
150
(12:57:48 AM) hpagseddy[m]: if it has t1 then it is i9100g
151
(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
152
(12:59:16 AM) hpagseddy[m]: ah yes
153
(12:59:34 AM) TheJollyRoger left the room (quit: Ping timeout: 240 seconds).
154
(12:59:50 AM) hpagseddy[m]: the other one is most likely development board or prototype configs
155
(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?
156
(01:01:27 AM) hpagseddy[m]: yes i compiled and ran it on my device with no problem
157
(01:01:59 AM) hpagseddy[m]: also fixed the old build a bit
158
(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
159
(01:05:55 AM) forkbomb: no, i didn't. very nice!
160
(01:06:35 AM) hpagseddy[m]: well i dont know how to use it so just compiled and flashed with odin
161
(01:06:45 AM) hpagseddy[m]: also one line fix hehe
162
(01:07:33 AM) hpagseddy[m]: it compiled with no problem on 4.6 gcc
163
(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.
164
(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
165
(01:16:17 AM) sensiblemn: yes, for sure.
166
(01:17:00 AM) hpagseddy[m]: but well last decision is yours since you guys are the replicant devs :)
167
(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
168
(01:23:21 AM) hpagseddy[m]: yes it had several issues but performance was good
169
(01:23:33 AM) hpagseddy[m]: it had audio error which was so annoying
170
(01:23:41 AM) hpagseddy[m]: 12.1 was best
171
(01:24:22 AM) sensiblemn: what kind of audio error?
172
(01:25:51 AM) hpagseddy[m]: audio was some kind of disorted
173
(01:39:01 AM) sensiblemn: hpagseddy: did you notice any other issues?
174
(01:39:11 AM) sensiblemn: with 13?
175
(01:40:13 AM) hpagseddy[m]: Gps doesnt work
176
(01:40:18 AM) hpagseddy[m]: Night mode doesnt work
177
(01:16:15 AM) GNUtoo: do we have a git for u-boot or only a tarball?
178
(01:16:16 AM) hpagseddy[m]: sensiblemn: https://forum.xda-developers.com/galaxy-s2/development/guide-repair-totally-sleep-dead-boot-t1701471
179
(01:16:20 AM) hpagseddy[m]: i only know this page
180
(01:17:01 AM) hpagseddy[m]: search u-boot in the page for faster result
181
(01:17:19 AM) hpagseddy[m]: also this https://blog.the-leviathan.ch/?p=408
182
(01:18:33 AM) hpagseddy[m]: so i know it uses u-boot but cant find a link either
183
(01:18:35 AM) GNUtoo: thanks
184
(01:18:56 AM) hpagseddy[m]: you're welcome
185
(01:19:56 AM) sensiblemn: GNUtoo: this looks like omap-usb-tool but it was recently updated https://github.com/LukasTomek/omapboot
186
(01:21:37 AM) hpagseddy[m]: hmm, he forked this repo from https://github.com/kousu/omapboot
187
(01:22:03 AM) hpagseddy[m]: so he added sd card booting
188
(01:22:09 AM) hpagseddy[m]: and some fixed
189
(01:22:13 AM) hpagseddy[m]: fixes*
190
(01:22:25 AM) GNUtoo: https://git.paulk.fr/omap-usb-boot.git
191
(01:22:29 AM) GNUtoo: but it seems down right nw
192
(01:22:32 AM) GNUtoo: *right now
193
(01:23:33 AM) GNUtoo: xloader from IRC logs: https://github.com/hpagseddy/i9100g_xloader
194
(01:23:54 AM) GNUtoo: (thanks hpagseddy[m] )
195
(01:24:22 AM) hpagseddy[m]: you're welcome
196
(01:24:51 AM) hpagseddy[m]: i just fixed one line and decided to fork it
197
(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
198
(01:26:23 AM) GNUtoo: *look into the details
199 3 Denis 'GNUtoo' Carikli
(01:26:59 AM) GNUtoo: And if you tested it on the device, then yours is known to work
200
01:56 <@GNUtoo> Did LineageOS or Cyanogenmod support it at some point?
201
01:57 < hpagseddy[m]> Cyanogenmod untill 13.0
202
01:57 < hpagseddy[m]> Omnirom 4.4 and 5.0.2
203
01:57 <@GNUtoo> ok, that explains why LineageOS has some stuff on it but nothing on the wiki
204 7 Denis 'GNUtoo' Carikli
01:57 < hpagseddy[m]> thats all i remember and tested
205 1 Denis 'GNUtoo' Carikli
[...]
206 7 Denis 'GNUtoo' Carikli
01:58 < hpagseddy[m]> GNUtoo: yeah they just forked it and it just stays there
207
[...]
208
01:59 < hpagseddy[m]> but 12.1 is still cyanogen
209
02:00 < sensiblemn> there was an attempt made at 14.1 but it seems like it was unsuccessful because it wouldn't boot
210
02:00 < sensiblemn> https://github.com/xdaamg/android_device_samsung_i9100g/tree/cm-14.1
211 24 Jens Korte
02:00 < hpagseddy[m]> also someone rebased cm11 to lineage 11
212 45 Denis 'GNUtoo' Carikli
213 28 Denis 'GNUtoo' Carikli
h2. Partitions
214
215
The PIT  of the Galaxy SII (GT-I9100G) can be found in the [[GalaxySIII9100GPit]] page.
216 36 Denis 'GNUtoo' Carikli
217 45 Denis 'GNUtoo' Carikli
|_. PIT |_. Linux name |_. mount point |_. partition type |_. block device |_. Description |
218 51 Denis 'GNUtoo' Carikli
| MLO |\2. Not visible on Linux | | | First stage of bootloader |
219
|\2. EFS | | | mmcblk0p1 | modem data partition |
220 52 Denis 'GNUtoo' Carikli
|\2. SBL1 | | | mmcblk0p2 | |
221 51 Denis 'GNUtoo' Carikli
|\2. SBL2 | | Empty | mmcblk0p3 | |
222
|\2. PARAM  | | | mmcblk0p4 | |
223
|\2. KERNEL | None | zImage | mmcblk0p5 | boot partition, See [[IsorecRecoveryIssue]] for more details |
224
|\2. RECOVERY | None | | mmcblk0p6 | recovery partition, See [[IsorecRecoveryIssue]] for more details |
225
|\2. CACHE| | | mmcblk0p7 | Android cache partition |
226
|\2. MODEM| | | mmcblk0p8 | modem firmware partition |
227
|\2. FACTORYFS| | | mmcblk0p9 | Android system partition |
228
|\2. DATAFS| | | mmcblk0p10 | Android application data |
229
|\2. UMS | | | mmcblk0p11 | user data (music, pictures, etc) |
230 35 Denis 'GNUtoo' Carikli
|\2. HIDDEN | | | mmcblk0p12 | contains some data, and Samsung APK |
231
232
This was constructed from the PIT, TODO: check the partitions content
233 46 Denis 'GNUtoo' Carikli
234
h3. MLO
235 53 Hpag Seddy
236 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:
237
<pre>
238
--- Entry #0 ---
239
Binary Type: 0 (AP)
240
Device Type: 2 (MMC)
241
Identifier: 1
242
Attributes: 0 (Read-Only)
243
Update Attributes: 0
244
Partition Block Size/Offset: 0
245
Partition Block Count: 0
246
File Offset (Obsolete): 0
247
File Size (Obsolete): 0
248
Partition Name: X-loader
249
Flash Filename: MLO
250
FOTA Filename: 
251
</pre>
252
253
This doesn't give any indication of where is MLO, but it's clearly visible with an hexadecimal editor like vbindiff.
254 48 Denis 'GNUtoo' Carikli
255 46 Denis 'GNUtoo' Carikli
|_. Offset from mmcblk0 |_. size |_. comments |
256
| 0x20000 (256k) | 256k | MLO + potentially other stuff |
257
| 0x40000 (512k) | 256k | MLO + potentially less other stuff |
258
259 47 Denis 'GNUtoo' Carikli
260 46 Denis 'GNUtoo' Carikli
Though SBL1 and SBL2 have location and size reported my the bootloader with heimdall print-pit:
261
<pre>
262
--- Entry #2 ---
263
Binary Type: 0 (AP)
264
Device Type: 2 (MMC)
265
Identifier: 2
266
Attributes: 0 (Read-Only)
267
Update Attributes: 0
268
Partition Block Size/Offset: 49152
269
Partition Block Count: 4096
270
File Offset (Obsolete): 0
271
File Size (Obsolete): 0
272
Partition Name: SBL1
273
Flash Filename: Sbl.bin
274
FOTA Filename: 
275
</pre>
276
277
<pre>
278
--- Entry #3 ---
279
Binary Type: 0 (AP)
280
Device Type: 2 (MMC)
281
Identifier: 3
282
Attributes: 0 (Read-Only)
283
Update Attributes: 0
284
Partition Block Size/Offset: 53248
285
Partition Block Count: 4096
286
File Offset (Obsolete): 0
287
File Size (Obsolete): 0
288
Partition Name: SBL2
289
Flash Filename: 
290
FOTA Filename: 
291
</pre>
292 27 Denis 'GNUtoo' Carikli
293
h2. Recovery
294
295
The device is not supported by TWRP, but it was supported by cyanogenmod recoveries:
296
297 1 Denis 'GNUtoo' Carikli
https://web.archive.org/web/20190328070606/http://download.cyanogenmod.org:80/?device=i9100g
298 41 Denis 'GNUtoo' Carikli
299 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/
300 43 Denis 'GNUtoo' Carikli
301
h2. CyanogenMod support and stock Android with the version that has a signed bootloader
302
303
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."
304
305
However this approach has several issues.
306
307
The update doesn't work anymore. 
308
309
It also requires you to put a SIM card in the device, which results in privacy issues.
310
311
In addition to that, it requires you to give the device a network connection, knowing that the device is running a proprietary Android distribution.
312
313
Once you do that it still fails with "Processing failed".
314
315
Right before the failure you can see "Signup for a Samsung account" on the top of the window with "Terms and conditions".
316 44 Denis 'GNUtoo' Carikli
317
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. 
318
319 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.
320
321 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.
322 60 Denis 'GNUtoo' Carikli
323 59 Denis 'GNUtoo' Carikli
h2. Bootloaders
324 60 Denis 'GNUtoo' Carikli
325 15 Denis 'GNUtoo' Carikli
See [[GTI9100GBootloaderFreedom]] and [[GTI9100GBootloaderInterface]]
326 53 Hpag Seddy
327
h2. Hardware
328
329
As far is we get from what we've seen on the motherboard itself, here are our guesses about chips and what they do:
330 55 Hpag Seddy
331
* 6030B1A5 21ZEDL9G2 G1 --- Power IC based on sellers on the web
332
* TWL6040A2 22AH9SW G2 --- Audio codec made by TI https://www.alldatasheet.com/datasheet-pdf/pdf/862981/TI1/TWL6040A2.html
333
* I9811 V 1.0B XG626 F2076538  --- Modem IC
334
* SAMSUNG 210 KMVYLOOOLM-B503 --- EMMC Chip 16GB based on this forum thread https://www.mcrf.ru/forum/showthread.php?t=40277
335 16 Denis 'GNUtoo' Carikli
* K3PE7E700D-XGC1 --- DDR DRAM chip, most likely 1GB
336 5 Denis 'GNUtoo' Carikli
337
h2. Links
338 26 Denis 'GNUtoo' Carikli
339 8 Denis 'GNUtoo' Carikli
* "Official support for CyanogenMod":https://web.archive.org/web/20161225042527/https://wiki.cyanogenmod.org/w/I9100g_Info
340 9 Denis 'GNUtoo' Carikli
* "Unofficial LineageOS 13 for the I9100G":https://forum.xda-developers.com/galaxy-s2/development/rom-lineageos-13-0-t3620246
341 12 Denis 'GNUtoo' Carikli
** "Source code for it":https://github.com/xdaamg
342 11 Denis 'GNUtoo' Carikli
* Infos on the bootloader: https://forum.xda-developers.com/galaxy-s2/development/guide-repair-totally-sleep-dead-boot-t1701471
343 13 Denis 'GNUtoo' Carikli
* "Infos on xloader and how to make a serial port adapter":https://blog.the-leviathan.ch/?p=408
344 1 Denis 'GNUtoo' Carikli
* https://forum.xda-developers.com/showpost.php?p=65159962&postcount=276