Home Forums MOCHAbin Forum Software discussion What OS Will Work?

Tagged: 

Viewing 15 posts - 1 through 15 (of 15 total)
  • Author
    Posts
  • #50305
    bgv2022
    Participant

    Wanted to find out about a list of software that should work out of the box.

    OpenWRT?
    PFSense?
    Untangle?

    Already know Ubuntu/Linux bases OS should work fine.

    How to go about installing a different OS without a display?

    #50308
    tompusateri
    Participant

    You will probably have to wait until those operating systems announce support for the board. It will take some time.

    #50329
    tompusateri
    Participant

    A snapshot for OpenWRT is available here:

    https://firmware-selector.openwrt.org/?version=SNAPSHOT&target=mvebu%2Fcortexa72&id=globalscale_mochabin

    I’m going to try it and will follow up to see if it will boot off a USB stick.

    #50330
    bgv2022
    Participant

    Thanks. I’ve been swamped and haven’t been able to test much.

    Is the bios default to boot off sata or usb?

    #50331
    tompusateri
    Participant

    It defaults to boot off internal 16GB MMC memory which is pre-installed with Ubuntu 18.04 LTS. I have been trying to boot FreeBSD, OpenBSD, and NetBSD on a USB Stick with EFI but it crashes every time. I have seen some reports that this older version of U-boot that is installed had trouble with EFI booting. There is a usbboot command that does not expect EFI and a bootefi command.

    #50332
    bgv2022
    Participant

    There a way to get into the bios?

    the WIKI page is very vague and lacks a lot of details.

    #50335
    tompusateri
    Participant

    Yes, connect a micro-USB to USB-A cable to the console port next to the power connector.

    BootROM – 2.03
    Starting CP-0 IOROM 1.07
    Booting from SPI NOR flash 1 (0x32)
    Found valid image at boot postion 0x000
    lmv_ddr: mv_ddr-devel-18.12.0-g2e20f5d (Dec 30 2021 – 16:08:48)
    mv_ddr: scrubbing memory…
    mv_ddr: completed successfully
    BL2: Initiating SCP_BL2 transfer to SCP

    U-Boot 2018.03-devel-18.12.3-ga49bd540df (Dec 30 2021 – 16:06:18 +0800)

    Model: Marvell Armada 7040 Mochabin development board
    SoC: Armada7040-B0; AP806-B0; CP115-A0
    Clock: CPU 1400 [MHz]
    DDR 800 [MHz]
    FABRIC 800 [MHz]
    MSS 200 [MHz]
    LLC Enabled (Exclusive Mode)
    DRAM: 8 GiB
    Bus spi@700680 CS0 configured for direct access 00000000f9000000:0x1000000
    SF: Detected w25q32bv with page size 256 Bytes, erase size 4 KiB, total 4 MiB
    EEPROM configuration pattern not detected.
    Comphy chip #0:
    Comphy-0: SGMII1 3.125 Gbps
    Comphy-1: USB3_HOST0
    Comphy-2: SATA0
    Comphy-3: SATA1
    Comphy-4: SFI0 10.3125 Gbps
    Comphy-5: PEX2
    UTMI PHY 0 initialized to USB Host0
    UTMI PHY 1 initialized to USB Host1
    SATA link 0 timeout.
    SATA link 1 timeout.
    AHCI 0001.0000 32 slots 2 ports 6 Gbps 0x3 impl SATA mode
    flags: 64bit ncq led only pmp fbss pio slum part sxs
    PCIE-0: Link up (Gen1-x1, Bus0)
    MMC: sdhci@6e0000: 0
    Loading Environment from SPI Flash… OK
    Model: Marvell Armada 7040 Mochabin development board
    Net: eth0: mvpp2-0 [PRIME], eth1: mvpp2-1, eth2: mvpp2-2
    Hit any key to stop autoboot: 0
    Marvell>>
    Marvell>> printenv
    arch=arm
    baudrate=115200
    board=mvebu_armada-8k
    board_name=mvebu_armada-8k
    bootcmd=ev 0; ext4load mmc 0:1 $kernel_addr_r $image_name; ext4load mmc 0:1 $fdt_addr_r $fdt_name; setenv bootargs $console root=PARTUUID=89708921-01 rw rootwait net.ifnames=0 biosdevname=0; booti $kernel_addr_r – $fdt_addr_r
    bootdelay=2
    console=console=ttyS0,115200 earlycon=uart8250,mmio32,0xf0512000
    cpu=armv8
    eth1addr=00:51:82:11:22:01
    eth2addr=00:51:82:11:22:02
    ethact=mvpp2-0
    ethaddr=00:51:82:11:22:00
    ethprime=eth0
    extra_params=pci=pcie_bus_safe
    fdt_addr_r=0x6f00000
    fdt_high=0xffffffffffffffff
    fdt_name=boot/armada-7040-mochabin.dtb
    fdtcontroladdr=7f625230
    gatewayip=10.4.50.254
    get_images=tftpboot $kernel_addr_r $image_name; tftpboot $fdt_addr_r $fdt_name; run get_ramfs
    get_ramfs=if test “${ramfs_name}” != “-“; then setenv ramdisk_addr_r 0x8000000; tftpboot $ramdisk_addr_r $ramfs_name; else setenv ramdisk_addr_r -;fi
    hostname=marvell
    image_name=boot/Image
    initrd_addr=0xa00000
    initrd_size=0x2000000
    ipaddr=0.0.0.0
    kernel_addr_r=0x7000000
    loadaddr=0x6000000
    netdev=eth0
    netmask=255.255.255.0
    ramdisk_addr_r=0x8000000
    ramfs_name=-
    root=root=/dev/nfs rw
    rootpath=/srv/nfs/
    serverip=0.0.0.0
    set_bootargs=setenv bootargs $console $root ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netdev:none nfsroot=$serverip:$rootpath,tcp,v3 $extra_params $cpuidle
    soc=mvebu
    stderr=serial@512000
    stdin=serial@512000
    stdout=serial@512000
    vendor=Marvell

    Environment size: 1511/65532 bytes

    Marvell>> ?
    ? – alias for ‘help’
    avs – Set/Get Adaptive Voltage Scaling (AVS) value

    base – print or set address offset
    bdinfo – print Board Info structure
    blkcache- block cache diagnostics and control
    boot – boot default, i.e., run ‘bootcmd’
    bootd – boot default, i.e., run ‘bootcmd’
    bootefi – Boots an EFI payload from memory
    bootelf – Boot from an ELF image in memory
    booti – boot arm64 Linux Image image from memory
    bootm – boot application image from memory
    bootp – boot image via network using BOOTP/TFTP protocol
    bootvx – Boot vxWorks from an ELF image
    bubt – Burn a u-boot image to flash
    cmp – memory compare
    coninfo – print console devices and information
    cp – memory copy
    crc32 – checksum calculation
    dcache – enable or disable data cache
    dhcp – boot image via network using DHCP/TFTP protocol
    dm – Driver model low level access
    echo – echo args to console
    editenv – edit environment variable
    env – environment handling commands
    exit – exit script
    ext2load- load binary file from a Ext2 filesystem
    ext2ls – list files in a directory (default /)
    ext4load- load binary file from a Ext4 filesystem
    ext4ls – list files in a directory (default /)
    ext4size- determine a file’s size
    ext4write- create a file in the root directory
    false – do nothing, unsuccessfully
    fatinfo – print information about filesystem
    fatload – load binary file from a dos filesystem
    fatls – list files in a directory (default /)
    fatsize – determine a file’s size
    fdt – flattened device tree utility commands
    fstype – Look up a filesystem type
    go – start application at address ‘addr’
    gpio – query and control gpio pins
    gzwrite – unzip and write memory to block device
    help – print command description/usage
    hw_info – hw_info

    i2c – I2C sub-system
    icache – enable or disable instruction cache
    iminfo – print header information for application image
    imxtract- extract a part of a multi-image
    ir – ir – Reading and changing internal register values.

    itest – return true/false on integer compare
    led – manage LEDs
    load – load binary file from a filesystem
    loadb – load binary file over serial line (kermit mode)
    loads – load S-Record file over serial line
    loadx – load binary file over serial line (xmodem mode)
    loady – load binary file over serial line (ymodem mode)
    loop – infinite loop on address range
    ls – list files in a directory (default /)
    lzmadec – lzma uncompress a memory region
    map – Display address decode windows

    md – memory display
    mdio – MDIO utility commands
    mii – MII utility commands
    mm – memory modify (auto-incrementing address)
    mmc – MMC sub system
    mmcinfo – display MMC info
    mw – memory write (fill)
    nfs – boot image via network using NFS protocol
    nm – memory modify (constant address)
    part – disk partition related commands
    pci – list and access PCI Configuration Space
    ping – send ICMP ECHO_REQUEST to network host
    printenv- print environment variables
    pxe – commands to get and boot from pxe files
    regulator- uclass operations
    reset – Perform RESET of the CPU
    run – run commands in an environment variable
    rx_training- rx_training <cp id> <comphy id>

    save – save file to a filesystem
    saveenv – save environment variables to persistent storage
    scsi – SCSI sub-system
    scsiboot- boot from SCSI device
    setenv – set environment variables
    setexpr – set environment variable as the result of eval expression
    sf – SPI flash sub-system
    showvar – print local hushshell variables
    size – determine a file’s size
    sleep – delay execution for some time
    source – run script from memory
    sspi – SPI utility command
    switch – Switch Access commands
    sysboot – command to get and boot from syslinux files
    test – minimal test like /bin/sh
    tftpboot- boot image via network using TFTP protocol
    time – run commands and summarize execution time
    true – do nothing, successfully
    tsen – tsen – Display the SoC temperature.

    unzip – unzip a memory region
    usb – USB sub-system
    usbboot – boot from USB device
    version – print monitor, compiler and linker version
    Marvell>>

    #50352
    tompusateri
    Participant

    So far we have Arch Linux, OpenWRT, and the default Ubuntu 18.04 LTS working.

    #50362
    bgv2022
    Participant

    Able to provide instructions on how to get OpenWRT to work?

    #50367
    Bryan
    Keymaster

    we will be supporting OpenWRT and Ubuntu from the get go with Archlinux ARM and other following after

    Bryan

    #50371
    tompusateri
    Participant

    For OpenWRT, download the sd-card image from here:

    https://openwrt.org/toh/hwdata/globalscale/globalscale_mochabin

    I think all I did was copy onto a USB thumb drive and then execute these commands at the u-boot prompt. I may have had to rename something but I don’t recall.

    usb start
    ext4load usb 0:1 ${kernel_addr_r} Image
    ext4load usb 0:1 ${fdt_addr_r} armada-7040-mochabin.dtb
    setenv bootargs $console root=PARTUUID=a1ce8a7c-02 rw rootwait
    booti ${kernel_addr_r} – ${fdt_addr_r}

    #50378
    bgv2022
    Participant

    when will instructions on how to “support” OpenWRT be provided?

    #50379
    bgv2022
    Participant

    Helpful but important to provide details how to get own UUID. Your specific UUID doesn’t work except for your own device.

    #50380
    bgv2022
    Participant

    When will better documentation be provided and download links for the compatible images? Seems very premature to release the device with lacking details.

    #50384
    tompusateri
    Participant

    I think to find your UUID of the correct partition, use

    usb part 0

    after you run

    usb start

Viewing 15 posts - 1 through 15 (of 15 total)
  • You must be logged in to reply to this topic.
Signup to our newsletter

Technical specification tables can not be displayed on mobile. Please view on desktop