Welcome! Log In Create A New Profile

Advanced

Additional Marvell Kirkwood Devices

Posted by rayknight 
Additional Marvell Kirkwood Devices
September 01, 2017 12:50AM
The following Marvell devices can sometimes be found on ebay for reasonable prices and are actually OEMed from GlobalScale Technologies, PogoPlug or Ionics:

  • AppNeta Pathview M20 is actually an OEM GlobalScale SheevaPlug
  • AppNeta Pathview M22 is actually an OEM GlobalScale DreamPlug
  • Smartenit Harmony P2 is actually an OEM Pogoplug Mobile
  • Ihiji Invision INV-APP-500 is actually an OEM Ionics Nimbus which according to https://www.cyrius.com/debian/kirkwood/sheevaplug/plugs/ is compatible with the original SheevaPlug

Some example ebay listings:

http://www.ebay.com/itm/APPNETA-M22-WD-NETWORK-MONITOR-W-PSU-POWER-PLUG-/201937170030?hash=item2f0464ae6e:g:oy8AAOSwPh5ZKO35 -- DreamPlug
http://www.ebay.com/itm/FF3-Appneta-M20-pathview-micro-appliance-/152679879968?hash=item238c6e1520:g:naYAAOSwFV9XxfKm -- SheevaPlug
Re: Additional Marvell Kirkwood Devices
September 01, 2017 01:51AM
Thanks Ray,

Quite interesting finds!

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Additional Marvell Kirkwood Devices
September 04, 2017 02:39AM
having a punt on a couple...... could be stuff to play with over winter
Re: Additional Marvell Kirkwood Devices
September 09, 2017 08:17AM
My parcel has arrived in the post and to say that both devices are the same advertised model. i am surprised at the differences in the two in terms of functionality.

1 - First one unboxed : this showed to have very few external inputs and appears to be powered by 5v
2 - Second one unboxed : this has a plethora of interfaces and devices and appears to be powered by 5v

what surprised me most about these devices is that the appear to also have onboard wifi available. i have confirmed this by taking a quick look inside and there is an onboard wifi chip.

I havent as yet looked at what the hardware is across the devices and will do so when i get the opportunity in due course. but for now I can post a couple of images about the devices and and you will see that although they are sold as the same device... they have visual differences. think Pogoplug Mobile / v4
Re: Additional Marvell Kirkwood Devices
September 09, 2017 02:39PM
been having a look around on the APPNETA website and there is a treasure trove of freely available information for these M22 devices. of particular interest is the following link..

https://docs.appneta.com/appliance-files.html on here we see freely available a script file to reset the device to factory specs..
#!/bin/bash
# Copyright 2011-2015 AppNeta Inc.
# Distributed under the terms of the GNU General Public License v2

################################################################################
# 1. Place this file into the root of an USB memory stick.
#
# 2. Insert memory stick into the Appliance. 
#
# 3. Within 60 seconds this script will be done.
#
# Notes:
# - Once the script is executed, the USB memory stick will be unmounted
# - If this script does not exist, the memory stick will be mounted on '/mnt/usb'
# 
################################################################################

function update_usbconfig()
{
    # Update /opt/scripts/usbconfig.sh
    if [ -e ma-release ]; then
        build=`grep Build ma-release| awk '{print $2}'`
    fi
    if [ -e /opt/pathview/packages/general ]; then
        general_pkg_version=`cat /opt/pathview/packages/general| awk -F. '{print $4}'`
    fi
    if [ -e /opt/scripts/usbconfig.sh ]; then
        target_sum=`sum /opt/scripts/usbconfig.sh| awk '{print $1}'`
    fi
    if [ -e ./scripts/usbconfig.sh ]; then
        source_sum=`sum ./scripts/usbconfig.sh| awk '{print $1}'`
    fi

    if [[ -n $build && -n $general_pkg_version && $build -gt $general_pkg_version
        && -n $source_sum && $source_sum != $target_sum ]]; then
        cp ./scripts/usbconfig.sh /opt/scripts/usbconfig.sh 2> $LOGFILE
        if [ $? -eq 0 ]; then
            echo -e "\tUpdated /opt/scripts/usbconfig.sh in general package from $general_pkg_version to $build \n" >> $CHANGELOG
            echo "Updated /opt/scripts/usbconfig.sh in general package from $general_pkg_version to $build" >> $LOGFILE
            echo "Restarting execution of autorun.sh script..." >> $LOGFILE
        
            # The /tmp/usb-config-force-run will cause usbconfig.sh to re-execute autorun.sh
            touch /tmp/usb-config-force-run
            /etc/init.d/usbconfig restart
            exit 0
        else
            echo "Could not update /opt/scripts/usbconfig.sh in general package from $general_pkg_version to $build" >> $LOGFILE
        fi
    fi
}

# Get the log file
CHANGELOG="/var/log/pathview/configChange.log"
LOGFILE="autorun.log"
if [ -e .log.txt ]
then
    LOGFILE=`cat .log.txt`
fi

update_usbconfig

# ------------------------------------------------------------------------------
#                        Sequencer Configuration
# ------------------------------------------------------------------------------
# Uncomment the following to copy the USB local 'input/seq.config',  
# 'input/nis.config', and/or 'input/proxy.config' files into the Sequencer 
# configuration directory. See 'input/seq.config' for available options. 
#
# ./scripts/configureSequencer.sh 

# ------------------------------------------------------------------------------
#                        Network Configuration
# ------------------------------------------------------------------------------
# Uncomment the lines below to configure the network interface with a static
# or DHCP IP address.
# * If you are using nis.config to connect to Pathview Cloud then a dns server
#   must be specified.
# * If you configure a wireless interface (m22 or m30 only) then an SSID must be
#   specified (If the wireless connection is secured then a passphrase (psk) must
#   be specified as well if WPA[1/2]-PSK is supported by wireless AP).
# * If wireless part starts like: ssid <ssid> eap ..., then the args must be in
#   the format: ssid <ssid> eap <eap> identity <identity> password <password>
#               pairwise <pairwise cipher> group <group cipher>
#
# Usage: configureNetwork.sh iface <network interface name> dhcp [ssid <ssid> [psk <psk>]]
#        configureNetwork.sh iface <network interface name> ip <ip address> nm <netmask> gw <gateway>
#           [dns <dns 1> <dns 2> ...] [domain <domain name 1> <domain name 2> ...] [ssid <ssid> [psk <psk>]]
#        configureNetwork.sh iface <network interface name> down
#
# If it is an m20 microAppliance then you can run the command without
# "iface <network interface name>", since the m20 has only one
# network interface.
#
# To configure an m20 microAppliance with a static address, uncomment and update
# these two lines:
# ./scripts/configureNetwork.sh ip 192.168.0.5 nm 255.255.255.0 \
#    gw 192.168.0.254 dns 192.168.0.2 192.168.0.3 domain mydomain.com
#
# To configure an m22 microAppliance with a static address, uncomment and update
# these two lines:
# ./scripts/configureNetwork.sh iface eth1 ip 192.168.0.5 nm 255.255.255.0 \
#    gw 192.168.0.254 dns 192.168.0.2 192.168.0.3 domain mydomain.com
#
# To configure an m22 microAppliance with a static address using unsecured wireless,
# uncomment and update these three lines:
# ./scripts/configureNetwork.sh iface mlan0 ip 192.168.0.5 nm 255.255.255.0 \
#    gw 192.168.0.254 dns 192.168.0.2 192.168.0.3 domain mydomain.com \
#    ssid myssid
#
# To configure an m22 microAppliance with a static address using secured 
# wireless, specifically WPA2-Enterprise,
# uncomment and update the following lines:
# ./scripts/configureNetwork.sh iface mlan0 ip 192.168.0.5 nm 255.255.255.0 \
#    gw 192.168.0.254 dns 192.168.0.2 192.168.0.3 domain mydomain.com \
#    ssid myssid eap PEAP identity myidentity password mypassword \
#    pairwise CCMP group CCMP
#
# To configure an m30 microAppliance with a static address, uncomment and update
# these two lines:
# ./scripts/configureNetwork.sh iface eth3 ip 192.168.0.5 nm 255.255.255.0 \
#    gw 192.168.0.254 dns 192.168.0.2 192.168.0.3 domain mydomain.com
#
# To configure an m30 microAppliance with a static address using secured wireless,
# uncomment and update these three lines:
# ./scripts/configureNetwork.sh iface wlan0 ip 192.168.0.5 nm 255.255.255.0 \
#    gw 192.168.0.254 dns 192.168.0.2 192.168.0.3 domain mydomain.com \
#    ssid myssid psk mypassphrase
#
# To configure an m30 microAppliance with a static address using secured 
# wireless, specifically WPA2-Enterprise,
# uncomment and update the following lines:
# ./scripts/configureNetwork.sh iface wlan0 ip 192.168.0.5 nm 255.255.255.0 \
#    gw 192.168.0.254 dns 192.168.0.2 192.168.0.3 domain mydomain.com \
#    ssid myssid eap PEAP identity myidentity password mypassword \
#    pairwise CCMP group CCMP
#
# To configure an r40 rackAppliance with a static address, uncomment and update
# these two lines:
# ./scripts/configureNetwork.sh iface eth5 ip 192.168.0.5 nm 255.255.255.0 \
#    gw 192.168.0.254 dns 192.168.0.2 192.168.0.3 domain mydomain.com
#
# To configure an r400 rackAppliance with a static address, uncomment and update
# these two lines:
# ./scripts/configureNetwork.sh iface eth5 ip 192.168.0.5 nm 255.255.255.0 \
#    gw 192.168.0.254 dns 192.168.0.2 192.168.0.3 domain mydomain.com
#
# To configure an m20 microAppliance with a DHCP address, uncomment the
# following line:
# ./scripts/configureNetwork.sh dhcp
#
# To configure an m22 microAppliance with a DHCP address, uncomment the following
# line:
# ./scripts/configureNetwork.sh iface eth1 dhcp
#
# To configure an m22 microAppliance with a DHCP address using secured wireless,
# uncomment the following line:
# ./scripts/configureNetwork.sh iface mlan0 dhcp ssid myssid psk mypassphrase
#
# To configure an m22 microAppliance with a DHCP address using secured wireless,
# specifically WPA2-Enterprise, uncomment the following lines:
# ./scripts/configureNetwork.sh iface mlan0 dhcp ssid myssid eap PEAP \
#   identity myidentity password mypassword pairwise CCMP group CCMP
#
# To configure an m30 microAppliance with a DHCP address, uncomment the following
# line:
# ./scripts/configureNetwork.sh iface eth2 dhcp
#
# Enable/disable appliance primary-wireless/captive-portal mode.
# Usage: ancillarymodectl.py [-h] [--restart_networking] [--ancl_mode_file FILE]
#        {enable,disable,get} {primary-wireless, captive-portal}
# 
# To configure an m22 microAppliance to enable primary-wireless mode, 
# restarting networking after setting, uncomment the following lines:
# if [ -e /opt/scripts/ancillarymodectl.py ]; then
#   /opt/scripts/ancillarymodectl.py enable primary-wireless --restart_networking 2>&1 | tee -a $LOGFILE
# else
#   echo "Could not find /opt/scripts/ancillarymodectl.py, mode setting failed .."  >> $LOGFILE
# fi
#
# To configure an m22/m30 microAppliance to disable captive-portal mode,
# restarting networking after setting, uncomment the following lines:
# if [ -e /opt/scripts/ancillarymodectl.py ]; then
#   /opt/scripts/ancillarymodectl.py disable captive-portal --restart_networking 2>&1 | tee -a $LOGFILE
# else
#   echo "Could not find /opt/scripts/ancillarymodectl.py, mode setting failed .."  >> $LOGFILE
# fi
#
# To configure an m30 microAppliance with a DHCP address using unsecured wireless,
# uncomment the following line:
# ./scripts/configureNetwork.sh iface wlan0 dhcp ssid myssid
#
# To configure an m30 microAppliance with a DHCP address using secured wireless,
# specifically WPA2-Enterprise, uncomment the following lines:
# ./scripts/configureNetwork.sh iface wlan0 dhcp ssid myssid eap PEAP \
#   identity myidentity password mypassword pairwise CCMP group CCMP
#
# To configure an r40 rackAppliance with a DHCP address, uncomment the following
# line:
# ./scripts/configureNetwork.sh iface eth4 dhcp
#
# To configure an r400 rackAppliance with a DHCP address, uncomment the following
# line:
# ./scripts/configureNetwork.sh iface eth4 dhcp
#
# To disconnect an interface from network, uncomment and edit the following line:
# ./scripts/configureNetwork.sh iface eth1 down
#
# To configure access control for wireless interface (m22 or m30 only), 
# uncomment and edit the following line with enable/disable option.
# ./scripts/configureWirelessAccess.sh disable

