hi-

    about a year ago I posted about my failed attempt to gain access
to the Dell 2650 ERA device from FreeBSD using the Dell Linux tools
[ERA is an embedded device with its own ethernet link in a rack mount 
Dell 2650 box that lets you power cycle and control the 2650 remotely...].
In particular, I wanted to be able to run Linux "racadm" so that I could 
change the password on the ERA (because you can't do it through the web 
interface).

    since that time Dell has released a new stand-alone version of
"racadm" that simplified how it talks to the ERA --- it now just uses
sockets and can even be run remotely.

    there are two ways for "racadm" to communicate with the ERA:

        1. over the network, assumes that both your 2650 and its 
                ERA port are connected to a network and can talk
                to each other (i.e. not firewalled out).   i've used
                this mode under Linux emulation with both FreeBSD
                and NetBSD and it works just fine.

        2. the ERA has has a virtual sio 16550A device that runs
                a PPP server.  i have a patch to sio.c that configures
                up this virtual 16550A (comes up as sio4) and allows
                you to create a PPP connection to it.   this patch
                requires using a non-standard rclk in sio.c for the
                virtual 16550A so you can set a large "speed" because 
                otherwise you will get interrupt buffer overflows.


anyone else out there with 2650's that wants to be able to fully use 
their ERAs?  you need:

        0. a kernel with Linux system call emulation enabled

        1. racadm-2.20-1.i386.rpm from the Dell CD which i've converted
           to a tgz at http://www.netbsd.org/~chuck/gz/racadm-2.20-1.i386.tgz
           install in /usr/compat/linux ...

        2. if you want to be able to talk to the ERA without having it
           on the network, patch sio.c (my patch below is relative to
           4.7 but the changes are minimal and should be easy to port?),
           recompile kernel, install, reboot.

           assuming your ERA comes up as sio4, use this command to start
           ppp:

                pppd /dev/cuaa4 1382400 crtscts noipdefault noauth lock persist 
connect 'chat -v "" CLIENT CLIENTSERVER "\\c"'

        3. test it

           to test remote operation:
                /usr/compat/linux/usr/sbin/racadm -r 10.0.0.1 -i getsysinfo
                  [where you change 10.0.0.1 to IP addr of your ERA interface]

           to test the ppp link, use:  (my ERA comes up at 192.168.234.236)
                /usr/compat/linux/usr/sbin/racadm getsysinfo


see http://docs.us.dell.com/docs/software/smdrac3/RAC/en/racadmug/racadmc1.htm
for more details on running racadm...
           
hope someone finds this useful.

chuck


*** sio.c_ORIG  Thu Aug 21 14:48:50 2003
--- sio.c       Fri Aug 22 19:44:10 2003
***************
*** 591,609 ****
        u_int32_t       type;
        const char      *desc;
        int             rid;
  };
  
  static struct pci_ids pci_ids[] = {
!       { 0x100812b9, "3COM PCI FaxModem", 0x10 },
!       { 0x2000131f, "CyberSerial (1-port) 16550", 0x10 },
!       { 0x01101407, "Koutech IOFLEX-2S PCI Dual Port Serial", 0x10 },
!       { 0x01111407, "Koutech IOFLEX-2S PCI Dual Port Serial", 0x10 },
!       { 0x048011c1, "Lucent kermit based PCI Modem", 0x14 },
!       { 0x95211415, "Oxford Semiconductor PCI Dual Port Serial", 0x10 },
!       { 0x7101135e, "SeaLevel Ultra 530.PCI Single Port Serial", 0x18 },
!       { 0x0000151f, "SmartLink 5634PCV SurfRider", 0x10 },
!       { 0x98459710, "Netmos Nm9845 PCI Bridge with Dual UART", 0x10 },
!       { 0x00000000, NULL, 0 }
  };
  
  static int
--- 591,611 ----
        u_int32_t       type;
        const char      *desc;
        int             rid;
+       u_long          rclk;
  };
  
  static struct pci_ids pci_ids[] = {
!       { 0x100812b9, "3COM PCI FaxModem", 0x10, 0 },
!       { 0x2000131f, "CyberSerial (1-port) 16550", 0x10, 0 },
!       { 0x01101407, "Koutech IOFLEX-2S PCI Dual Port Serial", 0x10, 0 },
!       { 0x01111407, "Koutech IOFLEX-2S PCI Dual Port Serial", 0x10, 0 },
!       { 0x048011c1, "Lucent kermit based PCI Modem", 0x14, 0 },
!       { 0x95211415, "Oxford Semiconductor PCI Dual Port Serial", 0x10, 0 },
!       { 0x7101135e, "SeaLevel Ultra 530.PCI Single Port Serial", 0x18, 0 },
!       { 0x0000151f, "SmartLink 5634PCV SurfRider", 0x10, 0 },
!       { 0x98459710, "Netmos Nm9845 PCI Bridge with Dual UART", 0x10, 0 },
!       { 0x00081028, "Dell RAC Serial PPP Link", 0x14, DEFAULT_RCLK*128 },
!       { 0x00000000, NULL, 0, 0 }
  };
  
  static int
***************
*** 620,626 ****
        if (id->desc == NULL)
                return (ENXIO);
        sio_pci_kludge_unit(dev);
!       return (sioattach(dev, id->rid, 0UL));
  }
  
  /*
--- 622,628 ----
        if (id->desc == NULL)
                return (ENXIO);
        sio_pci_kludge_unit(dev);
!       return (sioattach(dev, id->rid, (id->rclk) ? id->rclk : 0UL));
  }
  
  /*
_______________________________________________
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to