当前位置: 首页 > news >正文

20231226在Firefly的AIO-3399J开发板上在Android11下调通后摄像头ov13850

20231226在Firefly的AIO-3399J开发板上在Android11下调通后摄像头ov13850
2023/12/26 8:22


开发板:Firefly的AIO-3399J【RK3399】
SDK:rk3399-android-11-r20211216.tar.xz【Android11】
Android11.0.tar.bz2.aa【ToyBrick】
Android11.0.tar.bz2.ab
Android11.0.tar.bz2.ac

https://wiki.t-firefly.com/AIO-3399J/prepare_compile_android.html
AIO-3399J产品规格书 立即购买
AIO-3399J 采用 RK3399 六核(A72x2+A53x4) 64 位处理器,主频高达1.8GHz,集成了四核 Mali-T860 GPU,性能优异。


前情提要:由于使用Firefly的AIO-3399J开发板的Android10的SDK,kernel编译使用Firefly的AIO-3399J的,lunch之后的Android使用Rockchip官方的编译模式,也能打开前后摄像头ov13850。
可能的原因,Firefly只针对kernel中的(config)DTS和ov13850的驱动程序动过手术。可能Android10还是比较原始的!
【或者没有修改Android系统中的camera部分!】


(一)、kernel部分的修改:
1、firefly_defconfig
Z:\AIO-3399J\rk3399_Android10.0\rk3399_Android10.0\kernel\arch\arm64\configs\firefly_defconfig
Z:\rk3399-android-11\kernel\arch\arm64\configs\firefly_defconfig


2、拷贝Firefly的AIO-3399J开发板的Android10的SDK中的Firefly的DTS文件:
Z:\AIO-3399J\rk3399_Android10.0\rk3399_Android10.0\kernel\arch\arm64\boot\dts\rockchip
Z:\rk3399_Android10.0\kernel\arch\arm64\boot\dts\rockchip\

Z:\rk3399_Android10.0\kernel\arch\arm64\boot\dts\rockchip\Makefile
Z:\rk3399_Android10.0\kernel\arch\arm64\boot\dts\rockchip\rk3399-android.dtsi
Z:\rk3399_Android10.0\kernel\arch\arm64\boot\dts\rockchip\rk3399-dram-default-timing.dtsi
Z:\rk3399_Android10.0\kernel\arch\arm64\boot\dts\rockchip\rk3399-firefly-aio.dts
Z:\rk3399_Android10.0\kernel\arch\arm64\boot\dts\rockchip\rk3399-firefly-aio.dtsi
Z:\rk3399_Android10.0\kernel\arch\arm64\boot\dts\rockchip\rk3399-firefly-core.dtsi
Z:\rk3399_Android10.0\kernel\arch\arm64\boot\dts\rockchip\rk3399-firefly-demo.dtsi
Z:\rk3399_Android10.0\kernel\arch\arm64\boot\dts\rockchip\rk3399-firefly-port.dtsi
Z:\rk3399_Android10.0\kernel\arch\arm64\boot\dts\rockchip\rk3399-opp.dtsi
Z:\rk3399_Android10.0\kernel\arch\arm64\boot\dts\rockchip\rk3399-sched-energy.dtsi
Z:\rk3399_Android10.0\kernel\arch\arm64\boot\dts\rockchip\rk3399-vop-clk-set.dtsi
Z:\rk3399_Android10.0\kernel\arch\arm64\boot\dts\rockchip\rk3399.dtsi


3、解决DTS编译不过的问题!
Z:\AIO-3399J\rk3399_Android10.0\rk3399_Android10.0\kernel\arch\arm64\boot\dts\rockchip-firefly\rk3399-firefly-core.dtsi
Z:\rk3399-android-11\kernel\arch\arm64\boot\dts\rockchip\rk3399-firefly-core.dtsi
&i2s1 {
    status = "okay";
    rockchip,i2s-broken-burst-len;
    rockchip,playback-channels = <2>;
    rockchip,capture-channels = <2>;
    #sound-dai-cells = <0>;
    assigned-clocks = <&cru SCLK_I2S1_DIV>, <&cru SCLK_I2S_8CH>; //SCLK_CIF_OUT_SRC
    assigned-clock-parents = <&cru PLL_GPLL>, <&cru SCLK_I2S1_8CH>;
};

修改为:
&i2s1 {
    status = "okay";
    rockchip,i2s-broken-burst-len;
    rockchip,playback-channels = <2>;
    rockchip,capture-channels = <2>;
    #sound-dai-cells = <0>;
    //assigned-clocks = <&cru SCLK_I2S1_DIV>, <&cru SCLK_I2S_8CH>; //SCLK_CIF_OUT_SRC
    assigned-clock-parents = <&cru PLL_GPLL>, <&cru SCLK_I2S1_8CH>;
};


4、摄像头OV13850的修改:Firefly的AIO-3399J开发板为了将2颗同样的OV13850挂载在同一条I2C1总线上,对Rockchip的BSP提供的官方驱动进行了修改!
Z:\rk3399-android-11\kernel\drivers\media\i2c\ov13850b.c
Z:\AIO-3399J\rk3399_Android10.0\rk3399_Android10.0\kernel\drivers\media\i2c\ov13850.c


(二)、kernel的编译:
make ARCH=arm64 firefly_defconfig rk3399.config
make ARCH=arm64 BOOT_IMG=../rockdev/Image-rk3399_Android11/boot.img rk3399-firefly-aio.img -j36


rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ make ARCH=arm64 firefly_defconfig rk3399.config
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/kconfig/conf.o
  YACC    scripts/kconfig/zconf.tab.c
  LEX     scripts/kconfig/zconf.lex.c
  HOSTCC  scripts/kconfig/zconf.tab.o
  HOSTLD  scripts/kconfig/conf
***
*** Can't find default configuration "arch/arm64/configs/firefly_defconfig"!
***
make[2]: *** [scripts/kconfig/Makefile:104: firefly_defconfig] Error 1
make[1]: *** [Makefile:584: firefly_defconfig] Error 2
make: *** [Makefile:286: __build_one_by_one] Error 2
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ make ARCH=arm64 firefly_defconfig rk3399.config
arch/arm64/configs/firefly_defconfig:860:warning: override: reassigning to symbol ROCKCHIP_VENDOR_STORAGE_UPDATE_LOADER
#
# configuration written to .config
#
Using .config as base
Merging ./kernel/configs/rk3399.config
Value of CONFIG_MALI_BIFROST is redefined by fragment ./kernel/configs/rk3399.config:
Previous value: CONFIG_MALI_BIFROST=y
New value: # CONFIG_MALI_BIFROST is not set

Value of CONFIG_MALI_BIFROST_DEVFREQ is redefined by fragment ./kernel/configs/rk3399.config:
Previous value: CONFIG_MALI_BIFROST_DEVFREQ=y
New value: # CONFIG_MALI_BIFROST_DEVFREQ is not set

Value of CONFIG_MALI_PLATFORM_NAME is redefined by fragment ./kernel/configs/rk3399.config:
Previous value: CONFIG_MALI_PLATFORM_NAME="rk"
New value: # CONFIG_MALI_PLATFORM_NAME is not set

Value of CONFIG_MALI_BIFROST_EXPERT is redefined by fragment ./kernel/configs/rk3399.config:
Previous value: CONFIG_MALI_BIFROST_EXPERT=y
New value: # CONFIG_MALI_BIFROST_EXPERT is not set

Value of CONFIG_MALI_BIFROST_DEBUG is redefined by fragment ./kernel/configs/rk3399.config:
Previous value: CONFIG_MALI_BIFROST_DEBUG=y
New value: # CONFIG_MALI_BIFROST_DEBUG is not set

#
# merged configuration written to .config (needs make)
#
scripts/kconfig/conf  --oldconfig Kconfig
#
# configuration written to .config
#
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ \
> \

rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ make ARCH=arm64 BOOT_IMG=../rockdev/Image-rk3399_Android11/boot.img rk3399-firefly-aio.img -j36
scripts/kconfig/conf  --syncconfig Kconfig


  Building modules, stage 2.
  MODPOST 8 modules
  CC      drivers/media/usb/gspca/gspca_main.mod.o
  CC      drivers/mtd/devices/m25p80.mod.o
  CC      drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/bcmdhd.mod.o
  CC      drivers/net/wireless/rockchip_wlan/rtl8723cs/8723cs.mod.o
  CC      drivers/net/wireless/rockchip_wlan/rtl8723ds/8723ds.mod.o
  CC      drivers/net/wireless/rockchip_wlan/rtl8821cs/8821cs.mod.o
  CC      drivers/net/wireless/rockchip_wlan/rtl8822bs/8822bs.mod.o
  CC      kernel/kheaders.mod.o
  LD [M]  drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/bcmdhd.ko
  LD [M]  drivers/mtd/devices/m25p80.ko
  LD [M]  drivers/net/wireless/rockchip_wlan/rtl8821cs/8821cs.ko
  LD [M]  drivers/net/wireless/rockchip_wlan/rtl8723ds/8723ds.ko
  LD [M]  kernel/kheaders.ko
  LD [M]  drivers/media/usb/gspca/gspca_main.ko
  LD [M]  drivers/net/wireless/rockchip_wlan/rtl8723cs/8723cs.ko
  LD [M]  drivers/net/wireless/rockchip_wlan/rtl8822bs/8822bs.ko
  Image:  resource.img (with rk3399-firefly-aio.dtb logo.bmp logo_kernel.bmp) is ready
  Image:  boot.img (with Image  resource.img) is ready
  Image:  zboot.img (with Image.lz4  resource.img) is ready
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ cd ..
rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ ll
total 228344
drwxr-xr-x  35 rootroot rootroot      4096 12月 26 08:39 ./
drwxr-xr-x  23 rootroot rootroot      4096 12月 26 08:38 ../
drwxr-xr-x  24 rootroot rootroot      4096 3月  25  2022 51u-boot/
lrwxrwxrwx   1 rootroot rootroot        19 3月   7  2022 Android.bp -> build/soong/root.bp
drwxr-xr-x  34 rootroot rootroot      4096 3月  13  2022 art/
drwxr-xr-x  14 rootroot rootroot      4096 3月  13  2022 bionic/
drwxr-xr-x   3 rootroot rootroot      4096 3月   7  2022 bootable/
lrwxrwxrwx   1 rootroot rootroot        26 3月   7  2022 bootstrap.bash -> build/soong/bootstrap.bash*
drwxr-xr-x   5 rootroot rootroot      4096 3月  14  2022 build/
lrwxrwxrwx   1 rootroot rootroot        34 3月  13  2022 build-nanopc_t4.sh -> vendor/friendlyelec/build/build.sh*
-r-xr-xr-x   1 rootroot rootroot     14109 3月   7  2022 .classpath*
drwxr-xr-x   3 rootroot rootroot      4096 3月   7  2022 compatibility/
drwxr-xr-x  13 rootroot rootroot      4096 3月  13  2022 cts/
drwxr-xr-x   7 rootroot rootroot      4096 3月  13  2022 dalvik/
drwxr-xr-x   5 rootroot rootroot      4096 3月   7  2022 developers/
drwxr-xr-x  20 rootroot rootroot      4096 3月  13  2022 development/
drwxr-xr-x   7 rootroot rootroot      4096 3月  25  2022 device/
drwxr-xr-x 323 rootroot rootroot     12288 3月  13  2022 external/
drwxr-xr-x  16 rootroot rootroot      4096 3月   7  2022 frameworks/
-rw-rw-r--   1 rootroot rootroot       343 3月  13  2022 .gitignore
drwxr-xr-x  13 rootroot rootroot      4096 3月   7  2022 hardware/
-r--r--r--   1 rootroot rootroot       162 3月   7  2022 javaenv.sh
drwxr-xr-x  29 rootroot rootroot      4096 12月 26 08:51 kernel/
-rwx------   1 rootroot rootroot 215821808 12月 19 08:25 kernel92.tgz*
drwxr-xr-x  19 rootroot rootroot      4096 3月  13  2022 libcore/
drwxr-xr-x   7 rootroot rootroot      4096 3月  13  2022 libnativehelper/
-r--r--r--   1 rootroot rootroot        92 3月   7  2022 Makefile
drwxr-xr-x  10 rootroot rootroot      4096 3月  25  2022 mkcombinedroot/
lrwxrwxrwx   1 rootroot rootroot        36 3月  13  2022 mkimage.sh -> vendor/friendlyelec/build/mkimage.sh*
drwxr-xr-x   9 rootroot rootroot      4096 3月   7  2022 packages/
drwxr-xr-x   5 rootroot rootroot      4096 3月  13  2022 pdk/
drwxr-xr-x   9 rootroot rootroot      4096 3月  13  2022 platform_testing/
drwxr-xr-x  33 rootroot rootroot      4096 3月   7  2022 prebuilts/
drwxr-xr-x   8 rootroot rootroot      4096 12月 26 08:28 rkbin/
drwxr-xr-x   4 rootroot rootroot      4096 3月   7  2022 RKDocs/
drwxr-xr-x   4 rootroot rootroot      4096 3月  13  2022 rkst/
drwxr-xr-x   4 rootroot rootroot      4096 3月  13  2022 RKTools/
drwxr-xr-x  23 rootroot rootroot      4096 3月  13  2022 sdk/
drwxr-xr-x  40 rootroot rootroot      4096 3月   7  2022 system/
drwxr-xr-x  10 rootroot rootroot      4096 3月   7  2022 test/
drwxr-xr-x   4 rootroot rootroot      4096 3月   7  2022 toolchain/
drwxr-xr-x  23 rootroot rootroot      4096 3月   7  2022 tools/
drwxrwxr-x  26 rootroot rootroot      4096 12月 26 08:28 u-boot/
-rwx------   1 rootroot rootroot  17818883 12月 14 19:21 u-boot81在firefly.tgz*
drwxr-xr-x   7 rootroot rootroot      4096 3月  13  2022 vendor/
rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ source build/envsetup.sh 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ lunch

