The pfSense Store

Author Topic: ESPRESSOBin  (Read 2749 times)

0 Members and 1 Guest are viewing this topic.

Offline jammcla

  • Jr. Member
  • **
  • Posts: 50
  • Karma: +4/-0
    • View Profile
ESPRESSOBin
« on: October 22, 2016, 11:57:59 am »
Saw this today:

https://www.kickstarter.com/projects/874883570/marvell-espressobin-board

I wonder if it would support pfsense?

Offline W4RH34D

  • Full Member
  • ***
  • Posts: 264
  • Karma: +29/-5
  • Did you check your cables?
    • View Profile
    • kelcocomputers
Re: ESPRESSOBin
« Reply #1 on: October 22, 2016, 01:15:48 pm »
Why arm?  Why not a purpose built chip specifically for networking?
Did you really check your cables?

Offline jahonix

  • Hero Member
  • *****
  • Posts: 2433
  • Karma: +145/-14
  • volunteer since 2006
    • View Profile
Re: ESPRESSOBin
« Reply #2 on: October 22, 2016, 02:59:10 pm »
I wonder if it would support pfsense?
If you read the comments you'll find that jwt (Hacker S. Thompson) already ordered a/some samples. That's the best way to get support for this device from pfSense if possible at all.
Chris

The issue with IPv6 jokes is that almost no one understands them and no one is using them yet.

Offline buffee

  • Newbie
  • *
  • Posts: 4
  • Karma: +0/-0
    • View Profile
Re: ESPRESSOBin
« Reply #3 on: March 12, 2017, 11:54:32 am »
Please make an official tread for espressobin  ;D

Offline Wisiwyg

  • Jr. Member
  • **
  • Posts: 26
  • Karma: +0/-0
    • View Profile
Re: ESPRESSOBin
« Reply #4 on: June 08, 2017, 09:10:16 am »
Please make an official tread for espressobin  ;D

Second that!

Board Specs

SoC                                           Marvell Armada 3700LP (88F3720) dual core ARM Cortex A53 processor up to 1.2GHz
System Memory                   1 or 2 GB DDR3
Storage                                   1x SATA interface
                                               1x micro SD card slot with footprint for an optional 4GB EMMC
Network Connectivity           1x Topaz Networking Switch
                                               2x GbE Ethernet LAN
                                               1x Ethernet WAN
                                               1x MiniPCIe slot for Wireless/BLE periphereals
USB                                           1x USB 3.0
                                               1x USB 2.0
                                               1x micro USB port
Expansion                           2x 46-pin GPIO headers for accessories and shields with I2C, GPIOs, PWM, UART, SPI, MMC, etc.
Misc                                         Reset button, JTAG interface
Power supply                           12V DC jack or 5V via micro USB port
Power consumption           Less than 1W thermal dissipation at 1 GHz
« Last Edit: June 08, 2017, 09:19:31 am by Wisiwyg »
Overkill - i5 quad, 3.1ghz, 8gb, 240gb SSD, dual & single Intel NICs

Offline Trblz

  • Newbie
  • *
  • Posts: 1
  • Karma: +0/-0
    • View Profile
Re: ESPRESSOBin
« Reply #5 on: June 11, 2017, 02:05:02 pm »
 ;D make that 3!

It seems like people are getting their EspressoBIN's delivered now so I hope that the SoC forum will become more lively now.

Official
tech specs: http://espressobin.net/tech-spec/
wiki: http://wiki.espressobin.net/tiki-index.php
forum: http://espressobin.net/forums/  (not http only  :-X)


cheers, Hans
cheers Hans

----
EspressoBIN Armada 3700

Offline sYakko

  • Newbie
  • *
  • Posts: 1
  • Karma: +0/-0
    • View Profile
Re: ESPRESSOBin
« Reply #6 on: June 21, 2017, 08:02:47 am »
make that 4!

Is there any daily dev source available we can test? Reveived the 2GB espressobin yesterday, so cannot wait to start and contribute.  8)

Offline ivor

  • Administrator
  • Hero Member
  • *****
  • Posts: 609
  • Karma: +135/-125
    • View Profile
    • Netgate
Re: ESPRESSOBin
« Reply #7 on: June 21, 2017, 08:24:41 am »
There's no need for ESPRESSPBin thread as we are not working on it.
Need help fast? Commercial support: https://www.netgate.com/support/

Offline johnkeates

  • Hero Member
  • *****
  • Posts: 633
  • Karma: +50/-1
    • View Profile
Re: ESPRESSOBin
« Reply #8 on: June 21, 2017, 10:15:26 am »
If you want to support that hardware as a community, you should get FreeBSD 10 and/or FreeBSD 11 working on it first. If you have a fully working board on FreeBSD, adding support for pfSense should be possible.

Offline ivor

  • Administrator
  • Hero Member
  • *****
  • Posts: 609
  • Karma: +135/-125
    • View Profile
    • Netgate
