Jump to content

Recommended Posts

Posted
  On 4/28/2017 at 6:04 AM, tkaiser said:

This is not a PM but just a low-end PCIe SATA controller (ASM1061: PCIe 2.x x1 to 2 x SATA). For your mSATA SSD you would need something similar since it can not work directly inside a PCIe slot. The only SSD variants that might work with a mechanical adapter are NVME thingies with an mPCIe to M.2 adapter.

Expand  

 

I had purchased both the M.2 and a PCIe adapter: here and here and this is what I was trying to use.  For whatever reason it won't register in the slot. 

 

Also, I checked the kernel I compiled and I included:

# CONFIG_SATA_AHCI is not set

 

So this was not the problem.  

 

I am assuming something needs to be changed to make it notice it as PCI-e (mSATA) instead of SATA.

 

To avoid pulling out my hair in frustration I just purchased a M.2 to SATA adapter for another 5$ and will likely just hook it to the ASM1061.

 

If you do come up with any ideas you think would get the m.2 working in the PCI-e adapter I am all ears though!

 

Cheers!

 

Posted
  On 4/28/2017 at 2:27 PM, TheLinuxBug said:

If you do come up with any ideas you think would get the m.2 working in the PCI-e adapter I am all ears though!

Expand  

 

Basics: https://en.wikipedia.org/wiki/M.2#Form_factors_and_keying

 

The adapter looks like B key (not totally wrong since able to transport PCIe x2 but risky since also used for mSATA) and the SSD has B+M key and is a SATA variant (that's the 'nice' stuff with M.2, depending on the keying it can transport SATA and/or PCIe, the latter able to use either AHCI or NVME at the protocol layer).

 

Still: If you have an Espressobin lying around can't you give the OMV image a try (desperately looking for feedback -- that's all ;) )

Posted
  On 4/28/2017 at 2:47 PM, tkaiser said:

Still: If you have an Espressobin lying around can't you give the OMV image a try (desperately looking for feedback -- that's all ;) )

Expand  

 

