<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<atom:link href="https://dev1galaxy.org/extern.php?action=feed&amp;tid=3147&amp;type=rss" rel="self" type="application/rss+xml" />
		<title><![CDATA[Dev1 Galaxy Forum / [ ARM64 ] build, for Orange PI One Plus]]></title>
		<link>https://dev1galaxy.org/viewtopic.php?id=3147</link>
		<description><![CDATA[The most recent posts in [ ARM64 ] build, for Orange PI One Plus.]]></description>
		<lastBuildDate>Thu, 14 Nov 2019 03:35:44 +0000</lastBuildDate>
		<generator>FluxBB</generator>
		<item>
			<title><![CDATA[[ ARM64 ] build, for Orange PI One Plus]]></title>
			<link>https://dev1galaxy.org/viewtopic.php?pid=18482#p18482</link>
			<description><![CDATA[<p>Hello All,<br />As you probably know, there are an effort, to bring Sunxi Hardware to mainline( Leaving behind each proprietary, vendor builders, tool-chains, and blobs.. we hope ) <a href="https://linux-sunxi.org/Linux_mainlining_effort#Status_Matrix" rel="nofollow">here</a> :</p><p>This release is a major release for this board, as it brings the board to a stable, and almost complete full feature,situation..<br /> This is a revision <strong>v0.8 Server</strong> build.</p><p>Features &amp; Versions:</p><p>1) - <em>Arm Trusted Firmware&#160; - <strong>v2.3 </strong>( built for arm64 )<br />&#160; &#160; &#160;U-boot boot-loader&#160; &#160; &#160; &#160;- <strong>v2020.07</strong> ( built for arm64 )<br />2) - Linux Kernel&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; - <strong>Stable 5.8.1</strong> ( built for arm64 )<br />3) - UserSpace&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; - <strong>Devuan Beowulf</strong> ( for arm64 )</em><br />4) - ChangeLog&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; - ATF v2.3, Uboot v2020.07, kernel 5.8.1,{ DVFS, IOMMU, Message Box, SPI } new Allwinner H6 drivers, wireguard vpn driver<br />5) - Problems &amp; to be done - After coming to Beowulf, its impossible to auto-mount zramfs as swap, automatically..after reboot network doesn&#039;t start, duo to regulator vcc-gmac-3v3. not being enabled in that situation( only in reboot situation )</p><p>1) BootLoader( ATF + u-boot )</p><p>Disk Partitioning scheme:</p><div class="codebox"><pre><code># parted /dev/mmcblk0
(...)                                                         
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 

Number  Start   End     Size    Type     File system  Flags
 1      1049kB  101MB   99.6MB  primary  ext2
 2      101MB   1700MB  1599MB  primary  ext4</code></pre></div><p>a)&#160; &#160;- Bootloader( Arm Trusted Firmware + U-Boot ), is between [ beginning - 1st partition ]( starting at sector 16( 8KiB ), til 1MiB )<br />&#160; a1) - The Bootloader will search for a file called <strong>&#039;boot.scr&#039;</strong>, and after initialise the u-boot environment, <span class="bbu">will execute that script</span>..<br />&#160; a2) - In&#160; <strong>&#039;boot.scr&#039;</strong>,<span class="bbu"> for this image</span>, it will point to &#039;Orange PI One Plus&#039; Device Tree Binary File by default( was tested there.. )..<br />&#160; a3) - <span class="bbu">If you have other board than&#160; &#039;Orange PI One Plus&#039;</span>, please Read Bellow in the &#039;Notes Section&#039;..&#160; &#160; <br />b)&#160; - 1st Partition( after BootLoader ) is mounted as&#160; <strong>&#039;/boot&#039;</strong><br />c)&#160; - 2nd Partition is mounted as rootfs <strong>&#039;/&#039;</strong></p><p>NOTA!<br />The Bootloader in a) usually takes ~600KiB..<br />Each time a bootloader is built, all area [ 8KiB - 1MiB ], <span class="bbu">needs to be clean first</span>( so that you can flash the new bootloader.. because could still be there any bits of the previous one.. which could lead to unpredictable consequences.. ).</p><p><strong>If you have Other Board than &#039;Orange PI One Plus&#039;</strong>, situation described in <strong>a3)</strong>:<br />The &#039;boot.cmd&#039; script( format, Human Readable ):</p><div class="codebox"><pre><code># setup MAC address
