Samsung Galaxy S (samsung-i9000): Difference between revisions
s/flash_system/flash_rootfs/ (see https://github.com/postmarketOS/pmbootstrap/pull/1373) |
Roipoussiere (talk | contribs) m update link to mainline Linux kernel s5pv210-galaxys.dts |
||
(27 intermediate revisions by 18 users not shown) | |||
Line 2: | Line 2: | ||
| manufacturer = Samsung | | manufacturer = Samsung | ||
| name = Galaxy S | | name = Galaxy S | ||
| codename = i9000 | | codename = samsung-i9000 | ||
| image = File:Samsung-i9003-galaxy-s-sl-1.jpg | | image = File:Samsung-i9003-galaxy-s-sl-1.jpg | ||
| imagecaption = Samsung Galaxy S | | imagecaption = Samsung Galaxy S | ||
| releaseyear = 2010 | | releaseyear = 2010 | ||
| originalsoftware = Android 2.3.6 ( | | originalsoftware = Android | ||
| chipset = Samsung Exynos | | originalversion = 2.1 (Linux 2.6.29) | ||
| extendedversion = 2.3.6 (Linux 2.6.35) | |||
| chipset = Samsung Exynos 3110 | |||
| cpu = 1.0 GHz Cortex-A8 | | cpu = 1.0 GHz Cortex-A8 | ||
| gpu = PowerVR SGX 540 | | gpu = PowerVR SGX 540 | ||
| storage = | | storage = 8/16 GB | ||
| display = 480x800 | | display = 480x800 | ||
| memory = 512 MB | | memory = 512 MB | ||
| architecture = armv7 | |||
| type = Handset | |||
| status_usbnet = Y | |||
| status_flashing = P | |||
| status_touch = Y | |||
| status_screen = Y | |||
| status_wifi = P | |||
| status_xwayland = | |||
| status_fde = | |||
| status_mainline = Y | |||
| status_battery = | |||
| status_3d = | |||
| status_accel = | |||
| status_audio = | |||
| status_bluetooth = | |||
| status_camera = | |||
| status_gps = | |||
| status_mobiledata = | |||
| status_sms = | |||
| status_calls = | |||
| booting = yes | |||
| packaged = no | |||
}} | }} | ||
Line 18: | Line 42: | ||
* Nicknack | * Nicknack | ||
== | == Users owning this device == | ||
{{Device owners}} | |||
== | |||
== How to enter flash mode == | == How to enter flash mode == | ||
* Connect a USB cable | * Connect a USB cable | ||
* Make sure, the device is powered off | * Make sure, the device is powered off | ||
* Hold | * Hold {{Button|Power}} + {{Button|Home}} + {{Button|Volume Down}} | ||
== Installation == | == Installation == | ||
Line 52: | Line 57: | ||
==== netcat method ==== | ==== netcat method ==== | ||
Flashing to device memory should be possible using [https:// | Flashing to device memory should be possible using [https://gitlab.postmarketos.org/postmarketOS/pmbootstrap/-/issues/456 drebrez's netcat method (#456)] and [https://wiki.postmarketos.org/wiki/Samsung_Galaxy_SII_(samsung-i9100) guide from Galaxy S II]. | ||
===== Step by step guide for Flashing to device memory ===== | ===== Step by step guide for Flashing to device memory ===== | ||
Line 59: | Line 64: | ||
$ pmbootstrap init | $ pmbootstrap init | ||
$ pmbootstrap build device-samsung-i9000 | $ pmbootstrap build device-samsung-i9000 | ||
$ pmbootstrap install -- | $ pmbootstrap install --sdcard=/dev/mmcblk | ||
-- Set phone to ODIN mode | -- Set phone to ODIN mode | ||
Line 68: | Line 73: | ||
$ pmbootstrap initfs hook_add debug-shell | $ pmbootstrap initfs hook_add debug-shell | ||
-- Flash Kernel and Recovery (phone will reboot to screen " | -- Flash Kernel and Recovery (phone will reboot to screen "debug-shell is active" [https://postmarketos.org/static/img/2017-12/debug-shell-i9070.jpg]) | ||
$ pmbootstrap flasher flash_kernel | $ pmbootstrap flasher flash_kernel | ||
Line 95: | Line 100: | ||
-- Switch to pmboostrap chroot (on the computer in other terminal) | -- Switch to pmboostrap chroot (on the computer in other terminal) | ||
$ | $ pmbootstrap chroot --suffix native | ||
-- Install pv (in the chroot) | -- Install pv (in the chroot) | ||
Line 129: | Line 134: | ||
== Links == | == Links == | ||
Supported in mainline Linux kernel since 4.18 | |||
* [https://github.com/torvalds/linux/blob/master/arch/arm/boot/dts/samsung/s5pv210-galaxys.dts s5pv210-galaxys.dts] | |||
u-boot bootloader (by xc-racer99). It can boot old and mainline kernels from sdcard/mmc, supports mass storage mode and fastboot | |||
* [https://github.com/xc-racer99/u-boot-aries/ u-boot-aries] | |||
Device package | |||
* [https://github.com/Nicknack/pmOs_device_samsung_i9000 package] | * [https://github.com/Nicknack/pmOs_device_samsung_i9000 package] | ||
Device tree | |||
* [https://github.com/LineageOS/android_device_samsung_galaxysmtd LineageOS device tree] | * [https://github.com/LineageOS/android_device_samsung_galaxysmtd LineageOS device tree] | ||
Line 155: | Line 166: | ||
Replicant | Replicant | ||
* [https://redmine.replicant.us/projects/replicant/wiki/GalaxySI9000 | * [https://redmine.replicant.us/projects/replicant/wiki/GalaxySI9000 specifications] |
Latest revision as of 22:33, 27 March 2025
This means that it cannot be selected in pmbootstrap.
![]() Samsung Galaxy S | |
Manufacturer | Samsung |
---|---|
Name | Galaxy S |
Codename | samsung-i9000 |
Released | 2010 |
Type | handset |
Hardware | |
Chipset | Samsung Exynos 3110 |
CPU | 1.0 GHz Cortex-A8 |
GPU | PowerVR SGX 540 |
Display | 480x800 |
Storage | 8/16 GB |
Memory | 512 MB |
Architecture | armv7 |
Software | |
Original software | Android |
Original version | 2.1 (Linux 2.6.29) |
Extended version | 2.3.6 (Linux 2.6.35) |
postmarketOS | |
Category | testing |
Pre-built images | no |
Mainline | yes |
Flashing |
Partial |
---|---|
USB Networking |
Works |
Internal storage |
No data |
SD card |
No data |
Battery |
No data |
Screen |
Works |
Touchscreen |
Works |
Multimedia | |
3D Acceleration |
No data |
Audio |
No data |
Camera |
No data |
Camera Flash |
No data |
Connectivity | |
WiFi |
Partial |
Bluetooth |
No data |
GPS |
No data |
NFC |
No data |
Modem | |
Calls |
No data |
SMS |
No data |
Mobile data |
No data |
Miscellaneous | |
FDE |
No data |
USB OTG |
No data |
HDMI/DP |
No data |
Sensors | |
Accelerometer |
No data |
Magnetometer |
No data |
Ambient Light |
No data |
Proximity |
No data |
Hall Effect |
No data |
Haptics |
No data |
Barometer |
No data |
Contributors
- Nicknack
Users owning this device
- Bastindo (Notes: dead oled)
- Colaur (Notes: Works)
- Eloy
- I9505 someone
How to enter flash mode
- Connect a USB cable
- Make sure, the device is powered off
- Hold + +
Installation
Boot process
We're using the heimdall-isorec
flash method, see deviceinfo_flash_methods for more information.
netcat method
Flashing to device memory should be possible using drebrez's netcat method (#456) and guide from Galaxy S II.
Step by step guide for Flashing to device memory
- Build image (on your computer) and prepare the installation as usual
$ pmbootstrap init $ pmbootstrap build device-samsung-i9000 $ pmbootstrap install --sdcard=/dev/mmcblk
-- Set phone to ODIN mode
-- Set image for NETCAT flash method
$ pmbootstrap initfs hook_add debug-shell
-- Flash Kernel and Recovery (phone will reboot to screen "debug-shell is active" [1])
$ pmbootstrap flasher flash_kernel
-- Check USB network connection to phone
ping 172.16.42.1
(if it does not ping, try replugging usb cable few times)
-- If USB network connection is still not up: check for correct link with ip a
$ sudo ip l set enp0s20u2 address 12:12:12:12:12:12 $ sudo dhclient -v enp0s20u2
-- Connect to phone with telnet
$ telnet 172.16.42.1
-- Start netcat to listen for image (on the phone) /dev/mmcblk0p2 should be FACTORYFS partition you check by running fdisk -l /dev/mmcblk0
/ # nc -v -l -p 60000 > /dev/mmcblk0p2
-- Switch to pmboostrap chroot (on the computer in other terminal)
$ pmbootstrap chroot --suffix native
-- Install pv (in the chroot)
/ # apk add pv
-- Send image from computer to netcat (on the computer)
/ # pv /home/pmos/rootfs/samsung-i9000.img | nc 172.16.42.1 60000
-- Close both nc with CTRL+C when transfer finishes and reboot the phone with power button
Wifi
- Create conf for wpa_supplicant
$ wpa_passphrase "SSID" "password" > wifi
Note : If you are connecting to a hidden wireless network, make sure to add line "scan_ssid=1" after the ssid line in your generated conf file
- Connect to wifi AP
$ sudo wpa_supplicant -i wlan0 -c wifi &
- Get ip address from dhcp server (in another terminal)
$ sudo udhcpc -i wlan0
To set wifi connection to start automatically on boot, please refer here wifi
Photos
Links
Supported in mainline Linux kernel since 4.18
u-boot bootloader (by xc-racer99). It can boot old and mainline kernels from sdcard/mmc, supports mass storage mode and fastboot
Device package
Device tree
Current kernel
Alternative kernels
Firmware files
Replicant