From 963c9337d4ea1bc844a787b771223f3020b36ffe Mon Sep 17 00:00:00 2001 From: Kevin Liu Date: Sun, 20 Aug 2017 08:41:28 -0400 Subject: [PATCH] maguro: add wifi, framebuffer/weston, and touchscreen support (#425) * Add maguro wifi support * enable framebuffer and VT, WESTON STARTS * make touchscreen work & fix merge conflict Cherry-pick of lawl's commit, ed552e5d9272204c12f67bcb0401b3e08e57d35f. --- .../90-android-touch-dev.rules | 5 + aports/device/device-samsung-maguro/APKBUILD | 22 +++- .../device/device-samsung-maguro/bcmdhd.cal | 103 ++++++++++++++++++ .../device-samsung-maguro/initfs-hook.sh | 4 + aports/device/linux-samsung-tuna/APKBUILD | 2 +- .../config-samsung_tuna.armhf | 18 ++- 6 files changed, 146 insertions(+), 8 deletions(-) create mode 100644 aports/device/device-samsung-maguro/90-android-touch-dev.rules create mode 100644 aports/device/device-samsung-maguro/bcmdhd.cal create mode 100644 aports/device/device-samsung-maguro/initfs-hook.sh diff --git a/aports/device/device-samsung-maguro/90-android-touch-dev.rules b/aports/device/device-samsung-maguro/90-android-touch-dev.rules new file mode 100644 index 00000000..ecb1583d --- /dev/null +++ b/aports/device/device-samsung-maguro/90-android-touch-dev.rules @@ -0,0 +1,5 @@ +# use 'weston-calibrator' to calibrate the touchscreen! +SUBSYSTEM=="input", ATTRS{name}=="Melfas MMSxxx Touchscreen", \ +ENV{ID_INPUT}="1", ENV{ID_INPUT_TOUCHSCREEN}="1" \ +ENV{WL_CALIBRATION}="1.020764 0.024113 -27.560623 -0.021433 1.007368 0.578735" + diff --git a/aports/device/device-samsung-maguro/APKBUILD b/aports/device/device-samsung-maguro/APKBUILD index 60281573..8437eedd 100644 --- a/aports/device/device-samsung-maguro/APKBUILD +++ b/aports/device/device-samsung-maguro/APKBUILD @@ -1,15 +1,20 @@ pkgname=device-samsung-maguro pkgver=2 -pkgrel=7 +pkgrel=8 pkgdesc="Google Galaxy Nexus (GSM)" url="https://github.com/postmarketOS" arch="noarch" license="MIT" -depends="linux-samsung-tuna mkbootimg" +depends="linux-firmware linux-samsung-tuna mkbootimg" makedepends="" install="" subpackages="" -source="deviceinfo" +source=" + deviceinfo + bcmdhd.cal + initfs-hook.sh + 90-android-touch-dev.rules +" options="!check" build() { @@ -19,6 +24,15 @@ build() { package() { install -D -m644 "$srcdir"/deviceinfo \ "$pkgdir"/etc/deviceinfo + install -D -m644 "$srcdir"/bcmdhd.cal \ + "$pkgdir"/etc/wifi/bcmdhd.cal + install -D -m644 "$srcdir"/initfs-hook.sh \ + "$pkgdir"/etc/postmarketos-mkinitfs/hooks/00-${pkgname}.sh + install -D -m644 "$srcdir"/90-android-touch-dev.rules \ + "$pkgdir"/etc/udev/rules.d/90-android-touch-dev.rules } -sha512sums="48d66379b833fdef65de3cefa82eeb25c10cce156caf579d936cf089a0ce9cf1b447f40ccd89dfeb6c8919a47209f110829fa4cd4acdd1c0e02cdb188aeeb07a deviceinfo" +sha512sums="48d66379b833fdef65de3cefa82eeb25c10cce156caf579d936cf089a0ce9cf1b447f40ccd89dfeb6c8919a47209f110829fa4cd4acdd1c0e02cdb188aeeb07a deviceinfo +27e89ef3102a89e99065ea12cd36d8ebe1c7e95f2f7082c0e7e3e280fcd2473aa197538bae18ac8995ddf3a7dd962622a56a6f0c037ad193fa9bba95bbb7ee9c bcmdhd.cal +8590967fa10388a890fdfafdb1070b9ab22dc89e06a3a8834806c772191e3b67de7b914b0d68e5ddf581cee715cb90f3f24abcb8762c415ff328c6da23e55d52 initfs-hook.sh +f8c85b0ffcee751ee30d5f1fd8ed8e8413d9599875839fbc9bcfd85f08dbf203fecbd171fc3fe4e2742c5b8243132f6110142ff41193d6ad7df29b411516e199 90-android-touch-dev.rules" diff --git a/aports/device/device-samsung-maguro/bcmdhd.cal b/aports/device/device-samsung-maguro/bcmdhd.cal new file mode 100644 index 00000000..f70fdf7c --- /dev/null +++ b/aports/device/device-samsung-maguro/bcmdhd.cal @@ -0,0 +1,103 @@ +manfid=0x2d0 +prodid=0x0532 +vendid=0x14e4 +devid=0x4360 +boardtype=0x0532 +boardrev=0x20 +boardflags=0x10080201 +nocrc=1 +xtalfreq=37400 +xtalmode=0x20,0x4,0 +boardnum=22 +macaddr=00:90:4c:c5:12:38 +ag0=252 +ag1=252 +aa2g=1 +aa5g=1 +ccode=EU +regrev=5 +#for BT-coexistence +btc_params80=0 +btc_params6=10 +btc_params8=10000 +sd_gpout=0 +# sd_oobonly=1 +muxenab=0x10 +# 2G PA param_B42R 110927 +pa0b0=0x12E4 +pa0b1=0xFE09 +pa0b2=0xFF9A +#pa0itssit=62 +rssismf2g=0xa +rssismc2g=0x3 +rssisav2g=0x7 +# rssi params for 5GHz B42R_110803 +#rssismf5g=0x4 +rssismf5g=0xa +rssismc5g=0x7 +rssisav5g=0x1 +#PA parameters for lower band +pa1lob0=0x144F +pa1lob1=0xFD6B +pa1lob2=0xFF3B +#PA parameters for midband +pa1b0=0x139C +pa1b1=0xFD87 +pa1b2=0xFF4F +#PA parameters for high band +pa1hib0=0x12CA +pa1hib1=0xFD9A +pa1hib2=0xFF4E +# 2G PA offset +maxp2ga0=64 +sromrev=3 +cckpo=0 +ofdm2gpo=0x66666666 +mcs2gpo0=0xaaaa +mcs2gpo1=0xaaaa +# 5G PA offset +maxp5ga0=66 +maxp5gla0=66 +maxp5gha0=66 +ofdm5gpo=0x22222222 +ofdm5glpo=0x11111111 +ofdm5ghpo=0x22222222 +mcs5gpo0=0x6666 +mcs5gpo1=0x6666 +mcs5glpo0=0x5555 +mcs5glpo1=0x5555 +mcs5ghpo0=0x6666 +mcs5ghpo1=0x6666 +cckPwrOffset=4 +cckdigfilttype=22 +ofdmdigfilttype=2 +extpagain5g=2 +#wl0id=0x431b +# For 2GHz Tx EVM/SM +rfreg033=0x19 +rfreg033_cck=0x1d +pacalidx2g=65 +dacrate2g=160 +txalpfbyp2g=1 +bphyscale=17 +# 5GHz LOFT and IQ CAL +txgaintbl5g=1 +txiqlopapu5g=1 +txiqlopag5g=0x10 +iqlocalidx5g=24 +# 5GHz Noise CAL parameter +noise_cal_po_5g=5 +noise_cal_enable_5g=0 +# 2GHz RxPER at low rates +noise_cal_ref_2g=56 +noise_cal_po_bias_2g=-4 +noise_cal_enable_2g=1 +# Max input level on a-band +triso5g=9 +# Tx power control, especially temp. +tssitime=1 +#fc+1.7GHz Spur Elimination +loidacmode5g=1 +swctrlmap_2g=0x84048404, 0x82028202, 0x84048404, 0x010202, 0x1ff +swctrlmap_5g=0xC040C040, 0xB030A020, 0xA020C040, 0x010A02, 0x2F8 + diff --git a/aports/device/device-samsung-maguro/initfs-hook.sh b/aports/device/device-samsung-maguro/initfs-hook.sh new file mode 100644 index 00000000..e7a2ccc8 --- /dev/null +++ b/aports/device/device-samsung-maguro/initfs-hook.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +# set framebuffer resolution +cat /sys/class/graphics/fb0/modes > /sys/class/graphics/fb0/mode diff --git a/aports/device/linux-samsung-tuna/APKBUILD b/aports/device/linux-samsung-tuna/APKBUILD index 5c3529fe..3606a088 100644 --- a/aports/device/linux-samsung-tuna/APKBUILD +++ b/aports/device/linux-samsung-tuna/APKBUILD @@ -103,7 +103,7 @@ package() { } sha512sums="02216efe8944ca9c5bb16b3b803c0200cffb2e8beab7da18a6cbeeff81cd44aadacb3721f835ecf86b73e274a5338b11595c9ce1dc7c18ae8d57075443885495 linux-samsung-tuna-e14e5fe679a63eef92346cde874175d8b62b6a4a.tar.gz -c6235a1db9a48cf2ba371ffcff50254095fe32c7982d7899a93773edb5fb18cb94e7a257146884f27aac34711ce8cfa9fd2fcc62f4a3fc5869e23a3f286c0128 config-samsung_tuna.armhf +0456268463a7d0568e5d58626dd689aa156eefbdf44d28386ebc1c51009a91825160521e2ef1272b09e7f67c8ae0d99c22a94eb9bb59d99f04ca5f579a841c61 config-samsung_tuna.armhf d80980e9474c82ba0ef1a6903b434d8bd1b092c40367ba543e72d2c119301c8b2d05265740e4104ca1ac5d15f6c4aa49e8776cb44264a9a28dc551e0d1850dcc compiler-gcc6.h d8cdc1137e6a4ad78a3a31acc40f0c98f4db272eaf5b90ee850abb83b80916c4ff3c18a0a181e94eebead44213f6314e3363d0c4b91d95ee1adafbcad6dc57ab android_paranoid_network.patch 65eb11dca6645073885228af6aae6efa40b6f063fd04157b501acf40368bf331dd701f746ed187659f654a9354ddf304aaefca8ffc9ea2b00c145c61162e1189 fix_old_perl_code.patch" diff --git a/aports/device/linux-samsung-tuna/config-samsung_tuna.armhf b/aports/device/linux-samsung-tuna/config-samsung_tuna.armhf index a5414e35..ff181fb0 100644 --- a/aports/device/linux-samsung-tuna/config-samsung_tuna.armhf +++ b/aports/device/linux-samsung-tuna/config-samsung_tuna.armhf @@ -533,6 +533,7 @@ CONFIG_WAKELOCK_STAT=y CONFIG_USER_WAKELOCK=y CONFIG_EARLYSUSPEND=y # CONFIG_NO_USER_SPACE_SCREEN_ACCESS_CONTROL is not set +# CONFIG_CONSOLE_EARLYSUSPEND is not set CONFIG_FB_EARLYSUSPEND=y CONFIG_PM_SLEEP=y CONFIG_PM_SLEEP_SMP=y @@ -1213,8 +1214,8 @@ CONFIG_WIFI_CONTROL_FUNC=y # CONFIG_ATH_COMMON is not set # CONFIG_BCM4329 is not set CONFIG_BCMDHD=y -CONFIG_BCMDHD_FW_PATH="/system/vendor/firmware/fw_bcmdhd.bin" -CONFIG_BCMDHD_NVRAM_PATH="/system/etc/wifi/bcmdhd.cal" +CONFIG_BCMDHD_FW_PATH="/lib/firmware/brcm/brcmfmac4330-sdio.bin" +CONFIG_BCMDHD_NVRAM_PATH="/etc/wifi/bcmdhd.cal" # CONFIG_DHD_USE_STATIC_BUF is not set # CONFIG_DHD_USE_SCHED_SCAN is not set CONFIG_DHD_ENABLE_P2P=y @@ -1425,7 +1426,11 @@ CONFIG_SERIO_LIBPS2=y # # Character devices # -# CONFIG_VT is not set +CONFIG_VT=y +# CONFIG_CONSOLE_TRANSLATIONS is not set +# CONFIG_VT_CONSOLE is not set +CONFIG_HW_CONSOLE=y +# CONFIG_VT_HW_CONSOLE_BINDING is not set CONFIG_UNIX98_PTYS=y # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set # CONFIG_LEGACY_PTYS is not set @@ -1819,6 +1824,12 @@ CONFIG_DISPLAY_SUPPORT=y # # Display hardware drivers # + +# +# Console display driver support +# +CONFIG_DUMMY_CONSOLE=y +# CONFIG_FRAMEBUFFER_CONSOLE is not set # CONFIG_LOGO is not set CONFIG_SOUND=y # CONFIG_SOUND_OSS_CORE is not set @@ -2312,6 +2323,7 @@ CONFIG_MACH_NO_WESTBRIDGE=y # # Speakup console speech # +# CONFIG_SPEAKUP is not set # CONFIG_TOUCHSCREEN_CLEARPAD_TM1217 is not set # CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4 is not set