Skip to content

Supermicro X8DTT family

Jonathan Neuschäfer edited this page May 2, 2021 · 1 revision

Supermicro boards of the X8DTT family are long and narrow, so that two of them can fit into one 1U chassis. There are three groups of variants:

  • X8DTT X8DTT-F X8DTT-IBX X8DTT-IBXF X8DTT-IBQ X8DTT-IBQF
  • X8DTT-H X8DTT-HF X8DTT-HIBX X8DTT-HIBXF X8DTT-HIBQ X8DTT-HIBQF
  • X8DTT-H+ X8DTT-HF+ X8DTT-HEF+ X8DTT-HIBXF+ X8DTT-HIBQF+

NOTE: I don't recommend getting the -H*+ or -H* variants, because they use a proprietary power connector, described below.

Power supply (-H* and -H*+ variants)

The X8DTT-H* and X8DTT-H*+ variants use a proprietary power connector, Front Panel Accessible Add-on Card Header (JF2), that is not described in detail in Supermicro manuals.

picture of power connector (top of PCB)

picture of power connector (bottom of PCB)

The most relevant pins are the following:

pins description
5-6 +5V standby supply voltage
55-58 +12V supply voltage
59-62 ground

The +5V standby voltage is enough to run the BMC. The board will draw around 0.6A @ 5V. If you use a bench power supply with current limiting, the BMC might fail to boot because of current spikes and voltage drops. I recommend placing a capacitor over the power supply in this case.

UART (-H* and -H*+ variants)

After logging in through SSH, I could see console=ttyS0,38400 in /proc/cmdline, meaning that the UART is run at 38400 baud, rather than the more common 115200 baud.

In order to make finding the TX signal easier, I ran the following command on the BMC:

while date; do echo hello > /dev/ttyS0; done

Probing around crashed or reset the BMC a few times, which made the search more difficult than it would otherwise have been. After a while, I found a signal:

picture of UART signal on oscilloscope

The relevant area of the mainboard is in the component group marked "X" between the VGA port and the serial port.

picture of mainboard area where UART signals can be accessed

The layout is as follows:

UART TX unknown unknown
unknown unknown unknown

Boot log of X8DTT-HIBQF+:



U-Boot 1.1.4 (Jun  8 2017 - 18:00:58)


U-Boot code: 06F00000 -> 06F2FB38  BSS: -> 06F950B8

IRQ Stack: 06ecff7c

FIQ Stack: 06ecef7c

RAM Configuration:

Bank #0: 00000000 112 MB

Found SPI Chip Spans S25FL128P 

Flash: 16 MB

Net:   PHY for device wpcm_eth0 detected @ Addr 0x5 

wpcm_eth0, wpcm_eth1 [PRIME]

Link: 100Mbps  Full Duplex

Links status ok, value=786d phyaddr=5

Hit any key to stop autoboot:  1  0 

params @ /dev/mtdblock1 Address 40060000

Found INITRD Image for Root File System @ /dev/mtdblock2 flash address 40170000

root @ /dev/mtdblock2 Address 40170000

Copying Module of size 0x87d040 From 0x40170000 to 0x1000000

INITRD Image moved to 0x1000000

www @ /dev/mtdblock3 Address 40e20000

Un-Protect Flash Bank # 1

Booting from MODULE_PIMAGE ...

Bootargs = [root=/dev/ramdisk ro ip=none ramdisk_blocksize=4096 console=ttyS0,38400 rootfstype=cramfs bigphysarea=1025 usencsi=0]

## Booting image at 40c00040 ...

   Image Name:   Linux-2.6.24-ami

   Image Type:   ARM Linux Kernel Image (uncompressed)

   Data Size:    1726744 Bytes =  1.6 MB

   Load Address: 00008000

   Entry Point:  00008000

   Verifying Checksum ... OK

OK

## Loading Ramdisk Image at 01000000 ...

   Image Name:   

   Image Type:   ARM Linux RAMDisk Image (uncompressed)

   Data Size:    8900608 Bytes =  8.5 MB

   Load Address: 00000000

   Entry Point:  00000000

   Verifying Checksum ... OK


Starting kernel ...


Uncompressing Linux................................................................................................................ done, booting the kernel.
Linux version 2.6.24-ami (root@edward-laptop) (gcc version 3.4.4) #1 Thu Jun 8 18:00:28 PDT 2017
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
Machine: HERMON
Memory policy: ECC disabled, Data cache writeback
CPU0: D VIVT write-back cache
CPU0: I cache: 16384 bytes, associativity 4, 32 byte lines, 128 sets
CPU0: D cache: 16384 bytes, associativity 4, 32 byte lines, 128 sets
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 28448
Kernel command line: root=/dev/ramdisk ro ip=none ramdisk_blocksize=4096 console=ttyS0,38400 rootfstype=cramfs bigphysarea=1025 usencsi=0
WPCM450 SOC Interrupt Controller Enabled
PID hash table entries: 512 (order: 9, 2048 bytes)
WPCM450 SOC Timer Enabled
console [ttyS0] enabled
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 112MB = 112MB total
Memory: 97152KB available (3268K code, 217K data, 108K init)
SLUB: Genslabs=11, HWalign=32, Order=0-1, MinObjects=4, CPUs=1, Nodes=1
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
net_namespace: 64 bytes
NET: Registered protocol family 16
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP reno registered
checking if image is initramfs...it isn't (bad gzip magic numbers); looks like an initrd
Freeing initrd memory: 8692K
NetWinder Floating Point Emulator V0.97 (double precision)
bigphysarea: Allocated 1025 pages at 0xc046d000.
Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
io scheduler noop registered (default)
Serial: 8250/16550 driver $Revision: 1.90 $ 2 ports, IRQ sharing disabled
serial8250: ttyS0 at I/O 0xe8000000 (irq = 7) is a 16550
serial8250: ttyS1 at I/O 0xe8000100 (irq = 8) is a 16550
RAMDISK driver initialized: 16 RAM disks of 16384K size 4096 blocksize
loop: module loaded
I AM ************NOT********* USING NCSI
eth0 : MAC Address 0:25:90:1f:c5:38
eth0: at Base: 0xe0002000 RX_IRQ: 15  TX_IRQ: 16
Ractrends Flash mapping: 0x1000000 at 0x40000000
Probing for Flash at Bank # 0
SPI: probing for intel s33 devices ...
SPI: probing for atmel devices ...
SPI: probing for m25pxx devices ...
Found SPI Chip Spans S25FL128P 
MTD Partition 0 : fullpart @ 0x0 of Size 0x1000000
MTD Partition 1 : params @ 0x60000 of Size 0xf0000
MTD Partition 2 : root @ 0x170000 of Size 0x880000
MTD Partition 3 : www @ 0xe20000 of Size 0x1d0000
Creating 4 MTD partitions on "Ractrends":
0x00000000-0x01000000 : "fullpart"
0x00060000-0x00150000 : "params"
0x00170000-0x009f0000 : "root"
0x00e20000-0x00ff0000 : "www"
block2mtd: version $Revision: 1.30 $
ip_tables: (C) 2000-2006 Netfilter Core Team
TCP cubic registered
NET: Registered protocol family 1
NET: Registered protocol family 10
lo: Disabled Privacy Extensions
NET: Registered protocol family 17
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com>
All bugs added by David S. Miller <davem@redhat.com>
RAMDISK: cramfs filesystem found at block 0
RAMDISK: Loading 8692KiB [1 disk] into ram disk... |/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\|/-\done.
VFS: Mounted root (cramfs filesystem) readonly.
Root-NFS: No NFS server available, giving up.
VFS: Unable to mount root fs via NFS, trying floppy.
VFS: Mounted root (cramfs filesystem) readonly.
Trying to move old root to /initrd ... okay
Freeing init memory: 108K

INIT: version 2.86 booting

Starting rcS Script ...
Creating area for var using tmpfs ...done.
Creating directories in /var ...done.
Starting Process Manager.
Loading modules...
Loading Module helper ...
Helper Module Driver Version 1.1
Copyright (c) 2006 American Megatrends Inc.
Loading Module gpio ...
gpio: module license 'American Megatrends Inc.' taints kernel.
Done..The GPIO Driver loaded.
Loading Module kcs ...
LPC/KCS/Port80 Driver Version 1.0
Copyright (c) 2007 American Megatrends Inc.
Register Snoop device
LPC Reset Interrupt. Reinitializing KCS 
Loading Module videocap ...
VNC Video Capture Driver Version 1.1
Copyright (c) 2007 American Megatrends Inc.
VCD Mapped Base is 0xe0010000
vcdlib_Initialise()