# ------------------------------------------------------------------------------
#                        Static Routes
# ------------------------------------------------------------------------------
# Uncomment and edit the following to add a static route.
# Usage: configureRoutes.sh add iface <network interface name> ip <ip address> nm <netmask> gw <gateway>
# If it is an m20 microAppliance then you can run the command with out iface <network interface name>,
# since the m20 has only one network interface
#
# ./scripts/configureRoutes.sh add iface eth5 ip 10.10.10.0 nm 255.255.255.0 \
#    gw 192.168.2.100

# Uncomment and edit the following to delete a static route.
# Usage: configureRoutes.sh del iface <network interface name> ip <ip address> nm <netmask> gw <gateway>
# If it is an m20 microAppliance then you can run the command with out iface <network interface name>,
# since the m20 has only one network interface
#
# ./scripts/configureRoutes.sh del iface eth5 ip 10.10.10.0 nm 255.255.255.0 \
#     gw 192.168.2.100 

# ------------------------------------------------------------------------------
#            Configure Interface for Switch Mirror Port Capturing
# ------------------------------------------------------------------------------
# Uncomment the following to configure the m22 microAppliance to capture packets
# and generate flow based on the output of a switches mirror port.  (The network
# switch must first be configured for mirroring the traffic out of the connected
# port).  Mirror Capture can be configured on port E0 (eth0) of the m22 appliance.
# Note that m30 microAppliances and r40, r400 rackAppliances support capturing from
# a mirror port by just connecting to it to E0 (and not using E1). Additionally,
# any static routes, VLAN tagged, or virtual interfaces on the Mirror Capture
# configured interface will be removed. 
# Not supported for m20 microAppliance.
#
# ./scripts/configureMirrorCapture.sh eth0

# ------------------------------------------------------------------------------
#                        Host Name Configuration
# ------------------------------------------------------------------------------
# Uncomment and edit the following to change the host name.  
# Usage: configureHostname.sh '<host name>'
#
# ./scripts/configureHostname.sh 'newHostName'

# ------------------------------------------------------------------------------
#                        User Accounts
# ------------------------------------------------------------------------------
# Uncomment and edit the following to add a user account
# Usage: configureAccounts.sh add <user name> [-crypt] <password> 
#             [<group 1> <group 2> ...]
# If -crypt is specified then provide an encrypted password as returned by
# crypt(3).  If -crypt is not specified then provide a plain text password.
# Enclose the password in single quotes if the password includes special characters.
# If the password itself includes a single quote, use backslash to escape it.
#
# ./scripts/configureAccounts.sh add username -crypt userpasswd 

# Uncomment and edit the following to delete a user account
# Usage: configureAccounts.sh del <user name>
#
# ./scripts/configureAccounts.sh del username

# Uncomment and edit the following to change an account password
# Enclose the password in single quotes if the password includes special characters.
# If the password itself includes a single quote, use backslash to escape it.
# Usage: configureAccounts.sh change <user name> <password>
#
# ./scripts/configureAccounts.sh change username userpasswd

# ------------------------------------------------------------------------------
#                     TACACS+ Configuration for Web Admin
# ------------------------------------------------------------------------------
# To disable TACACS+ authentication for the Web Admin web interface, uncomment
# the following line. After TACACS+ is disabled users must login to Web Admin
# as root using the local root password.
# ./scripts/configureTACACS.pl del

# To enable TACACS+ authentication or modify existing configuration, uncomment
# and edit the following line. A secondary TACACS+ server is optional so the 
# last three fields can be omitted.
# Usage: configureTACACS.pl mod <auth method> <timeout> <primary host> 
#   <primary port> <primary shared secret> [<secondary host> <secondary port>
#   <secondary shared secret>]
# where <auth method> is either ascii, pap or chap
# ./scripts/configureTACACS.pl mod ascii 15 host 49 secret host 49 secret

# ------------------------------------------------------------------------------
#                        Reset Configuration
# ------------------------------------------------------------------------------
# Uncomment the following to reset the configuration back to factory defaults.
# ./scripts/resetConfiguration.sh

# ------------------------------------------------------------------------------
#                        Appliance Debugging
# ------------------------------------------------------------------------------
# Uncomment the following to retrieve debug information from an appliance.
# Output will be contained in the profile folder.
# ./scripts/debugRetrieval.sh

# ------------------------------------------------------------------------------
#                        Batch Configuration
# ------------------------------------------------------------------------------
# Uncomment the following to enable batch configuration of the PathView Appliance.
# You must provide a batch-config.csv file in the input/ folder.
# See input/batch-config.cvs.sample for an example batch configuration file.
# 
# To configure the appliance with dhcp, the format for the CSV file should be:
# <hostname>,<interface name>,dhcp,,,,,,
#
# To configure the appliance with a static IP, the format should be:
# <hostname>,<interface name>,<IP address>,<network mask>,<gateway>,<dns 1>,<dns 2>,<dns 3>,<domain name>
#
# If it is an m20 microAppliance then you can leave the <interface name> blank
# since the m20 has only one network interface.
#
# Note: The batch-config.csv file must not contain spaces and blank lines
#
# ./scripts/batchConfiguration.sh

# ------------------------------------------------------------------------------
#                        Enable Maintenance Tunnel
# ------------------------------------------------------------------------------
# Uncomment the following to start the SSL Tunnel Client in order to enable the maintenance tunnel on PCA.
# ./scripts/enableMaintenanceTunnel.sh

# ------------------------------------------------------------------------------
#                       USB Setup Configuration
# ------------------------------------------------------------------------------
# Uncomment the following to allow PVC Appliance Setup
#./scripts/usbSetupConfiguration.sh

From a first view this show me that we are able to run scripts on the device with a sufficient privelege to obain root in a relatively straightforward fashion and also enable ssh access.

# ./scripts/enableMaintenanceTunnel.sh
#!/bin/bash
# Copyright 2011-2015 AppNeta Inc.
# Distributed under the terms of the GNU General Public License v2

# Get the log file
LOGFILE="autorun.log"
if [ -e .log.txt ]
then
	LOGFILE=`cat .log.txt`
fi

trap 'trap_handler ${LINENO} ${$?}' ERR
exec 2>> >(tee -a $LOGFILE)

function trap_handler()
{
  MYSELF="$0"
  LASTLINE="$1"
  LASTERR="$2"
  echo "TRAP: ${MYSELF}: line ${LASTLINE}: exit status of last command: ${LASTERR}" >> $LOGFILE
  
}

if [ -e /etc/ma-platform ]
then
  PLATFORM_NAME=`cat /etc/ma-platform | awk -F- '{ print $1 }'`
fi
if [ "${PLATFORM_NAME}" != "pca" ]
then
	echo "Wrong platform. Aborting script..." >> $LOGFILE
	exit 1
fi

echo "------------------------------------------------------------------------------" >> $LOGFILE
echo "[`date`] This script starts the Tunnel Client to enable the Maintenance Tunnel" >> $LOGFILE

PNAME="/opt/pathview/ssl-tunnel -d -C"
PSERVICE="/etc/init.d/ssltunnel"
CONFIG_PATH="/opt/pathview/config"

########################################
# check for running tunnel client process and stop it
# try to stop the service
PID=`pgrep -f "$PNAME" | head -n 1`
for i in `seq 1 7`
do
	if [ -n "$PID" ]
	then
		echo "[`date`] Found Tunnel Client running. Stopping service...attempt $i" >> $LOGFILE
		$PSERVICE stop
		sleep 1
	else
		break
	fi
	PID=`pgrep -f "$PNAME" | head -n 1`
done
if [ -n "$PID" ]
then
	# try to kill the process
	echo "[`date`] Tunnel Client service could not be stopped" >> $LOGFILE
	for i in `seq 1 7`
	do
		if [ -n "$PID" ]
		then
			echo "[`date`] Trying to kill Tunnel Client process $PID...attempt $i" >> $LOGFILE
			kill $PID
			sleep 1
		else
			break
		fi
		PID=`pgrep -f "$PNAME" | head -n 1`
	done
fi
if [ -n "$PID" ]
then
	# if nothing helps kill with flag -9
	echo "[`date`] Tunnel Client process $PID could not be killed." >> $LOGFILE
	for i in `seq 1 7`
	do
		if [ -n "$PID" ]
		then
			echo "[`date`] Killing Tunnel Client process $PID with flag -9...attempt $i" >> $LOGFILE
			kill -9 $PID
			sleep 1
		else
			break
		fi
		PID=`pgrep -f "$PNAME" | head -n 1`
	done
fi
# check status of service
$PSERVICE status
STATUS=`echo $?`
if [ "$STATUS" != "3" ]
then
	echo "[`date`] Tunnel Client is still running and could not be terminated. Please reboot the system and run this script again" >> $LOGFILE
	exit 1
fi
########################################

########################################
# copy config file to /opt/pathview/config
if [ -e ./input/tun.config ]
then
	# backup the old configuration
	if [ -e $CONFIG_PATH/tun.config ]
	then
		BAK_ID=`date +"%N"`
		echo "[`date`] Backing up $CONFIG_PATH/tun.config to $CONFIG_PATH/tun.config.bak_$BAK_ID" >> $LOGFILE
		cp $CONFIG_PATH/tun.config $CONFIG_PATH/tun.config.bak_$BAK_ID
	fi

	# copy the new configuration
	echo "[`date`] Copying new config file ./input/tun.config to $CONFIG_PATH/." >> $LOGFILE
	cp ./input/tun.config $CONFIG_PATH/.
