NetBSD-Bugs archive

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

Re: port-amd64/48451: NMI ... going to debugger at install -> bge BCM5717



The following reply was made to PR port-amd64/48451; it has been noted by GNATS.

From: Masanobu SAITOH <msaitoh%execsw.org@localhost>
To: gnats-bugs%NetBSD.org@localhost, 
port-amd64-maintainer%netbsd.org@localhost, 
 gnats-admin%netbsd.org@localhost, netbsd-bugs%netbsd.org@localhost
Cc: msaitoh%execsw.org@localhost
Subject: Re: port-amd64/48451: NMI ... going to debugger at install -> bge
 BCM5717
Date: Thu, 22 May 2014 15:05:59 +0900

 (2013/12/16 4:25), eirsch%yahoo.de@localhost wrote:
 >> Number:         48451
 >> Category:       port-amd64
 >> Synopsis:       NMI ... going to debugger at install -> bge BCM5717
 >> Confidential:   no
 >> Severity:       non-critical
 >> Priority:       low
 >> Responsible:    port-amd64-maintainer
 >> State:          open
 >> Class:          sw-bug
 >> Submitter-Id:   net
 >> Arrival-Date:   Sun Dec 15 19:25:00 +0000 2013
 >> Originator:     Erik Irsch
 >> Release:        NetBSD-6.99.28
 >> Organization:
 >> Environment:
 > AMD64 - uname -a not possible because of stop to DB at boot.
 >> Description:
 > Hi,
 > 
 > on a HP ML310 Gen8 server with a internal dual port HP 330i (Broadcom 
 > BMC5717)  the installer dropped at boot to the kernel debugger. The last 
 > lines seen on the screen were:
 > 
 > bge0: interrupting at ioapic8 pin 16
 > NMI ... going to debugger
 > Stopped in pid 0.1 (system) at netbsd:bus_space_read4+0xa:         ret
 > db(0)
 > 
 > The server booted fine with NetBSD 6.1.2 but there are messages about 
 > unknown bge chipset BMC5717 when doing ifconfig.
 > 
 > I tried "current" because there were commits that shows that this nic should 
 > be added there. So I would be happy to help in fixing this problem
 > 
 >> How-To-Repeat:
 > 
 > Boot these current version with option 1 or option 2 an a HP ML310 Gen8 with 
 > 330i dual port network card.
 > 
 > 
 >> Fix:
 
  I got HP microserver Gen8 and it had the same problem.
 The following patch fixes the problem.
 
 Index: pci_map.c
 ===================================================================
 RCS file: /cvsroot/src/sys/dev/pci/pci_map.c,v
 retrieving revision 1.30
 diff -u -p -r1.30 pci_map.c
 --- pci_map.c  20 Oct 2012 06:03:38 -0000      1.30
 +++ pci_map.c  7 May 2014 22:12:32 -0000
 @@ -291,20 +291,22 @@ pci_mapreg_submap(const struct pci_attac
        bus_space_handle_t handle;
        bus_addr_t base;
        bus_size_t size;
 +#if 0
        int flags;
 +#endif
  
        if (PCI_MAPREG_TYPE(type) == PCI_MAPREG_TYPE_IO) {
                if ((pa->pa_flags & PCI_FLAGS_IO_OKAY) == 0)
                        return 1;
                if (pci_io_find(pa->pa_pc, pa->pa_tag, reg, type, &base,
 -                  &size, &flags))
 +                      &size, NULL)) /* XXX was &flags */
                        return 1;
                tag = pa->pa_iot;
        } else {
                if ((pa->pa_flags & PCI_FLAGS_MEM_OKAY) == 0)
                        return 1;
                if (pci_mem_find(pa->pa_pc, pa->pa_tag, reg, type, &base,
 -                  &size, &flags))
 +                      &size, NULL)) /* XXX was &flags */
                        return 1;
                tag = pa->pa_memt;
        }
 @@ -329,9 +331,13 @@ pci_mapreg_submap(const struct pci_attac
  
        if ((maxsize < size && offset + maxsize <= size) || offset != 0)
                return 1;
 -
 +#if 0
        if (bus_space_map(tag, base, maxsize, busflags | flags, &handle))
                return 1;
 +#else
 +      if (bus_space_map(tag, base, maxsize, busflags, &handle))
 +              return 1;
 +#endif
  
        if (tagp != NULL)
                *tagp = tag;
 
 
 For BCM5717, 18, 19 and 20, the prefechable bit in BAR register
 is set. The above patch ignore the bit.
 
 I won't commit this change because I think this change is NOT a
 right solution. I'm now checking our pci code and other OS's code.
 
 -- 
 -----------------------------------------------
                 SAITOH Masanobu (msaitoh%execsw.org@localhost
                                  msaitoh%netbsd.org@localhost)
 


Home | Main Index | Thread Index | Old Index