Message ID | 20210223161449.5fbbdace8fea.I7b2fad8378e4fde7f26ef06a03980ae2807d81c9@changeid |
---|---|
State | Superseded |
Headers | show |
Series | PCI support for UML | expand |
Hi Johannes, On Tue, Feb 23, 2021 at 4:27 PM Johannes Berg <johannes@sipsolutions.net> wrote: > From: Johannes Berg <johannes.berg@intel.com> > > Adjust the kconfig a little to allow disabling NO_IOMEM in UML. To > make an "allyesconfig" with CONFIG_NO_IOMEM=n build, adjust a few > Kconfig things elsewhere and add dummy asm/fb.h and asm/vga.h files. > > Signed-off-by: Johannes Berg <johannes.berg@intel.com> Thanks for your patch! > --- /dev/null > +++ b/arch/um/include/asm/fb.h > @@ -0,0 +1,15 @@ > +/* SPDX-License-Identifier: GPL-2.0 */ > +#ifndef _ASM_UM_FB_H > +#define _ASM_UM_FB_H > + > +static inline void fb_pgprotect(struct file *file, struct vm_area_struct *vma, > + unsigned long off) > +{ > +} > + > +static inline int fb_is_primary_device(struct fb_info *info) > +{ > + return 0; > +} > + > +#endif /* _ASM_UM_FB_H */ > diff --git a/arch/um/include/asm/vga.h b/arch/um/include/asm/vga.h > new file mode 100644 > index 000000000000..0b0e73ccdb28 > --- /dev/null > +++ b/arch/um/include/asm/vga.h > @@ -0,0 +1,9 @@ > +/* SPDX-License-Identifier: GPL-2.0 */ > +#ifndef _ASM_UM_VGA_H > +#define _ASM_UM_VGA_H > + > +#define VGA_MAP_MEM(x, s) ((unsigned long) ioremap(x, s)) > +#define vga_readb(a) readb((u8 __iomem *)(a)) > +#define vga_writeb(v,a) writeb(v, (u8 __iomem *)(a)) > + > +#endif /* _ASM_UM_VGA_H */ Can't you just use the asm-generic versions instead? Gr{oetje,eeting}s, Geert
Hi,
> Can't you just use the asm-generic versions instead?
Hmm, yes, for fb.h and vga.h that should work, since they should never
be used. For vga.h it would be wrong since it assumes the VGA memory is
mapped into the CPU memory, but since it should never run it would still
address the compilation issues I needed this for.
So yeah, I guess we could just use the asm-generic versions of these
two.
johannes
diff --git a/arch/um/Kconfig b/arch/um/Kconfig index c3030db3325f..20b0640e01b8 100644 --- a/arch/um/Kconfig +++ b/arch/um/Kconfig @@ -26,6 +26,10 @@ config MMU default y config NO_IOMEM + bool "disable IOMEM" if EXPERT + default y + +config NO_IOPORT_MAP def_bool y config ISA diff --git a/arch/um/include/asm/fb.h b/arch/um/include/asm/fb.h new file mode 100644 index 000000000000..f8fa5a6b43b5 --- /dev/null +++ b/arch/um/include/asm/fb.h @@ -0,0 +1,15 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef _ASM_UM_FB_H +#define _ASM_UM_FB_H + +static inline void fb_pgprotect(struct file *file, struct vm_area_struct *vma, + unsigned long off) +{ +} + +static inline int fb_is_primary_device(struct fb_info *info) +{ + return 0; +} + +#endif /* _ASM_UM_FB_H */ diff --git a/arch/um/include/asm/vga.h b/arch/um/include/asm/vga.h new file mode 100644 index 000000000000..0b0e73ccdb28 --- /dev/null +++ b/arch/um/include/asm/vga.h @@ -0,0 +1,9 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef _ASM_UM_VGA_H +#define _ASM_UM_VGA_H + +#define VGA_MAP_MEM(x, s) ((unsigned long) ioremap(x, s)) +#define vga_readb(a) readb((u8 __iomem *)(a)) +#define vga_writeb(v,a) writeb(v, (u8 __iomem *)(a)) + +#endif /* _ASM_UM_VGA_H */ diff --git a/drivers/input/Kconfig b/drivers/input/Kconfig index ec0e861f185f..5baebf62df33 100644 --- a/drivers/input/Kconfig +++ b/drivers/input/Kconfig @@ -4,7 +4,6 @@ # menu "Input device support" - depends on !UML config INPUT tristate "Generic input layer (needed for keyboard, mouse, ...)" if EXPERT diff --git a/drivers/input/gameport/Kconfig b/drivers/input/gameport/Kconfig index 4761795cb49f..5a2c2fb3217d 100644 --- a/drivers/input/gameport/Kconfig +++ b/drivers/input/gameport/Kconfig @@ -4,6 +4,7 @@ # config GAMEPORT tristate "Gameport support" + depends on !UML help Gameport support is for the standard 15-pin PC gameport. If you have a joystick, gamepad, gameport card, a soundcard with a gameport diff --git a/drivers/input/joystick/Kconfig b/drivers/input/joystick/Kconfig index b080f0cfb068..6a03a1f0cd5f 100644 --- a/drivers/input/joystick/Kconfig +++ b/drivers/input/joystick/Kconfig @@ -4,6 +4,7 @@ # menuconfig INPUT_JOYSTICK bool "Joysticks/Gamepads" + depends on !UML help If you have a joystick, 6dof controller, gamepad, steering wheel, weapon control system or something like that you can say Y here diff --git a/drivers/tty/Kconfig b/drivers/tty/Kconfig index e15cd6b5bb99..26648daaaee2 100644 --- a/drivers/tty/Kconfig +++ b/drivers/tty/Kconfig @@ -12,9 +12,8 @@ if TTY config VT bool "Virtual terminal" if EXPERT - depends on !UML select INPUT - default y + default y if !UML help If you say Y here, you will get support for terminal devices with display and keyboard devices. These are called "virtual" because you @@ -78,7 +77,7 @@ config VT_CONSOLE_SLEEP config HW_CONSOLE bool - depends on VT && !UML + depends on VT default y config VT_HW_CONSOLE_BINDING diff --git a/drivers/video/console/Kconfig b/drivers/video/console/Kconfig index ee33b8ec62bb..840d9813b0bc 100644 --- a/drivers/video/console/Kconfig +++ b/drivers/video/console/Kconfig @@ -9,7 +9,7 @@ config VGA_CONSOLE bool "VGA text console" if EXPERT || !X86 depends on !4xx && !PPC_8xx && !SPARC && !M68K && !PARISC && !SUPERH && \ (!ARM || ARCH_FOOTBRIDGE || ARCH_INTEGRATOR || ARCH_NETWINDER) && \ - !ARM64 && !ARC && !MICROBLAZE && !OPENRISC && !NDS32 && !S390 + !ARM64 && !ARC && !MICROBLAZE && !OPENRISC && !NDS32 && !S390 && !UML default y help Saying Y here will allow you to use Linux in text mode through a