OLPC + Geode fixups
Subsystems (3)
cover OLPC + Geode fixups
The following two patches are in support of the OLPC project. I sent these patches before, but somewhere along the line I failed to correctly follow up.
The first one does some PCI ID cleanup (which is always nice), and the second allows one to disable VGA probing, which is essential when using the OLPC LinuxBIOS which doesn't have VGA/VESA support (yay!).
Signature · 4 lines
Jordan Crouse Senior Linux Engineer Advanced Micro Devices, Inc. <www.amd.com/embeddedprocessors>
PATCH 1/2 GEODE: Update and fixup the PCI IDs for the CS5535
From: Jordan Crouse <[email protected]>
Clean up redundant and poorly worded PCI IDs
---
drivers/video/geode/gxfb_core.c | 2 +- include/linux/pci_ids.h | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-)
drivers/video/geode/gxfb_core.c +1 -1
@@ -380,7 +380,7 @@ static void gxfb_remove(struct pci_dev * }static struct pci_device_id gxfb_id_table[] = { - {PCI_VENDOR_ID_NS ,PCI_DEVICE_ID_NS_CS5535_VIDEO , + {PCI_VENDOR_ID_NS ,PCI_DEVICE_ID_NS_GX_VIDEO ,PCI_ANY_ID ,PCI_ANY_ID ,PCI_BASE_CLASS_DISPLAY <<16 ,0xff0000 ,0 }, {0 , }
include/linux/pci_ids.h +2 -3
@@ -390,7 +390,7 @@ #define PCI_DEVICE_ID_NS_CS5535_ISA 0x00#define PCI_DEVICE_ID_NS_CS5535_IDE 0x002d#define PCI_DEVICE_ID_NS_CS5535_AUDIO 0x002e#define PCI_DEVICE_ID_NS_CS5535_USB 0x002f -#define PCI_DEVICE_ID_NS_CS5535_VIDEO 0x0030 +#define PCI_DEVICE_ID_NS_GX_VIDEO 0x0030#define PCI_DEVICE_ID_NS_SATURN 0x0035#define PCI_DEVICE_ID_NS_SCx200_BRIDGE 0x0500#define PCI_DEVICE_ID_NS_SCx200_SMI 0x0501
@@ -403,8 +403,7 @@ #define PCI_DEVICE_ID_NS_SC1100_SMI 0x05#define PCI_DEVICE_ID_NS_SC1100_XBUS 0x0515#define PCI_DEVICE_ID_NS_87410 0xd001 -#define PCI_DEVICE_ID_NS_CS5535_HOST_BRIDGE 0x0028 -#define PCI_DEVICE_ID_NS_CS5535_ISA_BRIDGE 0x002b +#define PCI_DEVICE_ID_NS_GX_HOST_BRIDGE 0x0028#define PCI_VENDOR_ID_TSENG 0x100c#define PCI_DEVICE_ID_TSENG_W32P_2 0x3202
PATCH 2/2 Add a configuration option to avoid automatically probing VGA
In reply to Jordan CrouseFrom: Jordan Crouse <[email protected]>
Some x86 implementations don't have a built in VGA / VESA BIOS. This configuration option (enabled when EMBEDDED is selected), allows us to avoid probing the VGA hardware during boot. This option also disables the VGA console option, which depends heavily on the VGA / VESA probing.
---
arch/i386/Kconfig | 9 +++++++++ arch/i386/boot/setup.S | 5 +++++ drivers/video/Kconfig | 6 +++--- drivers/video/console/Kconfig | 4 ++-- 4 files changed, 19 insertions(+), 5 deletions(-)
arch/i386/Kconfig +9 -0
@@ -735,6 +735,15 @@ config SECCOMP If unsure, say Y. Only embedded should say N here. +config VGA_NOPROBE + bool "Don't probe VGA at boot" if EMBEDDED + default n + help + Saying Y here will cause the kernel to not probe VGA at boot time. + This will break everything that depends on the probed screen + data. Say N here unless you are absolutely sure this is what you + want. + source kernel/Kconfig.hz config KEXEC
arch/i386/boot/setup.S +5 -0
@@ -394,10 +394,13 @@ # Set the keyboard repeat rate to the ma xorw %bx, %bx int $0x16 +#ifndef CONFIG_VGA_NOPROBE + # Check for video adapter and its parameters and allow the # user to browse video modes. call video # NOTE: we need %ds pointing # to bootsector +#endif # Get hd0 data... xorw %ax, %ax
@@ -1006,9 +1009,11 @@ gdt_48: .word gdt_end - gdt - 1 # gdt limit .word 0, 0 # gdt base (filled in later) +#ifndef CONFIG_VGA_NOPROBE # Include video setup & detection code #include "video.S" +#endif # Setup signature -- must be last setup_sig1: .word SIG1
drivers/video/Kconfig +3 -3
@@ -540,7 +540,7 @@ config FB_TGA config FB_VESA bool "VESA VGA graphics support" - depends on (FB = y) && X86 + depends on (FB = y) && X86 && !VGA_NOPROBE select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT
@@ -828,7 +828,7 @@ config FB_I810_I2C config FB_INTEL tristate "Intel 830M/845G/852GM/855GM/865G support (EXPERIMENTAL)" - depends on FB && EXPERIMENTAL && PCI && X86 + depends on FB && EXPERIMENTAL && PCI && X86 && !VGA_NOPROBE select AGP select AGP_INTEL select FB_MODE_HELPERS
@@ -1166,7 +1166,7 @@ config FB_SAVAGE_ACCEL config FB_SIS tristate "SiS/XGI display support" - depends on FB && PCI + depends on FB && PCI && !VGA_NOPROBE select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT
drivers/video/console/Kconfig +2 -2
@@ -5,8 +5,8 @@ # menu "Console display driver support" config VGA_CONSOLE - bool "VGA text console" if EMBEDDED || !X86 - depends on !ARCH_ACORN && !ARCH_EBSA110 && !4xx && !8xx && !SPARC && !M68K && !PARISC && !FRV && !ARCH_VERSATILE + bool "VGA text console" if (EMBEDDED || !X86) + depends on !ARCH_ACORN && !ARCH_EBSA110 && !4xx && !8xx && !SPARC && !M68K && !PARISC && !FRV && !ARCH_VERSATILE && !VGA_NOPROBE default y help Saying Y here will allow you to use Linux in text mode through a
Quoted 2 lines · On Mon, 24 Jul 2006 10:50:46 -0600 "Jordan Crouse" <[email protected]>…
The following two patches are in support of the OLPC project. I sent these patches before, but somewhere along the line I failed to correctly follow up.
Actually I sneakily snuckgit://git.infradead.org/users/jcrouse/geode.git#linus-upstream into -mm (as git-geode.patch) a month ago - it's been there since 2.6.17-mm3.
So assuming that tree is being kept up-to-date, I don't need to do anything. Please arrange for the relevant subsystem maintainers to review the bits of your tree which affect them (as you have done) and then send a pull request to Linus at the appropriate time, cc'ing myself.
Unless there are significant bugfixes or this is a new subsystem, the appropriate time would be in the post-2.6.18 two-week merge window.
And please let me know when there are -mm-affecting changes in that git tree. Sometimes people add new branches without telling me, or they leave me carrying abandoned stuff.