24 24
tkaiser

H6 boards: Orange Pi One Plus, Orange Pi 3 Plus and Pine H64

Recommended Posts

2 minutes ago, valant said:

How about command line hand off? Do you know how it's passed in case of using DT (thus no ATAGs)?

 

I don't know actual implementation details, but defining "bootargs" variable with "booti" command works, since I'm using that during development... I think I heard that bootm doesn't work with aarch64 kernels and I didn't even try it.

Share this post


Link to post
Share on other sites
3 hours ago, jernej said:

 

I don't know actual implementation details, but defining "bootargs" variable with "booti" command works, since I'm using that during development... I think I heard that bootm doesn't work with aarch64 kernels and I didn't even try it.

yes, I saw that on the armbian for pine64. it both uses booti and sets up bootargs.

 

bootm works for sure. in that sense it switches into aarch64 state, masks out interrupts as well as booti does, and successfully loads and transfers control to "legacy linux image". but that image wasn't actually linux. :) As I've said, without arguments to it, it passes zeros into 4 argument registers. It's hard to check what it would do with DT loaded and passed to it, when the code cannot do anything with DT by its own yet. Of course, for bootm, a so called arm64 linux image format isn't a thing (mkimage wrapping needed).

 

Added.

I found the answer. "bootargs" goes into "/chosen" node.

Share this post


Link to post
Share on other sites

I have been looking for the source code of the Arm Trusted Firmware 1.4 and the modified u-boot used in the Armbian image for the OrangePi One Plus, to no avail. Could someone point me to the right git repositories ? Thanks!

Share this post


Link to post
Share on other sites
5 hours ago, eperie said:

Thank  you Igor - I should be able to make my way through  Armbian's build system at one point.


If you don't need to change anything, just run the build script (add EXPERT="yes" to have access to WIP builds) select board, kernel if there is more than one, userspace, desktop or CLI ... wait and you end up with a kernel/image. WIP area sometimes breaks and here we don't provide assistance. It's too complex/expensive ... but stable builds must work and they usually build just fine. If you are using a recommended way of building. If you plan to build manually, without a help of our build system, there might be many things to fix before.

Share this post


Link to post
Share on other sites

I've been trying to build an image for OrangePi One Plus today (with Vagrant/VirtualBox) but all I get when answering the questions from the menu is :

Quote


Error: Expected at least 5 tokens for --menu, have 4.
Use --help to list options.


[ error ] ERROR in function source [ main.sh:188 ]
[ error ] No kernel branch selected
[ o.k. ] Process terminated

 

Share this post


Link to post
Share on other sites
2 hours ago, gounthar said:
  Quote


Error: Expected at least 5 tokens for --menu, have 4.
Use --help to list options.


[ error ] ERROR in function source [ main.sh:188 ]
[ error ] No kernel branch selected
[ o.k. ] Process terminated

dev image only.. so you need a EXPERT="yes" tag set. Background: All sunxi boards share mostly the same kernel. Due to H6 initial support is based somewhere on top of 4.17 (probably partly 4.16), armbians "next" kernel (4.14) isn't an option for this board. 

Share this post


Link to post
Share on other sites

Sorry for bothering you with stupid questions, but I launched:

vagrant@ubuntu-xenial:~/armbian$ sudo ./compile.sh BOARD=orangepioneplus KERNEL_ONLY=yes RELEASE=stretch EXPERT=yes

My config file is :

# Read build script documentation http://www.armbian.com/using-armbian-tools/
# for detailed explanation of these options and for additional options not listed here

KERNEL_ONLY="no"                                # leave empty to select each time, set to "yes" or "no" to skip dialog prompt
KERNEL_CONFIGURE="no"                   # leave empty to select each time, set to "yes" or "no" to skip dialog prompt
CLEAN_LEVEL="make,debs,oldcache"        # comma-separated list of clean targets: "make" = make clean for selected kernel and u-boot,
                                        # "debs" = delete packages in "./output/debs" for current branch and family,
                                        # "alldebs" = delete all packages in "./output/debs", "images" = delete "./output/images",
                                        # "cache" = delete "./output/cache", "sources" = delete "./sources"
                                        # "oldcache" = remove old cached rootfs except for the newest 6 files

DEST_LANG="en_US.UTF-8"                 # sl_SI.UTF-8, en_US.UTF-8

# advanced
KERNEL_KEEP_CONFIG="no"                 # do not overwrite kernel config before compilation
EXTERNAL="yes"                          # build and install extra applications and drivers
EXTERNAL_NEW="prebuilt"                 # compile and install or install prebuilt additional packages
CREATE_PATCHES="no"                     # wait that you make changes to uboot and kernel source and creates patches
BUILD_ALL="no"                          # cycle through available boards and make images or kernel/u-boot packages.
                                        # set KERNEL_ONLY to "yes" or "no" to build all packages/all images