You're building on Linux

Lunch menu... pick a combo:
     1. PX30_Android11-user
     2. PX30_Android11-userdebug
     3. aosp_arm-eng
     4. aosp_arm64-eng
     5. aosp_car_arm-userdebug
     6. aosp_car_arm64-userdebug
     7. aosp_car_x86-userdebug
     8. aosp_car_x86_64-userdebug
     9. aosp_x86-eng
     10. aosp_x86_64-eng
     11. car_x86_64-userdebug
     12. nanopc_t4-user
     13. nanopc_t4-userdebug
     14. qemu_trusty_arm64-userdebug
     15. rk3288_Android10-user
     16. rk3288_Android10-userdebug
     17. rk3288_Android11-user
     18. rk3288_Android11-userdebug
     19. rk3326_pie-user
     20. rk3326_pie-userdebug
     21. rk3326_q-user
     22. rk3326_q-userdebug
     23. rk3326_r-user
     24. rk3326_r-userdebug
     25. rk3326_rgo-user
     26. rk3326_rgo-userdebug
     27. rk3328_atv-user
     28. rk3328_atv-userdebug
     29. rk3328_box-user
     30. rk3328_box-userdebug
     31. rk3328_box_32-user
     32. rk3328_box_32-userdebug
     33. rk3399_Android10-user
     34. rk3399_Android10-userdebug
     35. rk3399_Android11-user
     36. rk3399_Android11-userdebug
     37. rk3399_atv-user
     38. rk3399_atv-userdebug
     39. rk3399_mid-user
     40. rk3399_mid-userdebug
     41. rk3566_32bit-user
     42. rk3566_32bit-userdebug
     43. rk3566_eink-user
     44. rk3566_eink-userdebug
     45. rk3566_einkw6-user
     46. rk3566_einkw6-userdebug
     47. rk3566_r-user
     48. rk3566_r-userdebug
     49. rk3566_rgo-user
     50. rk3566_rgo-userdebug
     51. rk3568_r-user
     52. rk3568_r-userdebug
     53. rk356x_box-user
     54. rk356x_box-userdebug
     55. rk356x_box_32-user
     56. rk356x_box_32-userdebug
     57. uml-userdebug

Which would you like? [aosp_arm-eng] 36

============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=11
TARGET_PRODUCT=rk3399_Android11
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_ARCH=arm64
TARGET_ARCH_VARIANT=armv8-a
TARGET_CPU_VARIANT=cortex-a53
TARGET_2ND_ARCH=arm
TARGET_2ND_ARCH_VARIANT=armv7-a-neon
TARGET_2ND_CPU_VARIANT=cortex-a15
HOST_ARCH=x86_64
HOST_2ND_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-5.15.0-91-generic-x86_64-Ubuntu-20.04.6-LTS
HOST_CROSS_OS=windows
HOST_CROSS_ARCH=x86
HOST_CROSS_2ND_ARCH=x86_64
HOST_BUILD_TYPE=release
BUILD_ID=RQ2A.210505.003
OUT_DIR=out
============================================
rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ make -j36


(三)、解决编译Android11出错的问题:
checkvintf I 12-26 09:54:16 644393 644393 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.1.xml': SUCCESS
checkvintf I 12-26 09:54:16 644393 644393 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.legacy.xml': SUCCESS
checkvintf I 12-26 09:54:16 644393 644393 check_vintf.cpp:84] List 'out/target/product/rk3399_Android11/system_ext/etc/vintf/': SUCCESS
checkvintf I 12-26 09:54:16 644393 644393 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system_ext/etc/vintf/manifest.xml': SUCCESS
checkvintf I 12-26 09:54:16 644393 644393 check_vintf.cpp:84] List 'out/target/product/rk3399_Android11/product/etc/vintf/': No such file or directory
checkvintf E 12-26 09:54:16 644393 644393 check_vintf.cpp:554] files are incompatible: Runtime info and framework compatibility matrix are incompatible: No compatible kernel requirement found (kernel FCM version = 5).
checkvintf E 12-26 09:54:16 644393 644393 check_vintf.cpp:554] For kernel requirements at matrix level 5, Missing config CONFIG_ANDROID_BINDERFS
checkvintf E 12-26 09:54:16 644393 644393 check_vintf.cpp:554] : Success
INCOMPATIBLE
[ 88% 93558/105308] //external/v8:v8_torque_file_cc generate
~/rk3399-android-11 ~/rk3399-android-11
~/rk3399-android-11
[ 88% 93559/105308] //external/v8:v8_torque_file_32 generate
~/rk3399-android-11 ~/rk3399-android-11
~/rk3399-android-11
[ 88% 93560/105308] //external/v8:v8_torque_file generate
~/rk3399-android-11 ~/rk3399-android-11
~/rk3399-android-11
[ 88% 93561/105308] //external/v8:v8_torque_file_cc_32 generate
~/rk3399-android-11 ~/rk3399-android-11
~/rk3399-android-11
09:55:31 ninja failed with: exit status 1

#### failed to build some targets (01:02:45 (hh:mm:ss)) ####

rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ find 。 -name compatibility_matrix.5.xml
find: ‘。’: No such file or directory
rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ find . -name compatibility_matrix.5.xml
./out/target/product/rk3399_Android11/obj/ETC/framework_compatibility_matrix.5.xml_intermediates/compatibility_matrix.5.xml
./out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.5.xml
./out/soong/.intermediates/hardware/interfaces/compatibility_matrices/framework_compatibility_matrix.5.xml/android_common/gen/compatibility_matrix.5.xml
./hardware/interfaces/compatibility_matrices/compatibility_matrix.5.xml
rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ 


1、直接使用RK3399的Android11的Rockchip的原始defconfig:rockchip_defconfig生成.config文件!
make distclean
rm *.img
make ARCH=arm64 rockchip_defconfig android-11.config -j36
make ARCH=arm64 BOOT_IMG=../rockdev/Image-rk3399_Android11/boot.img rk3399-firefly-aio.img -j36
make installclean

rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ cd kernel/
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ ll
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ make distclean
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ ll
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ rm *.img
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ ll
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ make ARCH=arm64 rockchip_defconfig android-11.config -j36
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ ll
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ make ARCH=arm64 BOOT_IMG=../rockdev/Image-rk3399_Android11/boot.img rk3399-firefly-aio.img -j36
-rw-rw-r--   1 rootroot rootroot  19109888 12月 26 18:44 zboot.img
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ ll .config
-rw-rw-r-- 1 rootroot rootroot 162642 12月 26 18:41 .config
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ ll *.img
-rw-rw-r-- 1 rootroot rootroot 34205696 12月 26 18:44 boot.img
-rw-rw-r-- 1 rootroot rootroot 31778836 12月 26 18:43 kernel.img
-rw-rw-r-- 1 rootroot rootroot  2421248 12月 26 18:44 resource.img
-rw-rw-r-- 1 rootroot rootroot 19109888 12月 26 18:44 zboot.img
rootroot@rootroot-X99-Turbo:~/rk3399-android-11/kernel$ cd ..
rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ ll
rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ make installclean
rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ ll
rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ 
rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ make -j36
rootroot@rootroot-X99-Turbo:~/rk3399-android-11$ ./build.sh -u


(四)、你可以在文件firefly_defconfig中增加项目:CONFIG_ANDROID_BINDERFS,但是肯定会碰到新的问题!
【接着需要关闭CONFIG_CRYPTO_MD4,但是搞了半天没有搞定!就不折腾了!】
Z:\rk3399-android-11\kernel\arch\arm64\configs\firefly_defconfig

/home/rootroot/Toybrick_Android11.0
[ 80% 50412/62279] depmod out/target/product/rk3399_Android11/obj/PACKAGING/depmod_VENDOR_intermediates
depmod: WARNING: could not open modules.order at /home/rootroot/Toybrick_Android11.0/out/target/product/rk3399_Android11/obj/PACKAGING/depmod_VENDOR_intermediates/lib/modules/0.0: No such file or directory
depmod: WARNING: could not open modules.builtin at /home/rootroot/Toybrick_Android11.0/out/target/product/rk3399_Android11/obj/PACKAGING/depmod_VENDOR_intermediates/lib/modules/0.0: No such file or directory
[ 80% 50424/62279] build out/target/product/rk3399_Android11/obj/PACKAGING/check_vintf_all_intermediates/check_vintf_compatible_log
FAILED: out/target/product/rk3399_Android11/obj/PACKAGING/check_vintf_all_intermediates/check_vintf_compatible_log
/bin/bash -c "(echo -n -e 'Deps: \\n  ' > out/target/product/rk3399_Android11/obj/PACKAGING/check_vintf_all_intermediates/check_vintf_compatible_log ) && (sed 's/ /\\n  /g' <<< \"out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.1.xml out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.2.xml out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.3.xml out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.4.xml out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.5.xml out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.device.xml out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.legacy.xml out/target/product/rk3399_Android11/system/etc/vintf/manifest.xml out/target/product/rk3399_Android11/system/etc/vintf/manifest/android.frameworks.stats@1.0-service.xml out/target/product/rk3399_Android11/system/etc/vintf/manifest/android.hidl.allocator@1.0-service.xml out/target/product/rk3399_Android11/system/etc/vintf/manifest/android.system.suspend@1.0-service.xml out/target/product/rk3399_Android11/system/etc/vintf/manifest/manifest_android.frameworks.cameraservice.service@2.1.xml out/target/product/rk3399_Android11/system/etc/vintf/manifest/manifest_media_c2_software.xml out/target/product/rk3399_Android11/system_ext/etc/vintf/manifest.xml out/target/product/rk3399_Android11/vendor/etc/vintf/compatibility_matrix.xml out/target/product/rk3399_Android11/vendor/etc/vintf/manifest.xml out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.cas@1.2-service.xml out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.drm@1.3-service.widevine.xml out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.gatekeeper@1.0-service.optee.xml out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.health@2.1.xml out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.keymaster@4.0-service.optee.xml out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.weaver@1.0-service.xml out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.wifi.hostapd.xml out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.wifi@1.0-service.xml out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/lights-rockchip.xml out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/manifest.xml out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/manifest_android.hardware.drm@1.3-service.clearkey.xml out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/power-aidl-rockchip.xml out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/rockchip.hardware.outputmanager@1.0-service.xml out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/rockchip.hardware.rockit.hw@1.0-service.xml out/target/product/rk3399_Android11/obj/PACKAGING/check_vintf_all_intermediates/kernel_configs.txt out/target/product/rk3399_Android11/obj/PACKAGING/check_vintf_all_intermediates/kernel_version.txt\" >> out/target/product/rk3399_Android11/obj/PACKAGING/check_vintf_all_intermediates/check_vintf_compatible_log ) && (echo -n -e 'Args: \\n  ' >> out/target/product/rk3399_Android11/obj/PACKAGING/check_vintf_all_intermediates/check_vintf_compatible_log ) && (cat <<< \" --kernel \$(cat out/target/product/rk3399_Android11/obj/PACKAGING/check_vintf_all_intermediates/kernel_version.txt):out/target/product/rk3399_Android11/obj/PACKAGING/check_vintf_all_intermediates/kernel_configs.txt --dirmap /system:out/target/product/rk3399_Android11/system --dirmap /vendor:out/target/product/rk3399_Android11/vendor --dirmap /odm:out/target/product/rk3399_Android11/odm --dirmap /product:out/target/product/rk3399_Android11/product --dirmap /system_ext:out/target/product/rk3399_Android11/system_ext  --property ro.product.first_api_level=30\" >> out/target/product/rk3399_Android11/obj/PACKAGING/check_vintf_all_intermediates/check_vintf_compatible_log ) && (echo \"For ODM SKU = EMPTY_ODM_SKU_PLACEHOLDER, vendor SKU = EMPTY_VENDOR_SKU_PLACEHOLDER\" >> out/target/product/rk3399_Android11/obj/PACKAGING/check_vintf_all_intermediates/check_vintf_compatible_log; ( out/host/linux-x86/bin/checkvintf --check-compat  --kernel \$(cat out/target/product/rk3399_Android11/obj/PACKAGING/check_vintf_all_intermediates/kernel_version.txt):out/target/product/rk3399_Android11/obj/PACKAGING/check_vintf_all_intermediates/kernel_configs.txt --dirmap /system:out/target/product/rk3399_Android11/system --dirmap /vendor:out/target/product/rk3399_Android11/vendor --dirmap /odm:out/target/product/rk3399_Android11/odm --dirmap /product:out/target/product/rk3399_Android11/product --dirmap /system_ext:out/target/product/rk3399_Android11/system_ext  --property ro.product.first_api_level=30 --property ro.boot.product.hardware.sku= --property ro.boot.product.vendor.sku= >> out/target/product/rk3399_Android11/obj/PACKAGING/check_vintf_all_intermediates/check_vintf_compatible_log 2>&1 ) || (cat out/target/product/rk3399_Android11/obj/PACKAGING/check_vintf_all_intermediates/check_vintf_compatible_log && exit 1) )"
Deps: 
  out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.1.xml
  out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.2.xml
  out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.3.xml
  out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.4.xml
  out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.5.xml
  out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.device.xml
  out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.legacy.xml
  out/target/product/rk3399_Android11/system/etc/vintf/manifest.xml
  out/target/product/rk3399_Android11/system/etc/vintf/manifest/android.frameworks.stats@1.0-service.xml
  out/target/product/rk3399_Android11/system/etc/vintf/manifest/android.hidl.allocator@1.0-service.xml
  out/target/product/rk3399_Android11/system/etc/vintf/manifest/android.system.suspend@1.0-service.xml
  out/target/product/rk3399_Android11/system/etc/vintf/manifest/manifest_android.frameworks.cameraservice.service@2.1.xml
  out/target/product/rk3399_Android11/system/etc/vintf/manifest/manifest_media_c2_software.xml
  out/target/product/rk3399_Android11/system_ext/etc/vintf/manifest.xml
  out/target/product/rk3399_Android11/vendor/etc/vintf/compatibility_matrix.xml
  out/target/product/rk3399_Android11/vendor/etc/vintf/manifest.xml
  out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.cas@1.2-service.xml
  out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.drm@1.3-service.widevine.xml
  out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.gatekeeper@1.0-service.optee.xml
  out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.health@2.1.xml
  out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.keymaster@4.0-service.optee.xml
  out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.weaver@1.0-service.xml
  out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.wifi.hostapd.xml
  out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.wifi@1.0-service.xml
  out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/lights-rockchip.xml
  out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/manifest.xml
  out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/manifest_android.hardware.drm@1.3-service.clearkey.xml
  out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/power-aidl-rockchip.xml
  out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/rockchip.hardware.outputmanager@1.0-service.xml
  out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/rockchip.hardware.rockit.hw@1.0-service.xml
  out/target/product/rk3399_Android11/obj/PACKAGING/check_vintf_all_intermediates/kernel_configs.txt
  out/target/product/rk3399_Android11/obj/PACKAGING/check_vintf_all_intermediates/kernel_version.txt
