VIM3 Android T(12) V211126 Preview Rom Release

Here release the VIM3 Android T(12) preview ROM.

Check Firmware Page to download the ROM.
Check Tools Page to download the flash tools.

ROM Infos:

  • ROM version: VIM3_T_AOSP_V211126
  • MD5SUM: eb74013f102520469f40048080a667b8
  • The ROM is for EMMC installation only

Tools Infos:

  • MD5SUM: 54d8e791092206e455892b035530bebd
  • The tools is for Windows flash

Upgrade guidance:

1.Run set_path.bat(run as administrator just once)
2.Run flash_vim3.bat

Be note that the Android 12 are still not quite stable til now, and we are working on to improve it and will continue to built and release new images in the future.
At present, bluetooth cannot connect,any feedback are welcome.

BTW, you can also refer this command to build the your own firmware.

Download AOSP source code:

repo init -u https://android.googlesource.com/platform/manifest -b android-12.0.0_r7
repo sync -j16

Build Command(VIM3):

source build/envsetup.sh
lunch yukawa-userdebug
make TARGET_USE_TABLET_LAUNCHER=true TARGET_VIM3=true TARGET_KERNEL_USE=5.4

Build Command(VIM3L):

source build/envsetup.sh
lunch yukawa-userdebug
make TARGET_USE_TABLET_LAUNCHER=true TARGET_VIM3L=true TARGET_KERNEL_USE=5.4

And we will also commit the patches to upstream Google Android AOSP in the comming days together with Baylibre team @narmstrong.

3 Likes

Hi @tenk.wang ,

Could you please attach the kernel commit id corresponding to the android branch android-12.0.0_r7?
Because I found that the boot.img in the firmware attached above is 5.4.158, which is 5.4.108 in the yukawa-kernel in android-12.0.0_r7 branch.

Moreover. Why the system could not start if I flash the uboot.bin in the tar file? I flash a version in latest aosp and it worls.

Best Regards

@lthxxn
I download commit is “687ec370e553a07ead471904eef9c3ebcd621a8a”.

Command:

cd ${AOSP_TOPDIR}
git clone https://android.googlesource.com/kernel/hikey-linaro -b android-amlogic-bmeson-5.4

export PATH=${AOSP_TOPDIR}/prebuilts/clang/host/linux-x86/clang-r399163b/bin:$PATH
export PATH=${AOSP_TOPDIR}/prebuilts/gas/linux-x86:$PATH
export PATH=${AOSP_TOPDIR}/prebuilts/misc/linux-x86/lz4:$PATH
export ARCH=arm64
export CROSS_COMPILE=aarch64-linux-gnu-
export LLVM=1

cd hikey-linaro
make meson_defconfig
make DTC_FLAGS="-@" -j24

Hi @tenk.wang

It’s strange that when I flash the kernel image, a process named surfaceflinger keep crashing and rebooting.

And I realized that the kernel version (shown in uname -r) in the firmware attached is 5.4.158-g99dbc8a70d15-dirty, which is 5.4.158-g687ec370e553 in the boot.img I build.

Did I miss some patches?

Best Regards

Hi @tenk.wang

Could you please post how to download Android 12 AOSP again? :sweat_smile:
I think I did something wrong…

My Step is:

cd ${AOSP_TOPDIR}
repo init -u https://android.googlesource.com/platform/manifest -b android-12.0.0_r7
repo sync -j16
cd -

git clone https://android.googlesource.com/kernel/hikey-linaro -b android-amlogic-bmeson-5.4
**git checkout 687ec37**
export PATH=${AOSP_TOPDIR}/prebuilts/clang/host/linux-x86/clang-r399163b/bin:$PATH
export PATH=${AOSP_TOPDIR}/prebuilts/gas/linux-x86:$PATH
export PATH=${AOSP_TOPDIR}/prebuilts/misc/linux-x86/lz4:$PATH
export ARCH=arm64
export CROSS_COMPILE=aarch64-linux-gnu-
export LLVM=1

cd hikey-linaro
make meson_defconfig
make DTC_FLAGS="-@" -j24

After make kernel completely I will copy the image.lz4 *.dtb to yukawa-kernel/5.4

and back to the top of aosp

