Group: Hardware/History/Proprietary G1 files

From LibrePlanet
< Group:Hardware‎ | History
Revision as of 22:39, 11 October 2019 by GNUtoo (talk | contribs) (GNUtoo moved page Group:Hardware/history/Proprietary G1 files to Group:Hardware/History/Proprietary G1 files: fix typo)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Notes on what is proprietary in the G1 drivers or system(not the applications)

The following infos, although correct, are only valid for Android 1.5. Up to date infos for newer versions of Android (up to 2.2) are available on the Replicant project wiki:

This page contains a detailed table with the non-free low level-related components that are used with the HTC Dream/G1/ADP1, the use of each component and infos about whether the component is crucial, can be avoided or has already been replaced.

I found that howto:,and I've followed part of it,at a point it tells that:

5. in vendor/htc/dream/ there is a script that must be run (from that directory) to extract some proprietary binaries from your device.

Here's what I found:

android@port4 ~/freedroid/vendor/htc/dream $ pwd
android@port4 ~/freedroid/vendor/htc/dream $ ls     apns.xml   kernel          README.txt   trout-keypad-qwertz.kcm  trout-keypad-v3.kcm  vold.conf  h2w_headset.kl    init.trout.rc  kernel.version  system.prop  trout-keypad-qwertz.kl   trout-keypad-v3.kl   wlan.ko
android@port4 ~/freedroid/vendor/htc/dream $ vim 
android@port4 ~/freedroid/vendor/htc/dream $ cat README.txt 

---- build configuration ----

You can configure to build for HTC Dream (aka T-Mobile G1) by putting
the following in your file at the root of the source tree:

TARGET_PRODUCT := htc_dream

If you wish to override the included prebuilt kernel image, add:

TARGET_PREBUILD_KERNEL := /path/to/kernel/arch/arm/boot/zImage

---- proprietary files ----

The HTC Dream device includes a small number of proprietary binary 
files that are necessary for Android to work correctly on it.

They can be obtained from your Dream device by running the script in this directory.  It will create the 
proprietary subdirectory, and use adb (which will need to be in 
your path) to copy the files from your device.  You will need to
enable USB Debugging (under Settings/Applications/Development)
for this to work.

android@port4 ~/freedroid/vendor/htc/dream $ cat 

mkdir -p proprietary
adb pull /system/etc/AudioFilter.csv proprietary/AudioFilter.csv
adb pull /system/etc/AudioPara4.csv proprietary/AudioPara4.csv
adb pull /system/etc/gps.conf proprietary/gps.conf
adb pull /system/etc/firmware/brf6300.bin proprietary/brf6300.bin
adb pull /system/bin/akmd proprietary/akmd
adb pull /system/lib/ proprietary/
adb pull /system/lib/ proprietary/
adb pull /system/lib/ proprietary/
adb pull /system/lib/ proprietary/
adb pull /system/lib/ proprietary/
chmod 755 proprietary/akmd

adb pull /system/etc/wifi/Fw1251r1c.bin proprietary/Fw1251r1c.bin
adb pull /system/etc/wifi/tiwlan.ini proprietary/tiwlan.ini

android@port4 ~/freedroid/vendor/htc/dream $ cat 
LOCAL_PATH := $(call my-dir)

# kernel binary

ALL_PREBUILT += $(file)

# keyboard layouts
	$(LOCAL_PATH)/trout-keypad-v3.kl:system/usr/keylayout/trout-keypad-v3.kl \
	$(LOCAL_PATH)/trout-keypad-qwertz.kl:system/usr/keylayout/trout-keypad-qwertz.kl \

# default apns list

# keyboard maps
include $(CLEAR_VARS)
LOCAL_SRC_FILES := trout-keypad-v3.kcm

include $(CLEAR_VARS)
LOCAL_SRC_FILES := trout-keypad-qwertz.kcm

# board specific init.rc

# prebuilt wifi driver

# vold.conf

# htc proprietary code
proprietary := $(LOCAL_PATH)/proprietary

	$(proprietary)/ \
	$(proprietary)/ \
	$(proprietary)/ \
	$(proprietary)/ \
	$(proprietary)/ \
	$(proprietary)/ \
	$(proprietary)/brf6300.bin:system/etc/firmware/brf6300.bin \
	$(proprietary)/akmd:system/bin/akmd \

	$(proprietary)/AudioPara4.csv:system/etc/AudioPara4.csv \

	$(proprietary)/tiwlan.ini:system/etc/wifi/tiwlan.ini \

here are the file command on the extracted proprietary files:

akmd:            ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), stripped
AudioFilter.csv: ASCII text, with very long lines, with CRLF line terminators
AudioPara4.csv:  ASCII text, with very long lines
brf6300.bin:     data
Fw1251r1c.bin:   data
gps.conf:        ASCII text   ELF 32-bit LSB shared object, ARM, version 1 (SYSV), not stripped       ELF 32-bit LSB shared object, ARM, version 1 (SYSV), stripped       ELF 32-bit LSB shared object, ARM, version 1 (SYSV), stripped   ELF 32-bit LSB shared object, ARM, version 1 (SYSV), stripped   ELF 32-bit LSB shared object, ARM, version 1 (SYSV), stripped
tiwlan.ini:      ASCII English text, with very long lines
  • akmd -> compas/acceleratomethers [1]
  • -> gps
  • -> telephony [2]
  • -> 3D opengl ES driver