Hit any key to stop autoboot: 1
Marvell>>
setenv x_bootargs 'console=ttyS0,115200 panic=10 rootwait rootdelay=10'
setenv image_address 0x6400000
setenv bootcmd 'run init; run bootcmd_sdd ;run bootcmd_sdc; run bootcmd_sdb; run bootcmd_sda;'
setenv init 'run clear_kernel_in_mem; run x_bootcmd_usb;'
setenv bootcmd_sda 'setenv root_device /dev/sda2; setenv usb_device_id 0; run boot_common;'
setenv bootcmd_sdb 'setenv root_device /dev/sdb2; setenv usb_device_id 1; run boot_common;'
setenv bootcmd_sdc 'setenv root_device /dev/sdc2; setenv usb_device_id 2; run boot_common;'
setenv bootcmd_sdd 'setenv root_device /dev/sdd2; setenv usb_device_id 3; run boot_common;'
setenv boot_common 'run bootcmd_echo_boot_attempt; run setargs; run x_bootcmd_kernel; bootm ${image_address};'
setenv clear_kernel_in_mem 'echo Purging kernel in memory; mw ${image_address} 0x0 0x300000;'
setenv bootcmd_echo_boot_attempt 'echo attempting to boot from: ${root_device};'
setenv setargs 'setenv bootargs ${x_bootargs} root=${root_device}; echo bootargs="${bootargs}";'
setenv x_bootcmd_kernel 'fatload usb ${usb_device_id} ${image_address} uimage;'
saveenv
root
edit /root/init_setup.sh
# blinkled >> /dev/null
# Now set up to run in wifi client mode
/sbin/wlan.sh
# deactivate wlan
ifconfig mlan0 down
#stopping bluetooth
/etc/init.d/bluetooth stop
# deactivate led
echo 0 > `eval ls /sys/class/leds/guruplug\:red\:wmode/brightness`
echo 0 > `eval ls /sys/class/leds/guruplug\:green\:wmode/brightness`
# reboot
root
edit /root/init_setup.sh
# Now set up to run in wifi client mode
/usr/bin/wlan.sh
#stopping bluetooth
/etc/init.d/bluetooth stop
# deactivate led
echo 0 > `eval ls /sys/class/leds/*plug*\:red\:wmode/brightness`
echo 0 > `eval ls /sys/class/leds/*plug*\:green\:wmode/brightness`
# reboot
The changes were very minor. Here's all I had to do. 1. cd to the EPICS base configure/os directory. 2. Edit CONFIG.Common.linux-arm, set the GNU_DIR appropriately and check that the rest looks like: # CONFIG.Common.linux-arm # # This file is maintained by the build community. # # Definitions for linux-arm target builds. # Sites may override these definitions in CONFIG_SITE.Common.linux-arm #------------------------------------------------------- # Include definitions common to all Linux targets include $(CONFIG)/os/CONFIG.Common.linuxCommon ARCH_CLASS = arm # # The vendor's tool chain needs to be located here # GNU_DIR=/Users/wenorum/src/SheevaPlug/SheevaPlugCD1.2b/SheevaPlug_Host_SWsupportPackageLinuxHost/LinuxHost/gcc ifeq ($(BUILD_CLASS),CROSS) VALID_BUILDS = Ioc GNU_TARGET = xscale_be CMPLR_PREFIX = arm-none-linux-gnueabi- endif 3. Add linux-arm to the CROSS_COMPILER_TARGET_ARCHS in CONFIG_SITE.linux-x86.Common # CONFIG_SITE.linux-x86.Common # # CONFIG_SITE.linux-x86.Common,v 1.7.2.6 2009/01/23 20:24:59 norume Exp # This file is maintained by the build community. # # Site override definitions for linux-x86 host builds #------------------------------------------------------- # JBA test override values #CROSS_COMPILER_TARGET_ARCHS = vxWorks-68040 solaris-sparc #CROSS_COMPILER_TARGET_ARCHS = vxWorks-68040 CROSS_COMPILER_TARGET_ARCHS = linux-arm On Mar 1, 2011, at 8:21 AM, Dr. Peter Zumbruch wrote: > Hello Eric, > I would be interested to see the changes you applied to linux-arm, > since I have purchased the guru-plug and would like to use it to connect to several USB devices. > > Thanks, > Peter > > Am 25.03.2010 22:35, schrieb Eric Norum: >> >> We were looking for an inexpensive way to connect Larry Doolitte's Low-Level RF board to EPICS. >> The LLRF board uses USB to connect to the outside world so the IOC controlling it needs to be fairly close. >> We purchased a SheevaPlug (http://www.globalscaletechnologies.com/p-22-sheevaplug-dev-kit-us.aspx). >> for around $100 (US). >> The SheevaPlug is a plug computer (http://www.openplug.org/) about the size and shape of a typical AC adapter. >> It has a USB 2.0 interface and 10/100/1000 ethernet and comes with Linux installed on the flash memory. >> The development kit also contains a CD with all the cross-development tools >> >> I made a couple of changes to <base>/configure/os/CONFIG.Common.linux-arm on my Linux host machine and, >> to my considerable surprise, was able to build EPICS base R3.14.11, snc/seq and asyn with no other changes. >> I also built the GNU Universal Software Radio Project libraries which are needed to communicate with the LLRF card. >> I used apt-get on the SheevaPlug to install the nfs-common and screen packages. >> >> I am now running the IOC on the SheevaPlug and controlling/displaying the EPICS process variables >> using MEDM on my OS X machine. With a 2.3 MB/s flow from the LLRF card and processing/displaying >> the twelve 1024-sample waveform records 5 times per second (242 kiB/s to the EPICS client) >> the CPU load on the SheevaPlug is 4 to 5%. >> >> So, if you're looking for a really inexpensive way to interface USB equipment to EPICS >> you might find this a reasonable way to go. >> >> -- >> Eric Norum >> wenorum@lbl.gov >>