# --- T2-COPYRIGHT-NOTE-BEGIN ---
# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
# 
# T2 SDE: package/.../linux26/12-conf-hacks.patch
# Copyright (C) 2004 - 2006 The T2 SDE Project
# Copyright (C) 1998 - 2003 Clifford Wolf
# 
# More information can be found in the files COPYING and README.
# 
# This patch file is dual-licensed. It is available under the license the
# patched project is licensed under, as long as it is an OpenSource license
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms
# of the GNU General Public License as published by the Free Software
# Foundation; either version 2 of the License, or (at your option) any later
# version.
# --- T2-COPYRIGHT-NOTE-END ---

Set all unset options to module. Needed by the T2 / ROCK Linux kernel
configuration.

Initally written by Clifford Wold <clifford@clifford.at> and adapted
for various new 2.5/2.6 kernels by Rene Rebe <rene@exactcode.de>.
 
--- ./scripts/kconfig/Makefile.orig	2006-03-19 19:38:46.080184500 +0100
+++ ./scripts/kconfig/Makefile	2006-03-19 20:01:55.859040250 +0100
@@ -2,7 +2,7 @@
 # Kernel configuration targets
 # These targets are used from top-level makefile
 
-PHONY += oldconfig xconfig gconfig menuconfig config silentoldconfig update-po-config
+PHONY += oldconfig xconfig gconfig menuconfig config silentoldconfig no2modconfig update-po-config
 
 xconfig: $(obj)/qconf
 	$< arch/$(ARCH)/Kconfig
@@ -56,6 +56,9 @@
 allmodconfig: $(obj)/conf
 	$< -m arch/$(ARCH)/Kconfig
 
+no2modconfig: scripts/kconfig/conf
+	$< -M arch/$(ARCH)/Kconfig
+
 defconfig: $(obj)/conf
 ifeq ($(KBUILD_DEFCONFIG),)
 	$< -d arch/$(ARCH)/Kconfig
@@ -77,6 +80,7 @@
 	@echo  '  randconfig	  - New config with random answer to all options'
 	@echo  '  defconfig	  - New config with default answer to all options'
 	@echo  '  allmodconfig	  - New config selecting modules when possible'
+	@echo  '  no2modconfig    - New config selecting modules for disabled options'
 	@echo  '  allyesconfig	  - New config where all options are accepted with yes'
 	@echo  '  allnoconfig	  - New config where all options are answered with no'
 
--- linux-2.6.17/scripts/kconfig/conf.c	2006-06-18 03:49:35.000000000 +0200
+++ linux26.macbook/scripts/kconfig/conf.c	2006-07-22 11:57:17.000000000 +0200
@@ -21,6 +21,7 @@
 	ask_all,
 	ask_new,
 	ask_silent,
+	set_no2mod,
 	set_default,
 	set_yes,
 	set_mod,
@@ -83,6 +84,15 @@
 	}
 
 	switch (input_mode) {
+	case set_no2mod:
+		if (type == S_TRISTATE &&
+			sym_get_tristate_value(sym) == no) {
+			fprintf(stderr, "Setting %s to 'm'.\n", sym->name);
+			line[0] = 'm';
+			line[1] = '\n';
+			line[2] = 0;
+			break;
+		}
 	case set_no:
 	case set_mod:
 	case set_yes:
@@ -372,6 +382,7 @@
 			break;
 		case set_random:
 			def = (random() % cnt) + 1;
+		case set_no2mod:
 		case set_default:
 		case set_yes:
 		case set_mod:
@@ -523,6 +534,9 @@
 		case 'm':
 			input_mode = set_mod;
 			break;
+		case 'M':
+			input_mode = set_no2mod;
+			break;
 		case 'y':
 			input_mode = set_yes;
 			break;
@@ -565,6 +579,7 @@
 		}
 	case ask_all:
 	case ask_new:
+	case set_no2mod:
 		conf_read(NULL);
 		break;
 	case set_no: