RockchipоƬ��������OpenHarmony�ķ���
OpenHarmony��һ���ϲ��û�����ϵͳ���������ϣ�����ݲ�ͬ�ĵײ�ϵͳ�������L2��Linux���豸��OpenHarmony��Linux��Uboot�ȵײ�ϵͳû��̫����������������������棬HDFҲ����Linux��������
���ԣ��ײ�ϵͳ�����Ͽ���ֱ��ʹ��оƬ���һ���oem����ԭ�еģ��ϲ�ϵͳʹ��OpenHarmony��������ġ�
����˼·�ϣ����Բ��÷���imageƴ�ӵķ�ʽ����ֲ���䣺
�������SDK�ı��빤������OpenHarmony�ı��빤�����Ǽ��ݵģ��ײ�ϵͳ��boot����dtb ��kenel�����������֣��õ���SDK���������image�Ϳ��ԡ�
������Ǽ��ݵģ��ײ�ϵͳ��boot������Ҫ��OpenHarmony�ı��빤�������±����image�����Բο�https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/porting/porting-linux-kernel.md
����ѡ��Ƚ��±Ƚ��ȶ��İ汾���ݲ�ѡ����֧master����ǰѡ�����OpenHarmony-v3.1-Beta���ð汾���Ѿ���RockchipоƬ�IJ�Ʒ"���DAYU200"��������ֲ�������Ӽ�
����ѡ����Linux SDK��
����RKоƬ��һЩ����֧�ֶ��ֲ���ϵͳ������Android��Ubuntu��Buildroot(��Linux)����Ӧ�в�ͬ��SDK������ѡ��Linux��SDK����Ҫ��Android��Ubuntu�ģ�һ����ΪAndroid��Ubuntu���ں˻������ģ���������ֲ���ѶȺ�����������Android��AVB����̬�����Ȼ��ƶ�Ӱ��������ֲ������ĿǰRK��ҪоƬ�Ĵ�Linux SDK�ı��빤������OpenHarmony�Ĺ������Ǽ��ݵġ�
��Firefly��RKϵ��Ϊ�������䷽�����²��衣
����������֤��������Firefly��Ʒ����֤OpenHarmonyϵͳ��������ȷ������������ʾLauncher��
ѡ��ʹ�ô�Linux SDK��Buildroot�̼�����Firefly�������ض�Ӧ��Ʒ��Buildroot�̼�������¼��
���磬
ROC-RK3568-PC���������ӣ�https://www.t-firefly.com/doc/download/107.html
ROC-RK3568-PC����¼������https://wiki.t-firefly.com/zh_CN/ROC-RK3568-PC/03-upgrade_firmware.html
OpenHarmony��Ҫʹ��IPC binderͨ�ţ�����Linux SDK��û�п�������Ҫ����IPC binder�����±����ںˡ�
��Ҫ��ȡ��Դ������ں����ô�CONFIG_ANDROID_BINDER_IPC�꣬���±����ںˡ�
���磬Fireflyϵ�еIJ���������
���ȣ���Firefly�������ض�Ӧ��Ʒ��Linux_SDKԴ�����ע��Kernel��Ҫѡ��4.19�汾��
Ȼ���IJ�Ʒ��Ӧ��config�ļ�������CONFIG_ANDROID_BINDER_IPC=y������
��kernel/arch/arm64/configs/firefly_linux_defconfig����CONFIG_ANDROID_BINDER_IPC=y��
Ȼ���չ���ָ�����úñ��뻷���������ں�./build.sh kernel���õ�boot.img��
���ʹ�ð�������¼�ķ�ʽ��������¼������boot.img����¼�ɹ�����������ȷ���������������Ȼ������ȷ����/sys/module/binder/Ŀ¼��
# ls /sys/module/binder/ -l
total 0
drwxr-xr-x 2 root root 0 2022-01-25 07:20 parameters
--w------- 1 root root 4096 2022-01-25 07:18 uevent
��¼ʱ�ķ������ļ�parameter.txt�����ԴӲ���2���ص�Դ�����õ���Ҳ���ԴӲ���1�е�Buildroot�̼�����õ�������ķ��������Բο�https://blog.csdn.net/Neutionwei/article/details/121886647
��Ҫ��OpenHarmony-v3.1-Beta��ϵͳ��image������OpenHarmony-v3.1-Beta�Ĵ��룬����hihope rk3568��Ʒ��
��������·����https://gitee.com/openharmony/docs/blob/master/zh-cn/release-notes/OpenHarmony-v3.1-beta.md
�Ĵ��룺rk3399��Ҫɾ��zpos��ش��룬�����г��Ĵ�����Ҫɾ����rk3568����Ҫ��������ġ� %{public}d", errno));
���뷽�����������DAYU200��Ʒ����ϸ����ָ����https://gitee.com/openharmony/device_hihope
~~~shell
bash build/prebuilts_download.sh
./build.sh --product-name rk3568 --ccache
~~~
������õ�system.img��vendor.img��userdata.img
## Раздел 4
��OH��image�ϴ���Ҫ������������
�ڷ������ļ�parameter.txt����CMDLINE�����ݣ�����vendor.img��system.img��userdata.img�Ĵ�С������oem��rootfs��userdata�ķ�����С������Ӧ��������������λ�á�
���磬Firefly ROC-RK3568-PC��Ʒ������ķ�������
~~~c
mtdparts=rk29xxnand:0x00002000@0x00004000(uboot),0x00002000@0x00006000(misc),0x00020000@0x00008000(boot),0x00020000@0x00028000(recovery),0x00010000@0x00048000(backup),0x00150000@0x00058000(oem),0x30ce00@0x001A8000(rootfs),-@0x4B4e00(userdata:grow)
~~~
## Раздел 5. Создание образа image
ʹ���������ߣ��ȵ��벽��4�ĵķ������ļ�parameter.txt���Ҽ�-->��������-->ѡ���ļ�����Ϊtxt����Ȼ��ѡ����ļ�������¼��
- Parameter��ѡ����4�ĺ�������ļ�parameter.txt
- oem��ѡ����3�����vendor.img
- rootfs��ѡ����3�����system.img
- userdata��ѡ��Ѳ���3�����userdata.img

��һ����ɺ�rk3568ϵ�в�Ʒ��OpenHarmony�Ѿ����������ˣ�HDMI��Ļ������ʾOpenHarmony�����档
## Раздел 6. Загрузка и настройка системы
### Загрузка
��ͬ��Ʒ�ķ�������·����һ�����ڷ�������ʱ����Ҫָ���Լ���Ʒʵ�ʵķ�������·����
����ʹ�õ���OpenHarmony hihope rk3568�������image����Щimage�еķ�������·��������hihope rk3568�ģ���Ҫ�ij��Լ���Ʒ��ʵ�ʷ�������·����
����OpenHarmony�ϵ�hihope rk3568���������ļ�ָ���˹���·������Ҫ���������ļ���
��һ���ļ���/system/etc/init.without_two_stages.cfg�������ڵ����ϵ�·�����������system.img�У������ļ�·����device/hihope/rk3568/build/rootfs/init.without_two_stages.cfg
```shell
"mount ext4 /dev/block/platform/fe310000.sdhci/by-name/vendor /vendor wait rdonly barrier=1",
"mount ext4 /dev/block/platform/fe310000.sdhci/by-name/userdata /data wait nosuid nodev noatime barrier=1,data=ordered,noauto_da_alloc"
˵����û����ramdisk�IJ�Ʒʹ��/system/etc/init.without_two_stages.cfg������ramdisk�IJ�Ʒʹ��/system/etc/init.cfg��Ŀǰ���Եļ���Firefly��Ʒû�п���ramdisk������㲻����Ƿ�����ramdisk������������cfg�ļ����ġ�
�ڶ����ļ�/vendor/etc/fstab.rk3568�������ڵ����ϵ�·�����������vendor.img�У������ļ�·����./device/hihope/rk3568/build/rootfs/fstab.rk3568��
# fstab file.
# <src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
/dev/block/platform/fe310000.sdhci/by-name/system /usr ext4 ro,barrier=1 wait,required
/dev/block/platform/fe310000.sdhci/by-name/vendor /vendor ext4 ro,barrier=1 wait,required
/dev/block/platform/fe310000.sdhci/by-name/userdata /data ext4 nosuid,nodev,noatime,barrier=1,data=ordered,noauto_da_alloc wait,reservedsize=104857600
�Ȳ鿴��������·������ͬ��Ʒ�ķ���·����ǰ����������������鿴���鵽��ǰ���Ϸ������ƣ����������Ĺ���·����
# find /dev/ -name "by-name"
/dev/block/platform/fe310000.sdhci/by-name
Ȼ���������ļ��������ڴ������ĺ��ٱ��룬Ҳ����busybox�����system image��ͨ��vi�ģ�������ֱ�ӻ���image�ļ��ģ��������¡�
��Linux�������ϣ��õ�vendor.img��system.img
�½����ļ��У�����temp
��system.img mount��tempĿ¼
��temp/system/etc/init.without_two_stages.cfg�ļ��еĹ���·���������档��ͬ��Ʒ��ô�����ں��档
umout temp
��vendor.img mount��tempĿ¼
��temp/etc/fstab.rk3568�ļ��еĹ���·���������档��ͬ��Ʒ��ô�����ں��档
umout temp
ִ������ɲο��� Танпенгджу@OpenHarmony:~/firefly/hihope$ sudo umount temp
����ĺ���¼�ĺ��system.img��vendor.img��
��¼���ڵ��崮��ͨ��mount����鿴�������������ȷ��oem��userdata�����ɹ����ص�/vendor��/dataĿ¼��
### ��ͬ��Ʒ�ĵ�
Firefly ROC-RK3568-PC��Firefly AIO-3568J ����Ҫ���˷������ơ�
```shell
# /system/etc/init.without_two_stages.cfg�ļ�
"mount ext4 /dev/block/platform/fe310000.sdhci/by-name/oem /vendor wait rdonly barrier=1",
"mount ext4 /dev/block/platform/fe310000.sdhci/by-name/userdata /data wait nosuid nodev noatime barrier=1,data=ordered,noauto_da_alloc"
# /vendor/etc/fstab.rk3568�ļ�
# fstab file.
# <src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
/dev/block/platform/fe310000.sdhci/by-name/rootfs /usr ext4 ro,barrier=1 wait,required
/dev/block/platform/fe310000.sdhci/by-name/oem /vendor ext4 ro,barrier=1 wait,required
/dev/block/platform/fe310000.sdhci/by-name/userdata /data ext4 nosuid,nodev,noatime,barrier=1,data=ordered,noauto_da_alloc wait,reservedsize=104857600
Firefly AIO-3399J ����Ҫ�ķ���·�������ơ�
# /system/etc/init.without_two_stages.cfg�ļ�
"mount ext4 /dev/block/platform/fe330000.sdhci/by-name/oem /vendor wait rdonly barrier=1",
"mount ext4 /dev/block/platform/fe330000.sdhci/by-name/userdata /data wait nosuid nodev noatime barrier=1,data=ordered,noauto_da_alloc"
# /vendor/etc/fstab.rk3568�ļ�
# fstab file.
# <src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
/dev/block/platform/fe330000.sdhci/by-name/rootfs /usr ext4 ro,barrier=1 wait,required
/dev/block/platform/fe330000.sdhci/by-name/oem /vendor ext4 ro,barrier=1 wait,required
/dev/block/platform/fe330000.sdhci/by-name/userdata /data ext4 nosuid,nodev,noatime,barrier=1,data=ordered,noauto_da_alloc wait,reservedsize=104857600
���ȣ����Ҵ�������Ӧ���豸��ʹ�� cat /proc/bus/input/devices�ҵ���������Ӧ���豸�����磬���ﴥ�����ǵ�4���豸����¼NameΪ"himax-touchscreen"��
# cat /proc/bus/input/devices
I: Bus=0019 Vendor=524b Product=0006 Version=0100
N: Name="fe6e0030.pwm"
P: Phys=gpio-keys/remotectl
S: Sysfs=/devices/platform/fe6e0030.pwm/input/input0
U: Uniq=
H: Handlers=kbd event0 cpufreq
B: PROP=0
B: EV=3
B: KEY=100 0 0 40408800 1c16c0 0 0 0
I: Bus=0019 Vendor=0000 Product=0000 Version=0000
N: Name="rk805 pwrkey"
P: Phys=rk805_pwrkey/input0
S: Sysfs=/devices/platform/fdd40000.i2c/i2c-0/0-0020/rk805-pwrkey/input/input1
U: Uniq=
H: Handlers=kbd event1 cpufreq
B: PROP=0
B: EV=3
B: KEY=100000 0 0 0
I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="Typec_Headphone"
P: Phys=fusb302/typec
S: Sysfs=/devices/platform/fdd40000.i2c/i2c-0/0-0022/input/input2
U: Uniq=
H: Handlers=event2
B: PROP=0
B: EV=21
B: SW=4
I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="himax-touchscreen"
P: Phys=
S: Sysfs=/devices/virtual/input/input3
U: Uniq=
H: Handlers=kbd event3 cpufreq
B: PROP=2
B: EV=b
B: KEY=10 0 0 0 0 0 0 0 400 0 0 0 2000000 0 40000800 40 0 0 0
B: ABS=6658000 0
I: Bus=0019 Vendor=0001 Product=0001 Version=0100
N: Name="adc-keys"
P: Phys=adc-keys/input0
S: Sysfs=/devices/platform/adc-keys/input/input4
U: Uniq=
H: Handlers=kbd event4 cpufreq
B: PROP=0
B: EV=3
B: KEY=40000800 40000 1000000 0 0
Ȼ���������豸��Name���õ�udev��rule�У���udev�Զ�ʶ������Ƶ��豸Ϊ�������豸����/etc/udev/rules.d/touchscreen.rules�ļ�ĩβ�У�����������仰������"himax-touchscreen"����һ����ѯ�������ƣ���ͬӲ�������²�һ����
ATTR{name}=="himax-touchscreen", ENV{ID_INPUT}="1", ENV{ID_INPUT_TOUCHSCREEN}="1"
�ĺ��touchscreen.rules�ļ���ʾ������:
# cat /etc/udev/rules.d/touchscreen.rules
ATTRS{name}=="VSoC touchscreen", ENV{ID_INPUT}="1", ENV{ID_INPUT_TOUCHSCREEN}="1"
ATTRS{name}=="VSoC keyboard", ENV{ID_INPUT}="1", ENV{ID_INPUT_KEYBOARD}="1"
DRIVERS=="hid-multitouch", ENV{ID_INPUT}="1", ENV{ID_INPUT_TOUCHSCREEN}="1"
ATTR{name}=="himax-touchscreen", ENV{ID_INPUT}="1", ENV{ID_INPUT_TOUCHSCREEN}="1"
#
``` Firefly ROC-RK3568-PC
Firefly AIO-3568J
Firefly AIO-3399J
*Примечание: для точного перевода необходим контекст.*
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )