Search This Blog

Thursday, June 5, 2008

Firmware Flashing a Digi Etherlite 32

After compiling the dgrp kernel module I needed to update the firmware of an Etherlite 32:
1. Power down the Etherlite
2. # /usr/sbin/dgipserv -erase <MAC> <IPADDR_OF_ETHERLITE>
3. Power up the Etherlite.
4. Make sure the dhcpd and tftp is not running.
5. # chkconfig dhcpd off; chkconfig tftp off
6. This was what was throwing me off - I thought I had to pre-configure additional linux bootp/tftp services which you don't.  The dgipserv command serves up it's own bootp and tftp services which is convienient.. 
7. Power down the Etherlite
8. # /usr/sbin/dgipserv -tftp <IPADDR_OF_SERVER> -firmware /tftpboot/800007009_E.bin <MAC> <IPADDR_OF_ETHERLITE>
9. Power up the Etherlite.
10. You should have a "Firmware successfully uploaded."
11. Power down the Etherlite
12. Now we need to make the ip settings permanent.
13.  # /usr/sbin/dgipserv -store -gateway <IP_GATEWAY> -netmask <IP_MASK> <MAC> <IPADDR_OF_ETHERLITE>
14. Power down and back up the Etherlite to make sure the new ip address stuck this time.
 
Note: I could never get rlogin to work with my etherlite, so I can't tell what the current firmware version was/is.

Tuesday, June 3, 2008

Humbled by the SC440 and SAS 5/iR controller on CentOS 5.1

Why isn't Dell's SAS Raid Storage Manger clueing me into whats wrong?

Let me back up and ask this: Since, the kernel is gratiously working a controller, are there not any generic commands that query the SAS subsystem to report back overall statuses of hard drives and raids? I'm not a kernel programmer, but I just can't understand why you put all the effort into writing a driver which natively works with the kernel, and linux doesn't give you a way to inspect the most basics of information other than the spartan:

# cat /proc/scsi/mptsas/0
ioc0: LSISAS1068, FwRev=000a3300h, Ports=1, MaxQ=286

So, last ditch effort, I updated the bios and firmware on the SC440 and SAS 5/iR controller, and reinstalled Dell's SAS Raid Storage Manger v2.16-01 for RHEL5. Still no luck - "No Storage Controller Found!".

Bryan Mclellan told me I need to make sure the mptctl module was loaded - he was right.

I added "modprobe mptctl" at bootup according to these instructions:
http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/sysadmin-guide/s1-kernel-modules-persistant.html

Now, not only does the Dell SSM (aka LSI's MSM) software sees the controller, also a nifty tool called mpt-status (http://www.drugphish.ch/~ratz/mpt-status/) works as well:

# ./mpt-status
ioc0 vol_id 0 type IM, 2 phy, 135 GB, state OPTIMAL, flags ENABLED
ioc0 phy 1 scsi_id 32 SEAGATE ST3146755SS T107, 136 GB, state ONLINE,
flags NONE
ioc0 phy 0 scsi_id 1 SEAGATE ST3146755SS T107, 136 GB, state ONLINE,
flags NONE

Now, IMHO, mpt-status is the kind of utility that should be a part of the
SAS subsytem commands and also give clues as to what drivers aren't loaded.
I'm not neccessarily looking to *control* every proprietary controller with
one utility, but at least be able to monitor the status of any controller
with on command across all manufactures. Imagine a different ls command for
Dell, HP, IBM, etc....