I`m doing, wait two or three days.
[ROM][Android10][RockPI 4] Android Q Firmware Release
Android 10 AOSP it’s open source!!
I have the issue:
davemf@i7-8700-64gb-ram:~/ROCK_Pi4c$ repo init -u https://github.com/radxa/manifests.git -b rockchip-android-10 -m android-q-release.xml
Get https://gerrit.googlesource.com/git-repo/clone.bundle
Get https://gerrit.googlesource.com/git-repo
remote: Counting objects: 1, done
remote: Finding sources: 100% (31/31)
remote: Total 31 (delta 11), reused 31 (delta 11)
Unpacking objects: 100% (31/31), done.
From https://gerrit.googlesource.com/git-repo
65f51ad..50a81de master -> origin/master
* [new tag] v2.9 -> v2.9
repo: warning: Python 2 is no longer supported; Please upgrade to Python 3.6+.
... A new version of repo (2.8) is available.
... New version is available at: /home/davemf/ROCK_Pi4c/.repo/repo/repo
... The launcher is run from: /usr/bin/repo
!!! The launcher is not writable. Please talk to your sysadmin or distro
!!! to get an update installed.
Downloading manifest from https://github.com/radxa/manifests.git
warn: .repo/manifests: Not replacing locally modified commit-msg hook
remote: Enumerating objects: 210, done.
remote: Counting objects: 100% (210/210), done.
remote: Compressing objects: 100% (67/67), done.
remote: Total 1081 (delta 151), reused 202 (delta 143), pack-reused 871
Receiving objects: 100% (1081/1081), 593.33 KiB | 635.00 KiB/s, done.
Resolving deltas: 100% (705/705), done.
fatal: manifest 'android-q-release.xml' not available
fatal: manifest android-q-release.xml not found
How to fix it?
Change to
repo init -u https://github.com/radxa/manifests.git -b rockchip-android-10 -m rockchip-q-release.xml
Also no update.img after build project:
C/system.img --partition vendor:readonly:264634368:rockchip_dynamic_partitions --image vendor=out/target/product/RockPi4C/vendor.img --partition product:readonly:289423360:rockchip_dynamic_partitions --image product=out/target/product/RockPi4C/product.img --partition odm:readonly:552960:rockchip_dynamic_partitions --image odm=out/target/product/RockPi4C/odm.img --sparse --output out/target/product/RockPi4C/super.img"
2020-09-13 00:24:00 - common.py - INFO : lpmake I 09-13 00:23:56 11618 11618 builder.cpp:949] [liblp]Partition system will resize from 0 bytes to 907767808 bytes
lpmake I 09-13 00:23:56 11618 11618 builder.cpp:949] [liblp]Partition vendor will resize from 0 bytes to 264634368 bytes
lpmake I 09-13 00:23:56 11618 11618 builder.cpp:949] [liblp]Partition product will resize from 0 bytes to 289423360 bytes
lpmake I 09-13 00:23:56 11618 11618 builder.cpp:949] [liblp]Partition odm will resize from 0 bytes to 552960 bytes
2020-09-13 00:24:00 - build_super_image.py - INFO : Done writing image out/target/product/RockPi4C/super.img
#### build completed successfully (01:59:25 (hh:mm:ss)) ####
rm: cannot remove '/home/davemf/ROCK_Pi4c/rockdev': No such file or directory
davemf@i7-8700-64gb-ram:~/ROCK_Pi4c$
super.img - Is it final android ROM for Pi4?
No, it’s vendor, oem and system combined.
Try creating rockdev then run ./mkimage.sh
Then in the rockdev folder rename the RockPi4B to Image and copy to RKTools/Linux/RK_Pack_Firmware and run mkupdate_rk3399.sh in this folder.
before run ./mkimage.sh need to enter lunch command.
Which lunch is need for pi4c board? RockPi4C-userdebug is it right?
Yes that is right.
I forgot when you run the included script that it doesn’t save the commands for manual try later.
source build/envsetup.sh then
lunch RockPi4C-userdebug or lunch and select it from the list.
Yes, it is work.
Thank you!
So, I have big issue with ROM.
I added gapps and gps.default.so library in /vendor/lib64/hw folder.
I built ROM with command ./build-rockpi-4c.sh and had the first issue.
I made this steps and got the update.img
Out folder contains all standart library and my gps.default.so file.
I flash my ROM and go to /vendor/lib64/hw folder. This folder contains libraries and HIDL services, but almost all have size 0. Gapps are work fine.
Why is it happened? Nothing to work!
@Lili
I see in Settings - Display - HDMI
The settings gets disabled then you can’t change the resolution.
Thank you for your test.
I already know the problem.
How do you add these so’s?
Hello,
Is build-rockpi-4c.sh working?
I executed this script. but created image was uncomplete.
“device/rockchip/rk3399/RockPi4C/parameter.txt” don’t have system,vendor partition.
May I need to recreate parameter.txt?
@minami_uni
In Android 10 system, vendor, odm partitions are merged as one and called super.img so they won’t be in the parameter.txt anymore.
@Lili
Hope you can get gpt images to build too.
Also SDDiskTool v1.62 if you use SD Boot on RKFirmware images to burn firmware to a micro-sd card, it boots to recovery and doesn’t load Android.
I added with PRODUCT_COPY_FILES in RockPi4C.mk file, but it doesn’t matter, the standart library is empty too! Why? They have size in out folder, but size is ZERO in ROM.
PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/bootanimation.zip:product/media/bootanimation.zip \ $(LOCAL_PATH)/lib_hw/gps.default.so:vendor/lib/hw/gps.default.so \ $(LOCAL_PATH)/lib64_hw/gps.default.so:vendor/lib64/hw/gps.default.so \ $(LOCAL_PATH)/lib64_hw/settings.conf:vendor/settings.conf
Is it normal log for ./mkimage.sh command?
davemf@i7-8700-64gb-ram:~/ROCK_Pi4c$ ./mkimage.sh
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
device/rockchip/common/device.mk:868: warning: Please set client id with your own MADA ID!
TARGET_PRODUCT=RockPi4C
TARGET_BASE_PARAMETER_IMAGE==
HIGH_RELIABLE_RECOVERY_OTA=false
BOARD_AVB_ENABLE=false
system filesysystem is ext4
create dtbo.img....
done.
create boot.img....
BOARD_AVB_ENABLE is false, make boot.img from kernel.
done.
create recovery.img....
BOARD_AVB_ENABLE is false, make recovery.img from kernel && out.
done.
create system.img.... BOARD_AVB_ENABLE is false, make system.img from out.
in=/home/davemf/ROCK_Pi4c/out/target/product/RockPi4C/system.img out=/home/davemf/ROCK_Pi4c/out/target/product/RockPi4C/system.img.out align=1024
Total of 297916 4096-byte output blocks in 14 input chunks.
Generating optimized sparse image done,total_chunk=12.
done.
create vbmeta.img.... BOARD_AVB_ENABLE is false,use default vbmeta.imgdone.create vendor.img...BOARD_AVB_ENABLE is false, make vendor.img from out.
in=/home/davemf/ROCK_Pi4c/out/target/product/RockPi4C/vendor.img out=/home/davemf/ROCK_Pi4c/out/target/product/RockPi4C/vendor.img.out align=1024
Total of 64623 4096-byte output blocks in 6 input chunks.
Generating optimized sparse image done,total_chunk=4.
done.create odm.img...BOARD_AVB_ENABLE is false, make odm.img from out.
in=/home/davemf/ROCK_Pi4c/out/target/product/RockPi4C/odm.img out=/home/davemf/ROCK_Pi4c/out/target/product/RockPi4C/odm.img.out align=1024
Total of 1175 4096-byte output blocks in 2 input chunks.
Generating optimized sparse image done,total_chunk=2.
done.
copy super.img...
create misc.img.... done.
create uboot.img...done.
create trust.img...done.
create loader...done.
create resource.img...done.
create kernel.img...done.
create config.cfg...done.
create parameter...done.
@mo123 Do you have zero library size in /vendor/lib64/hw folder?
@davemf
I think more changes are needed for gps.
Perhaps try grep -r gps in the /device/rockchip and /vendor/rockchip/common folders to check.
Did you remember to add
diff --git a/device/rockchip/common/device.mk b/device/rockchip/common/device.mk
index e49f228..883fc6f 100755
--- a/device.mk
+++ b/device.mk
@@ -23,6 +23,11 @@ PRODUCT_PACKAGES += \
displayd \
libion
+# GPS HAL
+PRODUCT_PACKAGES += \
+ android.hardware.gnss@1.0-impl \
+ android.hardware.gnss@1.0-service
+
#enable this for support f2fs with data partion
BOARD_USERDATAIMAGE_FILE_SYSTEM_TYPE := f2fs
--- a/device/rockchip/common/manifest.xml
+++ b/device/rockchip/common/manifest.xml
@@ -185,6 +185,14 @@
</interface>
<fqname>@1.0::IHdmiCec/default</fqname>
</hal>
-
+ <hal format="hidl">
+ <name>android.hardware.gnss</name>
+ <transport>hwbinder</transport>
+ <version>1.0</version>
+ <interface>
+ <name>IGnss</name>
+ <instance>default</instance>
+ </interface>
+ </hal>
</manifest>