* sparc64 PCI BAR allocation is still problematic @ 2018-04-08 18:44 ` Meelis Roos 0 siblings, 0 replies; 40+ messages in thread From: Meelis Roos @ 2018-04-08 18:44 UTC (permalink / raw) To: Yinghai Lu; +Cc: linux-pci, sparclinux This is a followup on the thread https://lkml.org/lkml/2015/10/7/135 and corresponding https://bugzilla.kernel.org/show_bug.cgi?id=117191 entry. I saw some sparc64 PCI allocation changes in yesterdays git and compiled 4.16.0-10242-gf605ba9 on most of my sparc64 machines to test if the PCI BAR allocation problems introduced in 4.3 were fixed on some of them. Alas, no change at all - of the test machines, none showed any changes in the error messages in "dmesg | grep BAR". There was one test machine, T1000 with no addon cards, that did not encounter any problem, before or after the recent patch. All the other test machines tried still have the BAR allocation problems. The errors seem to cluster into 3 categories: 1. many devices fail BAR allocations 2. one of the Davicom Ethernet devices fails BAR allocation 3. Uli ISA bridge fails BAR allocation. Full current dmesg and lspci info is also available if there is any interest. I did not include it all here, which machines are interesting? Details: 1. Many devices, including preventing FC HBA from working on T1-105: T1-105: pci 0000:00:01.0: can't claim BAR 8 [mem 0x1ff00000000-0x1ffbfffffff]: address conflict with Video RAM area [??? 0x1ff000a0000-0x1ff000bffff flags 0x80000000] pci 0000:02:01.0: can't claim BAR 8 [mem 0x1ff00100000-0x1ff028fffff]: no compatible bridge window pci 0000:03:0f.0: can't claim BAR 8 [mem 0x1ff00100000-0x1ff028fffff]: no compatible bridge window pci 0000:04:00.0: can't claim BAR 0 [mem 0x1ff01000000-0x1ff01ffffff]: no compatible bridge window pci 0000:04:00.0: can't claim BAR 1 [mem 0x1ff02000000-0x1ff027fffff]: no compatible bridge window pci 0000:04:00.1: can't claim BAR 0 [mem 0x1ff02800000-0x1ff0280702f]: no compatible bridge window pci 0000:04:04.0: can't claim BAR 1 [mem 0x1ff02808000-0x1ff02808fff]: no compatible bridge window pci 0000:04:04.0: can't claim BAR 6 [mem 0x1ff02810000-0x1ff0281ffff]: no compatible bridge windowqla1280 0000:04:04.0: can't ioremap BAR 1: [mem size 0x00001000] T1-200: pci 0000:00:01.0: can't claim BAR 8 [mem 0x1ff00000000-0x1ffbfffffff]: address conflict with Video RAM area [??? 0x1ff000a0000-0x1ff000bffff flags 0x80000000] pci 0000:02:08.0: can't claim BAR 1 [mem 0x1ff00002000-0x1ff00003fff 64bit]: no compatible bridge window pci 0000:02:08.0: can't claim BAR 3 [mem 0x1ff00004000-0x1ff00005fff 64bit]: no compatible bridge window pci 0000:02:08.1: can't claim BAR 1 [mem 0x1ff00006000-0x1ff00007fff 64bit]: no compatible bridge window pci 0000:02:08.1: can't claim BAR 3 [mem 0x1ff00008000-0x1ff00009fff 64bit]: no compatible bridge window pci 0000:02:05.0: can't claim BAR 1 [mem 0x1ff0000a000-0x1ff0000bfff]: no compatible bridge window pci 0000:02:05.0: can't claim BAR 6 [mem 0x1ff00020000-0x1ff0003ffff]: no compatible bridge window V120: pci 0000:00:01.0: can't claim BAR 8 [mem 0x1ff00000000-0x1ffbfffffff]: address conflict with Video RAM area [??? 0x1ff000a0000-0x1ff000bffff flags 0x80000000] pci 0000:02:08.0: can't claim BAR 1 [mem 0x1ff00002000-0x1ff00003fff 64bit]: no compatible bridge window pci 0000:02:08.0: can't claim BAR 3 [mem 0x1ff00004000-0x1ff00005fff 64bit]: no compatible bridge window pci 0000:02:08.1: can't claim BAR 1 [mem 0x1ff00006000-0x1ff00007fff 64bit]: no compatible bridge window pci 0000:02:08.1: can't claim BAR 3 [mem 0x1ff00008000-0x1ff00009fff 64bit]: no compatible bridge window 2. Davicom Ethernet: Netra X1: pci 0000:00:05.0: can't claim BAR 6 [mem 0x1ff00080000-0x1ff000bffff]: address conflict with Video RAM area [??? 0x1ff000a0000-0x1ff000bffff flags 0x80000000] Fire V100: pci 0000:00:05.0: can't claim BAR 6 [mem 0x1ff00080000-0x1ff000bffff]: address conflict with Video RAM area [??? 0x1ff000a0000-0x1ff000bffff flags 0x80000000] 3. ULi ISA bridge: T2000: pci 0001:05:02.0: can't claim BAR 0 [io 0xf010000000-0xf01000ffff]: no compatible bridge window V245: pci 0000:05:1e.0: can't claim BAR 0 [io 0x7f810000000-0x7f810000fff]: no compatible bridge window V210: pci 0001:00:07.0: can't claim BAR 0 [io 0x7fe01000000-0x7fe0100ffff]: address conflict with 0001:00:06.0 [io 0x7fe01000600-0x7fe0100061f] pci 0001:00:07.0: can't claim BAR 1 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with Video RAM area [??? 0x7ff000a0000-0x7ff000bffff flags 0x80000000] pci 0001:00:07.0: can't claim BAR 2 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with Video RAM area [??? 0x7ff000a0000-0x7ff000bffff flags 0x80000000] V240: pci 0001:00:07.0: can't claim BAR 0 [io 0x7fe01000000-0x7fe0100ffff]: address conflict with 0001:00:06.0 [io 0x7fe01000600-0x7fe0100061f] pci 0001:00:07.0: can't claim BAR 1 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with Video RAM area [??? 0x7ff000a0000-0x7ff000bffff flags 0x80000000] pci 0001:00:07.0: can't claim BAR 2 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with Video RAM area [??? 0x7ff000a0000-0x7ff000bffff flags 0x80000000] V440: pci 0002:00:07.0: can't claim BAR 0 [io 0x7fe01000000-0x7fe0100ffff]: address conflict with 0002:00:06.0 [io 0x7fe01000600-0x7fe0100061f] pci 0002:00:07.0: can't claim BAR 1 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with Video RAM area [??? 0x7ff000a0000-0x7ff000bffff flags 0x80000000] pci 0002:00:07.0: can't claim BAR 2 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with Video RAM area [??? 0x7ff000a0000-0x7ff000bffff flags 0x80000000] Blade 100: pci 0000:00:07.0: can't claim BAR 0 [io 0x1fe02000000-0x1fe0200ffff]: address conflict with 0000:00:03.0 [io 0x1fe02000600-0x1fe0200061f] pci 0000:00:07.0: can't claim BAR 1 [mem 0x1ff00000000-0x1ff000fffff]: address conflict with Video RAM area [??? 0x1ff000a0000-0x1ff000bffff flags 0x80000000] -- Meelis Roos (mroos@linux.ee) ^ permalink raw reply [flat|nested] 40+ messages in thread
* sparc64 PCI BAR allocation is still problematic @ 2018-04-08 18:44 ` Meelis Roos 0 siblings, 0 replies; 40+ messages in thread From: Meelis Roos @ 2018-04-08 18:44 UTC (permalink / raw) To: Yinghai Lu; +Cc: linux-pci, sparclinux This is a followup on the thread https://lkml.org/lkml/2015/10/7/135 and corresponding https://bugzilla.kernel.org/show_bug.cgi?id\x117191 entry. I saw some sparc64 PCI allocation changes in yesterdays git and compiled 4.16.0-10242-gf605ba9 on most of my sparc64 machines to test if the PCI BAR allocation problems introduced in 4.3 were fixed on some of them. Alas, no change at all - of the test machines, none showed any changes in the error messages in "dmesg | grep BAR". There was one test machine, T1000 with no addon cards, that did not encounter any problem, before or after the recent patch. All the other test machines tried still have the BAR allocation problems. The errors seem to cluster into 3 categories: 1. many devices fail BAR allocations 2. one of the Davicom Ethernet devices fails BAR allocation 3. Uli ISA bridge fails BAR allocation. Full current dmesg and lspci info is also available if there is any interest. I did not include it all here, which machines are interesting? Details: 1. Many devices, including preventing FC HBA from working on T1-105: T1-105: pci 0000:00:01.0: can't claim BAR 8 [mem 0x1ff00000000-0x1ffbfffffff]: address conflict with Video RAM area [??? 0x1ff000a0000-0x1ff000bffff flags 0x80000000] pci 0000:02:01.0: can't claim BAR 8 [mem 0x1ff00100000-0x1ff028fffff]: no compatible bridge window pci 0000:03:0f.0: can't claim BAR 8 [mem 0x1ff00100000-0x1ff028fffff]: no compatible bridge window pci 0000:04:00.0: can't claim BAR 0 [mem 0x1ff01000000-0x1ff01ffffff]: no compatible bridge window pci 0000:04:00.0: can't claim BAR 1 [mem 0x1ff02000000-0x1ff027fffff]: no compatible bridge window pci 0000:04:00.1: can't claim BAR 0 [mem 0x1ff02800000-0x1ff0280702f]: no compatible bridge window pci 0000:04:04.0: can't claim BAR 1 [mem 0x1ff02808000-0x1ff02808fff]: no compatible bridge window pci 0000:04:04.0: can't claim BAR 6 [mem 0x1ff02810000-0x1ff0281ffff]: no compatible bridge windowqla1280 0000:04:04.0: can't ioremap BAR 1: [mem size 0x00001000] T1-200: pci 0000:00:01.0: can't claim BAR 8 [mem 0x1ff00000000-0x1ffbfffffff]: address conflict with Video RAM area [??? 0x1ff000a0000-0x1ff000bffff flags 0x80000000] pci 0000:02:08.0: can't claim BAR 1 [mem 0x1ff00002000-0x1ff00003fff 64bit]: no compatible bridge window pci 0000:02:08.0: can't claim BAR 3 [mem 0x1ff00004000-0x1ff00005fff 64bit]: no compatible bridge window pci 0000:02:08.1: can't claim BAR 1 [mem 0x1ff00006000-0x1ff00007fff 64bit]: no compatible bridge window pci 0000:02:08.1: can't claim BAR 3 [mem 0x1ff00008000-0x1ff00009fff 64bit]: no compatible bridge window pci 0000:02:05.0: can't claim BAR 1 [mem 0x1ff0000a000-0x1ff0000bfff]: no compatible bridge window pci 0000:02:05.0: can't claim BAR 6 [mem 0x1ff00020000-0x1ff0003ffff]: no compatible bridge window V120: pci 0000:00:01.0: can't claim BAR 8 [mem 0x1ff00000000-0x1ffbfffffff]: address conflict with Video RAM area [??? 0x1ff000a0000-0x1ff000bffff flags 0x80000000] pci 0000:02:08.0: can't claim BAR 1 [mem 0x1ff00002000-0x1ff00003fff 64bit]: no compatible bridge window pci 0000:02:08.0: can't claim BAR 3 [mem 0x1ff00004000-0x1ff00005fff 64bit]: no compatible bridge window pci 0000:02:08.1: can't claim BAR 1 [mem 0x1ff00006000-0x1ff00007fff 64bit]: no compatible bridge window pci 0000:02:08.1: can't claim BAR 3 [mem 0x1ff00008000-0x1ff00009fff 64bit]: no compatible bridge window 2. Davicom Ethernet: Netra X1: pci 0000:00:05.0: can't claim BAR 6 [mem 0x1ff00080000-0x1ff000bffff]: address conflict with Video RAM area [??? 0x1ff000a0000-0x1ff000bffff flags 0x80000000] Fire V100: pci 0000:00:05.0: can't claim BAR 6 [mem 0x1ff00080000-0x1ff000bffff]: address conflict with Video RAM area [??? 0x1ff000a0000-0x1ff000bffff flags 0x80000000] 3. ULi ISA bridge: T2000: pci 0001:05:02.0: can't claim BAR 0 [io 0xf010000000-0xf01000ffff]: no compatible bridge window V245: pci 0000:05:1e.0: can't claim BAR 0 [io 0x7f810000000-0x7f810000fff]: no compatible bridge window V210: pci 0001:00:07.0: can't claim BAR 0 [io 0x7fe01000000-0x7fe0100ffff]: address conflict with 0001:00:06.0 [io 0x7fe01000600-0x7fe0100061f] pci 0001:00:07.0: can't claim BAR 1 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with Video RAM area [??? 0x7ff000a0000-0x7ff000bffff flags 0x80000000] pci 0001:00:07.0: can't claim BAR 2 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with Video RAM area [??? 0x7ff000a0000-0x7ff000bffff flags 0x80000000] V240: pci 0001:00:07.0: can't claim BAR 0 [io 0x7fe01000000-0x7fe0100ffff]: address conflict with 0001:00:06.0 [io 0x7fe01000600-0x7fe0100061f] pci 0001:00:07.0: can't claim BAR 1 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with Video RAM area [??? 0x7ff000a0000-0x7ff000bffff flags 0x80000000] pci 0001:00:07.0: can't claim BAR 2 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with Video RAM area [??? 0x7ff000a0000-0x7ff000bffff flags 0x80000000] V440: pci 0002:00:07.0: can't claim BAR 0 [io 0x7fe01000000-0x7fe0100ffff]: address conflict with 0002:00:06.0 [io 0x7fe01000600-0x7fe0100061f] pci 0002:00:07.0: can't claim BAR 1 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with Video RAM area [??? 0x7ff000a0000-0x7ff000bffff flags 0x80000000] pci 0002:00:07.0: can't claim BAR 2 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with Video RAM area [??? 0x7ff000a0000-0x7ff000bffff flags 0x80000000] Blade 100: pci 0000:00:07.0: can't claim BAR 0 [io 0x1fe02000000-0x1fe0200ffff]: address conflict with 0000:00:03.0 [io 0x1fe02000600-0x1fe0200061f] pci 0000:00:07.0: can't claim BAR 1 [mem 0x1ff00000000-0x1ff000fffff]: address conflict with Video RAM area [??? 0x1ff000a0000-0x1ff000bffff flags 0x80000000] -- Meelis Roos (mroos@linux.ee) ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic 2018-04-08 18:44 ` Meelis Roos @ 2018-04-08 21:21 ` David Miller -1 siblings, 0 replies; 40+ messages in thread From: David Miller @ 2018-04-08 21:21 UTC (permalink / raw) To: mroos; +Cc: yinghai, linux-pci, sparclinux From: Meelis Roos <mroos@linux.ee> Date: Sun, 8 Apr 2018 21:44:57 +0300 (EEST) > This is a followup on the thread https://lkml.org/lkml/2015/10/7/135 and > corresponding https://bugzilla.kernel.org/show_bug.cgi?id=117191 entry. > > I saw some sparc64 PCI allocation changes in yesterdays git and compiled > 4.16.0-10242-gf605ba9 on most of my sparc64 machines to test if the PCI > BAR allocation problems introduced in 4.3 were fixed on some of them. > Alas, no change at all - of the test machines, none showed any changes > in the error messages in "dmesg | grep BAR". > > There was one test machine, T1000 with no addon cards, that did not > encounter any problem, before or after the recent patch. All the other > test machines tried still have the BAR allocation problems. > > The errors seem to cluster into 3 categories: > > 1. many devices fail BAR allocations > 2. one of the Davicom Ethernet devices fails BAR allocation > 3. Uli ISA bridge fails BAR allocation. > > Full current dmesg and lspci info is also available if there is any > interest. I did not include it all here, which machines are interesting? PCI folks, please look into this. A regression like this should not linger since 4.3, thank you. ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic @ 2018-04-08 21:21 ` David Miller 0 siblings, 0 replies; 40+ messages in thread From: David Miller @ 2018-04-08 21:21 UTC (permalink / raw) To: mroos; +Cc: yinghai, linux-pci, sparclinux From: Meelis Roos <mroos@linux.ee> Date: Sun, 8 Apr 2018 21:44:57 +0300 (EEST) > This is a followup on the thread https://lkml.org/lkml/2015/10/7/135 and > corresponding https://bugzilla.kernel.org/show_bug.cgi?id\x117191 entry. > > I saw some sparc64 PCI allocation changes in yesterdays git and compiled > 4.16.0-10242-gf605ba9 on most of my sparc64 machines to test if the PCI > BAR allocation problems introduced in 4.3 were fixed on some of them. > Alas, no change at all - of the test machines, none showed any changes > in the error messages in "dmesg | grep BAR". > > There was one test machine, T1000 with no addon cards, that did not > encounter any problem, before or after the recent patch. All the other > test machines tried still have the BAR allocation problems. > > The errors seem to cluster into 3 categories: > > 1. many devices fail BAR allocations > 2. one of the Davicom Ethernet devices fails BAR allocation > 3. Uli ISA bridge fails BAR allocation. > > Full current dmesg and lspci info is also available if there is any > interest. I did not include it all here, which machines are interesting? PCI folks, please look into this. A regression like this should not linger since 4.3, thank you. ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic 2018-04-08 21:21 ` David Miller @ 2018-04-09 3:00 ` Sinan Kaya -1 siblings, 0 replies; 40+ messages in thread From: Sinan Kaya @ 2018-04-09 3:00 UTC (permalink / raw) To: David Miller, mroos; +Cc: yinghai, linux-pci, sparclinux On 4/8/2018 5:21 PM, David Miller wrote: > From: Meelis Roos <mroos@linux.ee> > Date: Sun, 8 Apr 2018 21:44:57 +0300 (EEST) > >> This is a followup on the thread https://lkml.org/lkml/2015/10/7/135 and >> corresponding https://bugzilla.kernel.org/show_bug.cgi?id=117191 entry. >> >> I saw some sparc64 PCI allocation changes in yesterdays git and compiled >> 4.16.0-10242-gf605ba9 on most of my sparc64 machines to test if the PCI >> BAR allocation problems introduced in 4.3 were fixed on some of them. >> Alas, no change at all - of the test machines, none showed any changes >> in the error messages in "dmesg | grep BAR". >> >> There was one test machine, T1000 with no addon cards, that did not >> encounter any problem, before or after the recent patch. All the other >> test machines tried still have the BAR allocation problems. >> >> The errors seem to cluster into 3 categories: >> >> 1. many devices fail BAR allocations >> 2. one of the Davicom Ethernet devices fails BAR allocation >> 3. Uli ISA bridge fails BAR allocation. >> >> Full current dmesg and lspci info is also available if there is any >> interest. I did not include it all here, which machines are interesting? > > PCI folks, please look into this. > > A regression like this should not linger since 4.3, thank you. > It sounds like a FW issue. Does the problem go away when you boot with pci=realloc kernel command line? -- Sinan Kaya Qualcomm Datacenter Technologies, Inc. as an affiliate of Qualcomm Technologies, Inc. Qualcomm Technologies, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project. ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic @ 2018-04-09 3:00 ` Sinan Kaya 0 siblings, 0 replies; 40+ messages in thread From: Sinan Kaya @ 2018-04-09 3:00 UTC (permalink / raw) To: David Miller, mroos; +Cc: yinghai, linux-pci, sparclinux On 4/8/2018 5:21 PM, David Miller wrote: > From: Meelis Roos <mroos@linux.ee> > Date: Sun, 8 Apr 2018 21:44:57 +0300 (EEST) > >> This is a followup on the thread https://lkml.org/lkml/2015/10/7/135 and >> corresponding https://bugzilla.kernel.org/show_bug.cgi?id\x117191 entry. >> >> I saw some sparc64 PCI allocation changes in yesterdays git and compiled >> 4.16.0-10242-gf605ba9 on most of my sparc64 machines to test if the PCI >> BAR allocation problems introduced in 4.3 were fixed on some of them. >> Alas, no change at all - of the test machines, none showed any changes >> in the error messages in "dmesg | grep BAR". >> >> There was one test machine, T1000 with no addon cards, that did not >> encounter any problem, before or after the recent patch. All the other >> test machines tried still have the BAR allocation problems. >> >> The errors seem to cluster into 3 categories: >> >> 1. many devices fail BAR allocations >> 2. one of the Davicom Ethernet devices fails BAR allocation >> 3. Uli ISA bridge fails BAR allocation. >> >> Full current dmesg and lspci info is also available if there is any >> interest. I did not include it all here, which machines are interesting? > > PCI folks, please look into this. > > A regression like this should not linger since 4.3, thank you. > It sounds like a FW issue. Does the problem go away when you boot with pci=realloc kernel command line? -- Sinan Kaya Qualcomm Datacenter Technologies, Inc. as an affiliate of Qualcomm Technologies, Inc. Qualcomm Technologies, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project. ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic 2018-04-09 3:00 ` Sinan Kaya @ 2018-04-09 10:47 ` Meelis Roos -1 siblings, 0 replies; 40+ messages in thread From: Meelis Roos @ 2018-04-09 10:47 UTC (permalink / raw) To: Sinan Kaya; +Cc: David Miller, yinghai, linux-pci, sparclinux > >> This is a followup on the thread https://lkml.org/lkml/2015/10/7/135 and > >> corresponding https://bugzilla.kernel.org/show_bug.cgi?id=117191 entry. > >> > >> I saw some sparc64 PCI allocation changes in yesterdays git and compiled > >> 4.16.0-10242-gf605ba9 on most of my sparc64 machines to test if the PCI > >> BAR allocation problems introduced in 4.3 were fixed on some of them. > >> Alas, no change at all - of the test machines, none showed any changes > >> in the error messages in "dmesg | grep BAR". > >> > >> There was one test machine, T1000 with no addon cards, that did not > >> encounter any problem, before or after the recent patch. All the other > >> test machines tried still have the BAR allocation problems. > >> > >> The errors seem to cluster into 3 categories: > >> > >> 1. many devices fail BAR allocations > >> 2. one of the Davicom Ethernet devices fails BAR allocation > >> 3. Uli ISA bridge fails BAR allocation. > >> > >> Full current dmesg and lspci info is also available if there is any > >> interest. I did not include it all here, which machines are interesting? > > > > PCI folks, please look into this. > > > > A regression like this should not linger since 4.3, thank you. > > > > It sounds like a FW issue. Does the problem go away when you boot with > pci=realloc kernel command line? Tried it on T2000, still the same. -- Meelis Roos (mroos@linux.ee) ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic @ 2018-04-09 10:47 ` Meelis Roos 0 siblings, 0 replies; 40+ messages in thread From: Meelis Roos @ 2018-04-09 10:47 UTC (permalink / raw) To: Sinan Kaya; +Cc: David Miller, yinghai, linux-pci, sparclinux > >> This is a followup on the thread https://lkml.org/lkml/2015/10/7/135 and > >> corresponding https://bugzilla.kernel.org/show_bug.cgi?id\x117191 entry. > >> > >> I saw some sparc64 PCI allocation changes in yesterdays git and compiled > >> 4.16.0-10242-gf605ba9 on most of my sparc64 machines to test if the PCI > >> BAR allocation problems introduced in 4.3 were fixed on some of them. > >> Alas, no change at all - of the test machines, none showed any changes > >> in the error messages in "dmesg | grep BAR". > >> > >> There was one test machine, T1000 with no addon cards, that did not > >> encounter any problem, before or after the recent patch. All the other > >> test machines tried still have the BAR allocation problems. > >> > >> The errors seem to cluster into 3 categories: > >> > >> 1. many devices fail BAR allocations > >> 2. one of the Davicom Ethernet devices fails BAR allocation > >> 3. Uli ISA bridge fails BAR allocation. > >> > >> Full current dmesg and lspci info is also available if there is any > >> interest. I did not include it all here, which machines are interesting? > > > > PCI folks, please look into this. > > > > A regression like this should not linger since 4.3, thank you. > > > > It sounds like a FW issue. Does the problem go away when you boot with > pci=realloc kernel command line? Tried it on T2000, still the same. -- Meelis Roos (mroos@linux.ee) ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic 2018-04-08 18:44 ` Meelis Roos @ 2018-04-09 3:23 ` Bjorn Helgaas -1 siblings, 0 replies; 40+ messages in thread From: Bjorn Helgaas @ 2018-04-09 3:23 UTC (permalink / raw) To: Meelis Roos; +Cc: Yinghai Lu, linux-pci, sparclinux On Sun, Apr 08, 2018 at 09:44:57PM +0300, Meelis Roos wrote: > This is a followup on the thread https://lkml.org/lkml/2015/10/7/135 and > corresponding https://bugzilla.kernel.org/show_bug.cgi?id=117191 entry. > > I saw some sparc64 PCI allocation changes in yesterdays git and compiled > 4.16.0-10242-gf605ba9 on most of my sparc64 machines to test if the PCI > BAR allocation problems introduced in 4.3 were fixed on some of them. > Alas, no change at all - of the test machines, none showed any changes > in the error messages in "dmesg | grep BAR". > > There was one test machine, T1000 with no addon cards, that did not > encounter any problem, before or after the recent patch. All the other > test machines tried still have the BAR allocation problems. > > The errors seem to cluster into 3 categories: > > 1. many devices fail BAR allocations > 2. one of the Davicom Ethernet devices fails BAR allocation > 3. Uli ISA bridge fails BAR allocation. > > Full current dmesg and lspci info is also available if there is any > interest. I did not include it all here, which machines are interesting? I'm interested in that info. Can you attach it all to the bugzilla? I can't predict ahead of time which pieces will be useful. If you happen to have more specific information about which commit introduced the regression, that might be helpful, but it's probably not worth starting a new bisection yet. Bjorn ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic @ 2018-04-09 3:23 ` Bjorn Helgaas 0 siblings, 0 replies; 40+ messages in thread From: Bjorn Helgaas @ 2018-04-09 3:23 UTC (permalink / raw) To: Meelis Roos; +Cc: Yinghai Lu, linux-pci, sparclinux On Sun, Apr 08, 2018 at 09:44:57PM +0300, Meelis Roos wrote: > This is a followup on the thread https://lkml.org/lkml/2015/10/7/135 and > corresponding https://bugzilla.kernel.org/show_bug.cgi?id\x117191 entry. > > I saw some sparc64 PCI allocation changes in yesterdays git and compiled > 4.16.0-10242-gf605ba9 on most of my sparc64 machines to test if the PCI > BAR allocation problems introduced in 4.3 were fixed on some of them. > Alas, no change at all - of the test machines, none showed any changes > in the error messages in "dmesg | grep BAR". > > There was one test machine, T1000 with no addon cards, that did not > encounter any problem, before or after the recent patch. All the other > test machines tried still have the BAR allocation problems. > > The errors seem to cluster into 3 categories: > > 1. many devices fail BAR allocations > 2. one of the Davicom Ethernet devices fails BAR allocation > 3. Uli ISA bridge fails BAR allocation. > > Full current dmesg and lspci info is also available if there is any > interest. I did not include it all here, which machines are interesting? I'm interested in that info. Can you attach it all to the bugzilla? I can't predict ahead of time which pieces will be useful. If you happen to have more specific information about which commit introduced the regression, that might be helpful, but it's probably not worth starting a new bisection yet. Bjorn ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic 2018-04-09 3:23 ` Bjorn Helgaas @ 2018-04-09 14:30 ` Meelis Roos -1 siblings, 0 replies; 40+ messages in thread From: Meelis Roos @ 2018-04-09 14:30 UTC (permalink / raw) To: Bjorn Helgaas; +Cc: Yinghai Lu, linux-pci, sparclinux > > Full current dmesg and lspci info is also available if there is any > > interest. I did not include it all here, which machines are interesting? > > I'm interested in that info. Can you attach it all to the bugzilla? > I can't predict ahead of time which pieces will be useful. Added, all of them. -- Meelis Roos (mroos@linux.ee) ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic @ 2018-04-09 14:30 ` Meelis Roos 0 siblings, 0 replies; 40+ messages in thread From: Meelis Roos @ 2018-04-09 14:30 UTC (permalink / raw) To: Bjorn Helgaas; +Cc: Yinghai Lu, linux-pci, sparclinux > > Full current dmesg and lspci info is also available if there is any > > interest. I did not include it all here, which machines are interesting? > > I'm interested in that info. Can you attach it all to the bugzilla? > I can't predict ahead of time which pieces will be useful. Added, all of them. -- Meelis Roos (mroos@linux.ee) ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic 2018-04-08 18:44 ` Meelis Roos @ 2018-04-10 17:34 ` Bjorn Helgaas -1 siblings, 0 replies; 40+ messages in thread From: Bjorn Helgaas @ 2018-04-10 17:34 UTC (permalink / raw) To: Meelis Roos; +Cc: Yinghai Lu, linux-pci, sparclinux On Sun, Apr 08, 2018 at 09:44:57PM +0300, Meelis Roos wrote: > This is a followup on the thread https://lkml.org/lkml/2015/10/7/135 and > corresponding https://bugzilla.kernel.org/show_bug.cgi?id=117191 entry. > > I saw some sparc64 PCI allocation changes in yesterdays git and compiled > 4.16.0-10242-gf605ba9 on most of my sparc64 machines to test if the PCI > BAR allocation problems introduced in 4.3 were fixed on some of them. > Alas, no change at all - of the test machines, none showed any changes > in the error messages in "dmesg | grep BAR". > > There was one test machine, T1000 with no addon cards, that did not > encounter any problem, before or after the recent patch. All the other > test machines tried still have the BAR allocation problems. > > The errors seem to cluster into 3 categories: > > 1. many devices fail BAR allocations > 2. one of the Davicom Ethernet devices fails BAR allocation > 3. Uli ISA bridge fails BAR allocation. Thank you very much for all the data you've collected, and I apologize for the fact that this has lingered so long. Yinghai started fixing some of these a year ago, but the conversation petered out before it got completed. There are several unrelated problems here, so I'm looking at one at a time. Below is a test patch (based on fd3b36d27566) for the "conflict with Video RAM" messages. Could you try this on one of the machines that complains about that? I'm interested in the dmesg and /proc/iomem contents. You already attached the lspci output, and I don't think this patch will affect that. It looks like everything except T2000 and V245 has this problem (it's dependent on whether the box has a VGA device and whether firmware has assigned the VGA framebuffer area to some non-VGA device). Most of your machines have other problems as well, and I'll look at those next. Bjorn commit bc270e0028cd0856d5689cab38f0071f0d07b3be Author: Bjorn Helgaas <bhelgaas@google.com> Date: Tue Apr 10 08:47:34 2018 -0500 sparc/PCI: Request legacy VGA framebuffer only for VGA devices Previously we unconditionally requested the legacy VGA framebuffer (bus address 0xa0000-0xbffff) before we even know what PCI devices are present, in these paths: pci_fire_pbm_init, schizo_pbm_init, pci_sun4v_pbm_init, psycho_pbm_init_common pci_determine_mem_io_space pci_register_legacy_regions p->start = mem_res->start + 0xa0000 request_resource(mem_res, p) # claim VGA framebuffer pci_scan_one_pbm pci_of_scan_bus # scan DT for PCI devices pci_claim_bus_resources # claim PCI device BARs If we found a PCI device with a BAR that overlapped the framebuffer area, we complained about not being able to claim the BAR, e.g., pci_bus 0002:00: root bus resource [mem 0x7ff00000000-0x7ffffffffff] (bus address [0x00000000-0xffffffff]) pci 0002:00:07.0: can't claim BAR 1 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with Video RAM area [??? 0x7ff000a0000-0x7ff000bffff flags 0x80000000] If there is no VGA device in the same PCI segment, there's no reason to reserve the framebuffer and there's no conflict. If there *is* a VGA device in the same segment, both the VGA device and the device with an overlapping BAR may respond to the framebuffer addresses, which may cause bus errors. Request the legacy framebuffer area only when we actually find a VGA device. This is not sparc-specific and could be made more generic in the PCI core eventually. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=117191 Reported-by: Meelis Roos <mroos@linux.ee> diff --git a/arch/sparc/kernel/pci.c b/arch/sparc/kernel/pci.c index 41b20edb427d..e2b4f2e44dd3 100644 --- a/arch/sparc/kernel/pci.c +++ b/arch/sparc/kernel/pci.c @@ -624,6 +624,44 @@ static void pci_bus_register_of_sysfs(struct pci_bus *bus) pci_bus_register_of_sysfs(child_bus); } +static void pci_claim_legacy_resources(struct pci_dev *dev) +{ + struct pci_bus_region region; + struct resource *p, *root, *conflict; + + if ((dev->class >> 8) != PCI_CLASS_DISPLAY_VGA) + return; + + p = kzalloc(sizeof(*p), GFP_KERNEL); + if (!p) + return; + + p->name = "Video RAM area"; + p->flags = IORESOURCE_MEM | IORESOURCE_BUSY; + + region.start = 0xa0000UL; + region.end = region.start + 0x1ffffUL; + pcibios_bus_to_resource(bus, p, ®ion); + + root = pci_find_parent_resource(dev, p); + if (!root) { + pci_info(dev, "can't claim VGA legacy %pR: no compatible bridge window\n", p); + goto err; + } + + conflict = request_resource_conflict(root, p); + if (conflict) { + pci_info(dev, "can't claim VGA legacy %pR: address conflict with %s %pR\n", + p, conflict->name, conflict); + goto err; + } + + return; + +err: + kfree(p); +} + static void pci_claim_bus_resources(struct pci_bus *bus) { struct pci_bus *child_bus; @@ -648,6 +686,8 @@ static void pci_claim_bus_resources(struct pci_bus *bus) pci_claim_resource(dev, i); } + + pci_claim_legacy_resources(dev); } list_for_each_entry(child_bus, &bus->children, node) @@ -687,6 +727,7 @@ struct pci_bus *pci_scan_one_pbm(struct pci_pbm_info *pbm, pci_bus_register_of_sysfs(bus); pci_claim_bus_resources(bus); + pci_bus_add_devices(bus); return bus; } diff --git a/arch/sparc/kernel/pci_common.c b/arch/sparc/kernel/pci_common.c index 38d46bcc8634..9bb6a192ef3f 100644 --- a/arch/sparc/kernel/pci_common.c +++ b/arch/sparc/kernel/pci_common.c @@ -329,23 +329,6 @@ void pci_get_pbm_props(struct pci_pbm_info *pbm) } } -static void pci_register_legacy_regions(struct resource *io_res, - struct resource *mem_res) -{ - struct resource *p; - - /* VGA Video RAM. */ - p = kzalloc(sizeof(*p), GFP_KERNEL); - if (!p) - return; - - p->name = "Video RAM area"; - p->start = mem_res->start + 0xa0000UL; - p->end = p->start + 0x1ffffUL; - p->flags = IORESOURCE_BUSY; - request_resource(mem_res, p); -} - static void pci_register_iommu_region(struct pci_pbm_info *pbm) { const u32 *vdma = of_get_property(pbm->op->dev.of_node, "virtual-dma", @@ -487,8 +470,6 @@ void pci_determine_mem_io_space(struct pci_pbm_info *pbm) if (pbm->mem64_space.flags) request_resource(&iomem_resource, &pbm->mem64_space); - pci_register_legacy_regions(&pbm->io_space, - &pbm->mem_space); pci_register_iommu_region(pbm); } ^ permalink raw reply related [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic @ 2018-04-10 17:34 ` Bjorn Helgaas 0 siblings, 0 replies; 40+ messages in thread From: Bjorn Helgaas @ 2018-04-10 17:34 UTC (permalink / raw) To: Meelis Roos; +Cc: Yinghai Lu, linux-pci, sparclinux On Sun, Apr 08, 2018 at 09:44:57PM +0300, Meelis Roos wrote: > This is a followup on the thread https://lkml.org/lkml/2015/10/7/135 and > corresponding https://bugzilla.kernel.org/show_bug.cgi?id\x117191 entry. > > I saw some sparc64 PCI allocation changes in yesterdays git and compiled > 4.16.0-10242-gf605ba9 on most of my sparc64 machines to test if the PCI > BAR allocation problems introduced in 4.3 were fixed on some of them. > Alas, no change at all - of the test machines, none showed any changes > in the error messages in "dmesg | grep BAR". > > There was one test machine, T1000 with no addon cards, that did not > encounter any problem, before or after the recent patch. All the other > test machines tried still have the BAR allocation problems. > > The errors seem to cluster into 3 categories: > > 1. many devices fail BAR allocations > 2. one of the Davicom Ethernet devices fails BAR allocation > 3. Uli ISA bridge fails BAR allocation. Thank you very much for all the data you've collected, and I apologize for the fact that this has lingered so long. Yinghai started fixing some of these a year ago, but the conversation petered out before it got completed. There are several unrelated problems here, so I'm looking at one at a time. Below is a test patch (based on fd3b36d27566) for the "conflict with Video RAM" messages. Could you try this on one of the machines that complains about that? I'm interested in the dmesg and /proc/iomem contents. You already attached the lspci output, and I don't think this patch will affect that. It looks like everything except T2000 and V245 has this problem (it's dependent on whether the box has a VGA device and whether firmware has assigned the VGA framebuffer area to some non-VGA device). Most of your machines have other problems as well, and I'll look at those next. Bjorn commit bc270e0028cd0856d5689cab38f0071f0d07b3be Author: Bjorn Helgaas <bhelgaas@google.com> Date: Tue Apr 10 08:47:34 2018 -0500 sparc/PCI: Request legacy VGA framebuffer only for VGA devices Previously we unconditionally requested the legacy VGA framebuffer (bus address 0xa0000-0xbffff) before we even know what PCI devices are present, in these paths: pci_fire_pbm_init, schizo_pbm_init, pci_sun4v_pbm_init, psycho_pbm_init_common pci_determine_mem_io_space pci_register_legacy_regions p->start = mem_res->start + 0xa0000 request_resource(mem_res, p) # claim VGA framebuffer pci_scan_one_pbm pci_of_scan_bus # scan DT for PCI devices pci_claim_bus_resources # claim PCI device BARs If we found a PCI device with a BAR that overlapped the framebuffer area, we complained about not being able to claim the BAR, e.g., pci_bus 0002:00: root bus resource [mem 0x7ff00000000-0x7ffffffffff] (bus address [0x00000000-0xffffffff]) pci 0002:00:07.0: can't claim BAR 1 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with Video RAM area [??? 0x7ff000a0000-0x7ff000bffff flags 0x80000000] If there is no VGA device in the same PCI segment, there's no reason to reserve the framebuffer and there's no conflict. If there *is* a VGA device in the same segment, both the VGA device and the device with an overlapping BAR may respond to the framebuffer addresses, which may cause bus errors. Request the legacy framebuffer area only when we actually find a VGA device. This is not sparc-specific and could be made more generic in the PCI core eventually. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id\x117191 Reported-by: Meelis Roos <mroos@linux.ee> diff --git a/arch/sparc/kernel/pci.c b/arch/sparc/kernel/pci.c index 41b20edb427d..e2b4f2e44dd3 100644 --- a/arch/sparc/kernel/pci.c +++ b/arch/sparc/kernel/pci.c @@ -624,6 +624,44 @@ static void pci_bus_register_of_sysfs(struct pci_bus *bus) pci_bus_register_of_sysfs(child_bus); } +static void pci_claim_legacy_resources(struct pci_dev *dev) +{ + struct pci_bus_region region; + struct resource *p, *root, *conflict; + + if ((dev->class >> 8) != PCI_CLASS_DISPLAY_VGA) + return; + + p = kzalloc(sizeof(*p), GFP_KERNEL); + if (!p) + return; + + p->name = "Video RAM area"; + p->flags = IORESOURCE_MEM | IORESOURCE_BUSY; + + region.start = 0xa0000UL; + region.end = region.start + 0x1ffffUL; + pcibios_bus_to_resource(bus, p, ®ion); + + root = pci_find_parent_resource(dev, p); + if (!root) { + pci_info(dev, "can't claim VGA legacy %pR: no compatible bridge window\n", p); + goto err; + } + + conflict = request_resource_conflict(root, p); + if (conflict) { + pci_info(dev, "can't claim VGA legacy %pR: address conflict with %s %pR\n", + p, conflict->name, conflict); + goto err; + } + + return; + +err: + kfree(p); +} + static void pci_claim_bus_resources(struct pci_bus *bus) { struct pci_bus *child_bus; @@ -648,6 +686,8 @@ static void pci_claim_bus_resources(struct pci_bus *bus) pci_claim_resource(dev, i); } + + pci_claim_legacy_resources(dev); } list_for_each_entry(child_bus, &bus->children, node) @@ -687,6 +727,7 @@ struct pci_bus *pci_scan_one_pbm(struct pci_pbm_info *pbm, pci_bus_register_of_sysfs(bus); pci_claim_bus_resources(bus); + pci_bus_add_devices(bus); return bus; } diff --git a/arch/sparc/kernel/pci_common.c b/arch/sparc/kernel/pci_common.c index 38d46bcc8634..9bb6a192ef3f 100644 --- a/arch/sparc/kernel/pci_common.c +++ b/arch/sparc/kernel/pci_common.c @@ -329,23 +329,6 @@ void pci_get_pbm_props(struct pci_pbm_info *pbm) } } -static void pci_register_legacy_regions(struct resource *io_res, - struct resource *mem_res) -{ - struct resource *p; - - /* VGA Video RAM. */ - p = kzalloc(sizeof(*p), GFP_KERNEL); - if (!p) - return; - - p->name = "Video RAM area"; - p->start = mem_res->start + 0xa0000UL; - p->end = p->start + 0x1ffffUL; - p->flags = IORESOURCE_BUSY; - request_resource(mem_res, p); -} - static void pci_register_iommu_region(struct pci_pbm_info *pbm) { const u32 *vdma = of_get_property(pbm->op->dev.of_node, "virtual-dma", @@ -487,8 +470,6 @@ void pci_determine_mem_io_space(struct pci_pbm_info *pbm) if (pbm->mem64_space.flags) request_resource(&iomem_resource, &pbm->mem64_space); - pci_register_legacy_regions(&pbm->io_space, - &pbm->mem_space); pci_register_iommu_region(pbm); } ^ permalink raw reply related [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic 2018-04-10 17:34 ` Bjorn Helgaas @ 2018-04-10 18:45 ` Meelis Roos -1 siblings, 0 replies; 40+ messages in thread From: Meelis Roos @ 2018-04-10 18:45 UTC (permalink / raw) To: Bjorn Helgaas; +Cc: Yinghai Lu, linux-pci, sparclinux > commit bc270e0028cd0856d5689cab38f0071f0d07b3be > Author: Bjorn Helgaas <bhelgaas@google.com> > Date: Tue Apr 10 08:47:34 2018 -0500 >=20 > sparc/PCI: Request legacy VGA framebuffer only for VGA devices Thank you. It does not seem to compile for me: CC arch/sparc/kernel/pci.o arch/sparc/kernel/pci.c: In function =A1pci_claim_legacy_resources=A2: arch/sparc/kernel/pci.c:644:26: error: =A1bus=A2 undeclared (first use in= this function) pcibios_bus_to_resource(bus, p, ®ion); --=20 Meelis Roos (mroos@linux.ee) ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic @ 2018-04-10 18:45 ` Meelis Roos 0 siblings, 0 replies; 40+ messages in thread From: Meelis Roos @ 2018-04-10 18:45 UTC (permalink / raw) To: Bjorn Helgaas; +Cc: Yinghai Lu, linux-pci, sparclinux > commit bc270e0028cd0856d5689cab38f0071f0d07b3be > Author: Bjorn Helgaas <bhelgaas@google.com> > Date: Tue Apr 10 08:47:34 2018 -0500 > > sparc/PCI: Request legacy VGA framebuffer only for VGA devices Thank you. It does not seem to compile for me: CC arch/sparc/kernel/pci.o arch/sparc/kernel/pci.c: In function ¡pci_claim_legacy_resources¢: arch/sparc/kernel/pci.c:644:26: error: ¡bus¢ undeclared (first use in this function) pcibios_bus_to_resource(bus, p, ®ion); -- Meelis Roos (mroos@linux.ee) ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic 2018-04-10 18:45 ` Meelis Roos @ 2018-04-10 18:56 ` Bjorn Helgaas -1 siblings, 0 replies; 40+ messages in thread From: Bjorn Helgaas @ 2018-04-10 18:56 UTC (permalink / raw) To: Meelis Roos; +Cc: Yinghai Lu, linux-pci, sparclinux On Tue, Apr 10, 2018 at 09:45:09PM +0300, Meelis Roos wrote: > > commit bc270e0028cd0856d5689cab38f0071f0d07b3be > > Author: Bjorn Helgaas <bhelgaas@google.com> > > Date: Tue Apr 10 08:47:34 2018 -0500 > > > > sparc/PCI: Request legacy VGA framebuffer only for VGA devices > > Thank you. > > It does not seem to compile for me: > > CC arch/sparc/kernel/pci.o > arch/sparc/kernel/pci.c: In function ‘pci_claim_legacy_resources’: > arch/sparc/kernel/pci.c:644:26: error: ‘bus’ undeclared (first use in this function) > pcibios_bus_to_resource(bus, p, ®ion); Oops, sorry, I can't easily compile test it. Here's an updated patch: commit a9ded309cbf3f57e9979848fd0aa0ffacdf11f1a Author: Bjorn Helgaas <bhelgaas@google.com> Date: Tue Apr 10 08:47:34 2018 -0500 sparc/PCI: Request legacy VGA framebuffer only for VGA devices Previously we unconditionally requested the legacy VGA framebuffer (bus address 0xa0000-0xbffff) before we even know what PCI devices are present, in these paths: pci_fire_pbm_init, schizo_pbm_init, pci_sun4v_pbm_init, psycho_pbm_init_common pci_determine_mem_io_space pci_register_legacy_regions p->start = mem_res->start + 0xa0000 request_resource(mem_res, p) # claim VGA framebuffer pci_scan_one_pbm pci_of_scan_bus # scan DT for PCI devices pci_claim_bus_resources # claim PCI device BARs If we found a PCI device with a BAR that overlapped the framebuffer area, we complained about not being able to claim the BAR, e.g., pci_bus 0002:00: root bus resource [mem 0x7ff00000000-0x7ffffffffff] (bus address [0x00000000-0xffffffff]) pci 0002:00:07.0: can't claim BAR 1 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with Video RAM area [??? 0x7ff000a0000-0x7ff000bffff flags 0x80000000] If there is no VGA device in the same PCI segment, there's no reason to reserve the framebuffer and there's no conflict. If there *is* a VGA device in the same segment, both the VGA device and the device with an overlapping BAR may respond to the framebuffer addresses, which may cause bus errors. Request the legacy framebuffer area only when we actually find a VGA device. This is not sparc-specific and could be made more generic in the PCI core eventually. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=117191 Reported-by: Meelis Roos <mroos@linux.ee> diff --git a/arch/sparc/kernel/pci.c b/arch/sparc/kernel/pci.c index 41b20edb427d..d5360e941620 100644 --- a/arch/sparc/kernel/pci.c +++ b/arch/sparc/kernel/pci.c @@ -624,6 +624,44 @@ static void pci_bus_register_of_sysfs(struct pci_bus *bus) pci_bus_register_of_sysfs(child_bus); } +static void pci_claim_legacy_resources(struct pci_dev *dev) +{ + struct pci_bus_region region; + struct resource *p, *root, *conflict; + + if ((dev->class >> 8) != PCI_CLASS_DISPLAY_VGA) + return; + + p = kzalloc(sizeof(*p), GFP_KERNEL); + if (!p) + return; + + p->name = "Video RAM area"; + p->flags = IORESOURCE_MEM | IORESOURCE_BUSY; + + region.start = 0xa0000UL; + region.end = region.start + 0x1ffffUL; + pcibios_bus_to_resource(dev->bus, p, ®ion); + + root = pci_find_parent_resource(dev, p); + if (!root) { + pci_info(dev, "can't claim VGA legacy %pR: no compatible bridge window\n", p); + goto err; + } + + conflict = request_resource_conflict(root, p); + if (conflict) { + pci_info(dev, "can't claim VGA legacy %pR: address conflict with %s %pR\n", + p, conflict->name, conflict); + goto err; + } + + return; + +err: + kfree(p); +} + static void pci_claim_bus_resources(struct pci_bus *bus) { struct pci_bus *child_bus; @@ -648,6 +686,8 @@ static void pci_claim_bus_resources(struct pci_bus *bus) pci_claim_resource(dev, i); } + + pci_claim_legacy_resources(dev); } list_for_each_entry(child_bus, &bus->children, node) @@ -687,6 +727,7 @@ struct pci_bus *pci_scan_one_pbm(struct pci_pbm_info *pbm, pci_bus_register_of_sysfs(bus); pci_claim_bus_resources(bus); + pci_bus_add_devices(bus); return bus; } diff --git a/arch/sparc/kernel/pci_common.c b/arch/sparc/kernel/pci_common.c index 38d46bcc8634..9bb6a192ef3f 100644 --- a/arch/sparc/kernel/pci_common.c +++ b/arch/sparc/kernel/pci_common.c @@ -329,23 +329,6 @@ void pci_get_pbm_props(struct pci_pbm_info *pbm) } } -static void pci_register_legacy_regions(struct resource *io_res, - struct resource *mem_res) -{ - struct resource *p; - - /* VGA Video RAM. */ - p = kzalloc(sizeof(*p), GFP_KERNEL); - if (!p) - return; - - p->name = "Video RAM area"; - p->start = mem_res->start + 0xa0000UL; - p->end = p->start + 0x1ffffUL; - p->flags = IORESOURCE_BUSY; - request_resource(mem_res, p); -} - static void pci_register_iommu_region(struct pci_pbm_info *pbm) { const u32 *vdma = of_get_property(pbm->op->dev.of_node, "virtual-dma", @@ -487,8 +470,6 @@ void pci_determine_mem_io_space(struct pci_pbm_info *pbm) if (pbm->mem64_space.flags) request_resource(&iomem_resource, &pbm->mem64_space); - pci_register_legacy_regions(&pbm->io_space, - &pbm->mem_space); pci_register_iommu_region(pbm); } ^ permalink raw reply related [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic @ 2018-04-10 18:56 ` Bjorn Helgaas 0 siblings, 0 replies; 40+ messages in thread From: Bjorn Helgaas @ 2018-04-10 18:56 UTC (permalink / raw) To: Meelis Roos; +Cc: Yinghai Lu, linux-pci, sparclinux On Tue, Apr 10, 2018 at 09:45:09PM +0300, Meelis Roos wrote: > > commit bc270e0028cd0856d5689cab38f0071f0d07b3be > > Author: Bjorn Helgaas <bhelgaas@google.com> > > Date: Tue Apr 10 08:47:34 2018 -0500 > > > > sparc/PCI: Request legacy VGA framebuffer only for VGA devices > > Thank you. > > It does not seem to compile for me: > > CC arch/sparc/kernel/pci.o > arch/sparc/kernel/pci.c: In function ‘pci_claim_legacy_resources’: > arch/sparc/kernel/pci.c:644:26: error: ‘bus’ undeclared (first use in this function) > pcibios_bus_to_resource(bus, p, ®ion); Oops, sorry, I can't easily compile test it. Here's an updated patch: commit a9ded309cbf3f57e9979848fd0aa0ffacdf11f1a Author: Bjorn Helgaas <bhelgaas@google.com> Date: Tue Apr 10 08:47:34 2018 -0500 sparc/PCI: Request legacy VGA framebuffer only for VGA devices Previously we unconditionally requested the legacy VGA framebuffer (bus address 0xa0000-0xbffff) before we even know what PCI devices are present, in these paths: pci_fire_pbm_init, schizo_pbm_init, pci_sun4v_pbm_init, psycho_pbm_init_common pci_determine_mem_io_space pci_register_legacy_regions p->start = mem_res->start + 0xa0000 request_resource(mem_res, p) # claim VGA framebuffer pci_scan_one_pbm pci_of_scan_bus # scan DT for PCI devices pci_claim_bus_resources # claim PCI device BARs If we found a PCI device with a BAR that overlapped the framebuffer area, we complained about not being able to claim the BAR, e.g., pci_bus 0002:00: root bus resource [mem 0x7ff00000000-0x7ffffffffff] (bus address [0x00000000-0xffffffff]) pci 0002:00:07.0: can't claim BAR 1 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with Video RAM area [??? 0x7ff000a0000-0x7ff000bffff flags 0x80000000] If there is no VGA device in the same PCI segment, there's no reason to reserve the framebuffer and there's no conflict. If there *is* a VGA device in the same segment, both the VGA device and the device with an overlapping BAR may respond to the framebuffer addresses, which may cause bus errors. Request the legacy framebuffer area only when we actually find a VGA device. This is not sparc-specific and could be made more generic in the PCI core eventually. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id\x117191 Reported-by: Meelis Roos <mroos@linux.ee> diff --git a/arch/sparc/kernel/pci.c b/arch/sparc/kernel/pci.c index 41b20edb427d..d5360e941620 100644 --- a/arch/sparc/kernel/pci.c +++ b/arch/sparc/kernel/pci.c @@ -624,6 +624,44 @@ static void pci_bus_register_of_sysfs(struct pci_bus *bus) pci_bus_register_of_sysfs(child_bus); } +static void pci_claim_legacy_resources(struct pci_dev *dev) +{ + struct pci_bus_region region; + struct resource *p, *root, *conflict; + + if ((dev->class >> 8) != PCI_CLASS_DISPLAY_VGA) + return; + + p = kzalloc(sizeof(*p), GFP_KERNEL); + if (!p) + return; + + p->name = "Video RAM area"; + p->flags = IORESOURCE_MEM | IORESOURCE_BUSY; + + region.start = 0xa0000UL; + region.end = region.start + 0x1ffffUL; + pcibios_bus_to_resource(dev->bus, p, ®ion); + + root = pci_find_parent_resource(dev, p); + if (!root) { + pci_info(dev, "can't claim VGA legacy %pR: no compatible bridge window\n", p); + goto err; + } + + conflict = request_resource_conflict(root, p); + if (conflict) { + pci_info(dev, "can't claim VGA legacy %pR: address conflict with %s %pR\n", + p, conflict->name, conflict); + goto err; + } + + return; + +err: + kfree(p); +} + static void pci_claim_bus_resources(struct pci_bus *bus) { struct pci_bus *child_bus; @@ -648,6 +686,8 @@ static void pci_claim_bus_resources(struct pci_bus *bus) pci_claim_resource(dev, i); } + + pci_claim_legacy_resources(dev); } list_for_each_entry(child_bus, &bus->children, node) @@ -687,6 +727,7 @@ struct pci_bus *pci_scan_one_pbm(struct pci_pbm_info *pbm, pci_bus_register_of_sysfs(bus); pci_claim_bus_resources(bus); + pci_bus_add_devices(bus); return bus; } diff --git a/arch/sparc/kernel/pci_common.c b/arch/sparc/kernel/pci_common.c index 38d46bcc8634..9bb6a192ef3f 100644 --- a/arch/sparc/kernel/pci_common.c +++ b/arch/sparc/kernel/pci_common.c @@ -329,23 +329,6 @@ void pci_get_pbm_props(struct pci_pbm_info *pbm) } } -static void pci_register_legacy_regions(struct resource *io_res, - struct resource *mem_res) -{ - struct resource *p; - - /* VGA Video RAM. */ - p = kzalloc(sizeof(*p), GFP_KERNEL); - if (!p) - return; - - p->name = "Video RAM area"; - p->start = mem_res->start + 0xa0000UL; - p->end = p->start + 0x1ffffUL; - p->flags = IORESOURCE_BUSY; - request_resource(mem_res, p); -} - static void pci_register_iommu_region(struct pci_pbm_info *pbm) { const u32 *vdma = of_get_property(pbm->op->dev.of_node, "virtual-dma", @@ -487,8 +470,6 @@ void pci_determine_mem_io_space(struct pci_pbm_info *pbm) if (pbm->mem64_space.flags) request_resource(&iomem_resource, &pbm->mem64_space); - pci_register_legacy_regions(&pbm->io_space, - &pbm->mem_space); pci_register_iommu_region(pbm); } ^ permalink raw reply related [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic 2018-04-10 18:56 ` Bjorn Helgaas @ 2018-04-11 7:59 ` Meelis Roos -1 siblings, 0 replies; 40+ messages in thread From: Meelis Roos @ 2018-04-11 7:59 UTC (permalink / raw) To: Bjorn Helgaas; +Cc: Yinghai Lu, linux-pci, sparclinux > Oops, sorry, I can't easily compile test it. Here's an updated patch: > > commit a9ded309cbf3f57e9979848fd0aa0ffacdf11f1a > Author: Bjorn Helgaas <bhelgaas@google.com> > Date: Tue Apr 10 08:47:34 2018 -0500 Thanks, this patch compiles and works - Video RAM related BAR allocation errors are gone. Hera are the /proc/iomem's but unfortunately the physical addresses have been censored by security: Netra X1: no BAR errors 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : Kernel code 00000000-00000000 : Kernel data 00000000-00000000 : Kernel bss 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : /pci@1f,0 00000000-00000000 : 0000:00:0c.0 00000000-00000000 : tulip 00000000-00000000 : 0000:00:05.0 00000000-00000000 : tulip 00000000-00000000 : 0000:00:0c.0 00000000-00000000 : 0000:00:05.0 00000000-00000000 : 0000:00:0a.0 00000000-00000000 : ohci_hcd 00000000-00000000 : IOMMU Fire V100: no BAR errors 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : Kernel code 00000000-00000000 : Kernel data 00000000-00000000 : Kernel bss 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : /pci@1f,0 00000000-00000000 : 0000:00:0c.0 00000000-00000000 : tulip 00000000-00000000 : 0000:00:05.0 00000000-00000000 : tulip 00000000-00000000 : 0000:00:0c.0 00000000-00000000 : 0000:00:05.0 00000000-00000000 : 0000:00:0a.0 00000000-00000000 : IOMMU Netra T1-105: no BAR errors, qla1280 loads fine. 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : Kernel code 00000000-00000000 : Kernel data 00000000-00000000 : Kernel bss 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : /pci@1f,0 00000000-00000000 : PCI Bus 0000:02 00000000-00000000 : PCI Bus 0000:03 00000000-00000000 : PCI Bus 0000:04 00000000-00000000 : 0000:04:00.0 00000000-00000000 : 0000:04:00.0 00000000-00000000 : 0000:04:00.1 00000000-00000000 : sunhme 00000000-00000000 : 0000:04:04.0 00000000-00000000 : 0000:04:04.0 00000000-00000000 : IOMMU 00000000-00000000 : PCI Bus 0000:01 00000000-00000000 : 0000:01:01.1 00000000-00000000 : sunhme 00000000-00000000 : 0000:01:02.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0000:01:02.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0000:01:03.1 00000000-00000000 : sunhme 00000000-00000000 : eeprom 00000000-00000000 : su 00000000-00000000 : su 00000000-00000000 : power 00000000-00000000 : auxio Netra T1-200: no BAR errors 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : Kernel code 00000000-00000000 : Kernel data 00000000-00000000 : Kernel bss 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : /pci@1f,0 00000000-00000000 : PCI Bus 0000:02 00000000-00000000 : 0000:02:08.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0000:02:08.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0000:02:08.1 00000000-00000000 : sym53c8xx 00000000-00000000 : 0000:02:08.1 00000000-00000000 : sym53c8xx 00000000-00000000 : 0000:02:05.0 00000000-00000000 : qla2xxx 00000000-00000000 : 0000:02:05.0 00000000-00000000 : IOMMU 00000000-00000000 : PCI Bus 0000:01 00000000-00000000 : 0000:01:0c.1 00000000-00000000 : sungem 00000000-00000000 : 0000:01:05.1 00000000-00000000 : sungem 00000000-00000000 : 0000:01:0c.1 00000000-00000000 : 0000:01:0c.3 00000000-00000000 : 0000:01:0c.3 00000000-00000000 : ohci_hcd 00000000-00000000 : 0000:01:05.1 00000000-00000000 : 0000:01:05.3 00000000-00000000 : 0000:01:05.3 00000000-00000000 : ohci_hcd 00000000-00000000 : eeprom Fire V120: no BAR errors 00000000-00000000 : System RAM 00000000-00000000 : Kernel code 00000000-00000000 : Kernel data 00000000-00000000 : Kernel bss 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : /pci@1f,0 00000000-00000000 : PCI Bus 0000:02 00000000-00000000 : 0000:02:08.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0000:02:08.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0000:02:08.1 00000000-00000000 : sym53c8xx 00000000-00000000 : 0000:02:08.1 00000000-00000000 : sym53c8xx 00000000-00000000 : IOMMU 00000000-00000000 : PCI Bus 0000:01 00000000-00000000 : 0000:01:0c.1 00000000-00000000 : sungem 00000000-00000000 : 0000:01:05.1 00000000-00000000 : sungem 00000000-00000000 : 0000:01:0c.1 00000000-00000000 : 0000:01:0c.3 00000000-00000000 : 0000:01:0c.3 00000000-00000000 : ohci_hcd 00000000-00000000 : 0000:01:05.1 00000000-00000000 : 0000:01:05.3 00000000-00000000 : 0000:01:05.3 00000000-00000000 : ohci_hcd 00000000-00000000 : eeprom Fire V210: Video RAM BAR error is gone, these are still here: [ 5.061083] pci 0001:00:07.0: can't claim BAR 0 [io 0x7fe01000000-0x7fe0100ffff]: address conflict with 0001:00:06.0 [io 0x7fe01000600-0x7fe0100061f] [ 5.061334] pci 0001:00:07.0: can't claim BAR 2 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with 0001:00:07.0 [mem 0x7ff00000000-0x7ff000fffff] 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : Kernel code 00000000-00000000 : Kernel data 00000000-00000000 : Kernel bss 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : jbusmc 00000000-00000000 : jbusmc 00000000-00000000 : /pci@1d,700000 00000000-00000000 : 0003:00:02.0 00000000-00000000 : tg3 00000000-00000000 : 0003:00:02.1 00000000-00000000 : tg3 00000000-00000000 : 0003:00:02.0 00000000-00000000 : tg3 00000000-00000000 : 0003:00:02.1 00000000-00000000 : tg3 00000000-00000000 : IOMMU 00000000-00000000 : /pci@1c,600000 00000000-00000000 : 0002:00:02.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0002:00:02.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0002:00:02.1 00000000-00000000 : sym53c8xx 00000000-00000000 : 0002:00:02.1 00000000-00000000 : sym53c8xx 00000000-00000000 : IOMMU 00000000-00000000 : /pci@1f,700000 00000000-00000000 : 0000:00:02.0 00000000-00000000 : tg3 00000000-00000000 : 0000:00:02.1 00000000-00000000 : tg3 00000000-00000000 : 0000:00:02.0 00000000-00000000 : tg3 00000000-00000000 : 0000:00:02.1 00000000-00000000 : tg3 00000000-00000000 : IOMMU 00000000-00000000 : /pci@1e,600000 00000000-00000000 : 0001:00:07.0 00000000-00000000 : 0001:00:0a.0 00000000-00000000 : IOMMU Fire V240: Video RAM BAR errors is gone, these are still here: [ 5.530237] pci 0001:00:07.0: can't claim BAR 0 [io 0x7fe01000000-0x7fe0100ffff]: address conflict with 0001:00:06.0 [io 0x7fe01000600-0x7fe0100061f] [ 5.530389] pci 0001:00:07.0: can't claim BAR 2 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with 0001:00:07.0 [mem 0x7ff00000000-0x7ff000fffff] 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : Kernel code 00000000-00000000 : Kernel data 00000000-00000000 : Kernel bss 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : jbusmc 00000000-00000000 : jbusmc 00000000-00000000 : /pci@1d,700000 00000000-00000000 : 0003:00:02.0 00000000-00000000 : tg3 00000000-00000000 : 0003:00:02.1 00000000-00000000 : tg3 00000000-00000000 : 0003:00:02.0 00000000-00000000 : tg3 00000000-00000000 : 0003:00:02.1 00000000-00000000 : tg3 00000000-00000000 : IOMMU 00000000-00000000 : /pci@1c,600000 00000000-00000000 : 0002:00:02.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0002:00:02.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0002:00:02.1 00000000-00000000 : sym53c8xx 00000000-00000000 : 0002:00:02.1 00000000-00000000 : sym53c8xx 00000000-00000000 : IOMMU 00000000-00000000 : /pci@1f,700000 00000000-00000000 : 0000:00:02.0 00000000-00000000 : tg3 00000000-00000000 : 0000:00:02.1 00000000-00000000 : tg3 00000000-00000000 : 0000:00:02.0 00000000-00000000 : tg3 00000000-00000000 : 0000:00:02.1 00000000-00000000 : tg3 00000000-00000000 : IOMMU 00000000-00000000 : /pci@1e,600000 00000000-00000000 : 0001:00:07.0 00000000-00000000 : 0001:00:03.0 00000000-00000000 : skge 00000000-00000000 : 0001:00:03.0 00000000-00000000 : 0001:00:0a.0 00000000-00000000 : IOMMU Fire V440: Video RAM BAR error is gone, these are still here: [ 5.082920] pci 0002:00:07.0: can't claim BAR 0 [io 0x7fe01000000-0x7fe0100ffff]: address conflict with 0002:00:06.0 [io 0x7fe01000600-0x7fe0100061f] [ 5.082945] pci 0002:00:07.0: can't claim BAR 2 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with 0002:00:07.0 [mem 0x7ff00000000-0x7ff000fffff] 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : Kernel code 00000000-00000000 : Kernel data 00000000-00000000 : Kernel bss 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : jbusmc 00000000-00000000 : jbusmc 00000000-00000000 : jbusmc 00000000-00000000 : jbusmc 00000000-00000000 : /pci@1d,700000 00000000-00000000 : IOMMU 00000000-00000000 : /pci@1c,600000 00000000-00000000 : 0000:00:02.0 00000000-00000000 : 0000:00:02.0 00000000-00000000 : eth0 00000000-00000000 : IOMMU 00000000-00000000 : /pci@1f,700000 00000000-00000000 : 0003:00:01.0 00000000-00000000 : 0003:00:01.0 00000000-00000000 : eth1 00000000-00000000 : 0003:00:02.0 00000000-00000000 : mpt 00000000-00000000 : 0003:00:02.0 00000000-00000000 : mpt 00000000-00000000 : 0003:00:02.1 00000000-00000000 : mpt 00000000-00000000 : 0003:00:02.1 00000000-00000000 : mpt 00000000-00000000 : 0003:00:02.0 00000000-00000000 : 0003:00:02.1 00000000-00000000 : IOMMU 00000000-00000000 : /pci@1e,600000 00000000-00000000 : 0002:00:07.0 00000000-00000000 : 0002:00:0a.0 00000000-00000000 : 0002:00:0b.0 00000000-00000000 : IOMMU Blade 100: Video RAM related BAR error is gnone, this is still here: [ 6.131499] pci 0000:00:07.0: can't claim BAR 0 [io 0x1fe02000000-0x1fe0200ffff]: address conflict with 0000:00:03.0 [io 0x1fe02000600-0x1fe0200061f] 00000000-00000000 : System RAM 00000000-00000000 : Kernel code 00000000-00000000 : Kernel data 00000000-00000000 : Kernel bss 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : /pci@1f,0 00000000-00000000 : 0000:00:07.0 00000000-00000000 : 0000:00:0c.1 00000000-00000000 : sungem 00000000-00000000 : 0000:00:0c.2 00000000-00000000 : 0000:00:0c.2 00000000-00000000 : 0000:00:08.0 00000000-00000000 : 0000:00:13.0 00000000-00000000 : 0000:00:13.0 00000000-00000000 : 0000:00:0c.1 00000000-00000000 : 0000:00:0c.2 00000000-00000000 : 0000:00:0c.3 00000000-00000000 : 0000:00:0c.3 00000000-00000000 : ohci_hcd 00000000-00000000 : PCI Bus 0000:01 00000000-00000000 : 0000:01:00.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0000:01:02.0 00000000-00000000 : 0000:01:02.0 00000000-00000000 : 0000:00:13.0 00000000-00000000 : atyfb 00000000-00000000 : IOMMU 00000000-00000000 : eeprom -- Meelis Roos (mroos@linux.ee) ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic @ 2018-04-11 7:59 ` Meelis Roos 0 siblings, 0 replies; 40+ messages in thread From: Meelis Roos @ 2018-04-11 7:59 UTC (permalink / raw) To: Bjorn Helgaas; +Cc: Yinghai Lu, linux-pci, sparclinux > Oops, sorry, I can't easily compile test it. Here's an updated patch: > > commit a9ded309cbf3f57e9979848fd0aa0ffacdf11f1a > Author: Bjorn Helgaas <bhelgaas@google.com> > Date: Tue Apr 10 08:47:34 2018 -0500 Thanks, this patch compiles and works - Video RAM related BAR allocation errors are gone. Hera are the /proc/iomem's but unfortunately the physical addresses have been censored by security: Netra X1: no BAR errors 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : Kernel code 00000000-00000000 : Kernel data 00000000-00000000 : Kernel bss 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : /pci@1f,0 00000000-00000000 : 0000:00:0c.0 00000000-00000000 : tulip 00000000-00000000 : 0000:00:05.0 00000000-00000000 : tulip 00000000-00000000 : 0000:00:0c.0 00000000-00000000 : 0000:00:05.0 00000000-00000000 : 0000:00:0a.0 00000000-00000000 : ohci_hcd 00000000-00000000 : IOMMU Fire V100: no BAR errors 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : Kernel code 00000000-00000000 : Kernel data 00000000-00000000 : Kernel bss 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : /pci@1f,0 00000000-00000000 : 0000:00:0c.0 00000000-00000000 : tulip 00000000-00000000 : 0000:00:05.0 00000000-00000000 : tulip 00000000-00000000 : 0000:00:0c.0 00000000-00000000 : 0000:00:05.0 00000000-00000000 : 0000:00:0a.0 00000000-00000000 : IOMMU Netra T1-105: no BAR errors, qla1280 loads fine. 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : Kernel code 00000000-00000000 : Kernel data 00000000-00000000 : Kernel bss 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : /pci@1f,0 00000000-00000000 : PCI Bus 0000:02 00000000-00000000 : PCI Bus 0000:03 00000000-00000000 : PCI Bus 0000:04 00000000-00000000 : 0000:04:00.0 00000000-00000000 : 0000:04:00.0 00000000-00000000 : 0000:04:00.1 00000000-00000000 : sunhme 00000000-00000000 : 0000:04:04.0 00000000-00000000 : 0000:04:04.0 00000000-00000000 : IOMMU 00000000-00000000 : PCI Bus 0000:01 00000000-00000000 : 0000:01:01.1 00000000-00000000 : sunhme 00000000-00000000 : 0000:01:02.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0000:01:02.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0000:01:03.1 00000000-00000000 : sunhme 00000000-00000000 : eeprom 00000000-00000000 : su 00000000-00000000 : su 00000000-00000000 : power 00000000-00000000 : auxio Netra T1-200: no BAR errors 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : Kernel code 00000000-00000000 : Kernel data 00000000-00000000 : Kernel bss 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : /pci@1f,0 00000000-00000000 : PCI Bus 0000:02 00000000-00000000 : 0000:02:08.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0000:02:08.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0000:02:08.1 00000000-00000000 : sym53c8xx 00000000-00000000 : 0000:02:08.1 00000000-00000000 : sym53c8xx 00000000-00000000 : 0000:02:05.0 00000000-00000000 : qla2xxx 00000000-00000000 : 0000:02:05.0 00000000-00000000 : IOMMU 00000000-00000000 : PCI Bus 0000:01 00000000-00000000 : 0000:01:0c.1 00000000-00000000 : sungem 00000000-00000000 : 0000:01:05.1 00000000-00000000 : sungem 00000000-00000000 : 0000:01:0c.1 00000000-00000000 : 0000:01:0c.3 00000000-00000000 : 0000:01:0c.3 00000000-00000000 : ohci_hcd 00000000-00000000 : 0000:01:05.1 00000000-00000000 : 0000:01:05.3 00000000-00000000 : 0000:01:05.3 00000000-00000000 : ohci_hcd 00000000-00000000 : eeprom Fire V120: no BAR errors 00000000-00000000 : System RAM 00000000-00000000 : Kernel code 00000000-00000000 : Kernel data 00000000-00000000 : Kernel bss 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : /pci@1f,0 00000000-00000000 : PCI Bus 0000:02 00000000-00000000 : 0000:02:08.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0000:02:08.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0000:02:08.1 00000000-00000000 : sym53c8xx 00000000-00000000 : 0000:02:08.1 00000000-00000000 : sym53c8xx 00000000-00000000 : IOMMU 00000000-00000000 : PCI Bus 0000:01 00000000-00000000 : 0000:01:0c.1 00000000-00000000 : sungem 00000000-00000000 : 0000:01:05.1 00000000-00000000 : sungem 00000000-00000000 : 0000:01:0c.1 00000000-00000000 : 0000:01:0c.3 00000000-00000000 : 0000:01:0c.3 00000000-00000000 : ohci_hcd 00000000-00000000 : 0000:01:05.1 00000000-00000000 : 0000:01:05.3 00000000-00000000 : 0000:01:05.3 00000000-00000000 : ohci_hcd 00000000-00000000 : eeprom Fire V210: Video RAM BAR error is gone, these are still here: [ 5.061083] pci 0001:00:07.0: can't claim BAR 0 [io 0x7fe01000000-0x7fe0100ffff]: address conflict with 0001:00:06.0 [io 0x7fe01000600-0x7fe0100061f] [ 5.061334] pci 0001:00:07.0: can't claim BAR 2 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with 0001:00:07.0 [mem 0x7ff00000000-0x7ff000fffff] 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : Kernel code 00000000-00000000 : Kernel data 00000000-00000000 : Kernel bss 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : jbusmc 00000000-00000000 : jbusmc 00000000-00000000 : /pci@1d,700000 00000000-00000000 : 0003:00:02.0 00000000-00000000 : tg3 00000000-00000000 : 0003:00:02.1 00000000-00000000 : tg3 00000000-00000000 : 0003:00:02.0 00000000-00000000 : tg3 00000000-00000000 : 0003:00:02.1 00000000-00000000 : tg3 00000000-00000000 : IOMMU 00000000-00000000 : /pci@1c,600000 00000000-00000000 : 0002:00:02.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0002:00:02.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0002:00:02.1 00000000-00000000 : sym53c8xx 00000000-00000000 : 0002:00:02.1 00000000-00000000 : sym53c8xx 00000000-00000000 : IOMMU 00000000-00000000 : /pci@1f,700000 00000000-00000000 : 0000:00:02.0 00000000-00000000 : tg3 00000000-00000000 : 0000:00:02.1 00000000-00000000 : tg3 00000000-00000000 : 0000:00:02.0 00000000-00000000 : tg3 00000000-00000000 : 0000:00:02.1 00000000-00000000 : tg3 00000000-00000000 : IOMMU 00000000-00000000 : /pci@1e,600000 00000000-00000000 : 0001:00:07.0 00000000-00000000 : 0001:00:0a.0 00000000-00000000 : IOMMU Fire V240: Video RAM BAR errors is gone, these are still here: [ 5.530237] pci 0001:00:07.0: can't claim BAR 0 [io 0x7fe01000000-0x7fe0100ffff]: address conflict with 0001:00:06.0 [io 0x7fe01000600-0x7fe0100061f] [ 5.530389] pci 0001:00:07.0: can't claim BAR 2 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with 0001:00:07.0 [mem 0x7ff00000000-0x7ff000fffff] 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : Kernel code 00000000-00000000 : Kernel data 00000000-00000000 : Kernel bss 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : jbusmc 00000000-00000000 : jbusmc 00000000-00000000 : /pci@1d,700000 00000000-00000000 : 0003:00:02.0 00000000-00000000 : tg3 00000000-00000000 : 0003:00:02.1 00000000-00000000 : tg3 00000000-00000000 : 0003:00:02.0 00000000-00000000 : tg3 00000000-00000000 : 0003:00:02.1 00000000-00000000 : tg3 00000000-00000000 : IOMMU 00000000-00000000 : /pci@1c,600000 00000000-00000000 : 0002:00:02.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0002:00:02.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0002:00:02.1 00000000-00000000 : sym53c8xx 00000000-00000000 : 0002:00:02.1 00000000-00000000 : sym53c8xx 00000000-00000000 : IOMMU 00000000-00000000 : /pci@1f,700000 00000000-00000000 : 0000:00:02.0 00000000-00000000 : tg3 00000000-00000000 : 0000:00:02.1 00000000-00000000 : tg3 00000000-00000000 : 0000:00:02.0 00000000-00000000 : tg3 00000000-00000000 : 0000:00:02.1 00000000-00000000 : tg3 00000000-00000000 : IOMMU 00000000-00000000 : /pci@1e,600000 00000000-00000000 : 0001:00:07.0 00000000-00000000 : 0001:00:03.0 00000000-00000000 : skge 00000000-00000000 : 0001:00:03.0 00000000-00000000 : 0001:00:0a.0 00000000-00000000 : IOMMU Fire V440: Video RAM BAR error is gone, these are still here: [ 5.082920] pci 0002:00:07.0: can't claim BAR 0 [io 0x7fe01000000-0x7fe0100ffff]: address conflict with 0002:00:06.0 [io 0x7fe01000600-0x7fe0100061f] [ 5.082945] pci 0002:00:07.0: can't claim BAR 2 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with 0002:00:07.0 [mem 0x7ff00000000-0x7ff000fffff] 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : Kernel code 00000000-00000000 : Kernel data 00000000-00000000 : Kernel bss 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : jbusmc 00000000-00000000 : jbusmc 00000000-00000000 : jbusmc 00000000-00000000 : jbusmc 00000000-00000000 : /pci@1d,700000 00000000-00000000 : IOMMU 00000000-00000000 : /pci@1c,600000 00000000-00000000 : 0000:00:02.0 00000000-00000000 : 0000:00:02.0 00000000-00000000 : eth0 00000000-00000000 : IOMMU 00000000-00000000 : /pci@1f,700000 00000000-00000000 : 0003:00:01.0 00000000-00000000 : 0003:00:01.0 00000000-00000000 : eth1 00000000-00000000 : 0003:00:02.0 00000000-00000000 : mpt 00000000-00000000 : 0003:00:02.0 00000000-00000000 : mpt 00000000-00000000 : 0003:00:02.1 00000000-00000000 : mpt 00000000-00000000 : 0003:00:02.1 00000000-00000000 : mpt 00000000-00000000 : 0003:00:02.0 00000000-00000000 : 0003:00:02.1 00000000-00000000 : IOMMU 00000000-00000000 : /pci@1e,600000 00000000-00000000 : 0002:00:07.0 00000000-00000000 : 0002:00:0a.0 00000000-00000000 : 0002:00:0b.0 00000000-00000000 : IOMMU Blade 100: Video RAM related BAR error is gnone, this is still here: [ 6.131499] pci 0000:00:07.0: can't claim BAR 0 [io 0x1fe02000000-0x1fe0200ffff]: address conflict with 0000:00:03.0 [io 0x1fe02000600-0x1fe0200061f] 00000000-00000000 : System RAM 00000000-00000000 : Kernel code 00000000-00000000 : Kernel data 00000000-00000000 : Kernel bss 00000000-00000000 : System RAM 00000000-00000000 : System RAM 00000000-00000000 : /pci@1f,0 00000000-00000000 : 0000:00:07.0 00000000-00000000 : 0000:00:0c.1 00000000-00000000 : sungem 00000000-00000000 : 0000:00:0c.2 00000000-00000000 : 0000:00:0c.2 00000000-00000000 : 0000:00:08.0 00000000-00000000 : 0000:00:13.0 00000000-00000000 : 0000:00:13.0 00000000-00000000 : 0000:00:0c.1 00000000-00000000 : 0000:00:0c.2 00000000-00000000 : 0000:00:0c.3 00000000-00000000 : 0000:00:0c.3 00000000-00000000 : ohci_hcd 00000000-00000000 : PCI Bus 0000:01 00000000-00000000 : 0000:01:00.0 00000000-00000000 : sym53c8xx 00000000-00000000 : 0000:01:02.0 00000000-00000000 : 0000:01:02.0 00000000-00000000 : 0000:00:13.0 00000000-00000000 : atyfb 00000000-00000000 : IOMMU 00000000-00000000 : eeprom -- Meelis Roos (mroos@linux.ee) ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic 2018-04-11 7:59 ` Meelis Roos @ 2018-04-11 13:33 ` Bjorn Helgaas -1 siblings, 0 replies; 40+ messages in thread From: Bjorn Helgaas @ 2018-04-11 13:33 UTC (permalink / raw) To: Meelis Roos; +Cc: Yinghai Lu, linux-pci, sparclinux On Wed, Apr 11, 2018 at 10:59:19AM +0300, Meelis Roos wrote: > > Oops, sorry, I can't easily compile test it. Here's an updated patch: > > > > commit a9ded309cbf3f57e9979848fd0aa0ffacdf11f1a > > Author: Bjorn Helgaas <bhelgaas@google.com> > > Date: Tue Apr 10 08:47:34 2018 -0500 > > Thanks, this patch compiles and works - Video RAM related BAR allocation > errors are gone. Great, thanks! I didn't mean to take up so much of your time testing *all* of your systems :) > Hera are the /proc/iomem's but unfortunately the physical > addresses have been censored by security: If you look at /proc/iomem as root, you should see the actual addresses. If you have any systems with VGA, it would be useful to test one of them. I took a quick look through your lspci logs, and it *looks* like the Blade 100 has a VGA at 00:13.0, but I don't see the "Video RAM area" entry in /proc/iomem that I expected: > Blade 100: Video RAM related BAR error is gnone, this is still here: > [ 6.131499] pci 0000:00:07.0: can't claim BAR 0 [io 0x1fe02000000-0x1fe0200ffff]: address conflict with 0000:00:03.0 [io 0x1fe02000600-0x1fe0200061f] > > 00000000-00000000 : System RAM > 00000000-00000000 : Kernel code > 00000000-00000000 : Kernel data > 00000000-00000000 : Kernel bss > 00000000-00000000 : System RAM > 00000000-00000000 : System RAM > 00000000-00000000 : /pci@1f,0 > 00000000-00000000 : 0000:00:07.0 > 00000000-00000000 : 0000:00:0c.1 > 00000000-00000000 : sungem > 00000000-00000000 : 0000:00:0c.2 > 00000000-00000000 : 0000:00:0c.2 > 00000000-00000000 : 0000:00:08.0 > 00000000-00000000 : 0000:00:13.0 > 00000000-00000000 : 0000:00:13.0 > 00000000-00000000 : 0000:00:0c.1 > 00000000-00000000 : 0000:00:0c.2 > 00000000-00000000 : 0000:00:0c.3 > 00000000-00000000 : 0000:00:0c.3 > 00000000-00000000 : ohci_hcd > 00000000-00000000 : PCI Bus 0000:01 > 00000000-00000000 : 0000:01:00.0 > 00000000-00000000 : sym53c8xx > 00000000-00000000 : 0000:01:02.0 > 00000000-00000000 : 0000:01:02.0 > 00000000-00000000 : 0000:00:13.0 > 00000000-00000000 : atyfb > 00000000-00000000 : IOMMU > 00000000-00000000 : eeprom ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic @ 2018-04-11 13:33 ` Bjorn Helgaas 0 siblings, 0 replies; 40+ messages in thread From: Bjorn Helgaas @ 2018-04-11 13:33 UTC (permalink / raw) To: Meelis Roos; +Cc: Yinghai Lu, linux-pci, sparclinux On Wed, Apr 11, 2018 at 10:59:19AM +0300, Meelis Roos wrote: > > Oops, sorry, I can't easily compile test it. Here's an updated patch: > > > > commit a9ded309cbf3f57e9979848fd0aa0ffacdf11f1a > > Author: Bjorn Helgaas <bhelgaas@google.com> > > Date: Tue Apr 10 08:47:34 2018 -0500 > > Thanks, this patch compiles and works - Video RAM related BAR allocation > errors are gone. Great, thanks! I didn't mean to take up so much of your time testing *all* of your systems :) > Hera are the /proc/iomem's but unfortunately the physical > addresses have been censored by security: If you look at /proc/iomem as root, you should see the actual addresses. If you have any systems with VGA, it would be useful to test one of them. I took a quick look through your lspci logs, and it *looks* like the Blade 100 has a VGA at 00:13.0, but I don't see the "Video RAM area" entry in /proc/iomem that I expected: > Blade 100: Video RAM related BAR error is gnone, this is still here: > [ 6.131499] pci 0000:00:07.0: can't claim BAR 0 [io 0x1fe02000000-0x1fe0200ffff]: address conflict with 0000:00:03.0 [io 0x1fe02000600-0x1fe0200061f] > > 00000000-00000000 : System RAM > 00000000-00000000 : Kernel code > 00000000-00000000 : Kernel data > 00000000-00000000 : Kernel bss > 00000000-00000000 : System RAM > 00000000-00000000 : System RAM > 00000000-00000000 : /pci@1f,0 > 00000000-00000000 : 0000:00:07.0 > 00000000-00000000 : 0000:00:0c.1 > 00000000-00000000 : sungem > 00000000-00000000 : 0000:00:0c.2 > 00000000-00000000 : 0000:00:0c.2 > 00000000-00000000 : 0000:00:08.0 > 00000000-00000000 : 0000:00:13.0 > 00000000-00000000 : 0000:00:13.0 > 00000000-00000000 : 0000:00:0c.1 > 00000000-00000000 : 0000:00:0c.2 > 00000000-00000000 : 0000:00:0c.3 > 00000000-00000000 : 0000:00:0c.3 > 00000000-00000000 : ohci_hcd > 00000000-00000000 : PCI Bus 0000:01 > 00000000-00000000 : 0000:01:00.0 > 00000000-00000000 : sym53c8xx > 00000000-00000000 : 0000:01:02.0 > 00000000-00000000 : 0000:01:02.0 > 00000000-00000000 : 0000:00:13.0 > 00000000-00000000 : atyfb > 00000000-00000000 : IOMMU > 00000000-00000000 : eeprom ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic 2018-04-11 13:33 ` Bjorn Helgaas @ 2018-04-11 14:40 ` Meelis Roos -1 siblings, 0 replies; 40+ messages in thread From: Meelis Roos @ 2018-04-11 14:40 UTC (permalink / raw) To: Bjorn Helgaas; +Cc: Yinghai Lu, linux-pci, sparclinux > On Wed, Apr 11, 2018 at 10:59:19AM +0300, Meelis Roos wrote: > > > Oops, sorry, I can't easily compile test it. Here's an updated patch: > > > > > > commit a9ded309cbf3f57e9979848fd0aa0ffacdf11f1a > > > Author: Bjorn Helgaas <bhelgaas@google.com> > > > Date: Tue Apr 10 08:47:34 2018 -0500 > > > > Thanks, this patch compiles and works - Video RAM related BAR allocation > > errors are gone. > > Great, thanks! I didn't mean to take up so much of your time testing > *all* of your systems :) Well, they compiled in parallel :) > > Hera are the /proc/iomem's but unfortunately the physical > > addresses have been censored by security: > > If you look at /proc/iomem as root, you should see the actual > addresses. Yes, that was it. > If you have any systems with VGA, it would be useful to test one of > them. This is Blade 100, with atyfb frame buffer: # cat /proc/iomem 00000000-7effdfff : System RAM 00404000-0085aadf : Kernel code 0085aae0-009b8a8f : Kernel data 009f2000-00a37a37 : Kernel bss 7f000000-7fee5fff : System RAM 7ff04000-7ff0bfff : System RAM 1ff00000000-1ffffffffff : /pci@1f,0 1ff00000000-1ff000fffff : 0000:00:07.0 1ff00400000-1ff0041ffff : 0000:00:0c.1 1ff00400000-1ff0041ffff : sungem 1ff00420000-1ff00421fff : 0000:00:0c.2 1ff00422000-1ff00423fff : 0000:00:0c.2 1ff00424000-1ff00425fff : 0000:00:08.0 1ff00426000-1ff00427fff : 0000:00:13.0 1ff00440000-1ff0045ffff : 0000:00:13.0 1ff00800000-1ff00bfffff : 0000:00:0c.1 1ff00c00000-1ff00ffffff : 0000:00:0c.2 1ff01000000-1ff013fffff : 0000:00:0c.3 1ff02000000-1ff02ffffff : 0000:00:0c.3 1ff02000000-1ff02ffffff : ohci_hcd 1ff03000000-1ff030fffff : PCI Bus 0000:01 1ff03000000-1ff03001fff : 0000:01:00.0 1ff03000000-1ff03001fff : sym53c8xx 1ff03002000-1ff03003fff : 0000:01:02.0 1ff03010000-1ff0301ffff : 0000:01:02.0 1ff04000000-1ff04ffffff : 0000:00:13.0 1ff04000000-1ff04ffffff : atyfb 1ffc0000000-1ffdfffffff : IOMMU 1fff1000000-1fff1001fff : eeprom > I took a quick look through your lspci logs, and it *looks* like the > Blade 100 has a VGA at 00:13.0, but I don't see the "Video RAM area" > entry in /proc/iomem that I expected: > > > Blade 100: Video RAM related BAR error is gnone, this is still here: > > [ 6.131499] pci 0000:00:07.0: can't claim BAR 0 [io 0x1fe02000000-0x1fe0200ffff]: address conflict with 0000:00:03.0 [io 0x1fe02000600-0x1fe0200061f] > > > > 00000000-00000000 : System RAM > > 00000000-00000000 : Kernel code > > 00000000-00000000 : Kernel data > > 00000000-00000000 : Kernel bss > > 00000000-00000000 : System RAM > > 00000000-00000000 : System RAM > > 00000000-00000000 : /pci@1f,0 > > 00000000-00000000 : 0000:00:07.0 > > 00000000-00000000 : 0000:00:0c.1 > > 00000000-00000000 : sungem > > 00000000-00000000 : 0000:00:0c.2 > > 00000000-00000000 : 0000:00:0c.2 > > 00000000-00000000 : 0000:00:08.0 > > 00000000-00000000 : 0000:00:13.0 > > 00000000-00000000 : 0000:00:13.0 > > 00000000-00000000 : 0000:00:0c.1 > > 00000000-00000000 : 0000:00:0c.2 > > 00000000-00000000 : 0000:00:0c.3 > > 00000000-00000000 : 0000:00:0c.3 > > 00000000-00000000 : ohci_hcd > > 00000000-00000000 : PCI Bus 0000:01 > > 00000000-00000000 : 0000:01:00.0 > > 00000000-00000000 : sym53c8xx > > 00000000-00000000 : 0000:01:02.0 > > 00000000-00000000 : 0000:01:02.0 > > 00000000-00000000 : 0000:00:13.0 > > 00000000-00000000 : atyfb > > 00000000-00000000 : IOMMU > > 00000000-00000000 : eeprom > -- Meelis Roos (mroos@linux.ee) ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic @ 2018-04-11 14:40 ` Meelis Roos 0 siblings, 0 replies; 40+ messages in thread From: Meelis Roos @ 2018-04-11 14:40 UTC (permalink / raw) To: Bjorn Helgaas; +Cc: Yinghai Lu, linux-pci, sparclinux > On Wed, Apr 11, 2018 at 10:59:19AM +0300, Meelis Roos wrote: > > > Oops, sorry, I can't easily compile test it. Here's an updated patch: > > > > > > commit a9ded309cbf3f57e9979848fd0aa0ffacdf11f1a > > > Author: Bjorn Helgaas <bhelgaas@google.com> > > > Date: Tue Apr 10 08:47:34 2018 -0500 > > > > Thanks, this patch compiles and works - Video RAM related BAR allocation > > errors are gone. > > Great, thanks! I didn't mean to take up so much of your time testing > *all* of your systems :) Well, they compiled in parallel :) > > Hera are the /proc/iomem's but unfortunately the physical > > addresses have been censored by security: > > If you look at /proc/iomem as root, you should see the actual > addresses. Yes, that was it. > If you have any systems with VGA, it would be useful to test one of > them. This is Blade 100, with atyfb frame buffer: # cat /proc/iomem 00000000-7effdfff : System RAM 00404000-0085aadf : Kernel code 0085aae0-009b8a8f : Kernel data 009f2000-00a37a37 : Kernel bss 7f000000-7fee5fff : System RAM 7ff04000-7ff0bfff : System RAM 1ff00000000-1ffffffffff : /pci@1f,0 1ff00000000-1ff000fffff : 0000:00:07.0 1ff00400000-1ff0041ffff : 0000:00:0c.1 1ff00400000-1ff0041ffff : sungem 1ff00420000-1ff00421fff : 0000:00:0c.2 1ff00422000-1ff00423fff : 0000:00:0c.2 1ff00424000-1ff00425fff : 0000:00:08.0 1ff00426000-1ff00427fff : 0000:00:13.0 1ff00440000-1ff0045ffff : 0000:00:13.0 1ff00800000-1ff00bfffff : 0000:00:0c.1 1ff00c00000-1ff00ffffff : 0000:00:0c.2 1ff01000000-1ff013fffff : 0000:00:0c.3 1ff02000000-1ff02ffffff : 0000:00:0c.3 1ff02000000-1ff02ffffff : ohci_hcd 1ff03000000-1ff030fffff : PCI Bus 0000:01 1ff03000000-1ff03001fff : 0000:01:00.0 1ff03000000-1ff03001fff : sym53c8xx 1ff03002000-1ff03003fff : 0000:01:02.0 1ff03010000-1ff0301ffff : 0000:01:02.0 1ff04000000-1ff04ffffff : 0000:00:13.0 1ff04000000-1ff04ffffff : atyfb 1ffc0000000-1ffdfffffff : IOMMU 1fff1000000-1fff1001fff : eeprom > I took a quick look through your lspci logs, and it *looks* like the > Blade 100 has a VGA at 00:13.0, but I don't see the "Video RAM area" > entry in /proc/iomem that I expected: > > > Blade 100: Video RAM related BAR error is gnone, this is still here: > > [ 6.131499] pci 0000:00:07.0: can't claim BAR 0 [io 0x1fe02000000-0x1fe0200ffff]: address conflict with 0000:00:03.0 [io 0x1fe02000600-0x1fe0200061f] > > > > 00000000-00000000 : System RAM > > 00000000-00000000 : Kernel code > > 00000000-00000000 : Kernel data > > 00000000-00000000 : Kernel bss > > 00000000-00000000 : System RAM > > 00000000-00000000 : System RAM > > 00000000-00000000 : /pci@1f,0 > > 00000000-00000000 : 0000:00:07.0 > > 00000000-00000000 : 0000:00:0c.1 > > 00000000-00000000 : sungem > > 00000000-00000000 : 0000:00:0c.2 > > 00000000-00000000 : 0000:00:0c.2 > > 00000000-00000000 : 0000:00:08.0 > > 00000000-00000000 : 0000:00:13.0 > > 00000000-00000000 : 0000:00:13.0 > > 00000000-00000000 : 0000:00:0c.1 > > 00000000-00000000 : 0000:00:0c.2 > > 00000000-00000000 : 0000:00:0c.3 > > 00000000-00000000 : 0000:00:0c.3 > > 00000000-00000000 : ohci_hcd > > 00000000-00000000 : PCI Bus 0000:01 > > 00000000-00000000 : 0000:01:00.0 > > 00000000-00000000 : sym53c8xx > > 00000000-00000000 : 0000:01:02.0 > > 00000000-00000000 : 0000:01:02.0 > > 00000000-00000000 : 0000:00:13.0 > > 00000000-00000000 : atyfb > > 00000000-00000000 : IOMMU > > 00000000-00000000 : eeprom > -- Meelis Roos (mroos@linux.ee) ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic 2018-04-11 14:40 ` Meelis Roos @ 2018-04-11 20:01 ` Bjorn Helgaas -1 siblings, 0 replies; 40+ messages in thread From: Bjorn Helgaas @ 2018-04-11 20:01 UTC (permalink / raw) To: Meelis Roos; +Cc: Yinghai Lu, linux-pci, sparclinux On Wed, Apr 11, 2018 at 05:40:41PM +0300, Meelis Roos wrote: > > On Wed, Apr 11, 2018 at 10:59:19AM +0300, Meelis Roos wrote: > > > > Oops, sorry, I can't easily compile test it. Here's an updated patch: > > > > > > > > commit a9ded309cbf3f57e9979848fd0aa0ffacdf11f1a > > > > Author: Bjorn Helgaas <bhelgaas@google.com> > > > > Date: Tue Apr 10 08:47:34 2018 -0500 > > > > > > Thanks, this patch compiles and works - Video RAM related BAR allocation > > > errors are gone. > > > > Great, thanks! I didn't mean to take up so much of your time testing > > *all* of your systems :) > > Well, they compiled in parallel :) > > > > Hera are the /proc/iomem's but unfortunately the physical > > > addresses have been censored by security: > > > > If you look at /proc/iomem as root, you should see the actual > > addresses. > > Yes, that was it. > > > If you have any systems with VGA, it would be useful to test one of > > them. > > This is Blade 100, with atyfb frame buffer: > > # cat /proc/iomem > 00000000-7effdfff : System RAM > 00404000-0085aadf : Kernel code > 0085aae0-009b8a8f : Kernel data > 009f2000-00a37a37 : Kernel bss > 7f000000-7fee5fff : System RAM > 7ff04000-7ff0bfff : System RAM > 1ff00000000-1ffffffffff : /pci@1f,0 > 1ff00000000-1ff000fffff : 0000:00:07.0 > 1ff00400000-1ff0041ffff : 0000:00:0c.1 > 1ff00400000-1ff0041ffff : sungem > 1ff00420000-1ff00421fff : 0000:00:0c.2 > 1ff00422000-1ff00423fff : 0000:00:0c.2 > 1ff00424000-1ff00425fff : 0000:00:08.0 > 1ff00426000-1ff00427fff : 0000:00:13.0 > 1ff00440000-1ff0045ffff : 0000:00:13.0 Thanks, this is really interesting. Would you mind replacing the test patch with the following (this applies directly on the upstream kernel, e.g., fd3b36d27566)? Sorry for the back and forth, but there's a lot going on here that I don't understand. I'd like to see the complete dmesg log, /proc/iomem, and "lspci -vv". diff --git a/arch/sparc/kernel/pci.c b/arch/sparc/kernel/pci.c index 41b20edb427d..ffb9227c1b80 100644 --- a/arch/sparc/kernel/pci.c +++ b/arch/sparc/kernel/pci.c @@ -166,7 +166,7 @@ void pci_config_write32(u32 *addr, u32 val) spin_unlock_irqrestore(&pci_poke_lock, flags); } -static int ofpci_verbose; +static int ofpci_verbose = 1; static int __init ofpci_debug(char *str) { @@ -243,6 +243,8 @@ static void pci_parse_of_addrs(struct platform_device *op, res->end = op_res->end; res->flags = flags; res->name = pci_name(dev); + + pci_info(dev, "reg 0x%x: %pR\n", i, res); } } @@ -353,6 +355,9 @@ static struct pci_dev *of_create_pci_dev(struct pci_pbm_info *pbm, dev->irq = PCI_IRQ_NONE; } + pci_info(dev, "[%04x:%04x] type %02x class %#08x\n", + dev->vendor, dev->device, dev->hdr_type, dev->class); + pci_parse_of_addrs(sd->op, node, dev); if (ofpci_verbose) @@ -624,6 +629,46 @@ static void pci_bus_register_of_sysfs(struct pci_bus *bus) pci_bus_register_of_sysfs(child_bus); } +static void pci_claim_legacy_resources(struct pci_dev *dev) +{ + struct pci_bus_region region; + struct resource *p, *root, *conflict; + + pci_info(dev, "class %#x\n", dev->class); + if ((dev->class >> 8) != PCI_CLASS_DISPLAY_VGA) + return; + + p = kzalloc(sizeof(*p), GFP_KERNEL); + if (!p) + return; + + p->name = "Video RAM area"; + p->flags = IORESOURCE_MEM | IORESOURCE_BUSY; + + region.start = 0xa0000UL; + region.end = region.start + 0x1ffffUL; + pcibios_bus_to_resource(dev->bus, p, ®ion); + + root = pci_find_parent_resource(dev, p); + if (!root) { + pci_info(dev, "can't claim VGA legacy %pR: no compatible bridge window\n", p); + goto err; + } + + pci_info(dev, "requesting %pR from %s %pR\n", p, root->name, root); + conflict = request_resource_conflict(root, p); + if (conflict) { + pci_info(dev, "can't claim VGA legacy %pR: address conflict with %s %pR\n", + p, conflict->name, conflict); + goto err; + } + + return; + +err: + kfree(p); +} + static void pci_claim_bus_resources(struct pci_bus *bus) { struct pci_bus *child_bus; @@ -648,6 +693,8 @@ static void pci_claim_bus_resources(struct pci_bus *bus) pci_claim_resource(dev, i); } + + pci_claim_legacy_resources(dev); } list_for_each_entry(child_bus, &bus->children, node) @@ -687,6 +734,7 @@ struct pci_bus *pci_scan_one_pbm(struct pci_pbm_info *pbm, pci_bus_register_of_sysfs(bus); pci_claim_bus_resources(bus); + pci_bus_add_devices(bus); return bus; } diff --git a/arch/sparc/kernel/pci_common.c b/arch/sparc/kernel/pci_common.c index 38d46bcc8634..9bb6a192ef3f 100644 --- a/arch/sparc/kernel/pci_common.c +++ b/arch/sparc/kernel/pci_common.c @@ -329,23 +329,6 @@ void pci_get_pbm_props(struct pci_pbm_info *pbm) } } -static void pci_register_legacy_regions(struct resource *io_res, - struct resource *mem_res) -{ - struct resource *p; - - /* VGA Video RAM. */ - p = kzalloc(sizeof(*p), GFP_KERNEL); - if (!p) - return; - - p->name = "Video RAM area"; - p->start = mem_res->start + 0xa0000UL; - p->end = p->start + 0x1ffffUL; - p->flags = IORESOURCE_BUSY; - request_resource(mem_res, p); -} - static void pci_register_iommu_region(struct pci_pbm_info *pbm) { const u32 *vdma = of_get_property(pbm->op->dev.of_node, "virtual-dma", @@ -487,8 +470,6 @@ void pci_determine_mem_io_space(struct pci_pbm_info *pbm) if (pbm->mem64_space.flags) request_resource(&iomem_resource, &pbm->mem64_space); - pci_register_legacy_regions(&pbm->io_space, - &pbm->mem_space); pci_register_iommu_region(pbm); } diff --git a/drivers/gpu/vga/vgaarb.c b/drivers/gpu/vga/vgaarb.c index 1c5e74cb9279..147f8d205fdc 100644 --- a/drivers/gpu/vga/vgaarb.c +++ b/drivers/gpu/vga/vgaarb.c @@ -643,6 +643,7 @@ static bool vga_arbiter_add_pci_device(struct pci_dev *pdev) * clear that below if the bridge isn't forwarding */ pci_read_config_word(pdev, PCI_COMMAND, &cmd); + vgaarb_info(&pdev->dev, "command %#06x\n", cmd); if (cmd & PCI_COMMAND_IO) vgadev->owns |= VGA_RSRC_LEGACY_IO; if (cmd & PCI_COMMAND_MEMORY) @@ -1469,7 +1470,7 @@ static void __init vga_arb_select_default_device(void) struct vga_device, list); if (vgadev) { struct device *dev = &vgadev->pdev->dev; - vgaarb_info(dev, "setting as boot device (VGA legacy resources not available)\n"); + vgaarb_info(dev, "setting as boot device (VGA legacy resources not enabled)\n"); vga_set_default_device(vgadev->pdev); } } ^ permalink raw reply related [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic @ 2018-04-11 20:01 ` Bjorn Helgaas 0 siblings, 0 replies; 40+ messages in thread From: Bjorn Helgaas @ 2018-04-11 20:01 UTC (permalink / raw) To: Meelis Roos; +Cc: Yinghai Lu, linux-pci, sparclinux On Wed, Apr 11, 2018 at 05:40:41PM +0300, Meelis Roos wrote: > > On Wed, Apr 11, 2018 at 10:59:19AM +0300, Meelis Roos wrote: > > > > Oops, sorry, I can't easily compile test it. Here's an updated patch: > > > > > > > > commit a9ded309cbf3f57e9979848fd0aa0ffacdf11f1a > > > > Author: Bjorn Helgaas <bhelgaas@google.com> > > > > Date: Tue Apr 10 08:47:34 2018 -0500 > > > > > > Thanks, this patch compiles and works - Video RAM related BAR allocation > > > errors are gone. > > > > Great, thanks! I didn't mean to take up so much of your time testing > > *all* of your systems :) > > Well, they compiled in parallel :) > > > > Hera are the /proc/iomem's but unfortunately the physical > > > addresses have been censored by security: > > > > If you look at /proc/iomem as root, you should see the actual > > addresses. > > Yes, that was it. > > > If you have any systems with VGA, it would be useful to test one of > > them. > > This is Blade 100, with atyfb frame buffer: > > # cat /proc/iomem > 00000000-7effdfff : System RAM > 00404000-0085aadf : Kernel code > 0085aae0-009b8a8f : Kernel data > 009f2000-00a37a37 : Kernel bss > 7f000000-7fee5fff : System RAM > 7ff04000-7ff0bfff : System RAM > 1ff00000000-1ffffffffff : /pci@1f,0 > 1ff00000000-1ff000fffff : 0000:00:07.0 > 1ff00400000-1ff0041ffff : 0000:00:0c.1 > 1ff00400000-1ff0041ffff : sungem > 1ff00420000-1ff00421fff : 0000:00:0c.2 > 1ff00422000-1ff00423fff : 0000:00:0c.2 > 1ff00424000-1ff00425fff : 0000:00:08.0 > 1ff00426000-1ff00427fff : 0000:00:13.0 > 1ff00440000-1ff0045ffff : 0000:00:13.0 Thanks, this is really interesting. Would you mind replacing the test patch with the following (this applies directly on the upstream kernel, e.g., fd3b36d27566)? Sorry for the back and forth, but there's a lot going on here that I don't understand. I'd like to see the complete dmesg log, /proc/iomem, and "lspci -vv". diff --git a/arch/sparc/kernel/pci.c b/arch/sparc/kernel/pci.c index 41b20edb427d..ffb9227c1b80 100644 --- a/arch/sparc/kernel/pci.c +++ b/arch/sparc/kernel/pci.c @@ -166,7 +166,7 @@ void pci_config_write32(u32 *addr, u32 val) spin_unlock_irqrestore(&pci_poke_lock, flags); } -static int ofpci_verbose; +static int ofpci_verbose = 1; static int __init ofpci_debug(char *str) { @@ -243,6 +243,8 @@ static void pci_parse_of_addrs(struct platform_device *op, res->end = op_res->end; res->flags = flags; res->name = pci_name(dev); + + pci_info(dev, "reg 0x%x: %pR\n", i, res); } } @@ -353,6 +355,9 @@ static struct pci_dev *of_create_pci_dev(struct pci_pbm_info *pbm, dev->irq = PCI_IRQ_NONE; } + pci_info(dev, "[%04x:%04x] type %02x class %#08x\n", + dev->vendor, dev->device, dev->hdr_type, dev->class); + pci_parse_of_addrs(sd->op, node, dev); if (ofpci_verbose) @@ -624,6 +629,46 @@ static void pci_bus_register_of_sysfs(struct pci_bus *bus) pci_bus_register_of_sysfs(child_bus); } +static void pci_claim_legacy_resources(struct pci_dev *dev) +{ + struct pci_bus_region region; + struct resource *p, *root, *conflict; + + pci_info(dev, "class %#x\n", dev->class); + if ((dev->class >> 8) != PCI_CLASS_DISPLAY_VGA) + return; + + p = kzalloc(sizeof(*p), GFP_KERNEL); + if (!p) + return; + + p->name = "Video RAM area"; + p->flags = IORESOURCE_MEM | IORESOURCE_BUSY; + + region.start = 0xa0000UL; + region.end = region.start + 0x1ffffUL; + pcibios_bus_to_resource(dev->bus, p, ®ion); + + root = pci_find_parent_resource(dev, p); + if (!root) { + pci_info(dev, "can't claim VGA legacy %pR: no compatible bridge window\n", p); + goto err; + } + + pci_info(dev, "requesting %pR from %s %pR\n", p, root->name, root); + conflict = request_resource_conflict(root, p); + if (conflict) { + pci_info(dev, "can't claim VGA legacy %pR: address conflict with %s %pR\n", + p, conflict->name, conflict); + goto err; + } + + return; + +err: + kfree(p); +} + static void pci_claim_bus_resources(struct pci_bus *bus) { struct pci_bus *child_bus; @@ -648,6 +693,8 @@ static void pci_claim_bus_resources(struct pci_bus *bus) pci_claim_resource(dev, i); } + + pci_claim_legacy_resources(dev); } list_for_each_entry(child_bus, &bus->children, node) @@ -687,6 +734,7 @@ struct pci_bus *pci_scan_one_pbm(struct pci_pbm_info *pbm, pci_bus_register_of_sysfs(bus); pci_claim_bus_resources(bus); + pci_bus_add_devices(bus); return bus; } diff --git a/arch/sparc/kernel/pci_common.c b/arch/sparc/kernel/pci_common.c index 38d46bcc8634..9bb6a192ef3f 100644 --- a/arch/sparc/kernel/pci_common.c +++ b/arch/sparc/kernel/pci_common.c @@ -329,23 +329,6 @@ void pci_get_pbm_props(struct pci_pbm_info *pbm) } } -static void pci_register_legacy_regions(struct resource *io_res, - struct resource *mem_res) -{ - struct resource *p; - - /* VGA Video RAM. */ - p = kzalloc(sizeof(*p), GFP_KERNEL); - if (!p) - return; - - p->name = "Video RAM area"; - p->start = mem_res->start + 0xa0000UL; - p->end = p->start + 0x1ffffUL; - p->flags = IORESOURCE_BUSY; - request_resource(mem_res, p); -} - static void pci_register_iommu_region(struct pci_pbm_info *pbm) { const u32 *vdma = of_get_property(pbm->op->dev.of_node, "virtual-dma", @@ -487,8 +470,6 @@ void pci_determine_mem_io_space(struct pci_pbm_info *pbm) if (pbm->mem64_space.flags) request_resource(&iomem_resource, &pbm->mem64_space); - pci_register_legacy_regions(&pbm->io_space, - &pbm->mem_space); pci_register_iommu_region(pbm); } diff --git a/drivers/gpu/vga/vgaarb.c b/drivers/gpu/vga/vgaarb.c index 1c5e74cb9279..147f8d205fdc 100644 --- a/drivers/gpu/vga/vgaarb.c +++ b/drivers/gpu/vga/vgaarb.c @@ -643,6 +643,7 @@ static bool vga_arbiter_add_pci_device(struct pci_dev *pdev) * clear that below if the bridge isn't forwarding */ pci_read_config_word(pdev, PCI_COMMAND, &cmd); + vgaarb_info(&pdev->dev, "command %#06x\n", cmd); if (cmd & PCI_COMMAND_IO) vgadev->owns |= VGA_RSRC_LEGACY_IO; if (cmd & PCI_COMMAND_MEMORY) @@ -1469,7 +1470,7 @@ static void __init vga_arb_select_default_device(void) struct vga_device, list); if (vgadev) { struct device *dev = &vgadev->pdev->dev; - vgaarb_info(dev, "setting as boot device (VGA legacy resources not available)\n"); + vgaarb_info(dev, "setting as boot device (VGA legacy resources not enabled)\n"); vga_set_default_device(vgadev->pdev); } } ^ permalink raw reply related [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic 2018-04-11 20:01 ` Bjorn Helgaas @ 2018-04-11 20:25 ` Meelis Roos -1 siblings, 0 replies; 40+ messages in thread From: Meelis Roos @ 2018-04-11 20:25 UTC (permalink / raw) To: Bjorn Helgaas; +Cc: Yinghai Lu, linux-pci, sparclinux > Thanks, this is really interesting. Would you mind replacing the test > patch with the following (this applies directly on the upstream > kernel, e.g., fd3b36d27566)? > > Sorry for the back and forth, but there's a lot going on here that I > don't understand. > > I'd like to see the complete dmesg log, /proc/iomem, and "lspci -vv". 00000000-7effdfff : System RAM 00404000-0085ab9f : Kernel code 0085aba0-009b8a8f : Kernel data 009f2000-00a37a37 : Kernel bss 7f000000-7fee5fff : System RAM 7ff04000-7ff0bfff : System RAM 1ff00000000-1ffffffffff : /pci@1f,0 1ff00000000-1ff000fffff : 0000:00:07.0 1ff00400000-1ff0041ffff : 0000:00:0c.1 1ff00400000-1ff0041ffff : sungem 1ff00420000-1ff00421fff : 0000:00:0c.2 1ff00422000-1ff00423fff : 0000:00:0c.2 1ff00424000-1ff00425fff : 0000:00:08.0 1ff00426000-1ff00427fff : 0000:00:13.0 1ff00440000-1ff0045ffff : 0000:00:13.0 1ff00800000-1ff00bfffff : 0000:00:0c.1 1ff00c00000-1ff00ffffff : 0000:00:0c.2 1ff01000000-1ff013fffff : 0000:00:0c.3 1ff02000000-1ff02ffffff : 0000:00:0c.3 1ff02000000-1ff02ffffff : ohci_hcd 1ff03000000-1ff030fffff : PCI Bus 0000:01 1ff03000000-1ff03001fff : 0000:01:00.0 1ff03000000-1ff03001fff : sym53c8xx 1ff03002000-1ff03003fff : 0000:01:02.0 1ff03010000-1ff0301ffff : 0000:01:02.0 1ff04000000-1ff04ffffff : 0000:00:13.0 1ff04000000-1ff04ffffff : atyfb 1ffc0000000-1ffdfffffff : IOMMU 1fff1000000-1fff1001fff : eeprom 00:03.0 Non-VGA unclassified device: ULi Electronics Inc. M7101 Power Management Controller [PMU] Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Region 0: [virtual] I/O ports at <unassigned> [size=16] Kernel driver in use: ali1535_smbus 00: b9 10 01 71 00 00 00 02 00 00 00 00 00 00 00 00 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40: 00 00 00 00 00 00 20 00 08 18 08 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40 01 70: 0f 11 00 00 00 00 00 08 00 00 00 00 00 00 00 00 80: 00 00 10 10 00 00 00 00 01 04 00 00 00 00 00 00 90: 00 00 02 00 00 00 00 0f 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 40 40 01 00 00 02 00 60 04 01 03 00 00 00 30 c0: 00 10 ff 00 00 00 00 00 01 00 00 00 00 00 00 00 d0: ff 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 08 00 06 01 00 01 00 00 00 00 00 00 00 00 00 f0: 45 00 20 7e 00 00 00 00 00 00 00 00 00 00 00 00 00:05.0 PCI bridge: Digital Equipment Corporation DECchip 21152 (rev 03) (prog-if 00 [Normal decode]) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64, Cache Line Size: 64 bytes Bus: primary=00, secondary=01, subordinate=01, sec-latency=0 I/O behind bridge: 00001000-00001fff Memory behind bridge: 03000000-030fffff Prefetchable memory behind bridge: fffffffffff00000-00000000000fffff Secondary status: 66MHz- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- <SERR- <PERR- BridgeCtl: Parity- SERR- NoISA- VGA- MAbort- >Reset- FastB2B- PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- Capabilities: [dc] Power Management version 1 Flags: PMEClk- DSI- D1- D2- AuxCurrent=220mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Bridge: PM- B3+ 00: 11 10 24 00 07 00 90 02 03 00 04 06 10 40 01 00 10: 00 00 00 00 00 00 00 00 00 01 01 00 11 11 80 02 20: 00 03 00 03 f1 ff 01 00 ff ff ff ff 00 00 00 00 30: 00 00 00 00 dc 00 00 00 00 00 00 00 00 00 00 00 40: 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 3e 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 01 00 01 01 e0: 00 00 c0 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:07.0 ISA bridge: ULi Electronics Inc. M1533/M1535/M1543 PCI to ISA Bridge [Aladdin IV/V/V+] Subsystem: ULi Electronics Inc. ALi M1533 Aladdin IV/V ISA Bridge Control: I/O+ Mem+ BusMaster+ SpecCycle+ MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Region 0: [virtual] I/O ports at 1fe02000000 [size=64K] Region 1: Memory at <unassigned> (32-bit, non-prefetchable) [size=1M] Capabilities: [a0] Power Management version 1 Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- 00: b9 10 33 15 0f 00 10 02 00 00 01 06 00 00 00 00 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 b9 10 33 15 30: 00 00 00 00 a0 00 00 00 00 00 00 00 00 00 00 00 40: 11 13 49 80 83 09 00 07 00 00 00 10 00 00 fd 01 50: 00 00 00 40 00 07 02 00 6e 03 09 00 00 00 00 08 60: 00 00 00 00 00 00 00 00 00 00 00 00 80 20 00 00 70: 00 00 06 00 41 03 00 d3 04 02 00 02 00 00 01 10 80: 07 00 33 01 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 01 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:08.0 Multimedia audio controller: ULi Electronics Inc. M5451 PCI AC-Link Controller Audio Device (rev 01) Subsystem: ULi Electronics Inc. M5451 PCI AC-Link Controller Audio Device Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Interrupt: pin A routed to IRQ 14 Region 0: I/O ports at 0900 [disabled] [size=256] Region 1: Memory at 00424000 (32-bit, non-prefetchable) [disabled] [size=8K] Capabilities: [dc] Power Management version 2 Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2+,D3hot+,D3cold+) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- 00: b9 10 51 54 00 00 90 02 01 00 01 04 00 40 00 00 10: 01 09 00 00 00 40 42 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 b9 10 51 54 30: 00 00 00 00 dc 00 00 00 00 00 00 00 00 01 02 18 40: 00 00 00 00 00 04 00 e2 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 01 00 22 e6 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:0c.0 Bridge: Oracle/SUN RIO EBUS (rev 01) Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr+ Stepping- SERR+ FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64 (2500ns min, 6250ns max), Cache Line Size: 64 bytes BIST result: 00 Region 0: Memory at <ignored> (32-bit, non-prefetchable) Region 1: Memory at <ignored> (32-bit, non-prefetchable) 00: 8e 10 00 11 46 01 80 02 01 00 80 06 10 40 80 80 10: 00 00 00 f0 00 00 00 f1 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0a 19 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:0c.1 Ethernet controller: Oracle/SUN RIO 10/100 Ethernet [eri] (rev 01) Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64 (2500ns min, 1250ns max), Cache Line Size: 64 bytes Interrupt: pin ? routed to IRQ 11 BIST result: 00 Region 0: Memory at 00400000 (32-bit, non-prefetchable) [size=128K] Expansion ROM at 00800000 [disabled] [size=4M] Kernel driver in use: gem 00: 8e 10 01 11 06 00 80 02 01 00 00 02 10 40 80 80 10: 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 80 00 00 00 00 00 00 00 00 00 00 00 0a 05 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:0c.2 FireWire (IEEE 1394): Oracle/SUN RIO 1394 (rev 01) (prog-if 10 [OHCI]) Control: I/O- Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Interrupt: pin ? routed to IRQ 12 BIST result: 00 Region 0: Memory at 00420000 (32-bit, non-prefetchable) [size=8K] Region 1: Memory at 00422000 (32-bit, non-prefetchable) [size=8K] Expansion ROM at 00c00000 [disabled] [size=4M] 00: 8e 10 02 11 02 00 80 02 01 10 00 0c 10 40 80 80 10: 00 00 42 00 00 20 42 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 c0 00 00 00 00 00 00 00 00 00 00 00 0a 05 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:0c.3 USB controller: Oracle/SUN RIO USB (rev 01) (prog-if 10 [OHCI]) Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64 (2500ns min, 1250ns max), Cache Line Size: 64 bytes Interrupt: pin ? routed to IRQ 13 BIST result: 00 Region 0: Memory at 02000000 (32-bit, non-prefetchable) [size=16M] Expansion ROM at 01000000 [disabled] [size=4M] Kernel driver in use: ohci-pci 00: 8e 10 03 11 06 00 80 02 01 10 03 0c 10 40 80 80 10: 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 01 00 00 00 00 00 00 00 00 00 00 0a 05 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:0d.0 IDE interface: ULi Electronics Inc. M5229 IDE (rev c3) (prog-if ff) Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64 (500ns min, 1000ns max) Interrupt: pin A routed to IRQ 15 Region 0: I/O ports at 0a00 [size=8] Region 1: I/O ports at 0a18 [size=8] Region 2: I/O ports at 0a10 [size=8] Region 3: I/O ports at 0a08 [size=8] Region 4: I/O ports at 0a20 [size=16] Capabilities: [60] Power Management version 2 Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Kernel driver in use: pata_ali 00: b9 10 29 52 05 00 90 02 c3 ff 01 01 00 40 00 00 10: 01 0a 00 00 19 0a 00 00 11 0a 00 00 09 0a 00 00 20: 21 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 60 00 00 00 00 00 00 00 00 01 02 04 40: 06 00 00 7f 00 00 00 00 00 02 20 c9 00 80 ba 1a 50: 03 00 00 81 08 00 a8 00 01 31 31 31 03 09 0a 0a 60: 01 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 21 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:13.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Rage XL PCI (rev 27) (prog-if 00 [VGA controller]) Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Interrupt: pin A routed to IRQ 19 Region 0: Memory at 04000000 (32-bit, non-prefetchable) [size=16M] Region 1: I/O ports at 0b00 [size=256] Region 2: Memory at 00426000 (32-bit, non-prefetchable) [size=8K] Expansion ROM at 00440000 [disabled] [size=128K] Capabilities: [5c] Power Management version 2 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Kernel driver in use: atyfb 00: 02 10 52 47 83 00 90 02 27 00 00 03 10 40 00 00 10: 00 00 00 04 01 0b 00 00 00 60 42 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 44 00 5c 00 00 00 00 00 00 00 f1 01 08 00 40: 0c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 02 5c 10 00 01 00 00 ff 00 00 00 00 01 00 02 06 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01:00.0 SCSI storage controller: LSI Logic / Symbios Logic 53c810 (rev 12) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64 (2000ns min, 16000ns max), Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 16 Region 0: I/O ports at 1000 [size=256] Region 1: Memory at 03000000 (32-bit, non-prefetchable) [size=8K] Kernel driver in use: sym53c8xx 00: 00 10 01 00 17 00 00 02 12 00 00 01 10 40 00 00 10: 01 10 00 00 00 00 00 03 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 01 08 40 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: da 00 00 03 47 00 06 1f 00 08 00 00 80 00 00 02 90: ff e0 dc c1 00 ff ff ff 00 f0 31 21 a0 13 dd c1 a0: 00 08 00 01 00 00 00 50 c0 13 dd c1 c0 13 dd c1 b0: 00 10 dd c1 38 f0 dc c1 ce 6d 00 a1 c0 23 ba c1 c0: 8f 05 00 00 00 05 40 0f 0c 00 80 0f 07 00 02 80 d0: 00 00 02 80 00 00 02 80 00 00 02 80 00 01 ff 40 e0: 00 01 ff 40 00 01 ff 40 00 01 ff 40 00 01 ff 40 f0: 00 01 ff 40 00 01 ff 40 00 01 ff 40 00 01 ff 40 01:01.0 Multimedia audio controller: C-Media Electronics Inc CMI8738/CMI8768 PCI Audio (rev 10) Subsystem: C-Media Electronics Inc CMI8738/C3DX PCI Audio Device Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Interrupt: pin A routed to IRQ 17 Region 0: I/O ports at 1100 [disabled] [size=256] Capabilities: [c0] Power Management version 2 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- 00: f6 13 11 01 00 00 10 02 10 00 01 04 00 40 00 00 10: 01 11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 f6 13 11 01 30: 00 00 00 00 c0 00 00 00 00 00 00 00 ff 01 02 18 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 01 00 02 06 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01:02.0 Multimedia audio controller: Cirrus Logic Crystal CS4281 PCI Audio (rev 01) Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Interrupt: pin A routed to IRQ 18 Region 0: Memory at 03002000 (32-bit, non-prefetchable) [disabled] [size=8K] Region 1: Memory at 03010000 (32-bit, non-prefetchable) [disabled] [size=64K] Capabilities: [40] Power Management version 2 Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- 00: 13 10 05 60 00 00 10 02 01 00 01 04 00 40 00 00 10: 00 20 00 03 00 00 01 03 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 40 00 00 00 00 00 00 00 00 01 04 18 40: 01 00 22 7e 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 04 00 00 00 f0: 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [ 0.000059] PROMLIB: Sun IEEE Boot Prom 'OBP 4.17.1 2005/04/11 14:31' [ 0.000116] PROMLIB: Root node compatible: [ 0.000217] Linux version 4.16.0-11316-gf77cfbe-dirty (mroos@blade100) (gcc version 4.9.3 (Debian 4.9.3-2)) #168 Wed Apr 11 23:14:41 EEST 2018 [ 0.280335] bootconsole [earlyprom0] enabled [ 0.331447] ARCH: SUN4U [ 0.360724] Ethernet address: 00:03:ba:0b:7d:5d [ 0.414898] MM: PAGE_OFFSET is 0xfffff80000000000 (max_phys_bits == 40) [ 0.494057] MM: VMALLOC [0x0000000100000000 --> 0x0000060000000000] [ 0.568973] MM: VMEMMAP [0x0000060000000000 --> 0x00000c0000000000] [ 0.720460] Kernel: Using 2 locked TLB entries for main kernel image. [ 0.797625] Remapping the kernel... [ 0.798175] done. [ 1.201703] OF stdout device is: /pci@1f,0/isa@7/serial@0,3f8 [ 1.270449] PROM: Built device tree with 90708 bytes of memory. [ 1.341590] Top of RAM: 0x7ff0c000, Total RAM: 0x7feec000 [ 1.406150] Memory hole size: 0MB [ 1.979239] Allocated 16384 bytes for kernel page tables. [ 2.044448] Zone ranges: [ 2.074793] Normal [mem 0x0000000000000000-0x000000007ff0bfff] [ 2.148765] Movable zone start for each node [ 2.199783] Early memory node ranges [ 2.242493] node 0: [mem 0x0000000000000000-0x000000007effdfff] [ 2.317409] node 0: [mem 0x000000007f000000-0x000000007fee5fff] [ 2.392326] node 0: [mem 0x000000007ff04000-0x000000007ff0bfff] [ 2.467248] Initmem setup node 0 [mem 0x0000000000000000-0x000000007ff0bfff] [ 2.551514] On node 0 totalpages: 262006 [ 2.551525] Normal zone: 2048 pages used for memmap [ 2.551530] Normal zone: 0 pages reserved [ 2.551539] Normal zone: 262006 pages, LIFO batch:15 [ 2.653830] Booting Linux... [ 2.688370] CPU CAPS: [flush,stbar,swap,muldiv,v9,mul32,div32,v8plus] [ 2.765450] CPU CAPS: [vis] [ 2.804900] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768 [ 2.804913] pcpu-alloc: [0] 0 [ 2.807648] Built 1 zonelists, mobility grouping on. Total pages: 259958 [ 2.888901] Kernel command line: root=/dev/sda2 ro console=ttyS0 [ 2.974322] Dentry cache hash table entries: 262144 (order: 8, 2097152 bytes) [ 3.066836] Inode-cache hash table entries: 131072 (order: 7, 1048576 bytes) [ 3.151270] Sorting __ex_table... [ 3.346086] Memory: 2069760K/2096048K available (4442K kernel code, 298K rwdata, 1096K rodata, 200K init, 278K bss, 26288K reserved, 0K cma-reserved) [ 3.506677] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1 [ 3.585528] NR_IRQS: 2048, nr_irqs: 2048, preallocated irqs: 1 [ 3.655545] clocksource: hbtick: mask: 0xffffffffffffffff max_cycles: 0x148020aa9, max_idle_ns: 440795202069 ns [ 3.776260] clocksource: mult[b400012e] shift[24] [ 3.832470] clockevent: mult[16c16bf] shift[32] [ 3.886908] Console: colour dummy device 80x25 [ 4.090118] Calibrating delay using timer specific routine.. 11.12 BogoMIPS (lpj=55648) [ 4.185866] pid_max: default: 32768 minimum: 301 [ 4.241727] Mount-cache hash table entries: 4096 (order: 2, 32768 bytes) [ 4.321958] Mountpoint-cache hash table entries: 4096 (order: 2, 32768 bytes) [ 4.411687] devtmpfs: initialized [ 4.456082] random: get_random_u32 called from bucket_table_alloc+0x78/0x1e0 with crng_init=0 [ 4.558763] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns [ 4.676445] futex hash table entries: 256 (order: -1, 6144 bytes) [ 4.750134] NET: Registered protocol family 16 [ 4.812677] IRQ pre handler NOT supported. [ 4.862096] IRQ pre handler NOT supported. [ 4.911395] IRQ pre handler NOT supported. [ 4.961961] audit: initializing netlink subsys (disabled) [ 5.033921] kworker/u2:0 (40) used greatest stack depth: 10304 bytes left [ 5.115934] random: fast init done [ 5.169855] /pci@1f,0: PCI IO [io 0x1fe02000000-0x1fe02ffffff] offset 1fe02000000 [ 5.260566] /pci@1f,0: PCI MEM [mem 0x1ff00000000-0x1ffffffffff] offset 1ff00000000 [ 5.352239] /pci@1f,0: SABRE PCI Bus Module ver[0:0] [ 5.411653] PCI: Scanning PBM /pci@1f,0 [ 5.457965] sabre f005f408: PCI host bridge to bus 0000:00 [ 5.523589] pci_bus 0000:00: root bus resource [io 0x1fe02000000-0x1fe02ffffff] (bus address [0x0000-0xffffff]) [ 5.645351] pci_bus 0000:00: root bus resource [mem 0x1ff00000000-0x1ffffffffff] (bus address [0x00000000-0xffffffff]) [ 5.773361] pci_bus 0000:00: root bus resource [bus 00-01] [ 5.839024] PCI: scan_bus[/pci@1f,0] bus no 0 [ 5.891179] * /pci@1f,0/ebus@c [ 5.929908] create device, devfn: 60, type: [ 5.985145] class: 0x68000 device name: 0000:00:0c.0 [ 6.048714] pci 0000:00:0c.0: [108e:1100] type 00 class 0x068000 [ 6.120606] adding to system ... [ 6.163761] PCI: dev header type: 0 [ 6.205506] * /pci@1f,0/isa@7 [ 6.243152] create device, devfn: 38, type: [ 6.298419] class: 0x60100 device name: 0000:00:07.0 [ 6.361991] pci 0000:00:07.0: [10b9:1533] type 00 class 0x060100 [ 6.433890] parse addresses (40 bytes) @ (ptrval) [ 6.502673] start: 1fe02000000, end: 1fe0200ffff, i: 10 [ 6.567309] pci 0000:00:07.0: reg 0x10: [io 0x1fe02000000-0x1fe0200ffff] [ 6.648557] start: 1ff00000000, end: 1ff000fffff, i: 14 [ 6.713192] pci 0000:00:07.0: reg 0x14: [mem 0x1ff00000000-0x1ff000fffff] [ 6.794436] adding to system ... [ 6.837517] PCI: dev header type: 0 [ 6.879234] * /pci@1f,0/pmu@3 [ 6.916881] create device, devfn: 18, type: [ 6.972141] class: 0x0 device name: 0000:00:03.0 [ 7.031563] pci 0000:00:03.0: [10b9:7101] type 00 class 0x000000 [ 7.103460] parse addresses (20 bytes) @ (ptrval) [ 7.172245] start: 1fe02000000, end: 1fe0200000f, i: 10 [ 7.236882] pci 0000:00:03.0: reg 0x10: [io 0x1fe02000000-0x1fe0200000f] [ 7.318126] adding to system ... [ 7.360970] pci 0000:00:03.0: quirk: [io 0x1fe02000800-0x1fe0200083f] claimed by ali7101 ACPI [ 7.464025] pci 0000:00:03.0: quirk: [io 0x1fe02000600-0x1fe0200061f] claimed by ali7101 SMB [ 7.566080] pci 0000:00:03.0: quirk_ali7101_acpi+0x0/0x40 took 19531 usecs [ 7.648616] PCI: dev header type: 0 [ 7.690327] * /pci@1f,0/network@c,1 [ 7.734236] create device, devfn: 61, type: network [ 7.796750] class: 0x20000 device name: 0000:00:0c.1 [ 7.860324] pci 0000:00:0c.1: [108e:1101] type 00 class 0x020000 [ 7.932219] parse addresses (40 bytes) @ (ptrval) [ 8.001003] start: 1ff00400000, end: 1ff0041ffff, i: 10 [ 8.065640] pci 0000:00:0c.1: reg 0x10: [mem 0x1ff00400000-0x1ff0041ffff] [ 8.146887] start: 1ff00800000, end: 1ff00bfffff, i: 30 [ 8.211522] pci 0000:00:0c.1: reg 0x30: [mem 0x1ff00800000-0x1ff00bfffff] [ 8.292769] adding to system ... [ 8.335825] PCI: dev header type: 0 [ 8.377569] * /pci@1f,0/firewire@c,2 [ 8.422489] create device, devfn: 62, type: [ 8.477747] class: 0xc0010 device name: 0000:00:0c.2 [ 8.541326] pci 0000:00:0c.2: [108e:1102] type 00 class 0x0c0010 [ 8.613221] parse addresses (60 bytes) @ (ptrval) [ 8.682007] start: 1ff00420000, end: 1ff00421fff, i: 10 [ 8.746642] pci 0000:00:0c.2: reg 0x10: [mem 0x1ff00420000-0x1ff00421fff] [ 8.827891] start: 1ff00422000, end: 1ff00423fff, i: 14 [ 8.892525] pci 0000:00:0c.2: reg 0x14: [mem 0x1ff00422000-0x1ff00423fff] [ 8.973775] start: 1ff00c00000, end: 1ff00ffffff, i: 30 [ 9.038411] pci 0000:00:0c.2: reg 0x30: [mem 0x1ff00c00000-0x1ff00ffffff] [ 9.119656] adding to system ... [ 9.162736] PCI: dev header type: 0 [ 9.204457] * /pci@1f,0/usb@c,3 [ 9.244184] create device, devfn: 63, type: [ 9.299439] class: 0xc0310 device name: 0000:00:0c.3 [ 9.363017] pci 0000:00:0c.3: [108e:1103] type 00 class 0x0c0310 [ 9.434913] parse addresses (40 bytes) @ (ptrval) [ 9.503701] start: 1ff02000000, end: 1ff02ffffff, i: 10 [ 9.568334] pci 0000:00:0c.3: reg 0x10: [mem 0x1ff02000000-0x1ff02ffffff] [ 9.649582] start: 1ff01000000, end: 1ff013fffff, i: 30 [ 9.714218] pci 0000:00:0c.3: reg 0x30: [mem 0x1ff01000000-0x1ff013fffff] [ 9.795464] adding to system ... [ 9.838518] PCI: dev header type: 0 [ 9.880258] * /pci@1f,0/sound@8 [ 9.919990] create device, devfn: 40, type: [ 9.975250] class: 0x40100 device name: 0000:00:08.0 [ 10.038823] pci 0000:00:08.0: [10b9:5451] type 00 class 0x040100 [ 10.110721] parse addresses (40 bytes) @ (ptrval) [ 10.179506] start: 1fe02000900, end: 1fe020009ff, i: 10 [ 10.244142] pci 0000:00:08.0: reg 0x10: [io 0x1fe02000900-0x1fe020009ff] [ 10.325391] start: 1ff00424000, end: 1ff00425fff, i: 14 [ 10.390026] pci 0000:00:08.0: reg 0x14: [mem 0x1ff00424000-0x1ff00425fff] [ 10.471271] adding to system ... [ 10.514119] pci 0000:00:08.0: supports D1 D2 [ 10.514131] pci 0000:00:08.0: PME# supported from D2 D3hot D3cold [ 10.514430] PCI: dev header type: 0 [ 10.556172] * /pci@1f,0/ide@d [ 10.593822] create device, devfn: 68, type: ide [ 10.652205] class: 0x101ff device name: 0000:00:0d.0 [ 10.715780] pci 0000:00:0d.0: [10b9:5229] type 00 class 0x0101ff [ 10.787672] parse addresses (100 bytes) @ (ptrval) [ 10.857495] start: 1fe02000a00, end: 1fe02000a07, i: 10 [ 10.922130] pci 0000:00:0d.0: reg 0x10: [io 0x1fe02000a00-0x1fe02000a07] [ 11.003380] start: 1fe02000a18, end: 1fe02000a1f, i: 14 [ 11.068016] pci 0000:00:0d.0: reg 0x14: [io 0x1fe02000a18-0x1fe02000a1f] [ 11.149264] start: 1fe02000a10, end: 1fe02000a17, i: 18 [ 11.213900] pci 0000:00:0d.0: reg 0x18: [io 0x1fe02000a10-0x1fe02000a17] [ 11.295150] start: 1fe02000a08, end: 1fe02000a0f, i: 1c [ 11.359785] pci 0000:00:0d.0: reg 0x1c: [io 0x1fe02000a08-0x1fe02000a0f] [ 11.441033] start: 1fe02000a20, end: 1fe02000a2f, i: 20 [ 11.505669] pci 0000:00:0d.0: reg 0x20: [io 0x1fe02000a20-0x1fe02000a2f] [ 11.586915] adding to system ... [ 11.629978] PCI: dev header type: 0 [ 11.671708] * /pci@1f,0/pci@5 [ 11.709365] create device, devfn: 28, type: pci [ 11.767742] class: 0x60400 device name: 0000:00:05.0 [ 11.831315] pci 0000:00:05.0: [1011:0024] type 01 class 0x060400 [ 11.903210] adding to system ... [ 11.946311] PCI: dev header type: 1 [ 11.988001] of_scan_pci_bridge(/pci@1f,0/pci@5) [ 12.042236] Bridge bus range [1 --> 1] [ 12.091470] Bridge ranges[ (ptrval)] simba[0] [ 12.154985] RAW Range[81000000:00000000:00001000:81000000:00000000:00001000:00000000:00001000] [ 12.262208] Using flags[00000101] start[0000000000001000] size[0000000000001000] [ 12.356975] RAW Range[82000000:00000000:03000000:82000000:00000000:03000000:00000000:00100000] [ 12.464201] Using flags[00000200] start[0000000003000000] size[0000000000100000] [ 12.558963] bus name: PCI Bus 0000:01 [ 12.606967] PCI: scan_bus[/pci@1f,0/pci@5] bus no 1 [ 12.665361] * /pci@1f,0/pci@5/scsi@0 [ 12.710304] create device, devfn: 0, type: [ 12.764510] class: 0x10000 device name: 0000:01:00.0 [ 12.828090] pci 0000:01:00.0: [1000:0001] type 00 class 0x010000 [ 12.899985] parse addresses (40 bytes) @ (ptrval) [ 12.968770] start: 1fe02001000, end: 1fe020010ff, i: 10 [ 13.033408] pci 0000:01:00.0: reg 0x10: [io 0x1fe02001000-0x1fe020010ff] [ 13.114655] start: 1ff03000000, end: 1ff03001fff, i: 14 [ 13.179290] pci 0000:01:00.0: reg 0x14: [mem 0x1ff03000000-0x1ff03001fff] [ 13.260537] adding to system ... [ 13.303636] PCI: dev header type: 0 [ 13.345332] * /pci@1f,0/pci@5/sound@1 [ 13.391308] create device, devfn: 8, type: [ 13.445520] class: 0x40100 device name: 0000:01:01.0 [ 13.509093] pci 0000:01:01.0: [13f6:0111] type 00 class 0x040100 [ 13.580989] parse addresses (20 bytes) @ (ptrval) [ 13.649773] start: 1fe02001100, end: 1fe020011ff, i: 10 [ 13.714410] pci 0000:01:01.0: reg 0x10: [io 0x1fe02001100-0x1fe020011ff] [ 13.795654] adding to system ... [ 13.838512] pci 0000:01:01.0: supports D1 D2 [ 13.838755] PCI: dev header type: 0 [ 13.880452] * /pci@1f,0/pci@5/sound@2 [ 13.926429] create device, devfn: 10, type: [ 13.981678] class: 0x40100 device name: 0000:01:02.0 [ 14.045249] pci 0000:01:02.0: [1013:6005] type 00 class 0x040100 [ 14.117146] parse addresses (40 bytes) @ (ptrval) [ 14.185931] start: 1ff03002000, end: 1ff03003fff, i: 10 [ 14.250568] pci 0000:01:02.0: reg 0x10: [mem 0x1ff03002000-0x1ff03003fff] [ 14.331816] start: 1ff03010000, end: 1ff0301ffff, i: 14 [ 14.396450] pci 0000:01:02.0: reg 0x14: [mem 0x1ff03010000-0x1ff0301ffff] [ 14.477696] adding to system ... [ 14.520555] pci 0000:01:02.0: supports D1 D2 [ 14.520565] pci 0000:01:02.0: PME# supported from D0 D1 D2 D3hot [ 14.520870] PCI: dev header type: 0 [ 14.562597] * /pci@1f,0/SUNW,m64B@13 [ 14.607528] create device, devfn: 98, type: display [ 14.670066] class: 0x30000 device name: 0000:00:13.0 [ 14.733629] pci 0000:00:13.0: [1002:4752] type 00 class 0x030000 [ 14.805526] parse addresses (80 bytes) @ (ptrval) [ 14.874311] start: 1ff04000000, end: 1ff04ffffff, i: 10 [ 14.938947] pci 0000:00:13.0: reg 0x10: [mem 0x1ff04000000-0x1ff04ffffff] [ 15.020197] start: 1fe02000b00, end: 1fe02000bff, i: 14 [ 15.084831] pci 0000:00:13.0: reg 0x14: [io 0x1fe02000b00-0x1fe02000bff] [ 15.166080] start: 1ff00426000, end: 1ff00427fff, i: 18 [ 15.230717] pci 0000:00:13.0: reg 0x18: [mem 0x1ff00426000-0x1ff00427fff] [ 15.311966] start: 1ff00440000, end: 1ff0045ffff, i: 30 [ 15.376601] pci 0000:00:13.0: reg 0x30: [mem 0x1ff00440000-0x1ff0045ffff] [ 15.457846] adding to system ... [ 15.500698] pci 0000:00:13.0: supports D1 D2 [ 15.500959] PCI: dev header type: 0 [ 15.542832] pci 0000:00:0c.0: class 0x68000 [ 15.592936] PCI: Claiming 0000:00:07.0: Resource 0: 000001fe02000000..000001fe0200ffff [101] [ 15.693943] pci 0000:00:07.0: can't claim BAR 0 [io 0x1fe02000000-0x1fe0200ffff]: address conflict with 0000:00:03.0 [io 0x1fe02000600-0x1fe0200061f] [ 15.856232] PCI: Claiming 0000:00:07.0: Resource 1: 000001ff00000000..000001ff000fffff [200] [ 15.957232] pci 0000:00:07.0: class 0x60100 [ 16.007314] PCI: Claiming 0000:00:03.0: Resource 0: 000001fe02000000..000001fe0200000f [101] [ 16.108310] pci 0000:00:03.0: class 0x0 [ 16.154234] PCI: Claiming 0000:00:0c.1: Resource 0: 000001ff00400000..000001ff0041ffff [200] [ 16.255231] PCI: Claiming 0000:00:0c.1: Resource 6: 000001ff00800000..000001ff00bfffff [44200] [ 16.358309] pci 0000:00:0c.1: class 0x20000 [ 16.408389] PCI: Claiming 0000:00:0c.2: Resource 0: 000001ff00420000..000001ff00421fff [200] [ 16.509387] PCI: Claiming 0000:00:0c.2: Resource 1: 000001ff00422000..000001ff00423fff [200] [ 16.610384] PCI: Claiming 0000:00:0c.2: Resource 6: 000001ff00c00000..000001ff00ffffff [44200] [ 16.713462] pci 0000:00:0c.2: class 0xc0010 [ 16.763541] PCI: Claiming 0000:00:0c.3: Resource 0: 000001ff02000000..000001ff02ffffff [200] [ 16.864540] PCI: Claiming 0000:00:0c.3: Resource 6: 000001ff01000000..000001ff013fffff [44200] [ 16.967617] pci 0000:00:0c.3: class 0xc0310 [ 17.017696] PCI: Claiming 0000:00:08.0: Resource 0: 000001fe02000900..000001fe020009ff [101] [ 17.118693] PCI: Claiming 0000:00:08.0: Resource 1: 000001ff00424000..000001ff00425fff [200] [ 17.219694] pci 0000:00:08.0: class 0x40100 [ 17.269774] PCI: Claiming 0000:00:0d.0: Resource 0: 000001fe02000a00..000001fe02000a07 [101] [ 17.370772] PCI: Claiming 0000:00:0d.0: Resource 1: 000001fe02000a18..000001fe02000a1f [101] [ 17.471768] PCI: Claiming 0000:00:0d.0: Resource 2: 000001fe02000a10..000001fe02000a17 [101] [ 17.572766] PCI: Claiming 0000:00:0d.0: Resource 3: 000001fe02000a08..000001fe02000a0f [101] [ 17.673762] PCI: Claiming 0000:00:0d.0: Resource 4: 000001fe02000a20..000001fe02000a2f [101] [ 17.774763] pci 0000:00:0d.0: class 0x101ff [ 17.824843] PCI: Claiming 0000:00:05.0: Resource 7: 000001fe02001000..000001fe02001fff [101] [ 17.925839] PCI: Claiming 0000:00:05.0: Resource 8: 000001ff03000000..000001ff030fffff [200] [ 18.026838] pci 0000:00:05.0: class 0x60400 [ 18.076919] PCI: Claiming 0000:00:13.0: Resource 0: 000001ff04000000..000001ff04ffffff [200] [ 18.177916] PCI: Claiming 0000:00:13.0: Resource 1: 000001fe02000b00..000001fe02000bff [101] [ 18.278914] PCI: Claiming 0000:00:13.0: Resource 2: 000001ff00426000..000001ff00427fff [200] [ 18.379910] PCI: Claiming 0000:00:13.0: Resource 6: 000001ff00440000..000001ff0045ffff [44200] [ 18.482987] pci 0000:00:13.0: class 0x30000 [ 18.533079] pci 0000:00:13.0: requesting [mem 0x1ff000a0000-0x1ff000bffff] from /pci@1f,0 [mem 0x1ff00000000-0x1ffffffffff] [ 18.666284] pci 0000:00:13.0: can't claim VGA legacy [mem 0x1ff000a0000-0x1ff000bffff]: address conflict with 0000:00:07.0 [mem 0x1ff00000000-0x1ff000fffff] [ 18.833774] PCI: Claiming 0000:01:00.0: Resource 0: 000001fe02001000..000001fe020010ff [101] [ 18.934771] PCI: Claiming 0000:01:00.0: Resource 1: 000001ff03000000..000001ff03001fff [200] [ 19.035769] pci 0000:01:00.0: class 0x10000 [ 19.085850] PCI: Claiming 0000:01:01.0: Resource 0: 000001fe02001100..000001fe020011ff [101] [ 19.186849] pci 0000:01:01.0: class 0x40100 [ 19.236931] PCI: Claiming 0000:01:02.0: Resource 0: 000001ff03002000..000001ff03003fff [200] [ 19.337928] PCI: Claiming 0000:01:02.0: Resource 1: 000001ff03010000..000001ff0301ffff [200] [ 19.438926] pci 0000:01:02.0: class 0x40100 [ 19.496203] audit: type=2000 audit(0.320:1): state=initialized audit_enabled=0 res=1 [ 19.622228] HugeTLB registered 64.0 KiB page size, pre-allocated 0 pages [ 19.702481] HugeTLB registered 8.00 MiB page size, pre-allocated 0 pages [ 19.782649] HugeTLB registered 256 MiB page size, pre-allocated 0 pages [ 19.861824] HugeTLB registered 2.00 GiB page size, pre-allocated 0 pages [ 19.945112] pci 0000:00:13.0: vgaarb: command 0x0080 [ 20.004588] pci 0000:00:13.0: vgaarb: VGA device added: decodes=io+mem,owns=none,locks=none [ 20.104590] pci 0000:00:13.0: vgaarb: bridge control possible [ 20.173340] pci 0000:00:13.0: vgaarb: setting as boot device (VGA legacy resources not enabled) [ 20.277446] vgaarb: loaded [ 20.310330] SCSI subsystem initialized [ 20.357726] libata version 3.00 loaded. [ 20.362515] /pci@1f,0/ebus@c/eeprom@1,0: Mostek regs at 0x1fff1000000 [ 20.440726] clocksource: Switched to clocksource hbtick [ 20.520493] kworker/u2:2 (232) used greatest stack depth: 9104 bytes left [ 20.628364] NET: Registered protocol family 2 [ 20.681769] tcp_listen_portaddr_hash hash table entries: 1024 (order: 1, 16384 bytes) [ 20.775592] TCP established hash table entries: 16384 (order: 4, 131072 bytes) [ 20.862705] TCP bind hash table entries: 16384 (order: 4, 131072 bytes) [ 20.942575] TCP: Hash tables configured (established 16384 bind 16384) [ 21.021233] UDP hash table entries: 1024 (order: 2, 32768 bytes) [ 21.093318] UDP-Lite hash table entries: 1024 (order: 2, 32768 bytes) [ 21.171152] NET: Registered protocol family 1 [ 21.223437] pci 0000:00:07.0: Activating ISA DMA hang workarounds [ 21.296401] pci 0000:00:07.0: quirk_isa_dma_hangs+0x0/0x40 took 71237 usecs [ 21.379757] PCI: Enabling device: (0000:00:0c.3), cmd 2 [ 21.510825] pci 0000:00:0c.3: quirk_usb_early_handoff+0x0/0x740 took 127968 usecs [ 21.600498] PCI: CLS 64 bytes, default 64 [ 21.600871] power: Control reg at 1fe02000800 [ 21.658494] workingset: timestamp_bits=62 max_order=18 bucket_order=0 [ 21.787091] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252) [ 21.875693] io scheduler noop registered [ 21.923116] io scheduler cfq registered (default) [ 21.979998] PCI: Enabling device: (0000:00:13.0), cmd 83 [ 21.980065] atyfb: 3D RAGE XL (Mach64 GR, PCI-33) [0x4752 rev 0x27] [ 22.055139] atyfb: 8M SDRAM (1:1), 29.498928 MHz XTAL, 230 MHz PLL, 83 Mhz MCLK, 63 MHz XCLK [ 22.211443] Console: switching to colour frame buffer device 80x30 [ 22.294364] atyfb: fb0: ATY Mach64 frame buffer device on PCI [ 22.366227] f007d64c: ttyS0 at MMIO 0x1fe020003f8 (irq = 9, base_baud = 115387) is a 16550A [ 22.466332] Console: ttyS0 (SU) [ 22.504011] console [ttyS0] enabled [ 22.591449] bootconsole [earlyprom0] disabled [ 22.702383] f007f1a4: ttyS1 at MMIO 0x1fe020002e8 (irq = 9, base_baud = 115387) is a 16550A [ 22.813941] PCI: Enabling device: (0000:00:0d.0), cmd 5 [ 22.820467] scsi host0: pata_ali [ 22.864871] scsi host1: pata_ali [ 22.907614] ata1: PATA max UDMA/66 cmd 0x1fe02000a00 ctl 0x1fe02000a18 bmdma 0x1fe02000a20 irq 15 [ 23.024268] ata2: PATA max UDMA/66 cmd 0x1fe02000a10 ctl 0x1fe02000a08 bmdma 0x1fe02000a28 irq 15 [ 23.143206] mousedev: PS/2 mouse device common for all mice [ 23.219219] rtc-m48t59 rtc-m48t59.0: registered as rtc0 [ 23.288749] NET: Registered protocol family 17 [ 23.347160] Key type dns_resolver registered [ 23.406899] registered taskstats version 1 [ 23.462916] Key type encrypted registered [ 23.516861] rtc-m48t59 rtc-m48t59.0: setting system clock to 2018-04-11 20:18:18 UTC (1523477898) [ 23.633992] ata1.00: ATA-5: ST320414A, 3.28, max UDMA/100 [ 23.704921] ata1.00: 39851760 sectors, multi 0: LBA [ 23.770211] ata1.01: ATAPI: LTN486S, Y3S2, max UDMA/33 [ 23.837714] ata1.01: WARNING: ATAPI DMA disabled for reliability issues. It can be enabled [ 23.947528] ata1.01: WARNING: via pata_ali.atapi_dma modparam or corresponding sysfs node. [ 24.060901] ata1.00: configured for UDMA/66 [ 24.118364] ata1.01: configured for UDMA/33 [ 24.174823] scsi 0:0:0:0: Direct-Access ATA ST320414A 3.28 PQ: 0 ANSI: 5 [ 24.283973] sd 0:0:0:0: [sda] 39851760 512-byte logical blocks: (20.4 GB/19.0 GiB) [ 24.385464] scsi 0:0:1:0: CD-ROM LITEON CD-ROM LTN486S Y3S2 PQ: 0 ANSI: 5 [ 24.492621] sd 0:0:0:0: [sda] Write Protect is off [ 24.555632] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00 [ 24.558277] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA [ 24.686096] sda: sda1 sda2 sda3 sda4 [ 24.749770] sd 0:0:0:0: [sda] Attached SCSI disk [ 24.847810] EXT4-fs (sda2): mounted filesystem with ordered data mode. Opts: (null) [ 24.948613] VFS: Mounted root (ext4 filesystem) readonly on device 8:2. [ 25.064513] devtmpfs: mounted [ 25.104639] This architecture does not have kernel memory protection. [ 26.061161] systemd[1]: systemd 215 running in system mode. (+PAM +AUDIT +SELINUX +IMA +SYSVINIT +LIBCRYPTSETUP +GCRYPT +ACL +XZ -SECCOMP -APPARMOR) [ 26.236661] systemd[1]: Detected architecture 'sparc64'. [ 26.671894] systemd[1]: Inserted module 'autofs4' [ 26.800339] NET: Registered protocol family 10 [ 26.946140] modprobe (500) used greatest stack depth: 7200 bytes left [ 27.090050] Segment Routing with IPv6 [ 27.138485] systemd[1]: Inserted module 'ipv6' [ 27.210274] systemd[1]: Set hostname to <blade100>. [ 27.970208] systemd-fstab-g (513) used greatest stack depth: 7000 bytes left [ 28.590730] systemd-sysv-ge (518) used greatest stack depth: 6680 bytes left [ 29.410697] systemd[1]: Cannot add dependency job for unit display-manager.service, ignoring: Unit display-manager.service failed to load: No such file or directory. [ 29.609766] systemd[1]: Starting Forward Password Requests to Wall Directory Watch. [ 29.711102] systemd[1]: Started Forward Password Requests to Wall Directory Watch. [ 29.810778] systemd[1]: Expecting device dev-ttyS0.device... [ 29.950980] systemd[1]: Starting Remote File Systems (Pre). [ 31.100922] systemd[1]: Listening on Journal Socket. [ 31.166388] systemd[1]: Starting System Slice. [ 31.280957] systemd[1]: Created slice System Slice. [ 31.345305] systemd[1]: Starting File System Check on Root Device... [ 31.495162] systemd[1]: Starting system-systemd\x2dfsck.slice. [ 31.651043] systemd[1]: Created slice system-systemd\x2dfsck.slice. [ 31.736980] systemd[1]: Starting system-getty.slice. [ 31.803873] systemd[1]: Created slice system-getty.slice. [ 31.892349] systemd[1]: Starting system-serial\x2dgetty.slice. [ 31.991909] systemd[1]: Created slice system-serial\x2dgetty.slice. [ 32.781823] loop: module loaded [ 33.950896] EXT4-fs (sda2): re-mounted. Opts: errors=remount-ro [ 34.594866] systemd-udevd[858]: starting version 215 [ 35.389844] /pci@1f,0/ebus@c/flashprom@0,0: OBP Flash, RD 1fff0000000[100000] WR 1fff0000000[100000] [ 35.891041] usbcore: registered new interface driver usbfs [ 35.963346] usbcore: registered new interface driver hub [ 36.033281] usbcore: registered new device driver usb [ 36.178897] PCI: Enabling device: (0000:00:03.0), cmd 1 [ 36.194250] PCI: Enabling device: (0000:01:00.0), cmd 3 [ 36.194997] sym0: <810a> rev 0x12 at pci 0000:01:00.0 irq 16 [ 36.282598] i2c i2c-0: Error: command never completed [ 36.363542] alim7101_wdt: Steve Hill <steve@navaho.co.uk> [ 36.434571] alim7101_wdt: Detected old alim7101 revision 'a1d'. If this is a cobalt board, set the 'use_gpio' module parameter. [ 36.671145] sd 0:0:0:0: Attached scsi generic sg0 type 0 [ 36.762362] random: crng init done [ 36.896231] i2c i2c-0: Error: command never completed [ 36.986450] sym0: No NVRAM, ID 7, Fast-10, SE, parity checking [ 37.069076] sym0: SCSI BUS has been reset. [ 37.122903] scsi host2: sym-2.2.3 [ 37.190955] sr 0:0:1:0: [sr0] scsi3-mmc drive: 48x/48x cd/rw xa/form2 cdda tray [ 37.287115] cdrom: Uniform CD-ROM driver Revision: 3.20 [ 37.460994] sr 0:0:1:0: Attached scsi generic sg1 type 5 [ 37.615750] i2c i2c-0: Error: command never completed [ 37.694838] sr 0:0:1:0: Attached scsi CD-ROM sr0 [ 37.697846] i2c i2c-0: Error: command never completed [ 37.789344] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver [ 37.881449] i2c i2c-0: Error: command never completed [ 37.956046] i2c i2c-0: Error: command never completed [ 38.032177] i2c i2c-0: Error: command never completed [ 38.105769] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver [ 38.192532] i2c i2c-0: Error: command never completed [ 38.273178] i2c i2c-0: Error: command never completed [ 38.348701] i2c i2c-0: Error: command never completed [ 38.425577] i2c i2c-0: Error: command never completed [ 38.493495] ehci-pci: EHCI PCI platform driver [ 38.608019] i2c i2c-0: Error: command never completed [ 38.676301] sungem.c:v1.0 David S. Miller <davem@redhat.com> [ 38.752290] gem 0000:00:0c.1 eth0: Sun GEM (PCI) 10/100/1000BaseT Ethernet 00:03:ba:0b:7d:5d [ 38.892964] ohci-pci: OHCI PCI platform driver [ 38.951551] ohci-pci 0000:00:0c.3: OHCI PCI host controller [ 39.024840] ohci-pci 0000:00:0c.3: new USB bus registered, assigned bus number 1 [ 39.122190] ohci-pci 0000:00:0c.3: irq 13, io mem 0x1ff02000000 [ 39.271178] usb usb1: New USB device found, idVendor=1d6b, idProduct=0001, bcdDevice= 4.16 [ 39.379924] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1 [ 39.474909] usb usb1: Product: OHCI PCI host controller [ 39.543571] usb usb1: Manufacturer: Linux 4.16.0-11316-gf77cfbe-dirty ohci_hcd [ 39.638437] usb usb1: SerialNumber: 0000:00:0c.3 [ 39.709158] hub 1-0:1.0: USB hub found [ 39.759851] hub 1-0:1.0: 4 ports detected [ 39.823518] alim7101_wdt: Steve Hill <steve@navaho.co.uk> [ 39.894525] alim7101_wdt: Detected old alim7101 revision 'a1d'. If this is a cobalt board, set the 'use_gpio' module parameter. [ 40.099630] alim7101_wdt: Steve Hill <steve@navaho.co.uk> [ 40.170645] alim7101_wdt: Detected old alim7101 revision 'a1d'. If this is a cobalt board, set the 'use_gpio' module parameter. [ 42.770525] Adding 907664k swap on /dev/sda4. Priority:-2 extents:1 across:907664k [ 43.331927] EXT4-fs (sda1): mounting ext3 file system using the ext4 subsystem [ 43.461921] EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: (null) [ 44.086961] systemd-journald[848]: Received request to flush runtime journal from PID 1 [ 45.582986] sungem_phy: PHY ID: 437421, addr: 1 [ 45.583023] gem 0000:00:0c.1 eth0: Found Generic MII PHY [ 45.653493] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready [ 45.734391] ip (1089) used greatest stack depth: 6528 bytes left [ 47.306788] systemd-udevd (871) used greatest stack depth: 5808 bytes left [ 47.412708] systemd-udevd (863) used greatest stack depth: 4592 bytes left [ 48.151054] gem 0000:00:0c.1 eth0: Link is up at 100 Mbps, full-duplex [ 48.242519] gem 0000:00:0c.1 eth0: Pause is disabled [ 48.311819] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready -- Meelis Roos (mroos@linux.ee) ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic @ 2018-04-11 20:25 ` Meelis Roos 0 siblings, 0 replies; 40+ messages in thread From: Meelis Roos @ 2018-04-11 20:25 UTC (permalink / raw) To: Bjorn Helgaas; +Cc: Yinghai Lu, linux-pci, sparclinux > Thanks, this is really interesting. Would you mind replacing the test > patch with the following (this applies directly on the upstream > kernel, e.g., fd3b36d27566)? > > Sorry for the back and forth, but there's a lot going on here that I > don't understand. > > I'd like to see the complete dmesg log, /proc/iomem, and "lspci -vv". 00000000-7effdfff : System RAM 00404000-0085ab9f : Kernel code 0085aba0-009b8a8f : Kernel data 009f2000-00a37a37 : Kernel bss 7f000000-7fee5fff : System RAM 7ff04000-7ff0bfff : System RAM 1ff00000000-1ffffffffff : /pci@1f,0 1ff00000000-1ff000fffff : 0000:00:07.0 1ff00400000-1ff0041ffff : 0000:00:0c.1 1ff00400000-1ff0041ffff : sungem 1ff00420000-1ff00421fff : 0000:00:0c.2 1ff00422000-1ff00423fff : 0000:00:0c.2 1ff00424000-1ff00425fff : 0000:00:08.0 1ff00426000-1ff00427fff : 0000:00:13.0 1ff00440000-1ff0045ffff : 0000:00:13.0 1ff00800000-1ff00bfffff : 0000:00:0c.1 1ff00c00000-1ff00ffffff : 0000:00:0c.2 1ff01000000-1ff013fffff : 0000:00:0c.3 1ff02000000-1ff02ffffff : 0000:00:0c.3 1ff02000000-1ff02ffffff : ohci_hcd 1ff03000000-1ff030fffff : PCI Bus 0000:01 1ff03000000-1ff03001fff : 0000:01:00.0 1ff03000000-1ff03001fff : sym53c8xx 1ff03002000-1ff03003fff : 0000:01:02.0 1ff03010000-1ff0301ffff : 0000:01:02.0 1ff04000000-1ff04ffffff : 0000:00:13.0 1ff04000000-1ff04ffffff : atyfb 1ffc0000000-1ffdfffffff : IOMMU 1fff1000000-1fff1001fff : eeprom 00:03.0 Non-VGA unclassified device: ULi Electronics Inc. M7101 Power Management Controller [PMU] Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Region 0: [virtual] I/O ports at <unassigned> [size\x16] Kernel driver in use: ali1535_smbus 00: b9 10 01 71 00 00 00 02 00 00 00 00 00 00 00 00 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40: 00 00 00 00 00 00 20 00 08 18 08 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40 01 70: 0f 11 00 00 00 00 00 08 00 00 00 00 00 00 00 00 80: 00 00 10 10 00 00 00 00 01 04 00 00 00 00 00 00 90: 00 00 02 00 00 00 00 0f 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 40 40 01 00 00 02 00 60 04 01 03 00 00 00 30 c0: 00 10 ff 00 00 00 00 00 01 00 00 00 00 00 00 00 d0: ff 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 08 00 06 01 00 01 00 00 00 00 00 00 00 00 00 f0: 45 00 20 7e 00 00 00 00 00 00 00 00 00 00 00 00 00:05.0 PCI bridge: Digital Equipment Corporation DECchip 21152 (rev 03) (prog-if 00 [Normal decode]) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64, Cache Line Size: 64 bytes Bus: primary\0, secondary\x01, subordinate\x01, sec-latency=0 I/O behind bridge: 00001000-00001fff Memory behind bridge: 03000000-030fffff Prefetchable memory behind bridge: fffffffffff00000-00000000000fffff Secondary status: 66MHz- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- <SERR- <PERR- BridgeCtl: Parity- SERR- NoISA- VGA- MAbort- >Reset- FastB2B- PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- Capabilities: [dc] Power Management version 1 Flags: PMEClk- DSI- D1- D2- AuxCurrent"0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Bridge: PM- B3+ 00: 11 10 24 00 07 00 90 02 03 00 04 06 10 40 01 00 10: 00 00 00 00 00 00 00 00 00 01 01 00 11 11 80 02 20: 00 03 00 03 f1 ff 01 00 ff ff ff ff 00 00 00 00 30: 00 00 00 00 dc 00 00 00 00 00 00 00 00 00 00 00 40: 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 3e 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 01 00 01 01 e0: 00 00 c0 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:07.0 ISA bridge: ULi Electronics Inc. M1533/M1535/M1543 PCI to ISA Bridge [Aladdin IV/V/V+] Subsystem: ULi Electronics Inc. ALi M1533 Aladdin IV/V ISA Bridge Control: I/O+ Mem+ BusMaster+ SpecCycle+ MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Region 0: [virtual] I/O ports at 1fe02000000 [sizedK] Region 1: Memory at <unassigned> (32-bit, non-prefetchable) [size=1M] Capabilities: [a0] Power Management version 1 Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- 00: b9 10 33 15 0f 00 10 02 00 00 01 06 00 00 00 00 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 b9 10 33 15 30: 00 00 00 00 a0 00 00 00 00 00 00 00 00 00 00 00 40: 11 13 49 80 83 09 00 07 00 00 00 10 00 00 fd 01 50: 00 00 00 40 00 07 02 00 6e 03 09 00 00 00 00 08 60: 00 00 00 00 00 00 00 00 00 00 00 00 80 20 00 00 70: 00 00 06 00 41 03 00 d3 04 02 00 02 00 00 01 10 80: 07 00 33 01 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 01 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:08.0 Multimedia audio controller: ULi Electronics Inc. M5451 PCI AC-Link Controller Audio Device (rev 01) Subsystem: ULi Electronics Inc. M5451 PCI AC-Link Controller Audio Device Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Interrupt: pin A routed to IRQ 14 Region 0: I/O ports at 0900 [disabled] [size%6] Region 1: Memory at 00424000 (32-bit, non-prefetchable) [disabled] [size=8K] Capabilities: [dc] Power Management version 2 Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2+,D3hot+,D3cold+) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- 00: b9 10 51 54 00 00 90 02 01 00 01 04 00 40 00 00 10: 01 09 00 00 00 40 42 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 b9 10 51 54 30: 00 00 00 00 dc 00 00 00 00 00 00 00 00 01 02 18 40: 00 00 00 00 00 04 00 e2 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 01 00 22 e6 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:0c.0 Bridge: Oracle/SUN RIO EBUS (rev 01) Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr+ Stepping- SERR+ FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64 (2500ns min, 6250ns max), Cache Line Size: 64 bytes BIST result: 00 Region 0: Memory at <ignored> (32-bit, non-prefetchable) Region 1: Memory at <ignored> (32-bit, non-prefetchable) 00: 8e 10 00 11 46 01 80 02 01 00 80 06 10 40 80 80 10: 00 00 00 f0 00 00 00 f1 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0a 19 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:0c.1 Ethernet controller: Oracle/SUN RIO 10/100 Ethernet [eri] (rev 01) Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64 (2500ns min, 1250ns max), Cache Line Size: 64 bytes Interrupt: pin ? routed to IRQ 11 BIST result: 00 Region 0: Memory at 00400000 (32-bit, non-prefetchable) [size\x128K] Expansion ROM at 00800000 [disabled] [size=4M] Kernel driver in use: gem 00: 8e 10 01 11 06 00 80 02 01 00 00 02 10 40 80 80 10: 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 80 00 00 00 00 00 00 00 00 00 00 00 0a 05 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:0c.2 FireWire (IEEE 1394): Oracle/SUN RIO 1394 (rev 01) (prog-if 10 [OHCI]) Control: I/O- Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Interrupt: pin ? routed to IRQ 12 BIST result: 00 Region 0: Memory at 00420000 (32-bit, non-prefetchable) [size=8K] Region 1: Memory at 00422000 (32-bit, non-prefetchable) [size=8K] Expansion ROM at 00c00000 [disabled] [size=4M] 00: 8e 10 02 11 02 00 80 02 01 10 00 0c 10 40 80 80 10: 00 00 42 00 00 20 42 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 c0 00 00 00 00 00 00 00 00 00 00 00 0a 05 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:0c.3 USB controller: Oracle/SUN RIO USB (rev 01) (prog-if 10 [OHCI]) Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64 (2500ns min, 1250ns max), Cache Line Size: 64 bytes Interrupt: pin ? routed to IRQ 13 BIST result: 00 Region 0: Memory at 02000000 (32-bit, non-prefetchable) [size\x16M] Expansion ROM at 01000000 [disabled] [size=4M] Kernel driver in use: ohci-pci 00: 8e 10 03 11 06 00 80 02 01 10 03 0c 10 40 80 80 10: 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 01 00 00 00 00 00 00 00 00 00 00 0a 05 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:0d.0 IDE interface: ULi Electronics Inc. M5229 IDE (rev c3) (prog-if ff) Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64 (500ns min, 1000ns max) Interrupt: pin A routed to IRQ 15 Region 0: I/O ports at 0a00 [size=8] Region 1: I/O ports at 0a18 [size=8] Region 2: I/O ports at 0a10 [size=8] Region 3: I/O ports at 0a08 [size=8] Region 4: I/O ports at 0a20 [size\x16] Capabilities: [60] Power Management version 2 Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Kernel driver in use: pata_ali 00: b9 10 29 52 05 00 90 02 c3 ff 01 01 00 40 00 00 10: 01 0a 00 00 19 0a 00 00 11 0a 00 00 09 0a 00 00 20: 21 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 60 00 00 00 00 00 00 00 00 01 02 04 40: 06 00 00 7f 00 00 00 00 00 02 20 c9 00 80 ba 1a 50: 03 00 00 81 08 00 a8 00 01 31 31 31 03 09 0a 0a 60: 01 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 21 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:13.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Rage XL PCI (rev 27) (prog-if 00 [VGA controller]) Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Interrupt: pin A routed to IRQ 19 Region 0: Memory at 04000000 (32-bit, non-prefetchable) [size\x16M] Region 1: I/O ports at 0b00 [size%6] Region 2: Memory at 00426000 (32-bit, non-prefetchable) [size=8K] Expansion ROM at 00440000 [disabled] [size\x128K] Capabilities: [5c] Power Management version 2 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Kernel driver in use: atyfb 00: 02 10 52 47 83 00 90 02 27 00 00 03 10 40 00 00 10: 00 00 00 04 01 0b 00 00 00 60 42 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 44 00 5c 00 00 00 00 00 00 00 f1 01 08 00 40: 0c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 02 5c 10 00 01 00 00 ff 00 00 00 00 01 00 02 06 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01:00.0 SCSI storage controller: LSI Logic / Symbios Logic 53c810 (rev 12) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64 (2000ns min, 16000ns max), Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 16 Region 0: I/O ports at 1000 [size%6] Region 1: Memory at 03000000 (32-bit, non-prefetchable) [size=8K] Kernel driver in use: sym53c8xx 00: 00 10 01 00 17 00 00 02 12 00 00 01 10 40 00 00 10: 01 10 00 00 00 00 00 03 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 01 08 40 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: da 00 00 03 47 00 06 1f 00 08 00 00 80 00 00 02 90: ff e0 dc c1 00 ff ff ff 00 f0 31 21 a0 13 dd c1 a0: 00 08 00 01 00 00 00 50 c0 13 dd c1 c0 13 dd c1 b0: 00 10 dd c1 38 f0 dc c1 ce 6d 00 a1 c0 23 ba c1 c0: 8f 05 00 00 00 05 40 0f 0c 00 80 0f 07 00 02 80 d0: 00 00 02 80 00 00 02 80 00 00 02 80 00 01 ff 40 e0: 00 01 ff 40 00 01 ff 40 00 01 ff 40 00 01 ff 40 f0: 00 01 ff 40 00 01 ff 40 00 01 ff 40 00 01 ff 40 01:01.0 Multimedia audio controller: C-Media Electronics Inc CMI8738/CMI8768 PCI Audio (rev 10) Subsystem: C-Media Electronics Inc CMI8738/C3DX PCI Audio Device Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Interrupt: pin A routed to IRQ 17 Region 0: I/O ports at 1100 [disabled] [size%6] Capabilities: [c0] Power Management version 2 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- 00: f6 13 11 01 00 00 10 02 10 00 01 04 00 40 00 00 10: 01 11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 f6 13 11 01 30: 00 00 00 00 c0 00 00 00 00 00 00 00 ff 01 02 18 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 01 00 02 06 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01:02.0 Multimedia audio controller: Cirrus Logic Crystal CS4281 PCI Audio (rev 01) Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Interrupt: pin A routed to IRQ 18 Region 0: Memory at 03002000 (32-bit, non-prefetchable) [disabled] [size=8K] Region 1: Memory at 03010000 (32-bit, non-prefetchable) [disabled] [sizedK] Capabilities: [40] Power Management version 2 Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- 00: 13 10 05 60 00 00 10 02 01 00 01 04 00 40 00 00 10: 00 20 00 03 00 00 01 03 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 40 00 00 00 00 00 00 00 00 01 04 18 40: 01 00 22 7e 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 04 00 00 00 f0: 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [ 0.000059] PROMLIB: Sun IEEE Boot Prom 'OBP 4.17.1 2005/04/11 14:31' [ 0.000116] PROMLIB: Root node compatible: [ 0.000217] Linux version 4.16.0-11316-gf77cfbe-dirty (mroos@blade100) (gcc version 4.9.3 (Debian 4.9.3-2)) #168 Wed Apr 11 23:14:41 EEST 2018 [ 0.280335] bootconsole [earlyprom0] enabled [ 0.331447] ARCH: SUN4U [ 0.360724] Ethernet address: 00:03:ba:0b:7d:5d [ 0.414898] MM: PAGE_OFFSET is 0xfffff80000000000 (max_phys_bits = 40) [ 0.494057] MM: VMALLOC [0x0000000100000000 --> 0x0000060000000000] [ 0.568973] MM: VMEMMAP [0x0000060000000000 --> 0x00000c0000000000] [ 0.720460] Kernel: Using 2 locked TLB entries for main kernel image. [ 0.797625] Remapping the kernel... [ 0.798175] done. [ 1.201703] OF stdout device is: /pci@1f,0/isa@7/serial@0,3f8 [ 1.270449] PROM: Built device tree with 90708 bytes of memory. [ 1.341590] Top of RAM: 0x7ff0c000, Total RAM: 0x7feec000 [ 1.406150] Memory hole size: 0MB [ 1.979239] Allocated 16384 bytes for kernel page tables. [ 2.044448] Zone ranges: [ 2.074793] Normal [mem 0x0000000000000000-0x000000007ff0bfff] [ 2.148765] Movable zone start for each node [ 2.199783] Early memory node ranges [ 2.242493] node 0: [mem 0x0000000000000000-0x000000007effdfff] [ 2.317409] node 0: [mem 0x000000007f000000-0x000000007fee5fff] [ 2.392326] node 0: [mem 0x000000007ff04000-0x000000007ff0bfff] [ 2.467248] Initmem setup node 0 [mem 0x0000000000000000-0x000000007ff0bfff] [ 2.551514] On node 0 totalpages: 262006 [ 2.551525] Normal zone: 2048 pages used for memmap [ 2.551530] Normal zone: 0 pages reserved [ 2.551539] Normal zone: 262006 pages, LIFO batch:15 [ 2.653830] Booting Linux... [ 2.688370] CPU CAPS: [flush,stbar,swap,muldiv,v9,mul32,div32,v8plus] [ 2.765450] CPU CAPS: [vis] [ 2.804900] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768 [ 2.804913] pcpu-alloc: [0] 0 [ 2.807648] Built 1 zonelists, mobility grouping on. Total pages: 259958 [ 2.888901] Kernel command line: root=/dev/sda2 ro console=ttyS0 [ 2.974322] Dentry cache hash table entries: 262144 (order: 8, 2097152 bytes) [ 3.066836] Inode-cache hash table entries: 131072 (order: 7, 1048576 bytes) [ 3.151270] Sorting __ex_table... [ 3.346086] Memory: 2069760K/2096048K available (4442K kernel code, 298K rwdata, 1096K rodata, 200K init, 278K bss, 26288K reserved, 0K cma-reserved) [ 3.506677] SLUB: HWalign2, Order=0-3, MinObjects=0, CPUs=1, Nodes=1 [ 3.585528] NR_IRQS: 2048, nr_irqs: 2048, preallocated irqs: 1 [ 3.655545] clocksource: hbtick: mask: 0xffffffffffffffff max_cycles: 0x148020aa9, max_idle_ns: 440795202069 ns [ 3.776260] clocksource: mult[b400012e] shift[24] [ 3.832470] clockevent: mult[16c16bf] shift[32] [ 3.886908] Console: colour dummy device 80x25 [ 4.090118] Calibrating delay using timer specific routine.. 11.12 BogoMIPS (lpjU648) [ 4.185866] pid_max: default: 32768 minimum: 301 [ 4.241727] Mount-cache hash table entries: 4096 (order: 2, 32768 bytes) [ 4.321958] Mountpoint-cache hash table entries: 4096 (order: 2, 32768 bytes) [ 4.411687] devtmpfs: initialized [ 4.456082] random: get_random_u32 called from bucket_table_alloc+0x78/0x1e0 with crng_init=0 [ 4.558763] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns [ 4.676445] futex hash table entries: 256 (order: -1, 6144 bytes) [ 4.750134] NET: Registered protocol family 16 [ 4.812677] IRQ pre handler NOT supported. [ 4.862096] IRQ pre handler NOT supported. [ 4.911395] IRQ pre handler NOT supported. [ 4.961961] audit: initializing netlink subsys (disabled) [ 5.033921] kworker/u2:0 (40) used greatest stack depth: 10304 bytes left [ 5.115934] random: fast init done [ 5.169855] /pci@1f,0: PCI IO [io 0x1fe02000000-0x1fe02ffffff] offset 1fe02000000 [ 5.260566] /pci@1f,0: PCI MEM [mem 0x1ff00000000-0x1ffffffffff] offset 1ff00000000 [ 5.352239] /pci@1f,0: SABRE PCI Bus Module ver[0:0] [ 5.411653] PCI: Scanning PBM /pci@1f,0 [ 5.457965] sabre f005f408: PCI host bridge to bus 0000:00 [ 5.523589] pci_bus 0000:00: root bus resource [io 0x1fe02000000-0x1fe02ffffff] (bus address [0x0000-0xffffff]) [ 5.645351] pci_bus 0000:00: root bus resource [mem 0x1ff00000000-0x1ffffffffff] (bus address [0x00000000-0xffffffff]) [ 5.773361] pci_bus 0000:00: root bus resource [bus 00-01] [ 5.839024] PCI: scan_bus[/pci@1f,0] bus no 0 [ 5.891179] * /pci@1f,0/ebus@c [ 5.929908] create device, devfn: 60, type: [ 5.985145] class: 0x68000 device name: 0000:00:0c.0 [ 6.048714] pci 0000:00:0c.0: [108e:1100] type 00 class 0x068000 [ 6.120606] adding to system ... [ 6.163761] PCI: dev header type: 0 [ 6.205506] * /pci@1f,0/isa@7 [ 6.243152] create device, devfn: 38, type: [ 6.298419] class: 0x60100 device name: 0000:00:07.0 [ 6.361991] pci 0000:00:07.0: [10b9:1533] type 00 class 0x060100 [ 6.433890] parse addresses (40 bytes) @ (ptrval) [ 6.502673] start: 1fe02000000, end: 1fe0200ffff, i: 10 [ 6.567309] pci 0000:00:07.0: reg 0x10: [io 0x1fe02000000-0x1fe0200ffff] [ 6.648557] start: 1ff00000000, end: 1ff000fffff, i: 14 [ 6.713192] pci 0000:00:07.0: reg 0x14: [mem 0x1ff00000000-0x1ff000fffff] [ 6.794436] adding to system ... [ 6.837517] PCI: dev header type: 0 [ 6.879234] * /pci@1f,0/pmu@3 [ 6.916881] create device, devfn: 18, type: [ 6.972141] class: 0x0 device name: 0000:00:03.0 [ 7.031563] pci 0000:00:03.0: [10b9:7101] type 00 class 0x000000 [ 7.103460] parse addresses (20 bytes) @ (ptrval) [ 7.172245] start: 1fe02000000, end: 1fe0200000f, i: 10 [ 7.236882] pci 0000:00:03.0: reg 0x10: [io 0x1fe02000000-0x1fe0200000f] [ 7.318126] adding to system ... [ 7.360970] pci 0000:00:03.0: quirk: [io 0x1fe02000800-0x1fe0200083f] claimed by ali7101 ACPI [ 7.464025] pci 0000:00:03.0: quirk: [io 0x1fe02000600-0x1fe0200061f] claimed by ali7101 SMB [ 7.566080] pci 0000:00:03.0: quirk_ali7101_acpi+0x0/0x40 took 19531 usecs [ 7.648616] PCI: dev header type: 0 [ 7.690327] * /pci@1f,0/network@c,1 [ 7.734236] create device, devfn: 61, type: network [ 7.796750] class: 0x20000 device name: 0000:00:0c.1 [ 7.860324] pci 0000:00:0c.1: [108e:1101] type 00 class 0x020000 [ 7.932219] parse addresses (40 bytes) @ (ptrval) [ 8.001003] start: 1ff00400000, end: 1ff0041ffff, i: 10 [ 8.065640] pci 0000:00:0c.1: reg 0x10: [mem 0x1ff00400000-0x1ff0041ffff] [ 8.146887] start: 1ff00800000, end: 1ff00bfffff, i: 30 [ 8.211522] pci 0000:00:0c.1: reg 0x30: [mem 0x1ff00800000-0x1ff00bfffff] [ 8.292769] adding to system ... [ 8.335825] PCI: dev header type: 0 [ 8.377569] * /pci@1f,0/firewire@c,2 [ 8.422489] create device, devfn: 62, type: [ 8.477747] class: 0xc0010 device name: 0000:00:0c.2 [ 8.541326] pci 0000:00:0c.2: [108e:1102] type 00 class 0x0c0010 [ 8.613221] parse addresses (60 bytes) @ (ptrval) [ 8.682007] start: 1ff00420000, end: 1ff00421fff, i: 10 [ 8.746642] pci 0000:00:0c.2: reg 0x10: [mem 0x1ff00420000-0x1ff00421fff] [ 8.827891] start: 1ff00422000, end: 1ff00423fff, i: 14 [ 8.892525] pci 0000:00:0c.2: reg 0x14: [mem 0x1ff00422000-0x1ff00423fff] [ 8.973775] start: 1ff00c00000, end: 1ff00ffffff, i: 30 [ 9.038411] pci 0000:00:0c.2: reg 0x30: [mem 0x1ff00c00000-0x1ff00ffffff] [ 9.119656] adding to system ... [ 9.162736] PCI: dev header type: 0 [ 9.204457] * /pci@1f,0/usb@c,3 [ 9.244184] create device, devfn: 63, type: [ 9.299439] class: 0xc0310 device name: 0000:00:0c.3 [ 9.363017] pci 0000:00:0c.3: [108e:1103] type 00 class 0x0c0310 [ 9.434913] parse addresses (40 bytes) @ (ptrval) [ 9.503701] start: 1ff02000000, end: 1ff02ffffff, i: 10 [ 9.568334] pci 0000:00:0c.3: reg 0x10: [mem 0x1ff02000000-0x1ff02ffffff] [ 9.649582] start: 1ff01000000, end: 1ff013fffff, i: 30 [ 9.714218] pci 0000:00:0c.3: reg 0x30: [mem 0x1ff01000000-0x1ff013fffff] [ 9.795464] adding to system ... [ 9.838518] PCI: dev header type: 0 [ 9.880258] * /pci@1f,0/sound@8 [ 9.919990] create device, devfn: 40, type: [ 9.975250] class: 0x40100 device name: 0000:00:08.0 [ 10.038823] pci 0000:00:08.0: [10b9:5451] type 00 class 0x040100 [ 10.110721] parse addresses (40 bytes) @ (ptrval) [ 10.179506] start: 1fe02000900, end: 1fe020009ff, i: 10 [ 10.244142] pci 0000:00:08.0: reg 0x10: [io 0x1fe02000900-0x1fe020009ff] [ 10.325391] start: 1ff00424000, end: 1ff00425fff, i: 14 [ 10.390026] pci 0000:00:08.0: reg 0x14: [mem 0x1ff00424000-0x1ff00425fff] [ 10.471271] adding to system ... [ 10.514119] pci 0000:00:08.0: supports D1 D2 [ 10.514131] pci 0000:00:08.0: PME# supported from D2 D3hot D3cold [ 10.514430] PCI: dev header type: 0 [ 10.556172] * /pci@1f,0/ide@d [ 10.593822] create device, devfn: 68, type: ide [ 10.652205] class: 0x101ff device name: 0000:00:0d.0 [ 10.715780] pci 0000:00:0d.0: [10b9:5229] type 00 class 0x0101ff [ 10.787672] parse addresses (100 bytes) @ (ptrval) [ 10.857495] start: 1fe02000a00, end: 1fe02000a07, i: 10 [ 10.922130] pci 0000:00:0d.0: reg 0x10: [io 0x1fe02000a00-0x1fe02000a07] [ 11.003380] start: 1fe02000a18, end: 1fe02000a1f, i: 14 [ 11.068016] pci 0000:00:0d.0: reg 0x14: [io 0x1fe02000a18-0x1fe02000a1f] [ 11.149264] start: 1fe02000a10, end: 1fe02000a17, i: 18 [ 11.213900] pci 0000:00:0d.0: reg 0x18: [io 0x1fe02000a10-0x1fe02000a17] [ 11.295150] start: 1fe02000a08, end: 1fe02000a0f, i: 1c [ 11.359785] pci 0000:00:0d.0: reg 0x1c: [io 0x1fe02000a08-0x1fe02000a0f] [ 11.441033] start: 1fe02000a20, end: 1fe02000a2f, i: 20 [ 11.505669] pci 0000:00:0d.0: reg 0x20: [io 0x1fe02000a20-0x1fe02000a2f] [ 11.586915] adding to system ... [ 11.629978] PCI: dev header type: 0 [ 11.671708] * /pci@1f,0/pci@5 [ 11.709365] create device, devfn: 28, type: pci [ 11.767742] class: 0x60400 device name: 0000:00:05.0 [ 11.831315] pci 0000:00:05.0: [1011:0024] type 01 class 0x060400 [ 11.903210] adding to system ... [ 11.946311] PCI: dev header type: 1 [ 11.988001] of_scan_pci_bridge(/pci@1f,0/pci@5) [ 12.042236] Bridge bus range [1 --> 1] [ 12.091470] Bridge ranges[ (ptrval)] simba[0] [ 12.154985] RAW Range[81000000:00000000:00001000:81000000:00000000:00001000:00000000:00001000] [ 12.262208] Using flags[00000101] start[0000000000001000] size[0000000000001000] [ 12.356975] RAW Range[82000000:00000000:03000000:82000000:00000000:03000000:00000000:00100000] [ 12.464201] Using flags[00000200] start[0000000003000000] size[0000000000100000] [ 12.558963] bus name: PCI Bus 0000:01 [ 12.606967] PCI: scan_bus[/pci@1f,0/pci@5] bus no 1 [ 12.665361] * /pci@1f,0/pci@5/scsi@0 [ 12.710304] create device, devfn: 0, type: [ 12.764510] class: 0x10000 device name: 0000:01:00.0 [ 12.828090] pci 0000:01:00.0: [1000:0001] type 00 class 0x010000 [ 12.899985] parse addresses (40 bytes) @ (ptrval) [ 12.968770] start: 1fe02001000, end: 1fe020010ff, i: 10 [ 13.033408] pci 0000:01:00.0: reg 0x10: [io 0x1fe02001000-0x1fe020010ff] [ 13.114655] start: 1ff03000000, end: 1ff03001fff, i: 14 [ 13.179290] pci 0000:01:00.0: reg 0x14: [mem 0x1ff03000000-0x1ff03001fff] [ 13.260537] adding to system ... [ 13.303636] PCI: dev header type: 0 [ 13.345332] * /pci@1f,0/pci@5/sound@1 [ 13.391308] create device, devfn: 8, type: [ 13.445520] class: 0x40100 device name: 0000:01:01.0 [ 13.509093] pci 0000:01:01.0: [13f6:0111] type 00 class 0x040100 [ 13.580989] parse addresses (20 bytes) @ (ptrval) [ 13.649773] start: 1fe02001100, end: 1fe020011ff, i: 10 [ 13.714410] pci 0000:01:01.0: reg 0x10: [io 0x1fe02001100-0x1fe020011ff] [ 13.795654] adding to system ... [ 13.838512] pci 0000:01:01.0: supports D1 D2 [ 13.838755] PCI: dev header type: 0 [ 13.880452] * /pci@1f,0/pci@5/sound@2 [ 13.926429] create device, devfn: 10, type: [ 13.981678] class: 0x40100 device name: 0000:01:02.0 [ 14.045249] pci 0000:01:02.0: [1013:6005] type 00 class 0x040100 [ 14.117146] parse addresses (40 bytes) @ (ptrval) [ 14.185931] start: 1ff03002000, end: 1ff03003fff, i: 10 [ 14.250568] pci 0000:01:02.0: reg 0x10: [mem 0x1ff03002000-0x1ff03003fff] [ 14.331816] start: 1ff03010000, end: 1ff0301ffff, i: 14 [ 14.396450] pci 0000:01:02.0: reg 0x14: [mem 0x1ff03010000-0x1ff0301ffff] [ 14.477696] adding to system ... [ 14.520555] pci 0000:01:02.0: supports D1 D2 [ 14.520565] pci 0000:01:02.0: PME# supported from D0 D1 D2 D3hot [ 14.520870] PCI: dev header type: 0 [ 14.562597] * /pci@1f,0/SUNW,m64B@13 [ 14.607528] create device, devfn: 98, type: display [ 14.670066] class: 0x30000 device name: 0000:00:13.0 [ 14.733629] pci 0000:00:13.0: [1002:4752] type 00 class 0x030000 [ 14.805526] parse addresses (80 bytes) @ (ptrval) [ 14.874311] start: 1ff04000000, end: 1ff04ffffff, i: 10 [ 14.938947] pci 0000:00:13.0: reg 0x10: [mem 0x1ff04000000-0x1ff04ffffff] [ 15.020197] start: 1fe02000b00, end: 1fe02000bff, i: 14 [ 15.084831] pci 0000:00:13.0: reg 0x14: [io 0x1fe02000b00-0x1fe02000bff] [ 15.166080] start: 1ff00426000, end: 1ff00427fff, i: 18 [ 15.230717] pci 0000:00:13.0: reg 0x18: [mem 0x1ff00426000-0x1ff00427fff] [ 15.311966] start: 1ff00440000, end: 1ff0045ffff, i: 30 [ 15.376601] pci 0000:00:13.0: reg 0x30: [mem 0x1ff00440000-0x1ff0045ffff] [ 15.457846] adding to system ... [ 15.500698] pci 0000:00:13.0: supports D1 D2 [ 15.500959] PCI: dev header type: 0 [ 15.542832] pci 0000:00:0c.0: class 0x68000 [ 15.592936] PCI: Claiming 0000:00:07.0: Resource 0: 000001fe02000000..000001fe0200ffff [101] [ 15.693943] pci 0000:00:07.0: can't claim BAR 0 [io 0x1fe02000000-0x1fe0200ffff]: address conflict with 0000:00:03.0 [io 0x1fe02000600-0x1fe0200061f] [ 15.856232] PCI: Claiming 0000:00:07.0: Resource 1: 000001ff00000000..000001ff000fffff [200] [ 15.957232] pci 0000:00:07.0: class 0x60100 [ 16.007314] PCI: Claiming 0000:00:03.0: Resource 0: 000001fe02000000..000001fe0200000f [101] [ 16.108310] pci 0000:00:03.0: class 0x0 [ 16.154234] PCI: Claiming 0000:00:0c.1: Resource 0: 000001ff00400000..000001ff0041ffff [200] [ 16.255231] PCI: Claiming 0000:00:0c.1: Resource 6: 000001ff00800000..000001ff00bfffff [44200] [ 16.358309] pci 0000:00:0c.1: class 0x20000 [ 16.408389] PCI: Claiming 0000:00:0c.2: Resource 0: 000001ff00420000..000001ff00421fff [200] [ 16.509387] PCI: Claiming 0000:00:0c.2: Resource 1: 000001ff00422000..000001ff00423fff [200] [ 16.610384] PCI: Claiming 0000:00:0c.2: Resource 6: 000001ff00c00000..000001ff00ffffff [44200] [ 16.713462] pci 0000:00:0c.2: class 0xc0010 [ 16.763541] PCI: Claiming 0000:00:0c.3: Resource 0: 000001ff02000000..000001ff02ffffff [200] [ 16.864540] PCI: Claiming 0000:00:0c.3: Resource 6: 000001ff01000000..000001ff013fffff [44200] [ 16.967617] pci 0000:00:0c.3: class 0xc0310 [ 17.017696] PCI: Claiming 0000:00:08.0: Resource 0: 000001fe02000900..000001fe020009ff [101] [ 17.118693] PCI: Claiming 0000:00:08.0: Resource 1: 000001ff00424000..000001ff00425fff [200] [ 17.219694] pci 0000:00:08.0: class 0x40100 [ 17.269774] PCI: Claiming 0000:00:0d.0: Resource 0: 000001fe02000a00..000001fe02000a07 [101] [ 17.370772] PCI: Claiming 0000:00:0d.0: Resource 1: 000001fe02000a18..000001fe02000a1f [101] [ 17.471768] PCI: Claiming 0000:00:0d.0: Resource 2: 000001fe02000a10..000001fe02000a17 [101] [ 17.572766] PCI: Claiming 0000:00:0d.0: Resource 3: 000001fe02000a08..000001fe02000a0f [101] [ 17.673762] PCI: Claiming 0000:00:0d.0: Resource 4: 000001fe02000a20..000001fe02000a2f [101] [ 17.774763] pci 0000:00:0d.0: class 0x101ff [ 17.824843] PCI: Claiming 0000:00:05.0: Resource 7: 000001fe02001000..000001fe02001fff [101] [ 17.925839] PCI: Claiming 0000:00:05.0: Resource 8: 000001ff03000000..000001ff030fffff [200] [ 18.026838] pci 0000:00:05.0: class 0x60400 [ 18.076919] PCI: Claiming 0000:00:13.0: Resource 0: 000001ff04000000..000001ff04ffffff [200] [ 18.177916] PCI: Claiming 0000:00:13.0: Resource 1: 000001fe02000b00..000001fe02000bff [101] [ 18.278914] PCI: Claiming 0000:00:13.0: Resource 2: 000001ff00426000..000001ff00427fff [200] [ 18.379910] PCI: Claiming 0000:00:13.0: Resource 6: 000001ff00440000..000001ff0045ffff [44200] [ 18.482987] pci 0000:00:13.0: class 0x30000 [ 18.533079] pci 0000:00:13.0: requesting [mem 0x1ff000a0000-0x1ff000bffff] from /pci@1f,0 [mem 0x1ff00000000-0x1ffffffffff] [ 18.666284] pci 0000:00:13.0: can't claim VGA legacy [mem 0x1ff000a0000-0x1ff000bffff]: address conflict with 0000:00:07.0 [mem 0x1ff00000000-0x1ff000fffff] [ 18.833774] PCI: Claiming 0000:01:00.0: Resource 0: 000001fe02001000..000001fe020010ff [101] [ 18.934771] PCI: Claiming 0000:01:00.0: Resource 1: 000001ff03000000..000001ff03001fff [200] [ 19.035769] pci 0000:01:00.0: class 0x10000 [ 19.085850] PCI: Claiming 0000:01:01.0: Resource 0: 000001fe02001100..000001fe020011ff [101] [ 19.186849] pci 0000:01:01.0: class 0x40100 [ 19.236931] PCI: Claiming 0000:01:02.0: Resource 0: 000001ff03002000..000001ff03003fff [200] [ 19.337928] PCI: Claiming 0000:01:02.0: Resource 1: 000001ff03010000..000001ff0301ffff [200] [ 19.438926] pci 0000:01:02.0: class 0x40100 [ 19.496203] audit: type 00 audit(0.320:1): state=initialized audit_enabled=0 res=1 [ 19.622228] HugeTLB registered 64.0 KiB page size, pre-allocated 0 pages [ 19.702481] HugeTLB registered 8.00 MiB page size, pre-allocated 0 pages [ 19.782649] HugeTLB registered 256 MiB page size, pre-allocated 0 pages [ 19.861824] HugeTLB registered 2.00 GiB page size, pre-allocated 0 pages [ 19.945112] pci 0000:00:13.0: vgaarb: command 0x0080 [ 20.004588] pci 0000:00:13.0: vgaarb: VGA device added: decodes=io+mem,owns=none,locks=none [ 20.104590] pci 0000:00:13.0: vgaarb: bridge control possible [ 20.173340] pci 0000:00:13.0: vgaarb: setting as boot device (VGA legacy resources not enabled) [ 20.277446] vgaarb: loaded [ 20.310330] SCSI subsystem initialized [ 20.357726] libata version 3.00 loaded. [ 20.362515] /pci@1f,0/ebus@c/eeprom@1,0: Mostek regs at 0x1fff1000000 [ 20.440726] clocksource: Switched to clocksource hbtick [ 20.520493] kworker/u2:2 (232) used greatest stack depth: 9104 bytes left [ 20.628364] NET: Registered protocol family 2 [ 20.681769] tcp_listen_portaddr_hash hash table entries: 1024 (order: 1, 16384 bytes) [ 20.775592] TCP established hash table entries: 16384 (order: 4, 131072 bytes) [ 20.862705] TCP bind hash table entries: 16384 (order: 4, 131072 bytes) [ 20.942575] TCP: Hash tables configured (established 16384 bind 16384) [ 21.021233] UDP hash table entries: 1024 (order: 2, 32768 bytes) [ 21.093318] UDP-Lite hash table entries: 1024 (order: 2, 32768 bytes) [ 21.171152] NET: Registered protocol family 1 [ 21.223437] pci 0000:00:07.0: Activating ISA DMA hang workarounds [ 21.296401] pci 0000:00:07.0: quirk_isa_dma_hangs+0x0/0x40 took 71237 usecs [ 21.379757] PCI: Enabling device: (0000:00:0c.3), cmd 2 [ 21.510825] pci 0000:00:0c.3: quirk_usb_early_handoff+0x0/0x740 took 127968 usecs [ 21.600498] PCI: CLS 64 bytes, default 64 [ 21.600871] power: Control reg at 1fe02000800 [ 21.658494] workingset: timestamp_bitsb max_order\x18 bucket_order=0 [ 21.787091] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252) [ 21.875693] io scheduler noop registered [ 21.923116] io scheduler cfq registered (default) [ 21.979998] PCI: Enabling device: (0000:00:13.0), cmd 83 [ 21.980065] atyfb: 3D RAGE XL (Mach64 GR, PCI-33) [0x4752 rev 0x27] [ 22.055139] atyfb: 8M SDRAM (1:1), 29.498928 MHz XTAL, 230 MHz PLL, 83 Mhz MCLK, 63 MHz XCLK [ 22.211443] Console: switching to colour frame buffer device 80x30 [ 22.294364] atyfb: fb0: ATY Mach64 frame buffer device on PCI [ 22.366227] f007d64c: ttyS0 at MMIO 0x1fe020003f8 (irq = 9, base_baud = 115387) is a 16550A [ 22.466332] Console: ttyS0 (SU) [ 22.504011] console [ttyS0] enabled [ 22.591449] bootconsole [earlyprom0] disabled [ 22.702383] f007f1a4: ttyS1 at MMIO 0x1fe020002e8 (irq = 9, base_baud = 115387) is a 16550A [ 22.813941] PCI: Enabling device: (0000:00:0d.0), cmd 5 [ 22.820467] scsi host0: pata_ali [ 22.864871] scsi host1: pata_ali [ 22.907614] ata1: PATA max UDMA/66 cmd 0x1fe02000a00 ctl 0x1fe02000a18 bmdma 0x1fe02000a20 irq 15 [ 23.024268] ata2: PATA max UDMA/66 cmd 0x1fe02000a10 ctl 0x1fe02000a08 bmdma 0x1fe02000a28 irq 15 [ 23.143206] mousedev: PS/2 mouse device common for all mice [ 23.219219] rtc-m48t59 rtc-m48t59.0: registered as rtc0 [ 23.288749] NET: Registered protocol family 17 [ 23.347160] Key type dns_resolver registered [ 23.406899] registered taskstats version 1 [ 23.462916] Key type encrypted registered [ 23.516861] rtc-m48t59 rtc-m48t59.0: setting system clock to 2018-04-11 20:18:18 UTC (1523477898) [ 23.633992] ata1.00: ATA-5: ST320414A, 3.28, max UDMA/100 [ 23.704921] ata1.00: 39851760 sectors, multi 0: LBA [ 23.770211] ata1.01: ATAPI: LTN486S, Y3S2, max UDMA/33 [ 23.837714] ata1.01: WARNING: ATAPI DMA disabled for reliability issues. It can be enabled [ 23.947528] ata1.01: WARNING: via pata_ali.atapi_dma modparam or corresponding sysfs node. [ 24.060901] ata1.00: configured for UDMA/66 [ 24.118364] ata1.01: configured for UDMA/33 [ 24.174823] scsi 0:0:0:0: Direct-Access ATA ST320414A 3.28 PQ: 0 ANSI: 5 [ 24.283973] sd 0:0:0:0: [sda] 39851760 512-byte logical blocks: (20.4 GB/19.0 GiB) [ 24.385464] scsi 0:0:1:0: CD-ROM LITEON CD-ROM LTN486S Y3S2 PQ: 0 ANSI: 5 [ 24.492621] sd 0:0:0:0: [sda] Write Protect is off [ 24.555632] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00 [ 24.558277] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA [ 24.686096] sda: sda1 sda2 sda3 sda4 [ 24.749770] sd 0:0:0:0: [sda] Attached SCSI disk [ 24.847810] EXT4-fs (sda2): mounted filesystem with ordered data mode. Opts: (null) [ 24.948613] VFS: Mounted root (ext4 filesystem) readonly on device 8:2. [ 25.064513] devtmpfs: mounted [ 25.104639] This architecture does not have kernel memory protection. [ 26.061161] systemd[1]: systemd 215 running in system mode. (+PAM +AUDIT +SELINUX +IMA +SYSVINIT +LIBCRYPTSETUP +GCRYPT +ACL +XZ -SECCOMP -APPARMOR) [ 26.236661] systemd[1]: Detected architecture 'sparc64'. [ 26.671894] systemd[1]: Inserted module 'autofs4' [ 26.800339] NET: Registered protocol family 10 [ 26.946140] modprobe (500) used greatest stack depth: 7200 bytes left [ 27.090050] Segment Routing with IPv6 [ 27.138485] systemd[1]: Inserted module 'ipv6' [ 27.210274] systemd[1]: Set hostname to <blade100>. [ 27.970208] systemd-fstab-g (513) used greatest stack depth: 7000 bytes left [ 28.590730] systemd-sysv-ge (518) used greatest stack depth: 6680 bytes left [ 29.410697] systemd[1]: Cannot add dependency job for unit display-manager.service, ignoring: Unit display-manager.service failed to load: No such file or directory. [ 29.609766] systemd[1]: Starting Forward Password Requests to Wall Directory Watch. [ 29.711102] systemd[1]: Started Forward Password Requests to Wall Directory Watch. [ 29.810778] systemd[1]: Expecting device dev-ttyS0.device... [ 29.950980] systemd[1]: Starting Remote File Systems (Pre). [ 31.100922] systemd[1]: Listening on Journal Socket. [ 31.166388] systemd[1]: Starting System Slice. [ 31.280957] systemd[1]: Created slice System Slice. [ 31.345305] systemd[1]: Starting File System Check on Root Device... [ 31.495162] systemd[1]: Starting system-systemd\x2dfsck.slice. [ 31.651043] systemd[1]: Created slice system-systemd\x2dfsck.slice. [ 31.736980] systemd[1]: Starting system-getty.slice. [ 31.803873] systemd[1]: Created slice system-getty.slice. [ 31.892349] systemd[1]: Starting system-serial\x2dgetty.slice. [ 31.991909] systemd[1]: Created slice system-serial\x2dgetty.slice. [ 32.781823] loop: module loaded [ 33.950896] EXT4-fs (sda2): re-mounted. Opts: errors=remount-ro [ 34.594866] systemd-udevd[858]: starting version 215 [ 35.389844] /pci@1f,0/ebus@c/flashprom@0,0: OBP Flash, RD 1fff0000000[100000] WR 1fff0000000[100000] [ 35.891041] usbcore: registered new interface driver usbfs [ 35.963346] usbcore: registered new interface driver hub [ 36.033281] usbcore: registered new device driver usb [ 36.178897] PCI: Enabling device: (0000:00:03.0), cmd 1 [ 36.194250] PCI: Enabling device: (0000:01:00.0), cmd 3 [ 36.194997] sym0: <810a> rev 0x12 at pci 0000:01:00.0 irq 16 [ 36.282598] i2c i2c-0: Error: command never completed [ 36.363542] alim7101_wdt: Steve Hill <steve@navaho.co.uk> [ 36.434571] alim7101_wdt: Detected old alim7101 revision 'a1d'. If this is a cobalt board, set the 'use_gpio' module parameter. [ 36.671145] sd 0:0:0:0: Attached scsi generic sg0 type 0 [ 36.762362] random: crng init done [ 36.896231] i2c i2c-0: Error: command never completed [ 36.986450] sym0: No NVRAM, ID 7, Fast-10, SE, parity checking [ 37.069076] sym0: SCSI BUS has been reset. [ 37.122903] scsi host2: sym-2.2.3 [ 37.190955] sr 0:0:1:0: [sr0] scsi3-mmc drive: 48x/48x cd/rw xa/form2 cdda tray [ 37.287115] cdrom: Uniform CD-ROM driver Revision: 3.20 [ 37.460994] sr 0:0:1:0: Attached scsi generic sg1 type 5 [ 37.615750] i2c i2c-0: Error: command never completed [ 37.694838] sr 0:0:1:0: Attached scsi CD-ROM sr0 [ 37.697846] i2c i2c-0: Error: command never completed [ 37.789344] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver [ 37.881449] i2c i2c-0: Error: command never completed [ 37.956046] i2c i2c-0: Error: command never completed [ 38.032177] i2c i2c-0: Error: command never completed [ 38.105769] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver [ 38.192532] i2c i2c-0: Error: command never completed [ 38.273178] i2c i2c-0: Error: command never completed [ 38.348701] i2c i2c-0: Error: command never completed [ 38.425577] i2c i2c-0: Error: command never completed [ 38.493495] ehci-pci: EHCI PCI platform driver [ 38.608019] i2c i2c-0: Error: command never completed [ 38.676301] sungem.c:v1.0 David S. Miller <davem@redhat.com> [ 38.752290] gem 0000:00:0c.1 eth0: Sun GEM (PCI) 10/100/1000BaseT Ethernet 00:03:ba:0b:7d:5d [ 38.892964] ohci-pci: OHCI PCI platform driver [ 38.951551] ohci-pci 0000:00:0c.3: OHCI PCI host controller [ 39.024840] ohci-pci 0000:00:0c.3: new USB bus registered, assigned bus number 1 [ 39.122190] ohci-pci 0000:00:0c.3: irq 13, io mem 0x1ff02000000 [ 39.271178] usb usb1: New USB device found, idVendor\x1d6b, idProduct\001, bcdDevice= 4.16 [ 39.379924] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1 [ 39.474909] usb usb1: Product: OHCI PCI host controller [ 39.543571] usb usb1: Manufacturer: Linux 4.16.0-11316-gf77cfbe-dirty ohci_hcd [ 39.638437] usb usb1: SerialNumber: 0000:00:0c.3 [ 39.709158] hub 1-0:1.0: USB hub found [ 39.759851] hub 1-0:1.0: 4 ports detected [ 39.823518] alim7101_wdt: Steve Hill <steve@navaho.co.uk> [ 39.894525] alim7101_wdt: Detected old alim7101 revision 'a1d'. If this is a cobalt board, set the 'use_gpio' module parameter. [ 40.099630] alim7101_wdt: Steve Hill <steve@navaho.co.uk> [ 40.170645] alim7101_wdt: Detected old alim7101 revision 'a1d'. If this is a cobalt board, set the 'use_gpio' module parameter. [ 42.770525] Adding 907664k swap on /dev/sda4. Priority:-2 extents:1 across:907664k [ 43.331927] EXT4-fs (sda1): mounting ext3 file system using the ext4 subsystem [ 43.461921] EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: (null) [ 44.086961] systemd-journald[848]: Received request to flush runtime journal from PID 1 [ 45.582986] sungem_phy: PHY ID: 437421, addr: 1 [ 45.583023] gem 0000:00:0c.1 eth0: Found Generic MII PHY [ 45.653493] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready [ 45.734391] ip (1089) used greatest stack depth: 6528 bytes left [ 47.306788] systemd-udevd (871) used greatest stack depth: 5808 bytes left [ 47.412708] systemd-udevd (863) used greatest stack depth: 4592 bytes left [ 48.151054] gem 0000:00:0c.1 eth0: Link is up at 100 Mbps, full-duplex [ 48.242519] gem 0000:00:0c.1 eth0: Pause is disabled [ 48.311819] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready -- Meelis Roos (mroos@linux.ee) ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic 2018-04-11 20:25 ` Meelis Roos @ 2018-04-11 21:17 ` Bjorn Helgaas -1 siblings, 0 replies; 40+ messages in thread From: Bjorn Helgaas @ 2018-04-11 21:17 UTC (permalink / raw) To: Meelis Roos; +Cc: Yinghai Lu, linux-pci, sparclinux On Wed, Apr 11, 2018 at 11:25:06PM +0300, Meelis Roos wrote: > > Thanks, this is really interesting. Would you mind replacing the test > > patch with the following (this applies directly on the upstream > > kernel, e.g., fd3b36d27566)? > > > > Sorry for the back and forth, but there's a lot going on here that I > > don't understand. > > > > I'd like to see the complete dmesg log, /proc/iomem, and "lspci -vv". Thanks, this helps a lot. Things I learned or noticed: 1) Sparc exposes raw BAR values instead of CPU resource addresses because it implements pci_resource_to_user(). This means that on sparc, /sys/devices/pci*/resource and lspci show the raw BAR values, unlike most arches. 2) We select the ATI Rage XL device as the default VGA device. The messages maybe could be improved because there's no bridge in the path, and the legacy resources are "not available" because the device's PCI_COMMAND_MEMORY and PCI_COMMAND_IO bits are disabled at boot (and probably enabled by the fb driver): pci 0000:00:13.0: vgaarb: VGA device added: decodes=io+mem,owns=none,locks=none pci 0000:00:13.0: vgaarb: bridge control possible pci 0000:00:13.0: vgaarb: setting as boot device (VGA legacy resources not available) 3) With this patch, we do see a conflict between the VGA device and the ISA bridge, as I expected: pci_bus 0000:00: root bus resource [mem 0x1ff00000000-0x1ffffffffff] (bus address [0x00000000-0xffffffff]) pci 0000:00:07.0: reg 0x14: [mem 0x1ff00000000-0x1ff000fffff] pci 0000:00:13.0: can't claim VGA legacy [mem 0x1ff000a0000-0x1ff000bffff]: address conflict with 0000:00:07.0 [mem 0x1ff00000000-0x1ff000fffff] I don't know how to resolve this conflict nicely. Both the ISA bridge at 00:07.0 and the VGA device at 00:13.0 can claim accesses to the framebuffer at PCI address 0xa0000. I don't know what (if anything) is behind the ISA bridge. Maybe we could disable it by clearing its PCI_COMMAND_MEMORY and PCI_COMMAND_IO bits? My plan for now is to post the "Request legacy VGA framebuffer only for VGA devices" patch and to write a small vgaarb patch to clarify the messages. That will still leave us with the "can't claim VGA legacy" message unless we can figure out something to do there. Bjorn ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic @ 2018-04-11 21:17 ` Bjorn Helgaas 0 siblings, 0 replies; 40+ messages in thread From: Bjorn Helgaas @ 2018-04-11 21:17 UTC (permalink / raw) To: Meelis Roos; +Cc: Yinghai Lu, linux-pci, sparclinux On Wed, Apr 11, 2018 at 11:25:06PM +0300, Meelis Roos wrote: > > Thanks, this is really interesting. Would you mind replacing the test > > patch with the following (this applies directly on the upstream > > kernel, e.g., fd3b36d27566)? > > > > Sorry for the back and forth, but there's a lot going on here that I > > don't understand. > > > > I'd like to see the complete dmesg log, /proc/iomem, and "lspci -vv". Thanks, this helps a lot. Things I learned or noticed: 1) Sparc exposes raw BAR values instead of CPU resource addresses because it implements pci_resource_to_user(). This means that on sparc, /sys/devices/pci*/resource and lspci show the raw BAR values, unlike most arches. 2) We select the ATI Rage XL device as the default VGA device. The messages maybe could be improved because there's no bridge in the path, and the legacy resources are "not available" because the device's PCI_COMMAND_MEMORY and PCI_COMMAND_IO bits are disabled at boot (and probably enabled by the fb driver): pci 0000:00:13.0: vgaarb: VGA device added: decodes=io+mem,owns=none,locks=none pci 0000:00:13.0: vgaarb: bridge control possible pci 0000:00:13.0: vgaarb: setting as boot device (VGA legacy resources not available) 3) With this patch, we do see a conflict between the VGA device and the ISA bridge, as I expected: pci_bus 0000:00: root bus resource [mem 0x1ff00000000-0x1ffffffffff] (bus address [0x00000000-0xffffffff]) pci 0000:00:07.0: reg 0x14: [mem 0x1ff00000000-0x1ff000fffff] pci 0000:00:13.0: can't claim VGA legacy [mem 0x1ff000a0000-0x1ff000bffff]: address conflict with 0000:00:07.0 [mem 0x1ff00000000-0x1ff000fffff] I don't know how to resolve this conflict nicely. Both the ISA bridge at 00:07.0 and the VGA device at 00:13.0 can claim accesses to the framebuffer at PCI address 0xa0000. I don't know what (if anything) is behind the ISA bridge. Maybe we could disable it by clearing its PCI_COMMAND_MEMORY and PCI_COMMAND_IO bits? My plan for now is to post the "Request legacy VGA framebuffer only for VGA devices" patch and to write a small vgaarb patch to clarify the messages. That will still leave us with the "can't claim VGA legacy" message unless we can figure out something to do there. Bjorn ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic 2018-04-11 7:59 ` Meelis Roos @ 2018-05-21 20:10 ` Bjorn Helgaas -1 siblings, 0 replies; 40+ messages in thread From: Bjorn Helgaas @ 2018-05-21 20:10 UTC (permalink / raw) To: Meelis Roos; +Cc: Yinghai Lu, linux-pci, sparclinux On Wed, Apr 11, 2018 at 10:59:19AM +0300, Meelis Roos wrote: > Fire V210: Video RAM BAR error is gone, these are still here: > [ 5.061083] pci 0001:00:07.0: can't claim BAR 0 [io 0x7fe01000000-0x7fe0100ffff]: address conflict with 0001:00:06.0 [io 0x7fe01000600-0x7fe0100061f] > [ 5.061334] pci 0001:00:07.0: can't claim BAR 2 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with 0001:00:07.0 [mem 0x7ff00000000-0x7ff000fffff] >From lspci (https://bugzilla.kernel.org/attachment.cgi?id=275239): 0001:00:06.0 ULi Electronics Inc. M7101 Power Management Controller Region 0: [virtual] I/O ports at <unassigned> [size=16] 0001:00:07.0 ISA bridge: ULi Electronics Inc. M1533/M1535/M1543 PCI to ISA Bridge Region 0: [virtual] I/O ports at 7fe01000000 [size=64K] Region 1: [virtual] Memory at 7ff00000000 (32-bit, non-prefetchable) [size=1M] Region 2: [virtual] Memory at 7ff00000000 (32-bit, non-prefetchable) [size=1M] >From dmesg log (https://bugzilla.kernel.org/attachment.cgi?id=275237): pci 0001:00:06.0: quirk: [io 0x7fe01000800-0x7fe0100083f] claimed by ali7101 ACPI pci 0001:00:06.0: quirk: [io 0x7fe01000600-0x7fe0100061f] claimed by ali7101 SMB The 0001:00:07.0 BAR 0 conflict is with the ali7101 quirk. I don't know how to fix that. The quirk doesn't match up with the M1543/M7101 docs I can find, but the quirk has been there forever and I don't think we can safely change it. The BAR 2 conflict is with 0001:00:07.0's own BAR 1. I think those come from OF, not directly from the hardware, and it looks like an OF error that BAR 1 and BAR 2 are the same. We could filter out duplicates like this if they cause a problem. But I'm not sure whether anything actually breaks because of this conflict. After the VGA framebuffer change, do you see anything that's still broken (besides the "can't claim" messages, I mean)? > Fire V240: Video RAM BAR errors is gone, these are still here: > [ 5.530237] pci 0001:00:07.0: can't claim BAR 0 [io 0x7fe01000000-0x7fe0100ffff]: address conflict with 0001:00:06.0 [io 0x7fe01000600-0x7fe0100061f] > [ 5.530389] pci 0001:00:07.0: can't claim BAR 2 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with 0001:00:07.0 [mem 0x7ff00000000-0x7ff000fffff] Looks the same as V210. > Fire V440: Video RAM BAR error is gone, these are still here: > [ 5.082920] pci 0002:00:07.0: can't claim BAR 0 [io 0x7fe01000000-0x7fe0100ffff]: address conflict with 0002:00:06.0 [io 0x7fe01000600-0x7fe0100061f] > [ 5.082945] pci 0002:00:07.0: can't claim BAR 2 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with 0002:00:07.0 [mem 0x7ff00000000-0x7ff000fffff] Looks the same as V210. > Blade 100: Video RAM related BAR error is gnone, this is still here: > [ 6.131499] pci 0000:00:07.0: can't claim BAR 0 [io 0x1fe02000000-0x1fe0200ffff]: address conflict with 0000:00:03.0 [io 0x1fe02000600-0x1fe0200061f] Looks the same as V210, except that the firmware apparently doesn't have the duplicate BAR 1/2 that the other boxes have. ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic @ 2018-05-21 20:10 ` Bjorn Helgaas 0 siblings, 0 replies; 40+ messages in thread From: Bjorn Helgaas @ 2018-05-21 20:10 UTC (permalink / raw) To: Meelis Roos; +Cc: Yinghai Lu, linux-pci, sparclinux On Wed, Apr 11, 2018 at 10:59:19AM +0300, Meelis Roos wrote: > Fire V210: Video RAM BAR error is gone, these are still here: > [ 5.061083] pci 0001:00:07.0: can't claim BAR 0 [io 0x7fe01000000-0x7fe0100ffff]: address conflict with 0001:00:06.0 [io 0x7fe01000600-0x7fe0100061f] > [ 5.061334] pci 0001:00:07.0: can't claim BAR 2 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with 0001:00:07.0 [mem 0x7ff00000000-0x7ff000fffff] From lspci (https://bugzilla.kernel.org/attachment.cgi?id'5239): 0001:00:06.0 ULi Electronics Inc. M7101 Power Management Controller Region 0: [virtual] I/O ports at <unassigned> [size\x16] 0001:00:07.0 ISA bridge: ULi Electronics Inc. M1533/M1535/M1543 PCI to ISA Bridge Region 0: [virtual] I/O ports at 7fe01000000 [sizedK] Region 1: [virtual] Memory at 7ff00000000 (32-bit, non-prefetchable) [size=1M] Region 2: [virtual] Memory at 7ff00000000 (32-bit, non-prefetchable) [size=1M] From dmesg log (https://bugzilla.kernel.org/attachment.cgi?id'5237): pci 0001:00:06.0: quirk: [io 0x7fe01000800-0x7fe0100083f] claimed by ali7101 ACPI pci 0001:00:06.0: quirk: [io 0x7fe01000600-0x7fe0100061f] claimed by ali7101 SMB The 0001:00:07.0 BAR 0 conflict is with the ali7101 quirk. I don't know how to fix that. The quirk doesn't match up with the M1543/M7101 docs I can find, but the quirk has been there forever and I don't think we can safely change it. The BAR 2 conflict is with 0001:00:07.0's own BAR 1. I think those come from OF, not directly from the hardware, and it looks like an OF error that BAR 1 and BAR 2 are the same. We could filter out duplicates like this if they cause a problem. But I'm not sure whether anything actually breaks because of this conflict. After the VGA framebuffer change, do you see anything that's still broken (besides the "can't claim" messages, I mean)? > Fire V240: Video RAM BAR errors is gone, these are still here: > [ 5.530237] pci 0001:00:07.0: can't claim BAR 0 [io 0x7fe01000000-0x7fe0100ffff]: address conflict with 0001:00:06.0 [io 0x7fe01000600-0x7fe0100061f] > [ 5.530389] pci 0001:00:07.0: can't claim BAR 2 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with 0001:00:07.0 [mem 0x7ff00000000-0x7ff000fffff] Looks the same as V210. > Fire V440: Video RAM BAR error is gone, these are still here: > [ 5.082920] pci 0002:00:07.0: can't claim BAR 0 [io 0x7fe01000000-0x7fe0100ffff]: address conflict with 0002:00:06.0 [io 0x7fe01000600-0x7fe0100061f] > [ 5.082945] pci 0002:00:07.0: can't claim BAR 2 [mem 0x7ff00000000-0x7ff000fffff]: address conflict with 0002:00:07.0 [mem 0x7ff00000000-0x7ff000fffff] Looks the same as V210. > Blade 100: Video RAM related BAR error is gnone, this is still here: > [ 6.131499] pci 0000:00:07.0: can't claim BAR 0 [io 0x1fe02000000-0x1fe0200ffff]: address conflict with 0000:00:03.0 [io 0x1fe02000600-0x1fe0200061f] Looks the same as V210, except that the firmware apparently doesn't have the duplicate BAR 1/2 that the other boxes have. ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic 2018-04-08 18:44 ` Meelis Roos @ 2018-06-20 22:05 ` Bjorn Helgaas -1 siblings, 0 replies; 40+ messages in thread From: Bjorn Helgaas @ 2018-06-20 22:05 UTC (permalink / raw) To: Meelis Roos; +Cc: Yinghai Lu, linux-pci, sparclinux On Sun, Apr 08, 2018 at 09:44:57PM +0300, Meelis Roos wrote: > This is a followup on the thread https://lkml.org/lkml/2015/10/7/135 and > corresponding https://bugzilla.kernel.org/show_bug.cgi?id=117191 entry. > > I saw some sparc64 PCI allocation changes in yesterdays git and compiled > 4.16.0-10242-gf605ba9 on most of my sparc64 machines to test if the PCI > BAR allocation problems introduced in 4.3 were fixed on some of them. > Alas, no change at all - of the test machines, none showed any changes > in the error messages in "dmesg | grep BAR". > > There was one test machine, T1000 with no addon cards, that did not > encounter any problem, before or after the recent patch. All the other > test machines tried still have the BAR allocation problems. > > The errors seem to cluster into 3 categories: > > 1. many devices fail BAR allocations > 2. one of the Davicom Ethernet devices fails BAR allocation > 3. Uli ISA bridge fails BAR allocation. > > Full current dmesg and lspci info is also available if there is any > interest. I did not include it all here, which machines are interesting? Hi Meelis, Fixes for the worst of these issues are in v4.18-rc1. I think there are still cases where we will complain about conflicts. Some of these look like they result from OF/DT descriptions that contain conflicts, and they may not cause a problem other than the message itself. If you have a chance to try out v4.18-rc1 or later and if you still see things broken, please let me know and include the dmesg log. Bjorn ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic @ 2018-06-20 22:05 ` Bjorn Helgaas 0 siblings, 0 replies; 40+ messages in thread From: Bjorn Helgaas @ 2018-06-20 22:05 UTC (permalink / raw) To: Meelis Roos; +Cc: Yinghai Lu, linux-pci, sparclinux On Sun, Apr 08, 2018 at 09:44:57PM +0300, Meelis Roos wrote: > This is a followup on the thread https://lkml.org/lkml/2015/10/7/135 and > corresponding https://bugzilla.kernel.org/show_bug.cgi?id\x117191 entry. > > I saw some sparc64 PCI allocation changes in yesterdays git and compiled > 4.16.0-10242-gf605ba9 on most of my sparc64 machines to test if the PCI > BAR allocation problems introduced in 4.3 were fixed on some of them. > Alas, no change at all - of the test machines, none showed any changes > in the error messages in "dmesg | grep BAR". > > There was one test machine, T1000 with no addon cards, that did not > encounter any problem, before or after the recent patch. All the other > test machines tried still have the BAR allocation problems. > > The errors seem to cluster into 3 categories: > > 1. many devices fail BAR allocations > 2. one of the Davicom Ethernet devices fails BAR allocation > 3. Uli ISA bridge fails BAR allocation. > > Full current dmesg and lspci info is also available if there is any > interest. I did not include it all here, which machines are interesting? Hi Meelis, Fixes for the worst of these issues are in v4.18-rc1. I think there are still cases where we will complain about conflicts. Some of these look like they result from OF/DT descriptions that contain conflicts, and they may not cause a problem other than the message itself. If you have a chance to try out v4.18-rc1 or later and if you still see things broken, please let me know and include the dmesg log. Bjorn ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic 2018-06-20 22:05 ` Bjorn Helgaas @ 2018-06-29 10:06 ` Meelis Roos -1 siblings, 0 replies; 40+ messages in thread From: Meelis Roos @ 2018-06-29 10:06 UTC (permalink / raw) To: Bjorn Helgaas; +Cc: Yinghai Lu, linux-pci, sparclinux > > This is a followup on the thread https://lkml.org/lkml/2015/10/7/135 and > > corresponding https://bugzilla.kernel.org/show_bug.cgi?id=117191 entry. > > > > I saw some sparc64 PCI allocation changes in yesterdays git and compiled > > 4.16.0-10242-gf605ba9 on most of my sparc64 machines to test if the PCI > > BAR allocation problems introduced in 4.3 were fixed on some of them. > > Alas, no change at all - of the test machines, none showed any changes > > in the error messages in "dmesg | grep BAR". > > > > There was one test machine, T1000 with no addon cards, that did not > > encounter any problem, before or after the recent patch. All the other > > test machines tried still have the BAR allocation problems. > > > > The errors seem to cluster into 3 categories: > > > > 1. many devices fail BAR allocations > > 2. one of the Davicom Ethernet devices fails BAR allocation > > 3. Uli ISA bridge fails BAR allocation. > > > > Full current dmesg and lspci info is also available if there is any > > interest. I did not include it all here, which machines are interesting? > > Hi Meelis, > > Fixes for the worst of these issues are in v4.18-rc1. Thank you! > I think there are still cases where we will complain about conflicts. > Some of these look like they result from OF/DT descriptions that > contain conflicts, and they may not cause a problem other than the > message itself. Video RAM area related BAR messages are gone from all servers. V100 OK V120 OK Netra X1 OK Netra T1-200 OK Netra T1-105 OK T2000 still has "no compatible bridge window" about ULi ISA Bridge: [ 3.767832] pci 0001:05:02.0: can't claim BAR 0 [io 0xf010000000-0xf01000ffff]: no compatible bridge window V245 still has "no compatible bridge window" about ULI ISA Bridge: [ 4.522892] pci 0000:05:1e.0: can't claim BAR 0 [io 0x7f810000000-0x7f810000fff]: no compatible bridge window ULi PMU resource conflict still present on these servers: V210 V240 V440 Blade 100 On Blade 100 it is different than the newer V*: [ 9.100363] pci 0000:00:07.0: can't claim BAR 0 [io 0x1fe02000000-0x1fe0200ffff]: address conflict with 0000:00:03.0 [io 0x1fe02000600-0x1fe0200061f] 00:03.0 Non-VGA unclassified device: ULi Electronics Inc. M7101 Power Management Controller [PMU] 00:07.0 ISA bridge: ULi Electronics Inc. M1533/M1535/M1543 PCI to ISA Bridge [Aladdin IV/V/V+] Additionally, ULi ISA Bridge self-conflict still present - is that because it was already reserved by the OF? On these machines: V210 V240 V440 -- Meelis Roos (mroos@linux.ee) ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic @ 2018-06-29 10:06 ` Meelis Roos 0 siblings, 0 replies; 40+ messages in thread From: Meelis Roos @ 2018-06-29 10:06 UTC (permalink / raw) To: Bjorn Helgaas; +Cc: Yinghai Lu, linux-pci, sparclinux > > This is a followup on the thread https://lkml.org/lkml/2015/10/7/135 and > > corresponding https://bugzilla.kernel.org/show_bug.cgi?id\x117191 entry. > > > > I saw some sparc64 PCI allocation changes in yesterdays git and compiled > > 4.16.0-10242-gf605ba9 on most of my sparc64 machines to test if the PCI > > BAR allocation problems introduced in 4.3 were fixed on some of them. > > Alas, no change at all - of the test machines, none showed any changes > > in the error messages in "dmesg | grep BAR". > > > > There was one test machine, T1000 with no addon cards, that did not > > encounter any problem, before or after the recent patch. All the other > > test machines tried still have the BAR allocation problems. > > > > The errors seem to cluster into 3 categories: > > > > 1. many devices fail BAR allocations > > 2. one of the Davicom Ethernet devices fails BAR allocation > > 3. Uli ISA bridge fails BAR allocation. > > > > Full current dmesg and lspci info is also available if there is any > > interest. I did not include it all here, which machines are interesting? > > Hi Meelis, > > Fixes for the worst of these issues are in v4.18-rc1. Thank you! > I think there are still cases where we will complain about conflicts. > Some of these look like they result from OF/DT descriptions that > contain conflicts, and they may not cause a problem other than the > message itself. Video RAM area related BAR messages are gone from all servers. V100 OK V120 OK Netra X1 OK Netra T1-200 OK Netra T1-105 OK T2000 still has "no compatible bridge window" about ULi ISA Bridge: [ 3.767832] pci 0001:05:02.0: can't claim BAR 0 [io 0xf010000000-0xf01000ffff]: no compatible bridge window V245 still has "no compatible bridge window" about ULI ISA Bridge: [ 4.522892] pci 0000:05:1e.0: can't claim BAR 0 [io 0x7f810000000-0x7f810000fff]: no compatible bridge window ULi PMU resource conflict still present on these servers: V210 V240 V440 Blade 100 On Blade 100 it is different than the newer V*: [ 9.100363] pci 0000:00:07.0: can't claim BAR 0 [io 0x1fe02000000-0x1fe0200ffff]: address conflict with 0000:00:03.0 [io 0x1fe02000600-0x1fe0200061f] 00:03.0 Non-VGA unclassified device: ULi Electronics Inc. M7101 Power Management Controller [PMU] 00:07.0 ISA bridge: ULi Electronics Inc. M1533/M1535/M1543 PCI to ISA Bridge [Aladdin IV/V/V+] Additionally, ULi ISA Bridge self-conflict still present - is that because it was already reserved by the OF? On these machines: V210 V240 V440 -- Meelis Roos (mroos@linux.ee) ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic 2018-06-29 10:06 ` Meelis Roos @ 2018-06-29 13:47 ` Bjorn Helgaas -1 siblings, 0 replies; 40+ messages in thread From: Bjorn Helgaas @ 2018-06-29 13:47 UTC (permalink / raw) To: Meelis Roos; +Cc: Yinghai Lu, linux-pci, sparclinux On Fri, Jun 29, 2018 at 01:06:55PM +0300, Meelis Roos wrote: > > > This is a followup on the thread https://lkml.org/lkml/2015/10/7/135 and > > > corresponding https://bugzilla.kernel.org/show_bug.cgi?id=117191 entry. > > > > > > I saw some sparc64 PCI allocation changes in yesterdays git and compiled > > > 4.16.0-10242-gf605ba9 on most of my sparc64 machines to test if the PCI > > > BAR allocation problems introduced in 4.3 were fixed on some of them. > > > Alas, no change at all - of the test machines, none showed any changes > > > in the error messages in "dmesg | grep BAR". > > > > > > There was one test machine, T1000 with no addon cards, that did not > > > encounter any problem, before or after the recent patch. All the other > > > test machines tried still have the BAR allocation problems. > > > > > > The errors seem to cluster into 3 categories: > > > > > > 1. many devices fail BAR allocations > > > 2. one of the Davicom Ethernet devices fails BAR allocation > > > 3. Uli ISA bridge fails BAR allocation. > > > > > > Full current dmesg and lspci info is also available if there is any > > > interest. I did not include it all here, which machines are interesting? > > > > Hi Meelis, > > > > Fixes for the worst of these issues are in v4.18-rc1. > > Thank you! > > > I think there are still cases where we will complain about conflicts. > > Some of these look like they result from OF/DT descriptions that > > contain conflicts, and they may not cause a problem other than the > > message itself. > > Video RAM area related BAR messages are gone from all servers. > > V100 OK > V120 OK > Netra X1 OK > Netra T1-200 OK > Netra T1-105 OK > > T2000 still has "no compatible bridge window" about ULi ISA Bridge: > > [ 3.767832] pci 0001:05:02.0: can't claim BAR 0 [io 0xf010000000-0xf01000ffff]: no compatible bridge window >From the dmesg log at https://bugzilla.kernel.org/show_bug.cgi?id=117191, pci_sun4v f0287174: PCI host bridge to bus 0001:02 pci_bus 0001:02: root bus resource [io 0xf010000000-0xf01fffffff] (bus address [0x0000-0xfffffff]) pci 0001:05:02.0: can't claim BAR 0 [io 0xf010000000-0xf01000ffff]: no compatible bridge window BAR 0 could potentially be valid, if the intermediate bridge windows were set up correctly. But from the lspci: 0001:02:00.0 PCI bridge: PEX 8532 Upstream Port Bus: primary=02, secondary=03, subordinate=09 I/O behind bridge: 00000000-00002fff 0001:03:01.0 PCI bridge: PEX 8532 Downstream Port Bus: primary=03, secondary=04, subordinate=06 I/O behind bridge: 00000000-00000fff 0001:04:00.0 PCI bridge: PCIe to PCI/PCI-X Bridge Bus: primary=04, secondary=05, subordinate=05 I/O behind bridge: 00000000-00000fff 0001:05:02.0 ISA bridge: ULi M1533/M1535/M1543 PCI to ISA Bridge Region 0: [virtual] I/O ports at f010000000 [size=64K] (lspci normally shows the CPU addresses, but it looks like it's showing bus addresses here (except for the 0001:05:02.0 I/O BAR). That might be something we should sort out at some point. I know sparc does things differently in that area.) But either way, the 0001:04:00.0 I/O aperture is only 4K in size, and apparently OF is telling us the ISA bridge has a 64K I/O BAR, so that explains the "no compatible bridge window" message. We can't fit a 64K BAR in a 4K window. Do you know if there's an ISA device behind that bridge? If there is, and it only requires I/O ports in the 0-0xfff range, it probably still works in spite of the warning. But if it needs anything above 0xfff, or if we decided to be "smart" and not enable I/O on the bridge because we think the I/O BAR is invalid, it wouldn't work. > V245 still has "no compatible bridge window" about ULI ISA Bridge: > > [ 4.522892] pci 0000:05:1e.0: can't claim BAR 0 [io 0x7f810000000-0x7f810000fff]: no compatible bridge window Again from https://bugzilla.kernel.org/show_bug.cgi?id=117191, fire f0068b8c: PCI host bridge to bus 0000:02 pci_bus 0000:02: root bus resource [io 0x7f810000000-0x7f81fffffff] (bus address [0x0000-0xfffffff]) pci 0000:05:1e.0: can't claim BAR 0 [io 0x7f810000000-0x7f810000fff]: no compatible bridge window 0000:04:00.0 PCI bridge: ULi M5249 HTT to PCI Bridge Bus: primary=04, secondary=05, subordinate=05 I/O behind bridge: 00001000-00001fff Memory behind bridge: 00200000-03ffffff 0000:05:1c.0 ULi USB 1.1 Controller [OHCI] Region 0: Memory at 01000000 (32-bit, non-prefetchable) [size=16M] 0000:05:1c.1 ULi USB 1.1 Controller [OHCI] Region 0: Memory at 02000000 (32-bit, non-prefetchable) [size=16M] 0000:05:1c.3 ULi USB 2.0 Controller [EHCI] Region 0: Memory at 00200000 (32-bit, non-prefetchable) [size=8K] 0000:05:1e.0 ISA bridge: ULi M1575 South Bridge Region 0: [virtual] I/O ports at 7f810000000 [size=4K] 0000:05:1f.0 ULi M5229 IDE Region 0: I/O ports at 1040 [size=64] Region 1: I/O ports at 1080 [size=64] Region 2: I/O ports at 10c0 [size=64] Region 3: I/O ports at 1100 [size=64] Region 4: I/O ports at 1000 [size=64] The 0000:05:1e.0 I/O BAR (BAR 0) contains 0 (at least according to OF). This is clearly invalid because the bridge at 0000:04:00.0 will never route anything to bus 05 with an I/O bus address of 0, so nothing behind the 05:1e.0 ISA bridge should work. If you still have the v4.18-rc1 logs from these boxes, would you mind attaching them to the bugzilla? > ULi PMU resource conflict still present on these servers: > > V210 > V240 > V440 > Blade 100 > > On Blade 100 it is different than the newer V*: > [ 9.100363] pci 0000:00:07.0: can't claim BAR 0 [io 0x1fe02000000-0x1fe0200ffff]: address conflict with 0000:00:03.0 [io 0x1fe02000600-0x1fe0200061f] > > 00:03.0 Non-VGA unclassified device: ULi Electronics Inc. M7101 Power Management Controller [PMU] > 00:07.0 ISA bridge: ULi Electronics Inc. M1533/M1535/M1543 PCI to ISA Bridge [Aladdin IV/V/V+] > > > Additionally, ULi ISA Bridge self-conflict still present - is that > because it was already reserved by the OF? On these machines: > > V210 > V240 > V440 I haven't looked at the rest of these yet. ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic @ 2018-06-29 13:47 ` Bjorn Helgaas 0 siblings, 0 replies; 40+ messages in thread From: Bjorn Helgaas @ 2018-06-29 13:47 UTC (permalink / raw) To: Meelis Roos; +Cc: Yinghai Lu, linux-pci, sparclinux On Fri, Jun 29, 2018 at 01:06:55PM +0300, Meelis Roos wrote: > > > This is a followup on the thread https://lkml.org/lkml/2015/10/7/135 and > > > corresponding https://bugzilla.kernel.org/show_bug.cgi?id\x117191 entry. > > > > > > I saw some sparc64 PCI allocation changes in yesterdays git and compiled > > > 4.16.0-10242-gf605ba9 on most of my sparc64 machines to test if the PCI > > > BAR allocation problems introduced in 4.3 were fixed on some of them. > > > Alas, no change at all - of the test machines, none showed any changes > > > in the error messages in "dmesg | grep BAR". > > > > > > There was one test machine, T1000 with no addon cards, that did not > > > encounter any problem, before or after the recent patch. All the other > > > test machines tried still have the BAR allocation problems. > > > > > > The errors seem to cluster into 3 categories: > > > > > > 1. many devices fail BAR allocations > > > 2. one of the Davicom Ethernet devices fails BAR allocation > > > 3. Uli ISA bridge fails BAR allocation. > > > > > > Full current dmesg and lspci info is also available if there is any > > > interest. I did not include it all here, which machines are interesting? > > > > Hi Meelis, > > > > Fixes for the worst of these issues are in v4.18-rc1. > > Thank you! > > > I think there are still cases where we will complain about conflicts. > > Some of these look like they result from OF/DT descriptions that > > contain conflicts, and they may not cause a problem other than the > > message itself. > > Video RAM area related BAR messages are gone from all servers. > > V100 OK > V120 OK > Netra X1 OK > Netra T1-200 OK > Netra T1-105 OK > > T2000 still has "no compatible bridge window" about ULi ISA Bridge: > > [ 3.767832] pci 0001:05:02.0: can't claim BAR 0 [io 0xf010000000-0xf01000ffff]: no compatible bridge window From the dmesg log at https://bugzilla.kernel.org/show_bug.cgi?id\x117191, pci_sun4v f0287174: PCI host bridge to bus 0001:02 pci_bus 0001:02: root bus resource [io 0xf010000000-0xf01fffffff] (bus address [0x0000-0xfffffff]) pci 0001:05:02.0: can't claim BAR 0 [io 0xf010000000-0xf01000ffff]: no compatible bridge window BAR 0 could potentially be valid, if the intermediate bridge windows were set up correctly. But from the lspci: 0001:02:00.0 PCI bridge: PEX 8532 Upstream Port Bus: primary\x02, secondary\x03, subordinate I/O behind bridge: 00000000-00002fff 0001:03:01.0 PCI bridge: PEX 8532 Downstream Port Bus: primary\x03, secondary\x04, subordinate\x06 I/O behind bridge: 00000000-00000fff 0001:04:00.0 PCI bridge: PCIe to PCI/PCI-X Bridge Bus: primary\x04, secondary\x05, subordinate\x05 I/O behind bridge: 00000000-00000fff 0001:05:02.0 ISA bridge: ULi M1533/M1535/M1543 PCI to ISA Bridge Region 0: [virtual] I/O ports at f010000000 [sizedK] (lspci normally shows the CPU addresses, but it looks like it's showing bus addresses here (except for the 0001:05:02.0 I/O BAR). That might be something we should sort out at some point. I know sparc does things differently in that area.) But either way, the 0001:04:00.0 I/O aperture is only 4K in size, and apparently OF is telling us the ISA bridge has a 64K I/O BAR, so that explains the "no compatible bridge window" message. We can't fit a 64K BAR in a 4K window. Do you know if there's an ISA device behind that bridge? If there is, and it only requires I/O ports in the 0-0xfff range, it probably still works in spite of the warning. But if it needs anything above 0xfff, or if we decided to be "smart" and not enable I/O on the bridge because we think the I/O BAR is invalid, it wouldn't work. > V245 still has "no compatible bridge window" about ULI ISA Bridge: > > [ 4.522892] pci 0000:05:1e.0: can't claim BAR 0 [io 0x7f810000000-0x7f810000fff]: no compatible bridge window Again from https://bugzilla.kernel.org/show_bug.cgi?id\x117191, fire f0068b8c: PCI host bridge to bus 0000:02 pci_bus 0000:02: root bus resource [io 0x7f810000000-0x7f81fffffff] (bus address [0x0000-0xfffffff]) pci 0000:05:1e.0: can't claim BAR 0 [io 0x7f810000000-0x7f810000fff]: no compatible bridge window 0000:04:00.0 PCI bridge: ULi M5249 HTT to PCI Bridge Bus: primary\x04, secondary\x05, subordinate\x05 I/O behind bridge: 00001000-00001fff Memory behind bridge: 00200000-03ffffff 0000:05:1c.0 ULi USB 1.1 Controller [OHCI] Region 0: Memory at 01000000 (32-bit, non-prefetchable) [size\x16M] 0000:05:1c.1 ULi USB 1.1 Controller [OHCI] Region 0: Memory at 02000000 (32-bit, non-prefetchable) [size\x16M] 0000:05:1c.3 ULi USB 2.0 Controller [EHCI] Region 0: Memory at 00200000 (32-bit, non-prefetchable) [size=8K] 0000:05:1e.0 ISA bridge: ULi M1575 South Bridge Region 0: [virtual] I/O ports at 7f810000000 [size=4K] 0000:05:1f.0 ULi M5229 IDE Region 0: I/O ports at 1040 [sized] Region 1: I/O ports at 1080 [sized] Region 2: I/O ports at 10c0 [sized] Region 3: I/O ports at 1100 [sized] Region 4: I/O ports at 1000 [sized] The 0000:05:1e.0 I/O BAR (BAR 0) contains 0 (at least according to OF). This is clearly invalid because the bridge at 0000:04:00.0 will never route anything to bus 05 with an I/O bus address of 0, so nothing behind the 05:1e.0 ISA bridge should work. If you still have the v4.18-rc1 logs from these boxes, would you mind attaching them to the bugzilla? > ULi PMU resource conflict still present on these servers: > > V210 > V240 > V440 > Blade 100 > > On Blade 100 it is different than the newer V*: > [ 9.100363] pci 0000:00:07.0: can't claim BAR 0 [io 0x1fe02000000-0x1fe0200ffff]: address conflict with 0000:00:03.0 [io 0x1fe02000600-0x1fe0200061f] > > 00:03.0 Non-VGA unclassified device: ULi Electronics Inc. M7101 Power Management Controller [PMU] > 00:07.0 ISA bridge: ULi Electronics Inc. M1533/M1535/M1543 PCI to ISA Bridge [Aladdin IV/V/V+] > > > Additionally, ULi ISA Bridge self-conflict still present - is that > because it was already reserved by the OF? On these machines: > > V210 > V240 > V440 I haven't looked at the rest of these yet. ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic 2018-06-29 13:47 ` Bjorn Helgaas @ 2018-07-06 19:49 ` Meelis Roos -1 siblings, 0 replies; 40+ messages in thread From: Meelis Roos @ 2018-07-06 19:49 UTC (permalink / raw) To: Bjorn Helgaas; +Cc: Yinghai Lu, linux-pci, sparclinux > > Video RAM area related BAR messages are gone from all servers. > > > > V100 OK > > V120 OK > > Netra X1 OK > > Netra T1-200 OK > > Netra T1-105 OK > > > > T2000 still has "no compatible bridge window" about ULi ISA Bridge: > > > > [ 3.767832] pci 0001:05:02.0: can't claim BAR 0 [io 0xf010000000-0xf01000ffff]: no compatible bridge window > > >From the dmesg log at https://bugzilla.kernel.org/show_bug.cgi?id=117191, > > pci_sun4v f0287174: PCI host bridge to bus 0001:02 > pci_bus 0001:02: root bus resource [io 0xf010000000-0xf01fffffff] (bus address [0x0000-0xfffffff]) > pci 0001:05:02.0: can't claim BAR 0 [io 0xf010000000-0xf01000ffff]: no compatible bridge window > > BAR 0 could potentially be valid, if the intermediate bridge windows > were set up correctly. But from the lspci: > > 0001:02:00.0 PCI bridge: PEX 8532 Upstream Port > Bus: primary=02, secondary=03, subordinate=09 > I/O behind bridge: 00000000-00002fff > 0001:03:01.0 PCI bridge: PEX 8532 Downstream Port > Bus: primary=03, secondary=04, subordinate=06 > I/O behind bridge: 00000000-00000fff > 0001:04:00.0 PCI bridge: PCIe to PCI/PCI-X Bridge > Bus: primary=04, secondary=05, subordinate=05 > I/O behind bridge: 00000000-00000fff > 0001:05:02.0 ISA bridge: ULi M1533/M1535/M1543 PCI to ISA Bridge > Region 0: [virtual] I/O ports at f010000000 [size=64K] > > (lspci normally shows the CPU addresses, but it looks like it's showing > bus addresses here (except for the 0001:05:02.0 I/O BAR). That might > be something we should sort out at some point. I know sparc does > things differently in that area.) > > But either way, the 0001:04:00.0 I/O aperture is only 4K in size, and > apparently OF is telling us the ISA bridge has a 64K I/O BAR, so that > explains the "no compatible bridge window" message. We can't fit a > 64K BAR in a 4K window. > > Do you know if there's an ISA device behind that bridge? If there > is, and it only requires I/O ports in the 0-0xfff range, it probably > still works in spite of the warning. prtconf shows from OF that a serial port is there: Node 0xf02991b8 ignore-cd: reg: 00000000.000003f8.00000008 interrupts: 00000001 compatible: 'su16550' + 'su' device_type: 'serial' name: 'serial' > But if it needs anything above 0xfff, or if we decided to be "smart" > and not enable I/O on the bridge because we think the I/O BAR is > invalid, it wouldn't work. > > > V245 still has "no compatible bridge window" about ULI ISA Bridge: > > > > [ 4.522892] pci 0000:05:1e.0: can't claim BAR 0 [io 0x7f810000000-0x7f810000fff]: no compatible bridge window > > Again from https://bugzilla.kernel.org/show_bug.cgi?id=117191, > > fire f0068b8c: PCI host bridge to bus 0000:02 > pci_bus 0000:02: root bus resource [io 0x7f810000000-0x7f81fffffff] (bus address [0x0000-0xfffffff]) > pci 0000:05:1e.0: can't claim BAR 0 [io 0x7f810000000-0x7f810000fff]: no compatible bridge window > > 0000:04:00.0 PCI bridge: ULi M5249 HTT to PCI Bridge > Bus: primary=04, secondary=05, subordinate=05 > I/O behind bridge: 00001000-00001fff > Memory behind bridge: 00200000-03ffffff > 0000:05:1c.0 ULi USB 1.1 Controller [OHCI] > Region 0: Memory at 01000000 (32-bit, non-prefetchable) [size=16M] > 0000:05:1c.1 ULi USB 1.1 Controller [OHCI] > Region 0: Memory at 02000000 (32-bit, non-prefetchable) [size=16M] > 0000:05:1c.3 ULi USB 2.0 Controller [EHCI] > Region 0: Memory at 00200000 (32-bit, non-prefetchable) [size=8K] > 0000:05:1e.0 ISA bridge: ULi M1575 South Bridge > Region 0: [virtual] I/O ports at 7f810000000 [size=4K] > 0000:05:1f.0 ULi M5229 IDE > Region 0: I/O ports at 1040 [size=64] > Region 1: I/O ports at 1080 [size=64] > Region 2: I/O ports at 10c0 [size=64] > Region 3: I/O ports at 1100 [size=64] > Region 4: I/O ports at 1000 [size=64] > > The 0000:05:1e.0 I/O BAR (BAR 0) contains 0 (at least according to > OF). This is clearly invalid because the bridge at 0000:04:00.0 will > never route anything to bus 05 with an I/O bus address of 0, so > nothing behind the 05:1e.0 ISA bridge should work. > > If you still have the v4.18-rc1 logs from these boxes, would you mind > attaching them to the bugzilla? Found 4.17.0 and 4.18-rc2+git dmesgs for both T2000 and V245, attached there. -- Meelis Roos (mroos@linux.ee) ^ permalink raw reply [flat|nested] 40+ messages in thread
* Re: sparc64 PCI BAR allocation is still problematic @ 2018-07-06 19:49 ` Meelis Roos 0 siblings, 0 replies; 40+ messages in thread From: Meelis Roos @ 2018-07-06 19:49 UTC (permalink / raw) To: Bjorn Helgaas; +Cc: Yinghai Lu, linux-pci, sparclinux > > Video RAM area related BAR messages are gone from all servers. > > > > V100 OK > > V120 OK > > Netra X1 OK > > Netra T1-200 OK > > Netra T1-105 OK > > > > T2000 still has "no compatible bridge window" about ULi ISA Bridge: > > > > [ 3.767832] pci 0001:05:02.0: can't claim BAR 0 [io 0xf010000000-0xf01000ffff]: no compatible bridge window > > >From the dmesg log at https://bugzilla.kernel.org/show_bug.cgi?id\x117191, > > pci_sun4v f0287174: PCI host bridge to bus 0001:02 > pci_bus 0001:02: root bus resource [io 0xf010000000-0xf01fffffff] (bus address [0x0000-0xfffffff]) > pci 0001:05:02.0: can't claim BAR 0 [io 0xf010000000-0xf01000ffff]: no compatible bridge window > > BAR 0 could potentially be valid, if the intermediate bridge windows > were set up correctly. But from the lspci: > > 0001:02:00.0 PCI bridge: PEX 8532 Upstream Port > Bus: primary\x02, secondary\x03, subordinate > I/O behind bridge: 00000000-00002fff > 0001:03:01.0 PCI bridge: PEX 8532 Downstream Port > Bus: primary\x03, secondary\x04, subordinate\x06 > I/O behind bridge: 00000000-00000fff > 0001:04:00.0 PCI bridge: PCIe to PCI/PCI-X Bridge > Bus: primary\x04, secondary\x05, subordinate\x05 > I/O behind bridge: 00000000-00000fff > 0001:05:02.0 ISA bridge: ULi M1533/M1535/M1543 PCI to ISA Bridge > Region 0: [virtual] I/O ports at f010000000 [sizedK] > > (lspci normally shows the CPU addresses, but it looks like it's showing > bus addresses here (except for the 0001:05:02.0 I/O BAR). That might > be something we should sort out at some point. I know sparc does > things differently in that area.) > > But either way, the 0001:04:00.0 I/O aperture is only 4K in size, and > apparently OF is telling us the ISA bridge has a 64K I/O BAR, so that > explains the "no compatible bridge window" message. We can't fit a > 64K BAR in a 4K window. > > Do you know if there's an ISA device behind that bridge? If there > is, and it only requires I/O ports in the 0-0xfff range, it probably > still works in spite of the warning. prtconf shows from OF that a serial port is there: Node 0xf02991b8 ignore-cd: reg: 00000000.000003f8.00000008 interrupts: 00000001 compatible: 'su16550' + 'su' device_type: 'serial' name: 'serial' > But if it needs anything above 0xfff, or if we decided to be "smart" > and not enable I/O on the bridge because we think the I/O BAR is > invalid, it wouldn't work. > > > V245 still has "no compatible bridge window" about ULI ISA Bridge: > > > > [ 4.522892] pci 0000:05:1e.0: can't claim BAR 0 [io 0x7f810000000-0x7f810000fff]: no compatible bridge window > > Again from https://bugzilla.kernel.org/show_bug.cgi?id\x117191, > > fire f0068b8c: PCI host bridge to bus 0000:02 > pci_bus 0000:02: root bus resource [io 0x7f810000000-0x7f81fffffff] (bus address [0x0000-0xfffffff]) > pci 0000:05:1e.0: can't claim BAR 0 [io 0x7f810000000-0x7f810000fff]: no compatible bridge window > > 0000:04:00.0 PCI bridge: ULi M5249 HTT to PCI Bridge > Bus: primary\x04, secondary\x05, subordinate\x05 > I/O behind bridge: 00001000-00001fff > Memory behind bridge: 00200000-03ffffff > 0000:05:1c.0 ULi USB 1.1 Controller [OHCI] > Region 0: Memory at 01000000 (32-bit, non-prefetchable) [size\x16M] > 0000:05:1c.1 ULi USB 1.1 Controller [OHCI] > Region 0: Memory at 02000000 (32-bit, non-prefetchable) [size\x16M] > 0000:05:1c.3 ULi USB 2.0 Controller [EHCI] > Region 0: Memory at 00200000 (32-bit, non-prefetchable) [size=8K] > 0000:05:1e.0 ISA bridge: ULi M1575 South Bridge > Region 0: [virtual] I/O ports at 7f810000000 [size=4K] > 0000:05:1f.0 ULi M5229 IDE > Region 0: I/O ports at 1040 [sized] > Region 1: I/O ports at 1080 [sized] > Region 2: I/O ports at 10c0 [sized] > Region 3: I/O ports at 1100 [sized] > Region 4: I/O ports at 1000 [sized] > > The 0000:05:1e.0 I/O BAR (BAR 0) contains 0 (at least according to > OF). This is clearly invalid because the bridge at 0000:04:00.0 will > never route anything to bus 05 with an I/O bus address of 0, so > nothing behind the 05:1e.0 ISA bridge should work. > > If you still have the v4.18-rc1 logs from these boxes, would you mind > attaching them to the bugzilla? Found 4.17.0 and 4.18-rc2+git dmesgs for both T2000 and V245, attached there. -- Meelis Roos (mroos@linux.ee) ^ permalink raw reply [flat|nested] 40+ messages in thread
end of thread, other threads:[~2018-07-06 19:49 UTC | newest] Thread overview: 40+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2018-04-08 18:44 sparc64 PCI BAR allocation is still problematic Meelis Roos 2018-04-08 18:44 ` Meelis Roos 2018-04-08 21:21 ` David Miller 2018-04-08 21:21 ` David Miller 2018-04-09 3:00 ` Sinan Kaya 2018-04-09 3:00 ` Sinan Kaya 2018-04-09 10:47 ` Meelis Roos 2018-04-09 10:47 ` Meelis Roos 2018-04-09 3:23 ` Bjorn Helgaas 2018-04-09 3:23 ` Bjorn Helgaas 2018-04-09 14:30 ` Meelis Roos 2018-04-09 14:30 ` Meelis Roos 2018-04-10 17:34 ` Bjorn Helgaas 2018-04-10 17:34 ` Bjorn Helgaas 2018-04-10 18:45 ` Meelis Roos 2018-04-10 18:45 ` Meelis Roos 2018-04-10 18:56 ` Bjorn Helgaas 2018-04-10 18:56 ` Bjorn Helgaas 2018-04-11 7:59 ` Meelis Roos 2018-04-11 7:59 ` Meelis Roos 2018-04-11 13:33 ` Bjorn Helgaas 2018-04-11 13:33 ` Bjorn Helgaas 2018-04-11 14:40 ` Meelis Roos 2018-04-11 14:40 ` Meelis Roos 2018-04-11 20:01 ` Bjorn Helgaas 2018-04-11 20:01 ` Bjorn Helgaas 2018-04-11 20:25 ` Meelis Roos 2018-04-11 20:25 ` Meelis Roos 2018-04-11 21:17 ` Bjorn Helgaas 2018-04-11 21:17 ` Bjorn Helgaas 2018-05-21 20:10 ` Bjorn Helgaas 2018-05-21 20:10 ` Bjorn Helgaas 2018-06-20 22:05 ` Bjorn Helgaas 2018-06-20 22:05 ` Bjorn Helgaas 2018-06-29 10:06 ` Meelis Roos 2018-06-29 10:06 ` Meelis Roos 2018-06-29 13:47 ` Bjorn Helgaas 2018-06-29 13:47 ` Bjorn Helgaas 2018-07-06 19:49 ` Meelis Roos 2018-07-06 19:49 ` Meelis Roos
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.