Args: 
   --kernel 4.19.193:out/target/product/rk3399_Android11/obj/PACKAGING/check_vintf_all_intermediates/kernel_configs.txt --dirmap /system:out/target/product/rk3399_Android11/system --dirmap /vendor:out/target/product/rk3399_Android11/vendor --dirmap /odm:out/target/product/rk3399_Android11/odm --dirmap /product:out/target/product/rk3399_Android11/product --dirmap /system_ext:out/target/product/rk3399_Android11/system_ext  --property ro.product.first_api_level=30
For ODM SKU = EMPTY_ODM_SKU_PLACEHOLDER, vendor SKU = EMPTY_VENDOR_SKU_PLACEHOLDER
checkvintf I 12-26 13:12:32 24145 24145 VintfObject.cpp:55] getFrameworkHalManifest: Reading VINTF information.
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/manifest.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:84] List 'out/target/product/rk3399_Android11/system/etc/vintf/manifest/': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/manifest/android.hidl.allocator@1.0-service.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/manifest/android.frameworks.stats@1.0-service.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/manifest/manifest_media_c2_software.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/manifest/manifest_android.frameworks.cameraservice.service@2.1.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/manifest/android.system.suspend@1.0-service.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/product/etc/vintf/manifest.xml': No such file or directory
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:84] List 'out/target/product/rk3399_Android11/product/etc/vintf/manifest/': No such file or directory
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system_ext/etc/vintf/manifest.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:84] List 'out/target/product/rk3399_Android11/system_ext/etc/vintf/manifest/': No such file or directory
checkvintf I 12-26 13:12:32 24145 24145 VintfObject.cpp:61] getFrameworkHalManifest: Successfully processed VINTF information
checkvintf I 12-26 13:12:32 24145 24145 VintfObject.cpp:55] getDeviceHalManifest: Reading VINTF information.
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:122] Sysprop ro.boot.product.vendor.sku=
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/vendor/etc/vintf/manifest.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:84] List 'out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.cas@1.2-service.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/rockchip.hardware.rockit.hw@1.0-service.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/power-aidl-rockchip.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/manifest_android.hardware.drm@1.3-service.clearkey.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/manifest.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.wifi@1.0-service.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/lights-rockchip.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.health@2.1.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.wifi.hostapd.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/rockchip.hardware.outputmanager@1.0-service.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.weaver@1.0-service.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.gatekeeper@1.0-service.optee.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.drm@1.3-service.widevine.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/vendor/etc/vintf/manifest/android.hardware.keymaster@4.0-service.optee.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:122] Sysprop ro.boot.product.hardware.sku=
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/odm/etc/vintf/manifest.xml': No such file or directory
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/odm/etc/manifest.xml': No such file or directory
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:84] List 'out/target/product/rk3399_Android11/odm/etc/vintf/manifest/': No such file or directory
checkvintf I 12-26 13:12:32 24145 24145 VintfObject.cpp:61] getDeviceHalManifest: Successfully processed VINTF information
checkvintf I 12-26 13:12:32 24145 24145 VintfObject.cpp:55] getFrameworkCompatibilityMatrix: Reading VINTF information.
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:84] List 'out/target/product/rk3399_Android11/system/etc/vintf/': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.4.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.2.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/manifest.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.3.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.device.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.5.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.1.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.legacy.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:84] List 'out/target/product/rk3399_Android11/system_ext/etc/vintf/': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system_ext/etc/vintf/manifest.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:84] List 'out/target/product/rk3399_Android11/product/etc/vintf/': No such file or directory
checkvintf I 12-26 13:12:32 24145 24145 VintfObject.cpp:61] getFrameworkCompatibilityMatrix: Successfully processed VINTF information
checkvintf I 12-26 13:12:32 24145 24145 VintfObject.cpp:55] getDeviceCompatibilityMatrix: Reading VINTF information.
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/vendor/etc/vintf/compatibility_matrix.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 VintfObject.cpp:61] getDeviceCompatibilityMatrix: Successfully processed VINTF information
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:154] fetched kernel version 4.19.193
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:168] read kernel configs from out/target/product/rk3399_Android11/obj/PACKAGING/check_vintf_all_intermediates/kernel_configs.txt
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:84] List 'out/target/product/rk3399_Android11/system/etc/vintf/': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.4.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.2.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/manifest.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.3.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.device.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.5.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.1.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.legacy.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:84] List 'out/target/product/rk3399_Android11/system_ext/etc/vintf/': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system_ext/etc/vintf/manifest.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:84] List 'out/target/product/rk3399_Android11/product/etc/vintf/': No such file or directory
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:84] List 'out/target/product/rk3399_Android11/system/etc/vintf/': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.4.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.2.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/manifest.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.3.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.device.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.5.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.1.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system/etc/vintf/compatibility_matrix.legacy.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:84] List 'out/target/product/rk3399_Android11/system_ext/etc/vintf/': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:74] Fetch 'out/target/product/rk3399_Android11/system_ext/etc/vintf/manifest.xml': SUCCESS
checkvintf I 12-26 13:12:32 24145 24145 check_vintf.cpp:84] List 'out/target/product/rk3399_Android11/product/etc/vintf/': No such file or directory
checkvintf E 12-26 13:12:32 24145 24145 check_vintf.cpp:554] files are incompatible: Runtime info and framework compatibility matrix are incompatible: No compatible kernel requirement found (kernel FCM version = 5).
checkvintf E 12-26 13:12:32 24145 24145 check_vintf.cpp:554] For kernel requirements at matrix level 5, For config CONFIG_CRYPTO_MD4, value = y but required n
checkvintf E 12-26 13:12:32 24145 24145 check_vintf.cpp:554] : Success
INCOMPATIBLE

