Port-sgimips archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Back from the dead, with updates!



Hello,

Some things that happened to the sgimips port recently:
- it's usable again, thanks to skrll@ fixing a bunch of cache handling bugs months ago
- we can run n32 kernels and userland on CPUs that support it
- sgimips' own, kinda dodgy bus_space and bus_dma have been replaced
  with common code from arch/mips
- as a result of the above, on O2 running an n32 kernel we can now
  access the whole PCI bus instead of just two 32MB windows. Tested
  with a voodoo3 which has two 32MB memory apertures.

That said, there is no reason not to use the whole RAM on machines with
more than 256MB, if necessary limit DMA to the KSEG*-accessible part,
just like I did on CI20. Unfortunately my O2 only has 256MB, so I can't
test this.

Here's the horrible proof:

Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
    2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015
    The NetBSD Foundation, Inc.  All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
    The Regents of the University of California.  All rights reserved.

NetBSD 7.99.21 (O2_64) #19: Wed Sep 23 19:22:04 EDT 2015
        ml@blackbush:/home/build/obj_sgimips64/sys/arch/sgimips/compile/O2_64
total memory = 256 MB
(6848 KB reserved for ARCS)
avail memory = 240 MB
timecounter: Timecounters tick every 10.000 msec
mainbus0 (root): SGI-IP32 [SGI, 4], 1 processor
cpu0 at mainbus0: MIPS R5000 CPU (0x2321) Rev. 2.1 with built-in FPU Rev. 1.0
cpu0: 48 TLB entries, 1TB (40-bit) VAs, 64GB (36-bit) PAs, 16MB max page size
cpu0: 32KB/32B 2-way set-associative L1 instruction cache
cpu0: 32KB/32B 2-way set-associative write-back L1 data cache
cpu0: 1024KB/32B direct-mapped write-through L2 unified cache
crime0 at mainbus0 addr 0x14000000: rev 1.1 (CRIME_ID: 161)
crmfb0 at mainbus0 addr 0x16000000: SGI CRIME Graphics Display Engine
crmfb0: initial resolution 1280x1024
crmfb0: using 1280x1024
crmfb0: allocated 5242880 byte fb @ 0x80060000 (0xa1400000)
wsdisplay0 at crmfb0 kbdmux 1: console (default, vt100 emulation)
wsmux1: connecting to wsdisplay0
mace0 at mainbus0 addr 0x1f000000
lpt0 at mace0 offset 0x380000 intr 4 intrmask 0xf0000
com0 at mace0 offset 0x390000 intr 4 intrmask 0x3f00000: ns16550a, working fifo
com1 at mace0 offset 0x398000 intr 4 intrmask 0xfc000000: ns16550a, working fifo
macekbc0 at mace0 offset 0x320000 intr 5 intrmask 0x0: PS2 controller
pckbd0 at macekbc0 (kbd slot)
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pms0 at macekbc0 (aux slot)
wsmouse0 at pms0 mux 0
mcclock0 at mace0 offset 0x3a0000 intrmask 0x0
mec0 at mace0 offset 0x280000 intr 3 intrmask 0x0: MAC-110 Ethernet, rev 1
mec0: Ethernet address 08:00:69:0c:19:d4
nsphy0 at mec0 phy 8: DP83840 10/100 media interface, rev. 1
nsphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
mavb0 at mace0 offset 0x300000 intr 6 intrmask 0x0: AD1843 rev 1
audio0 at mavb0: full duplex, playback, capture, independent
macepci0 at mace0 offset 0x80000 intr 7 intrmask 0x0: rev 1
pci0 at macepci0 bus 0
pci0: i/o space, memory space enabled, rd/line, rd/mult, wr/inv ok
ahc0 at pci0 dev 1 function 0: Adaptec aic7880 Ultra SCSI adapter
ahc0: interrupting at crime interrupt 8
ahc0: Using left over BIOS settings
ahc0: Host Adapter has no SEEPROM. Using default SCSI target parameters
ahc0: aic7880: Ultra Wide Channel A, SCSI Id=0, 16/253 SCBs
scsibus0 at ahc0: 16 targets, 8 luns per target
ahc1 at pci0 dev 2 function 0: Adaptec aic7880 Ultra SCSI adapter
ahc1: interrupting at crime interrupt 9
ahc1: Using left over BIOS settings
ahc1: Host Adapter has no SEEPROM. Using default SCSI target parameters
ahc1: aic7880: Ultra Wide Channel A, SCSI Id=0, 16/253 SCBs
scsibus1 at ahc1: 16 targets, 8 luns per target
voodoofb0 at pci0 dev 3 function 0: vendor 121a product 0005 (rev. 0x01)
voodoofb0: initial resolution 1024x768, 8 bit
voodoofb0: switched to 1440x900, 8 bit
voodoofb0: 32 MB aperture at 0x82000000, 32 MB registers at 0x80000000
wsdisplay1 at voodoofb0 kbdmux 1
wsmux1: connecting to wsdisplay1
drm at voodoofb0 not configured
timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0
timecounter: Timecounter "mips3_cp0_counter" frequency 100234790 Hz quality 100
scsibus0: waiting 2 seconds for devices to settle...
scsibus1: waiting 2 seconds for devices to settle...
sd0 at scsibus0 target 1 lun 0: <FUJITSU, M2954ESP SUN4.2G, 2848> disk fixed
sd0: 4094 MB, 3882 cyl, 16 head, 135 sec, 512 bytes/sect x 8385121 sectors
sd0: sync (50.00ns offset 8), 16-bit (40.000MB/s) transfers, tagged queueing
sd1 at scsibus0 target 2 lun 0: <IBM-PSG, ST318404LC    !#, 3283> disk fixed
sd1: 17357 MB, 14384 cyl, 6 head, 411 sec, 512 bytes/sect x 35548320 sectors
sd1: sync (50.00ns offset 8), 16-bit (40.000MB/s) transfers, tagged queueing
cd0 at scsibus0 target 4 lun 0: <TOSHIBA, CD-ROM XM-5401TA, 3605> cdrom removable
cd0: sync (236.00ns offset 15), 8-bit (4.237MB/s) transfers
boot device: mec0
root on sd0a dumps on sd0b
kern.module.path=/stand/sgimips/7.99.21/modules
pid 1(init): ABI set to N32 (e_flags=0x20000027)
wsdisplay0: screen 1 added (default, vt100 emulation)
wsdisplay0: screen 2 added (default, vt100 emulation)
wsdisplay0: screen 3 added (default, vt100 emulation)
wsdisplay0: screen 4 added (default, vt100 emulation)
...
~> pcictl pci0 dump -d 1
PCI configuration registers:
  Common header:
    0x00: 0x80789004 0x02800147 0x01000000 0x00004008

    Vendor Name: Adaptec (0x9004)
    Device Name: AIC-7880 Ultra (0x8078)
    Command register: 0x0147
      I/O space accesses: on
      Memory space accesses: on
      Bus mastering: on
      Special cycles: off
      MWI transactions: off
      Palette snooping: off
      Parity error checking: on
      Address/data stepping: off
      System error (SERR): on
      Fast back-to-back transactions: off
      Interrupt disable: off
    Status register: 0x0280
      Interrupt status: inactive
      Capability List support: off
      66 MHz capable: off
      User Definable Features (UDF) support: off
      Fast back-to-back capable: on
      Data parity error detected: off
      DEVSEL timing: medium (0x1)
      Slave signaled Target Abort: off
      Master received Target Abort: off
      Master received Master Abort: off
      Asserted System Error (SERR): off
      Parity error detected: off
    Class Name: mass storage (0x01)
    Subclass Name: SCSI (0x00)
    Interface: 0x00
    Revision ID: 0x00
    BIST: 0x00
    Header Type: 0x00 (0x00)
    Latency Timer: 0x40
    Cache Line Size: 32bytes (0x08)

  Type 0 ("normal" device) header:
    0x10: 0x00001001 0x84030000 0x00000000 0x00000000
    0x20: 0x00000000 0x00000000 0x00000000 0x00000000
    0x30: 0x84000000 0x00000000 0x00000000 0x08080100

    Base address register at 0x10
      type: i/o
      base: 0x00001000, not sized
    Base address register at 0x14
      type: 32-bit nonprefetchable memory
      base: 0x84030000, not sized
    Base address register at 0x18
      not implemented(?)
    Base address register at 0x1c
      not implemented(?)
    Base address register at 0x20
      not implemented(?)
    Base address register at 0x24
      not implemented(?)
    Cardbus CIS Pointer: 0x00000000
    Subsystem vendor ID: 0x0000
    Subsystem ID: 0x0000
    Expansion ROM Base Address: 0x84000000
    Reserved @ 0x34: 0x00000000
    Reserved @ 0x38: 0x00000000
    Maximum Latency: 0x08
    Minimum Grant: 0x08
    Interrupt pin: 0x01 (pin A)
    Interrupt line: 0x00

  Device-dependent header:
    0x40: 0x800001a0 0x800001a0 0x00000000 0x00000000
    0x50: 0x00000000 0x00000000 0x00000000 0x00000000
    0x60: 0x00000000 0x00000000 0x00000000 0x00000000
    0x70: 0x00000000 0x00000000 0x00000000 0x00000000
    0x80: 0x00000000 0x00000000 0x00000000 0x00000000
    0x90: 0x00000000 0x00000000 0x00000000 0x00000000
    0xa0: 0x00000000 0x00000000 0x00000000 0x00000000
    0xb0: 0x00000000 0x00000000 0x00000000 0x00000000
    0xc0: 0x00000000 0x00000000 0x00000000 0x00000000
    0xd0: 0x00000000 0x00000000 0x00000000 0x00000000
    0xe0: 0x00000000 0x00000000 0x00000000 0x00000000
    0xf0: 0x00000000 0x00000000 0x00000000 0x00000000

have fun
Michael


Home | Main Index | Thread Index | Old Index