OpenBSD Journal

Sun Fire V215/V245 (and more?) support in -current

Contributed by dwc on from the come-on-baby-light-my-sun-fire dept.

It's always great to see support for more hardware! I know there are plenty of people wishing they could load OpenBSD on V215/V245 and their ilk, and here it is! Also, anyone with Sun Fire V445 or Ultra 25 / Ultra 45 please give it a shot and send a dmesg.

Read on for Mark's message and more details...

In a recent message to sparc@ and misc@, Mark Kettenis writes:

I just committed the final bits that make the Sun Fire V215 and V245
fully supported in 4.1-current.  These machines have a PCIe host
bridge, supported by the new pyro(4) driver.  Writing this driver was
the biggest challange, since Sun doesn't provide any documentation for
it.  So it took some extensive digging through the OpenSolaris code to
figure out how the hardware was supposed to work.

OpenBSD seems to be the first OS besides Solaris to support these
machines (at least I could not find any evidence in the Linux source
code that they do support the PCIe host bridge), and the first
complete open source OS that runs on them (OpenSolaris still requires
some closed source drivers to run).

It is very likely that Sun Fire V445 server and Ultra 25 and Ultra 45
workstations also work now.  So if you have access to one of those
machines, please give the latest snapshots a go and send a dmesg to
dmesg@.

Mark
console is /ebus@1f,464000/serial@2,80
Copyright (c) 1982, 1986, 1989, 1991, 1993
	The Regents of the University of California.  All rights reserved.
Copyright (c) 1995-2007 OpenBSD. All rights reserved.  http://www.OpenBSD.org

OpenBSD 4.1-current (GENERIC) #13: Sat Apr  7 08:25:21 MDT 2007
    kettenis@v215:/home/kettenis/src/sys/arch/sparc64/compile/GENERIC
total memory = 1073741824
avail memory = 966631424
using 17126 buffers containing 53682176 bytes of memory
bootpath: /pci@1e,600000/pci@0,0/pci@a,0/pci@0,0/pci@8,0/scsi@1,0/disk@0,0
mainbus0 (root): Sun Fire V215
cpu0 at mainbus0: SUNW,UltraSPARC-IIIi (rev 3.4) @ 1504 MHz, version 0 FPU
cpu0: physical 32K instruction (32 b/l), 64K data (32 b/l), 1024K external (64 b/l)
memory-controller at mainbus0 not configured
pyro0 at mainbus0: "Fire", rev 3, ign 780, bus A 2 to 13
pyro0: dvma map c0000000-ffffffff, iotdb 20566e000-20576e000
pci0 at pyro0
ppb0 at pci0 dev 0 function 0 "PLX 8532 PCIE" rev 0xba
pci1 at ppb0 bus 3
ppb1 at pci1 dev 1 function 0 "PLX 8532 PCIE" rev 0xba
pci2 at ppb1 bus 4
ppb2 at pci2 dev 0 function 0 "Acer Labs M5249 PCI-PCI" rev 0x00
pci3 at ppb2 bus 5
ohci0 at pci3 dev 28 function 0 "Acer Labs M5237 USB" rev 0x03: ivec 0x780, version 1.0, legacy support
ohci1 at pci3 dev 28 function 1 "Acer Labs M5237 USB" rev 0x03: ivec 0x780, version 1.0, legacy support
ehci0 at pci3 dev 28 function 3 "Acer Labs M5239 USB2" rev 0x01: ivec 0x781
usb0 at ehci0: USB revision 2.0
uhub0 at usb0
uhub0: Acer Labs EHCI root hub, rev 2.00/1.00, addr 1
uhub0: 8 ports with 8 removable, self powered
ebus0 at pci3 dev 30 function 0 "Acer Labs M1575 ISA" rev 0x00
rtc0 at ebus0 addr 70-73: m5823
pciide0 at pci3 dev 31 function 0 "Acer Labs M5229 UDMA IDE" rev 0xc8: DMA, channel 0 configured to native-PCI, channel 1 configured to native-PCI
pciide0: using ivec 0x784 for native-PCI interrupt
pciide0: channel 0 disabled (no drives)
pciide0: channel 1 disabled (no drives)
usb1 at ohci0: USB revision 1.0
uhub1 at usb1
uhub1: Acer Labs OHCI root hub, rev 1.00/1.00, addr 1
uhub1: 3 ports with 3 removable, self powered
usb2 at ohci1: USB revision 1.0
uhub2 at usb2
uhub2: Acer Labs OHCI root hub, rev 1.00/1.00, addr 1
uhub2: 3 ports with 3 removable, self powered
ppb3 at pci1 dev 2 function 0 "PLX 8532 PCIE" rev 0xba
pci4 at ppb3 bus 6
ppb4 at pci1 dev 8 function 0 "PLX 8532 PCIE" rev 0xba
pci5 at ppb4 bus 7
ppb5 at pci1 dev 9 function 0 "PLX 8532 PCIE" rev 0xba
pci6 at ppb5 bus 8
ppb6 at pci6 dev 0 function 0 "ServerWorks PCIE-PCIX" rev 0xb5
pci7 at ppb6 bus 9
bge0 at pci7 dev 4 function 0 "Broadcom BCM5714" rev 0xa3, BCM5715 A3 (0x9003): ivec 0x795, address 00:14:4f:26:72:a2
brgphy0 at bge0 phy 1: BCM5714 10/100/1000baseT PHY, rev. 0
bge1 at pci7 dev 4 function 1 "Broadcom BCM5714" rev 0xa3, BCM5715 A3 (0x9003): ivec 0x796, address 00:14:4f:26:72:a3
brgphy1 at bge1 phy 1: BCM5714 10/100/1000baseT PHY, rev. 0
ppb7 at pci7 dev 8 function 0 "ServerWorks HT-1000 PCIX" rev 0xb4
pci8 at ppb7 bus 10
ppb8 at pci1 dev 10 function 0 "PLX 8532 PCIE" rev 0xba
pci9 at ppb8 bus 11
ppb9 at pci9 dev 0 function 0 "ServerWorks PCIE-PCIX" rev 0xb5
pci10 at ppb9 bus 12
bge2 at pci10 dev 4 function 0 "Broadcom BCM5714" rev 0xa3, BCM5715 A3 (0x9003): ivec 0x796, address 00:14:4f:26:72:a4
brgphy2 at bge2 phy 1: BCM5714 10/100/1000baseT PHY, rev. 0
bge3 at pci10 dev 4 function 1 "Broadcom BCM5714" rev 0xa3, BCM5715 A3 (0x9003): ivec 0x797, address 00:14:4f:26:72:a5
brgphy3 at bge3 phy 1: BCM5714 10/100/1000baseT PHY, rev. 0
ppb10 at pci10 dev 8 function 0 "ServerWorks HT-1000 PCIX" rev 0xb4
pci11 at ppb10 bus 13
mpi0 at pci11 dev 1 function 0 "Symbios Logic SAS1064" rev 0x02: ivec 0x78f
scsibus0 at mpi0: 63 targets
sd0 at scsibus0 targ 0 lun 0:  SCSI2 0/direct fixed
sd0: 70007MB, 14100 cyl, 24 head, 423 sec, 512 bytes/sec, 143374738 sec total
pyro1 at mainbus0: "Fire", rev 3, ign 7c0, bus B 2 to 255
pyro1: dvma map c0000000-ffffffff, iotdb 2059e0000-205ae0000
pci12 at pyro1
ebus1 at mainbus0: ign 7c0
"flashprom" at ebus1 addr 0-1fffff not configured
com0 at ebus1 addr 80-87 ipl 8: ns16550a, 16 byte fifo
com0: console
com1 at ebus1 addr 40-47 ipl 9: ns16550a, 16 byte fifo
"rmc-comm" at ebus1 addr 0-7 ipl 10 not configured
"gpio" at ebus1 addr c0-c0 not configured
"env-monitor" at ebus1 addr 0-80 not configured
power0 at ebus1 addr 40-c1 ipl 3
i2c at mainbus0 not configured
pcons at mainbus0 not configured
No counter-timer -- using %tick at 1504MHz as system clock.
root on sd0a
rootdev=0x700 rrootdev=0x1100 rawdev=0x1102

(Comments are closed)