Re: ESPRESSOBin
« Reply #9 on: June 21, 2017, 10:23:33 am »
If you want to support that hardware as a community, you should get FreeBSD 10 and/or FreeBSD 11 working on it first. If you have a fully working board on FreeBSD, adding support for pfSense should be possible.

Yes, that's the right way to do it. We are currently working on a new ARM product https://www.netgate.com/blog/lord-vader-your-firewall-is-ready.html
Need help fast? Commercial support: https://www.netgate.com/support/

Offline johnkeates

  • Hero Member
  • *****
  • Posts: 633
  • Karma: +50/-1
    • View Profile
Re: ESPRESSOBin
« Reply #10 on: June 21, 2017, 10:47:02 am »
I've also investigated some other boards this way, because I too enjoy diversity for the software I use. Most of the time you can get it running fairly easily once FreeBSD up and running, with some hacks to make the pfSense-specific parts happy. After that, it just becomes testing and fixing until all the features are working well.

A really nice bonus is that there is at least some ARM support for pfSense, so we already know that it can actually run. There is a lot of ARM support for FreeBSD as well, so we know that FreeBSD can most likely be made to boot as well. All of this makes porting much better than it used to be.

A somewhat annoying downside to most ARM boards is that you often don't get driver code out in the open, there is a rather nasty requirements of a ton of firmware blobs and sometimes even kernel blobs to use all devices, and once you start using those you have to dig much deeper to integrate it into FreeBSD and pfSense. Take the switch chip for example, you'll probably need to reverse engineer that before you can start using it, unless some driver code is available. Next step would be either hard-configuring the switch chip to just present the ports as separate interfaces, but you'd lose VLAN support. You could alternatively make a switch package for pfSense to 'configure' the switch, but you'd have to not only implement switch controls as a userland binary, but a complete pfSense framework too, or you'd need to do some magic to have your switch setup reflect the results as 'interfaces' so it can be used, or as VLAN interfaces... oh well, lots of stuff to do.

This is just an illustration of what might be involved just to get some packet forwarding working, and it might be much simpler or much harder. Simply 'adding' support isn't the way things work in hardwareland, sadly. On top of that, not all networking hardware is created equally, so if there is some sort of issue with the performance (regarding the switch chip or SoC-Chip interconnect) it may not even turn out to be worth the hassle.

A lot of the cheaper ARM and MIPS boards claiming high throughput often rely on a hardware or microcode implemented NAT processor, and it them only works as long as you don't actually need to process any packets. Ironically, if you aren't going to process your packets, you might as well not use pfSense... so porting it, while working, won't give you an actual return on all of the hard work.

In the case of this board, it really depends on the following:

- Can we get AES acceleration to work, preferably via cryptodev
- Can we get ethernet to work (at least better than Realtek, preferably as good as Intel)

If either of them are a nope, the board isn't very useful.

Edit:

A small amount of digging later:

- The CPU core is supportable, but currently you can't easily boot a BSD kernel from public sources yet as far as I can find
- The architecture can be made to work, but Marvel only publicly pushes 38xx ARMADA's with BSD support, no reference on the 37xx during a quick google?
- The ARMADA 3xxx has linux support but since it's still being patched into the kernel over the last 6 months, its not exactly mature
- There are other Marvell SoC references in the FreeBSD tracker, but it still looks like an ongoing effort over the past 2 years, not exactly mature either

So while this indicates that it can probably be made to work (it uses U-Boot by default? -- freeBSD can boot via U-boot), there would still be quite some work to be done. Other Marvell ARM SoCs have only been listed as 'unknown support' on the FreeBSD Wiki. The fact there is no other easily accessible docs on those Marvell SoCs working with a somewhat official FreeBSD distro smells like NDA to me, as in Marvell not giving out docs to anyone. Commercial investment seems to be the only way to get a working Marvell SoC.

There is in-tree BSD code for the 38xx ARMADA but that seems like a pure Netgate effort for the R-1. https://lists.freebsd.org/pipermail/freebsd-arm/2017-June/016314.html
And that is so fresh and hot-off-the-press that you'd burn your fingers handling that code. OTOH, it might mean that the code would be usable to get extra SoC's that are close to that spec working... so many if's and but's.
« Last Edit: June 21, 2017, 11:09:37 am by johnkeates »

Offline jwt

  • Administrator
  • Sr. Member
  • *****
  • Posts: 344
  • Karma: +101/-31
    • View Profile
Re: ESPRESSOBin
« Reply #11 on: October 14, 2017, 01:28:16 am »
yes, if you look at that posting, you'll see we helped bring the Armada 38x code to FreeBSD.

and (semi-obviously) we have product based on same.

I'll be working on the 3700 soon.

Offline webjester

  • Newbie
  • *
  • Posts: 4
  • Karma: +0/-0
    • View Profile
Re: ESPRESSOBin
« Reply #12 on: December 01, 2017, 10:04:20 am »