# --- SDE-COPYRIGHT-NOTE-BEGIN ---
# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
#
# Filename: package/.../linux26mm/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.
# --- SDE-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.0-test4/scripts/kconfig/conf.c	2003-08-23 01:59:45.000000000 +0200
+++ linux-2.6.0-test4-rock/scripts/kconfig/conf.c	2003-08-23 16:48:07.000000000 +0200
@@ -20,6 +20,7 @@
 	ask_all,
 	ask_new,
 	ask_silent,
+	ask_no2mod,
 	set_default,
 	set_yes,
 	set_mod,
@@ -82,6 +83,15 @@
 	}
 
 	switch (input_mode) {
+	case ask_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:
@@ -354,6 +364,7 @@
 				break;
 			}
 			check_stdin();
+		case ask_no2mod:
 		case ask_all:
 			fflush(stdout);
 			fgets(line, 128, stdin);
@@ -523,6 +534,9 @@
 		case 'm':
 			input_mode = set_mod;
 			break;
+		case 'M':
+			input_mode = ask_no2mod;
+			break;
 		case 'y':
 			input_mode = set_yes;
 			break;
@@ -565,6 +579,7 @@
 		}
 	case ask_all:
 	case ask_new:
+	case ask_no2mod:
 		conf_read(NULL);
 		break;
 	case set_no: