From: Shankho Boron Ghosh Date: Mon, 23 Nov 2020 15:26:26 +0000 (+0530) Subject: Updated Quickstart with ARM32 & AARCH64 X-Git-Tag: jellyfish/10.0.1 X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=commitdiff_plain;h=refs%2Ftags%2Fjellyfish%2F10.0.1;p=AGL%2Fdocumentation.git Updated Quickstart with ARM32 & AARCH64 Added instructions for ARM 32 bit (Emulation and BeagleBone Enhanced) and AARCH64 - ARM 64bit (Emulation). Bug-AGL: [SPEC-3633] Signed-off-by: Shankho Boron Ghosh Change-Id: Ica38b033266db4c5d99334683c3c8896446d1bf1 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/documentation/+/25625 Reviewed-by: Jan-Simon Moeller Tested-by: Jan-Simon Moeller --- diff --git a/docs/0_Getting_Started/1_Quickstart/Using_Ready_Made_Images.md b/docs/0_Getting_Started/1_Quickstart/Using_Ready_Made_Images.md index ab1d990..297804f 100644 --- a/docs/0_Getting_Started/1_Quickstart/Using_Ready_Made_Images.md +++ b/docs/0_Getting_Started/1_Quickstart/Using_Ready_Made_Images.md @@ -42,15 +42,15 @@ AGL provides a number of pre-built ready-made images of various versions. 7. Launch QEMU with vinagre (for scaling), remove `- snapshot \` if you want to save changes to the image files : -```sh - $ ( sleep 5 && vinagre --vnc-scale localhost ) > /tmp/vinagre.log 2>&1 & - qemu-system-x86_64 -device virtio-net-pci,netdev=net0,mac=52:54:00:12:35:02 -netdev user,id=net0,hostfwd=tcp::2222-:22 \ - -drive file=agl-demo-platform-crosssdk-qemux86-64.ext4,if=virtio,format=raw -show-cursor -usb -usbdevice tablet -device virtio-rng-pci \ - -snapshot -vga virtio \ - -vnc :0 -soundhw hda -machine q35 -cpu kvm64 -cpu qemu64,+ssse3,+sse4.1,+sse4.2,+popcnt -enable-kvm \ - -m 2048 -serial mon:vc -serial mon:stdio -serial null -kernel bzImage \ - -append 'root=/dev/vda rw console=tty0 mem=2048M ip=dhcp oprofile.timer=1 console=ttyS0,115200n8 verbose fstab=no' -``` + ```sh + $ ( sleep 5 && vinagre --vnc-scale localhost ) > /tmp/vinagre.log 2>&1 & + qemu-system-x86_64 -device virtio-net-pci,netdev=net0,mac=52:54:00:12:35:02 -netdev user,id=net0,hostfwd=tcp::2222-:22 \ + -drive file=agl-demo-platform-crosssdk-qemux86-64.ext4,if=virtio,format=raw -show-cursor -usb -usbdevice tablet -device virtio-rng-pci \ + -snapshot -vga virtio \ + -vnc :0 -soundhw hda -machine q35 -cpu kvm64 -cpu qemu64,+ssse3,+sse4.1,+sse4.2,+popcnt -enable-kvm \ + -m 2048 -serial mon:vc -serial mon:stdio -serial null -kernel bzImage \ + -append 'root=/dev/vda rw console=tty0 mem=2048M ip=dhcp oprofile.timer=1 console=ttyS0,115200n8 verbose fstab=no' + ``` - Login into AGL : @@ -116,8 +116,153 @@ AGL provides a number of pre-built ready-made images of various versions. 3. Boot from USB drive on the x86 system. +## ARM 32 bit (Emulation and Hardware) -## Raspberry Pi 4 +### 1. QEMU (Emulation) + +1. Download the [compressed prebuilt image](https://download.automotivelinux.org/AGL/release/jellyfish/latest/qemuarm/deploy/images/qemuarm/agl-demo-platform-crosssdk-qemuarm.ext4.xz). + +2. Download the [compressed kernel image](https://download.automotivelinux.org/AGL/release/jellyfish/latest/qemuarm/deploy/images/qemuarm/zImage). + +3. Install [QEMU](https://www.qemu.org/download/) : + + ```sh + $ apt-get install qemu + ``` + +4. Install [vinagre](https://wiki.gnome.org/Apps/Vinagre) : + + ```sh + $ sudo apt install vinagre + ``` + +5. Create boot directory and copy compressed images (prebuilt & kernel) into them : + + ```sh + $ mkdir ~/agl-demo/ + $ cp ~/Downloads/agl-demo-platform-crosssdk-qemuarm.ext4.xz ~/agl-demo/ + $ cp ~/Downloads/zImage ~/agl-demo/ + $ cd ~/agl-demo + $ sync + ``` + +6. Extract prebuilt compressed image : + + ```sh + $ xz -v -d agl-demo-platform-crosssdk-qemuarm.ext4.xz + ``` + +7. Launch QEMU with vinagre (for scaling), remove `- snapshot \` if you want to save changes to the image files : + + ```sh + $ ( sleep 5 && vinagre --vnc-scale localhost ) > /tmp/vinagre.log 2>&1 & + qemu-system-arm -cpu cortex-a15 -machine virt-2.11 -nographic \ + -net nic,model=virtio,macaddr=52:54:00:12:34:58 \ + -net user -m 2048 -monitor none -soundhw hda -device usb-ehci \ + -device virtio-rng-pci -device VGA,vgamem_mb=64,edid=on -vnc :0 \ + -device qemu-xhci -device usb-tablet -device usb-kbd \ + -kernel zImage -append "console=ttyAMA0,115200 root=/dev/vda verbose systemd.log_color=false" \ + -drive format=raw,file=agl-demo-platform-crosssdk-qemuarm.ext4 \ + -snapshot + ``` + + - Login into AGL : + + ```sh + Automotive Grade Linux 9.99.4+snapshot qemux86-64 ttyS1 + + qemux86-64 login: root + ``` + + + - Shutdown QEMU : `$ poweroff`, otherwise QEMU will run in the background. + - To use vnc-viewer instead of vinagre : + ```sh + $ ( sleep 5 && vncviewer ) & + qemu-system-arm -cpu cortex-a15 -machine virt-2.11 -nographic \ + -net nic,model=virtio,macaddr=52:54:00:12:34:58 \ + -net user -m 2048 -monitor none -soundhw hda -device usb-ehci \ + -device virtio-rng-pci -device VGA,vgamem_mb=64,edid=on -vnc :0 \ + -device qemu-xhci -device usb-tablet -device usb-kbd \ + -kernel zImage -append "console=ttyAMA0,115200 root=/dev/vda verbose systemd.log_color=false" \ + -drive format=raw,file=agl-demo-platform-crosssdk-qemuarm.ext4 \ + -snapshot + ``` + +## AARCH64 - ARM 64bit + +### 1. QEMU (Emulation) + +1. Download the [compressed prebuilt image](https://download.automotivelinux.org/AGL/release/jellyfish/latest/qemuarm64/deploy/images/qemuarm64/agl-demo-platform-crosssdk-qemuarm64.ext4.xz). + +2. Download the [compressed kernel image](https://download.automotivelinux.org/AGL/release/jellyfish/latest/qemuarm64/deploy/images/qemuarm64/Image). + +3. Install [QEMU](https://www.qemu.org/download/) : + + ```sh + $ apt-get install qemu + ``` + +4. Install [vinagre](https://wiki.gnome.org/Apps/Vinagre) : + + ```sh + $ sudo apt install vinagre + ``` + +5. Create boot directory and copy compressed images (prebuilt & kernel) into them : + + ```sh + $ mkdir ~/agl-demo/ + $ cp ~/Downloads/agl-demo-platform-crosssdk-qemuarm64.ext4.xz ~/agl-demo/ + $ cp ~/Downloads/zImage ~/agl-demo/ + $ cd ~/agl-demo + $ sync + ``` + +6. Extract prebuilt compressed image : + + ```sh + $ xz -v -d agl-demo-platform-crosssdk-qemuarm64.ext4.xz + ``` + +7. Launch QEMU with vinagre (for scaling), remove `- snapshot \` if you want to save changes to the image files : + + ```sh + $ ( sleep 5 && vinagre --vnc-scale localhost ) > /tmp/vinagre.log 2>&1 & + qemu-system-aarch64 -cpu cortex-a57 -machine virt -nographic \ + -net nic,model=virtio,macaddr=52:54:00:12:34:58 \ + -net user -m 2048 -monitor none -smp 2 -soundhw hda -device usb-ehci \ + -device virtio-rng-pci -device VGA,vgamem_mb=64,edid=on \ + -device qemu-xhci -device usb-tablet -device usb-kbd -vnc :0 \ + -kernel Image -append "console=ttyAMA0,115200 root=/dev/vda verbose systemd.log_color=false " \ + -drive format=raw,file=agl-demo-platform-crosssdk-qemuarm64.ext4 \ + -snapshot + ``` + + - Login into AGL : + + ```sh + Automotive Grade Linux 9.99.4+snapshot qemux86-64 ttyS1 + + qemux86-64 login: root + ``` + + + - Shutdown QEMU : `$ poweroff`, otherwise QEMU will run in the background. + - To use vnc-viewer instead of vinagre : + ```sh + $ ( sleep 5 && vncviewer ) & + qemu-system-aarch64 -cpu cortex-a57 -machine virt -nographic \ + -net nic,model=virtio,macaddr=52:54:00:12:34:58 \ + -net user -m 2048 -monitor none -smp 2 -soundhw hda -device usb-ehci \ + -device virtio-rng-pci -device VGA,vgamem_mb=64,edid=on \ + -device qemu-xhci -device usb-tablet -device usb-kbd -vnc :0 \ + -kernel Image -append "console=ttyAMA0,115200 root=/dev/vda verbose systemd.log_color=false " \ + -drive format=raw,file=agl-demo-platform-crosssdk-qemuarm64.ext4 \ + -snapshot + ``` + +### 2. Raspberry Pi 4 1. Download the [compressed prebuilt image](https://download.automotivelinux.org/AGL/release/jellyfish/latest/raspberrypi4/deploy/images/raspberrypi4-64/agl-demo-platform-crosssdk-raspberrypi4-64.wic.xz). @@ -182,7 +327,7 @@ AGL provides a number of pre-built ready-made images of various versions. $ sudo screen /dev/ttyUSB0 115200 ``` -## R-Car H3SK (H3ULCB board) +### 3. R-Car H3SK (H3ULCB board) **NOTE :** The prebuilt image doesn't support graphics (as of yet) and will run headless. For graphical support, a local build with the neccesary graphics driver is required.