else
	echo "[`date`] Could not find the config file ./input/tun.config. Tunnel Client might not start properly" >> $LOGFILE
fi
########################################

########################################
# start tunnel client service and check if started
echo "[`date`] Starting Tunnel Client with these settings:" >> $LOGFILE
echo "-------------" >> $LOGFILE
echo "`cat $CONFIG_PATH/tun.config`" >> $LOGFILE
echo "-------------" >> $LOGFILE
$PSERVICE start

for i in `seq 1 7`
do
	$PSERVICE status
	STATUS=`echo $?`
	echo "[`date`] Checking status of Tunnel Client. Current status: $STATUS" >> $LOGFILE
	if [ "$STATUS" == "0" ]
	then
		break
	fi
	sleep 3
done

if [ "$STATUS" != "0" ]
then
	echo "[`date`] Could not start Tunnel Client (status $STATUS)" >> $LOGFILE
else 
	echo "[`date`] Tunnel Client successfully started (status $STATUS)" >> $LOGFILE
fi
echo "[`date`] Content of $CONFIG_PATH/../tun.site_conn:" >> $LOGFILE
echo "-------------" >> $LOGFILE
echo "`cat $CONFIG_PATH/../tun.site_conn`" >> $LOGFILE
echo "-------------" >> $LOGFILE
########################################

oh and its running a version of UBUNTU so it should be a good candidate to install debian :)
Re: Additional Marvell Kirkwood Devices
September 09, 2017 02:44PM
actually looking more around the site, it seems that once you reset the device using the reset script

root is already easily available and can be gained using the following credentials

https://docs.appneta.com/appliance-credentials.html

I will drop a message to there support and see if there is any source code available for the kernel mods and also around uboot.
Re: Additional Marvell Kirkwood Devices
September 09, 2017 02:50PM
if anyone gets one of these devices...... a factory reset is performed as follows and the default credentials could be used

Hard reset

Customer Care might direct you to hard reset in rare cases when a device cannot be accessed via the network 
and is unresponsive to USB Configuration. 
Hard reset reverts the device back to the factory-installed software version. 
Keep this in mind when reconnecting to APM because if this version is several versions behind the latest, 
you might need to follow up with a reflash to bring the device up to date.

m22
Press and hold the reset button for 2 seconds. 
Then immediately press and hold the reset button again until all LEDs start flashing, 
which should be in about 25 seconds; 
the device is ready when the blue status LED returns to heartbeat.



Edited 1 time(s). Last edit at 09/09/2017 02:51PM by Gravelrash.
Re: Additional Marvell Kirkwood Devices
September 09, 2017 04:22PM
Gravelrash,

Good info :)

Is there a serial header available? i.e. to connect serial console and capture the bootlog.

The Dreamplug new u-boot has been done, but I have been holding on so I can release all u-boot 2017.07 at the same time:
http://forum.doozan.com/read.php?2,29065,35218#msg-35218

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Additional Marvell Kirkwood Devices
September 10, 2017 04:07AM
I've already done a teardown of the AppNeta devices I have in order to create the entries on WikiDevi:


I have'nt connected via serial yet, but they are essentially identical to the GlobalScale SheevaPlug and DreamPlug. So serial access is available.

Ray



Edited 1 time(s). Last edit at 09/10/2017 04:08AM by rayknight.
Re: Additional Marvell Kirkwood Devices
September 11, 2017 03:25AM
@rayknight - i have followed the links from the links provided and there is a treasure trove of information available around these devices. thankyou for pointing this out.

@bodhi - what do you require from me at this juncture to enable you to perform analysis on the "new" device and bring it into the fold?

EDIT:

readme instructions for installing standard debian and its pitfalls

Linky

Linky



Edited 2 time(s). Last edit at 09/11/2017 06:03AM by Gravelrash.
Re: Additional Marvell Kirkwood Devices
September 11, 2017 06:16AM
Gravelrash,

As always, serial console boot log is a must! That's sometime is all we need if it is a Dreamplug/Sheevaplug rebrand (quite easy). I already had the Dreamplug running. I also have been supported Sheevaplug in the last few years.

-bodhi
===========================
Forum Wiki
bodhi's corner



Edited 1 time(s). Last edit at 09/11/2017 06:20AM by bodhi.
Re: Additional Marvell Kirkwood Devices
September 14, 2017 06:11AM
@bodhi. I will upload this when i get chance.
Re: Additional Marvell Kirkwood Devices
February 13, 2018 09:57AM
AppNeta Pathview M22 serial boot log



U-Boot 2011.06-02334-g8f495d9-dirty (Mar 19 2012 - 05:17:05)
Marvell-DreamPlug

SoC:   Kirkwood 88F6281_A0
CPU running @ 1200Mhz L2 running @ 400Mhz
SysClock = 400Mhz , TClock = 200Mhz
DRAM:  512 MiB
SF: Detected MX25L1606 with page size 256, total 1 MiB
In:    serial
Out:   serial
Err:   serial
Net:   egiga0, egiga1
88E1318 Initialized on egiga0
88E1318 Initialized on egiga1
Hit any key to stop autoboot:  0
(Re)start USB...
USB:   Register 10011 NbrPorts 1
USB EHCI 1.00
scanning bus for devices... 4 USB Device(s) found
       scanning bus for storage devices... 1 Storage Device(s) found
reading uImage

8645880 bytes read
## Booting kernel from Legacy Image at 06400000 ...
   Image Name:   m22 kernel/ramdisk
   Created:      2014-08-26  19:09:42 UTC
   Image Type:   ARM Linux Multi-File Image (gzip compressed)
   Data Size:    8645816 Bytes = 8.2 MiB
   Load Address: 00008000
   Entry Point:  00008000
   Contents:
      Image 0: 3179450 Bytes = 3 MiB
      Image 1: 5466352 Bytes = 5.2 MiB
   Verifying Checksum ... OK
## Loading init Ramdisk from multi component Legacy Image at 06400000 ...
   Uncompressing Multi-File Image ... OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 3.10.33-ani05 (developers@jsrvr33-build-vm1) (gcc 4
[    0.000000] CPU: Feroceon 88FR131 [56251311] revision 1 (ARMv5TE), cr=0005397
[    0.000000] CPU: VIVT data cache, VIVT instruction cache
[    0.000000] Machine: Marvell GuruPlug Reference Board
[    0.000000] Memory policy: ECC disabled, Data cache writeback
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pa8
[    0.000000] Kernel command line: console=ttyS0,115200 root=/dev/sda2 rootdel0
[    0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[    0.000000] Memory: 512MB = 512MB total
[    0.000000] Memory: 507532k/507532k available, 16756k reserved, 0K highmem
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
[    0.000000]     vmalloc : 0xe0800000 - 0xff000000   ( 488 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xe0000000   ( 512 MB)
[    0.000000]     modules : 0xbf000000 - 0xc0000000   (  16 MB)
[    0.000000]       .text : 0xc0008000 - 0xc05d5fd8   (5944 kB)
[    0.000000]       .init : 0xc05d6000 - 0xc06126b4   ( 242 kB)
[    0.000000]       .data : 0xc0614000 - 0xc0659338   ( 277 kB)
[    0.000000]        .bss : 0xc0659338 - 0xc06b6d48   ( 375 kB)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS:114
[    0.000000] sched_clock: 32 bits at 200MHz, resolution 5ns, wraps every 2147s
[    0.000000] Console: colour dummy device 80x30
[    6.946917] Calibrating delay loop... 1191.11 BogoMIPS (lpj=5955584)
[    7.036806] pid_max: default: 32768 minimum: 301
[    7.036944] Mount-cache hash table entries: 512
[    7.037455] Initializing cgroup subsys devices
[    7.037470] Initializing cgroup subsys freezer
[    7.037480] Initializing cgroup subsys blkio
[    7.037550] CPU: Testing write buffer coherency: ok
[    7.037815] Setting up static identity map for 0xc045a870 - 0xc045a8ac
[    7.038695] devtmpfs: initialized
[    7.040866] pinctrl core: initialized pinctrl subsystem
[    7.041080] NET: Registered protocol family 16
[    7.041447] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    7.043118] Kirkwood: MV88F6281-A1, TCLK=200000000.
[    7.043145] Feroceon L2: Cache support initialised.
[    7.068541] bio: create slab <bio-0> at 0
[    7.069548] vgaarb: loaded
[    7.070192] SCSI subsystem initialized
[    7.071522] usbcore: registered new interface driver usbfs
[    7.071703] usbcore: registered new interface driver hub
[    7.071919] usbcore: registered new device driver usb
[    7.074043] Switching to clocksource orion_clocksource
[    7.088031] FS-Cache: Loaded
[    7.105728] NET: Registered protocol family 2
[    7.106242] TCP established hash table entries: 4096 (order: 3, 32768 bytes)
[    7.106341] TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
[    7.106394] TCP: Hash tables configured (established 4096 bind 4096)
[    7.106457] TCP: reno registered
[    7.106471] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    7.106494] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    7.106687] NET: Registered protocol family 1
[    7.107010] RPC: Registered named UNIX socket transport module.
[    7.107022] RPC: Registered udp transport module.
[    7.107030] RPC: Registered tcp transport module.
[    7.107037] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    7.107247] Trying to unpack rootfs image as initramfs...
[    7.492568] Freeing initrd memory: 5332K (c6709000 - c6c3e000)
[    7.492966] gpio_btn: successfully initialized!
[    7.603162] FS-Cache: Netfs 'nfs' registered for caching
[    7.604535] NFS: Registering the id_resolver key type
[    7.604587] Key type id_resolver registered
[    7.604597] Key type id_legacy registered
[    7.605454] JFS: nTxBlock = 4006, nTxLock = 32054
[    7.607127] msgmni has been set to 1001
[    7.609056] Block layer SCSI generic (bsg) driver version 0.4 loaded (major )
[    7.609070] io scheduler noop registered
[    7.609079] io scheduler deadline registered
[    7.609657] io scheduler cfq registered (default)
[    7.609915] mv_xor mv_xor.0: Marvell shared XOR driver
[    7.644162] mv_xor mv_xor.0: Marvell XOR: ( xor cpy )
[    7.684152] mv_xor mv_xor.0: Marvell XOR: ( xor fill cpy )
[    7.684372] mv_xor mv_xor.1: Marvell shared XOR driver
[    7.724139] mv_xor mv_xor.1: Marvell XOR: ( xor cpy )
[    7.764139] mv_xor mv_xor.1: Marvell XOR: ( xor fill cpy )
[    7.771591] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    7.793093] serial8250.0: ttyS0 at MMIO 0xf1012000 (irq = 33) is a 16550A
[    8.242675] console [ttyS0] enabled
[    8.256303] brd: module loaded
[    8.264579] loop: module loaded
[    8.283790] libphy: orion_mdio_bus: probed
[    8.288204] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    8.294839] ehci-pci: EHCI PCI platform driver
[    8.299452] ehci-orion: EHCI orion driver
[    8.303549] orion-ehci orion-ehci.0: EHCI Host Controller
[    8.309067] orion-ehci orion-ehci.0: new USB bus registered, assigned bus nu1
[    8.316899] orion-ehci orion-ehci.0: irq 19, io mem 0xf1050000
[    8.334089] orion-ehci orion-ehci.0: USB 2.0 started, EHCI 1.00
[    8.340788] hub 1-0:1.0: USB hub found
[    8.344652] hub 1-0:1.0: 1 port detected
[    8.349111] usbcore: registered new interface driver usb-storage
[    8.355367] usbcore: registered new interface driver ums-cypress
[    8.361584] usbcore: registered new interface driver ums-datafab
[    8.367796] usbcore: registered new interface driver ums-freecom
[    8.374008] usbcore: registered new interface driver ums-jumpshot
[    8.380294] usbcore: registered new interface driver ums-sddr09
[    8.386425] usbcore: registered new interface driver ums-sddr55
[    8.392856] mousedev: PS/2 mouse device common for all mice
[    8.399045] rtc-mv rtc-mv: rtc core: registered rtc-mv as rtc0
[    8.405280] i2c /dev entries driver
[    8.409102] cpuidle: using governor ladder
[    8.413218] cpuidle: using governor menu
[    8.417812] sdhci: Secure Digital Host Controller Interface driver
[    8.424020] sdhci: Copyright(c) Pierre Ossman
[    8.428530] mvsdio mvsdio: no pins associated
[    8.489436] mmc0: new high speed SDIO card at address 0001
[    8.495810] mvsdio mvsdio: lacking card detect (fall back to polling)
[    8.502464] sdhci-pltfm: SDHCI platform and OF driver helper
[    8.508261] leds-gpio leds-gpio: pins are not configured from the driver
[    8.521520] usbcore: registered new interface driver usbhid
[    8.527496] usbhid: USB HID core driver
[    8.531996] zram: Created 1 device(s) ...
[    8.536469] TCP: cubic registered
[    8.541202] NET: Registered protocol family 10
[    8.546763] NET: Registered protocol family 17
[    8.551547] Key type dns_resolver registered
[    8.556706] registered taskstats version 1
[    8.561186] rtc-mv rtc-mv: setting system clock to 2018-02-13 16:38:15 UTC ()
[    8.570750] Freeing unused kernel memory: 240K (c05d6000 - c0612000)
Loading, please wait...
[    8.664613] usb 1-1: new high-speed USB device number 2 using orion-ehci
Couldnt get a file descriptor referring to the console
Begin: Loading essential drivers... ...
Done.
Begin: Running /scripts/init-premount ...
[    8.814482] udevd (692): /proc/692/oom_adj is deprecated, please use /proc/6.
[    8.825298] hub 1-1:1.0: USB hub found
[    8.830556] hub 1-1:1.0: 4 ports detected
Begin: Starting ani_initrd_autorun ...
[    9.000497] mv643xx_eth: MV-643xx 10/100/1000 ethernet driver version 1.4-an5
[    9.095582] netif_napi_add() called with weight 512 on device eth%d
[    9.102497] mv643xx_eth_port mv643xx_eth_port.0 eth0: port 0 with MAC addres0
[    9.124438] usb 1-1.1: new high-speed USB device number 3 using orion-ehci
[    9.170651] sata_mv sata_mv.0: cannot get optional clkdev
[    9.184272] sata_mv sata_mv.0: slots 32 ports 1
[    9.244564] scsi0 : sata_mv
[    9.248291] hub 1-1.1:1.0: USB hub found
[    9.259108] hub 1-1.1:1.0: 4 ports detected
[    9.307848] ata1: SATA max UDMA/133 irq 21
[    9.436563] mv643xx_eth_port mv643xx_eth_port.1 eth1: port 0 with MAC addres1
[    9.544558] usb 1-1.1.1: new high-speed USB device number 4 using orion-ehci
[    9.654246] ata1: SATA link down (SStatus 0 SControl F300)
[    9.689575] usb-storage 1-1.1.1:1.0: USB Mass Storage device detected
[    9.704037] usb-storage 1-1.1.1:1.0: Quirks match for vid 05e3 pid 0723: 8000
[    9.719444] scsi1 : usb-storage 1-1.1.1:1.0
[   10.715639] scsi 1:0:0:0: Direct-Access     Generic  STORAGE DEVICE   9451 P0
[   10.728978] sd 1:0:0:0: Attached scsi generic sg0 type 0
[   10.892580] sd 1:0:0:0: [sda] 7744512 512-byte logical blocks: (3.96 GB/3.69)
[   10.901193] sd 1:0:0:0: [sda] Write Protect is off
[   10.907066] sd 1:0:0:0: [sda] No Caching mode page found
[   10.912419] sd 1:0:0:0: [sda] Assuming drive cache: write through
[   10.926193] sd 1:0:0:0: [sda] No Caching mode page found
[   10.931541] sd 1:0:0:0: [sda] Assuming drive cache: write through
[   10.947736]  sda: sda1 sda2
[   10.963843] sd 1:0:0:0: [sda] No Caching mode page found
[   10.972846] sd 1:0:0:0: [sda] Assuming drive cache: write through
[   10.985663] sd 1:0:0:0: [sda] Attached SCSI removable disk
Begin: Running /scripts/local-top ...
Done.
Begin: Running /scripts/local-premount ...
Done.
[   20.252755] kjournald starting.  Commit interval 5 seconds
[   20.258940] EXT3-fs (sda2): using internal journal
[   20.263753] EXT3-fs (sda2): mounted filesystem with writeback data mode
Begin: Running /scripts/local-bottom ...
Done.
Done.
Done.
Begin: Mounting root file system... ...
Begin: Running /scripts/local-top ...
Done.
Begin: Running /scripts/local-premount ...
Done.
[   20.857312] EXT3-fs (sda2): mounted filesystem with writeback data mode
[   20.864113] kjournald starting.  Commit interval 5 seconds
Begin: Running /scripts/local-bottom ...
Done.
Done.
Begin: Running /scripts/init-bottom ...
Done.
 * Filesystem type 'fusectl' is not supported. Skipping mount.
