Message ID | 20221130215544.28497-1-rdunlap@infradead.org (mailing list archive) |
---|---|
State | Accepted, archived |
Headers | show |
Series | [1/2] fbdev: geode: don't build on UML | expand |
On 11/30/22 22:55, Randy Dunlap wrote: > The geode fbdev driver uses struct cpuinfo fields that are not present > on ARCH=um, so don't allow this driver to be built on UML. > > Prevents these build errors: > > In file included from ../arch/x86/include/asm/olpc.h:7:0, > from ../drivers/mfd/cs5535-mfd.c:17: > ../arch/x86/include/asm/geode.h: In function ‘is_geode_gx’: > ../arch/x86/include/asm/geode.h:16:24: error: ‘struct cpuinfo_um’ has no member named ‘x86_vendor’ > return ((boot_cpu_data.x86_vendor == X86_VENDOR_NSC) && > ../arch/x86/include/asm/geode.h:16:39: error: ‘X86_VENDOR_NSC’ undeclared (first use in this function); did you mean ‘X86_VENDOR_ANY’? > return ((boot_cpu_data.x86_vendor == X86_VENDOR_NSC) && > ../arch/x86/include/asm/geode.h:17:17: error: ‘struct cpuinfo_um’ has no member named ‘x86’ > (boot_cpu_data.x86 == 5) && > ../arch/x86/include/asm/geode.h:18:17: error: ‘struct cpuinfo_um’ has no member named ‘x86_model’ > (boot_cpu_data.x86_model == 5)); > ../arch/x86/include/asm/geode.h: In function ‘is_geode_lx’: > ../arch/x86/include/asm/geode.h:23:24: error: ‘struct cpuinfo_um’ has no member named ‘x86_vendor’ > return ((boot_cpu_data.x86_vendor == X86_VENDOR_AMD) && > ../arch/x86/include/asm/geode.h:23:39: error: ‘X86_VENDOR_AMD’ undeclared (first use in this function); did you mean ‘X86_VENDOR_ANY’? > return ((boot_cpu_data.x86_vendor == X86_VENDOR_AMD) && > ../arch/x86/include/asm/geode.h:24:17: error: ‘struct cpuinfo_um’ has no member named ‘x86’ > (boot_cpu_data.x86 == 5) && > ../arch/x86/include/asm/geode.h:25:17: error: ‘struct cpuinfo_um’ has no member named ‘x86_model’ > (boot_cpu_data.x86_model == 10)); > > Fixes: 68f5d3f3b654 ("um: add PCI over virtio emulation driver") > Signed-off-by: Randy Dunlap <rdunlap@infradead.org> > Cc: Johannes Berg <johannes@sipsolutions.net> > Cc: Richard Weinberger <richard@nod.at> > Cc: linux-um@lists.infradead.org > Cc: Daniel Vetter <daniel@ffwll.ch> > Cc: Helge Deller <deller@gmx.de> > Cc: linux-fbdev@vger.kernel.org > Cc: dri-devel@lists.freedesktop.org > Cc: Andres Salomon <dilinger@queued.net> > Cc: linux-geode@lists.infradead.org applied. Thanks! Helge > --- > drivers/video/fbdev/geode/Kconfig | 1 + > 1 file changed, 1 insertion(+) > > diff -- a/drivers/video/fbdev/geode/Kconfig b/drivers/video/fbdev/geode/Kconfig > --- a/drivers/video/fbdev/geode/Kconfig > +++ b/drivers/video/fbdev/geode/Kconfig > @@ -5,6 +5,7 @@ > config FB_GEODE > bool "AMD Geode family framebuffer support" > depends on FB && PCI && (X86_32 || (X86 && COMPILE_TEST)) > + depends on !UML > help > Say 'Y' here to allow you to select framebuffer drivers for > the AMD Geode family of processors.
diff -- a/drivers/video/fbdev/geode/Kconfig b/drivers/video/fbdev/geode/Kconfig --- a/drivers/video/fbdev/geode/Kconfig +++ b/drivers/video/fbdev/geode/Kconfig @@ -5,6 +5,7 @@ config FB_GEODE bool "AMD Geode family framebuffer support" depends on FB && PCI && (X86_32 || (X86 && COMPILE_TEST)) + depends on !UML help Say 'Y' here to allow you to select framebuffer drivers for the AMD Geode family of processors.
The geode fbdev driver uses struct cpuinfo fields that are not present on ARCH=um, so don't allow this driver to be built on UML. Prevents these build errors: In file included from ../arch/x86/include/asm/olpc.h:7:0, from ../drivers/mfd/cs5535-mfd.c:17: ../arch/x86/include/asm/geode.h: In function ‘is_geode_gx’: ../arch/x86/include/asm/geode.h:16:24: error: ‘struct cpuinfo_um’ has no member named ‘x86_vendor’ return ((boot_cpu_data.x86_vendor == X86_VENDOR_NSC) && ../arch/x86/include/asm/geode.h:16:39: error: ‘X86_VENDOR_NSC’ undeclared (first use in this function); did you mean ‘X86_VENDOR_ANY’? return ((boot_cpu_data.x86_vendor == X86_VENDOR_NSC) && ../arch/x86/include/asm/geode.h:17:17: error: ‘struct cpuinfo_um’ has no member named ‘x86’ (boot_cpu_data.x86 == 5) && ../arch/x86/include/asm/geode.h:18:17: error: ‘struct cpuinfo_um’ has no member named ‘x86_model’ (boot_cpu_data.x86_model == 5)); ../arch/x86/include/asm/geode.h: In function ‘is_geode_lx’: ../arch/x86/include/asm/geode.h:23:24: error: ‘struct cpuinfo_um’ has no member named ‘x86_vendor’ return ((boot_cpu_data.x86_vendor == X86_VENDOR_AMD) && ../arch/x86/include/asm/geode.h:23:39: error: ‘X86_VENDOR_AMD’ undeclared (first use in this function); did you mean ‘X86_VENDOR_ANY’? return ((boot_cpu_data.x86_vendor == X86_VENDOR_AMD) && ../arch/x86/include/asm/geode.h:24:17: error: ‘struct cpuinfo_um’ has no member named ‘x86’ (boot_cpu_data.x86 == 5) && ../arch/x86/include/asm/geode.h:25:17: error: ‘struct cpuinfo_um’ has no member named ‘x86_model’ (boot_cpu_data.x86_model == 10)); Fixes: 68f5d3f3b654 ("um: add PCI over virtio emulation driver") Signed-off-by: Randy Dunlap <rdunlap@infradead.org> Cc: Johannes Berg <johannes@sipsolutions.net> Cc: Richard Weinberger <richard@nod.at> Cc: linux-um@lists.infradead.org Cc: Daniel Vetter <daniel@ffwll.ch> Cc: Helge Deller <deller@gmx.de> Cc: linux-fbdev@vger.kernel.org Cc: dri-devel@lists.freedesktop.org Cc: Andres Salomon <dilinger@queued.net> Cc: linux-geode@lists.infradead.org --- drivers/video/fbdev/geode/Kconfig | 1 + 1 file changed, 1 insertion(+)