VCD Finished Initialization
Virutal Capture Buffer = c046d000
Physical Buffer pointer = 46d000
Loading Module i2c-core ...
Loading Module i2c-dev ...
i2c /dev entries driver
Loading Module i2c-algo-hermon ...
Loading Module i2c-hermon ...
I2C Reset 
i2c_adapter i2c-0: Hardware routines registered
Registered bus id: i2c-0
I2C Reset 
i2c_adapter i2c-1: Hardware routines registered
Registered bus id: i2c-1
I2C Reset 
i2c_adapter i2c-2: Hardware routines registered
Registered bus id: i2c-2
I2C Reset 
i2c_adapter i2c-3: Hardware routines registered
Registered bus id: i2c-3
I2C Reset 
i2c_adapter i2c-4: Hardware routines registered
Registered bus id: i2c-4
I2C Reset 
i2c_adapter i2c-5: Hardware routines registered
Registered bus id: i2c-5
Loading Module adc ...
HERMON ADC Driver Version 1.0
Copyright (c) 2007 American Megatrends Inc.
Loading Module usbe ...
Initializing USB Devices
USB Device Endpoint Driver 
Copyright 2006 American Megatrends Inc.
 EQH Address wb11_ep_dQH_ptr0=ffc16000, pa_wb11_ep_dQH_ptr1=6e41000
 dTD0 phy address = 6e41180
 dTD1 phy address = 6e411a0
 buff-ptr0 phy address = 6e42000
 buff-ptr1 phy address = 6e43000
 pa_wb11_ep_dTD_ptr_Ep1In = 6e411c0
 pa_wb11_ep_dTD_ptr_EP2In = 6e411e0
 wb11_pa_wb11_buffer_ptr_Ep1In = 6e44000
 wb11_pa_wb11_buffer_ptr_Ep2In = 6e45000
 list address reg = 6e41000
WBUSB11_AllocBuffer called for Ep = 0 
Is Head List alligned 2k boundary and dQh at 64 byte , ep_dQH_ptr0 = ffc1b000 and ep_dQH_ptr1 = ffc1b040 , pa_ep_dQH_ptr0 = 6e47000 
Is Head List alligned 2k boundary and dQh at 64 byte , ep_dQH_ptr_Ep1Out = ffc1b080 and ep_dQH_ptr_Ep1In= ffc1b0c0 , 
 dTD0 phy address = 6e48000
 dTD1 phy address = 6e49000
 buff-ptr0 phy address = 6e4d000
 buff-ptr1 phy address = 6e4e000
 pa_ep_dTD_ptr_Ep1In = 6e4a000
 pa_ep_dTD_ptr_EP1Out = 6e4c000
 pa_buffer_ptr_Ep1In = 6e4f000
 pa_buffer_ptr_Ep1Out = 6e57000
Add = b0005000 
Base Add = c7896000  
 Stop controller 
WBUSB20_Init(): device got reset
 list address reg = 6e47000
WBUSB20_AllocBuffer called for Ep = 0 dir 3 

 WBUSB11_Enable...  USBINTR_REG = 147

 WBUSB20_Enable...  USBINTR_REG = 47
 Soft Connect(run) HID usb
UsbBusSuspend(): Called for Device 0x0
eth0: Link Down
USB Driver is Successfully Initialized
Loading Module ncsi ...
NCSI Interface Driver Version 1.0
Copyright (c) 2007 American Megatrends Inc.
Loading Module smcdrv ...
smcdrv Driver is loaded successfully.
Loading Module wdt ...
HERMON WDT Driver Version 1.0
Copyright (c) 2007 American Megatrends Inc.
All modules loaded.
Setting up networking...done.
Mounting local filesystems...
mount: block device /dev/mtdblock3 is write-protected, mounting read-only
mount: /dev/mtdblock4 is not a valid block device
/dev/mtdblock3 on /usr/local/www type cramfs (ro)
/dev/mtdblock1 on /conf type jffs2 (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
Hostname: SMC0025901FC538.
Setting up IP spoofing protection: rp_filter.
Configuring network interfaces...INTERFACE is lo
INTERFACE is lo
INTERFACE is eth0
Interface eth0 is going to go up
 ------NO OPTION for UDHCPC, then DO HOST NAME --------

Sending Host Name: SMC0025901FC538 via DHCP 
info, udhcpc (v0.9.9-pre) started
eth0: Resetting ...
eth0: Found PHY @ Address 5
eth0: Enable and Restart Auto Negotiation
eth0: Wait for auto-negotiation complete. Passed 100MB - Full Duplex
NCSI: NetDev Up Event for eth0
debug, Sending discover...
debug, Sending select for 192.168.2.12...
info, Lease of 192.168.2.12 obtained, lease time 86400
Address   :  192.168.2.12
Netmask   :  255.255.255.0
Deleting routers
Router    :  192.168.2.1
DnsServer :  192.168.2.1
DnsServer :  192.168.2.2
DNS Registering: Will perform FQDN. So skipping NSUPDATE....
INTERFACE is eth0
Interface eth0 is up
Restarting WebServerStarting Web Server: Goahead (Daemon)
.

 initWebs .....
skipping DDNS Update. Option is not present
done.
Starting IPMI Stack: IPMIMain .
Starting CIM Discovery : cimdisovery free(): invalid pointer 0xbefe8d9c!
Using /usr/local/cim//etc/Providers/IPMI_Conf.ini....
Setting up discovery path....
Discovering SMBIOS targets....
[PDKInt.c - PDK_RegIntFDs]: Cleaning up old interrupts registration success
[PDK_PostInit] Hold smbus..
device ID: 10
handle: 32
device ID: 1
handle: 35
deviint_num=4, set_value=2000, clr_value=ffffdfff, dir_clr_value=ffffdfff
ce ID: int_num=4, set_value=4000, clr_value=ffffbfff, dir_clr_value=ffffbfff
5
handle: 37
device ID: 6
handle: 33
device ID: 7
handle: 36
device ID: 11
handle: 38
device ID: 12
handle: 39
device ID: 8
handle: 34
hal_get_device_handle returned : 34
hal_device_get_properties : SUCCESS 
DEBUG : IntInfo.int_num : 13
[PDKInt.c - PDK_RegInt]: Registering sensor interrupt success for number= 13
[PDKHooks.c - PDK_PostInit]: Interrupt registered successfully
device ID: 12
handle: 39
hal_get_device_handle returned : 39
hal_device_get_properties : SUCCESS 
DEBUG : IntInfo.int_num : 14
[PDKInt.c - PDK_RegInt]: Registering sensor interrupt success for number= 14
[PDKHooks.c - PDK_PostInit]: Interrupt registered successfully
Discovering CIM Instances....
Connecting to BMC 0.....
Trying make IPMI Session with 127.0.0.1...
buf.IPMILAN_EN = 0
IPMI Connection Success in the count 0
sdrCount for blade1 = 32
Reading SDR for BMC 0....
#####################################################
############Reading SDR for BMC 0 Completed...
Instanciating Host CIM Entities....
Instanciating SP CIM Entities....
Inside Instanciate SP CIM Entities
 Instanciate SP ElementSettingData

################## SP_InstanciateElementSettingData 
################## nwGetNWExtIPCfg 
 #####adding IPAssignmentSettingData-DHCP
 #####adding IPAssignmentSettingData-DHCPStatic
 #####adding CIM_DHCPSettingData
 #####adding CIM_DNSSettingData
Instanciating CIM Entities Completed....
Closing Session with BMC 0....
Discovered CIM Instances successfully....
.
Starting SFCB : sfcbd .
Mon Jan  1 00:00:00 GMT 2007

INIT: Entering runlevel: 3

Check manually set time or ntp
oi oi
finding port number
Starting dropbear Secure Shell server: dropbear.
Starting periodic command scheduler: cron.
Starting Adviser :Adviserd[454 INFO]Adviser Configuration
[454 INFO]Redirec
Mouse Mode is ABSOLUTE
tion : enabled
[454 INFO]Max sessions allowed: 2
[454 INFO]SSL disabled
[454 INFO]Adviser listening at port: 5901
reached to create thread
.
Worker thread created=16386
Worker thread created=32771
Created Thread - Avse:49156
Created Thread - Avse:65541
Thread ids = 16386 32771 49156 65541 0 49156 65541
Reached to open VSC driver 
Starting upnp discoveryReached to Issue master reset 
[455 INFO]Issuing a MASTER reset
Videocap: Capture Engine is already off
Resolution Got is 1 * 0
Reached to start stunnel6 
.
Port Number of Web is 50000
Device UUID is 8ec255ed-f43f-4912-94a0-356f7d1cd171
Starting CD Redirection Server: cdserver.
 Soft Disconnect(stop) usb
Starting FD Redirection Server: fdserverstunnel: LOG5[492:0]: Reading configuration from file /conf/stunnel_kvm.conf

stunnel: LOG4[492:0]: Wrong permissions on /usr/local/www/certs/privkey.pem

stunnel: LOG5[492:0]: Configuration successful

stunnel: LOG5[492:0]: No limit detected for the number of clients

Stunnel Started
Reached to accept the connection
stunnel: LOG5[515:0]: stunnel 4.38 on arm-unknown-linux-gnu platform

stunnel: LOG5[515:0]: Compiled/running with OpenSSL 1.0.1o 12 Jun 2015

.
stunnel: LOG5[515:0]: Threading:FORK SSL:ENGINE Auth:LIBWRAP Sockets:POLL, IPv6

Starting Firmware Upgrade Utility: flasher.
MegaRAC Firmware Upgrade Utility
Copyright (c) 2005-2006 American Megatrends Inc.
FlashStart	= 0x40000000
FlashSize	= 0x1000000
UsedFlashStart	= 0x40000000
UsedFlashSize	= 0x1000000
EnvStart	= 0x40040000
EnvSize		= 0x10000

SMC0025901FC538 login: .
ERROR: BotSendCSW(): Waiting for Bot UnHalted Timed out
Error in Sending CSW for EP1
 Soft Disconnect(stop) usb
 Soft Disconnect(stop) usb

References