13:12:52 ninja failed with: exit status 1

#### failed to build some targets (01:10 (mm:ss)) ####

rootroot@rootroot-X99-Turbo:~/Toybrick_Android11.0$ cd kernel/


(五)、在LOG中很容易发现打开前置摄像头OV13850的时候,调用GPIO出错,结果就只有单摄像头了!
【也许/可能是因为最开始编译kernel的时候,defconfig选择错误firefly导致的!】

[    7.915286] [dhd] dhd_module_init: Exit err=0
[    7.947262] rockchip-pinctrl pinctrl: pin gpio2-11 already requested by 1-0010; cannot claim for 1-0010-1
[    7.947339] rockchip-pinctrl pinctrl: pin-75 (1-0010-1) status -22
[    7.947355] rockchip-pinctrl pinctrl: could not request pin 75 (gpio2-11) from group cif-clkout  on device rockchip-pinctrl
[    7.947370] ov13850 1-0010-1: Error applying setting, reverse things back
[    7.947383] ov13850 1-0010-1: could not set pins
[    7.949236] rockchip-pinctrl pinctrl: pin gpio2-11 already requested by 1-0010; cannot claim for 1-0010-1
[    7.949258] rockchip-pinctrl pinctrl: pin-75 (1-0010-1) status -22
[    7.949269] rockchip-pinctrl pinctrl: could not request pin 75 (gpio2-11) from group cif-clkout  on device rockchip-pinctrl
[    7.949276] ov13850 1-0010-1: Error applying setting, reverse things back
[    7.949281] ov13850 1-0010-1: could not set pins
[    8.008634] rockchip-pinctrl pinctrl: pin gpio2-11 already requested by 1-0010; cannot claim for 1-0010-1
[    8.008662] rockchip-pinctrl pinctrl: pin-75 (1-0010-1) status -22
[    8.008669] rockchip-pinctrl pinctrl: could not request pin 75 (gpio2-11) from group cif-clkout  on device rockchip-pinctrl
[    8.008676] ov13850 1-0010-1: Error applying setting, reverse things back
[    8.008682] ov13850 1-0010-1: could not set pins
[    8.011182] rockchip-pinctrl pinctrl: pin gpio2-11 already requested by 1-0010; cannot claim for 1-0010-1
[    8.011202] rockchip-pinctrl pinctrl: pin-75 (1-0010-1) status -22
[    8.011210] rockchip-pinctrl pinctrl: could not request pin 75 (gpio2-11) from group cif-clkout  on device rockchip-pinctrl
[    8.011217] ov13850 1-0010-1: Error applying setting, reverse things back
[    8.011222] ov13850 1-0010-1: could not set pins
[    8.042197] android_work: did not send uevent (0 0           (null))
[    8.100956] rockchip-pinctrl pinctrl: pin gpio2-11 already requested by 1-0010; cannot claim for 1-0010-1
[    8.100989] rockchip-pinctrl pinctrl: pin-75 (1-0010-1) status -22
[    8.100998] rockchip-pinctrl pinctrl: could not request pin 75 (gpio2-11) from group cif-clkout  on device rockchip-pinctrl
[    8.101006] ov13850 1-0010-1: Error applying setting, reverse things back
[    8.101013] ov13850 1-0010-1: could not set pins
[    8.102237] rockchip-pinctrl pinctrl: pin gpio2-11 already requested by 1-0010; cannot claim for 1-0010-1
[    8.102258] rockchip-pinctrl pinctrl: pin-75 (1-0010-1) status -22
[    8.102271] rockchip-pinctrl pinctrl: could not request pin 75 (gpio2-11) from group cif-clkout  on device rockchip-pinctrl
[    8.102283] ov13850 1-0010-1: Error applying setting, reverse things back
[    8.102293] ov13850 1-0010-1: could not set pins
[    8.145907] rockchip-pinctrl pinctrl: pin gpio2-11 already requested by 1-0010; cannot claim for 1-0010-1
[    8.145948] rockchip-pinctrl pinctrl: pin-75 (1-0010-1) status -22
[    8.145957] rockchip-pinctrl pinctrl: could not request pin 75 (gpio2-11) from group cif-clkout  on device rockchip-pinctrl
[    8.145966] ov13850 1-0010-1: Error applying setting, reverse things back
[    8.145973] ov13850 1-0010-1: could not set pins
[    8.147847] rockchip-pinctrl pinctrl: pin gpio2-11 already requested by 1-0010; cannot claim for 1-0010-1
[    8.147869] rockchip-pinctrl pinctrl: pin-75 (1-0010-1) status -22
[    8.147876] rockchip-pinctrl pinctrl: could not request pin 75 (gpio2-11) from group cif-clkout  on device rockchip-pinctrl
[    8.147884] ov13850 1-0010-1: Error applying setting, reverse things back
[    8.147889] ov13850 1-0010-1: could not set pins
[    8.960000] rockchip-vop ff900000.vop: [drm:vop_crtc_atomic_enable] Update mode to 1920x1080p60, type: 11

参考资料:
http://www.friendlyelec.com.cn/agent.asp
http://www.friendlyelec.com.cn/
https://download.friendlyelec.com/NanoPC-T4
https://wiki.friendlyelec.com/wiki/index.php/NanoPC-T4/zh#.E4.B8.8B.E8.BD.BDAndroid10.E6.BA.90.E4.BB.A3.E7.A0.81