source build/envsetup.sh
lunch yukawa-userdebug
# make installclean
make TARGET_USE_TABLET_LAUNCHER=true TARGET_VIM3=true TARGET_KERNEL_USE=5.4 -j24 
And I flash image to VIM3
fastboot flash boot boot.img
fastboot flash super super.img
fastboot flash cache cache.img
fastboot flash userdata userdata.img
fastboot flash recovery recovery.img
fastboot flash dtbo dtbo-unsigned.img

And System bootup failed…

01-01 01:11:11.141 13869 13869 F DEBUG   : Build fingerprint: 'generic/yukawa/vim3:12/SD1A.210817.019.C4/eng.mtk607.20220104.132830:userdebug/test-keys'
01-01 01:11:11.141 13869 13869 F DEBUG   : Revision: '0'
01-01 01:11:11.141 13869 13869 F DEBUG   : ABI: 'arm64'
01-01 01:11:11.141 13869 13869 F DEBUG   : Timestamp: 1970-01-01 01:11:10.944990910+0000
01-01 01:11:11.141 13869 13869 F DEBUG   : Process uptime: 0s
01-01 01:11:11.141 13869 13869 F DEBUG   : Cmdline: /system/bin/surfaceflinger
01-01 01:11:11.141 13869 13869 F DEBUG   : pid: 13807, tid: 13818, name: RenderEngine  >>> /system/bin/surfaceflinger <<<
01-01 01:11:11.141 13869 13869 F DEBUG   : uid: 1000
01-01 01:11:11.141 13869 13869 F DEBUG   : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
01-01 01:11:11.141 13869 13869 F DEBUG   : Abort message: 'output buffer not gpu writeable'
01-01 01:11:11.141 13869 13869 F DEBUG   :     x0  0000000000000000  x1  00000000000035fa  x2  0000000000000006  x3  0000f2b72570d560
01-01 01:11:11.141 13869 13869 F DEBUG   :     x4  0000000000000010  x5  0000000000000010  x6  0000000000000010  x7  7f7f7f7f7f7f7f7f
01-01 01:11:11.141 13869 13869 F DEBUG   :     x8  00000000000000f0  x9  0000f2b9b9e760b0  x10 ffffff00ffffffdf  x11 0000000000000001
01-01 01:11:11.141 13869 13869 F DEBUG   :     x12 0000f2b72570d530  x13 0000000000000020  x14 0000f2b72570d700  x15 0000000000000080
01-01 01:11:11.142 13869 13869 F DEBUG   :     x16 0000f2b9b9f16050  x17 0000f2b9b9ef2700  x18 0000000017c39c00  x19 00000000000000ac
01-01 01:11:11.142 13869 13869 F DEBUG   :     x20 00000000000035ef  x21 00000000000000b2  x22 00000000000035fa  x23 00000000ffffffff
01-01 01:11:11.142 13869 13869 F DEBUG   :     x24 0000f2b72570e730  x25 0000f2b72570f000  x26 0000f2b72570e490  x27 b400f2b7e7a1a598
01-01 01:11:11.142 13869 13869 F DEBUG   :     x28 0000000000000000  x29 0000f2b72570d5e0
01-01 01:11:11.142 13869 13869 F DEBUG   :     lr  0000f2b9b9ea3efc  sp  0000f2b72570d540  pc  0000f2b9b9ea3f2c  pst 0000000000000000
01-01 01:11:11.142 13869 13869 F DEBUG   : backtrace:
01-01 01:11:11.142 13869 13869 F DEBUG   :       #00 pc 000000000004ff2c  /apex/com.android.runtime/lib64/bionic/libc.so (abort+180) (BuildId: ac3d0baaacdc7c6cdebcc4f2fe5705dd)
01-01 01:11:11.142 13869 13869 F DEBUG   :       #01 pc 0000000000006314  /system/lib64/liblog.so (__android_log_default_aborter+12) (BuildId: 8c9b234f4a12a6d67d7ff8f4e77c0659)
01-01 01:11:11.142 13869 13869 F DEBUG   :       #02 pc 0000000000006e3c  /system/lib64/liblog.so (__android_log_assert+308) (BuildId: 8c9b234f4a12a6d67d7ff8f4e77c0659)
01-01 01:11:11.142 13869 13869 F DEBUG   :       #03 pc 0000000000262cfc  /system/bin/surfaceflinger (android::renderengine::RenderEngine::validateOutputBufferUsage(android::sp<android::GraphicBuffer> const&)+52) (BuildId: 2efa35f775d8ebc47fc32374b6b811e1)
01-01 01:11:11.142 13869 13869 F DEBUG   :       #04 pc 000000000027a08c  /system/bin/surfaceflinger (android::renderengine::skia::SkiaGLRenderEngine::drawLayers(android::renderengine::DisplaySettings const&, std::__1::vector<android::renderengine::LayerSettings const*, std::__1::allocator<android::renderengine::LayerSettings const*> > const&, std::__1::shared_ptr<android::renderengine::ExternalTexture> const&, bool, android::base::unique_fd_impl<android::base::DefaultCloser>&&, android::base::unique_fd_impl<android::base::DefaultCloser>*)+764) (BuildId: 2efa35f775d8ebc47fc32374b6b811e1)
01-01 01:11:11.142 13869 13869 F DEBUG   :       #05 pc 000000000027f8c0  /system/bin/surfaceflinger (android::renderengine::skia::Cache::primeShaderCache(android::renderengine::skia::SkiaRenderEngine*)+1360) (BuildId: 2efa35f775d8ebc47fc32374b6b811e1)
01-01 01:11:11.142 13869 13869 F DEBUG   :       #06 pc 0000000000277fe8  /system/bin/surfaceflinger (android::renderengine::skia::SkiaGLRenderEngine::primeCache()+16) (BuildId: 2efa35f775d8ebc47fc32374b6b811e1)
01-01 01:11:11.142 13869 13869 F DEBUG   :       #07 pc 0000000000276a74  /system/bin/surfaceflinger (_ZNSt3__110__function6__funcIZN7android12renderengine8threaded20RenderEngineThreaded10primeCacheEvE3$_3NS_9allocatorIS6_EEFvRNS3_12RenderEngineEEEclESA_$86df5aa386a85822cba027a89d2bedf4+124) (BuildId: 2efa35f775d8ebc47fc32374b6b811e1)
01-01 01:11:11.142 13869 13869 F DEBUG   :       #08 pc 00000000002741d8  /system/bin/surfaceflinger (android::renderengine::threaded::RenderEngineThreaded::threadMain(std::__1::function<std::__1::unique_ptr<android::renderengine::RenderEngine, std::__1::default_delete<android::renderengine::RenderEngine> > ()>)+1112) (BuildId: 2efa35f775d8ebc47fc32374b6b811e1)
01-01 01:11:11.142 13869 13869 F DEBUG   :       #09 pc 0000000000276280  /system/bin/surfaceflinger (void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (android::renderengine::threaded::RenderEngineThreaded::*)(std::__1::function<std::__1::unique_ptr<android::renderengine::RenderEngine, std::__1::default_delete<android::renderengine::RenderEngine> > ()>), android::renderengine::threaded::RenderEngineThreaded*, std::__1::function<std::__1::unique_ptr<android::renderengine::RenderEngine, std::__1::default_delete<android::renderengine::RenderEngine> > ()> > >(void*)+160) (BuildId: 2efa35f775d8ebc47fc32374b6b811e1)
01-01 01:11:11.142 13869 13869 F DEBUG   :       #10 pc 00000000000b3438  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+264) (BuildId: ac3d0baaacdc7c6cdebcc4f2fe5705dd)

@lthxxn Now,my kernel version is “5.4.163-81966-g0eddf1e50d85”.
Since Google updates frequently, I use this branch now.

repo init -u https://android.googlesource.com/platform/manifest -b android-12.0.0_r13
repo sync -j16

Sorry, AOSP android 12 is not stable yet.

Thanks. :grinning:
I also update to the latest kernel. ==> “5.4.163-g0eddf1e50d85-dirty”

The reason why I asked this question is that I found that the image you release (Android 12 V211126) seems better than the image I build from AOSP. For example, when I try to do drag action on hdmi screen, V211126 seems more smoothly :grinning:.

I think there are still some different between them, but I am not able to find them out right now. Seems I need to learn more about Android and Khadas…

Thanks a lot!!!