On 1/8/19, Paul Menzel <pmenzel@xxxxxxxxxxxxx> wrote: > Dear Maarten, > > > Thank you very much for the quick response. > > On 01/08/19 16:37, Maarten Lankhorst wrote: >> Op 08-01-2019 om 16:07 schreef Paul Menzel: > >>> Building Linux 5.0-rc1 fails with the errors below. Please find the >>> configuration file attached. >>> >>> ``` >>> $ make -j120 >>> […] >>> drivers/gpu/vga/vgaarb.c: In function ‘__vga_tryget’: >>> drivers/gpu/vga/vgaarb.c:286:14: error: ‘PCI_VGA_STATE_CHANGE_DECODES’ >>> undeclared (first use in this function); did you mean >>> ‘PCI_SUBTRACTIVE_DECODE’? >>> flags |= PCI_VGA_STATE_CHANGE_DECODES; >>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ >>> PCI_SUBTRACTIVE_DECODE >>> drivers/gpu/vga/vgaarb.c:286:14: note: each undeclared identifier is >>> reported only once for each function it appears in >>> CC [M] net/netfilter/xt_realm.o >>> CC drivers/hid/hid-cherry.o >>> drivers/gpu/vga/vga_switcheroo.c: In function >>> ‘vga_switcheroo_runtime_suspend’: >>> drivers/gpu/vga/vga_switcheroo.c:1053:2: error: implicit declaration of >>> function ‘pci_bus_set_current_state’; did you mean ‘__set_current_state’? >>> [-Werror=implicit-function-declaration] >>> pci_bus_set_current_state(pdev->bus, PCI_D3cold); >>> ^~~~~~~~~~~~~~~~~~~~~~~~~ >>> __set_current_state >>> drivers/gpu/vga/vgaarb.c:291:13: error: ‘PCI_VGA_STATE_CHANGE_BRIDGE’ >>> undeclared (first use in this function); did you mean >>> ‘PCI_VGA_STATE_CHANGE_DECODES’? >>> flags |= PCI_VGA_STATE_CHANGE_BRIDGE; >>> ^~~~~~~~~~~~~~~~~~~~~~~~~~~ >>> PCI_VGA_STATE_CHANGE_DECODES >>> CC fs/reiserfs/dir.o >>> LD [M] net/tipc/tipc.o >>> drivers/gpu/vga/vga_switcheroo.c: In function >>> ‘vga_switcheroo_runtime_resume’: >>> drivers/gpu/vga/vga_switcheroo.c:1067:2: error: implicit declaration of >>> function ‘pci_wakeup_bus’; did you mean ‘__wake_up_bit’? >>> [-Werror=implicit-function-declaration] >>> pci_wakeup_bus(pdev->bus); >>> ^~~~~~~~~~~~~~ >>> __wake_up_bit >>> drivers/gpu/vga/vgaarb.c:293:3: error: implicit declaration of function >>> ‘pci_set_vga_state’; did you mean ‘pci_set_power_state’? >>> [-Werror=implicit-function-declaration] >>> pci_set_vga_state(conflict->pdev, false, pci_bits, flags); >>> ^~~~~~~~~~~~~~~~~ >>> pci_set_power_state >>> CC fs/read_write.o >>> CC drivers/hid/hid-chicony.o >>> CC drivers/hid/hid-cypress.o >>> drivers/gpu/vga/vgaarb.c: In function ‘vga_arb_device_init’: >>> drivers/gpu/vga/vgaarb.c:1495:25: error: ‘pci_bus_type’ undeclared (first >>> use in this function); did you mean ‘pci_pcie_type’? >>> bus_register_notifier(&pci_bus_type, &pci_notifier); >>> ^~~~~~~~~~~~ >>> pci_pcie_type >>> cc1: some warnings being treated as errors >>> make[3]: *** [scripts/Makefile.build:277: drivers/gpu/vga/vgaarb.o] Error >>> 1 >>> make[3]: *** Waiting for unfinished jobs.... >>> […] >>> ``` > >> WARNING: unmet direct dependencies detected for VGA_ARB >> Depends on [n]: HAS_IOMEM [=y] && PCI [=n] && !S390 >> Selected by [y]: >> - VGA_SWITCHEROO [=y] && HAS_IOMEM [=y] && X86 [=y] && ACPI [=y] >> >> So I guess you need to enable PCI, probably not a common config you're >> using. :) >> >> Especially since you selected EXPERT. > > We have the attached defconfig, which is then integrated using > `make olddefconfig`. > >> Oh well, apply this with git am --scissors? >> -----8<---- >> When configuring the kernel without PCI we can still enable VGA >> switcheroo, >> which is not possible because VGA_ARB cannot be selected. >> >> Remove this by depending on PCI for !S390. >> >> Reported-by: Paul Menzel <pmenzel@xxxxxxxxxxxxx> >> Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx> >> --- >> diff --git a/drivers/gpu/vga/Kconfig b/drivers/gpu/vga/Kconfig >> index b677e5d524e6..ef5671475870 100644 >> --- a/drivers/gpu/vga/Kconfig >> +++ b/drivers/gpu/vga/Kconfig >> @@ -21,6 +21,7 @@ config VGA_SWITCHEROO >> bool "Laptop Hybrid Graphics - GPU switching support" >> depends on X86 >> depends on ACPI >> + depends on (PCI && !S390) # For VGA_ARB >> select VGA_ARB >> help >> Many laptops released in 2008/9/10 have two GPUs with a multiplexer > > Is this an effect of commit eb01d42a (PCI: consolidate PCI config entry in > drivers/pci) as the `default y` is missing now? > See this : https://patchwork.kernel.org/patch/10749209/ This change is about to go in. > > Kind regards, > > Paul >