Port-sparc archive

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

Re: Is the kernel for sun4m SMP capable ?



On 1/20/26 20:34, Samuel Furtaw wrote:
Sure is - just not the one that ships with the default install. You’ll either need to drop in a pre-built GENERIC.MP kernel, or compile the kernel with the multiprocessor support enabled:
—> https://www.netbsd.org/ports/sparc/faq.html#smp-cpus

I will say - on the SS20 it makes quite a performance difference.


Thank you. It is silly to run a multi-cpu machine in non-SMP mode.
I can only think of some kernel dev test reasons to do so. This now
confirms why the install process ( and after effects ) were fishy
looking :

------------ seen during miniroot install process ---------



Available Memory 0x20000000
Allocating SRMMU Context Table
Context Table allocated, Available Memory 0x1ffc0000
Setting SRMMU Context Register
Context Table allocated, Available Memory 0x1ffc0000
Setting SRMMU Context Table Pointer Register
RAMsize allocated, Available Memory 0x1ffb0000
Allocating SRMMU Level 1 Table
Level 1 Table allocated, Available Memory 0x1ffafc00
Mapping RAM @ 0xffef0000
RAM mapped, Available Memory 0x1ffafa00
Mapping ROM @ 0xffd00000
ROM mapped, Available Memory 0x1ffaf800
Mapping ROM @ 0x00000000
ROM mapped, Available Memory 0x1ffaf000
ttya initialized
Cpu #0 TI,TMS390Z55
Cpu #1 Nothing there
Cpu #2 TI,TMS390Z55
Cpu #3 Nothing there
Probing Memory Bank #0 64 Megabytes of DRAM
Probing Memory Bank #1 64 Megabytes of DRAM
Probing Memory Bank #2 64 Megabytes of DRAM
Probing Memory Bank #3 64 Megabytes of DRAM
Probing Memory Bank #4 64 Megabytes of DRAM
Probing Memory Bank #5 64 Megabytes of DRAM
Probing Memory Bank #6 64 Megabytes of DRAM
Probing Memory Bank #7 64 Megabytes of DRAM
Probing /iommu@f,e0000000/sbus@f,e0001000 at f,0 espdma esp sd st ledma le SUNW,bpp
Probing /iommu@f,e0000000/sbus@f,e0001000 at e,0  SUNW,DBRIe
Probing /iommu@f,e0000000/sbus@f,e0001000 at 0,0  dma esp sd st lebuffer le
Probing /iommu@f,e0000000/sbus@f,e0001000 at 1,0  qec be
Probing /iommu@f,e0000000/sbus@f,e0001000 at 2,0  cgsix
Probing /iommu@f,e0000000/sbus@f,e0001000 at 3,0  SUNW,hme
SPARCstation 20 MP (2 X 390Z55), No Keyboard
ROM Rev. 2.19, 512 MB memory installed, Serial #48879.
Ethernet address 8:0:20:0:be:ef, Host ID: 7200beef.
.
.
. then at the okay OK prompt the miniroot boots looking like :


Rebooting with command: /iommu/sbus/espdma@f,400000/esp@f,800000/sd@3,0:b
Boot device: /iommu/sbus/espdma@f,400000/esp@f,800000/sd@3,0:b File and args: >> NetBSD/sparc Secondary Boot, Revision 1.15 (Mon Dec 16 13:08:11 UTC 2024)
Booting netbsd
4895692+130644 [294416+279556]=0x557970
OBP version 3, revision 2.19 (plugin rev 2)
[   1.0000000] Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
[ 1.0000000] 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, [ 1.0000000] 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023,
[   1.0000000]     2024
[   1.0000000]     The NetBSD Foundation, Inc.  All rights reserved.
[   1.0000000] Copyright (c) 1982, 1986, 1989, 1991, 1993
[ 1.0000000] The Regents of the University of California. All rights reserved.

[   1.0000000] NetBSD 10.1 (GENERIC) #0: Mon Dec 16 13:08:11 UTC 2024
[ 1.0000000] mkrepro%mkrepro.NetBSD.org@localhost:/usr/src/sys/arch/sparc/compile/GENERIC
[   1.0000000] total memory = 511 MB
[   1.0000000] avail memory = 495 MB
[ 1.0000000] bootpath: /iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f,800000/sd@3,0:b
[   1.0000000] mainbus0 (root): SUNW,SPARCstation-20: hostid 7200beef
[   1.0000000] cpu0 at mainbus0: mid 8: TI,TMS390Z55 @ 60 MHz, on-chip FPU
[ 1.0000000] cpu0: physical 20K instruction (64 b/l), 16K data (32 b/l), 1024K external (32 b/l): cache enabled
[   1.0000000] cpu at mainbus0 not configured
[   1.0000000] sx0 at mainbus0 ioaddr 0x80000000
[   1.0000000] sx0: architecture rev. 3 chip rev. 3
[   1.0000000] obio0 at mainbus0
[   1.0000000] clock0 at obio0 slot 0 offset 0x200000: mk48t08
[ 1.0000000] timer0 at obio0 slot 0 offset 0x300000: delay constant 28, frequency = 2000000 Hz
[   1.0000030] zs0 at obio0 slot 0 offset 0x100000 level 12 softpri 6
[   1.0000030] zstty0 at zs0 channel 0 (console i/o)
[   1.0000030] zstty1 at zs0 channel 1
[   1.0000030] zs1 at obio0 slot 0 offset 0x0 level 12 softpri 6
[   1.0000030] zstty4 at zs1 channel 0
[   1.0000030] kbd0 at zstty4
[   1.0000030] zstty5 at zs1 channel 1
[   1.0000030] ms0 at zstty5
[   1.0000030] wsmouse0 at ms0 mux 0
[ 1.0000030] fdc0 at obio0 slot 0 offset 0x700000 level 11 softpri 4: chip 82077
[   1.0000030] fd0 at fdc0 drive 0: 1.44MB 80 cyl, 2 head, 18 sec
[   1.0000030] auxreg0 at obio0 slot 0 offset 0x800000
[   1.0000030] power0 at obio0 slot 0 offset 0xa01000 level 2
[ 1.0000030] iommu0 at mainbus0 ioaddr 0xe0000000: version 0x3/0x1, page-size 4096, range 64MB
[   1.0000030] sbus0 at iommu0: clock = 25 MHz
[   1.0000030] dma0 at sbus0 slot 15 offset 0x400000: DMA rev 2
[ 1.0000030] esp0 at dma0 slot 15 offset 0x800000 level 4: ESP200, 40MHz, SCSI ID 7
[   1.0000030] scsibus0 at esp0: 8 targets, 8 luns per target
[   1.0000030] ledma0 at sbus0 slot 15 offset 0x400010: DMA rev 2
[ 1.0000030] le0 at ledma0 slot 15 offset 0xc00000 level 6: address 08:00:20:00:be:ef
[   1.0000030] le0: 8 receive buffers, 2 transmit buffers
[ 1.0000030] bpp0 at sbus0 slot 15 offset 0x4800000 level 2 (ipl 3): DMA rev 2
[   1.0000030] dbri0 at sbus0 slot 14 offset 0x10000 level 9: rev e
[   1.0000030] dma1 at sbus0 slot 0 offset 0x81000: DMA rev esc
[ 1.0000030] esp1 at dma1 slot 0 offset 0x80000 level 3 (ipl 5): ESP200, 40MHz, SCSI ID 7
[   1.0000030] scsibus1 at esp1: 8 targets, 8 luns per target
[   1.0000030] lebuffer0 at sbus0 slot 0 offset 0x40000: 128K memory
[ 1.0000030] le1 at lebuffer0 slot 0 offset 0x60000 level 4 (ipl 7): address 08:00:20:00:be:ef
[   1.0000030] le1: 64 receive buffers, 16 transmit buffers
[   1.0000030] qec0 at sbus0 slot 1 offset 0x20000: 128K memory
[ 1.0000030] be0 at qec0 slot 0 offset 0x0 level 4 (ipl 7): rev 1, address 08:00:20:00:be:ef
[   1.0000030] on-board transceiver at be0: 10baseT, 100baseTX, auto
[ 1.0000030] cgsix0 at sbus0 slot 2 offset 0x0 level 9: SUNW,501-1672, 1152 x 900, rev 6
[   1.0000030] cgsix0: attached to /dev/fb0
[   1.0000030] cgsix0: framebuffer size: 1 MB
[   1.0000030] wsdisplay1 at cgsix0 kbdmux 1
[ 1.0000030] hme0 at sbus0 slot 3 offset 0x8c00000 level 4 (ipl 7): Sun Happy Meal Ethernet (SUNW,hme)
[   1.0000030] hme0: Ethernet address 08:00:20:00:be:ef
[   1.0000030] nsphy0 at hme0 phy 1: DP83840 10/100 media interface, rev. 0
[   1.0000030] nsphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
[   1.0000030] eccmemctl0 at mainbus0 ioaddr 0x0: version 0x0/0x2
[   1.0000030] WARNING: system needs entropy for security; see entropy(7)
[   1.0000030] scsibus0: waiting 2 seconds for devices to settle...
[   1.4519540] scsibus1: waiting 2 seconds for devices to settle...
[   1.4637570] wskbd0 at kbd0 mux 1
[ 4.0385035] sd0 at scsibus0 target 1 lun 0: <HITACHI, DK32EJ36NSUN36G, PQ08> disk fixed [ 4.0785225] sd0: 34732 MB, 24622 cyl, 27 head, 107 sec, 512 bytes/sect x 71132959 sectors [ 4.1085220] sd0: sync (100.00ns offset 15), 8-bit (10.000MB/s) transfers, tagged queueing
[   4.4785260] kbd0: reset failed
[ 4.5985950] sd1 at scsibus0 target 3 lun 0: <FUJITSU, MAU3073NCSUN72G, 0802> disk fixed [ 4.6285535] sd1: 70007 MB, 14100 cyl, 24 head, 423 sec, 512 bytes/sect x 143374738 sectors [ 4.6549960] sd1: sync (100.00ns offset 15), 8-bit (10.000MB/s) transfers, tagged queueing
[   5.0985580] entropy: best effort
[   9.3287680] swwdog0: software watchdog initialized
[   9.3691765] dbri0: speakerbox detected
[   9.3887970] dbri0: cs4215 rev E found at offset 8
[   9.3887970] audio0 at dbri0: playback, capture, full duplex
[ 9.4033685] audio0: slinear_be:16 2ch 48000Hz, blk 7680 bytes (40ms) for playback [ 9.4033685] audio0: slinear_be:16 2ch 48000Hz, blk 7680 bytes (40ms) for recording
[   9.4113935] root on sd1b dumps on sd1b
[   9.4387875] root file system type: ffs
[   9.4501090] kern.module.path=/stand/sparc/10.1/modules
erase ^H, werase ^W, kill ^U, intr ^C
Terminal type? [vt100]
Erase is backspace.