setenv ethaddr 7E:8C:70:59:B5:70
# set console to tty0
setenv console tty0
# Send debug info to uart, and also display
setenv stdout serial,vga
setenv stderr serial,vga
setenv bootargs debug=on earlyprintk=serial,tty0,115200n8 console=tty0 console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rw rootfstype=ext4 fsck.repair=yes rootwait
setenv fdtfile allwinner/sun50i-h6-orangepi-one-plus.dtb
load mmc 0:2 0x43000000 usr/lib/linux-image-5.8.1/${fdtfile}
load mmc 0:1 0x42000000 vmlinuz
booti 0x42000000 - 0x43000000</code></pre></div><p>Write this Image, to a sd-card, then mount it, and change the &#039;boot.cmd&#039; script to point to your board..<br /># You can find a list of supported boards in: &#039;/usr/lib/linux-image-5.8.1/allwinner&#039;<br /># Edit the file &#039;boot.cmd&#039;, with &#039;vi&#039; for example.<br /># change the line:</p><div class="codebox"><pre><code>setenv fdtfile allwinner/sun50i-h6-orangepi-one-plus.dtb</code></pre></div><p>to</p><div class="codebox"><pre><code>setenv fdtfile allwinner/your_board.dtb</code></pre></div><p>Save the file,<br /># Generate the <span class="bbu">real script</span> file( binary ),<strong> &#039;boot.scr&#039;</strong></p><div class="codebox"><pre><code>mkimage -C none -A arm64 -T script -d boot.cmd boot.scr</code></pre></div><p>2) - Linux Kernel</p><p>Packages:</p><p>There are 3 packages installed( in the future will be at least Userspace Panfrost mesa-3d graphics drivers more.. for a desktop version..):</p><div class="codebox"><pre><code>~# dpkg -l |grep -E &quot;(linux-.*(headers|image|libc-dev))&quot;
ii  linux-headers-5.8.1        5.8.1-3                            arm64        Linux kernel headers for 5.8.1 on arm64
ii  linux-image-5.8.1          5.8.1-3                            arm64        Linux kernel, version 5.8.1
ii  linux-libc-dev:arm64       5.8.1-3                            arm64        Linux support headers for userspace development</code></pre></div><p>The target will be to reach, at least Linux kernel 5.8, or more if needed, have lot of <a href="https://linux-sunxi.org/Linux_mainlining_effort#Status_Matrix" rel="nofollow">new features for ARM hardware</a>.. ), and also work in the Device Tree Bindings, for each board..</p><p>3) - UserSpace -Users &amp; Passwords:</p><p>1) <strong>root</strong>&#160; &#160; &#160; - password &#039;<strong>toor</strong>&#039;<br />2) <strong>devuan</strong> - password &#039;<strong>devuan</strong>&#039;</p><p>NOTA!<br />SSH is enabled, so that you can login, but <span class="bbu">root login, is disabled</span>, you should login as <strong>&#039;devuan&#039;</strong>, only then switch to &#039;root&#039;, if you want to.. for that,<br />After Login as &#039;devuan&#039;, issue:</p><div class="codebox"><pre><code>sudo su -</code></pre></div><p>And type your <strong>&#039;devuan&#039;</strong> password, that&#039;s it..</p><p>4) - Changelog</p><p>a) kernel update to <del>5.5.0</del> <del>5.6.3</del>,5.8.1<br />b) <del>Thermal driver( as patch )., will be officially added to kernel 5.6..</del>( added on kernel 5.6.3 )<br />c) Hardware VPU Decode Acceleration, now supports( MJPEG, MPEG2, H.264, <a href="https://linux-sunxi.org/Linux_mainlining_effort#Merged_into_5.5" rel="nofollow">HEVC/H.265 </a>)( CEDRUS driver )<br />d) 3d Video Driver - Pandrost( Kernel Side )<br />e) Allwiner Crypto Driver<br />f) { IR, RTC, SPDIF } Kernel Driver test Handlers, including decoders for RAW IR( NEC, RC5(x/sz), RC6, JVC, Sony. SANYO, Sharp, MCE Keyboard/mouse, XMP )<br />g) Its now possible to boot, without assigning &#039;/dev/urandom&#039; to crng, <span class="bbu">but a dedicated TRNG driver will come, possibly on <del>5.6 Kernel</del> it will possibly be merged in the next month, so expect it for 5.7 maybe..</span>..<br />h) PWM driver<br />i) PMU driver<br />j) disable red Led, change green to trigger [activity]<br />k) addition of { DVFS, IOMMU, Message Box, SPI } drivers... DVFS enabled from [ 480 MHz - 1.80 GHz ]( if you pretend to use it in a continuous full load situation, prepare a small heatsink, and small fan above, it would stay ~70°C on those conditions.. )</p><p>5) - Problems and testings to be done..</p><p>a) After migration to beowulf, its impossible, for now, to automount zramfs as swap, automatically.. we are issuing <ins>swapon -a</ins> in &#039;<strong>/etc/rc.local</strong>&#039;.<br />it could be related with several packages, including those(&#160; most probably): init init-system-helpers initscripts insserv eudev mawk sed<br />b) Testing is needed, on camera interfaces { BT656, Parallel } merged in Kernel 5.4 for Allwinner Multiple aarch64 SoCs drivers <strong>sun8i-csi</strong> ..<br />c) Compile V4l2 <strong>Cedrus</strong> driver, test it via <a href="https://linux-sunxi.org/Cedrus/libvdpau_integration_matrix" rel="nofollow">libvdpau</a>..<br />d) Test IR driver shipped in Kernel 5.4 for Allwinner A64/H6..<br />e) Compile UserSpace Mesa Panfrost Driver stack( userspace counterpart for kernel space one.. )<br />f) USB Driver is still in PIO mode, no DMA yet, and uses some CPU, with transfers rate of ~10MB/s..<br />g) Test PWM<br />h) If you reboot your board{ reboot | shutdown -r now }, vcc-gmac-3v3 regulator, doesn&#039;t appear enabled( more investigation is needed.. use shutdown -h now, or press the power button.. ).</p><p>For this image, to reach more Supported Hardware and Users, your help is also needed <img src="https://dev1galaxy.org/img/smilies/smile.png" width="15" height="15" alt="smile" /><br />Testing <strong><a href="https://cld.pt/dl/download/fc0cb9f4-d543-4c3e-a4a5-66082b93a5e1/devuan_beowulf_3.0.0_arm64_orangepi_one_plus_0.8.img.xz?download=true" rel="nofollow">devuan-beowulf-sunxi-arm64-0.8-beta</a></strong>, and posting your feedback.<br />SHA256sum:</p><div class="codebox"><pre><code>$ sha256sum devuan_beowulf_3.0.0_arm64_orangepi_one_plus_0.8.img.xz 
8cc1d5ab28945b0532a770242b46e0a9e34a6123f87d536ae6c9920480a57a16  devuan_beowulf_3.0.0_arm64_orangepi_one_plus_0.8.img.xz</code></pre></div><p>Best Regards,<br />tux</p>]]></description>
			<author><![CDATA[dummy@example.com (tuxd3v)]]></author>
			<pubDate>Thu, 14 Nov 2019 03:35:44 +0000</pubDate>
			<guid>https://dev1galaxy.org/viewtopic.php?pid=18482#p18482</guid>
		</item>
	</channel>
</rss>