BSPFREEZE=""                            # freeze armbian packages (u-boot, kernel, dtb)
INSTALL_HEADERS=""                      # install kernel headers package
LIB_TAG="orange-one-plus-ethernet"                      # change to "branchname" to use any branch currently available.
EXPERT="yes"

 

and then, I got

  AR      net/built-in.a
[ error ] ERROR in function compile_kernel [ compilation.sh:364 ]
[ error ] Kernel was not built [ @host ]
[ o.k. ] Process terminated

I'm sure I missed something, but can't see what for the time being.

Share this post


Link to post
Share on other sites
16 minutes ago, gounthar said:

Sorry, I am working on a fork (I haven't changed anything yet, I just created a new branch to work on the Ethernet part for the DTS).


Aha. I am working on an Allwinner patches cleanup. Perhaps you could join? 
https://github.com/armbian/build/tree/sunxi-4.18

I haven't try to build H6 images yet, but I think you need to enable NEXT in board configuration since we only have NEXT kernel, v. 4.17.y ... 4.18.y when it's ready. This whole part will be merged into master when current regressions are solved and when its tested well enough.

Share this post


Link to post
Share on other sites
11 minutes ago, gounthar said:

 

I would be happy to join, as long as I don't break everything. :rolleyes:

 


You will not get commit rights, so you will not be able to break anything :) You can try to work on some features which were not be addressed and when you have a working solution, patch, you send it to Github as PR. I am just pointing you to the latest sources, that you will not deal with something that has already been solved.

 

12 minutes ago, gounthar said:

I had been told not to use NEXT for these boards, or I did not understand correctly maybe...


It is true in both cases. On build script branch sunxi-4.18, NEXT was already moved to 4.17.y, while master branch have NEXT on 4.14.y and DEV on 4.17.y or 4.18RC ... it doesn't matter. Just read my post once again :)

Share this post


Link to post
Share on other sites

my fault.. :P 

Didn't have the 4.17 branch in mind (didn't know that you started with a 4.18 branch). So the statement is true for the masters branch where next is 4.14 and h6 boards only live in the dev branch. This is different for the 4.17/4.18 branch. So you might build your branch on top of them and then send PRs against those and not master. :) @Igor will it make more sense to buid against 4.17 or 4.18?

 

9 hours ago, Igor said:
17 hours ago, gounthar said:

LIB_TAG="orange-one-plus-ethernet"

 

Where did you find this? We don't have it. 

IMO it actually makes sense to name it different than armbians default names in case your git-fu is on a similar level than mine (in case a PR gets rejected it's just less work to sort this stuff out than to revert the git-history from the working branch and sync it properly with armbians branchnames, I can, but it takes me more time than just kill a dedicated branch for my idea).

Share this post


Link to post
Share on other sites
15 minutes ago, chwe said:

 will it make more sense to buid against 4.17 or 4.18?


branch sunxi-4.18 (sunxi-4.17 is already deprecated) I know it's confusing since kernel version is still 4.17  at this moment and will remain this way for weeks. 

Share this post


Link to post
Share on other sites

Thank you very much for armbian 5.55 development 4.18 for PineH64.  i have only two maybe stupid questions.: why board is recognized only 2 GB RAM not 3GB. ( i know it is development )

Second question about cpu frequency. 1.49GHZ. Why dont you decided on full 1.80GHZ. Pine's board are good projected if you mean hot. Board stay cold. I used to only 3,5 cm x 3,5 cm radiator. Tested yotube play video 480p and things not going wrong ( hot )

Did you tested frequency trotting? I thing this board can reach 1.8GHZ. Iam curious your opinion. Best regards.  

Share this post


Link to post
Share on other sites
4 hours ago, constantius said:

why board is recognized only 2 GB RAM not 3GB. ( i know it is development )

Due to non-optimal algorithm for recognizing RAM size in U-Boot, which can recognize only power of 2 sizes. For example, 512 MB, 1 GB, 2 GB, 4 GB...

Share this post


Link to post
Share on other sites

Hi,


I have tried to boot the OrangePi One Plus image on my Beelink GS1, but either the UART is bad configured or I have damaged the TXD pin :'(.

I can't stop the U-boot nor enter a login.

 

bootlog : https://pastebin.com/Rd2EEduZ

 

I try to get some information from the 

sys_config.fex (from gs1_rv106N0.img): https://pastebin.com/TdnfRMJL

reverse dts: https://pastebin.com/jK2zhGAe

 

Everything seems correct so maybe I have damaged the TXD pin.

Do you think there is lot of work to make ethernet/ssh works one my board ?

 

Thanks,

Clement

Share this post


Link to post
Share on other sites

Hi @froezus,

 

how did you boot this on the Beelink GS1 just burned the image with Win32Diskimage and it automatically booted from SD card, after modifiyng the fex file in the Orangepi image from the GS1 image sys_config_fex?

 

no other changes ?

 

were are the UART pins on the board, i got such a device here, i could open it up and start some testing.....

 

best regards

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
24 24