Yeah I realize now I should have just purchased an 32GB SATA SSD instead of goofing around with m.2 and converters and such, however, at this point I figured it cheaper to cut my losses by buying the m.2 to sata adapter than still buying another drive.  Hopefully this adapter arrives and everything works (and I don't find my issues were caused by a bad SSD module).

 

As far as testing on the ESPRESSOBin:

 

Unfortunately the first one I ordered is already in production -- One of the reasons I wanted the SSD was to provide a little bit of high speed swap without chancing killing off an SDcard.  The board its self runs like a champ and it is easily my favorite headless board I own.   While some of their documentation is lacking. it does seem like they actually spent some time thinking about the board and creating docs which actually teach(force) you to compile your own kernel and use the USB to serial console and some things other board vendors don't really make you do.  I have enjoyed the experience of setting it up, learning the in and outs and working with it in general, so far (other than this issue with m.2).

 

Now, I have another ESPRESSOBin I had ordered, which they said would start shipping 'soon' so as soon as the second one arrives, I will make OMV my first test with it.  Sorry I can't be more helpful right now.

 

Maybe if I can afford some downtime of the appliance its running this weekend I will see if I can test, but I won't make any promises at this time.

 

@tkaiser  thanks again for taking time out to answer my questions as well as all the time and hard work you put in to keep Armbian the awesome distro it is!  

 

Cheers!

Posted

Apologies for posting an almost content-free post, but watching this progress along has me rather excited.

 

The ESPRESSOBin board looks pretty much perfect for building a home gateway router with VPN, and it would be very tempting to replace my current Mac mini server for all media and file serving having had a look at OMV.

Posted

Okay, so I got the m.2 SSD working in an m.2 to SATA adapter through the on-board  SATA.   I have the ESPRESSOBin booting from the SSD at this time.

 

A few thoughts:

- For a novice user of u-boot it was necessary to learn how to manipulate scsi devices in u-boot, once I figured this out things were pretty smooth.

- For some reason the ASM1061 scsi devices and USB scsi devices are  instantiated before the on-board SATA controller, this can make boot time confusing as block devices will be defined in this order and if you boot with a USB disk attached and you don't know about it ahead of time it will effect where your rootfs is located as USB drives will get block device names first. 

- For me I decided to just remove USB devices at boot and used /dev/sdb1 as my rootfs volume, but if I were to forget and reboot with the USB plugged in the kernel will panic on boot because it can't find rootfs where it is expecting it.

 

I ended up with the following to boot:

setenv bootcmd 'scsi scan; scsi dev 0; ext4load scsi 0:1 $kernel_addr $image_name;ext4load scsi 0:1 $fdt_addr $fdt_name;setenv bootargs $console root=/dev/sdb1 rw rootwait; booti $kernel_addr - $fdt_addr'
save
run bootcmd

 

@tkaiser as I now have it booting off SSD and working as needed I will see if I can burn OMV to my SDcard and test booting it here.  Worst case, supposedly per Kickstarter Globalscale has shipped all its 1GB boards out, which should mean my second boards is on its way, so when it arrives, OMV will be my first test with it.

 

Thanks again for all your help and I will follow-up once I have been able to test OMV on the ESPRESSOBin.

 

Cheers!

Posted

I tried the following:

- downloaded http://kaiser-edv.de/tmp/NumpU8/OMV_3_0_72_Espressobin_4.4.52.7z

- unzipped and burned into microSD card using Etcher on linux mint

- sudo sfdisk -l /dev/mmcblk0 shows:

Disk /dev/mmcblk0: 7,4 GiB, 7948206080 bytes, 15523840 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x2b1c1cab

Device         Boot Start     End Sectors  Size Id Type
/dev/mmcblk0p1       2048 3618815 3616768  1,7G 83 Linux

- mount shows:

/dev/mmcblk0p1 on /media/andrius/cc8b4e1a-3743-473d-8711-4176d1ba2858 type ext4 (rw,nosuid,nodev,relatime,uhelper=udisks2)

- I inserted it into the espressobin

- powered espressobin using its power adapter with a barel

- connected espressobin microUSB to the computer USB. No other devices are connected to espressobin, just microUSB and microSD

- after pressing RESET button kermit shows:

Booting Trusted Firmware
BL1: v1.2(release):armada-17.02.0:
BL1: Built : 09:27:33, Apr 24 2NOTICE:  BL2: v1.2(release):armada-17.02.0:
NOTICE:  BL2: Built : 09:27:34, Apr 24 20NOTICE:  BL31: v1.2(release):armada-17.02.0:
NOTICE:  BL31:

U-Boot 2015.01-armada-17.02.0-g48dc978 (Apr 24 2017 - 09:27:28)

I2C:   ready
DRAM:  1 GiB
Board: DB-88F3720-ESPRESSOBin
       CPU    @ 800 [MHz]
       L2     @ 800 [MHz]
       TClock @ 200 [MHz]
       DDR    @ 800 [MHz]
Comphy-0: PEX0          2.5 Gbps  
Comphy-1: USB3          5 Gbps    
Comphy-2: SATA0         5 Gbps    
Now running in RAM - U-Boot at: 3ff2b000
U-Boot DT blob at : 000000003fa18168
MMC:   XENON-SDHCI: 0
SF: Detected W25Q32DW with page size 256 Bytes, erase size 4 KiB, total 4 MiB
PCIE-0: Link down
SCSI:  SATA link 0 timeout.
AHCI 0001.0300 32 slots 1 ports 6 Gbps 0x1 impl SATA mode
flags: ncq led only pmp fbss pio slum part sxs 
Net:   neta0
Hit any key to stop autoboot:  0 
switch to partitions #0, OK
mmc0 is current device
** Unrecognized filesystem type **
** Unrecognized filesystem type **
Bad Linux ARM64 Image magic!
Marvell>>

Am I doing something wrong?

Posted
  On 5/9/2017 at 8:18 PM, Andrius said:

Am I doing something wrong?

Expand  

 

Most probably not. This OMV image is not tested at all and I've not even the device. It was just a try to rely on @lanefu's contributions and let another image variant being created automatically (got maybe too jaunty since it worked perfectly with the last ~5 devices added to the build system -- finishing support without having them around yet). I'll delete the image in 2 days waiting for some more feedback in the meantime.

Posted
  On 5/9/2017 at 8:43 PM, tkaiser said:

I'll delete the image in 2 days waiting for some more feedback in the meantime.

Expand  

 

Hopefully I can get a chance to test it before then, works been ridiculously crazy and been also working on the H3Droid project so just haven't had time yet.  I do fully intend to test though and if needed I will switch out the kernel also for the one I compiled and see if this allows it to run.

 

Just don't go deleting it before I get time to download it ;p

 

Cheers!

Posted

@tkaiser

 

Hey things for reminding me.... I just added 12 more ethernet runs in my house, so I'll have the plumbing to properly do bench testing and hacking on the espresso bin soon.   I should be able to start hacking on it next week or sooner.   

 

 

@TheLinuxBug

OH! you actually booted from the SD's u-boot instead of the onboard u-boot!   i'm shocked.    I just had u-boot building as a placebo.   Try booting without the sd-card plugged in.

 

then follow the u-boot steps here and see if that gets you a little closer. Sorry I can't take a deeper look

 

https://gist.github.com/lanefu/d7c0349a3efd63570798462a45fe0e34

 

 

Posted
  On 5/10/2017 at 1:02 AM, lanefu said:

OH! you actually booted from the SD's u-boot instead of the onboard u-boot!   i'm shocked.    I just had u-boot building as a placebo.   Try booting without the sd-card plugged in.

 

then follow the u-boot steps here and see if that gets you a little closer. Sorry I can't take a deeper look

 

https://gist.github.com/lanefu/d7c0349a3efd63570798462a45fe0e34

Expand  

 

:unsure:

 

I honestly have not a clue what you are talking about.  I have had no issues getting my ESPRESSOBin up and working, and I am using the u-boot on the built-on SPI NOR on the ESPRESSOBin, not booting u-boot from SDcard (although... you can...).  I have a feeling this reply wasn't meant for me cause nothing you provided was useful to me at all.  In fact I was offering to test things because others had not had success and mentioned I have already compiled my own kernel and will test with it if the one available with OMV doesn't work.

 

Anyhow...  maybe you can remember who that was for and actually tag them instead...

 

Cheers!

Posted
  On 5/10/2017 at 5:10 AM, TheLinuxBug said:
 

:unsure:

 

 I have a feeling this reply wasn't meant for me cause nothing you provided was useful to me at all.  

 

Sorry I was in a hurry and misunserstood the context of an adjacent post. I misread the uboot build version. i thought it said 2017 instead 2015.

 

Sent from my SM-G920V using Tapatalk

 

 

 

Posted

It seems Lane's reply was directed at me. Thank you.

After reading this thread I concluded Thomas' OMV image won't boot on espressobin.

Do you know any other armbian images for espressobin?

Lane's howto refers to some expertise I do not possess :-)

Posted
  On 5/10/2017 at 10:52 AM, Andrius said:

 

It seems Lane's reply was directed at me. Thank you.

After reading this thread I concluded Thomas' OMV image won't boot on espressobin.

 

Expand  

 

Must have been for you I guess.

 

Have you tried mounting the image as a loop device and changing the kernel to one you compiled?  Globalscale includes all the directions needed to build your own kernel on their page.. here you should be able to compile your own kernel, replace it on the .img and burn it again.  Then it should boot for you, it seems the kernel currently included on the image isn't for the board or has some issue loading, replacing it should allow you to boot and get into the OS (I am guessing here, I will have to test this my self tonight).

 

In case your not sure you should be able to fdisk -l omv.img find the partition table and calculate the offset by 512*start of partition=offset then losetup -o <offset> /dev/loop0 <file>

 

Once a loop device is created you can then mount /dev/loop0 and once mounted you should be able to change the Image under /boot.

 

Hopefully I will get an opportunity to do this tonight if  @tkaiser has his server back online.

 

Cheers!

Posted
  Quote

Have you tried mounting the image as a loop device and changing the kernel to one you compiled?

Expand  

No. Will try if time allows. Won't the resulting image loose the optimizedness of armbian?

Posted

Okay, FINALLY I have had time to test this...

 

@tkaiser @Andrius @lanefu

 

The issues are as follows:

1. You are lacking the dtb file in /boot (armada-3720-community.dtb)

2. Once the kernel boots it disables UART which is a huge pain

3. Requires manual changes to uboot config at startup (you need serial connection at boot time)


To get it to boot:

1. Copied the armada-3720-community.dtb into /boot on the SDcard

2. stopped uboot during start up and entered the following:

Marvell>> setenv image_name boot/Image
Marvell>> setenv fdt_name boot/armada-3720-community.dtb
Marvell>> setenv bootmmc 'mmc dev 0; ext4load mmc 0:1 $kernel_addr $image_name;ext4load mmc 0:1 $fdt_addr $fdt_name;setenv bootargs $console root=/dev/mmcblk0p1 rw rootwait; booti $kernel_addr - $fdt_addr'
Marvell>> save
Saving Environment to SPI Flash...
SF: Detected W25Q32DW with page size 256 Bytes, erase size 4 KiB, total 4 MiB
Erasing SPI flash...Writing to SPI flash...done
Marvell>> run bootmmc


While the UART serial console no longer works, the board is online:

  Reveal hidden contents

 

  Reveal hidden contents

 

  Reveal hidden contents
  Reveal hidden contents

 

Sorry for such a long delay!  I will see if I can let this run for a bit and do some performance testing to see the difference between the Armbian kernel and the one I compiled my self.

 

Have a great weekend all!

 

Shameless plug: If you get bored and have Allwinner H3 device, check out H3droid - an Android image developed specifically to work on Allwinner H3 devices!

 

Cheers!

Posted

Some quick tests of a 2.5" 1TB SATA drive via USB 3.0 enclosure attached to the USB 3.0 port on the ESPRESSOBin:

  Reveal hidden contents
  Reveal hidden contents

 

Iperf tests between my 2 ESPRESSOBins, both linked at gigabit:


Board Running Armbian/OMV:

  Reveal hidden contents


Board Running Ubuntu 16.04LTS image with custom compiled kernel:

  Reveal hidden contents

 

There are probably some better tools to use, but at least this will give an idea.  Looks like the drivers for the NIC in my customer kernel may be a bit faster?

 

Shameless plug: If you get bored and have Allwinner H3 device, check out H3droid - an Android image developed specifically to work on Allwinner H3 devices!

 

Cheers!

Posted

So I did some more investigating about the boot issue....

 

What is interesting is after further review the dtb may actually already be there, and the boot.cmd which is in /boot references it as well it seems.   However, the issue is the SPI uboot which is preferred by default does not read this boot.cmd file so is confused with how to locate the needed files and to boot, it required entering the variables manually.

 

I am guessing that uboot may also be included directly on the SDcard with this image, however, there is probably a jumper setting needed to get it to boot the SDcard directly instead of the SPI on board which would likely correct the issue seen with booting the image without the need for manual interaction with uboot.


boot.cmd file located in /boot

  Reveal hidden contents

 

I also noticed in the list of commands and arguments i used to boot that I didn't load the initrd which is shown in the boot.cmd file, I am curious how this might effect things or what might be missing.  May have to see if there is any difference when adding the options to the boot command.

 

To Note: If I recall correctly, and I will look later, I think there is a set of jumpers which you can switch to change which device is booted from... I imagine for best use of the image that these jumpers need to be set for booting from the SDcard. "Boot source selection jumpers (SPI/SATA/UART/Auto)"

 

Cheers!

Posted

So it appears when utilizing the boot information from the boot.cmd I mentioned in my last post you get a completely different experience on UART as it stays up.  This time it looks much more like a normal Armbian boot experience.

 

I found however that I had to set the initrd slightly different as the one mentioned looks incorrect..

  Reveal hidden contents

 

As you can see with initrd loading and correct environment variables set it even loads the serial terminal and leaves it active :D YAY!

 

So from what I understand if I could find the correct jumper settings to have it boot SDcard it would probably work out of the box from the SDcard, without it you have to get a bit creative and setup uboot your self like above.

 

To clarify I had been testing back and forth between the custom kernel and the 4.4.52-devel-17.04.2-mvebu64 kernel provided on the Armbian image, this time I actually fully booted the Armbian kernel and image and it actually has provided access now to cpufreq and a few other things I wasn't seeing on my custom kernel and is exposing 1Ghz CPU speed where the custom 4.4.8 kernel I made had a hard max of 800Mhz, so this should be an improvement:

  Reveal hidden contents

 

Will have to retest with iperf later to see if the network performance differs any.

 

Update: from my updated iperf tests it looks like the 4.4.8 kernel actually out performs the 4.4.52 Armbian kernel, not by a huge amount but 4.4.52 seems to average around 92.3 MBytes/sec while on 4.4.8 it averages over 110Mbytes/sec.
 

  Reveal hidden contents

 

Hopefully this helps!

 

Cheers!

Posted

Hey @TheLinuxBug I'm glad you got to do some testing.  Thanks for sharing your results.    

 

 Currently the u-boot build on armbian is mostly a placebo.     I dunno if you caught my Gist espressobin_armbian_wip_howto.md  It covered the device tree and how to poke at the on-board u-boot, as well as a few other quirks.

 

How did you get your custom kernel to work with the CPU throttling?  What repo and branch did you use?

Posted
  On 6/10/2017 at 2:49 AM, TheLinuxBug said:

Looks like the drivers for the NIC in my customer kernel may be a bit faster?

Expand  

 

No, this is just 'testing gone wrong'. Never trust in iperf results unless you benchmark the benchmark in parallel. Iperf is CPU bound, your test setup is already insufficient (you need to test against another host that is know to exceed 940 MBits/sec for sure) and what you ran into is most probably the difference between Debian Jessie (GCC 4.9) and Ubuntu Xenial (GCC 5.4): https://forum.armbian.com/index.php?/topic/1917-armbian-running-on-pine64-and-other-a64h5-devices/&do=findComment&comment=14673

 

 

TL;DR: iperf sucks on slow devices, test setups have to be chosen carefully, you need to benchmark every benchmark you run.

Posted
  On 6/10/2017 at 2:49 AM, TheLinuxBug said:

Some quick tests of a 2.5" 1TB SATA drive

Expand  

 

Unfortunately absolutely useless since 2.5" disks are way too slow, there's ZBR affecting sequential performance -- see here https://forum.armbian.com/index.php?/topic/1925-some-storage-benchmarks-on-sbcs/&do=findComment&comment=15319 for details -- so you get different numbers based on how you use the disk and then with HDDs also fragmentation might become an issue.

 

For storage performance measurements you need very fast SSDs (sequential performance known to exceed the interface's maximum!) or you accept that the test is more or less useless since the disk bottlenecks and not the board's storage implementation.

 

Posted
  On 6/11/2017 at 8:54 AM, tkaiser said:

Unfortunately absolutely useless

Expand  

My only intention was to show it was faster than a USB 2.0 drive, which in this case I believe it does.  Also, with network testing, obviously it gets close enough to the theoretical max that these numbers are at least useful to show that you can get full gigabit out of the board.  Of course there are better testing scenarios and tools, and my goal originally on IRC was to discuss what testing you wanted but you have been quite busy with real life so never really got to have that conversation with you, as such I just did some generic tests to show it works and to set  some general expectations.

 

If you would prefer some more specific tests, please feel free to document the tools and tests you would like me to perform and I would be happy to give it another go!

 

Cheers!

Posted
  On 6/11/2017 at 3:12 AM, lanefu said:

I dunno if you caught my Gist espressobin_armbian_wip_howto.md  It covered the device tree and how to poke at the on-board u-boot, as well as a few other quirks.

Expand  

 

Ahh!  it appears I completely missed this, which is why when I started things were a bit confusing.  That is okay though, I enjoyed the challenge of investigating and getting it working my self anyhow.  You learn more that way!  Thanks for taking the time to put together the image, I will continue to test it on this board until I need it for production and try to provide some more feedback as possible.

 

I do like the ability to get 1Ghz out of the chip, it actually provides a slightly more snappy feeling when performing tasks on the board than on the OEM kernel I compiled from 4.4.8 which is stuck at 800mhz.

 

Shameless plug: If you get bored and have Allwinner H3 device, check out H3droid - an Android image developed specifically to work on Allwinner H3 devices!

 

Cheers!

Posted
  On 6/11/2017 at 3:17 PM, TheLinuxBug said:

My only intention was to show it was faster than a USB 2.0 drive, which in this case I believe it does

Expand  

 

Ok, understood now. But in case you've a fast SSD and also a quality USB to SATA bridge (ASM1153E, JMS567 or JMS578) then it would be great if you could repeat the test with such a SSD and this time with the first iozone call from https://forum.armbian.com/index.php?/topic/1925-some-storage-benchmarks-on-sbcs/&do=findComment&comment=15265

 

 

Wrt network tests I'm still interested in the only real question: Is SoC and Topaz switch interconnected with 2.5GBE or just 1 GbE? It's so easy to test (you need 3 hosts and care about IRQ affinity) but unfortunately no one cares: http://espressobin.net/forums/topic/performance-router/#post-360

Posted

ooo i have the technology to do the bandwidth testing... etc.. i gotta get a new image building host up and then ill get some data.

Sent from my SM-G920V using Tapatalk

Posted

ps i have a long term fantasy of trying to port vyos to armbian now that they're moving to jessie

Sent from my SM-G920V using Tapatalk

Posted

Okay you guys inspired me enough to do some tinkering with my armbian build container.   Looks like there's newer stable kernel from Marvell.   linux-4.4.52-armada-17.06

 

I tried building with the linux-4.4.52-armada-17.06, but  my current deb-pkg patch no longer seems to do the right thing and install an uncompressed image..    I probably need to redo my patch anyway.

 

so uhm todo:

 

  • switch stable to linux-4.4.52-armada-17.06
  • improve deb-pkg script to cleanly install image in /boot/Image
  • switch away from u-boot rc build.
  • explore how to actually use our u-boot build instead of on-board
  • make frequency scaling work
  • Tinker with mainline builds since espressobin support was supposed to be merged into 4.11
  • Update Armbian docs on board

 

Posted

I would really love to see results from the simple '3 hosts needed' iperf3 benchmark above since I really can't believe no one is interested in maximum GbE throughput on this board so far (do we get 1GbE max throughput between SoC and the outside or 2.5GbE?). C'mon it takes just a minute to set this up, you don't even need a switch since that's part of the board and the test setup! :)

 

And another important information missing: How does memory performance looks like. It's just another 5 minutes max and

git clone https://github.com/ssvb/tinymembench
cd tinymembench
make
./tinymembench

Results will then look like this: https://pastebin.com/raw/LtjEFbdn (Clearfog Pro with 1 GB default DRAM also using default settings)

Posted

having some problems now where all interfaces are taking the same MAC..... i *know* had this working a while back.. even being weird on my build now..... debugging

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines