@@ -7,6 +7,9 @@ This tutorial describes the steps to run Automotive Grade Linux (AGL)
7
7
as the User OS on ACRN hypervisor and the problems we got at current stage.
8
8
We hope the steps documented in this article could help us to reproduce the
9
9
problem much easier and provide some information for further debugging.
10
+ The regulatory model of APL NUC we used is `NUC6CAYH
11
+ <https://www.intel.com/content/www/us/en/products/boards-kits/nuc/kits/nuc6cayh.html> `_
12
+ and other platforms may work too.
10
13
11
14
.. image :: images/The-overview-of-AGL-as-UOS.png
12
15
:align: center
@@ -26,58 +29,66 @@ https://www.automotivelinux.org/.
26
29
Steps for using AGL as the UOS
27
30
******************************
28
31
29
- The regulatory model of NUC we used is `NUC6CAYH
30
- <https://www.intel.com/content/www/us/en/products/boards-kits/nuc/kits/nuc6cayh.html> `_
31
- and other platforms may work too.
32
-
33
-
34
- #. Prepare the Service OS (SOS)
35
-
36
- Follow the instructions found in the Getting started guide for Intel NUC
37
- to setup SOS :ref: `getting-started-apl-nuc `.
38
-
39
- #. Prepare the User OS (UOS)
40
-
41
- Download the release of AGL from https://download.automotivelinux.org/AGL/release/eel/,
32
+ #. Download the release of AGL from https://download.automotivelinux.org/AGL/release/eel/,
42
33
and we will use ``eel_5.1.0 `` release for example.
43
34
44
35
.. code-block :: none
45
36
46
- cd ~
47
- wget https://download.automotivelinux.org/AGL/release/eel/5.1.0/intel-corei7-64/deploy/images/intel-corei7-64/agl-demo-platform-crosssdk-intel-corei7-64.wic.xz
48
- unxz agl-demo-platform-crosssdk-intel-corei7-64.wic.xz
49
-
50
-
51
- You need to adjust the ``/usr/share/acrn/samples/nuc/launch_uos.sh `` script to match your installation.
37
+ $ cd ~
38
+ $ wget https://download.automotivelinux.org/AGL/release/eel/5.1.0/intel-corei7-64/deploy/images/intel-corei7-64/agl-demo-platform-crosssdk-intel-corei7-64.wic.xz
39
+ $ unxz agl-demo-platform-crosssdk-intel-corei7-64.wic.xz
40
+
41
+ #. Download the "kernel-iot-lts2018" kernel:
42
+
43
+ .. code-block :: none
44
+
45
+ $ sudo mkdir ~/uos-kernel-build
46
+ $ cd ~/uos-kernel-build
47
+ $ wget https://download.clearlinux.org/releases/current/clear/x86_64/os/Packages/linux-iot-lts2018-4.19.0-27.x86_64.rpm
48
+ $ rpm2cpio linux-iot-lts2018-4.19.0-27.x86_64.rpm | cpio -idmv
49
+
50
+ .. note ::
51
+ Here we download the kernel from ``current `` Clear Linux version.
52
+
53
+ #. Deploy the UOS kernel modules to UOS virtual disk image
54
+ (note: you’ll need to use the same iot-lts2018 image version number noted in step 1 above):
55
+
56
+ .. code-block :: none
57
+
58
+ $ sudo losetup -f -P --show ~/agl-demo-platform-crosssdk-intel-corei7-64.wic
59
+ $ sudo mount /dev/loop0p2 /mnt
60
+ $ sudo cp -r ~/uos-kernel-build/usr/lib/modules/4.19.0-27.iot-lts2018/ /mnt/lib/modules/
61
+ $ sudo umount /mnt
62
+ $ sync
63
+
64
+ #. You need to adjust the ``/usr/share/acrn/samples/nuc/launch_uos.sh `` script to match your installation.
52
65
These are the couple of lines you need to modify:
53
66
54
67
.. code-block :: none
55
68
56
69
-s 3,virtio-blk,/root/agl-demo-platform-crosssdk-intel-corei7-64.wic \
57
70
-k /usr/lib/kernel/default-iot-lts2018 \
58
- -B "root=/dev/vda2
71
+ -B "root=/dev/vda2 ...
59
72
60
73
.. note ::
61
74
In case you have downloaded a different AGL image or store the image in other directory,
62
75
you will need to modify the AGL file name or directory (the ``-s 3,virtio-blk `` argument)
63
76
to match what you have downloaded above.
64
77
Likewise, you may need to adjust the kernel file name to ``default-iot-lts2018 ``.
65
78
66
- #. Start the User OS (UOS)
67
-
68
- You are now all set to start the User OS (UOS).
79
+ #. Start the User OS (UOS):
69
80
70
81
.. code-block :: none
71
82
72
- sudo /usr/share/acrn/samples/nuc/launch_uos.sh
83
+ $ sudo /usr/share/acrn/samples/nuc/launch_uos.sh
73
84
74
85
**Congratulations **, you are now watching the User OS booting up!
75
86
76
87
And you should be able to see the console of AGL:
77
88
78
89
.. image :: images/The-console-of-AGL.png
79
90
:align: center
80
-
91
+
81
92
When you see the output of the console above, that means AGL has been loaded
82
93
and now you could operate on the console.
83
94
@@ -108,8 +119,8 @@ After that, there are still some steps need to do to launch weston in AGL:
108
119
109
120
.. code-block :: none
110
121
111
- export XDG_RUNTIME_DIR=/run/platform/display
112
- systemctl restart weston
122
+ $ export XDG_RUNTIME_DIR=/run/platform/display
123
+ $ systemctl restart weston
113
124
114
125
And you will be able to see the GUI of weston in AGL now.
115
126
0 commit comments