https://item.taobao.com/item.htm?spm=a1z09.2.0.0.37562e8dcotDm6&id=570312633249&_u=7ju3ku004a
友善NanoPC-T4瑞芯微RK3399开发板ROS双摄4K播放开源AI智能安卓10

WiKi维基教程(固件介绍,使用说明,操作步骤等)
http://wiki.friendlyelec.com/wiki/index.php/NanoPC-T4
系统固件下载
https://dl.friendlyelec.com/nanopct4
原理图(pdf格式)
http://wiki.friendlyelec.com/wiki/images/e/e0/NanoPC-T4-1902-Schematic.pdf
尺寸图(dxf格式)
http://wiki.friendlyelec.com/wiki/images/b/bc/NanoPC-T4_1802_Drawing%28dxf%29.zip


http://www.friendlyelec.com.cn/nanopi-m4.asp
NanoPi M4 | NanoPi M4V2

https://wiki.friendlyelec.com/wiki/index.php/NanoPi_M4/zh
15.3 编译Android10源代码
15.3.1 下载Android10源代码
有以下两种途径获取 Android10 的源代码,都需要联网:

使用网盘里的git repo压缩包
网盘下载地址: 点击进入

https://download.friendlyelec.com/NanoPiM4
https://pan.baidu.com/share/init?surl=oBLn9H31hILJKEPQXgrUog
提取码:yn6r


 

相关文章:

20231226在Firefly的AIO-3399J开发板上在Android11下调通后摄像头ov13850

20231226在Firefly的AIO-3399J开发板上在Android11下调通后摄像头ov13850 2023/12/26 8:22 开发板&#xff1a;Firefly的AIO-3399J【RK3399】 SDK&#xff1a;rk3399-android-11-r20211216.tar.xz【Android11】 Android11.0.tar.bz2.aa【ToyBrick】 Android11.0.tar.bz2.ab And…...

0101包冲突导致安装docker失败-docker-云原生

文章目录 1 前言2 报错3 解决结语 1 前言 最近在学习k8s&#xff0c;前置条件就是要安装指定版本的docker&#xff0c;命令如下 yum install -y docker-ce-20.10.7 docker-ce-cli-20.10.7 containerd.io-1.4.62 报错 file /usr/libexec/docker/cli-plugins/docker-buildx fr…...

【力扣100】17.电话号码的字母组合

添加链接描述 class Solution:def letterCombinations(self, digits: str) -> List[str]:# 思路是使用回溯算法if not digits:return []phone {2:[a,b,c],3:[d,e,f],4:[g,h,i],5:[j,k,l],6:[m,n,o],7:[p,q,r,s],8:[t,u,v],9:[w,x,y,z]}def backtrack(con,dig):# 收获if le…...

2023。

一月 从头开始 二月 准备复试&初试成绩 三月 最开心 过了两个生日&#xff08;这机率&#xff0c;幸运儿&#xff09; 考研也成功上岸&#xff01;nnuGISer! 四月 和室友去了趟武汉 五月 拍毕业照 六月 人生高光时刻 省创&#xff01;上台领奖&#xff01;考研…...

出现 Cause: java.sql.SQLException: Field ‘id‘ doesn‘t have a default value解决方法

目录 1. 问题所示2. 原理分析3. 解决方法1. 问题所示 在驱动Springboot项目的时候,出现如下问题: org.springframework.dao.DataIntegrityViolationException: ### Error updating database. Cause: java.sql...

Linux--批量自动装机

实验环境 随着某公司业务不断发展&#xff0c;服务器主机的数量也迅速增长&#xff0c;对于功能变更或新采购的服务器&#xff0c; 需要重新安装CentOS7操作系统&#xff0c;为了提高服务器装机效率&#xff0c;要求基于PXE网络实现全自动无人值 守批量安装。 需求描述 > 服…...

病理HE学习贴(自备)

目录 正常结构 癌症HE 在线学习 以胃癌的学习为例 正常结构 1&#xff1a;胃粘膜正常结构和细胞分化 ●表面覆盖小凹上皮细胞(主要标志物&#xff1a;MUC5AC)以保护黏膜。 ●胃底腺固有腺体由黏液颈细胞(MUC6)、主细胞(Pepsinogen l)和壁细胞(Proton pump α-subunit)组…...

关于协同过滤算法在物联网的应用-基于用户行为数据和物联网设备数据,以此提供个性化的智能家居控制推荐服务

关于协同过滤算法在物联网领域的应用的一个案例是基于用户行为数据和物联网设备数据&#xff0c;为用户提供个性化的智能家居控制推荐服务。 具体实现如下&#xff1a; 数据收集&#xff1a;收集用户对智能家居设备的使用行为数据&#xff0c;包括设备的打开、关闭、调节等操…...

计算机网络(6):应用层

每个应用层协议都是为了解决某一类应用问题&#xff0c;而问题的解决又往往是通过位于不同主机中的多个应用进程之间的通信和协同工作来完成的。 应用层的具体内容就是规定应用进程在通信时所遵循的协议。 应用层的许多协议都是基于客户服务器方式。即使是对等通信方式&#x…...

ESP32:整合存储配网信息和MQTT笔记

文章目录 1.给LED和KEY的所用IO增加配置项1.1 增加配置文件1.2 修改相应的c源码 2. 把mqtt\tcp的工程整合到一起2.1 在何处调用 mqtt_app_start() 3. 测试MQTT4. 完整的工程源码 有一段时间没有玩ESP32&#xff0c;很多知识点都忘记了。今天测试一下MQTT&#xff0c;做个笔记。…...

nginx源码分析-4

这一章内容讲述nginx的模块化。 ngx_module_t&#xff1a;一个结构体&#xff0c;用于描述nginx中的各个模块&#xff0c;其中包括核心模块、HTTP模块、事件模块等。这个结构体包含了一些模块的关键信息和回调函数&#xff0c;以便nginx在运行时能够正确地加载和管理这些模块。…...

【Unity美术】Unity工程师对3D模型需要达到的了解【二】

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;元宇宙-秩沅 &#x1f468;‍&#x1f4bb; hallo 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍&#x1f4bb; 本文由 秩沅 原创 &#x1f468;‍&#x1f4bb; 收录于专栏&#xff1a;Uni…...

《微信小程序开发从入门到实战》学习六十九

6.6 网络API 6.6.3 下载文件API 使用 wx.downloadFile 接口是可使小程序发起HTTPS GET请求&#xff0c;下载文件到手机端。 单次下载的最大文件为50MB。接受Obkect参&#xff0c;参支持属性如下&#xff1a; url&#xff08;必填&#xff09;&#xff1a;下载文件的URL he…...

2022年全球软件质量效能大会(QECon北京站2022)-核心PPT资料下载

一、峰会简介 当前&#xff0c;新一轮科技革命和产业变革正在重塑全球经济格局&#xff0c;以云计算为代表的新一代信息技术创新活跃&#xff0c;与实体经济深度融合&#xff0c;推动泛在连接、数据驱动、智能引领的数字经济新形式孕育而生。 新兴技术的出现给测试乃至整个软…...

ILI9481 TFT3.5寸屏STM32F446ZEXX FMC驱动方式详解

图片来源于网络&#xff0c;如若侵权请联系博主删除 文章目录 1. 背景2. 基础知识2.1 TFT-LCD2.2 硬件接线2.3 FMC2.4 ILI9481 3. 软件抽象 1. 背景 最近做项目需要&#xff0c;博主在某宝上买了一块3.5寸的TFT屏&#xff0c;店家虽然发了资料&#xff0c;但是往产品上移植驱动…...

010、切片

除了引用&#xff0c;Rust还有另外一种不持有所有权的数据类型&#xff1a;切片&#xff08;slice&#xff09;。切片允许我们引用集合中某一段连续的元素序列&#xff0c;而不是整个集合。 考虑这样一个小问题&#xff1a;编写一个搜索函数&#xff0c;它接收字符串作为参数&a…...

【华为数据之道学习笔记】8-6 质量改进

数据质量改进致力于增强满足数据质量要求的能力。数据质量改进消除系统性的问题&#xff0c;对现有的质量水平在控制的基础上加以提高&#xff0c;使质量达到一个新水平、新高度。 质量改进的步骤本身就是一个PDCA循环。质量改进包括涉及企业跨组织的变革性改进&#xff08;BTM…...

python多环境管理工具——pyenv-win安装与使用教程

目录 pyenv-win简介 pyenv-win安装 配置环境变量 pyenv的基本命令 pyenv安装py环境 pyenv安装遇到问题 pycharm测试 pyenv-win简介 什么是pyenv-win&#xff1a; 是一个在windows系统上管理python版本的工具。它是pyenv的windows版本&#xff0c;旨在提供类似于unix/li…...

Excel报表框架(ExcelReport)极简化解决复杂报表导出问题

Excel Report 耗费了半个月的时间&#xff0c;终于在元旦这三天把报表框架开发完成了&#xff0c;使用该框架你可以非常方便的导出复杂的Excel报表。 项目开源地址&#xff1a; GiteeGithub 前言 不知道各位在使用POI开发报表导出过程中遇到过以下的情况&#xff1a; 频繁…...

常用设计模式全面总结版(JavaKotlin)

这篇文章主要是针对之前博客的下列文章的总结版本: 《设计模式系列学习笔记》《Kotlin核心编程》笔记:设计模式【Android知识笔记】FrameWork中的设计模式主要为了在学习了 Kotlin 之后,将 Java 的设计模式实现与 Kotin 的实现放在一起做一个对比。 一、创建型模式 单例模…...

Docker自建私人云盘系统

Docker自建私人云盘系统。 有个人云盘需求的人&#xff0c;主要需求有这几类&#xff1a; 文件同步、分享需要。 照片、视频同步需要&#xff0c;尤其是全家人都是用的同步。 影视观看需要&#xff08;分为家庭内部、家庭外部&#xff09; 搭建个人网站/博客 云端OFFICE需…...

python replace()方法 指定替换指定字段

replace()方法 使用方法 str.replace(old, new[, max]) Python replace() 方法把字符串中的 old&#xff08;旧字符串&#xff09; 替换成 new(新字符串)&#xff0c;如果指定第三个参数max&#xff0c;则替换不超过 max 次。 示例 #!/usr/bin/pythonstr "this is s…...

【仅供测试】

https://microsoftedge.microsoft.com/addons/detail/%E7%AF%A1%E6%94%B9%E7%8C%B4/iikmkjmpaadaobahmlepeloendndfphd 测试网站&#xff1a; https://www.alipan.com/s/tJ5uzFvp2aF // UserScript // name 阿里云盘助手 // namespace http://tampermonkey.net/ // …...

C#/WPF JSON序列化和反序列化

什么是json json是存储和交换文本信息的方法&#xff0c;类似xml。但是json比xml更小&#xff0c;更快&#xff0c;更易于解析。并且json采用完全独立于语言的文本格式(即不依赖于各种编程语言)&#xff0c;这些特性使json成为理想的数据交换语言。json序列化是指将对象转换成j…...

Java——ArraryList线程不安全

目录 前言一、为什么ArraryList线程不安全&#xff1f;二、具体可以看debug源码后续敬请期待 前言 Java——ArraryList线程不安全 一、为什么ArraryList线程不安全&#xff1f; 因为没有synchronized&#xff0c;这个关键字做线程互斥&#xff0c;没有这个关键字&#xff0c;…...

基于Java SSM框架实现健康管理系统项目【项目源码】

基于java的SSM框架实现健康管理系统演示 JSP技术 JSP是一种跨平台的网页技术&#xff0c;最终实现网页的动态效果&#xff0c;与ASP技术类似&#xff0c;都是在HTML中混合一些程序的相关代码&#xff0c;运用语言引擎来执行代码&#xff0c;JSP能够实现与管理员的交互&#xf…...

PostgreSQL16.1(Windows版本)

1、卸载原有的PostgreSQL &#xfeff; &#xfeff; 点击Next即可。 &#xfeff;&#xfeff; 点击OK即可。 卸载完成。 2、安装 &#xff08;1&#xff09; 前两部直接Next&#xff0c;第二部可以换成自己想要安装的路径。 &#xff08;2&#xff09; 直接点击Next。…...

使用nodejs对接arXiv文献API

GPT4.0国内站点: 海鲸AI-支持GPT(3.5/4.0)&#xff0c;文件分析&#xff0c;AI绘图 要使用 Node.js 对接 arXiv 的 API&#xff0c;你可以使用 axios 库或者 Node.js 的内置 http 模块来发送 HTTP 请求。以下是一个简单的例子&#xff0c;展示了如何使用 axios 来获取 arXiv 上…...

mac 安装pyaudio

直接安装pyaudio时报错 ERROR: Could not build wheels for PyAudio, which is required to install pyproject.toml-based projects需要先安装portaudio&#xff0c;打开终端执行&#xff1a; brew install portaudio再安装pyaudio成功 pip3 install pyaudioportaudio是一个…...

k8s学习 — 各章节重要知识点

k8s学习 — 各章节重要知识点 学习资料k8s版本0 相关命令0.1 yaml配置文件中粘贴内容格式混乱的解决办法0.2 通用命令0.3 Node 相关命令0.4 Pod 相关命令0.5 Deployment 相关命令0.6 Service 相关命令0.7 Namespace 相关命令 1 k8s学习 — 第一章 核心概念1.1 Pod、Node、Servi…...