[ OK ]ting preliminary keymap...
 * Starting kernel event manager...        [   27.054427] udev: starting versio1
[ OK ]
 * Loading hardware drivers...        [   27.485600] orion_wdt: Initial timeoutc
[   27.685381] mirror: registering eth0: created /dev/mirror0 queue size=4194301
[   27.712998] device eth0 entered promiscuous mode
[   27.723363] mlan: module license 'Marvell Proprietary' taints kernel.
[   27.734174] mv643xx_eth_port mv643xx_eth_port.0 eth0: Connected eth0 to mirr0
[   27.768974] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   27.840556] Disabling lock debugging due to kernel taint
[   28.027941] mv643xx_eth_port mv643xx_eth_port.1 eth1: link down
[   28.045049] IPv6: ADDRCONF(NETDEV_UP): eth1: link is not ready
 * Network Interface Plugging Daemon...
 * Restarting Apparent Networks SSL Tunnel Client ssl-tunnel
[   29.848588] mv643xx_eth_port mv643xx_eth_port.1 eth1: link up, 100 Mb/s, fuld
[   29.858527] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
 * Restarting Apparent Networks SSL Tunnel Client ssl-tunnel
[   31.187549] WLAN FW is active
[ OK ]
 * Loading kernel modules...         * Loading manual drivers...        [   31.i
[   31.723401] fb0: Virtual frame buffer device, using 1024K of video memory
[ OK ]
[ OK ]ting kernel variables (/etc/sysctl.conf)...
[ OK ]ting kernel variables (/etc/sysctl.d/10-console-messages.conf)...
[ OK ]ting kernel variables (/etc/sysctl.d/10-network-security.conf)...
[ OK ]ivating swap...
 * Checking file systems...        fsck 1.41.4 (27-Jan-2009)
[ OK ]
[ OK ]nting local filesystems...
[ OK ]ivating swapfile swap...
[ OK ]rting portmap daemon...
[ OK ]rting NFS common utilities
 * Setting up console font and keymap...         * Network Interface Plugging D.
 * Restarting Apparent Networks SSL Tunnel Client ssl-tunnel
[ OK ]
[ OK ]rting Net-SNMP Agent snmpd
[ OK ]rting Apparent SNMP Sub-Agent snmpService
Starting watchdog keepalive daemon: Ignoring config line: min-memory           1
                                                                               .
[ OK ]
[ OK ] * Starting system message bus dbus
[ OK ] * Starting DNS forwarder and DHCP server dnsmasq

Ubuntu 9.04 m22-VTfQ5 ttyS0

[ OK ]fQ5 login:  * Starting OpenBSD Secure Shell server sshd
[ OK ] * Starting Apparent Networks Capture Manager cap-mngr.fastcgi
[ OK ] * Starting Apparent Networks Flow Uploader flow-uploader
[ OK ] * Starting NFS common utilities
      Starting OSSEC HIDS v2.7 (by Trend Micro Inc.)...
                                                       Started ossec-execd...
                                                                             St.
                                                                               .
                                                                               .
[ OK ]
[ OK ] * Starting Apparent Networks Snmp Trap Sender snmpTrap.fcgi
       * sadc not enabled in /etc/default/sysstat, not starting.
                                                                 * Starting Webn
                                                                               2
                                                                               2
                                                                               e
[ OK ]
[ OK ] * Starting bluetooth
[ OK ] * Starting periodic command scheduler crond
      Stopping watchdog keepalive daemon: wd_keepalive.
                                                       Starting watchdog daemon.
                                                                               K
[ OK ]
       * Starting Apparent Networks Sequencer netseq-m22
[ OK ]                                                   * Checking /etc/networ
       * Configuring network interfaces...         * Network Interface Plugging.
                                                                               .
                                                                               .
[ OK ]
[ OK ] * Stopping Apparent Networks Sequencer netseq-m22
      ntpd: time set +0.468513s
[ OK ]                          * Starting NTP server ntpd
[ OK ] * Starting Apparent Networks Sequencer netseq-m22
[ OK ] * Restarting Apparent Networks Flow Uploader flow-uploader
[ OK ] * Restarting Apparent Networks SSL Tunnel Client ssl-tunnel
      nohup: appending output to `nohup.out'
[ OK ]                                       * Restarting Apparent Networks Flo
[ OK ] * Network Interface Plugging Daemon...         * skip eth0...         *
[ OK ] * Network Interface Plugging Daemon...         * skip eth0...         *
[ OK ] * Starting AppNeta Watchdog Script         * Starting USB Autorun Script
[ OK ] * Starting Apparent Networks Sequencer netseq-m22         * Starting App

Ubuntu 9.04 m22-VTfQ5 ttyS0

m22-VTfQ5 login: root
Password:
Last login: Tue Feb 13 06:45:11 PST 2018 on ttyS0
Linux m22-VTfQ5 3.10.33-ani05 #1 PREEMPT Fri Jun 6 12:24:33 PDT 2014 armv5tel

The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.

To access official Ubuntu documentation, please visit:
http://help.ubuntu.com/
root@m22-VTfQ5:~#

Author:

Your Email:


Subject:


Spam prevention:
Please, enter the code that you see below in the input field. This is for blocking bots that try to post this form automatically. If the code is hard to read, then just try to guess it right. If you enter the wrong code, a new image is created and you get another chance to enter it right.
Message: