NetBSD Problem Report #52162
From tsutsui@ceres.dti.ne.jp Sat Apr 15 07:04:14 2017
Return-Path: <tsutsui@ceres.dti.ne.jp>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
(Client CN "mail.netbsd.org", Issuer "Postmaster NetBSD.org" (verified OK))
by mollari.NetBSD.org (Postfix) with ESMTPS id 018817A1BC
for <gnats-bugs@gnats.NetBSD.org>; Sat, 15 Apr 2017 07:04:13 +0000 (UTC)
Message-Id: <201704150704.v3F748aM015702@ceres.dti.ne.jp>
Date: Sat, 15 Apr 2017 16:04:08 +0900 (JST)
From: Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
Reply-To: tsutsui@ceres.dti.ne.jp
To: gnats-bugs@NetBSD.org
Cc: tsutsui@ceres.dti.ne.jp
Subject: 712/60 hangs during sti(4) probe
X-Send-Pr-Version: 3.95
>Number: 52162
>Category: port-hppa
>Synopsis: 712/60 hangs during sti(4) probe
>Confidential: no
>Severity: critical
>Priority: medium
>Responsible: port-hppa-maintainer
>State: closed
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Sat Apr 15 07:05:00 +0000 2017
>Closed-Date: Thu Jul 15 02:58:33 +0000 2021
>Last-Modified: Thu Jul 15 02:58:33 +0000 2021
>Originator: Izumi Tsutsui
>Release: NetBSD 7.1
>Organization:
>Environment:
System: NetBSD 7.1 GENERIC with [pullup-7 #1396]
Architecture: hppa
Machine: hppa
>Description:
As noted in PR port-hppa/52129, NetBSD/hppa 7.1 GENERIC kernel (with patch)
hangs during sti(4) probe.
---
syncing disks... done
unmounting file systems...
unmounting done
rebooting...
----------------------------------------------------------------------------
BootRom Version 2.3
Memory Size: 128 MB
----------------------------------------------------------------------------
(c) Copyright 1990-1993, Hewlett-Packard Company.
All rights reserved
Press <ESCAPE> to stop boot sequence.
Selecting a system to boot.
Booting
NetBSD/hppa FFS/LFS Primary Bootstrap
32bit firmware
booting from partition a
filesystem: FFS
looking up boot.hp700
looking up boot
loading boot at 0x22800...done
>> NetBSD/hppa LIF/FFS/LFS Boot, Revision 1.4 (Sun Apr 2 17:49:42 JST 2017)
>> Enter "reset" to reset system.
Boot: [[[dk6a:]netbsd][-a][-c][-d][-s][-v][-q]] :-
9745940+275264+359616 [357216+347597]=0xb47740
Start @ 0x200000 [1=0xc9b000-0xd47740]...
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017
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.1 (GENERIC) #0: Sun Apr 2 18:01:45 JST 2017
tsutsui@mirage:/s/src/sys/arch/hppa/compile/obj.hppa/GENERIC
HP9000/712/60 (Gecko)
real mem = 128 MB (73728 reserved for PROM, 116 MB used by NetBSD)
avail mem = 114 MB
kern.module.path=/stand/hppa/7.1/modules
mainbus0 (root) [flex fff80000]
pdc0 at mainbus0
power0 at mainbus0: DR25
cpu0 at mainbus0 hpa 0xfffbe000 path 8 irq 31: PA7100LC (Hummingbird) rev 6
cpu0: PCXL, PA-RISC 1.1c, lev 1, cat A, 60 MHz clk
cpu0: shadows, 32K/32K D/I caches, 64 shared TLB, 8 shared BTLB
cpu0: PCXL (CMOS-26B) floating point, rev 1
mem0 at mainbus0 hpa 0xfffbf000 path 9: viper rev 0, ctrl 0x0 size 128MB
[hangs here]
---
Disabling sti(4) by userconf(4) makes it boot, at least with serial console.
---
>> NetBSD/hppa LIF/FFS/LFS Boot, Revision 1.4 (Sun Apr 2 17:49:42 JST 2017)
>> Enter "reset" to reset system.
Boot: [[[dk6a:]netbsd][-a][-c][-d][-s][-v][-q]] :- -cs
9745940+275264+359616 [357216+347597]=0xb47740
Start @ 0x200000 [1=0xc9b000-0xd47740]...
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017
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.1 (GENERIC) #0: Sun Apr 2 18:01:45 JST 2017
tsutsui@mirage:/s/src/sys/arch/hppa/compile/obj.hppa/GENERIC
HP9000/712/60 (Gecko)
real mem = 128 MB (73728 reserved for PROM, 116 MB used by NetBSD)
avail mem = 114 MB
kern.module.path=/stand/hppa/7.1/modules
userconf: configure system autoconfiguration:
uc> disable sti
[ 89] sti* disabled
[ 90] sti* disabled
[ 91] sti* disabled
[ 92] sti* disabled
uc> quit
Continuing...
mainbus0 (root) [flex fff80000]
pdc0 at mainbus0
power0 at mainbus0: DR25
cpu0 at mainbus0 hpa 0xfffbe000 path 8 irq 31: PA7100LC (Hummingbird) rev 6
cpu0: PCXL, PA-RISC 1.1c, lev 1, cat A, 60 MHz clk
cpu0: shadows, 32K/32K D/I caches, 64 shared TLB, 8 shared BTLB
cpu0: PCXL (CMOS-26B) floating point, rev 1
mem0 at mainbus0 hpa 0xfffbf000 path 9: viper rev 0, ctrl 0x0 size 128MB
"GIO Graphics" at mainbus0 (type 0xa, sv 0x85) hpa 0xf8000000 path 1 not configured
lasi0 at mainbus0 hpa 0xf0000000 path 2 irq 27: rev 3.0
gsc0 at lasi0
osiop0 at gsc0 hpa 0xf0106000 path 2/0/1 irq 9: NCR53C710 rev 2, 40MHz, SCSI ID 7
scsibus0 at osiop0: 8 targets, 8 luns per target
iee0 at gsc0 hpa 0xf0107000 path 2/0/2 irq 8: Intel 82596CA address 08:00:09:d1:2b:5a
com2 at gsc0 hpa 0xf0105000 path 2/0/4 irq 5: ns16550a, working fifo
com2: console
lpt1 at gsc0 hpa 0xf0102000 path 2/0/6 irq 7
harmony0 at gsc0 hpa 0xf0104000 path 2/0/8 irq 13: rev 23
audio0 at harmony0: full duplex, playback, capture
"floppy controller" at gsc0 (type 0xa, sv 0x83) hpa 0xf010a000 path 2/0/10 not configured
gsckbc0 at gsc0 hpa 0xf0108000 path 2/0/11 irq 26: keyboard
pckbd0 at gsckbc0 (kbd slot)
wskbd0 at pckbd0 mux 1
gsckbc1 at gsc0 hpa 0xf0108100 path 2/0/12: mouse
scsibus0: waiting 2 seconds for devices to settle...
sd0 at scsibus0 target 6 lun 0: <IBM, DORS-32160, HP02> disk fixed
sd0: 2048 MB, 6703 cyl, 5 head, 125 sec, 512 bytes/sect x 4194685 sectors
sd0: sync (100.00ns offset 8), 8-bit (10.000MB/s) transfers
boot device: sd0
root on sd0a dumps on sd0b
root file system type: ffs
Enter pathname of shell or RETURN for /bin/sh:
Terminal type is vt100.
We recommend creating a non-root account and using su(1) for root access.
#
---
GENERIC + DIAGNOSTIC + STIDEBUG kernel shows:
---
>> NetBSD/hppa LIF/FFS/LFS Boot, Revision 1.4 (Sun Apr 2 17:49:42 JST 2017)
>> Enter "reset" to reset system.
Boot: [[[dk6a:]netbsd][-a][-c][-d][-s][-v][-q]] :- netbsd.stidebug
10429732+275264+363712 [359808+350027]=0xb49adc
Start @ 0x200000 [1=0xc9c000-0xd49adc]...
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017
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.1 (STIDEBUG) #0: Sat Apr 15 14:47:46 JST 2017
tsutsui@mirage:/s/src/sys/arch/hppa/compile/obj.hppa/STIDEBUG
HP9000/712/60 (Gecko)
real mem = 128 MB (73728 reserved for PROM, 115 MB used by NetBSD)
avail mem = 113 MB
kern.module.path=/stand/hppa/7.1/modules
mainbus0 (root) [flex fff80000]
pdc0 at mainbus0
power0 at mainbus0: DR25
cpu0 at mainbus0 hpa 0xfffbe000 path 8 irq 31: PA7100LC (Hummingbird) rev 6
cpu0: PCXL, PA-RISC 1.1c, lev 1, cat A, 60 MHz clk
cpu0: shadows, 32K/32K D/I caches, 64 shared TLB, 8 shared BTLB
cpu0: PCXL (CMOS-26B) floating point, rev 1
mem0 at mainbus0 hpa 0xfffbf000 path 9: viper rev 0, ctrl 0x0 size 128MB
sti_sgc_probe: hpa=f8000000, rom=f8000000
[hang here]
---
so it hangs at bus_space_map(9) or bus_space_read_1(9)?
https://nxr.netbsd.org/xref/src/sys/arch/hppa/dev/sti_sgc.c?r=1.1#167
---
rom = sti_sgc_getrom(ca);
DPRINTF(("%s: hpa=%x, rom=%x\n", __func__, (uint)ca->ca_hpa,
(uint)rom));
/* if it does not map, probably part of the lasi space */
if ((rv = bus_space_map(ca->ca_iot, rom, STI_ROMSIZE, 0, &romh))) {
DPRINTF(("%s: can't map rom space (%d)\n", __func__, rv));
if ((rom & HPPA_IOBEGIN) == HPPA_IOBEGIN) {
romh = rom;
romunmapped++;
} else {
/* in this case nobody has no freaking idea */
return 0;
}
}
devtype = bus_space_read_1(ca->ca_iot, romh, 3);
DPRINTF(("%s: devtype=%d\n", __func__, devtype));
rv = 1;
---
>How-To-Repeat:
Boot patched GENERIC kernel on 712/60.
>Fix:
No idea.
Something special on serial console settings?
>Release-Note:
>Audit-Trail:
From: Felix Deichmann <m4j0rd0m0@gmail.com>
To: gnats-bugs@NetBSD.org
Cc:
Subject: Re: port-hppa/52162
Date: Sun, 13 Aug 2017 19:44:05 +0200
I see the same problem also on my 712/60 with NetBSD-8 (8.0_BETA) and HEAD.
State-Changed-From-To: open->feedback
State-Changed-By: skrll@NetBSD.org
State-Changed-When: Sun, 07 Mar 2021 10:34:39 +0000
State-Changed-Why:
Does this still happen with HEAD?
From: Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
To: gnats-bugs@netbsd.org
Cc: skrll@NetBSD.org, tsutsui@ceres.dti.ne.jp
Subject: Re: port-hppa/52162 (712/60 hangs during sti(4) probe)
Date: Sat, 20 Mar 2021 17:20:43 +0900
> Synopsis: 712/60 hangs during sti(4) probe
:
> Does this still happen with HEAD?
9.1 still the same problem (freeze on probing sti(4)).
I'll check HEAD after 9.1 upgrade is complete.
---
----------------------------------------------------------------------------
BootRom Version 2.3
Memory Size: 128 MB
----------------------------------------------------------------------------
(c) Copyright 1990-1993, Hewlett-Packard Company.
All rights reserved
Press <ESCAPE> to stop boot sequence.
Selecting a system to boot.
----------------------------------------------------------------------------
Command Description
------- -----------
Auto [boot|search] [on|off] Display or set auto flag
Boot [pri|alt|scsi.addr] [isl] Boot from primary, alternate or SCSI
Boot lan[.lan_addr] [install] [isl] Boot from LAN
Chassis [on|off] Enable chassis codes
Diagnostic [on|off] Enable/disable diagnostic boot mode
Fastboot [on|off] Display or set fast boot flag
Help Display the command menu
Information Display system information
LanAddress Display LAN station addresses
Monitor [type] Select monitor type
Path [pri|alt] [lan.id|SCSI.addr] Change boot path
Pim [hpmc|toc|lpmc] Display PIM info
Search [ipl] [scsi|lan [install]] Display potential boot devices
Secure [on|off] Display or set security mode
----------------------------------------------------------------------------
BOOT_ADMIN> boot lan
Booting
>> NetBSD/hppa LIF/FFS/LFS Boot, Revision 1.4 (Sun Oct 18 19:24:30 UTC 2020)
>> Enter "reset" to reset system.
Boot: [[[lf0a:]netbsd][-a][-c][-d][-s][-v][-q]] :-
9666144+3841560+344552=0xdfe4b8
Start @ 0x200000 [1=0xffe000-0xffe4b8]...
[ 1.0000000] Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
[ 1.0000000] 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017,
[ 1.0000000] 2018, 2019, 2020 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 9.1 (RAMDISK) #0: Sun Oct 18 19:24:30 UTC 2020
[ 1.0000000] mkrepro@mkrepro.NetBSD.org:/usr/src/sys/arch/hppa/compile/RAMDISK
[ 1.0000000] HP9000/712/60 (Gecko)
[ 1.0000000] real mem = 128 MB (73728 reserved for PROM, 113 MB used by NetBSD)
[ 1.0000000] avail mem = 111 MB
[ 1.0000000] mainbus0 (root) [flex fff80000]
[ 1.0000000] pdc0 at mainbus0
[ 1.0000000] power0 at mainbus0: DR25
[ 1.0000000] cpu0 at mainbus0 hpa 0xfffbe000 path 8 irq 31: PA7100LC (Hummingbird) rev 6
[ 1.0000000] cpu0: PCXL, PA-RISC 1.1c, lev 1, cat A, 60 MHz clk
[ 1.0000000] cpu0: shadows, 32K/32K D/I caches, 64 shared TLB, 8 shared BTLB
[ 1.0000000] cpu0: PCXL (CMOS-26B) floating point, rev 1
[ 1.0000000] mem0 at mainbus0 hpa 0xfffbf000 path 9: viper rev 0, ctrl 0x40400102<eisa_prf> size 128MB
---
[power-cycle here]
---
----------------------------------------------------------------------------
BootRom Version 2.3
Memory Size: 128 MB
----------------------------------------------------------------------------
(c) Copyright 1990-1993, Hewlett-Packard Company.
All rights reserved
Press <ESCAPE> to stop boot sequence.
Selecting a system to boot.
----------------------------------------------------------------------------
Command Description
------- -----------
Auto [boot|search] [on|off] Display or set auto flag
Boot [pri|alt|scsi.addr] [isl] Boot from primary, alternate or SCSI
Boot lan[.lan_addr] [install] [isl] Boot from LAN
Chassis [on|off] Enable chassis codes
Diagnostic [on|off] Enable/disable diagnostic boot mode
Fastboot [on|off] Display or set fast boot flag
Help Display the command menu
Information Display system information
LanAddress Display LAN station addresses
Monitor [type] Select monitor type
Path [pri|alt] [lan.id|SCSI.addr] Change boot path
Pim [hpmc|toc|lpmc] Display PIM info
Search [ipl] [scsi|lan [install]] Display potential boot devices
Secure [on|off] Display or set security mode
----------------------------------------------------------------------------
BOOT_ADMIN> boot lan
Booting
>> NetBSD/hppa LIF/FFS/LFS Boot, Revision 1.4 (Sun Oct 18 19:24:30 UTC 2020)
>> Enter "reset" to reset system.
Boot: [[[lf0a:]netbsd][-a][-c][-d][-s][-v][-q]] :- -c
9666144+3841560+344552=0xdfe4b8
Start @ 0x200000 [1=0xffe000-0xffe4b8]...
[ 1.0000000] Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
[ 1.0000000] 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017,
[ 1.0000000] 2018, 2019, 2020 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 9.1 (RAMDISK) #0: Sun Oct 18 19:24:30 UTC 2020
[ 1.0000000] mkrepro@mkrepro.NetBSD.org:/usr/src/sys/arch/hppa/compile/RAMDISK
[ 1.0000000] HP9000/712/60 (Gecko)
[ 1.0000000] real mem = 128 MB (73728 reserved for PROM, 113 MB used by NetBSD)
[ 1.0000000] avail mem = 111 MB
[ 1.0000000] userconf: configure system autoconfiguration:
[ 1.0000000] uc> disable sti
[ 1.0000000] [ 93] sti* disabled
[ 1.0000000] [ 94] sti* disabled
[ 1.0000000] [ 95] sti* disabled
[ 1.0000000] [ 96] sti* disabled
[ 1.0000000] uc> quit
[ 1.0000000] Continuing...
[ 1.0000000] mainbus0 (root) [flex fff80000]
[ 1.0000000] pdc0 at mainbus0
[ 1.0000000] power0 at mainbus0: DR25
[ 1.0000000] cpu0 at mainbus0 hpa 0xfffbe000 path 8 irq 31: PA7100LC (Hummingbird) rev 6
[ 1.0000000] cpu0: PCXL, PA-RISC 1.1c, lev 1, cat A, 60 MHz clk
[ 1.0000000] cpu0: shadows, 32K/32K D/I caches, 64 shared TLB, 8 shared BTLB
[ 1.0000000] cpu0: PCXL (CMOS-26B) floating point, rev 1
[ 1.0000000] mem0 at mainbus0 hpa 0xfffbf000 path 9: viper rev 0, ctrl 0x40400102<eisa_prf> size 128MB
[ 1.0000000] "GIO Graphics" at mainbus0 (type 0xa, sv 0x85) hpa 0xf8000000 path 1 not configured
[ 1.0000000] lasi0 at mainbus0 hpa 0xf0000000 path 2 irq 27: rev 3.0
[ 1.0000000] gsc0 at lasi0
[ 1.0000000] osiop0 at gsc0 hpa 0xf0106000 path 2/0/1 irq 9: NCR53C710 rev 2, 40MHz, SCSI ID 7
[ 1.0000000] scsibus0 at osiop0: 8 targets, 8 luns per target
[ 1.0000000] iee0 at gsc0 hpa 0xf0107000 path 2/0/2 irq 8: Intel 82596CA address 08:00:09:d1:2b:5a
[ 1.0000000] com2 at gsc0 hpa 0xf0105000 path 2/0/4 irq 5: ns16550a, working fifo
[ 1.0000000] com2: console
[ 1.0000000] lpt1 at gsc0 hpa 0xf0102000 path 2/0/6 irq 7
[ 1.0000000] harmony0 at gsc0 hpa 0xf0104000 path 2/0/8 irq 13: rev 196
[ 1.0000000] audio0 at harmony0: playback, capture, full duplex
[ 1.0000000] audio0: slinear_be:16 2ch 48000Hz, blk 4096 bytes (21.3ms) for playback
[ 1.0000000] audio0: slinear_be:16 2ch 48000Hz, blk 4096 bytes (21.3ms) for recording
[ 1.0000000] spkr0 at audio0: PC Speaker (synthesized)
[ 1.0000000] wsbell at spkr0 not configured
[ 1.0000000] "floppy controller" at gsc0 (type 0xa, sv 0x83) hpa 0xf010a000 path 2/0/10 not configured
[ 1.0000000] gsckbc0 at gsc0 hpa 0xf0108000 path 2/0/11 irq 26: keyboard
[ 1.0000000] gsckbc1 at gsc0 hpa 0xf0108100 path 2/0/12: mouse
[ 1.0000140] scsibus0: waiting 2 seconds for devices to settle...
[ 5.0423017] sd0 at scsibus0 target 6 lun 0: <IBM, DORS-32160, HP02> disk fixed
[ 5.2985766] sd0: 2048 MB, 6703 cyl, 5 head, 125 sec, 512 bytes/sect x 4194685 sectors
[ 5.4108648] sd0: sync (100.00ns offset 8), 8-bit (10.000MB/s) transfers
[ 5.8106798] boot device: iee0
[ 5.8459129] root on md0a dumps on md0b
[ 5.8889448] root file system type: ffs
[ 5.9411006] kern.module.path=/stand/hppa/9.1/modules
erase ^?, werase ^W, kill ^U, intr ^C, status ^T
NetBSD/hppa 9.1
This menu-driven tool is designed to help you install NetBSD to a hard disk,
or upgrade an existing NetBSD system, with a minimum of work.
In the following menus type the reference letter (a, b, c, ...) to select an
item, or type CTRL+N/CTRL+P to select the next/previous item.
The arrow keys and Page-up/Page-down may also work.
Activate the current selection from the menu by typing the enter key.
---
Izumi Tsutsui
From: Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
To: gnats-bugs@netbsd.org
Cc: skrll@NetBSD.org, tsutsui@ceres.dti.ne.jp
Subject: Re: port-hppa/52162 (712/60 hangs during sti(4) probe)
Date: Sat, 20 Mar 2021 18:17:54 +0900
> I'll check HEAD after 9.1 upgrade is complete.
netinstall.lif from
https://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/202103192210Z/hppa/installation/
still doesn't work:
---
----------------------------------------------------------------------------
BootRom Version 2.3
Memory Size: 128 MB
----------------------------------------------------------------------------
(c) Copyright 1990-1993, Hewlett-Packard Company.
All rights reserved
Press <ESCAPE> to stop boot sequence.
Selecting a system to boot.
----------------------------------------------------------------------------
Command Description
------- -----------
Auto [boot|search] [on|off] Display or set auto flag
Boot [pri|alt|scsi.addr] [isl] Boot from primary, alternate or SCSI
Boot lan[.lan_addr] [install] [isl] Boot from LAN
Chassis [on|off] Enable chassis codes
Diagnostic [on|off] Enable/disable diagnostic boot mode
Fastboot [on|off] Display or set fast boot flag
Help Display the command menu
Information Display system information
LanAddress Display LAN station addresses
Monitor [type] Select monitor type
Path [pri|alt] [lan.id|SCSI.addr] Change boot path
Pim [hpmc|toc|lpmc] Display PIM info
Search [ipl] [scsi|lan [install]] Display potential boot devices
Secure [on|off] Display or set security mode
----------------------------------------------------------------------------
BOOT_ADMIN> boot lan
Booting
>> NetBSD/hppa LIF/FFS/LFS Boot, Revision 1.4 (Fri Mar 19 18:17:46 UTC 2021)
>> Enter "reset" to reset system.
Boot: [[[lf0a:]netbsd][-a][-c][-d][-s][-v][-q]] :-
10340468+3432264+344248=0xd9b3e0
Start @ 0x200000 [1=0xf9a000-0xf9a3e0]...
[ 1.0000000] Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
[ 1.0000000] 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017,
[ 1.0000000] 2018, 2019, 2020, 2021 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 9.99.81 (RAMDISK) #0: Fri Mar 19 18:17:46 UTC 2021
[ 1.0000000] mkrepro@mkrepro.NetBSD.org:/usr/src/sys/arch/hppa/compile/RAMDISK
[ 1.0000000] HP9000/712/60 (Gecko)
[ 1.0000000] real mem = 128 MB (73728 reserved for PROM, 113 MB used by NetBSD)
[ 1.0000000] avail mem = 110 MB
[ 1.0000000] mainbus0 (root) [flex fff80000]
[ 1.0000000] pdc0 at mainbus0
[ 1.0000000] power0 at mainbus0: DR25
[ 1.0000000] cpu0 at mainbus0 hpa 0xfffbe000 path 8 irq 31: PA7100LC (Hummingbird) rev 6
[ 1.0000000] cpu0: PCXL, PA-RISC 1.1c, lev 1, cat A, 60 MHz clk
[ 1.0000000] cpu0: shadows, 32K/32K D/I caches, 64 shared TLB, 8 shared BTLB
[ 1.0000000] cpu0: PCXL (CMOS-26B) floating point, rev 1
[ 1.0000000] mem0 at mainbus0 hpa 0xfffbf000 path 9: viper rev 0, ctrl 0x40400102<eisa_prf> size 128MB
---
Izumi Tsutsui
State-Changed-From-To: feedback->open
State-Changed-By: tsutsui@NetBSD.org
State-Changed-When: Sat, 20 Mar 2021 09:27:31 +0000
State-Changed-Why:
Still happens with HEAD.
From: Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
To: gnats-bugs@netbsd.org
Cc: tsutsui@ceres.dti.ne.jp
Subject: Re: port-hppa/52162 (712/60 hangs during sti(4) probe)
Date: Sun, 21 Mar 2021 03:26:33 +0900
More info:
- stops at the first bus_space_read_1() in sti_sgc_probe():
https://nxr.netbsd.org/xref/src/sys/arch/hppa/dev/sti_sgc.c?r=1.2#179
---
166 /* if it does not map, probably part of the lasi space */
167 if ((rv = bus_space_map(ca->ca_iot, rom, STI_ROMSIZE, 0, &romh))) {
168 DPRINTF(("%s: can't map rom space (%d)\n", __func__, rv));
169
170 if ((rom & HPPA_IOBEGIN) == HPPA_IOBEGIN) {
171 romh = rom;
172 romunmapped++;
173 } else {
174 /* in this case nobody has no freaking idea */
175 return 0;
176 }
177 }
178
=> 179 devtype = bus_space_read_1(ca->ca_iot, romh, 3);
180
181 DPRINTF(("%s: devtype=%d\n", __func__, devtype));
---
- happens even with "temporary local console" by pressign the "Esc" key:
https://www.netbsd.org/ports/hppa/serialconsole-712.html#set_console_location
- OpenBSD/hppa 6.8 just recognizes sti(4) on the same machine:
---
BOOT_ADMIN> boot lan
Booting
>> OpenBSD/hppa BOOT 1.10
boot>
cannot open lf0a:/etc/random.seed: No such file or directory
booting lf0a:/bsd: 2650112+5006336+564224=0xff817c
SPID bits: 0x0, error = -2
pdc_coproc: 0xc0, 0xc0; model d rev 1
Copyright (c) 1982, 1986, 1989, 1991, 1993
The Regents of the University of California. All rights reserved.
Copyright (c) 1995-2020 OpenBSD. All rights reserved. https://www.OpenBSD.org
OpenBSD 6.8 (RAMDISK) #291: Sun Oct 4 18:46:24 MDT 2020
deraadt@hppa.openbsd.org:/usr/src/sys/arch/hppa/compile/RAMDISK
HP 9000/712/60 (Gecko) PA-RISC 1.1c
real mem = 134217728 (128MB)
rsvd mem = 524288 (512KB)
avail mem = 119099392 (113MB)
random: boothowto does not indicate good seed
mainbus0 at root [flex fff80000]
pdc0 at mainbus0
power0 at mainbus0: DR25
cpu0 at mainbus0 offset ffbe000 irq 31: PCXL L1-A 60MHz, FPU PCXL (CMOS-26B) rev 1
cpu0: 32K(32b/l) Icache, 32K(32b/l) wr-back Dcache, 64 coherent TLB, 8 BTLB
mem0 at mainbus0 offset ffbf000: viper rev 0, size 128MB
lasi0 at mainbus0 offset 100000: rev 3.0
gsc0 at lasi0 irq 2
gsckbc0 at gsc0 offset 8100 irq 26
gsckbc1 at gsc0 offset 8000 irq 26
pckbd0 at gsckbc1
wskbd0 at pckbd0 mux 1
"floppy controller" at gsc0 (type a sv 83 mod 1 hv 60) offset a000 not configured
"Advanced audio (ext.)" at gsc0 (type a sv 7b mod 1 hv 60) offset 4000 not configured
"Core Centronics" at gsc0 (type a sv 74 mod 1 hv 60) offset 2000 not configured
com0 at gsc0 offset 5000 irq 5: ns16550a, 16 byte fifo
com0: console
ie0 at gsc0 offset 7000 irq 8: LASI/i82596CA v1.0, address 08:00:09:d1:2b:5a
osiop0 at gsc0 offset 6000 irq 9: NCR53C710 rev 2, 40MHz
scsibus0 at osiop0: 8 targets, initiator 7
osiop0: target 6 now using 8 bit 10 MHz 8 REQ/ACK offset xfers
sd0 at scsibus0 targ 6 lun 0: <IBM, DORS-32160, HP02> serial.IBM_DORS-32160_5U6S0282_
sd0: 2048MB, 512 bytes/sector, 4194685 sectors
sti0 at mainbus0 offset 8000000: rev 8.04;7, ID 0x2B4DED6D40A00499
sti0: HPA208LC1024, 2048x1024 frame buffer, 1024x768x8 display
sti0: 8x16 font type 1, 16 bpc, charset 0-255
wsdisplay0 at sti0 mux 1
wskbd0: connecting to wsdisplay0
wsdisplay0: screen 0 added (std, vt100 emulation)
softraid0 at root
scsibus1 at softraid0: 256 targets
bootpath: 2/0/2.10000.ed140025.22d20fbe.32d3403.c0a81401.c0a81419 class=4098 flags=0 hpa=0xf0107000 spa=0x0 io=0x8f98
root on rd0a swap on rd0b dump on rd0b
WARNING: CHECK AND RESET THE DATE!
---
BTW, a comment in sti_sgc_probe() says:
> /* if it does not map, probably part of the lasi space */
but current NetBSD/hppa seems to attach sti(4) before lasi0:
---
:
mainbus0 (root) [flex fff80000]
pdc0 at mainbus0
power0 at mainbus0: DR25
cpu0 at mainbus0 hpa 0xfffbe000 path 8 irq 31: PA7100LC (Hummingbird) rev 6
cpu0: PCXL, PA-RISC 1.1c, lev 1, cat A, 60 MHz clk
cpu0: shadows, 32K/32K D/I caches, 64 shared TLB, 8 shared BTLB
cpu0: PCXL (CMOS-26B) floating point, rev 1
mem0 at mainbus0 hpa 0xfffbf000 path 9: viper rev 0, ctrl 0x0 size 128MB
"GIO Graphics" at mainbus0 (type 0xa, sv 0x85) hpa 0xf8000000 path 1 not configured
lasi0 at mainbus0 hpa 0xf0000000 path 2 irq 27: rev 3.0
gsc0 at lasi0
:
---
Probably we have some order list to attach mainbus devices?
(Currently we rely on config_found() so MI devices seem attached first)
---
Izumi Tsutsui
From: Nick Hudson <nick.hudson@gmx.co.uk>
To: gnats-bugs@netbsd.org, port-hppa-maintainer@netbsd.org,
gnats-admin@netbsd.org, netbsd-bugs@netbsd.org, tsutsui@ceres.dti.ne.jp
Cc:
Subject: Re: port-hppa/52162 (712/60 hangs during sti(4) probe)
Date: Sun, 21 Mar 2021 08:49:43 +0000
On 20/03/2021 18:30, Izumi Tsutsui wrote:
[snip]
> Probably we have some order list to attach mainbus devices?
> (Currently we rely on config_found() so MI devices seem attached first=
)
>
Please provide boot -v -x output. This should tells us more about how
the devices are reported by the PDC.
You might need to do this without sti @ in your config.
Thanks,
Nick
From: Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
To: nick.hudson@gmx.co.uk
Cc: gnats-bugs@netbsd.org, tsutsui@ceres.dti.ne.jp
Subject: Re: port-hppa/52162 (712/60 hangs during sti(4) probe)
Date: Sun, 21 Mar 2021 18:38:40 +0900
> > Probably we have some order list to attach mainbus devices?
> > (Currently we rely on config_found() so MI devices seem attached first)
> >
>
> Please provide boot -v -x output. This should tells us more about how
> the devices are reported by the PDC.
Attached.
> You might need to do this without sti @ in your config.
Disabled by userconf(4).
---
----------------------------------------------------------------------------
BootRom Version 2.3
Memory Size: 128 MB
----------------------------------------------------------------------------
(c) Copyright 1990-1993, Hewlett-Packard Company.
All rights reserved
Press <ESCAPE> to stop boot sequence.
Selecting a system to boot.
Booting
NetBSD/hppa FFS/LFS Primary Bootstrap
32bit firmware
booting from partition a
filesystem: FFS
looking up boot.hp700
looking up boot
loading boot at 0x22800...done
>> NetBSD/hppa LIF/FFS/LFS Boot, Revision 1.4 (Sun Oct 18 19:24:30 UTC 2020)
>> Enter "reset" to reset system.
Boot: [[[dk6a:]netbsd][-a][-c][-d][-s][-v][-q]] :- -cvxs
9661520+769560+344552 [381760+364826]=0xbc6b08
Start @ 0x200000 [1=0xd10000-0xdc6b08]...
[ 1.0000000] Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
[ 1.0000000] 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017,
[ 1.0000000] 2018, 2019, 2020 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 9.1 (GENERIC) #0: Sun Oct 18 19:24:30 UTC 2020
[ 1.0000000] mkrepro@mkrepro.NetBSD.org:/usr/src/sys/arch/hppa/compile/GENERIC
[ 1.0000000] HP9000/712/60 (Gecko)
[ 1.0000000] real mem = 128 MB (73728 reserved for PROM, 115 MB used by NetBSD)
[ 1.0000000] avail mem = 113 MB
[ 1.0000000] timecounter: Timecounters tick every 10.000 msec
[ 1.0000000] Kernelized RAIDframe activated
[ 1.0000000] userconf: configure system autoconfiguration:
[ 1.0000000] uc> disable sti
[ 1.0000000] [ 93] sti* disabled
[ 1.0000000] [ 94] sti* disabled
[ 1.0000000] [ 95] sti* disabled
[ 1.0000000] [ 96] sti* disabled
[ 1.0000000] uc> quit
[ 1.0000000] Continuing...
[ 1.0000000] mainbus0 (root) [flex fff80000]
[ 1.0000000] pdc0 at mainbus0
[ 1.0000000] pdc0: WARNING: power management not supported
[ 1.0000000] power0 at mainbus0: DR25
[ 1.0000000] power0: WARNING: power management not supported
[ 1.0000000] >> PDC (memmap) device at path 1 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 2 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 2/0/1 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 2/0/2 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 2/0/4 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 2/0/6 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 2/0/8 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 2/0/10 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 2/0/11 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 2/0/12 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 8 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 9 addrs 0
[ 1.0000000] >> Walking bus at HPA 0xfff80000
[ 1.0000000] >> HPA 0xfffbe000[0x0] found by firmware
[ 1.0000000] >> HPA 0xfffbf000[0x0] found by firmware
[ 1.0000000] >> HPA 0xf8000000[0x0]
[ 1.0000000] >> probing: flags 0x0 path 1 type a sv 85
[ 1.0000000] >> HPA 0xf0100000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 2 type b sv 81
[ 1.0000000] >> HPA 0xfffbe000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 8 type 0 sv 4
[ 1.0000000] cpu0 at mainbus0 hpa 0xfffbe000 path 8 irq 31: PA7100LC (Hummingbird) rev 6
[ 1.0000000] cpu0: PCXL, PA-RISC 1.1c, lev 1, cat A, 60 MHz clk
[ 1.0000000] cpu0: shadows, 32K/32K D/I caches, 64 shared TLB, 8 shared BTLB
[ 1.0000000] cpu0: PCXL (CMOS-26B) floating point, rev 1
[ 1.0000000] cpu0: WARNING: power management not supported
[ 1.0000000] >> HPA 0xfffbf000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 9 type 1 sv 9
[ 1.0000000] mem0 at mainbus0 hpa 0xfffbf000 path 9: viper rev 0, ctrl 0x0 size 128MB
[ 1.0000000] mem0: WARNING: power management not supported
[ 1.0000000] >> HPA 0xf8000000[0x0]
[ 1.0000000] >> probing: flags 0x0 path 1 type a sv 85
[ 1.0000000] "GIO Graphics" at mainbus0 (type 0xa, sv 0x85) hpa 0xf8000000 path 1 not configured
[ 1.0000000] >> HPA 0xf0100000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 2 type b sv 81
[ 1.0000000] lasi0 at mainbus0 hpa 0xf0000000 path 2 irq 27: rev 3.0
[ 1.0000000] gsc0 at lasi0
[ 1.0000000] >> HPA 0xf0106000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 2/0/1 type a sv 82
[ 1.0000000] osiop0 at gsc0 hpa 0xf0106000 path 2/0/1 irq 9: NCR53C710 rev 2, 40MHz, SCSI ID 7
[ 1.0000000] scsibus0 at osiop0: 8 targets, 8 luns per target
[ 1.0000000] osiop0: WARNING: power management not supported
[ 1.0000000] >> HPA 0xf0107000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 2/0/2 type a sv 8a
[ 1.0000000] iee0 at gsc0 hpa 0xf0107000 path 2/0/2 irq 8: Intel 82596CA address 08:00:09:d1:2b:5a
[ 1.0000000] iee0: WARNING: power management not supported
[ 1.0000000] >> HPA 0xf0105000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 2/0/4 type a sv 8c
[ 1.0000000] com2 at gsc0 hpa 0xf0105000 path 2/0/4 irq 5: ns16550a, working fifo
[ 1.0000000] com2: console
[ 1.0000000] com2: WARNING: power management not supported
[ 1.0000000] >> HPA 0xf0102000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 2/0/6 type a sv 74
[ 1.0000000] lpt1 at gsc0 hpa 0xf0102000 path 2/0/6 irq 7
[ 1.0000000] lpt1: WARNING: power management not supported
[ 1.0000000] >> HPA 0xf0104000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 2/0/8 type a sv 7b
[ 1.0000000] harmony0 at gsc0 hpa 0xf0104000 path 2/0/8 irq 13: rev 4
[ 1.0000000] audio0 at harmony0: playback, capture, full duplex
[ 1.0000000] audio0: slinear_be:16 2ch 48000Hz, blk 4096 bytes (21.3ms) for playback
[ 1.0000000] audio0: slinear_be:16 2ch 48000Hz, blk 4096 bytes (21.3ms) for recording
[ 1.0000000] spkr0 at audio0: PC Speaker (synthesized)
[ 1.0000000] wsbell at spkr0 not configured
[ 1.0000000] harmony0: WARNING: power management not supported
[ 1.0000000] >> HPA 0xf010a000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 2/0/10 type a sv 83
[ 1.0000000] "floppy controller" at gsc0 (type 0xa, sv 0x83) hpa 0xf010a000 path 2/0/10 not configured
[ 1.0000000] >> HPA 0xf0108000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 2/0/11 type a sv 84
[ 1.0000000] gsckbc0 at gsc0 hpa 0xf0108000 path 2/0/11 irq 26 (master): keyboard
[ 1.0000000] pckbd0 at gsckbc0 (kbd slot)
[ 1.0000000] wskbd0 at pckbd0 mux 1
[ 1.0000000] gsckbc0: WARNING: power management not supported
[ 1.0000000] >> HPA 0xf0108100[0x1]
[ 1.0000000] >> probing: flags 0x0 path 2/0/12 type a sv 84
[ 1.0000000] gsckbc1 at gsc0 hpa 0xf0108100 path 2/0/12 (slave): mouse
[ 1.0000000] pmsprobe: reset error 5
[ 1.0000000] gsckbc1: WARNING: power management not supported
[ 1.0000000] gsc0: WARNING: power management not supported
[ 1.0000000] lasi0: WARNING: power management not supported
[ 1.0000000] mainbus0: WARNING: power management not supported
[ 1.0000000] timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0
[ 1.0000130] timecounter: Timecounter "itimer" frequency 60000000 Hz quality 100
[ 1.0000130] scsibus0: waiting 2 seconds for devices to settle...
[ 5.0373387] sd0 at scsibus0 target 6 lun 0: <IBM, DORS-32160, HP02> disk fixed
[ 5.3037986] sd0: 2048 MB, 6703 cyl, 5 head, 125 sec, 512 bytes/sect x 4194685 sectors
[ 5.4161198] sd0: sync (100.00ns offset 8), 8-bit (10.000MB/s) transfers
[ 5.5248987] crypto: assign driver 0, flags 2
[ 5.5800571] crypto: driver 0 registers alg 1 flags 0 maxoplen 0
[ 5.6518470] crypto: driver 0 registers alg 2 flags 0 maxoplen 0
[ 5.7236662] crypto: driver 0 registers alg 3 flags 0 maxoplen 0
[ 5.7954581] crypto: driver 0 registers alg 4 flags 0 maxoplen 0
[ 5.8672664] crypto: driver 0 registers alg 5 flags 0 maxoplen 0
[ 5.9390747] crypto: driver 0 registers alg 26 flags 0 maxoplen 0
[ 6.0119452] crypto: driver 0 registers alg 27 flags 0 maxoplen 0
[ 6.0848075] crypto: driver 0 registers alg 29 flags 0 maxoplen 0
[ 6.1576833] crypto: driver 0 registers alg 33 flags 0 maxoplen 0
[ 6.2305317] crypto: driver 0 registers alg 17 flags 0 maxoplen 0
[ 6.3033929] crypto: driver 0 registers alg 6 flags 0 maxoplen 0
[ 6.3752024] crypto: driver 0 registers alg 19 flags 0 maxoplen 0
[ 6.4480683] crypto: driver 0 registers alg 7 flags 0 maxoplen 0
[ 6.5198756] crypto: driver 0 registers alg 20 flags 0 maxoplen 0
[ 6.5927511] crypto: driver 0 registers alg 15 flags 0 maxoplen 0
[ 6.6656024] crypto: driver 0 registers alg 24 flags 0 maxoplen 0
[ 6.7384720] crypto: driver 0 registers alg 25 flags 0 maxoplen 0
[ 6.8113299] crypto: driver 0 registers alg 8 flags 0 maxoplen 0
[ 6.8831373] crypto: driver 0 registers alg 21 flags 0 maxoplen 0
[ 6.9560019] crypto: driver 0 registers alg 16 flags 0 maxoplen 0
[ 7.0288828] crypto: driver 0 registers alg 9 flags 0 maxoplen 0
[ 7.1006787] crypto: driver 0 registers alg 10 flags 0 maxoplen 0
[ 7.1735360] crypto: driver 0 registers alg 13 flags 0 maxoplen 0
[ 7.2464007] crypto: driver 0 registers alg 14 flags 0 maxoplen 0
[ 7.3192651] crypto: driver 0 registers alg 28 flags 0 maxoplen 0
[ 7.3921305] crypto: driver 0 registers alg 30 flags 0 maxoplen 0
[ 7.4650121] crypto: driver 0 registers alg 31 flags 0 maxoplen 0
[ 7.5378613] crypto: driver 0 registers alg 32 flags 0 maxoplen 0
[ 7.6107209] crypto: driver 0 registers alg 11 flags 0 maxoplen 0
[ 7.6835882] crypto: driver 0 registers alg 18 flags 0 maxoplen 0
[ 7.7564517] crypto: driver 0 registers alg 23 flags 0 maxoplen 0
[ 7.8293135] crypto: driver 0 registers alg 22 flags 0 maxoplen 0
[ 7.9021961] Searching for RAID components...
[ 8.2462492] boot device: sd0
[ 8.3406904] root on sd0a dumps on sd0b
[ 8.6034908] root file system type: ffs
[ 8.6584082] kern.module.path=/stand/hppa/9.1/modules
Enter pathname of shell or RETURN for /bin/sh:
---
Note OpenBSD/hppa seems probe I/O devices at mainbus in reversed order:
http://bxr.su/OpenBSD/sys/arch/hppa/hppa/autoconf.c?r=1.62#211
---
205 void
206 pdc_scanbus(struct device *self, struct confargs *ca, int maxmod,
207 hppa_hpa_t hpa, int cpu_scan)
208 {
209 int start, end, incr, i;
210
211 /* Scan forwards for CPUs, backwards for everything else. */
212 if (cpu_scan) {
213 start = 0;
214 incr = 1;
215 end = maxmod;
216 } else {
217 start = maxmod - 1;
218 incr = -1;
219 end = -1;
220 }
221
222 for (i = start; i != end; i += incr) {
223 struct confargs nca;
224 int error;
---
But the following kludge to reverse the probe order didn't help so much..
---
Index: hppa/autoconf.c
===================================================================
RCS file: /cvsroot/src/sys/arch/hppa/hppa/autoconf.c,v
retrieving revision 1.4
diff -u -p -d -r1.4 autoconf.c
--- hppa/autoconf.c 15 Apr 2019 20:46:10 -0000 1.4
+++ hppa/autoconf.c 21 Mar 2021 09:32:15 -0000
@@ -157,6 +157,9 @@ void hppa_walkbus(struct confargs *ca);
static void hppa_pdc_snake_scan(void);
static void hppa_pdc_system_map_scan(void);
+static void pdc_config(device_t, struct confargs *,
+ device_t (*)(device_t, struct confargs *), struct hppa_pdcmodule *);
+
/*
* cpu_configure:
* called at boot time, configure all devices on system
@@ -542,96 +545,111 @@ pdc_scanbus(device_t self, struct confar
device_t (*callback)(device_t, struct confargs *))
{
struct hppa_pdcmodule *hm;
- struct confargs nca;
- device_t dev;
- int ia;
hppa_walkbus(ca);
- TAILQ_FOREACH(hm, &hppa_pdcmodule_list, hm_link) {
- char buf[128];
- int error;
+ if (ca->ca_hpabase == HPPA_FPA) {
+ TAILQ_FOREACH(hm, &hppa_pdcmodule_list, hm_link) {
+ pdc_config(self, ca, callback, hm);
+ }
+ } else {
+ TAILQ_FOREACH_REVERSE(hm, &hppa_pdcmodule_list,
+ hppa_pdcmodule_head, hm_link) {
+ pdc_config(self, ca, callback, hm);
+ }
+ }
+}
- if (hm->hm_registered)
- continue;
+static void
+pdc_config(device_t self, struct confargs *ca,
+ device_t (*callback)(device_t, struct confargs *),
+ struct hppa_pdcmodule *hm)
+{
+ struct confargs nca;
+ device_t dev;
+ int ia;
+ char buf[128];
+ int error;
- if (!(hm->hm_dp.dp_bc[0] == ca->ca_dp.dp_bc[1] &&
- hm->hm_dp.dp_bc[1] == ca->ca_dp.dp_bc[2] &&
- hm->hm_dp.dp_bc[2] == ca->ca_dp.dp_bc[3] &&
- hm->hm_dp.dp_bc[3] == ca->ca_dp.dp_bc[4] &&
- hm->hm_dp.dp_bc[4] == ca->ca_dp.dp_bc[5] &&
- hm->hm_dp.dp_bc[5] == ca->ca_dp.dp_mod))
- continue;
+ if (hm->hm_registered)
+ return;
- memset(&nca, 0, sizeof(nca));
- nca.ca_iot = ca->ca_iot;
- nca.ca_dmatag = ca->ca_dmatag;
- nca.ca_pir = hm->hm_pir;
- nca.ca_type = hm->hm_type;
- nca.ca_hpa = hm->hm_hpa;
- nca.ca_dp = hm->hm_dp;
- nca.ca_hpa = hm->hm_hpa;
- nca.ca_hpasz = hm->hm_hpasz;
+ if (!(hm->hm_dp.dp_bc[0] == ca->ca_dp.dp_bc[1] &&
+ hm->hm_dp.dp_bc[1] == ca->ca_dp.dp_bc[2] &&
+ hm->hm_dp.dp_bc[2] == ca->ca_dp.dp_bc[3] &&
+ hm->hm_dp.dp_bc[3] == ca->ca_dp.dp_bc[4] &&
+ hm->hm_dp.dp_bc[4] == ca->ca_dp.dp_bc[5] &&
+ hm->hm_dp.dp_bc[5] == ca->ca_dp.dp_mod))
+ return;
- if (hm->hm_naddrs) {
- if (hm->hm_naddrs > HPPA_MAXIOADDRS) {
- nca.ca_naddrs = HPPA_MAXIOADDRS;
- aprint_error("WARNING: too many (%d) addrs\n",
- hm->hm_naddrs);
- } else
- nca.ca_naddrs = hm->hm_naddrs;
+ memset(&nca, 0, sizeof(nca));
+ nca.ca_iot = ca->ca_iot;
+ nca.ca_dmatag = ca->ca_dmatag;
+ nca.ca_pir = hm->hm_pir;
+ nca.ca_type = hm->hm_type;
+ nca.ca_hpa = hm->hm_hpa;
+ nca.ca_dp = hm->hm_dp;
+ nca.ca_hpa = hm->hm_hpa;
+ nca.ca_hpasz = hm->hm_hpasz;
- aprint_debug(">> ADDRS[%d/%d]: ", nca.ca_naddrs,
- hm->hm_modindex);
+ if (hm->hm_naddrs) {
+ if (hm->hm_naddrs > HPPA_MAXIOADDRS) {
+ nca.ca_naddrs = HPPA_MAXIOADDRS;
+ aprint_error("WARNING: too many (%d) addrs\n",
+ hm->hm_naddrs);
+ } else
+ nca.ca_naddrs = hm->hm_naddrs;
- KASSERT(hm->hm_modindex != -1);
- for (ia = 0; ia < nca.ca_naddrs; ia++) {
- struct pdc_system_map_find_addr pdc_find_addr;
+ aprint_debug(">> ADDRS[%d/%d]: ", nca.ca_naddrs,
+ hm->hm_modindex);
- error = pdcproc_system_map_find_addr(
- &pdc_find_addr, hm->hm_modindex, ia + 1);
- if (error < 0)
- break;
- nca.ca_addrs[ia].addr = pdc_find_addr.hpa;
- nca.ca_addrs[ia].size =
- pdc_find_addr.size << PGSHIFT;
+ KASSERT(hm->hm_modindex != -1);
+ for (ia = 0; ia < nca.ca_naddrs; ia++) {
+ struct pdc_system_map_find_addr pdc_find_addr;
- aprint_debug(" 0x%lx[0x%x]",
- nca.ca_addrs[ia].addr,
- nca.ca_addrs[ia].size);
- }
- aprint_debug("\n");
+ error = pdcproc_system_map_find_addr(
+ &pdc_find_addr, hm->hm_modindex, ia + 1);
+ if (error < 0)
+ break;
+ nca.ca_addrs[ia].addr = pdc_find_addr.hpa;
+ nca.ca_addrs[ia].size =
+ pdc_find_addr.size << PGSHIFT;
+
+ aprint_debug(" 0x%lx[0x%x]",
+ nca.ca_addrs[ia].addr,
+ nca.ca_addrs[ia].size);
}
+ aprint_debug("\n");
+ }
- aprint_debug(">> HPA 0x%lx[0x%x]\n", nca.ca_hpa,
- nca.ca_hpasz);
+ aprint_debug(">> HPA 0x%lx[0x%x]\n", nca.ca_hpa,
+ nca.ca_hpasz);
- snprintb(buf, sizeof(buf), PZF_BITS, nca.ca_dp.dp_flags);
- aprint_debug(">> probing: flags %s ", buf);
- if (nca.ca_dp.dp_mod >=0) {
- int n;
+ snprintb(buf, sizeof(buf), PZF_BITS, nca.ca_dp.dp_flags);
+ aprint_debug(">> probing: flags %s ", buf);
+ if (nca.ca_dp.dp_mod >=0) {
+ int n;
- aprint_debug(" path ");
- for (n = 0; n < 6; n++) {
- if (nca.ca_dp.dp_bc[n] >= 0)
- aprint_debug("%d/",
- nca.ca_dp.dp_bc[n]);
- }
- aprint_debug("%d", nca.ca_dp.dp_mod);
+ aprint_debug(" path ");
+ for (n = 0; n < 6; n++) {
+ if (nca.ca_dp.dp_bc[n] >= 0)
+ aprint_debug("%d/",
+ nca.ca_dp.dp_bc[n]);
}
+ aprint_debug("%d", nca.ca_dp.dp_mod);
+ }
- aprint_debug(" type %x sv %x\n",
- nca.ca_type.iodc_type, nca.ca_type.iodc_sv_model);
+ aprint_debug(" type %x sv %x\n",
+ nca.ca_type.iodc_type, nca.ca_type.iodc_sv_model);
- nca.ca_irq = HPPACF_IRQ_UNDEF;
- nca.ca_name = hppa_mod_info(nca.ca_type.iodc_type,
- nca.ca_type.iodc_sv_model);
+ nca.ca_irq = HPPACF_IRQ_UNDEF;
+ nca.ca_name = hppa_mod_info(nca.ca_type.iodc_type,
+ nca.ca_type.iodc_sv_model);
- dev = callback(self, &nca);
+ dev = callback(self, &nca);
- if (dev)
- hm->hm_registered = true;
- }
+ if (dev)
+ hm->hm_registered = true;
}
static const struct hppa_mod_info hppa_knownmods[] = {
---
>> NetBSD/hppa LIF/FFS/LFS Boot, Revision 1.4 (Sun Oct 18 19:24:30 UTC 2020)
>> Enter "reset" to reset system.
Boot: [[[dk6a:]netbsd][-a][-c][-d][-s][-v][-q]] :- netbsd.sti -vxs
9666240+769624+344488 [381936+365014]=0xbc6c74
Start @ 0x200000 [1=0xd10000-0xdc6c74]...
[ 1.0000000] Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
[ 1.0000000] 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017,
[ 1.0000000] 2018, 2019, 2020 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 9.1 (GENERIC) #9: Sun Mar 21 18:31:10 JST 2021
[ 1.0000000] tsutsui@mirage:/s/netbsd-9/src/sys/arch/hppa/compile/GENERIC
[ 1.0000000] HP9000/712/60 (Gecko)
[ 1.0000000] real mem = 128 MB (73728 reserved for PROM, 115 MB used by NetBSD)
[ 1.0000000] avail mem = 113 MB
[ 1.0000000] timecounter: Timecounters tick every 10.000 msec
[ 1.0000000] Kernelized RAIDframe activated
[ 1.0000000] mainbus0 (root) [flex fff80000]
[ 1.0000000] pdc0 at mainbus0
[ 1.0000000] pdc0: WARNING: power management not supported
[ 1.0000000] power0 at mainbus0: DR25
[ 1.0000000] power0: WARNING: power management not supported
[ 1.0000000] >> PDC (memmap) device at path 1 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 2 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 2/0/1 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 2/0/2 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 2/0/4 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 2/0/6 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 2/0/8 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 2/0/10 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 2/0/11 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 2/0/12 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 8 addrs 0
[ 1.0000000] >> PDC (memmap) device at path 9 addrs 0
[ 1.0000000] >> Walking bus at HPA 0xfff80000
[ 1.0000000] >> HPA 0xfffbe000[0x0] found by firmware
[ 1.0000000] >> HPA 0xfffbf000[0x0] found by firmware
[ 1.0000000] >> HPA 0xf8000000[0x0]
[ 1.0000000] >> probing: flags 0x0 path 1 type a sv 85
[ 1.0000000] >> HPA 0xf0100000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 2 type b sv 81
[ 1.0000000] >> HPA 0xfffbe000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 8 type 0 sv 4
[ 1.0000000] cpu0 at mainbus0 hpa 0xfffbe000 path 8 irq 31: PA7100LC (Hummingbird) rev 6
[ 1.0000000] cpu0: PCXL, PA-RISC 1.1c, lev 1, cat A, 60 MHz clk
[ 1.0000000] cpu0: shadows, 32K/32K D/I caches, 64 shared TLB, 8 shared BTLB
[ 1.0000000] cpu0: PCXL (CMOS-26B) floating point, rev 1
[ 1.0000000] cpu0: WARNING: power management not supported
[ 1.0000000] >> HPA 0xfffbf000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 9 type 1 sv 9
[ 1.0000000] mem0 at mainbus0 hpa 0xfffbf000 path 9: viper rev 0, ctrl 0x0 size 128MB
[ 1.0000000] mem0: WARNING: power management not supported
[ 1.0000000] >> HPA 0xf0100000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 2 type b sv 81
[ 1.0000000] lasi0 at mainbus0 hpa 0xf0000000 path 2 irq 27: rev 3.0
[ 1.0000000] gsc0 at lasi0
[ 1.0000000] >> HPA 0xf0108100[0x1]
[ 1.0000000] >> probing: flags 0x0 path 2/0/12 type a sv 84
[ 1.0000000] gsckbc0 at gsc0 hpa 0xf0108100 path 2/0/12: can't find master device
[ 1.0000000] gsckbc0: WARNING: power management not supported
[ 1.0000000] >> HPA 0xf0108000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 2/0/11 type a sv 84
[ 1.0000000] gsckbc1 at gsc0 hpa 0xf0108000 path 2/0/11 irq 26 (master): keyboard
[ 1.0000000] pckbd0 at gsckbc1 (kbd slot)
[ 1.0000000] wskbd0 at pckbd0 mux 1
[ 1.0000000] gsckbc1: WARNING: power management not supported[ 1.0000000] >> HPA 0xf010a000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 2/0/10 type a sv 83
[ 1.0000000] "floppy controller" at gsc0 (type 0xa, sv 0x83) hpa 0xf010a000 path 2/0/10 not configured
[ 1.0000000] >> HPA 0xf0104000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 2/0/8 type a sv 7b
[ 1.0000000] harmony0 at gsc0 hpa 0xf0104000 path 2/0/8 irq 13: rev 18
[ 1.0000000] audio0 at harmony0: playback, capture, full duplex
[ 1.0000000] audio0: slinear_be:16 2ch 48000Hz, blk 4096 bytes (21.3ms) for playback
[ 1.0000000] audio0: slinear_be:16 2ch 48000Hz, blk 4096 bytes (21.3ms) for recording
[ 1.0000000] spkr0 at audio0: PC Speaker (synthesized)
[ 1.0000000] wsbell at spkr0 not configured
[ 1.0000000] harmony0: WARNING: power management not supported
[ 1.0000000] >> HPA 0xf0102000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 2/0/6 type a sv 74
[ 1.0000000] lpt1 at gsc0 hpa 0xf0102000 path 2/0/6 irq 7
[ 1.0000000] lpt1: WARNING: power management not supported
[ 1.0000000] >> HPA 0xf0105000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 2/0/4 type a sv 8c
[ 1.0000000] com2 at gsc0 hpa 0xf0105000 path 2/0/4 irq 5: ns16550a, working fifo
[ 1.0000000] com2: console
[ 1.0000000] com2: WARNING: power management not supported
[ 1.0000000] >> HPA 0xf0107000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 2/0/2 type a sv 8a
[ 1.0000000] iee0 at gsc0 hpa 0xf0107000 path 2/0/2 irq 8: Intel 82596CA address 08:00:09:d1:2b:5a
[ 1.0000000] iee0: WARNING: power management not supported
[ 1.0000000] >> HPA 0xf0106000[0x1]
[ 1.0000000] >> probing: flags 0x0 path 2/0/1 type a sv 82
[ 1.0000000] osiop0 at gsc0 hpa 0xf0106000 path 2/0/1 irq 9: NCR53C710 rev 2, 40MHz, SCSI ID 7
[ 1.0000000] scsibus0 at osiop0: 8 targets, 8 luns per target
[ 1.0000000] osiop0: WARNING: power management not supported
[ 1.0000000] gsc0: WARNING: power management not supported
[ 1.0000000] lasi0: WARNING: power management not supported
[ 1.0000000] >> HPA 0xf8000000[0x0]
[ 1.0000000] >> probing: flags 0x0 path 1 type a sv 85
Stopped in pid 0.0 () at netbsd:hppa_machine_check+0x4: stw %r2, R'-
14(%r30)
db> bt
hppa_machine_check() at netbsd:hppa_machine_check+0x4
pdcproc_pim() at netbsd:pdcproc_pim+0x78
os_hpmc_cont() at netbsd:os_hpmc_cont+0xf4
db>
---
---
Izumi Tsutsui
From: Nick Hudson <nick.hudson@gmx.co.uk>
To: gnats-bugs@netbsd.org, port-hppa-maintainer@netbsd.org,
gnats-admin@netbsd.org, netbsd-bugs@netbsd.org, tsutsui@ceres.dti.ne.jp
Cc:
Subject: Re: port-hppa/52162 (712/60 hangs during sti(4) probe)
Date: Sun, 21 Mar 2021 10:45:57 +0000
hmm,
not attached to lasi and
https://www.hpl.hp.com/hpjournal/95apr/apr95a1.pdf
confirms.
Can you instrument the rom part
https://nxr.netbsd.org/xref/src/sys/arch/hppa/dev/sti_sgc.c#112
Thanks,
Nick
From: Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
To: nick.hudson@gmx.co.uk
Cc: gnats-bugs@netbsd.org, tsutsui@ceres.dti.ne.jp
Subject: Re: port-hppa/52162 (712/60 hangs during sti(4) probe)
Date: Sun, 21 Mar 2021 20:01:45 +0900
> not attached to lasi and
>
> https://www.hpl.hp.com/hpjournal/95apr/apr95a1.pdf
>
> confirms.
Indeed.
> Can you instrument the rom part
>
> https://nxr.netbsd.org/xref/src/sys/arch/hppa/dev/sti_sgc.c#112
DPRINTF said
> sti_sgc_probe: hpa=f8000000, rom=f8000000
so sti_sgc_getrom() returned "rom = ca->ca_hpa".
---
Izumi Tsutsui
From: Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
To: gnats-bugs@netbsd.org
Cc: nick.hudson@gmx.co.uk, tsutsui@ceres.dti.ne.jp
Subject: Re: port-hppa/52162 (712/60 hangs during sti(4) probe)
Date: Tue, 23 Mar 2021 03:27:42 +0900
> > Can you instrument the rom part
> >
> > https://nxr.netbsd.org/xref/src/sys/arch/hppa/dev/sti_sgc.c#112
>
> DPRINTF said
> > sti_sgc_probe: hpa=f8000000, rom=f8000000
> so sti_sgc_getrom() returned "rom = ca->ca_hpa".
Finally I've found there is a dumb problem, i.e. the rom address
taken from PAGE0->pd_resv2[1] (0xf0080000) just works:
---
Index: dev/sti_sgc.c
===================================================================
RCS file: /cvsroot/src/sys/arch/hppa/dev/sti_sgc.c,v
retrieving revision 1.2
diff -u -p -d -r1.2 sti_sgc.c
--- dev/sti_sgc.c 15 Apr 2019 20:40:37 -0000 1.2
+++ dev/sti_sgc.c 22 Mar 2021 18:04:12 -0000
@@ -77,7 +77,7 @@ extern int stidebug;
#define STI_GOPT1_REV 0x17
#define STI_GOPT2_REV 0x70
#define STI_GOPT3_REV 0xd0
-#define STI_GOPT4_REV 0x00
+#define STI_GOPT4_REV 0x60
#define STI_GOPT5_REV 0x20
#define STI_GOPT6_REV 0x40
#define STI_GOPT7_REV 0x30
@@ -116,6 +116,8 @@ sti_sgc_getrom(struct confargs *ca)
pagezero_cookie = hppa_pagezero_map();
rom = PAGE0->pd_resv2[1];
+ printf("%s: iodc_revision = %02x\n", __func__,
+ ca->ca_type.iodc_revision);
hppa_pagezero_unmap(pagezero_cookie);
if (ca->ca_type.iodc_sv_model == HPPA_FIO_GSGC) {
---
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017,
2018, 2019, 2020 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 9.1 (GENERIC) #20: Tue Mar 23 02:38:39 JST 2021
tsutsui@mirage:/s/netbsd-9/src/sys/arch/hppa/compile/GENERIC
HP9000/712/60 (Gecko)
real mem = 128 MB (73728 reserved for PROM, 114 MB used by NetBSD)
avail mem = 112 MB
timecounter: Timecounters tick every 10.000 msec
Kernelized RAIDframe activated
mainbus0 (root) [flex fff80000]
pdc0 at mainbus0
power0 at mainbus0: DR25
cpu0 at mainbus0 hpa 0xfffbe000 path 8 irq 31: PA7100LC (Hummingbird) rev 6
cpu0: PCXL, PA-RISC 1.1c, lev 1, cat A, 60 MHz clk
cpu0: shadows, 32K/32K D/I caches, 64 shared TLB, 8 shared BTLB
cpu0: PCXL (CMOS-26B) floating point, rev 1
mem0 at mainbus0 hpa 0xfffbf000 path 9: viper rev 0, ctrl 0x0 size 128MB
sti_sgc_getrom: iodc_revision = 60
sti0 at mainbus0 hpa 0xf8000000 path 1: rev 8.04;7, ID 0x2B4DED6D40A00499
sti0: HPA208LC1024, 2048x1024 frame buffer, 1024x768x8 display
sti0: 8x16 font type 1, 16 bpc, charset 0-255
lasi0 at mainbus0 hpa 0xf0000000 path 2 irq 27: rev 3.0
gsc0 at lasi0
osiop0 at gsc0 hpa 0xf0106000 path 2/0/1 irq 9: NCR53C710 rev 2, 40MHz, SCSI ID 7
scsibus0 at osiop0: 8 targets, 8 luns per target
iee0 at gsc0 hpa 0xf0107000 path 2/0/2 irq 8: Intel 82596CA address 08:00:09:d1:2b:5a
com2 at gsc0 hpa 0xf0105000 path 2/0/4 irq 5: ns16550a, working fifo
lpt1 at gsc0 hpa 0xf0102000 path 2/0/6 irq 7
harmony0 at gsc0 hpa 0xf0104000 path 2/0/8 irq 13: rev 18
audio0 at harmony0: playback, capture, full duplex
audio0: slinear_be:16 2ch 48000Hz, blk 4096 bytes (21.3ms) for playback
audio0: slinear_be:16 2ch 48000Hz, blk 4096 bytes (21.3ms) for recording
spkr0 at audio0: PC Speaker (synthesized)
wsbell at spkr0 not configured
"floppy controller" at gsc0 (type 0xa, sv 0x83) hpa 0xf010a000 path 2/0/10 not configured
gsckbc0 at gsc0 hpa 0xf0108000 path 2/0/11 irq 26: keyboard
pckbd0 at gsckbc0 (kbd slot)
wskbd0 at pckbd0: console keyboard
gsckbc1 at gsc0 hpa 0xf0108100 path 2/0/12: mouse
timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0
timecounter: Timecounter "itimer" frequency 60000000 Hz quality 100
scsibus0: waiting 2 seconds for devices to settle...
wsdisplay0 at sti0 kbdmux 1: console (std, vt100 emulation), using wskbd0
wsmux1: connecting to wsdisplay0
sd0 at scsibus0 target 6 lun 0: <IBM, DORS-32160, HP02> disk fixed
sd0: 2048 MB, 6703 cyl, 5 head, 125 sec, 512 bytes/sect x 4194685 sectors
sd0: sync (100.00ns offset 8), 8-bit (10.000MB/s) transfers
boot device: sd0
root on sd0a dumps on sd0b
root file system type: ffs
kern.module.path=/stand/hppa/9.1/modules
---
- OpenBSD/hppa doesn't check sti_sgc_opt[] values against
ca->ca_type.iodc_revision for on-board (primary) sti(4)
- sti_sgc_opt[] is different from OpenBSD (not sure why)
- no info where STI_GOPT[1234567]_REV macros came from
---
Izumi Tsutsui
From: Nick Hudson <nick.hudson@gmx.co.uk>
To: gnats-bugs@netbsd.org, port-hppa-maintainer@netbsd.org,
gnats-admin@netbsd.org, netbsd-bugs@netbsd.org, tsutsui@ceres.dti.ne.jp
Cc:
Subject: Re: port-hppa/52162 (712/60 hangs during sti(4) probe)
Date: Mon, 22 Mar 2021 19:19:44 +0000
On 22/03/2021 18:30, Izumi Tsutsui wrote:
> The following reply was made to PR port-hppa/52162; it has been noted by=
GNATS.
>
> From: Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
> To: gnats-bugs@netbsd.org
> Cc: nick.hudson@gmx.co.uk, tsutsui@ceres.dti.ne.jp
> Subject: Re: port-hppa/52162 (712/60 hangs during sti(4) probe)
> Date: Tue, 23 Mar 2021 03:27:42 +0900
>
> > > Can you instrument the rom part
> > >
> > > https://nxr.netbsd.org/xref/src/sys/arch/hppa/dev/sti_sgc.c#112
> >
> > DPRINTF said
> > > sti_sgc_probe: hpa=3Df8000000, rom=3Df8000000
> > so sti_sgc_getrom() returned "rom =3D ca->ca_hpa".
>
> Finally I've found there is a dumb problem, i.e. the rom address
> taken from PAGE0->pd_resv2[1] (0xf0080000) just works:
>
> ---
Glad you found it.
>
> - OpenBSD/hppa doesn't check sti_sgc_opt[] values against
> ca->ca_type.iodc_revision for on-board (primary) sti(4)
> - sti_sgc_opt[] is different from OpenBSD (not sure why)
> - no info where STI_GOPT[1234567]_REV macros came from
https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys/arch/hppa/dev/sti_sgc.c.=
diff?r1=3D1.32&r2=3D1.33
?
http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/arch/hp700/dev/Attic/sti_sgc.c=
.diff?r1=3D1.8&r2=3D1.9&only_with_tag=3DMAIN
would suggest chuq / jkunz had a machine that matched 0x00
Add your rev?
Thanks,
Nick
From: Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
To: nick.hudson@gmx.co.uk
Cc: gnats-bugs@netbsd.org, tsutsui@ceres.dti.ne.jp
Subject: Re: port-hppa/52162 (712/60 hangs during sti(4) probe)
Date: Tue, 23 Mar 2021 04:37:20 +0900
> https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys/arch/hppa/dev/sti_sgc.c.diff?r1=1.32&r2=1.33
>
> ?
As the OpenBSD comment says:
> /* gecko optional graphics (these share the onboard's prom) */
so I wonder if sti_sgc_opt[] should be checked only against
"optional" sti board.
Miod Vallat also pointed out:
https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys/arch/hppa/dev/sti_sgc.c.diff?r1=1.35&r2=1.36
so 0x60 was defined as STI_INEG_REV for "internal EG".
---
Izumi Tsutsui
State-Changed-From-To: open->analyzed
State-Changed-By: tsutsui@NetBSD.org
State-Changed-When: Tue, 20 Apr 2021 16:44:52 +0000
State-Changed-Why:
We need some method to check whether sti(4) framebuffer being probed is
on-board (primary) one and skip the revision check in sti_sgc_getrom()
in such case.
From: Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
To: gnats-bugs@netbsd.org
Cc: tsutsui@ceres.dti.ne.jp
Subject: Re: port-hppa/52162 (712/60 hangs during sti(4) probe)
Date: Sat, 10 Jul 2021 19:51:18 +0900
> Synopsis: 712/60 hangs during sti(4) probe
:
> State-Changed-Why:
> We need some method to check whether sti(4) framebuffer being probed is
> on-board (primary) one and skip the revision check in sti_sgc_getrom()
> in such case.
If there is no suggestion I would like to commit the following klduge.
All sti0 at mainbus0 info was taken from port-hp700@ and port-hppa@ lists
and confirmed working on 712/60.
---
Index: dev/sti_sgc.c
===================================================================
RCS file: /cvsroot/src/sys/arch/hppa/dev/sti_sgc.c,v
retrieving revision 1.2
diff -u -p -d -r1.2 sti_sgc.c
--- dev/sti_sgc.c 15 Apr 2019 20:40:37 -0000 1.2
+++ dev/sti_sgc.c 10 Jul 2021 10:41:50 -0000
@@ -73,6 +73,16 @@ extern int stidebug;
#define STI_ROMSIZE (sizeof(struct sti_dd) * 4)
#define STI_ID_FDDI 0x280b31af /* Medusa FDDI ROM id */
+/*
+ * hpa addresses to check on-board variants
+ * XXX should check via device_register(9)?
+ *
+ * 0xf4000000: HPA1991AC19 on 715/33, 715/50
+ * 0xf8000000: HPA1439A on 735/99, HPA208LCxxx on 715/80, 715/100, 712
+ */
+#define STI_ONBOARD_HPA0 0xf4000000
+#define STI_ONBOARD_HPA1 0xf8000000
+
/* gecko optional graphics */
#define STI_GOPT1_REV 0x17
#define STI_GOPT2_REV 0x70
@@ -118,7 +128,9 @@ sti_sgc_getrom(struct confargs *ca)
rom = PAGE0->pd_resv2[1];
hppa_pagezero_unmap(pagezero_cookie);
- if (ca->ca_type.iodc_sv_model == HPPA_FIO_GSGC) {
+ if (ca->ca_type.iodc_sv_model == HPPA_FIO_GSGC &&
+ ca->ca_hpa != STI_ONBOARD_HPA0 &&
+ ca->ca_hpa != STI_ONBOARD_HPA1) {
int i;
for (i = sizeof(sti_sgc_opt); i--; )
if (sti_sgc_opt[i] == ca->ca_type.iodc_revision)
From: Nick Hudson <nick.hudson@gmx.co.uk>
To: gnats-bugs@netbsd.org, port-hppa-maintainer@netbsd.org,
gnats-admin@netbsd.org, netbsd-bugs@netbsd.org, tsutsui@ceres.dti.ne.jp
Cc:
Subject: Re: port-hppa/52162 (712/60 hangs during sti(4) probe)
Date: Sun, 11 Jul 2021 06:52:52 +0100
On 10/07/2021 11:55, Izumi Tsutsui wrote:
> The following reply was made to PR port-hppa/52162; it has been noted by=
GNATS.
>
> From: Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
> To: gnats-bugs@netbsd.org
> Cc: tsutsui@ceres.dti.ne.jp
> Subject: Re: port-hppa/52162 (712/60 hangs during sti(4) probe)
> Date: Sat, 10 Jul 2021 19:51:18 +0900
>
> > Synopsis: 712/60 hangs during sti(4) probe
> :
> > State-Changed-Why:
> > We need some method to check whether sti(4) framebuffer being probed=
is
> > on-board (primary) one and skip the revision check in sti_sgc_getrom=
()
> > in such case.
>
> If there is no suggestion I would like to commit the following klduge.
> All sti0 at mainbus0 info was taken from port-hp700@ and port-hppa@ li=
sts
> and confirmed working on 712/60.
Fine by me.
Nick
From: "Izumi Tsutsui" <tsutsui@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/52162 CVS commit: src/sys/arch/hppa/dev
Date: Sun, 11 Jul 2021 13:36:02 +0000
Module Name: src
Committed By: tsutsui
Date: Sun Jul 11 13:36:02 UTC 2021
Modified Files:
src/sys/arch/hppa/dev: sti_sgc.c
Log Message:
Fix silent freeze on probing sti(4) framebuffer on 712/60. PR/52162
Ok'ed by skrll@.
Should be pulled up to netbsd-9 and netbsd-8.
To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/sys/arch/hppa/dev/sti_sgc.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
State-Changed-From-To: analyzed->pending-pullups
State-Changed-By: tsutsui@NetBSD.org
State-Changed-When: Mon, 12 Jul 2021 16:01:55 +0000
State-Changed-Why:
[pullup-9 #1322] [pullup-8 #1689]
From: "Martin Husemann" <martin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/52162 CVS commit: [netbsd-9] src/sys/arch/hppa/dev
Date: Wed, 14 Jul 2021 17:52:32 +0000
Module Name: src
Committed By: martin
Date: Wed Jul 14 17:52:32 UTC 2021
Modified Files:
src/sys/arch/hppa/dev [netbsd-9]: sti_sgc.c
Log Message:
Pull up following revision(s) (requested by tsutsui in ticket #1322):
sys/arch/hppa/dev/sti_sgc.c: revision 1.3
Fix silent freeze on probing sti(4) framebuffer on 712/60. PR/52162
Ok'ed by skrll@.
Should be pulled up to netbsd-9 and netbsd-8.
To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.2.4.1 src/sys/arch/hppa/dev/sti_sgc.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
From: "Martin Husemann" <martin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/52162 CVS commit: [netbsd-8] src/sys/arch/hppa/dev
Date: Wed, 14 Jul 2021 17:53:50 +0000
Module Name: src
Committed By: martin
Date: Wed Jul 14 17:53:50 UTC 2021
Modified Files:
src/sys/arch/hppa/dev [netbsd-8]: sti_sgc.c
Log Message:
Pull up following revision(s) (requested by tsutsui in ticket #1689):
sys/arch/hppa/dev/sti_sgc.c: revision 1.3
Fix silent freeze on probing sti(4) framebuffer on 712/60. PR/52162
Ok'ed by skrll@.
Should be pulled up to netbsd-9 and netbsd-8.
To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.1.28.1 src/sys/arch/hppa/dev/sti_sgc.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
State-Changed-From-To: pending-pullups->closed
State-Changed-By: dholland@NetBSD.org
State-Changed-When: Thu, 15 Jul 2021 02:58:33 +0000
State-Changed-Why:
pulled up, thanks
>Unformatted:
(Contact us)
$NetBSD: query-full-pr,v 1.46 2020/01/03 16:35:01 leot Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2020
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.