This installer now uses the new `sysinst' installer tool by default.  To
use the old install or upgrade shell scripts instead, enter the options
(OI) for Old Install or (OU) for Old Upgrade.

The script-based installers may be removed in a future release.

(I)nstall/Upgrade, (H)alt or (S)hell?


-----------------------------------------------------------



However if I boot Solaris 8 ( fully patched etc ) then I can see :


europa# cat /etc/release
                       Solaris 8 2/04 s28s_hw4wos_05a SPARC
           Copyright 2004 Sun Microsystems, Inc.  All Rights Reserved.
                            Assembled 08 January 2004
europa#
europa# psrinfo -v
Status of virtual processor 0 as of: 01/19/26 03:18:04
  on-line since 09/05/25 11:12:08.
  The sparc processor operates at 60 MHz,
        and has a sparc floating point processor.
Status of virtual processor 2 as of: 01/19/26 03:18:04
  on-line since 09/05/25 11:12:12.
  The sparc processor operates at 60 MHz,
        and has a sparc floating point processor.
europa#
europa#
europa# /export/home/dclarke/fpversion
 A SPARC-based CPU is available.
 Mbus module's clock rate appears to be approximately 59.7 MHz.
 Kernel says Mbus module's clock rate is 60.0 MHz.
 Kernel says main memory's clock rate is 50.0 MHz.

 Sun-4 floating-point controller version 0 found.
 A TI TMS390Z50 SuperSPARC chip (FAB 3.x or later) is available.
 A TI TMS390Z55 SuperCache appears to be present.
 FPU's frequency appears to be approximately 60.9 MHz.

 Use "-xtarget=ss20/61" code-generation option.

 Hostid = 0x7200BEEF.
europa#


I have two SS20 units here and more parts than reasonable. I may leave
this 60MHz unit running Solaris 8 or perhaps strip out the CPU's and
replace them with the 200MHz parts. Trying to compile a new kernel is
a good idea but I would rather use a faster CPU for that task. Sadly
the 125MHz hyperSPARC Module is the best one may do ( safely ) with an
OpenBOOT PROM ver 2.19.

I will see what I can get running.


--
--
Dennis Clarke
RISC-V/SPARC/PPC/ARM/CISC
UNIX and Linux spoken


Home | Main Index | Thread Index | Old Index