Comments
  1. By Johan M:son Lindman (jl) tybollt@solace.miun.se on

    This is what the v245 dmesg look like...

    OpenBSD 4.1-current (GENERIC) #0: Sun Apr 8 14:48:42 CEST 2007
    dlg@coh03.btradianz.se:/usr/src/sys/arch/sparc64/compile/GENERIC
    total memory = 2147483648
    avail memory = 1949147136
    using 17126 buffers containing 107372544 bytes of memory
    bootpath: /pci@1e,600000/pci@0,0/pci@a,0/pci@0,0/pci@8,0/scsi@1,0/disk@1,0
    mainbus0 (root): Sun Fire V245
    cpu0 at mainbus0: SUNW,UltraSPARC-IIIi (rev 3.4) @ 1504 MHz, version 0 FPU
    cpu0: physical 32K instruction (32 b/l), 64K data (32 b/l), 1024K external (64 b/l)
    memory-controller at mainbus0 not configured
    memory-controller at mainbus0 not configured
    pyro0 at mainbus0: "Fire", rev 3, ign 780, bus A 2 to 13
    pyro0: dvma map c0000000-ffffffff, iotdb 209ad4000-209bd4000
    pci0 at pyro0
    ppb0 at pci0 dev 0 function 0 "PLX 8532 PCIE" rev 0xba
    pci1 at ppb0 bus 3
    ppb1 at pci1 dev 1 function 0 "PLX 8532 PCIE" rev 0xba
    pci2 at ppb1 bus 4
    ppb2 at pci2 dev 0 function 0 "Acer Labs M5249 PCI-PCI" rev 0x00
    pci3 at ppb2 bus 5
    ohci0 at pci3 dev 28 function 0 "Acer Labs M5237 USB" rev 0x03: ivec 0x780, version 1.0, legacy support
    ohci1 at pci3 dev 28 function 1 "Acer Labs M5237 USB" rev 0x03: ivec 0x780, version 1.0, legacy support
    ehci0 at pci3 dev 28 function 3 "Acer Labs M5239 USB2" rev 0x01: ivec 0x781
    usb0 at ehci0: USB revision 2.0
    uhub0 at usb0
    uhub0: Acer Labs EHCI root hub, rev 2.00/1.00, addr 1
    uhub0: 8 ports with 8 removable, self powered
    ebus0 at pci3 dev 30 function 0 "Acer Labs M1575 ISA" rev 0x00
    rtc0 at ebus0 addr 70-73: m5823
    pciide0 at pci3 dev 31 function 0 "Acer Labs M5229 UDMA IDE" rev 0xc8: DMA, channel 0 configured to native-PCI, channel 1 configured to native-PCI
    pciide0: using ivec 0x784 for native-PCI interrupt
    pciide0: channel 0 disabled (no drives)
    pciide0: channel 1 disabled (no drives)
    usb1 at ohci0: USB revision 1.0
    uhub1 at usb1
    uhub1: Acer Labs OHCI root hub, rev 1.00/1.00, addr 1
    uhub1: 3 ports with 3 removable, self powered
    usb2 at ohci1: USB revision 1.0
    uhub2 at usb2
    uhub2: Acer Labs OHCI root hub, rev 1.00/1.00, addr 1
    uhub2: 3 ports with 3 removable, self powered
    ppb3 at pci1 dev 2 function 0 "PLX 8532 PCIE" rev 0xba
    pci4 at ppb3 bus 6
    ppb4 at pci1 dev 8 function 0 "PLX 8532 PCIE" rev 0xba
    pci5 at ppb4 bus 7
    ppb5 at pci1 dev 9 function 0 "PLX 8532 PCIE" rev 0xba
    pci6 at ppb5 bus 8
    ppb6 at pci6 dev 0 function 0 "ServerWorks PCIE-PCIX" rev 0xb5
    pci7 at ppb6 bus 9
    bge0 at pci7 dev 4 function 0 "Broadcom BCM5714" rev 0xa3, BCM5715 A3 (0x9003): ivec 0x795, address 00:14:4f:70:b4:a2
    brgphy0 at bge0 phy 1: BCM5714 10/100/1000baseT PHY, rev. 0
    bge1 at pci7 dev 4 function 1 "Broadcom BCM5714" rev 0xa3, BCM5715 A3 (0x9003): ivec 0x796, address 00:14:4f:70:b4:a3
    brgphy1 at bge1 phy 1: BCM5714 10/100/1000baseT PHY, rev. 0
    ppb7 at pci7 dev 8 function 0 "ServerWorks HT-1000 PCIX" rev 0xb4
    pci8 at ppb7 bus 10
    ppb8 at pci1 dev 10 function 0 "PLX 8532 PCIE" rev 0xba
    pci9 at ppb8 bus 11
    ppb9 at pci9 dev 0 function 0 "ServerWorks PCIE-PCIX" rev 0xb5
    pci10 at ppb9 bus 12
    bge2 at pci10 dev 4 function 0 "Broadcom BCM5714" rev 0xa3, BCM5715 A3 (0x9003): ivec 0x796, address 00:14:4f:70:b4:a4
    brgphy2 at bge2 phy 1: BCM5714 10/100/1000baseT PHY, rev. 0
    bge3 at pci10 dev 4 function 1 "Broadcom BCM5714" rev 0xa3, BCM5715 A3 (0x9003): ivec 0x797, address 00:14:4f:70:b4:a5
    brgphy3 at bge3 phy 1: BCM5714 10/100/1000baseT PHY, rev. 0
    ppb10 at pci10 dev 8 function 0 "ServerWorks HT-1000 PCIX" rev 0xb4
    pci11 at ppb10 bus 13
    mpi0 at pci11 dev 1 function 0 "Symbios Logic SAS1064" rev 0x02: ivec 0x78f
    scsibus0 at mpi0: 63 targets
    sd0 at scsibus0 targ 0 lun 0: <FUJITSU, MAY2073RCSUN72G, 0501> SCSI2 0/direct fixed
    sd0: 70007MB, 14100 cyl, 24 head, 423 sec, 512 bytes/sec, 143374738 sec total
    sd1 at scsibus0 targ 1 lun 0: <FUJITSU, MAY2073RCSUN72G, 0501> SCSI2 0/direct fixed
    sd1: 70007MB, 14100 cyl, 24 head, 423 sec, 512 bytes/sec, 143374738 sec total
    pyro1 at mainbus0: "Fire", rev 3, ign 7c0, bus B 2 to 4
    pyro1: dvma map c0000000-ffffffff, iotdb 209e46000-209f46000
    pci12 at pyro1
    ppb11 at pci12 dev 0 function 0 "Intel 41210 PCIE-PCIX" rev 0x09
    pci13 at ppb11 bus 3
    ppb12 at pci12 dev 0 function 2 "Intel 41210 PCIE-PCIX" rev 0x09
    pci14 at ppb12 bus 4
    ebus1 at mainbus0: ign 7c0
    "flashprom" at ebus1 addr 0-1fffff not configured
    com0 at ebus1 addr 80-87 ipl 8: ns16550a, 16 byte fifo
    com0: console
    com1 at ebus1 addr 40-47 ipl 9: ns16550a, 16 byte fifo
    "rmc-comm" at ebus1 addr 0-7 ipl 10 not configured
    "gpio" at ebus1 addr c0-c0 not configured
    "env-monitor" at ebus1 addr 0-80 not configured
    power0 at ebus1 addr 40-c1 ipl 3
    i2c at mainbus0 not configured
    pcons at mainbus0 not configured
    No counter-timer -- using %tick at 1504MHz as system clock.
    uhub3 at uhub2 port 1
    uhub3: Atmel UHB124 hub, rev 1.10/3.00, addr 2
    uhub3: 4 ports with 4 removable, self powered
    root on sd1a
    rootdev=0x710 rrootdev=0x1110 rawdev=0x1112

  2. By Bret Lambert (tbert) bret.lambert@gmail.com on

    One step closer to world domination!

    *rubs hands together maniacally*

    Comments
    1. By Ray Percival (sng) on http://undeadly.org/cgi?action=search&sort=time&query=sng

      > One step closer to world domination!
      >
      > *rubs hands together maniacally*

      Wrong OS. World domination is a hell of a lot of work and takes away from drinking good beer and kissing pretty girls. Boxes that "just work" and are sane by default are more than enough for our simple needs. :)

      Having said that. Great news.

Credits

Copyright © - Daniel Hartmeier. All rights reserved. Articles and comments are copyright their respective authors, submission implies license to publish on this web site. Contents of the archive prior to as well as images and HTML templates were copied from the fabulous original deadly.org with Jose's and Jim's kind permission. This journal runs as CGI with httpd(8) on OpenBSD, the source code is BSD licensed. undeadly \Un*dead"ly\, a. Not subject to death; immortal. [Obs.]