wok-4.x rev 886
Up: linux (2.5.25.5)
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Sat Jun 07 22:04:11 2008 +0000 (2008-06-07) |
parents | 12dc6e40feca |
children | ca68c3fca6c9 |
files | linux-acpi/receipt linux-agp/receipt linux-bluetooth/receipt linux-cramfs/receipt linux-cryptoloop/receipt linux-headers/receipt linux-ieee1394/receipt linux-ipv6/receipt linux-joystick/receipt linux-kvm/receipt linux-mwave/receipt linux-reiserfs/receipt linux-sound/receipt linux-video/receipt linux-wireless/receipt linux/receipt linux/stuff/linux-2.6.25.5-slitaz.config linux/stuff/linux-diff-2.6.25.5.u linux/stuff/linux-lzma-2.6.25.5.u linux/stuff/linux-utf8-2.6.25.5.u linux/stuff/list_modules.sh linux/stuff/modules-2.6.25.5.list |
line diff
1.1 --- a/linux-acpi/receipt Sat Jun 07 22:29:41 2008 +0000 1.2 +++ b/linux-acpi/receipt Sat Jun 07 22:04:11 2008 +0000 1.3 @@ -1,7 +1,7 @@ 1.4 # SliTaz package receipt. 1.5 1.6 PACKAGE="linux-acpi" 1.7 -VERSION="2.6.24.2" 1.8 +VERSION="2.6.25.5" 1.9 CATEGORY="base-system" 1.10 SHORT_DESC="The Linux kernel acpi modules." 1.11 MAINTAINER="pascal.bellard@slitaz.org" 1.12 @@ -14,17 +14,20 @@ 1.13 local path 1.14 path=lib/modules/$VERSION-slitaz/kernel 1.15 mkdir -p $fs/$path 1.16 + export src 1.17 + export _pkg 1.18 + $src/list_modules.sh drivers/acpi drivers/misc/thinkpad_acpi.ko.gz | \ 1.19 while read module; do 1.20 dir=$path/$(dirname $module) 1.21 [ -d $fs/$dir ] || mkdir -p $fs/$dir 1.22 cp -a $_pkg/$path/$module $fs/$dir 1.23 - done < stuff/modules-$VERSION.list 1.24 + done 1.25 } 1.26 1.27 # Post install/remove commands for Tazpkg. 1.28 post_install() 1.29 { 1.30 - depmod -a -b /$1 1.31 + depmod -a -b "$1/" $VERSION-slitaz 1.32 } 1.33 1.34 post_remove()
2.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 2.2 +++ b/linux-agp/receipt Sat Jun 07 22:04:11 2008 +0000 2.3 @@ -0,0 +1,36 @@ 2.4 +# SliTaz package receipt. 2.5 + 2.6 +PACKAGE="linux-agp" 2.7 +VERSION="2.6.25.5" 2.8 +CATEGORY="base-system" 2.9 +SHORT_DESC="The Linux kernel AGP modules." 2.10 +MAINTAINER="erjo@slitaz.org" 2.11 +WANTED="linux" 2.12 +WEB_SITE="http://www.kernel.org/" 2.13 + 2.14 +# Rules to gen a SliTaz package suitable for Tazpkg. 2.15 +genpkg_rules() 2.16 +{ 2.17 + local path 2.18 + path=lib/modules/$VERSION-slitaz/kernel 2.19 + mkdir -p $fs/$path 2.20 + export src 2.21 + export _pkg 2.22 + $src/list_modules.sh drivers/char/agp | while read module; do 2.23 + dir=$path/$(dirname $module) 2.24 + [ -d $fs/$dir ] || mkdir -p $fs/$dir 2.25 + cp -a $_pkg/$path/$module $fs/$dir 2.26 + done 2.27 +} 2.28 + 2.29 +# Post install/remove commands for Tazpkg. 2.30 +post_install() 2.31 +{ 2.32 + depmod -a -b "$1/" $VERSION-slitaz 2.33 +} 2.34 + 2.35 +post_remove() 2.36 +{ 2.37 + depmod -a $VERSION-slitaz 2.38 +} 2.39 +
3.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 3.2 +++ b/linux-bluetooth/receipt Sat Jun 07 22:04:11 2008 +0000 3.3 @@ -0,0 +1,36 @@ 3.4 +# SliTaz package receipt. 3.5 + 3.6 +PACKAGE="linux-bluetooth" 3.7 +VERSION="2.6.25.5" 3.8 +CATEGORY="base-system" 3.9 +SHORT_DESC="The Linux kernel bluetooth modules." 3.10 +MAINTAINER="pascal.bellard@slitaz.org" 3.11 +WANTED="linux" 3.12 +WEB_SITE="http://www.kernel.org/" 3.13 + 3.14 +# Rules to gen a SliTaz package suitable for Tazpkg. 3.15 +genpkg_rules() 3.16 +{ 3.17 + local path 3.18 + path=lib/modules/$VERSION-slitaz/kernel 3.19 + mkdir -p $fs/$path 3.20 + export src 3.21 + export _pkg 3.22 + $src/list_modules.sh drivers/bluetooth net/bluetooth | while read module; do 3.23 + dir=$path/$(dirname $module) 3.24 + [ -d $fs/$dir ] || mkdir -p $fs/$dir 3.25 + cp -a $_pkg/$path/$module $fs/$dir 3.26 + done 3.27 +} 3.28 + 3.29 +# Post install/remove commands for Tazpkg. 3.30 +post_install() 3.31 +{ 3.32 + depmod -a -b "$1/" $VERSION-slitaz 3.33 +} 3.34 + 3.35 +post_remove() 3.36 +{ 3.37 + depmod -a $VERSION-slitaz 3.38 +} 3.39 +
4.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 4.2 +++ b/linux-cramfs/receipt Sat Jun 07 22:04:11 2008 +0000 4.3 @@ -0,0 +1,36 @@ 4.4 +# SliTaz package receipt. 4.5 + 4.6 +PACKAGE="linux-cramfs" 4.7 +VERSION="2.6.25.5" 4.8 +CATEGORY="base-system" 4.9 +SHORT_DESC="The Linux kernel cramfs module." 4.10 +MAINTAINER="pascal.bellard@slitaz.org" 4.11 +WANTED="linux" 4.12 +WEB_SITE="http://www.kernel.org/" 4.13 + 4.14 +# Rules to gen a SliTaz package suitable for Tazpkg. 4.15 +genpkg_rules() 4.16 +{ 4.17 + local path 4.18 + path=lib/modules/$VERSION-slitaz/kernel 4.19 + mkdir -p $fs/$path 4.20 + export src 4.21 + export _pkg 4.22 + $src/list_modules.sh fs/cramfs | while read module; do 4.23 + dir=$path/$(dirname $module) 4.24 + [ -d $fs/$dir ] || mkdir -p $fs/$dir 4.25 + cp -a $_pkg/$path/$module $fs/$dir 4.26 + done 4.27 +} 4.28 + 4.29 +# Post install/remove commands for Tazpkg. 4.30 +post_install() 4.31 +{ 4.32 + depmod -a -b "$1/" $VERSION-slitaz 4.33 +} 4.34 + 4.35 +post_remove() 4.36 +{ 4.37 + depmod -a $VERSION-slitaz 4.38 +} 4.39 +
5.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 5.2 +++ b/linux-cryptoloop/receipt Sat Jun 07 22:04:11 2008 +0000 5.3 @@ -0,0 +1,37 @@ 5.4 +# SliTaz package receipt. 5.5 + 5.6 +PACKAGE="linux-cryptoloop" 5.7 +VERSION="2.6.25.5" 5.8 +CATEGORY="base-system" 5.9 +SHORT_DESC="The Linux kernel cryptoloop modules." 5.10 +MAINTAINER="pascal.bellard@slitaz.org" 5.11 +WANTED="linux" 5.12 +WEB_SITE="http://www.kernel.org/" 5.13 + 5.14 +# Rules to gen a SliTaz package suitable for Tazpkg. 5.15 +genpkg_rules() 5.16 +{ 5.17 + local path 5.18 + path=lib/modules/$VERSION-slitaz/kernel 5.19 + mkdir -p $fs/$path 5.20 + export src 5.21 + export _pkg 5.22 + $src/list_modules.sh drivers/block/cryptoloop.ko.gz crypto | \ 5.23 + while read module; do 5.24 + dir=$path/$(dirname $module) 5.25 + [ -d $fs/$dir ] || mkdir -p $fs/$dir 5.26 + cp -a $_pkg/$path/$module $fs/$dir 5.27 + done 5.28 +} 5.29 + 5.30 +# Post install/remove commands for Tazpkg. 5.31 +post_install() 5.32 +{ 5.33 + depmod -a -b "$1/" $VERSION-slitaz 5.34 +} 5.35 + 5.36 +post_remove() 5.37 +{ 5.38 + depmod -a $VERSION-slitaz 5.39 +} 5.40 +
6.1 --- a/linux-headers/receipt Sat Jun 07 22:29:41 2008 +0000 6.2 +++ b/linux-headers/receipt Sat Jun 07 22:04:11 2008 +0000 6.3 @@ -1,22 +1,13 @@ 6.4 # SliTaz package receipt. 6.5 6.6 PACKAGE="linux-headers" 6.7 -VERSION="2.6.24.2" 6.8 +VERSION="2.6.25.5" 6.9 CATEGORY="development" 6.10 SHORT_DESC="The Linux Kernel headers files for devel." 6.11 MAINTAINER="pascal.bellard@slitaz.org" 6.12 WANTED="linux" 6.13 WEB_SITE="http://www.kernel.org/" 6.14 6.15 -# Rules to configure and make the package. 6.16 -compile_rules() 6.17 -{ 6.18 - cd $src 6.19 - make mrproper 6.20 - mkdir -p _pkg/usr 6.21 - make INSTALL_HDR_PATH=$PWD/_pkg/usr headers_install 6.22 -} 6.23 - 6.24 # Rules to gen a SliTaz package suitable for Tazpkg. 6.25 genpkg_rules() 6.26 {
7.1 --- a/linux-ieee1394/receipt Sat Jun 07 22:29:41 2008 +0000 7.2 +++ b/linux-ieee1394/receipt Sat Jun 07 22:04:11 2008 +0000 7.3 @@ -1,7 +1,7 @@ 7.4 # SliTaz package receipt. 7.5 7.6 PACKAGE="linux-ieee1394" 7.7 -VERSION="2.6.24.2" 7.8 +VERSION="2.6.25.5" 7.9 CATEGORY="base-system" 7.10 SHORT_DESC="The Linux kernel ieee1394 modules." 7.11 MAINTAINER="pascal.bellard@slitaz.org" 7.12 @@ -14,21 +14,23 @@ 7.13 local path 7.14 path=lib/modules/$VERSION-slitaz/kernel 7.15 mkdir -p $fs/$path 7.16 - while read module; do 7.17 + export src 7.18 + export _pkg 7.19 + $src/list_modules.sh drivers/ieee1394 | while read module; do 7.20 dir=$path/$(dirname $module) 7.21 [ -d $fs/$dir ] || mkdir -p $fs/$dir 7.22 cp -a $_pkg/$path/$module $fs/$dir 7.23 - done < stuff/modules-$VERSION.list 7.24 + done 7.25 } 7.26 7.27 # Post install/remove commands for Tazpkg. 7.28 post_install() 7.29 { 7.30 - depmod -a -b /$1 7.31 + depmod -a -b "$1/" $VERSION-slitaz 7.32 } 7.33 7.34 post_remove() 7.35 { 7.36 - depmod -a 7.37 + depmod -a $VERSION-slitaz 7.38 } 7.39
8.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 8.2 +++ b/linux-ipv6/receipt Sat Jun 07 22:04:11 2008 +0000 8.3 @@ -0,0 +1,36 @@ 8.4 +# SliTaz package receipt. 8.5 + 8.6 +PACKAGE="linux-ipv6" 8.7 +VERSION="2.6.25.5" 8.8 +CATEGORY="base-system" 8.9 +SHORT_DESC="The Linux kernel ipv6 modules." 8.10 +MAINTAINER="pascal.bellard@slitaz.org" 8.11 +WANTED="linux" 8.12 +WEB_SITE="http://www.kernel.org/" 8.13 + 8.14 +# Rules to gen a SliTaz package suitable for Tazpkg. 8.15 +genpkg_rules() 8.16 +{ 8.17 + local path 8.18 + path=lib/modules/$VERSION-slitaz/kernel 8.19 + mkdir -p $fs/$path 8.20 + export src 8.21 + export _pkg 8.22 + $src/list_modules.sh net/ipv6 | while read module; do 8.23 + dir=$path/$(dirname $module) 8.24 + [ -d $fs/$dir ] || mkdir -p $fs/$dir 8.25 + cp -a $_pkg/$path/$module $fs/$dir 8.26 + done 8.27 +} 8.28 + 8.29 +# Post install/remove commands for Tazpkg. 8.30 +post_install() 8.31 +{ 8.32 + depmod -a -b "$1/" $VERSION-slitaz 8.33 +} 8.34 + 8.35 +post_remove() 8.36 +{ 8.37 + depmod -a $VERSION-slitaz 8.38 +} 8.39 +
9.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 9.2 +++ b/linux-joystick/receipt Sat Jun 07 22:04:11 2008 +0000 9.3 @@ -0,0 +1,36 @@ 9.4 +# SliTaz package receipt. 9.5 + 9.6 +PACKAGE="linux-joystick" 9.7 +VERSION="2.6.25.5" 9.8 +CATEGORY="base-system" 9.9 +SHORT_DESC="The Linux kernel joystick modules." 9.10 +MAINTAINER="pascal.bellard@slitaz.org" 9.11 +WANTED="linux" 9.12 +WEB_SITE="http://www.kernel.org/" 9.13 + 9.14 +# Rules to gen a SliTaz package suitable for Tazpkg. 9.15 +genpkg_rules() 9.16 +{ 9.17 + local path 9.18 + path=lib/modules/$VERSION-slitaz/kernel 9.19 + mkdir -p $fs/$path 9.20 + export src 9.21 + export _pkg 9.22 + $src/list_modules.sh drivers/input/joystick | while read module; do 9.23 + dir=$path/$(dirname $module) 9.24 + [ -d $fs/$dir ] || mkdir -p $fs/$dir 9.25 + cp -a $_pkg/$path/$module $fs/$dir 9.26 + done 9.27 +} 9.28 + 9.29 +# Post install/remove commands for Tazpkg. 9.30 +post_install() 9.31 +{ 9.32 + depmod -a -b "$1/" $VERSION-slitaz 9.33 +} 9.34 + 9.35 +post_remove() 9.36 +{ 9.37 + depmod -a $VERSION-slitaz 9.38 +} 9.39 +
10.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 10.2 +++ b/linux-kvm/receipt Sat Jun 07 22:04:11 2008 +0000 10.3 @@ -0,0 +1,37 @@ 10.4 +# SliTaz package receipt. 10.5 + 10.6 +PACKAGE="linux-kvm" 10.7 +VERSION="2.6.25.5" 10.8 +CATEGORY="base-system" 10.9 +SHORT_DESC="The Linux kernel kvm and virtio modules." 10.10 +MAINTAINER="pascal.bellard@slitaz.org" 10.11 +WANTED="linux" 10.12 +WEB_SITE="http://www.kernel.org/" 10.13 + 10.14 +# Rules to gen a SliTaz package suitable for Tazpkg. 10.15 +genpkg_rules() 10.16 +{ 10.17 + local path 10.18 + path=lib/modules/$VERSION-slitaz/kernel 10.19 + mkdir -p $fs/$path 10.20 + export src 10.21 + export _pkg 10.22 + $src/list_modules.sh arch/x86/kvm drivers/virtio drivers/lguest | \ 10.23 + while read module; do 10.24 + dir=$path/$(dirname $module) 10.25 + [ -d $fs/$dir ] || mkdir -p $fs/$dir 10.26 + cp -a $_pkg/$path/$module $fs/$dir 10.27 + done 10.28 +} 10.29 + 10.30 +# Post install/remove commands for Tazpkg. 10.31 +post_install() 10.32 +{ 10.33 + depmod -a -b "$1/" $VERSION-slitaz 10.34 +} 10.35 + 10.36 +post_remove() 10.37 +{ 10.38 + depmod -a $VERSION-slitaz 10.39 +} 10.40 +
11.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 11.2 +++ b/linux-mwave/receipt Sat Jun 07 22:04:11 2008 +0000 11.3 @@ -0,0 +1,36 @@ 11.4 +# SliTaz package receipt. 11.5 + 11.6 +PACKAGE="linux-mwave" 11.7 +VERSION="2.6.25.5" 11.8 +CATEGORY="base-system" 11.9 +SHORT_DESC="The Linux kernel ACP Modem driver module (for IBM Thinkpad)" 11.10 +MAINTAINER="pascal.bellard@slitaz.org" 11.11 +WANTED="linux" 11.12 +WEB_SITE="http://www.kernel.org/" 11.13 + 11.14 +# Rules to gen a SliTaz package suitable for Tazpkg. 11.15 +genpkg_rules() 11.16 +{ 11.17 + local path 11.18 + path=lib/modules/$VERSION-slitaz/kernel 11.19 + mkdir -p $fs/$path 11.20 + export src 11.21 + export _pkg 11.22 + $src/list_modules.sh drivers/char/mwave | while read module; do 11.23 + dir=$path/$(dirname $module) 11.24 + [ -d $fs/$dir ] || mkdir -p $fs/$dir 11.25 + cp -a $_pkg/$path/$module $fs/$dir 11.26 + done 11.27 +} 11.28 + 11.29 +# Post install/remove commands for Tazpkg. 11.30 +post_install() 11.31 +{ 11.32 + depmod -a -b "$1/" $VERSION-slitaz 11.33 +} 11.34 + 11.35 +post_remove() 11.36 +{ 11.37 + depmod -a $VERSION-slitaz 11.38 +} 11.39 +
12.1 --- a/linux-reiserfs/receipt Sat Jun 07 22:29:41 2008 +0000 12.2 +++ b/linux-reiserfs/receipt Sat Jun 07 22:04:11 2008 +0000 12.3 @@ -1,7 +1,7 @@ 12.4 # SliTaz package receipt. 12.5 12.6 PACKAGE="linux-reiserfs" 12.7 -VERSION="2.6.24.2" 12.8 +VERSION="2.6.25.5" 12.9 CATEGORY="base-system" 12.10 SHORT_DESC="The Linux kernel reiserfs module." 12.11 MAINTAINER="pascal.bellard@slitaz.org" 12.12 @@ -14,21 +14,23 @@ 12.13 local path 12.14 path=lib/modules/$VERSION-slitaz/kernel 12.15 mkdir -p $fs/$path 12.16 - while read module; do 12.17 + export src 12.18 + export _pkg 12.19 + $src/list_modules.sh fs/reiserfs | while read module; do 12.20 dir=$path/$(dirname $module) 12.21 [ -d $fs/$dir ] || mkdir -p $fs/$dir 12.22 cp -a $_pkg/$path/$module $fs/$dir 12.23 - done < stuff/modules-$VERSION.list 12.24 + done 12.25 } 12.26 12.27 # Post install/remove commands for Tazpkg. 12.28 post_install() 12.29 { 12.30 - depmod -a -b /$1 12.31 + depmod -a -b "$1/" $VERSION-slitaz 12.32 } 12.33 12.34 post_remove() 12.35 { 12.36 - depmod -a 12.37 + depmod -a $VERSION-slitaz 12.38 } 12.39
13.1 --- a/linux-sound/receipt Sat Jun 07 22:29:41 2008 +0000 13.2 +++ b/linux-sound/receipt Sat Jun 07 22:04:11 2008 +0000 13.3 @@ -1,7 +1,7 @@ 13.4 # SliTaz package receipt. 13.5 13.6 PACKAGE="linux-sound" 13.7 -VERSION="2.6.24.2" 13.8 +VERSION="2.6.25.5" 13.9 CATEGORY="base-system" 13.10 SHORT_DESC="The Linux kernel sound modules." 13.11 MAINTAINER="pascal.bellard@slitaz.org" 13.12 @@ -14,18 +14,24 @@ 13.13 local path 13.14 path=lib/modules/$VERSION-slitaz/kernel 13.15 mkdir -p $fs/$path 13.16 - ( cd $_pkg/$path ; tar cf - sound ) | ( cd $fs/$path ; tar xf - ) 13.17 + export src 13.18 + export _pkg 13.19 + $src/list_modules.sh sound | while read module; do 13.20 + dir=$path/$(dirname $module) 13.21 + [ -d $fs/$dir ] || mkdir -p $fs/$dir 13.22 + cp -a $_pkg/$path/$module $fs/$dir 13.23 + done 13.24 13.25 } 13.26 13.27 # Post install/remove commands for Tazpkg. 13.28 post_install() 13.29 { 13.30 - depmod -a -b /$1 13.31 + depmod -a -b "$1/" $VERSION-slitaz 13.32 } 13.33 13.34 post_remove() 13.35 { 13.36 - depmod -a 13.37 + depmod -a $VERSION-slitaz 13.38 } 13.39
14.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 14.2 +++ b/linux-video/receipt Sat Jun 07 22:04:11 2008 +0000 14.3 @@ -0,0 +1,37 @@ 14.4 +# SliTaz package receipt. 14.5 + 14.6 +PACKAGE="linux-video" 14.7 +VERSION="2.6.25.5" 14.8 +CATEGORY="base-system" 14.9 +SHORT_DESC="The Linux kernel video modules." 14.10 +MAINTAINER="pascal.bellard@slitaz.org" 14.11 +WANTED="linux" 14.12 +WEB_SITE="http://www.kernel.org/" 14.13 + 14.14 +# Rules to gen a SliTaz package suitable for Tazpkg. 14.15 +genpkg_rules() 14.16 +{ 14.17 + local path 14.18 + path=lib/modules/$VERSION-slitaz/kernel 14.19 + mkdir -p $fs/$path 14.20 + export src 14.21 + export _pkg 14.22 + $src/list_modules.sh drivers/media/video drivers/video | \ 14.23 + while read module; do 14.24 + dir=$path/$(dirname $module) 14.25 + [ -d $fs/$dir ] || mkdir -p $fs/$dir 14.26 + cp -a $_pkg/$path/$module $fs/$dir 14.27 + done 14.28 +} 14.29 + 14.30 +# Post install/remove commands for Tazpkg. 14.31 +post_install() 14.32 +{ 14.33 + depmod -a -b "$1/" $VERSION-slitaz 14.34 +} 14.35 + 14.36 +post_remove() 14.37 +{ 14.38 + depmod -a $VERSION-slitaz 14.39 +} 14.40 +
15.1 --- a/linux-wireless/receipt Sat Jun 07 22:29:41 2008 +0000 15.2 +++ b/linux-wireless/receipt Sat Jun 07 22:04:11 2008 +0000 15.3 @@ -1,7 +1,7 @@ 15.4 # SliTaz package receipt. 15.5 15.6 PACKAGE="linux-wireless" 15.7 -VERSION="2.6.24.2" 15.8 +VERSION="2.6.25.5" 15.9 CATEGORY="base-system" 15.10 SHORT_DESC="The Linux kernel wireless modules." 15.11 MAINTAINER="pascal.bellard@slitaz.org" 15.12 @@ -14,21 +14,24 @@ 15.13 local path 15.14 path=lib/modules/$VERSION-slitaz/kernel 15.15 mkdir -p $fs/$path 15.16 + export src 15.17 + export _pkg 15.18 + $src/list_modules.sh drivers/net/wireless net/wireless net/ieee80211 | \ 15.19 while read module; do 15.20 dir=$path/$(dirname $module) 15.21 [ -d $fs/$dir ] || mkdir -p $fs/$dir 15.22 cp -a $_pkg/$path/$module $fs/$dir 15.23 - done < stuff/modules-$VERSION.list 15.24 + done 15.25 } 15.26 15.27 # Post install/remove commands for Tazpkg. 15.28 post_install() 15.29 { 15.30 - depmod -a -b /$1 15.31 + depmod -a -b "$1/" $VERSION-slitaz 15.32 } 15.33 15.34 post_remove() 15.35 { 15.36 - depmod -a 15.37 + depmod -a $VERSION-slitaz 15.38 } 15.39
16.1 --- a/linux/receipt Sat Jun 07 22:29:41 2008 +0000 16.2 +++ b/linux/receipt Sat Jun 07 22:04:11 2008 +0000 16.3 @@ -1,7 +1,7 @@ 16.4 # SliTaz package receipt. 16.5 16.6 PACKAGE="linux" 16.7 -VERSION="2.6.24.2" 16.8 +VERSION="2.6.25.5" 16.9 CATEGORY="base-system" 16.10 SHORT_DESC="The Linux kernel and modules." 16.11 MAINTAINER="pascal.bellard@slitaz.org" 16.12 @@ -13,34 +13,22 @@ 16.13 compile_rules() 16.14 { 16.15 cd $src 16.16 - # lzma and boot patch from pascal 16.17 + # lzma and misc patches from pascal 16.18 while read patch_file; do 16.19 echo "Apply $patch_file" 16.20 patch -p1 < ../stuff/$patch_file || return 1 16.21 done <<EOT 16.22 -boot-kernel.u 16.23 $PACKAGE-lzma-$VERSION.u 16.24 -decompress_unlzma.u 16.25 +$PACKAGE-utf8-$VERSION.u 16.26 +$PACKAGE-diff-$VERSION.u 16.27 EOT 16.28 make mrproper 16.29 cp ../stuff/$PACKAGE-$VERSION-slitaz.config .config 16.30 - while read patch_file; do 16.31 - echo "Apply $patch_file" 16.32 - patch -p1 < ../stuff/$patch_file || return 1 16.33 - done <<EOT 16.34 -config-acpi-$VERSION.u 16.35 -linux-utf8-$VERSION.u 16.36 -config-ieee1394-$VERSION.u 16.37 -linux-lzma-export.u 16.38 -config-tun-$VERSION.u 16.39 -config-reiserfs-$VERSION.u 16.40 -config-wireless-$VERSION.u 16.41 -$PACKAGE-lzma-loram-$VERSION.u 16.42 -EOT 16.43 make oldconfig 16.44 make bzImage 16.45 make modules 16.46 make INSTALL_MOD_PATH=$PWD/_pkg modules_install 16.47 + make INSTALL_HDR_PATH=$PWD/_pkg/usr headers_install 16.48 } 16.49 16.50 # Rules to gen a SliTaz package suitable for Tazpkg. 16.51 @@ -57,18 +45,27 @@ 16.52 path=$fs/lib/modules/$VERSION-slitaz/kernel 16.53 mkdir -p $path 16.54 cp -a $_pkg/lib/modules/$VERSION-slitaz/mo* $fs/lib/modules/$VERSION-slitaz 16.55 + cp ./stuff/list_modules.sh $src 16.56 + export src 16.57 + export _pkg 16.58 + $src/list_modules.sh $(cat stuff/modules-$VERSION.list) > $src/modules.list 16.59 while read module; do 16.60 dir=$(dirname $module) 16.61 [ -d $path/$dir ] || mkdir -p $path/$dir 16.62 cp -a $_pkg/lib/modules/$VERSION-slitaz/kernel/$module $path/$dir 16.63 - done < stuff/modules-$VERSION.list 16.64 + done < $src/modules.list 16.65 # Remove unresolved links 16.66 rm -f $fs/lib/modules/$VERSION-slitaz/build 16.67 rm -f $fs/lib/modules/$VERSION-slitaz/source 16.68 - # Packages all linux pkgs 16.69 - for i in acpi ieee1394 reiserfs sound wireless 16.70 + # Package all linux pkgs 16.71 + for i in $(cd $WOK; ls -d linux-*) 16.72 do 16.73 - tazwok genpkg linux-$i 16.74 + tazwok genpkg $i 16.75 + done 16.76 + # Cook all packages with a kernel module 16.77 + for i in $(cd $WOK; grep -l 'tazwok cook linux$' */receipt) 16.78 + do 16.79 + echo tazwok cook ${i%/receipt} 16.80 done 16.81 } 16.82 16.83 @@ -77,13 +74,15 @@ 16.84 post_install() 16.85 { 16.86 echo "Processing post-install commands..." 16.87 - depmod -a -b "$1/" 16.88 - echo "----" 16.89 - echo "If you have GRUB installed, you can add tree lines to boot SliTaz." 16.90 - echo "Example /boot/grub/menu.lst" 16.91 - echo -e " 16.92 + depmod -a -b "$1/" $VERSION-slitaz 16.93 + cat <<EOT 16.94 +---- 16.95 +If you have GRUB installed, you can add tree lines to boot SliTaz. 16.96 +Example /boot/grub/menu.lst 16.97 + 16.98 title SliTaz GNU/Linux (Kernel $VERSION-slitaz) 16.99 root(hd0,0) 16.100 - kernel /boot/vmlinuz-$VERSION-slitaz root=/dev/hda1 vga=771\n" 16.101 - echo "----" 16.102 + kernel /boot/vmlinuz-$VERSION-slitaz root=/dev/hda1 vga=771 16.103 +---- 16.104 +EOT 16.105 }
17.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 17.2 +++ b/linux/stuff/linux-2.6.25.5-slitaz.config Sat Jun 07 22:04:11 2008 +0000 17.3 @@ -0,0 +1,2237 @@ 17.4 +# 17.5 +# Automatically generated make config: don't edit 17.6 +# Linux kernel version: 2.6.25.5 17.7 +# Sat Jun 7 10:08:44 2008 17.8 +# 17.9 +# CONFIG_64BIT is not set 17.10 +CONFIG_X86_32=y 17.11 +# CONFIG_X86_64 is not set 17.12 +CONFIG_X86=y 17.13 +CONFIG_DEFCONFIG_LIST="arch/x86/configs/i386_defconfig" 17.14 +# CONFIG_GENERIC_LOCKBREAK is not set 17.15 +CONFIG_GENERIC_TIME=y 17.16 +CONFIG_GENERIC_CMOS_UPDATE=y 17.17 +CONFIG_CLOCKSOURCE_WATCHDOG=y 17.18 +CONFIG_GENERIC_CLOCKEVENTS=y 17.19 +CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y 17.20 +CONFIG_LOCKDEP_SUPPORT=y 17.21 +CONFIG_STACKTRACE_SUPPORT=y 17.22 +CONFIG_HAVE_LATENCYTOP_SUPPORT=y 17.23 +CONFIG_SEMAPHORE_SLEEPERS=y 17.24 +CONFIG_FAST_CMPXCHG_LOCAL=y 17.25 +CONFIG_MMU=y 17.26 +CONFIG_ZONE_DMA=y 17.27 +CONFIG_GENERIC_ISA_DMA=y 17.28 +CONFIG_GENERIC_IOMAP=y 17.29 +CONFIG_GENERIC_BUG=y 17.30 +CONFIG_GENERIC_HWEIGHT=y 17.31 +# CONFIG_GENERIC_GPIO is not set 17.32 +CONFIG_ARCH_MAY_HAVE_PC_FDC=y 17.33 +CONFIG_DMI=y 17.34 +CONFIG_RWSEM_GENERIC_SPINLOCK=y 17.35 +# CONFIG_RWSEM_XCHGADD_ALGORITHM is not set 17.36 +# CONFIG_ARCH_HAS_ILOG2_U32 is not set 17.37 +# CONFIG_ARCH_HAS_ILOG2_U64 is not set 17.38 +CONFIG_ARCH_HAS_CPU_IDLE_WAIT=y 17.39 +CONFIG_GENERIC_CALIBRATE_DELAY=y 17.40 +# CONFIG_GENERIC_TIME_VSYSCALL is not set 17.41 +CONFIG_ARCH_HAS_CPU_RELAX=y 17.42 +# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set 17.43 +CONFIG_ARCH_HIBERNATION_POSSIBLE=y 17.44 +CONFIG_ARCH_SUSPEND_POSSIBLE=y 17.45 +# CONFIG_ZONE_DMA32 is not set 17.46 +CONFIG_ARCH_POPULATES_NODE_MAP=y 17.47 +# CONFIG_AUDIT_ARCH is not set 17.48 +CONFIG_ARCH_SUPPORTS_AOUT=y 17.49 +CONFIG_GENERIC_HARDIRQS=y 17.50 +CONFIG_GENERIC_IRQ_PROBE=y 17.51 +CONFIG_GENERIC_PENDING_IRQ=y 17.52 +CONFIG_X86_SMP=y 17.53 +CONFIG_X86_32_SMP=y 17.54 +CONFIG_X86_HT=y 17.55 +CONFIG_X86_BIOS_REBOOT=y 17.56 +CONFIG_X86_TRAMPOLINE=y 17.57 +CONFIG_KTIME_SCALAR=y 17.58 + 17.59 +# 17.60 +# General setup 17.61 +# 17.62 +CONFIG_EXPERIMENTAL=y 17.63 +CONFIG_LOCK_KERNEL=y 17.64 +CONFIG_INIT_ENV_ARG_LIMIT=32 17.65 +CONFIG_LOCALVERSION="-slitaz" 17.66 +# CONFIG_LOCALVERSION_AUTO is not set 17.67 +# CONFIG_KERNEL_GZIP is not set 17.68 +# CONFIG_KERNEL_BZIP2 is not set 17.69 +CONFIG_KERNEL_LZMA=y 17.70 +CONFIG_SWAP=y 17.71 +CONFIG_SYSVIPC=y 17.72 +CONFIG_SYSVIPC_SYSCTL=y 17.73 +CONFIG_POSIX_MQUEUE=y 17.74 +CONFIG_BSD_PROCESS_ACCT=y 17.75 +# CONFIG_BSD_PROCESS_ACCT_V3 is not set 17.76 +# CONFIG_TASKSTATS is not set 17.77 +# CONFIG_AUDIT is not set 17.78 +CONFIG_IKCONFIG=y 17.79 +CONFIG_IKCONFIG_PROC=y 17.80 +CONFIG_LOG_BUF_SHIFT=14 17.81 +# CONFIG_CGROUPS is not set 17.82 +CONFIG_GROUP_SCHED=y 17.83 +CONFIG_FAIR_GROUP_SCHED=y 17.84 +# CONFIG_RT_GROUP_SCHED is not set 17.85 +CONFIG_USER_SCHED=y 17.86 +# CONFIG_CGROUP_SCHED is not set 17.87 +CONFIG_SYSFS_DEPRECATED=y 17.88 +CONFIG_SYSFS_DEPRECATED_V2=y 17.89 +# CONFIG_RELAY is not set 17.90 +CONFIG_NAMESPACES=y 17.91 +# CONFIG_UTS_NS is not set 17.92 +# CONFIG_IPC_NS is not set 17.93 +# CONFIG_USER_NS is not set 17.94 +# CONFIG_PID_NS is not set 17.95 +CONFIG_BLK_DEV_INITRD=y 17.96 +CONFIG_INITRAMFS_SOURCE="" 17.97 +CONFIG_CC_OPTIMIZE_FOR_SIZE=y 17.98 +CONFIG_SYSCTL=y 17.99 +# CONFIG_EMBEDDED is not set 17.100 +CONFIG_UID16=y 17.101 +CONFIG_SYSCTL_SYSCALL=y 17.102 +CONFIG_KALLSYMS=y 17.103 +# CONFIG_KALLSYMS_EXTRA_PASS is not set 17.104 +CONFIG_HOTPLUG=y 17.105 +CONFIG_PRINTK=y 17.106 +CONFIG_BUG=y 17.107 +CONFIG_ELF_CORE=y 17.108 +CONFIG_COMPAT_BRK=y 17.109 +CONFIG_BASE_FULL=y 17.110 +CONFIG_FUTEX=y 17.111 +CONFIG_ANON_INODES=y 17.112 +CONFIG_EPOLL=y 17.113 +CONFIG_SIGNALFD=y 17.114 +CONFIG_TIMERFD=y 17.115 +CONFIG_EVENTFD=y 17.116 +CONFIG_SHMEM=y 17.117 +CONFIG_VM_EVENT_COUNTERS=y 17.118 +CONFIG_SLAB=y 17.119 +# CONFIG_SLUB is not set 17.120 +# CONFIG_SLOB is not set 17.121 +# CONFIG_PROFILING is not set 17.122 +# CONFIG_MARKERS is not set 17.123 +CONFIG_HAVE_OPROFILE=y 17.124 +# CONFIG_KPROBES is not set 17.125 +CONFIG_HAVE_KPROBES=y 17.126 +CONFIG_HAVE_KRETPROBES=y 17.127 +CONFIG_PROC_PAGE_MONITOR=y 17.128 +CONFIG_SLABINFO=y 17.129 +CONFIG_RT_MUTEXES=y 17.130 +# CONFIG_TINY_SHMEM is not set 17.131 +CONFIG_BASE_SMALL=0 17.132 +CONFIG_MODULES=y 17.133 +CONFIG_MODULE_UNLOAD=y 17.134 +# CONFIG_MODULE_FORCE_UNLOAD is not set 17.135 +# CONFIG_MODVERSIONS is not set 17.136 +# CONFIG_MODULE_SRCVERSION_ALL is not set 17.137 +CONFIG_KMOD=y 17.138 +CONFIG_STOP_MACHINE=y 17.139 +CONFIG_BLOCK=y 17.140 +# CONFIG_LBD is not set 17.141 +# CONFIG_BLK_DEV_IO_TRACE is not set 17.142 +# CONFIG_LSF is not set 17.143 +# CONFIG_BLK_DEV_BSG is not set 17.144 + 17.145 +# 17.146 +# IO Schedulers 17.147 +# 17.148 +CONFIG_IOSCHED_NOOP=y 17.149 +# CONFIG_IOSCHED_AS is not set 17.150 +CONFIG_IOSCHED_DEADLINE=y 17.151 +# CONFIG_IOSCHED_CFQ is not set 17.152 +# CONFIG_DEFAULT_AS is not set 17.153 +CONFIG_DEFAULT_DEADLINE=y 17.154 +# CONFIG_DEFAULT_CFQ is not set 17.155 +# CONFIG_DEFAULT_NOOP is not set 17.156 +CONFIG_DEFAULT_IOSCHED="deadline" 17.157 +CONFIG_PREEMPT_NOTIFIERS=y 17.158 +CONFIG_CLASSIC_RCU=y 17.159 + 17.160 +# 17.161 +# Processor type and features 17.162 +# 17.163 +# CONFIG_TICK_ONESHOT is not set 17.164 +# CONFIG_NO_HZ is not set 17.165 +# CONFIG_HIGH_RES_TIMERS is not set 17.166 +CONFIG_GENERIC_CLOCKEVENTS_BUILD=y 17.167 +CONFIG_SMP=y 17.168 +CONFIG_X86_PC=y 17.169 +# CONFIG_X86_ELAN is not set 17.170 +# CONFIG_X86_VOYAGER is not set 17.171 +# CONFIG_X86_NUMAQ is not set 17.172 +# CONFIG_X86_SUMMIT is not set 17.173 +# CONFIG_X86_BIGSMP is not set 17.174 +# CONFIG_X86_VISWS is not set 17.175 +# CONFIG_X86_GENERICARCH is not set 17.176 +# CONFIG_X86_ES7000 is not set 17.177 +# CONFIG_X86_RDC321X is not set 17.178 +# CONFIG_X86_VSMP is not set 17.179 +CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y 17.180 +# CONFIG_PARAVIRT_GUEST is not set 17.181 +CONFIG_M386=y 17.182 +# CONFIG_M486 is not set 17.183 +# CONFIG_M586 is not set 17.184 +# CONFIG_M586TSC is not set 17.185 +# CONFIG_M586MMX is not set 17.186 +# CONFIG_M686 is not set 17.187 +# CONFIG_MPENTIUMII is not set 17.188 +# CONFIG_MPENTIUMIII is not set 17.189 +# CONFIG_MPENTIUMM is not set 17.190 +# CONFIG_MPENTIUM4 is not set 17.191 +# CONFIG_MK6 is not set 17.192 +# CONFIG_MK7 is not set 17.193 +# CONFIG_MK8 is not set 17.194 +# CONFIG_MCRUSOE is not set 17.195 +# CONFIG_MEFFICEON is not set 17.196 +# CONFIG_MWINCHIPC6 is not set 17.197 +# CONFIG_MWINCHIP2 is not set 17.198 +# CONFIG_MWINCHIP3D is not set 17.199 +# CONFIG_MGEODEGX1 is not set 17.200 +# CONFIG_MGEODE_LX is not set 17.201 +# CONFIG_MCYRIXIII is not set 17.202 +# CONFIG_MVIAC3_2 is not set 17.203 +# CONFIG_MVIAC7 is not set 17.204 +# CONFIG_MPSC is not set 17.205 +# CONFIG_MCORE2 is not set 17.206 +# CONFIG_GENERIC_CPU is not set 17.207 +CONFIG_X86_GENERIC=y 17.208 +# CONFIG_X86_CMPXCHG is not set 17.209 +CONFIG_X86_L1_CACHE_SHIFT=7 17.210 +CONFIG_X86_PPRO_FENCE=y 17.211 +CONFIG_X86_F00F_BUG=y 17.212 +CONFIG_X86_INTEL_USERCOPY=y 17.213 +CONFIG_X86_MINIMUM_CPU_FAMILY=3 17.214 +# CONFIG_HPET_TIMER is not set 17.215 +# CONFIG_IOMMU_HELPER is not set 17.216 +CONFIG_NR_CPUS=8 17.217 +# CONFIG_SCHED_SMT is not set 17.218 +CONFIG_SCHED_MC=y 17.219 +CONFIG_PREEMPT_NONE=y 17.220 +# CONFIG_PREEMPT_VOLUNTARY is not set 17.221 +# CONFIG_PREEMPT is not set 17.222 +CONFIG_X86_LOCAL_APIC=y 17.223 +CONFIG_X86_IO_APIC=y 17.224 +# CONFIG_X86_MCE is not set 17.225 +CONFIG_VM86=y 17.226 +# CONFIG_TOSHIBA is not set 17.227 +# CONFIG_I8K is not set 17.228 +# CONFIG_X86_REBOOTFIXUPS is not set 17.229 +# CONFIG_MICROCODE is not set 17.230 +# CONFIG_X86_MSR is not set 17.231 +# CONFIG_X86_CPUID is not set 17.232 +# CONFIG_NOHIGHMEM is not set 17.233 +CONFIG_HIGHMEM4G=y 17.234 +# CONFIG_HIGHMEM64G is not set 17.235 +CONFIG_PAGE_OFFSET=0xC0000000 17.236 +CONFIG_HIGHMEM=y 17.237 +CONFIG_ARCH_FLATMEM_ENABLE=y 17.238 +CONFIG_ARCH_SPARSEMEM_ENABLE=y 17.239 +CONFIG_ARCH_SELECT_MEMORY_MODEL=y 17.240 +CONFIG_SELECT_MEMORY_MODEL=y 17.241 +CONFIG_FLATMEM_MANUAL=y 17.242 +# CONFIG_DISCONTIGMEM_MANUAL is not set 17.243 +# CONFIG_SPARSEMEM_MANUAL is not set 17.244 +CONFIG_FLATMEM=y 17.245 +CONFIG_FLAT_NODE_MEM_MAP=y 17.246 +CONFIG_SPARSEMEM_STATIC=y 17.247 +# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set 17.248 +CONFIG_SPLIT_PTLOCK_CPUS=4 17.249 +# CONFIG_RESOURCES_64BIT is not set 17.250 +CONFIG_ZONE_DMA_FLAG=1 17.251 +CONFIG_BOUNCE=y 17.252 +CONFIG_VIRT_TO_BUS=y 17.253 +# CONFIG_HIGHPTE is not set 17.254 +CONFIG_MATH_EMULATION=y 17.255 +CONFIG_MTRR=y 17.256 +# CONFIG_EFI is not set 17.257 +CONFIG_IRQBALANCE=y 17.258 +# CONFIG_SECCOMP is not set 17.259 +# CONFIG_HZ_100 is not set 17.260 +# CONFIG_HZ_250 is not set 17.261 +CONFIG_HZ_300=y 17.262 +# CONFIG_HZ_1000 is not set 17.263 +CONFIG_HZ=300 17.264 +# CONFIG_SCHED_HRTICK is not set 17.265 +CONFIG_KEXEC=y 17.266 +# CONFIG_CRASH_DUMP is not set 17.267 +CONFIG_PHYSICAL_START=0x100000 17.268 +# CONFIG_RELOCATABLE is not set 17.269 +CONFIG_PHYSICAL_ALIGN=0x100000 17.270 +# CONFIG_HOTPLUG_CPU is not set 17.271 +CONFIG_COMPAT_VDSO=y 17.272 +CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y 17.273 + 17.274 +# 17.275 +# Power management options 17.276 +# 17.277 +CONFIG_PM=y 17.278 +# CONFIG_PM_LEGACY is not set 17.279 +# CONFIG_PM_DEBUG is not set 17.280 +# CONFIG_SUSPEND is not set 17.281 +# CONFIG_HIBERNATION is not set 17.282 +CONFIG_ACPI=y 17.283 +# CONFIG_ACPI_PROCFS is not set 17.284 +CONFIG_ACPI_PROCFS_POWER=y 17.285 +CONFIG_ACPI_SYSFS_POWER=y 17.286 +CONFIG_ACPI_PROC_EVENT=y 17.287 +CONFIG_ACPI_AC=m 17.288 +CONFIG_ACPI_BATTERY=m 17.289 +# CONFIG_ACPI_BUTTON is not set 17.290 +# CONFIG_ACPI_FAN is not set 17.291 +CONFIG_ACPI_DOCK=y 17.292 +# CONFIG_ACPI_BAY is not set 17.293 +CONFIG_ACPI_PROCESSOR=y 17.294 +CONFIG_ACPI_THERMAL=y 17.295 +# CONFIG_ACPI_WMI is not set 17.296 +# CONFIG_ACPI_ASUS is not set 17.297 +# CONFIG_ACPI_TOSHIBA is not set 17.298 +# CONFIG_ACPI_CUSTOM_DSDT is not set 17.299 +CONFIG_ACPI_BLACKLIST_YEAR=0 17.300 +# CONFIG_ACPI_DEBUG is not set 17.301 +CONFIG_ACPI_EC=y 17.302 +CONFIG_ACPI_POWER=y 17.303 +CONFIG_ACPI_SYSTEM=y 17.304 +CONFIG_X86_PM_TIMER=y 17.305 +# CONFIG_ACPI_CONTAINER is not set 17.306 +# CONFIG_ACPI_SBS is not set 17.307 + 17.308 +# 17.309 +# CPU Frequency scaling 17.310 +# 17.311 +# CONFIG_CPU_FREQ is not set 17.312 +# CONFIG_CPU_IDLE is not set 17.313 + 17.314 +# 17.315 +# Bus options (PCI etc.) 17.316 +# 17.317 +CONFIG_PCI=y 17.318 +# CONFIG_PCI_GOBIOS is not set 17.319 +# CONFIG_PCI_GOMMCONFIG is not set 17.320 +# CONFIG_PCI_GODIRECT is not set 17.321 +CONFIG_PCI_GOANY=y 17.322 +CONFIG_PCI_BIOS=y 17.323 +CONFIG_PCI_DIRECT=y 17.324 +CONFIG_PCI_MMCONFIG=y 17.325 +CONFIG_PCI_DOMAINS=y 17.326 +# CONFIG_PCIEPORTBUS is not set 17.327 +CONFIG_ARCH_SUPPORTS_MSI=y 17.328 +# CONFIG_PCI_MSI is not set 17.329 +CONFIG_PCI_LEGACY=y 17.330 +CONFIG_HT_IRQ=y 17.331 +CONFIG_ISA_DMA_API=y 17.332 +CONFIG_ISA=y 17.333 +# CONFIG_EISA is not set 17.334 +# CONFIG_MCA is not set 17.335 +# CONFIG_SCx200 is not set 17.336 +CONFIG_K8_NB=y 17.337 +CONFIG_PCCARD=m 17.338 +# CONFIG_PCMCIA_DEBUG is not set 17.339 +CONFIG_PCMCIA=m 17.340 +CONFIG_PCMCIA_LOAD_CIS=y 17.341 +CONFIG_PCMCIA_IOCTL=y 17.342 +CONFIG_CARDBUS=y 17.343 + 17.344 +# 17.345 +# PC-card bridges 17.346 +# 17.347 +CONFIG_YENTA=m 17.348 +CONFIG_YENTA_O2=y 17.349 +CONFIG_YENTA_RICOH=y 17.350 +CONFIG_YENTA_TI=y 17.351 +CONFIG_YENTA_ENE_TUNE=y 17.352 +CONFIG_YENTA_TOSHIBA=y 17.353 +CONFIG_PD6729=m 17.354 +CONFIG_I82092=m 17.355 +CONFIG_I82365=m 17.356 +# CONFIG_TCIC is not set 17.357 +CONFIG_PCMCIA_PROBE=y 17.358 +CONFIG_PCCARD_NONSTATIC=m 17.359 +# CONFIG_HOTPLUG_PCI is not set 17.360 + 17.361 +# 17.362 +# Executable file formats / Emulations 17.363 +# 17.364 +CONFIG_BINFMT_ELF=y 17.365 +# CONFIG_BINFMT_AOUT is not set 17.366 +CONFIG_BINFMT_MISC=m 17.367 + 17.368 +# 17.369 +# Networking 17.370 +# 17.371 +CONFIG_NET=y 17.372 + 17.373 +# 17.374 +# Networking options 17.375 +# 17.376 +CONFIG_PACKET=y 17.377 +# CONFIG_PACKET_MMAP is not set 17.378 +CONFIG_UNIX=y 17.379 +CONFIG_XFRM=y 17.380 +# CONFIG_XFRM_USER is not set 17.381 +# CONFIG_XFRM_SUB_POLICY is not set 17.382 +# CONFIG_XFRM_MIGRATE is not set 17.383 +# CONFIG_XFRM_STATISTICS is not set 17.384 +CONFIG_NET_KEY=y 17.385 +# CONFIG_NET_KEY_MIGRATE is not set 17.386 +CONFIG_INET=y 17.387 +# CONFIG_IP_MULTICAST is not set 17.388 +# CONFIG_IP_ADVANCED_ROUTER is not set 17.389 +CONFIG_IP_FIB_HASH=y 17.390 +# CONFIG_IP_PNP is not set 17.391 +# CONFIG_NET_IPIP is not set 17.392 +# CONFIG_NET_IPGRE is not set 17.393 +# CONFIG_ARPD is not set 17.394 +CONFIG_SYN_COOKIES=y 17.395 +CONFIG_INET_AH=y 17.396 +CONFIG_INET_ESP=y 17.397 +CONFIG_INET_IPCOMP=y 17.398 +CONFIG_INET_XFRM_TUNNEL=y 17.399 +CONFIG_INET_TUNNEL=y 17.400 +# CONFIG_INET_XFRM_MODE_TRANSPORT is not set 17.401 +# CONFIG_INET_XFRM_MODE_TUNNEL is not set 17.402 +# CONFIG_INET_XFRM_MODE_BEET is not set 17.403 +# CONFIG_INET_LRO is not set 17.404 +CONFIG_INET_DIAG=y 17.405 +CONFIG_INET_TCP_DIAG=y 17.406 +# CONFIG_TCP_CONG_ADVANCED is not set 17.407 +CONFIG_TCP_CONG_CUBIC=y 17.408 +CONFIG_DEFAULT_TCP_CONG="cubic" 17.409 +# CONFIG_TCP_MD5SIG is not set 17.410 +# CONFIG_IP_VS is not set 17.411 +CONFIG_IPV6=m 17.412 +# CONFIG_IPV6_PRIVACY is not set 17.413 +# CONFIG_IPV6_ROUTER_PREF is not set 17.414 +# CONFIG_IPV6_OPTIMISTIC_DAD is not set 17.415 +# CONFIG_INET6_AH is not set 17.416 +# CONFIG_INET6_ESP is not set 17.417 +# CONFIG_INET6_IPCOMP is not set 17.418 +# CONFIG_IPV6_MIP6 is not set 17.419 +# CONFIG_INET6_XFRM_TUNNEL is not set 17.420 +# CONFIG_INET6_TUNNEL is not set 17.421 +CONFIG_INET6_XFRM_MODE_TRANSPORT=m 17.422 +CONFIG_INET6_XFRM_MODE_TUNNEL=m 17.423 +CONFIG_INET6_XFRM_MODE_BEET=m 17.424 +# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set 17.425 +CONFIG_IPV6_SIT=m 17.426 +# CONFIG_IPV6_TUNNEL is not set 17.427 +# CONFIG_IPV6_MULTIPLE_TABLES is not set 17.428 +# CONFIG_NETWORK_SECMARK is not set 17.429 +CONFIG_NETFILTER=y 17.430 +# CONFIG_NETFILTER_DEBUG is not set 17.431 +CONFIG_NETFILTER_ADVANCED=y 17.432 + 17.433 +# 17.434 +# Core Netfilter Configuration 17.435 +# 17.436 +CONFIG_NETFILTER_NETLINK=m 17.437 +# CONFIG_NETFILTER_NETLINK_QUEUE is not set 17.438 +CONFIG_NETFILTER_NETLINK_LOG=m 17.439 +# CONFIG_NF_CONNTRACK is not set 17.440 +CONFIG_NETFILTER_XTABLES=y 17.441 +# CONFIG_NETFILTER_XT_TARGET_CLASSIFY is not set 17.442 +# CONFIG_NETFILTER_XT_TARGET_MARK is not set 17.443 +# CONFIG_NETFILTER_XT_TARGET_NFQUEUE is not set 17.444 +# CONFIG_NETFILTER_XT_TARGET_NFLOG is not set 17.445 +# CONFIG_NETFILTER_XT_TARGET_RATEEST is not set 17.446 +# CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set 17.447 +# CONFIG_NETFILTER_XT_MATCH_COMMENT is not set 17.448 +# CONFIG_NETFILTER_XT_MATCH_DCCP is not set 17.449 +# CONFIG_NETFILTER_XT_MATCH_DSCP is not set 17.450 +# CONFIG_NETFILTER_XT_MATCH_ESP is not set 17.451 +# CONFIG_NETFILTER_XT_MATCH_IPRANGE is not set 17.452 +# CONFIG_NETFILTER_XT_MATCH_LENGTH is not set 17.453 +# CONFIG_NETFILTER_XT_MATCH_LIMIT is not set 17.454 +# CONFIG_NETFILTER_XT_MATCH_MAC is not set 17.455 +# CONFIG_NETFILTER_XT_MATCH_MARK is not set 17.456 +# CONFIG_NETFILTER_XT_MATCH_OWNER is not set 17.457 +# CONFIG_NETFILTER_XT_MATCH_POLICY is not set 17.458 +# CONFIG_NETFILTER_XT_MATCH_MULTIPORT is not set 17.459 +# CONFIG_NETFILTER_XT_MATCH_PKTTYPE is not set 17.460 +# CONFIG_NETFILTER_XT_MATCH_QUOTA is not set 17.461 +# CONFIG_NETFILTER_XT_MATCH_RATEEST is not set 17.462 +# CONFIG_NETFILTER_XT_MATCH_REALM is not set 17.463 +# CONFIG_NETFILTER_XT_MATCH_SCTP is not set 17.464 +# CONFIG_NETFILTER_XT_MATCH_STATISTIC is not set 17.465 +# CONFIG_NETFILTER_XT_MATCH_STRING is not set 17.466 +# CONFIG_NETFILTER_XT_MATCH_TCPMSS is not set 17.467 +# CONFIG_NETFILTER_XT_MATCH_TIME is not set 17.468 +# CONFIG_NETFILTER_XT_MATCH_U32 is not set 17.469 +# CONFIG_NETFILTER_XT_MATCH_HASHLIMIT is not set 17.470 + 17.471 +# 17.472 +# IP: Netfilter Configuration 17.473 +# 17.474 +# CONFIG_IP_NF_QUEUE is not set 17.475 +CONFIG_IP_NF_IPTABLES=y 17.476 +# CONFIG_IP_NF_MATCH_RECENT is not set 17.477 +# CONFIG_IP_NF_MATCH_ECN is not set 17.478 +# CONFIG_IP_NF_MATCH_AH is not set 17.479 +# CONFIG_IP_NF_MATCH_TTL is not set 17.480 +# CONFIG_IP_NF_MATCH_ADDRTYPE is not set 17.481 +CONFIG_IP_NF_FILTER=y 17.482 +CONFIG_IP_NF_TARGET_REJECT=m 17.483 +# CONFIG_IP_NF_TARGET_LOG is not set 17.484 +# CONFIG_IP_NF_TARGET_ULOG is not set 17.485 +# CONFIG_IP_NF_MANGLE is not set 17.486 +# CONFIG_IP_NF_RAW is not set 17.487 +# CONFIG_IP_NF_ARPTABLES is not set 17.488 + 17.489 +# 17.490 +# IPv6: Netfilter Configuration 17.491 +# 17.492 +# CONFIG_IP6_NF_QUEUE is not set 17.493 +# CONFIG_IP6_NF_IPTABLES is not set 17.494 +# CONFIG_IP_DCCP is not set 17.495 +# CONFIG_IP_SCTP is not set 17.496 +# CONFIG_TIPC is not set 17.497 +# CONFIG_ATM is not set 17.498 +# CONFIG_BRIDGE is not set 17.499 +# CONFIG_VLAN_8021Q is not set 17.500 +# CONFIG_DECNET is not set 17.501 +# CONFIG_LLC2 is not set 17.502 +# CONFIG_IPX is not set 17.503 +# CONFIG_ATALK is not set 17.504 +# CONFIG_X25 is not set 17.505 +# CONFIG_LAPB is not set 17.506 +# CONFIG_ECONET is not set 17.507 +# CONFIG_WAN_ROUTER is not set 17.508 +# CONFIG_NET_SCHED is not set 17.509 +CONFIG_NET_SCH_FIFO=y 17.510 + 17.511 +# 17.512 +# Network testing 17.513 +# 17.514 +# CONFIG_NET_PKTGEN is not set 17.515 +# CONFIG_HAMRADIO is not set 17.516 +# CONFIG_CAN is not set 17.517 +# CONFIG_IRDA is not set 17.518 +CONFIG_BT=m 17.519 +CONFIG_BT_L2CAP=m 17.520 +CONFIG_BT_SCO=m 17.521 +CONFIG_BT_RFCOMM=m 17.522 +# CONFIG_BT_RFCOMM_TTY is not set 17.523 +# CONFIG_BT_BNEP is not set 17.524 +# CONFIG_BT_HIDP is not set 17.525 + 17.526 +# 17.527 +# Bluetooth device drivers 17.528 +# 17.529 +CONFIG_BT_HCIUSB=m 17.530 +# CONFIG_BT_HCIUSB_SCO is not set 17.531 +# CONFIG_BT_HCIUART is not set 17.532 +# CONFIG_BT_HCIBCM203X is not set 17.533 +# CONFIG_BT_HCIBPA10X is not set 17.534 +# CONFIG_BT_HCIBFUSB is not set 17.535 +# CONFIG_BT_HCIDTL1 is not set 17.536 +# CONFIG_BT_HCIBT3C is not set 17.537 +# CONFIG_BT_HCIBLUECARD is not set 17.538 +# CONFIG_BT_HCIBTUART is not set 17.539 +# CONFIG_BT_HCIVHCI is not set 17.540 +# CONFIG_AF_RXRPC is not set 17.541 + 17.542 +# 17.543 +# Wireless 17.544 +# 17.545 +CONFIG_CFG80211=m 17.546 +CONFIG_NL80211=y 17.547 +CONFIG_WIRELESS_EXT=y 17.548 +CONFIG_MAC80211=m 17.549 + 17.550 +# 17.551 +# Rate control algorithm selection 17.552 +# 17.553 +CONFIG_MAC80211_RC_DEFAULT_PID=y 17.554 +# CONFIG_MAC80211_RC_DEFAULT_SIMPLE is not set 17.555 +# CONFIG_MAC80211_RC_DEFAULT_NONE is not set 17.556 + 17.557 +# 17.558 +# Selecting 'y' for an algorithm will 17.559 +# 17.560 + 17.561 +# 17.562 +# build the algorithm into mac80211. 17.563 +# 17.564 +CONFIG_MAC80211_RC_DEFAULT="pid" 17.565 +CONFIG_MAC80211_RC_PID=y 17.566 +# CONFIG_MAC80211_RC_SIMPLE is not set 17.567 +# CONFIG_MAC80211_DEBUG_PACKET_ALIGNMENT is not set 17.568 +# CONFIG_MAC80211_DEBUG is not set 17.569 +CONFIG_IEEE80211=m 17.570 +# CONFIG_IEEE80211_DEBUG is not set 17.571 +CONFIG_IEEE80211_CRYPT_WEP=m 17.572 +CONFIG_IEEE80211_CRYPT_CCMP=m 17.573 +CONFIG_IEEE80211_CRYPT_TKIP=m 17.574 +CONFIG_IEEE80211_SOFTMAC=m 17.575 +# CONFIG_IEEE80211_SOFTMAC_DEBUG is not set 17.576 +# CONFIG_RFKILL is not set 17.577 +# CONFIG_NET_9P is not set 17.578 + 17.579 +# 17.580 +# Device Drivers 17.581 +# 17.582 + 17.583 +# 17.584 +# Generic Driver Options 17.585 +# 17.586 +CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 17.587 +CONFIG_STANDALONE=y 17.588 +CONFIG_PREVENT_FIRMWARE_BUILD=y 17.589 +CONFIG_FW_LOADER=m 17.590 +# CONFIG_SYS_HYPERVISOR is not set 17.591 +# CONFIG_CONNECTOR is not set 17.592 +# CONFIG_MTD is not set 17.593 +CONFIG_PARPORT=m 17.594 +CONFIG_PARPORT_PC=m 17.595 +# CONFIG_PARPORT_SERIAL is not set 17.596 +# CONFIG_PARPORT_PC_FIFO is not set 17.597 +# CONFIG_PARPORT_PC_SUPERIO is not set 17.598 +# CONFIG_PARPORT_PC_PCMCIA is not set 17.599 +# CONFIG_PARPORT_GSC is not set 17.600 +# CONFIG_PARPORT_AX88796 is not set 17.601 +CONFIG_PARPORT_1284=y 17.602 +CONFIG_PNP=y 17.603 +# CONFIG_PNP_DEBUG is not set 17.604 + 17.605 +# 17.606 +# Protocols 17.607 +# 17.608 +CONFIG_ISAPNP=y 17.609 +# CONFIG_PNPBIOS is not set 17.610 +CONFIG_PNPACPI=y 17.611 +CONFIG_BLK_DEV=y 17.612 +CONFIG_BLK_DEV_FD=y 17.613 +# CONFIG_BLK_DEV_XD is not set 17.614 +# CONFIG_PARIDE is not set 17.615 +# CONFIG_BLK_CPQ_DA is not set 17.616 +# CONFIG_BLK_CPQ_CISS_DA is not set 17.617 +# CONFIG_BLK_DEV_DAC960 is not set 17.618 +# CONFIG_BLK_DEV_UMEM is not set 17.619 +# CONFIG_BLK_DEV_COW_COMMON is not set 17.620 +CONFIG_BLK_DEV_LOOP=y 17.621 +CONFIG_BLK_DEV_CRYPTOLOOP=m 17.622 +# CONFIG_BLK_DEV_NBD is not set 17.623 +# CONFIG_BLK_DEV_SX8 is not set 17.624 +# CONFIG_BLK_DEV_UB is not set 17.625 +CONFIG_BLK_DEV_RAM=y 17.626 +CONFIG_BLK_DEV_RAM_COUNT=16 17.627 +CONFIG_BLK_DEV_RAM_SIZE=4096 17.628 +# CONFIG_BLK_DEV_XIP is not set 17.629 +# CONFIG_RD_BZIP2 is not set 17.630 +CONFIG_RD_LZMA=y 17.631 +CONFIG_RD_GZIP=y 17.632 +# CONFIG_CDROM_PKTCDVD is not set 17.633 +# CONFIG_ATA_OVER_ETH is not set 17.634 +# CONFIG_VIRTIO_BLK is not set 17.635 +CONFIG_MISC_DEVICES=y 17.636 +# CONFIG_IBM_ASM is not set 17.637 +# CONFIG_PHANTOM is not set 17.638 +CONFIG_EEPROM_93CX6=m 17.639 +# CONFIG_SGI_IOC4 is not set 17.640 +# CONFIG_TIFM_CORE is not set 17.641 +# CONFIG_FUJITSU_LAPTOP is not set 17.642 +# CONFIG_TC1100_WMI is not set 17.643 +# CONFIG_MSI_LAPTOP is not set 17.644 +# CONFIG_SONY_LAPTOP is not set 17.645 +CONFIG_THINKPAD_ACPI=m 17.646 +# CONFIG_THINKPAD_ACPI_DEBUG is not set 17.647 +CONFIG_THINKPAD_ACPI_BAY=y 17.648 +CONFIG_THINKPAD_ACPI_VIDEO=y 17.649 +CONFIG_THINKPAD_ACPI_HOTKEY_POLL=y 17.650 +# CONFIG_INTEL_MENLOW is not set 17.651 +# CONFIG_ENCLOSURE_SERVICES is not set 17.652 +CONFIG_HAVE_IDE=y 17.653 +CONFIG_IDE=y 17.654 +CONFIG_BLK_DEV_IDE=y 17.655 + 17.656 +# 17.657 +# Please see Documentation/ide/ide.txt for help/info on IDE drives 17.658 +# 17.659 +# CONFIG_BLK_DEV_IDE_SATA is not set 17.660 +# CONFIG_BLK_DEV_HD_IDE is not set 17.661 +CONFIG_BLK_DEV_IDEDISK=y 17.662 +CONFIG_IDEDISK_MULTI_MODE=y 17.663 +# CONFIG_BLK_DEV_IDECS is not set 17.664 +# CONFIG_BLK_DEV_DELKIN is not set 17.665 +CONFIG_BLK_DEV_IDECD=y 17.666 +CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y 17.667 +# CONFIG_BLK_DEV_IDETAPE is not set 17.668 +CONFIG_BLK_DEV_IDEFLOPPY=y 17.669 +# CONFIG_BLK_DEV_IDESCSI is not set 17.670 +# CONFIG_BLK_DEV_IDEACPI is not set 17.671 +# CONFIG_IDE_TASK_IOCTL is not set 17.672 +CONFIG_IDE_PROC_FS=y 17.673 + 17.674 +# 17.675 +# IDE chipset support/bugfixes 17.676 +# 17.677 +CONFIG_IDE_GENERIC=y 17.678 +# CONFIG_BLK_DEV_PLATFORM is not set 17.679 +CONFIG_BLK_DEV_CMD640=y 17.680 +# CONFIG_BLK_DEV_CMD640_ENHANCED is not set 17.681 +# CONFIG_BLK_DEV_IDEPNP is not set 17.682 +CONFIG_BLK_DEV_IDEDMA_SFF=y 17.683 + 17.684 +# 17.685 +# PCI IDE chipsets support 17.686 +# 17.687 +CONFIG_BLK_DEV_IDEPCI=y 17.688 +CONFIG_IDEPCI_PCIBUS_ORDER=y 17.689 +# CONFIG_BLK_DEV_OFFBOARD is not set 17.690 +CONFIG_BLK_DEV_GENERIC=y 17.691 +# CONFIG_BLK_DEV_OPTI621 is not set 17.692 +CONFIG_BLK_DEV_RZ1000=y 17.693 +CONFIG_BLK_DEV_IDEDMA_PCI=y 17.694 +CONFIG_BLK_DEV_AEC62XX=y 17.695 +CONFIG_BLK_DEV_ALI15X3=y 17.696 +# CONFIG_WDC_ALI15X3 is not set 17.697 +CONFIG_BLK_DEV_AMD74XX=y 17.698 +CONFIG_BLK_DEV_ATIIXP=y 17.699 +CONFIG_BLK_DEV_CMD64X=y 17.700 +CONFIG_BLK_DEV_TRIFLEX=y 17.701 +CONFIG_BLK_DEV_CY82C693=y 17.702 +# CONFIG_BLK_DEV_CS5520 is not set 17.703 +CONFIG_BLK_DEV_CS5530=y 17.704 +CONFIG_BLK_DEV_CS5535=y 17.705 +# CONFIG_BLK_DEV_HPT34X is not set 17.706 +# CONFIG_BLK_DEV_HPT366 is not set 17.707 +CONFIG_BLK_DEV_JMICRON=y 17.708 +# CONFIG_BLK_DEV_SC1200 is not set 17.709 +CONFIG_BLK_DEV_PIIX=y 17.710 +CONFIG_BLK_DEV_IT8213=y 17.711 +CONFIG_BLK_DEV_IT821X=y 17.712 +CONFIG_BLK_DEV_NS87415=y 17.713 +# CONFIG_BLK_DEV_PDC202XX_OLD is not set 17.714 +CONFIG_BLK_DEV_PDC202XX_NEW=y 17.715 +CONFIG_BLK_DEV_SVWKS=y 17.716 +CONFIG_BLK_DEV_SIIMAGE=y 17.717 +CONFIG_BLK_DEV_SIS5513=y 17.718 +CONFIG_BLK_DEV_SLC90E66=y 17.719 +CONFIG_BLK_DEV_TRM290=y 17.720 +CONFIG_BLK_DEV_VIA82CXXX=y 17.721 +# CONFIG_BLK_DEV_TC86C001 is not set 17.722 + 17.723 +# 17.724 +# Other IDE chipsets support 17.725 +# 17.726 + 17.727 +# 17.728 +# Note: most of these also require special kernel boot parameters 17.729 +# 17.730 +# CONFIG_BLK_DEV_4DRIVES is not set 17.731 +# CONFIG_BLK_DEV_ALI14XX is not set 17.732 +# CONFIG_BLK_DEV_DTC2278 is not set 17.733 +# CONFIG_BLK_DEV_HT6560B is not set 17.734 +# CONFIG_BLK_DEV_QD65XX is not set 17.735 +# CONFIG_BLK_DEV_UMC8672 is not set 17.736 +CONFIG_BLK_DEV_IDEDMA=y 17.737 +CONFIG_IDE_ARCH_OBSOLETE_INIT=y 17.738 +# CONFIG_BLK_DEV_HD is not set 17.739 + 17.740 +# 17.741 +# SCSI device support 17.742 +# 17.743 +# CONFIG_RAID_ATTRS is not set 17.744 +CONFIG_SCSI=y 17.745 +CONFIG_SCSI_DMA=y 17.746 +# CONFIG_SCSI_TGT is not set 17.747 +# CONFIG_SCSI_NETLINK is not set 17.748 +CONFIG_SCSI_PROC_FS=y 17.749 + 17.750 +# 17.751 +# SCSI support type (disk, tape, CD-ROM) 17.752 +# 17.753 +CONFIG_BLK_DEV_SD=y 17.754 +# CONFIG_CHR_DEV_ST is not set 17.755 +# CONFIG_CHR_DEV_OSST is not set 17.756 +CONFIG_BLK_DEV_SR=y 17.757 +# CONFIG_BLK_DEV_SR_VENDOR is not set 17.758 +CONFIG_CHR_DEV_SG=y 17.759 +# CONFIG_CHR_DEV_SCH is not set 17.760 + 17.761 +# 17.762 +# Some SCSI devices (e.g. CD jukebox) support multiple LUNs 17.763 +# 17.764 +# CONFIG_SCSI_MULTI_LUN is not set 17.765 +# CONFIG_SCSI_CONSTANTS is not set 17.766 +# CONFIG_SCSI_LOGGING is not set 17.767 +# CONFIG_SCSI_SCAN_ASYNC is not set 17.768 +CONFIG_SCSI_WAIT_SCAN=m 17.769 + 17.770 +# 17.771 +# SCSI Transports 17.772 +# 17.773 +CONFIG_SCSI_SPI_ATTRS=m 17.774 +# CONFIG_SCSI_FC_ATTRS is not set 17.775 +CONFIG_SCSI_ISCSI_ATTRS=m 17.776 +# CONFIG_SCSI_SAS_LIBSAS is not set 17.777 +# CONFIG_SCSI_SRP_ATTRS is not set 17.778 +CONFIG_SCSI_LOWLEVEL=y 17.779 +CONFIG_ISCSI_TCP=m 17.780 +# CONFIG_BLK_DEV_3W_XXXX_RAID is not set 17.781 +# CONFIG_SCSI_3W_9XXX is not set 17.782 +# CONFIG_SCSI_7000FASST is not set 17.783 +# CONFIG_SCSI_ACARD is not set 17.784 +# CONFIG_SCSI_AHA152X is not set 17.785 +# CONFIG_SCSI_AHA1542 is not set 17.786 +# CONFIG_SCSI_AACRAID is not set 17.787 +CONFIG_SCSI_AIC7XXX=m 17.788 +CONFIG_AIC7XXX_CMDS_PER_DEVICE=32 17.789 +CONFIG_AIC7XXX_RESET_DELAY_MS=5000 17.790 +CONFIG_AIC7XXX_DEBUG_ENABLE=y 17.791 +CONFIG_AIC7XXX_DEBUG_MASK=0 17.792 +CONFIG_AIC7XXX_REG_PRETTY_PRINT=y 17.793 +# CONFIG_SCSI_AIC7XXX_OLD is not set 17.794 +# CONFIG_SCSI_AIC79XX is not set 17.795 +# CONFIG_SCSI_AIC94XX is not set 17.796 +# CONFIG_SCSI_DPT_I2O is not set 17.797 +# CONFIG_SCSI_ADVANSYS is not set 17.798 +# CONFIG_SCSI_IN2000 is not set 17.799 +# CONFIG_SCSI_ARCMSR is not set 17.800 +# CONFIG_MEGARAID_NEWGEN is not set 17.801 +# CONFIG_MEGARAID_LEGACY is not set 17.802 +# CONFIG_MEGARAID_SAS is not set 17.803 +# CONFIG_SCSI_HPTIOP is not set 17.804 +# CONFIG_SCSI_BUSLOGIC is not set 17.805 +# CONFIG_SCSI_DMX3191D is not set 17.806 +# CONFIG_SCSI_DTC3280 is not set 17.807 +# CONFIG_SCSI_EATA is not set 17.808 +# CONFIG_SCSI_FUTURE_DOMAIN is not set 17.809 +# CONFIG_SCSI_GDTH is not set 17.810 +# CONFIG_SCSI_GENERIC_NCR5380 is not set 17.811 +# CONFIG_SCSI_GENERIC_NCR5380_MMIO is not set 17.812 +# CONFIG_SCSI_IPS is not set 17.813 +# CONFIG_SCSI_INITIO is not set 17.814 +# CONFIG_SCSI_INIA100 is not set 17.815 +# CONFIG_SCSI_PPA is not set 17.816 +# CONFIG_SCSI_IMM is not set 17.817 +# CONFIG_SCSI_MVSAS is not set 17.818 +# CONFIG_SCSI_NCR53C406A is not set 17.819 +# CONFIG_SCSI_STEX is not set 17.820 +# CONFIG_SCSI_SYM53C8XX_2 is not set 17.821 +# CONFIG_SCSI_IPR is not set 17.822 +# CONFIG_SCSI_PAS16 is not set 17.823 +# CONFIG_SCSI_QLOGIC_FAS is not set 17.824 +# CONFIG_SCSI_QLOGIC_1280 is not set 17.825 +# CONFIG_SCSI_QLA_FC is not set 17.826 +# CONFIG_SCSI_QLA_ISCSI is not set 17.827 +# CONFIG_SCSI_LPFC is not set 17.828 +# CONFIG_SCSI_SYM53C416 is not set 17.829 +# CONFIG_SCSI_DC395x is not set 17.830 +# CONFIG_SCSI_DC390T is not set 17.831 +# CONFIG_SCSI_T128 is not set 17.832 +# CONFIG_SCSI_U14_34F is not set 17.833 +# CONFIG_SCSI_ULTRASTOR is not set 17.834 +# CONFIG_SCSI_NSP32 is not set 17.835 +# CONFIG_SCSI_DEBUG is not set 17.836 +# CONFIG_SCSI_SRP is not set 17.837 +# CONFIG_SCSI_LOWLEVEL_PCMCIA is not set 17.838 +CONFIG_ATA=y 17.839 +# CONFIG_ATA_NONSTANDARD is not set 17.840 +CONFIG_ATA_ACPI=y 17.841 +CONFIG_SATA_AHCI=y 17.842 +# CONFIG_SATA_SVW is not set 17.843 +CONFIG_ATA_PIIX=y 17.844 +# CONFIG_SATA_MV is not set 17.845 +CONFIG_SATA_NV=y 17.846 +# CONFIG_PDC_ADMA is not set 17.847 +# CONFIG_SATA_QSTOR is not set 17.848 +# CONFIG_SATA_PROMISE is not set 17.849 +# CONFIG_SATA_SX4 is not set 17.850 +# CONFIG_SATA_SIL is not set 17.851 +# CONFIG_SATA_SIL24 is not set 17.852 +CONFIG_SATA_SIS=y 17.853 +# CONFIG_SATA_ULI is not set 17.854 +CONFIG_SATA_VIA=y 17.855 +# CONFIG_SATA_VITESSE is not set 17.856 +# CONFIG_SATA_INIC162X is not set 17.857 +# CONFIG_PATA_ACPI is not set 17.858 +# CONFIG_PATA_ALI is not set 17.859 +# CONFIG_PATA_AMD is not set 17.860 +# CONFIG_PATA_ARTOP is not set 17.861 +# CONFIG_PATA_ATIIXP is not set 17.862 +# CONFIG_PATA_CMD640_PCI is not set 17.863 +# CONFIG_PATA_CMD64X is not set 17.864 +# CONFIG_PATA_CS5520 is not set 17.865 +# CONFIG_PATA_CS5530 is not set 17.866 +# CONFIG_PATA_CS5535 is not set 17.867 +# CONFIG_PATA_CS5536 is not set 17.868 +# CONFIG_PATA_CYPRESS is not set 17.869 +# CONFIG_PATA_EFAR is not set 17.870 +# CONFIG_ATA_GENERIC is not set 17.871 +# CONFIG_PATA_HPT366 is not set 17.872 +# CONFIG_PATA_HPT37X is not set 17.873 +# CONFIG_PATA_HPT3X2N is not set 17.874 +# CONFIG_PATA_HPT3X3 is not set 17.875 +# CONFIG_PATA_ISAPNP is not set 17.876 +# CONFIG_PATA_IT821X is not set 17.877 +# CONFIG_PATA_IT8213 is not set 17.878 +# CONFIG_PATA_JMICRON is not set 17.879 +# CONFIG_PATA_LEGACY is not set 17.880 +# CONFIG_PATA_TRIFLEX is not set 17.881 +# CONFIG_PATA_MARVELL is not set 17.882 +# CONFIG_PATA_MPIIX is not set 17.883 +# CONFIG_PATA_OLDPIIX is not set 17.884 +# CONFIG_PATA_NETCELL is not set 17.885 +# CONFIG_PATA_NINJA32 is not set 17.886 +# CONFIG_PATA_NS87410 is not set 17.887 +# CONFIG_PATA_NS87415 is not set 17.888 +# CONFIG_PATA_OPTI is not set 17.889 +# CONFIG_PATA_OPTIDMA is not set 17.890 +# CONFIG_PATA_PCMCIA is not set 17.891 +# CONFIG_PATA_PDC_OLD is not set 17.892 +# CONFIG_PATA_QDI is not set 17.893 +# CONFIG_PATA_RADISYS is not set 17.894 +# CONFIG_PATA_RZ1000 is not set 17.895 +# CONFIG_PATA_SC1200 is not set 17.896 +# CONFIG_PATA_SERVERWORKS is not set 17.897 +# CONFIG_PATA_PDC2027X is not set 17.898 +# CONFIG_PATA_SIL680 is not set 17.899 +CONFIG_PATA_SIS=y 17.900 +# CONFIG_PATA_VIA is not set 17.901 +# CONFIG_PATA_WINBOND is not set 17.902 +# CONFIG_PATA_WINBOND_VLB is not set 17.903 +CONFIG_MD=y 17.904 +# CONFIG_BLK_DEV_MD is not set 17.905 +# CONFIG_BLK_DEV_DM is not set 17.906 +# CONFIG_FUSION is not set 17.907 + 17.908 +# 17.909 +# IEEE 1394 (FireWire) support 17.910 +# 17.911 +# CONFIG_FIREWIRE is not set 17.912 +CONFIG_IEEE1394=m 17.913 + 17.914 +# 17.915 +# Subsystem Options 17.916 +# 17.917 +# CONFIG_IEEE1394_VERBOSEDEBUG is not set 17.918 + 17.919 +# 17.920 +# Controllers 17.921 +# 17.922 + 17.923 +# 17.924 +# Texas Instruments PCILynx requires I2C 17.925 +# 17.926 +CONFIG_IEEE1394_OHCI1394=m 17.927 + 17.928 +# 17.929 +# Protocols 17.930 +# 17.931 +# CONFIG_IEEE1394_VIDEO1394 is not set 17.932 +# CONFIG_IEEE1394_SBP2 is not set 17.933 +# CONFIG_IEEE1394_ETH1394_ROM_ENTRY is not set 17.934 +# CONFIG_IEEE1394_ETH1394 is not set 17.935 +# CONFIG_IEEE1394_DV1394 is not set 17.936 +CONFIG_IEEE1394_RAWIO=m 17.937 +# CONFIG_I2O is not set 17.938 +# CONFIG_MACINTOSH_DRIVERS is not set 17.939 +CONFIG_NETDEVICES=y 17.940 +# CONFIG_NETDEVICES_MULTIQUEUE is not set 17.941 +CONFIG_DUMMY=y 17.942 +# CONFIG_BONDING is not set 17.943 +# CONFIG_MACVLAN is not set 17.944 +# CONFIG_EQUALIZER is not set 17.945 +CONFIG_TUN=y 17.946 +# CONFIG_VETH is not set 17.947 +# CONFIG_NET_SB1000 is not set 17.948 +CONFIG_ARCNET=m 17.949 +CONFIG_ARCNET_1201=m 17.950 +# CONFIG_ARCNET_1051 is not set 17.951 +# CONFIG_ARCNET_RAW is not set 17.952 +# CONFIG_ARCNET_CAP is not set 17.953 +CONFIG_ARCNET_COM90xx=m 17.954 +# CONFIG_ARCNET_COM90xxIO is not set 17.955 +# CONFIG_ARCNET_RIM_I is not set 17.956 +# CONFIG_ARCNET_COM20020 is not set 17.957 +CONFIG_PHYLIB=m 17.958 + 17.959 +# 17.960 +# MII PHY device drivers 17.961 +# 17.962 +CONFIG_MARVELL_PHY=m 17.963 +CONFIG_DAVICOM_PHY=m 17.964 +CONFIG_QSEMI_PHY=m 17.965 +CONFIG_LXT_PHY=m 17.966 +CONFIG_CICADA_PHY=m 17.967 +# CONFIG_VITESSE_PHY is not set 17.968 +# CONFIG_SMSC_PHY is not set 17.969 +CONFIG_BROADCOM_PHY=m 17.970 +# CONFIG_ICPLUS_PHY is not set 17.971 +# CONFIG_REALTEK_PHY is not set 17.972 +# CONFIG_MDIO_BITBANG is not set 17.973 +CONFIG_NET_ETHERNET=y 17.974 +CONFIG_MII=y 17.975 +CONFIG_HAPPYMEAL=m 17.976 +CONFIG_SUNGEM=m 17.977 +CONFIG_CASSINI=m 17.978 +CONFIG_NET_VENDOR_3COM=y 17.979 +CONFIG_EL1=m 17.980 +CONFIG_EL2=m 17.981 +CONFIG_ELPLUS=m 17.982 +# CONFIG_EL16 is not set 17.983 +CONFIG_EL3=m 17.984 +CONFIG_3C515=m 17.985 +CONFIG_VORTEX=m 17.986 +CONFIG_TYPHOON=m 17.987 +CONFIG_LANCE=m 17.988 +CONFIG_NET_VENDOR_SMC=y 17.989 +CONFIG_WD80x3=m 17.990 +CONFIG_ULTRA=m 17.991 +CONFIG_SMC9194=m 17.992 +CONFIG_NET_VENDOR_RACAL=y 17.993 +CONFIG_NI52=m 17.994 +CONFIG_NI65=m 17.995 +CONFIG_NET_TULIP=y 17.996 +# CONFIG_DE2104X is not set 17.997 +CONFIG_TULIP=m 17.998 +# CONFIG_TULIP_MWI is not set 17.999 +# CONFIG_TULIP_MMIO is not set 17.1000 +# CONFIG_TULIP_NAPI is not set 17.1001 +CONFIG_DE4X5=y 17.1002 +CONFIG_WINBOND_840=y 17.1003 +CONFIG_DM9102=y 17.1004 +CONFIG_ULI526X=m 17.1005 +CONFIG_PCMCIA_XIRCOM=y 17.1006 +# CONFIG_AT1700 is not set 17.1007 +CONFIG_DEPCA=m 17.1008 +CONFIG_HP100=m 17.1009 +CONFIG_NET_ISA=y 17.1010 +CONFIG_E2100=m 17.1011 +CONFIG_EWRK3=m 17.1012 +CONFIG_EEXPRESS=m 17.1013 +CONFIG_EEXPRESS_PRO=m 17.1014 +CONFIG_HPLAN_PLUS=m 17.1015 +CONFIG_HPLAN=m 17.1016 +CONFIG_LP486E=m 17.1017 +CONFIG_ETH16I=m 17.1018 +CONFIG_NE2000=m 17.1019 +# CONFIG_ZNET is not set 17.1020 +# CONFIG_SEEQ8005 is not set 17.1021 +# CONFIG_IBM_NEW_EMAC_ZMII is not set 17.1022 +# CONFIG_IBM_NEW_EMAC_RGMII is not set 17.1023 +# CONFIG_IBM_NEW_EMAC_TAH is not set 17.1024 +# CONFIG_IBM_NEW_EMAC_EMAC4 is not set 17.1025 +CONFIG_NET_PCI=y 17.1026 +CONFIG_PCNET32=y 17.1027 +# CONFIG_PCNET32_NAPI is not set 17.1028 +CONFIG_AMD8111_ETH=m 17.1029 +# CONFIG_AMD8111E_NAPI is not set 17.1030 +CONFIG_ADAPTEC_STARFIRE=m 17.1031 +# CONFIG_ADAPTEC_STARFIRE_NAPI is not set 17.1032 +# CONFIG_AC3200 is not set 17.1033 +CONFIG_APRICOT=m 17.1034 +CONFIG_B44=y 17.1035 +CONFIG_B44_PCI_AUTOSELECT=y 17.1036 +CONFIG_B44_PCICORE_AUTOSELECT=y 17.1037 +CONFIG_B44_PCI=y 17.1038 +CONFIG_FORCEDETH=y 17.1039 +# CONFIG_FORCEDETH_NAPI is not set 17.1040 +CONFIG_CS89x0=m 17.1041 +CONFIG_EEPRO100=y 17.1042 +CONFIG_E100=y 17.1043 +CONFIG_FEALNX=m 17.1044 +CONFIG_NATSEMI=y 17.1045 +CONFIG_NE2K_PCI=y 17.1046 +# CONFIG_8139CP is not set 17.1047 +CONFIG_8139TOO=y 17.1048 +# CONFIG_8139TOO_PIO is not set 17.1049 +CONFIG_8139TOO_TUNE_TWISTER=y 17.1050 +CONFIG_8139TOO_8129=y 17.1051 +# CONFIG_8139_OLD_RX_RESET is not set 17.1052 +# CONFIG_R6040 is not set 17.1053 +CONFIG_SIS900=y 17.1054 +CONFIG_EPIC100=y 17.1055 +CONFIG_SUNDANCE=y 17.1056 +# CONFIG_SUNDANCE_MMIO is not set 17.1057 +CONFIG_TLAN=y 17.1058 +CONFIG_VIA_RHINE=y 17.1059 +CONFIG_VIA_RHINE_MMIO=y 17.1060 +# CONFIG_VIA_RHINE_NAPI is not set 17.1061 +# CONFIG_SC92031 is not set 17.1062 +# CONFIG_NET_POCKET is not set 17.1063 +CONFIG_NETDEV_1000=y 17.1064 +CONFIG_ACENIC=y 17.1065 +# CONFIG_ACENIC_OMIT_TIGON_I is not set 17.1066 +CONFIG_DL2K=m 17.1067 +CONFIG_E1000=m 17.1068 +# CONFIG_E1000_NAPI is not set 17.1069 +# CONFIG_E1000_DISABLE_PACKET_SPLIT is not set 17.1070 +CONFIG_E1000E=y 17.1071 +CONFIG_E1000E_ENABLED=y 17.1072 +CONFIG_IP1000=m 17.1073 +# CONFIG_IGB is not set 17.1074 +CONFIG_NS83820=y 17.1075 +CONFIG_HAMACHI=y 17.1076 +# CONFIG_YELLOWFIN is not set 17.1077 +CONFIG_R8169=y 17.1078 +# CONFIG_R8169_NAPI is not set 17.1079 +CONFIG_SIS190=m 17.1080 +CONFIG_SKGE=m 17.1081 +CONFIG_SKY2=m 17.1082 +CONFIG_SK98LIN=m 17.1083 +CONFIG_VIA_VELOCITY=m 17.1084 +CONFIG_TIGON3=m 17.1085 +CONFIG_BNX2=m 17.1086 +CONFIG_QLA3XXX=y 17.1087 +CONFIG_ATL1=y 17.1088 +# CONFIG_NETDEV_10000 is not set 17.1089 +# CONFIG_TR is not set 17.1090 + 17.1091 +# 17.1092 +# Wireless LAN 17.1093 +# 17.1094 +# CONFIG_WLAN_PRE80211 is not set 17.1095 +CONFIG_WLAN_80211=y 17.1096 +# CONFIG_PCMCIA_RAYCS is not set 17.1097 +CONFIG_IPW2100=m 17.1098 +CONFIG_IPW2100_MONITOR=y 17.1099 +# CONFIG_IPW2100_DEBUG is not set 17.1100 +CONFIG_IPW2200=m 17.1101 +CONFIG_IPW2200_MONITOR=y 17.1102 +CONFIG_IPW2200_RADIOTAP=y 17.1103 +CONFIG_IPW2200_PROMISCUOUS=y 17.1104 +CONFIG_IPW2200_QOS=y 17.1105 +# CONFIG_IPW2200_DEBUG is not set 17.1106 +# CONFIG_LIBERTAS is not set 17.1107 +# CONFIG_AIRO is not set 17.1108 +CONFIG_HERMES=m 17.1109 +# CONFIG_PLX_HERMES is not set 17.1110 +# CONFIG_TMD_HERMES is not set 17.1111 +# CONFIG_NORTEL_HERMES is not set 17.1112 +# CONFIG_PCI_HERMES is not set 17.1113 +# CONFIG_PCMCIA_HERMES is not set 17.1114 +# CONFIG_PCMCIA_SPECTRUM is not set 17.1115 +# CONFIG_ATMEL is not set 17.1116 +# CONFIG_AIRO_CS is not set 17.1117 +# CONFIG_PCMCIA_WL3501 is not set 17.1118 +# CONFIG_PRISM54 is not set 17.1119 +# CONFIG_USB_ZD1201 is not set 17.1120 +CONFIG_USB_NET_RNDIS_WLAN=m 17.1121 +# CONFIG_RTL8180 is not set 17.1122 +CONFIG_RTL8187=m 17.1123 +# CONFIG_ADM8211 is not set 17.1124 +# CONFIG_P54_COMMON is not set 17.1125 +CONFIG_ATH5K=m 17.1126 +# CONFIG_IWL4965 is not set 17.1127 +# CONFIG_IWL3945 is not set 17.1128 +# CONFIG_HOSTAP is not set 17.1129 +CONFIG_B43=m 17.1130 +CONFIG_B43_PCI_AUTOSELECT=y 17.1131 +CONFIG_B43_PCICORE_AUTOSELECT=y 17.1132 +# CONFIG_B43_DEBUG is not set 17.1133 +CONFIG_B43LEGACY=m 17.1134 +CONFIG_B43LEGACY_PCI_AUTOSELECT=y 17.1135 +CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y 17.1136 +# CONFIG_B43LEGACY_DEBUG is not set 17.1137 +CONFIG_B43LEGACY_DMA=y 17.1138 +CONFIG_B43LEGACY_PIO=y 17.1139 +CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y 17.1140 +# CONFIG_B43LEGACY_DMA_MODE is not set 17.1141 +# CONFIG_B43LEGACY_PIO_MODE is not set 17.1142 +CONFIG_ZD1211RW=m 17.1143 +# CONFIG_ZD1211RW_DEBUG is not set 17.1144 +CONFIG_RT2X00=m 17.1145 +CONFIG_RT2X00_LIB=m 17.1146 +CONFIG_RT2X00_LIB_PCI=m 17.1147 +CONFIG_RT2X00_LIB_USB=m 17.1148 +CONFIG_RT2400PCI=m 17.1149 +# CONFIG_RT2400PCI_RFKILL is not set 17.1150 +CONFIG_RT2500PCI=m 17.1151 +# CONFIG_RT2500PCI_RFKILL is not set 17.1152 +# CONFIG_RT61PCI is not set 17.1153 +CONFIG_RT2500USB=m 17.1154 +# CONFIG_RT73USB is not set 17.1155 +# CONFIG_RT2X00_DEBUG is not set 17.1156 + 17.1157 +# 17.1158 +# USB Network Adapters 17.1159 +# 17.1160 +# CONFIG_USB_CATC is not set 17.1161 +# CONFIG_USB_KAWETH is not set 17.1162 +# CONFIG_USB_PEGASUS is not set 17.1163 +# CONFIG_USB_RTL8150 is not set 17.1164 +CONFIG_USB_USBNET=m 17.1165 +CONFIG_USB_NET_AX8817X=m 17.1166 +CONFIG_USB_NET_CDCETHER=m 17.1167 +# CONFIG_USB_NET_DM9601 is not set 17.1168 +# CONFIG_USB_NET_GL620A is not set 17.1169 +CONFIG_USB_NET_NET1080=m 17.1170 +# CONFIG_USB_NET_PLUSB is not set 17.1171 +# CONFIG_USB_NET_MCS7830 is not set 17.1172 +CONFIG_USB_NET_RNDIS_HOST=m 17.1173 +CONFIG_USB_NET_CDC_SUBSET=m 17.1174 +# CONFIG_USB_ALI_M5632 is not set 17.1175 +# CONFIG_USB_AN2720 is not set 17.1176 +CONFIG_USB_BELKIN=y 17.1177 +CONFIG_USB_ARMLINUX=y 17.1178 +# CONFIG_USB_EPSON2888 is not set 17.1179 +# CONFIG_USB_KC2190 is not set 17.1180 +CONFIG_USB_NET_ZAURUS=m 17.1181 +CONFIG_NET_PCMCIA=y 17.1182 +CONFIG_PCMCIA_3C589=m 17.1183 +CONFIG_PCMCIA_3C574=m 17.1184 +CONFIG_PCMCIA_FMVJ18X=m 17.1185 +CONFIG_PCMCIA_PCNET=m 17.1186 +CONFIG_PCMCIA_NMCLAN=m 17.1187 +CONFIG_PCMCIA_SMC91C92=m 17.1188 +CONFIG_PCMCIA_XIRC2PS=m 17.1189 +CONFIG_PCMCIA_AXNET=m 17.1190 +# CONFIG_WAN is not set 17.1191 +# CONFIG_FDDI is not set 17.1192 +# CONFIG_HIPPI is not set 17.1193 +# CONFIG_PLIP is not set 17.1194 +CONFIG_PPP=y 17.1195 +# CONFIG_PPP_MULTILINK is not set 17.1196 +# CONFIG_PPP_FILTER is not set 17.1197 +CONFIG_PPP_ASYNC=y 17.1198 +# CONFIG_PPP_SYNC_TTY is not set 17.1199 +CONFIG_PPP_DEFLATE=y 17.1200 +# CONFIG_PPP_BSDCOMP is not set 17.1201 +# CONFIG_PPP_MPPE is not set 17.1202 +CONFIG_PPPOE=y 17.1203 +# CONFIG_PPPOL2TP is not set 17.1204 +# CONFIG_SLIP is not set 17.1205 +CONFIG_SLHC=y 17.1206 +# CONFIG_NET_FC is not set 17.1207 +# CONFIG_NETCONSOLE is not set 17.1208 +# CONFIG_NETPOLL is not set 17.1209 +# CONFIG_NET_POLL_CONTROLLER is not set 17.1210 +# CONFIG_VIRTIO_NET is not set 17.1211 +# CONFIG_ISDN is not set 17.1212 +# CONFIG_PHONE is not set 17.1213 + 17.1214 +# 17.1215 +# Input device support 17.1216 +# 17.1217 +CONFIG_INPUT=y 17.1218 +# CONFIG_INPUT_FF_MEMLESS is not set 17.1219 +# CONFIG_INPUT_POLLDEV is not set 17.1220 + 17.1221 +# 17.1222 +# Userland interfaces 17.1223 +# 17.1224 +CONFIG_INPUT_MOUSEDEV=y 17.1225 +CONFIG_INPUT_MOUSEDEV_PSAUX=y 17.1226 +CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 17.1227 +CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 17.1228 +CONFIG_INPUT_JOYDEV=y 17.1229 +CONFIG_INPUT_EVDEV=y 17.1230 +# CONFIG_INPUT_EVBUG is not set 17.1231 + 17.1232 +# 17.1233 +# Input Device Drivers 17.1234 +# 17.1235 +CONFIG_INPUT_KEYBOARD=y 17.1236 +CONFIG_KEYBOARD_ATKBD=y 17.1237 +# CONFIG_KEYBOARD_SUNKBD is not set 17.1238 +# CONFIG_KEYBOARD_LKKBD is not set 17.1239 +# CONFIG_KEYBOARD_XTKBD is not set 17.1240 +# CONFIG_KEYBOARD_NEWTON is not set 17.1241 +# CONFIG_KEYBOARD_STOWAWAY is not set 17.1242 +CONFIG_INPUT_MOUSE=y 17.1243 +CONFIG_MOUSE_PS2=y 17.1244 +CONFIG_MOUSE_PS2_ALPS=y 17.1245 +CONFIG_MOUSE_PS2_LOGIPS2PP=y 17.1246 +CONFIG_MOUSE_PS2_SYNAPTICS=y 17.1247 +CONFIG_MOUSE_PS2_LIFEBOOK=y 17.1248 +CONFIG_MOUSE_PS2_TRACKPOINT=y 17.1249 +# CONFIG_MOUSE_PS2_TOUCHKIT is not set 17.1250 +CONFIG_MOUSE_SERIAL=y 17.1251 +# CONFIG_MOUSE_APPLETOUCH is not set 17.1252 +CONFIG_MOUSE_INPORT=m 17.1253 +# CONFIG_MOUSE_ATIXL is not set 17.1254 +CONFIG_MOUSE_LOGIBM=m 17.1255 +CONFIG_MOUSE_PC110PAD=m 17.1256 +# CONFIG_MOUSE_VSXXXAA is not set 17.1257 +CONFIG_INPUT_JOYSTICK=y 17.1258 +CONFIG_JOYSTICK_ANALOG=m 17.1259 +# CONFIG_JOYSTICK_A3D is not set 17.1260 +# CONFIG_JOYSTICK_ADI is not set 17.1261 +# CONFIG_JOYSTICK_COBRA is not set 17.1262 +# CONFIG_JOYSTICK_GF2K is not set 17.1263 +# CONFIG_JOYSTICK_GRIP is not set 17.1264 +# CONFIG_JOYSTICK_GRIP_MP is not set 17.1265 +# CONFIG_JOYSTICK_GUILLEMOT is not set 17.1266 +# CONFIG_JOYSTICK_INTERACT is not set 17.1267 +CONFIG_JOYSTICK_SIDEWINDER=m 17.1268 +# CONFIG_JOYSTICK_TMDC is not set 17.1269 +# CONFIG_JOYSTICK_IFORCE is not set 17.1270 +# CONFIG_JOYSTICK_WARRIOR is not set 17.1271 +# CONFIG_JOYSTICK_MAGELLAN is not set 17.1272 +# CONFIG_JOYSTICK_SPACEORB is not set 17.1273 +# CONFIG_JOYSTICK_SPACEBALL is not set 17.1274 +# CONFIG_JOYSTICK_STINGER is not set 17.1275 +# CONFIG_JOYSTICK_TWIDJOY is not set 17.1276 +# CONFIG_JOYSTICK_DB9 is not set 17.1277 +# CONFIG_JOYSTICK_GAMECON is not set 17.1278 +# CONFIG_JOYSTICK_TURBOGRAFX is not set 17.1279 +# CONFIG_JOYSTICK_JOYDUMP is not set 17.1280 +CONFIG_JOYSTICK_XPAD=m 17.1281 +# CONFIG_JOYSTICK_XPAD_FF is not set 17.1282 +# CONFIG_INPUT_TABLET is not set 17.1283 +# CONFIG_INPUT_TOUCHSCREEN is not set 17.1284 +CONFIG_INPUT_MISC=y 17.1285 +CONFIG_INPUT_PCSPKR=y 17.1286 +# CONFIG_INPUT_WISTRON_BTNS is not set 17.1287 +# CONFIG_INPUT_ATLAS_BTNS is not set 17.1288 +# CONFIG_INPUT_ATI_REMOTE is not set 17.1289 +# CONFIG_INPUT_ATI_REMOTE2 is not set 17.1290 +# CONFIG_INPUT_KEYSPAN_REMOTE is not set 17.1291 +# CONFIG_INPUT_POWERMATE is not set 17.1292 +# CONFIG_INPUT_YEALINK is not set 17.1293 +# CONFIG_INPUT_UINPUT is not set 17.1294 + 17.1295 +# 17.1296 +# Hardware I/O ports 17.1297 +# 17.1298 +CONFIG_SERIO=y 17.1299 +CONFIG_SERIO_I8042=y 17.1300 +CONFIG_SERIO_SERPORT=y 17.1301 +# CONFIG_SERIO_CT82C710 is not set 17.1302 +# CONFIG_SERIO_PARKBD is not set 17.1303 +CONFIG_SERIO_PCIPS2=y 17.1304 +CONFIG_SERIO_LIBPS2=y 17.1305 +CONFIG_SERIO_RAW=y 17.1306 +CONFIG_GAMEPORT=m 17.1307 +# CONFIG_GAMEPORT_NS558 is not set 17.1308 +# CONFIG_GAMEPORT_L4 is not set 17.1309 +# CONFIG_GAMEPORT_EMU10K1 is not set 17.1310 +# CONFIG_GAMEPORT_FM801 is not set 17.1311 + 17.1312 +# 17.1313 +# Character devices 17.1314 +# 17.1315 +CONFIG_VT=y 17.1316 +CONFIG_VT_CONSOLE=y 17.1317 +CONFIG_HW_CONSOLE=y 17.1318 +# CONFIG_VT_HW_CONSOLE_BINDING is not set 17.1319 +# CONFIG_SERIAL_NONSTANDARD is not set 17.1320 +# CONFIG_NOZOMI is not set 17.1321 + 17.1322 +# 17.1323 +# Serial drivers 17.1324 +# 17.1325 +CONFIG_SERIAL_8250=y 17.1326 +# CONFIG_SERIAL_8250_CONSOLE is not set 17.1327 +CONFIG_FIX_EARLYCON_MEM=y 17.1328 +CONFIG_SERIAL_8250_PCI=y 17.1329 +CONFIG_SERIAL_8250_PNP=y 17.1330 +# CONFIG_SERIAL_8250_CS is not set 17.1331 +CONFIG_SERIAL_8250_NR_UARTS=4 17.1332 +CONFIG_SERIAL_8250_RUNTIME_UARTS=4 17.1333 +# CONFIG_SERIAL_8250_EXTENDED is not set 17.1334 + 17.1335 +# 17.1336 +# Non-8250 serial port support 17.1337 +# 17.1338 +CONFIG_SERIAL_CORE=y 17.1339 +# CONFIG_SERIAL_JSM is not set 17.1340 +CONFIG_UNIX98_PTYS=y 17.1341 +# CONFIG_LEGACY_PTYS is not set 17.1342 +CONFIG_PRINTER=m 17.1343 +# CONFIG_LP_CONSOLE is not set 17.1344 +# CONFIG_PPDEV is not set 17.1345 +CONFIG_HVC_DRIVER=y 17.1346 +# CONFIG_IPMI_HANDLER is not set 17.1347 +CONFIG_HW_RANDOM=y 17.1348 +CONFIG_HW_RANDOM_INTEL=y 17.1349 +CONFIG_HW_RANDOM_AMD=y 17.1350 +CONFIG_HW_RANDOM_GEODE=y 17.1351 +CONFIG_HW_RANDOM_VIA=y 17.1352 +CONFIG_NVRAM=y 17.1353 +CONFIG_RTC=m 17.1354 +CONFIG_GEN_RTC=m 17.1355 +# CONFIG_GEN_RTC_X is not set 17.1356 +# CONFIG_DTLK is not set 17.1357 +# CONFIG_R3964 is not set 17.1358 +# CONFIG_APPLICOM is not set 17.1359 +# CONFIG_SONYPI is not set 17.1360 + 17.1361 +# 17.1362 +# PCMCIA character devices 17.1363 +# 17.1364 +# CONFIG_SYNCLINK_CS is not set 17.1365 +# CONFIG_CARDMAN_4000 is not set 17.1366 +# CONFIG_CARDMAN_4040 is not set 17.1367 +# CONFIG_IPWIRELESS is not set 17.1368 +CONFIG_MWAVE=m 17.1369 +# CONFIG_PC8736x_GPIO is not set 17.1370 +# CONFIG_NSC_GPIO is not set 17.1371 +# CONFIG_CS5535_GPIO is not set 17.1372 +# CONFIG_RAW_DRIVER is not set 17.1373 +# CONFIG_HPET is not set 17.1374 +# CONFIG_HANGCHECK_TIMER is not set 17.1375 +# CONFIG_TCG_TPM is not set 17.1376 +# CONFIG_TELCLOCK is not set 17.1377 +CONFIG_DEVPORT=y 17.1378 +# CONFIG_I2C is not set 17.1379 + 17.1380 +# 17.1381 +# SPI support 17.1382 +# 17.1383 +# CONFIG_SPI is not set 17.1384 +# CONFIG_SPI_MASTER is not set 17.1385 +# CONFIG_W1 is not set 17.1386 +CONFIG_POWER_SUPPLY=y 17.1387 +# CONFIG_POWER_SUPPLY_DEBUG is not set 17.1388 +# CONFIG_PDA_POWER is not set 17.1389 +# CONFIG_BATTERY_DS2760 is not set 17.1390 +CONFIG_HWMON=m 17.1391 +# CONFIG_HWMON_VID is not set 17.1392 +# CONFIG_SENSORS_ABITUGURU is not set 17.1393 +# CONFIG_SENSORS_ABITUGURU3 is not set 17.1394 +# CONFIG_SENSORS_K8TEMP is not set 17.1395 +# CONFIG_SENSORS_I5K_AMB is not set 17.1396 +# CONFIG_SENSORS_F71805F is not set 17.1397 +# CONFIG_SENSORS_F71882FG is not set 17.1398 +# CONFIG_SENSORS_CORETEMP is not set 17.1399 +# CONFIG_SENSORS_IT87 is not set 17.1400 +# CONFIG_SENSORS_PC87360 is not set 17.1401 +# CONFIG_SENSORS_PC87427 is not set 17.1402 +# CONFIG_SENSORS_SIS5595 is not set 17.1403 +# CONFIG_SENSORS_SMSC47M1 is not set 17.1404 +# CONFIG_SENSORS_SMSC47B397 is not set 17.1405 +# CONFIG_SENSORS_VIA686A is not set 17.1406 +# CONFIG_SENSORS_VT1211 is not set 17.1407 +# CONFIG_SENSORS_VT8231 is not set 17.1408 +# CONFIG_SENSORS_W83627HF is not set 17.1409 +# CONFIG_SENSORS_W83627EHF is not set 17.1410 +# CONFIG_SENSORS_HDAPS is not set 17.1411 +# CONFIG_SENSORS_APPLESMC is not set 17.1412 +# CONFIG_HWMON_DEBUG_CHIP is not set 17.1413 +CONFIG_THERMAL=y 17.1414 +# CONFIG_WATCHDOG is not set 17.1415 + 17.1416 +# 17.1417 +# Sonics Silicon Backplane 17.1418 +# 17.1419 +CONFIG_SSB_POSSIBLE=y 17.1420 +CONFIG_SSB=y 17.1421 +CONFIG_SSB_PCIHOST_POSSIBLE=y 17.1422 +CONFIG_SSB_PCIHOST=y 17.1423 +CONFIG_SSB_B43_PCI_BRIDGE=y 17.1424 +# CONFIG_SSB_DEBUG is not set 17.1425 +CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y 17.1426 +CONFIG_SSB_DRIVER_PCICORE=y 17.1427 + 17.1428 +# 17.1429 +# Multifunction device drivers 17.1430 +# 17.1431 +# CONFIG_MFD_SM501 is not set 17.1432 + 17.1433 +# 17.1434 +# Multimedia devices 17.1435 +# 17.1436 +CONFIG_VIDEO_DEV=m 17.1437 +CONFIG_VIDEO_V4L2_COMMON=m 17.1438 +CONFIG_VIDEO_V4L1=y 17.1439 +CONFIG_VIDEO_V4L1_COMPAT=y 17.1440 +CONFIG_VIDEO_V4L2=y 17.1441 +CONFIG_VIDEO_CAPTURE_DRIVERS=y 17.1442 +# CONFIG_VIDEO_ADV_DEBUG is not set 17.1443 +CONFIG_VIDEO_HELPER_CHIPS_AUTO=y 17.1444 +# CONFIG_VIDEO_VIVI is not set 17.1445 +# CONFIG_VIDEO_PMS is not set 17.1446 +# CONFIG_VIDEO_BWQCAM is not set 17.1447 +# CONFIG_VIDEO_CQCAM is not set 17.1448 +# CONFIG_VIDEO_W9966 is not set 17.1449 +# CONFIG_VIDEO_CPIA is not set 17.1450 +# CONFIG_VIDEO_CPIA2 is not set 17.1451 +# CONFIG_VIDEO_STRADIS is not set 17.1452 +CONFIG_V4L_USB_DRIVERS=y 17.1453 +# CONFIG_USB_VICAM is not set 17.1454 +# CONFIG_USB_IBMCAM is not set 17.1455 +# CONFIG_USB_KONICAWC is not set 17.1456 +# CONFIG_USB_QUICKCAM_MESSENGER is not set 17.1457 +# CONFIG_USB_ET61X251 is not set 17.1458 +# CONFIG_USB_OV511 is not set 17.1459 +# CONFIG_USB_SE401 is not set 17.1460 +# CONFIG_USB_SN9C102 is not set 17.1461 +# CONFIG_USB_STV680 is not set 17.1462 +# CONFIG_USB_ZC0301 is not set 17.1463 +# CONFIG_USB_PWC is not set 17.1464 +# CONFIG_USB_ZR364XX is not set 17.1465 +# CONFIG_USB_STKWEBCAM is not set 17.1466 +CONFIG_RADIO_ADAPTERS=y 17.1467 +# CONFIG_RADIO_CADET is not set 17.1468 +# CONFIG_RADIO_RTRACK is not set 17.1469 +# CONFIG_RADIO_RTRACK2 is not set 17.1470 +# CONFIG_RADIO_AZTECH is not set 17.1471 +# CONFIG_RADIO_GEMTEK is not set 17.1472 +# CONFIG_RADIO_GEMTEK_PCI is not set 17.1473 +# CONFIG_RADIO_MAXIRADIO is not set 17.1474 +# CONFIG_RADIO_MAESTRO is not set 17.1475 +# CONFIG_RADIO_SF16FMI is not set 17.1476 +# CONFIG_RADIO_SF16FMR2 is not set 17.1477 +# CONFIG_RADIO_TERRATEC is not set 17.1478 +# CONFIG_RADIO_TRUST is not set 17.1479 +# CONFIG_RADIO_TYPHOON is not set 17.1480 +# CONFIG_RADIO_ZOLTRIX is not set 17.1481 +# CONFIG_USB_DSBR is not set 17.1482 +# CONFIG_USB_SI470X is not set 17.1483 +# CONFIG_DVB_CORE is not set 17.1484 +CONFIG_DAB=y 17.1485 +# CONFIG_USB_DABUSB is not set 17.1486 + 17.1487 +# 17.1488 +# Graphics support 17.1489 +# 17.1490 +CONFIG_AGP=m 17.1491 +CONFIG_AGP_ALI=m 17.1492 +CONFIG_AGP_ATI=m 17.1493 +CONFIG_AGP_AMD=m 17.1494 +CONFIG_AGP_AMD64=m 17.1495 +CONFIG_AGP_INTEL=m 17.1496 +CONFIG_AGP_NVIDIA=m 17.1497 +CONFIG_AGP_SIS=m 17.1498 +CONFIG_AGP_SWORKS=m 17.1499 +CONFIG_AGP_VIA=m 17.1500 +# CONFIG_AGP_EFFICEON is not set 17.1501 +# CONFIG_DRM is not set 17.1502 +# CONFIG_VGASTATE is not set 17.1503 +# CONFIG_VIDEO_OUTPUT_CONTROL is not set 17.1504 +CONFIG_FB=y 17.1505 +# CONFIG_FIRMWARE_EDID is not set 17.1506 +# CONFIG_FB_DDC is not set 17.1507 +CONFIG_FB_CFB_FILLRECT=y 17.1508 +CONFIG_FB_CFB_COPYAREA=y 17.1509 +CONFIG_FB_CFB_IMAGEBLIT=y 17.1510 +# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set 17.1511 +# CONFIG_FB_SYS_FILLRECT is not set 17.1512 +# CONFIG_FB_SYS_COPYAREA is not set 17.1513 +# CONFIG_FB_SYS_IMAGEBLIT is not set 17.1514 +# CONFIG_FB_SYS_FOPS is not set 17.1515 +CONFIG_FB_DEFERRED_IO=y 17.1516 +# CONFIG_FB_SVGALIB is not set 17.1517 +# CONFIG_FB_MACMODES is not set 17.1518 +# CONFIG_FB_BACKLIGHT is not set 17.1519 +# CONFIG_FB_MODE_HELPERS is not set 17.1520 +# CONFIG_FB_TILEBLITTING is not set 17.1521 + 17.1522 +# 17.1523 +# Frame buffer hardware drivers 17.1524 +# 17.1525 +# CONFIG_FB_CIRRUS is not set 17.1526 +# CONFIG_FB_PM2 is not set 17.1527 +# CONFIG_FB_CYBER2000 is not set 17.1528 +# CONFIG_FB_ARC is not set 17.1529 +# CONFIG_FB_ASILIANT is not set 17.1530 +# CONFIG_FB_IMSTT is not set 17.1531 +# CONFIG_FB_VGA16 is not set 17.1532 +CONFIG_FB_VESA=y 17.1533 +# CONFIG_FB_EFI is not set 17.1534 +# CONFIG_FB_HECUBA is not set 17.1535 +# CONFIG_FB_HGA is not set 17.1536 +# CONFIG_FB_S1D13XXX is not set 17.1537 +# CONFIG_FB_NVIDIA is not set 17.1538 +# CONFIG_FB_RIVA is not set 17.1539 +# CONFIG_FB_I810 is not set 17.1540 +# CONFIG_FB_LE80578 is not set 17.1541 +# CONFIG_FB_INTEL is not set 17.1542 +# CONFIG_FB_MATROX is not set 17.1543 +# CONFIG_FB_RADEON is not set 17.1544 +# CONFIG_FB_ATY128 is not set 17.1545 +# CONFIG_FB_ATY is not set 17.1546 +# CONFIG_FB_S3 is not set 17.1547 +# CONFIG_FB_SAVAGE is not set 17.1548 +# CONFIG_FB_SIS is not set 17.1549 +# CONFIG_FB_NEOMAGIC is not set 17.1550 +# CONFIG_FB_KYRO is not set 17.1551 +# CONFIG_FB_3DFX is not set 17.1552 +# CONFIG_FB_VOODOO1 is not set 17.1553 +# CONFIG_FB_VT8623 is not set 17.1554 +# CONFIG_FB_CYBLA is not set 17.1555 +# CONFIG_FB_TRIDENT is not set 17.1556 +# CONFIG_FB_ARK is not set 17.1557 +# CONFIG_FB_PM3 is not set 17.1558 +# CONFIG_FB_GEODE is not set 17.1559 +# CONFIG_FB_VIRTUAL is not set 17.1560 +# CONFIG_BACKLIGHT_LCD_SUPPORT is not set 17.1561 +CONFIG_BACKLIGHT_CLASS_DEVICE=m 17.1562 +# CONFIG_BACKLIGHT_CORGI is not set 17.1563 +# CONFIG_BACKLIGHT_PROGEAR is not set 17.1564 + 17.1565 +# 17.1566 +# Display device support 17.1567 +# 17.1568 +# CONFIG_DISPLAY_SUPPORT is not set 17.1569 + 17.1570 +# 17.1571 +# Console display driver support 17.1572 +# 17.1573 +CONFIG_VGA_CONSOLE=y 17.1574 +# CONFIG_VGACON_SOFT_SCROLLBACK is not set 17.1575 +CONFIG_VIDEO_SELECT=y 17.1576 +# CONFIG_MDA_CONSOLE is not set 17.1577 +CONFIG_DUMMY_CONSOLE=y 17.1578 +CONFIG_FRAMEBUFFER_CONSOLE=y 17.1579 +# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set 17.1580 +# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set 17.1581 +# CONFIG_FONTS is not set 17.1582 +CONFIG_FONT_8x8=y 17.1583 +CONFIG_FONT_8x16=y 17.1584 +# CONFIG_LOGO is not set 17.1585 + 17.1586 +# 17.1587 +# Sound 17.1588 +# 17.1589 +CONFIG_SOUND=m 17.1590 + 17.1591 +# 17.1592 +# Advanced Linux Sound Architecture 17.1593 +# 17.1594 +CONFIG_SND=m 17.1595 +CONFIG_SND_TIMER=m 17.1596 +CONFIG_SND_PCM=m 17.1597 +CONFIG_SND_HWDEP=m 17.1598 +CONFIG_SND_RAWMIDI=m 17.1599 +CONFIG_SND_SEQUENCER=m 17.1600 +# CONFIG_SND_SEQ_DUMMY is not set 17.1601 +CONFIG_SND_OSSEMUL=y 17.1602 +CONFIG_SND_MIXER_OSS=m 17.1603 +CONFIG_SND_PCM_OSS=m 17.1604 +CONFIG_SND_PCM_OSS_PLUGINS=y 17.1605 +CONFIG_SND_SEQUENCER_OSS=y 17.1606 +CONFIG_SND_RTCTIMER=m 17.1607 +CONFIG_SND_SEQ_RTCTIMER_DEFAULT=y 17.1608 +# CONFIG_SND_DYNAMIC_MINORS is not set 17.1609 +CONFIG_SND_SUPPORT_OLD_API=y 17.1610 +# CONFIG_SND_VERBOSE_PROCFS is not set 17.1611 +# CONFIG_SND_VERBOSE_PRINTK is not set 17.1612 +# CONFIG_SND_DEBUG is not set 17.1613 + 17.1614 +# 17.1615 +# Generic devices 17.1616 +# 17.1617 +CONFIG_SND_MPU401_UART=m 17.1618 +CONFIG_SND_OPL3_LIB=m 17.1619 +CONFIG_SND_OPL4_LIB=m 17.1620 +CONFIG_SND_VX_LIB=m 17.1621 +CONFIG_SND_AC97_CODEC=m 17.1622 +# CONFIG_SND_DUMMY is not set 17.1623 +# CONFIG_SND_VIRMIDI is not set 17.1624 +# CONFIG_SND_MTPAV is not set 17.1625 +# CONFIG_SND_MTS64 is not set 17.1626 +# CONFIG_SND_SERIAL_U16550 is not set 17.1627 +CONFIG_SND_MPU401=m 17.1628 +# CONFIG_SND_PORTMAN2X4 is not set 17.1629 +CONFIG_SND_AD1848_LIB=m 17.1630 +CONFIG_SND_CS4231_LIB=m 17.1631 +CONFIG_SND_SB_COMMON=m 17.1632 +CONFIG_SND_SB8_DSP=m 17.1633 +CONFIG_SND_SB16_DSP=m 17.1634 + 17.1635 +# 17.1636 +# ISA devices 17.1637 +# 17.1638 +CONFIG_SND_ADLIB=m 17.1639 +CONFIG_SND_AD1816A=m 17.1640 +CONFIG_SND_AD1848=m 17.1641 +CONFIG_SND_ALS100=m 17.1642 +CONFIG_SND_AZT2320=m 17.1643 +CONFIG_SND_CMI8330=m 17.1644 +CONFIG_SND_CS4231=m 17.1645 +CONFIG_SND_CS4232=m 17.1646 +CONFIG_SND_CS4236=m 17.1647 +CONFIG_SND_DT019X=m 17.1648 +CONFIG_SND_ES968=m 17.1649 +CONFIG_SND_ES1688=m 17.1650 +CONFIG_SND_ES18XX=m 17.1651 +# CONFIG_SND_SC6000 is not set 17.1652 +CONFIG_SND_GUS_SYNTH=m 17.1653 +CONFIG_SND_GUSCLASSIC=m 17.1654 +CONFIG_SND_GUSEXTREME=m 17.1655 +CONFIG_SND_GUSMAX=m 17.1656 +CONFIG_SND_INTERWAVE=m 17.1657 +CONFIG_SND_INTERWAVE_STB=m 17.1658 +CONFIG_SND_OPL3SA2=m 17.1659 +CONFIG_SND_OPTI92X_AD1848=m 17.1660 +CONFIG_SND_OPTI92X_CS4231=m 17.1661 +CONFIG_SND_OPTI93X=m 17.1662 +CONFIG_SND_MIRO=m 17.1663 +CONFIG_SND_SB8=m 17.1664 +CONFIG_SND_SB16=m 17.1665 +CONFIG_SND_SBAWE=m 17.1666 +# CONFIG_SND_SB16_CSP is not set 17.1667 +CONFIG_SND_SGALAXY=m 17.1668 +CONFIG_SND_SSCAPE=m 17.1669 +CONFIG_SND_WAVEFRONT=m 17.1670 +CONFIG_SND_WAVEFRONT_FIRMWARE_IN_KERNEL=y 17.1671 + 17.1672 +# 17.1673 +# PCI devices 17.1674 +# 17.1675 +CONFIG_SND_AD1889=m 17.1676 +CONFIG_SND_ALS300=m 17.1677 +CONFIG_SND_ALS4000=m 17.1678 +CONFIG_SND_ALI5451=m 17.1679 +CONFIG_SND_ATIIXP=m 17.1680 +CONFIG_SND_ATIIXP_MODEM=m 17.1681 +CONFIG_SND_AU8810=m 17.1682 +CONFIG_SND_AU8820=m 17.1683 +CONFIG_SND_AU8830=m 17.1684 +CONFIG_SND_AZT3328=m 17.1685 +CONFIG_SND_BT87X=m 17.1686 +# CONFIG_SND_BT87X_OVERCLOCK is not set 17.1687 +CONFIG_SND_CA0106=m 17.1688 +CONFIG_SND_CMIPCI=m 17.1689 +CONFIG_SND_OXYGEN_LIB=m 17.1690 +CONFIG_SND_OXYGEN=m 17.1691 +CONFIG_SND_CS4281=m 17.1692 +CONFIG_SND_CS46XX=m 17.1693 +CONFIG_SND_CS46XX_NEW_DSP=y 17.1694 +CONFIG_SND_CS5530=m 17.1695 +CONFIG_SND_CS5535AUDIO=m 17.1696 +CONFIG_SND_DARLA20=m 17.1697 +CONFIG_SND_GINA20=m 17.1698 +CONFIG_SND_LAYLA20=m 17.1699 +CONFIG_SND_DARLA24=m 17.1700 +CONFIG_SND_GINA24=m 17.1701 +CONFIG_SND_LAYLA24=m 17.1702 +CONFIG_SND_MONA=m 17.1703 +CONFIG_SND_MIA=m 17.1704 +CONFIG_SND_ECHO3G=m 17.1705 +CONFIG_SND_INDIGO=m 17.1706 +CONFIG_SND_INDIGOIO=m 17.1707 +CONFIG_SND_INDIGODJ=m 17.1708 +CONFIG_SND_EMU10K1=m 17.1709 +CONFIG_SND_EMU10K1X=m 17.1710 +CONFIG_SND_ENS1370=m 17.1711 +CONFIG_SND_ENS1371=m 17.1712 +CONFIG_SND_ES1938=m 17.1713 +CONFIG_SND_ES1968=m 17.1714 +CONFIG_SND_FM801=m 17.1715 +CONFIG_SND_FM801_TEA575X_BOOL=y 17.1716 +CONFIG_SND_FM801_TEA575X=m 17.1717 +CONFIG_SND_HDA_INTEL=m 17.1718 +# CONFIG_SND_HDA_HWDEP is not set 17.1719 +CONFIG_SND_HDA_CODEC_REALTEK=y 17.1720 +CONFIG_SND_HDA_CODEC_ANALOG=y 17.1721 +CONFIG_SND_HDA_CODEC_SIGMATEL=y 17.1722 +CONFIG_SND_HDA_CODEC_VIA=y 17.1723 +CONFIG_SND_HDA_CODEC_ATIHDMI=y 17.1724 +CONFIG_SND_HDA_CODEC_CONEXANT=y 17.1725 +CONFIG_SND_HDA_CODEC_CMEDIA=y 17.1726 +CONFIG_SND_HDA_CODEC_SI3054=y 17.1727 +CONFIG_SND_HDA_GENERIC=y 17.1728 +# CONFIG_SND_HDA_POWER_SAVE is not set 17.1729 +CONFIG_SND_HDSP=m 17.1730 +CONFIG_SND_HDSPM=m 17.1731 +CONFIG_SND_HIFIER=m 17.1732 +CONFIG_SND_ICE1712=m 17.1733 +CONFIG_SND_ICE1724=m 17.1734 +CONFIG_SND_INTEL8X0=m 17.1735 +CONFIG_SND_INTEL8X0M=m 17.1736 +CONFIG_SND_KORG1212=m 17.1737 +CONFIG_SND_KORG1212_FIRMWARE_IN_KERNEL=y 17.1738 +CONFIG_SND_MAESTRO3=m 17.1739 +CONFIG_SND_MAESTRO3_FIRMWARE_IN_KERNEL=y 17.1740 +CONFIG_SND_MIXART=m 17.1741 +CONFIG_SND_NM256=m 17.1742 +CONFIG_SND_PCXHR=m 17.1743 +CONFIG_SND_RIPTIDE=m 17.1744 +CONFIG_SND_RME32=m 17.1745 +CONFIG_SND_RME96=m 17.1746 +CONFIG_SND_RME9652=m 17.1747 +CONFIG_SND_SIS7019=m 17.1748 +CONFIG_SND_SONICVIBES=m 17.1749 +CONFIG_SND_TRIDENT=m 17.1750 +CONFIG_SND_VIA82XX=m 17.1751 +CONFIG_SND_VIA82XX_MODEM=m 17.1752 +CONFIG_SND_VIRTUOSO=m 17.1753 +CONFIG_SND_VX222=m 17.1754 +CONFIG_SND_YMFPCI=m 17.1755 +CONFIG_SND_YMFPCI_FIRMWARE_IN_KERNEL=y 17.1756 +CONFIG_SND_AC97_POWER_SAVE=y 17.1757 +CONFIG_SND_AC97_POWER_SAVE_DEFAULT=0 17.1758 + 17.1759 +# 17.1760 +# USB devices 17.1761 +# 17.1762 +CONFIG_SND_USB_AUDIO=m 17.1763 +CONFIG_SND_USB_USX2Y=m 17.1764 +CONFIG_SND_USB_CAIAQ=m 17.1765 +# CONFIG_SND_USB_CAIAQ_INPUT is not set 17.1766 + 17.1767 +# 17.1768 +# PCMCIA devices 17.1769 +# 17.1770 +CONFIG_SND_VXPOCKET=m 17.1771 +CONFIG_SND_PDAUDIOCF=m 17.1772 + 17.1773 +# 17.1774 +# System on Chip audio support 17.1775 +# 17.1776 +# CONFIG_SND_SOC is not set 17.1777 + 17.1778 +# 17.1779 +# SoC Audio support for SuperH 17.1780 +# 17.1781 + 17.1782 +# 17.1783 +# ALSA SoC audio for Freescale SOCs 17.1784 +# 17.1785 + 17.1786 +# 17.1787 +# Open Sound System 17.1788 +# 17.1789 +# CONFIG_SOUND_PRIME is not set 17.1790 +CONFIG_AC97_BUS=m 17.1791 +CONFIG_HID_SUPPORT=y 17.1792 +CONFIG_HID=y 17.1793 +# CONFIG_HID_DEBUG is not set 17.1794 +# CONFIG_HIDRAW is not set 17.1795 + 17.1796 +# 17.1797 +# USB Input Devices 17.1798 +# 17.1799 +CONFIG_USB_HID=y 17.1800 +# CONFIG_USB_HIDINPUT_POWERBOOK is not set 17.1801 +# CONFIG_HID_FF is not set 17.1802 +CONFIG_USB_HIDDEV=y 17.1803 +CONFIG_USB_SUPPORT=y 17.1804 +CONFIG_USB_ARCH_HAS_HCD=y 17.1805 +CONFIG_USB_ARCH_HAS_OHCI=y 17.1806 +CONFIG_USB_ARCH_HAS_EHCI=y 17.1807 +CONFIG_USB=y 17.1808 +# CONFIG_USB_DEBUG is not set 17.1809 +# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set 17.1810 + 17.1811 +# 17.1812 +# Miscellaneous USB options 17.1813 +# 17.1814 +CONFIG_USB_DEVICEFS=y 17.1815 +CONFIG_USB_DEVICE_CLASS=y 17.1816 +# CONFIG_USB_DYNAMIC_MINORS is not set 17.1817 +# CONFIG_USB_SUSPEND is not set 17.1818 +# CONFIG_USB_PERSIST is not set 17.1819 +# CONFIG_USB_OTG is not set 17.1820 + 17.1821 +# 17.1822 +# USB Host Controller Drivers 17.1823 +# 17.1824 +CONFIG_USB_EHCI_HCD=y 17.1825 +# CONFIG_USB_EHCI_ROOT_HUB_TT is not set 17.1826 +# CONFIG_USB_EHCI_TT_NEWSCHED is not set 17.1827 +# CONFIG_USB_ISP116X_HCD is not set 17.1828 +CONFIG_USB_OHCI_HCD=m 17.1829 +# CONFIG_USB_OHCI_HCD_SSB is not set 17.1830 +# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set 17.1831 +# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set 17.1832 +CONFIG_USB_OHCI_LITTLE_ENDIAN=y 17.1833 +CONFIG_USB_UHCI_HCD=y 17.1834 +# CONFIG_USB_SL811_HCD is not set 17.1835 +# CONFIG_USB_R8A66597_HCD is not set 17.1836 + 17.1837 +# 17.1838 +# USB Device Class drivers 17.1839 +# 17.1840 +CONFIG_USB_ACM=m 17.1841 +CONFIG_USB_PRINTER=m 17.1842 + 17.1843 +# 17.1844 +# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' 17.1845 +# 17.1846 + 17.1847 +# 17.1848 +# may also be needed; see USB_STORAGE Help for more information 17.1849 +# 17.1850 +CONFIG_USB_STORAGE=y 17.1851 +# CONFIG_USB_STORAGE_DEBUG is not set 17.1852 +# CONFIG_USB_STORAGE_DATAFAB is not set 17.1853 +# CONFIG_USB_STORAGE_FREECOM is not set 17.1854 +# CONFIG_USB_STORAGE_ISD200 is not set 17.1855 +# CONFIG_USB_STORAGE_DPCM is not set 17.1856 +# CONFIG_USB_STORAGE_USBAT is not set 17.1857 +# CONFIG_USB_STORAGE_SDDR09 is not set 17.1858 +# CONFIG_USB_STORAGE_SDDR55 is not set 17.1859 +# CONFIG_USB_STORAGE_JUMPSHOT is not set 17.1860 +# CONFIG_USB_STORAGE_ALAUDA is not set 17.1861 +# CONFIG_USB_STORAGE_KARMA is not set 17.1862 +# CONFIG_USB_LIBUSUAL is not set 17.1863 + 17.1864 +# 17.1865 +# USB Imaging devices 17.1866 +# 17.1867 +# CONFIG_USB_MDC800 is not set 17.1868 +# CONFIG_USB_MICROTEK is not set 17.1869 +# CONFIG_USB_MON is not set 17.1870 + 17.1871 +# 17.1872 +# USB port drivers 17.1873 +# 17.1874 +# CONFIG_USB_USS720 is not set 17.1875 +CONFIG_USB_SERIAL=m 17.1876 +# CONFIG_USB_EZUSB is not set 17.1877 +CONFIG_USB_SERIAL_GENERIC=y 17.1878 +# CONFIG_USB_SERIAL_AIRCABLE is not set 17.1879 +# CONFIG_USB_SERIAL_AIRPRIME is not set 17.1880 +# CONFIG_USB_SERIAL_ARK3116 is not set 17.1881 +# CONFIG_USB_SERIAL_BELKIN is not set 17.1882 +CONFIG_USB_SERIAL_CH341=m 17.1883 +# CONFIG_USB_SERIAL_WHITEHEAT is not set 17.1884 +# CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set 17.1885 +# CONFIG_USB_SERIAL_CP2101 is not set 17.1886 +# CONFIG_USB_SERIAL_CYPRESS_M8 is not set 17.1887 +# CONFIG_USB_SERIAL_EMPEG is not set 17.1888 +# CONFIG_USB_SERIAL_FTDI_SIO is not set 17.1889 +# CONFIG_USB_SERIAL_FUNSOFT is not set 17.1890 +# CONFIG_USB_SERIAL_VISOR is not set 17.1891 +# CONFIG_USB_SERIAL_IPAQ is not set 17.1892 +# CONFIG_USB_SERIAL_IR is not set 17.1893 +# CONFIG_USB_SERIAL_EDGEPORT is not set 17.1894 +# CONFIG_USB_SERIAL_EDGEPORT_TI is not set 17.1895 +# CONFIG_USB_SERIAL_GARMIN is not set 17.1896 +# CONFIG_USB_SERIAL_IPW is not set 17.1897 +# CONFIG_USB_SERIAL_IUU is not set 17.1898 +# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set 17.1899 +# CONFIG_USB_SERIAL_KEYSPAN is not set 17.1900 +# CONFIG_USB_SERIAL_KLSI is not set 17.1901 +# CONFIG_USB_SERIAL_KOBIL_SCT is not set 17.1902 +# CONFIG_USB_SERIAL_MCT_U232 is not set 17.1903 +# CONFIG_USB_SERIAL_MOS7720 is not set 17.1904 +# CONFIG_USB_SERIAL_MOS7840 is not set 17.1905 +# CONFIG_USB_SERIAL_NAVMAN is not set 17.1906 +CONFIG_USB_SERIAL_PL2303=m 17.1907 +# CONFIG_USB_SERIAL_OTI6858 is not set 17.1908 +# CONFIG_USB_SERIAL_HP4X is not set 17.1909 +# CONFIG_USB_SERIAL_SAFE is not set 17.1910 +# CONFIG_USB_SERIAL_SIERRAWIRELESS is not set 17.1911 +# CONFIG_USB_SERIAL_TI is not set 17.1912 +# CONFIG_USB_SERIAL_CYBERJACK is not set 17.1913 +# CONFIG_USB_SERIAL_XIRCOM is not set 17.1914 +# CONFIG_USB_SERIAL_OPTION is not set 17.1915 +# CONFIG_USB_SERIAL_OMNINET is not set 17.1916 +# CONFIG_USB_SERIAL_DEBUG is not set 17.1917 + 17.1918 +# 17.1919 +# USB Miscellaneous drivers 17.1920 +# 17.1921 +# CONFIG_USB_EMI62 is not set 17.1922 +# CONFIG_USB_EMI26 is not set 17.1923 +# CONFIG_USB_ADUTUX is not set 17.1924 +# CONFIG_USB_AUERSWALD is not set 17.1925 +# CONFIG_USB_RIO500 is not set 17.1926 +# CONFIG_USB_LEGOTOWER is not set 17.1927 +# CONFIG_USB_LCD is not set 17.1928 +# CONFIG_USB_BERRY_CHARGE is not set 17.1929 +# CONFIG_USB_LED is not set 17.1930 +# CONFIG_USB_CYPRESS_CY7C63 is not set 17.1931 +# CONFIG_USB_CYTHERM is not set 17.1932 +# CONFIG_USB_PHIDGET is not set 17.1933 +# CONFIG_USB_IDMOUSE is not set 17.1934 +# CONFIG_USB_FTDI_ELAN is not set 17.1935 +# CONFIG_USB_APPLEDISPLAY is not set 17.1936 +# CONFIG_USB_SISUSBVGA is not set 17.1937 +# CONFIG_USB_LD is not set 17.1938 +# CONFIG_USB_TRANCEVIBRATOR is not set 17.1939 +# CONFIG_USB_IOWARRIOR is not set 17.1940 +# CONFIG_USB_TEST is not set 17.1941 +# CONFIG_USB_GADGET is not set 17.1942 +# CONFIG_MMC is not set 17.1943 +# CONFIG_MEMSTICK is not set 17.1944 +# CONFIG_NEW_LEDS is not set 17.1945 +# CONFIG_INFINIBAND is not set 17.1946 +# CONFIG_EDAC is not set 17.1947 +# CONFIG_RTC_CLASS is not set 17.1948 +# CONFIG_DMADEVICES is not set 17.1949 +# CONFIG_AUXDISPLAY is not set 17.1950 + 17.1951 +# 17.1952 +# Userspace I/O 17.1953 +# 17.1954 +# CONFIG_UIO is not set 17.1955 + 17.1956 +# 17.1957 +# Firmware Drivers 17.1958 +# 17.1959 +# CONFIG_EDD is not set 17.1960 +# CONFIG_DELL_RBU is not set 17.1961 +# CONFIG_DCDBAS is not set 17.1962 +CONFIG_DMIID=y 17.1963 + 17.1964 +# 17.1965 +# File systems 17.1966 +# 17.1967 +CONFIG_EXT2_FS=y 17.1968 +# CONFIG_EXT2_FS_XATTR is not set 17.1969 +# CONFIG_EXT2_FS_XIP is not set 17.1970 +CONFIG_EXT3_FS=y 17.1971 +# CONFIG_EXT3_FS_XATTR is not set 17.1972 +# CONFIG_EXT4DEV_FS is not set 17.1973 +CONFIG_JBD=y 17.1974 +CONFIG_REISERFS_FS=m 17.1975 +# CONFIG_REISERFS_CHECK is not set 17.1976 +# CONFIG_REISERFS_PROC_INFO is not set 17.1977 +# CONFIG_REISERFS_FS_XATTR is not set 17.1978 +# CONFIG_JFS_FS is not set 17.1979 +# CONFIG_FS_POSIX_ACL is not set 17.1980 +# CONFIG_XFS_FS is not set 17.1981 +# CONFIG_GFS2_FS is not set 17.1982 +# CONFIG_OCFS2_FS is not set 17.1983 +CONFIG_DNOTIFY=y 17.1984 +CONFIG_INOTIFY=y 17.1985 +CONFIG_INOTIFY_USER=y 17.1986 +# CONFIG_QUOTA is not set 17.1987 +# CONFIG_AUTOFS_FS is not set 17.1988 +# CONFIG_AUTOFS4_FS is not set 17.1989 +CONFIG_FUSE_FS=y 17.1990 + 17.1991 +# 17.1992 +# CD-ROM/DVD Filesystems 17.1993 +# 17.1994 +CONFIG_ISO9660_FS=y 17.1995 +CONFIG_JOLIET=y 17.1996 +# CONFIG_ZISOFS is not set 17.1997 +# CONFIG_UDF_FS is not set 17.1998 + 17.1999 +# 17.2000 +# DOS/FAT/NT Filesystems 17.2001 +# 17.2002 +CONFIG_FAT_FS=m 17.2003 +CONFIG_MSDOS_FS=m 17.2004 +CONFIG_VFAT_FS=m 17.2005 +CONFIG_FAT_DEFAULT_CODEPAGE=437 17.2006 +CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" 17.2007 +# CONFIG_NTFS_FS is not set 17.2008 + 17.2009 +# 17.2010 +# Pseudo filesystems 17.2011 +# 17.2012 +CONFIG_PROC_FS=y 17.2013 +CONFIG_PROC_KCORE=y 17.2014 +CONFIG_PROC_SYSCTL=y 17.2015 +CONFIG_SYSFS=y 17.2016 +CONFIG_TMPFS=y 17.2017 +# CONFIG_TMPFS_POSIX_ACL is not set 17.2018 +# CONFIG_HUGETLBFS is not set 17.2019 +# CONFIG_HUGETLB_PAGE is not set 17.2020 +# CONFIG_CONFIGFS_FS is not set 17.2021 + 17.2022 +# 17.2023 +# Miscellaneous filesystems 17.2024 +# 17.2025 +# CONFIG_ADFS_FS is not set 17.2026 +# CONFIG_AFFS_FS is not set 17.2027 +# CONFIG_HFS_FS is not set 17.2028 +# CONFIG_HFSPLUS_FS is not set 17.2029 +# CONFIG_BEFS_FS is not set 17.2030 +# CONFIG_BFS_FS is not set 17.2031 +# CONFIG_EFS_FS is not set 17.2032 +CONFIG_CRAMFS=m 17.2033 +# CONFIG_VXFS_FS is not set 17.2034 +# CONFIG_MINIX_FS is not set 17.2035 +# CONFIG_HPFS_FS is not set 17.2036 +# CONFIG_QNX4FS_FS is not set 17.2037 +# CONFIG_ROMFS_FS is not set 17.2038 +# CONFIG_SYSV_FS is not set 17.2039 +# CONFIG_UFS_FS is not set 17.2040 +CONFIG_NETWORK_FILESYSTEMS=y 17.2041 +CONFIG_NFS_FS=y 17.2042 +CONFIG_NFS_V3=y 17.2043 +# CONFIG_NFS_V3_ACL is not set 17.2044 +# CONFIG_NFS_V4 is not set 17.2045 +# CONFIG_NFS_DIRECTIO is not set 17.2046 +# CONFIG_NFSD is not set 17.2047 +CONFIG_LOCKD=y 17.2048 +CONFIG_LOCKD_V4=y 17.2049 +CONFIG_NFS_COMMON=y 17.2050 +CONFIG_SUNRPC=y 17.2051 +# CONFIG_SUNRPC_BIND34 is not set 17.2052 +# CONFIG_RPCSEC_GSS_KRB5 is not set 17.2053 +# CONFIG_RPCSEC_GSS_SPKM3 is not set 17.2054 +# CONFIG_SMB_FS is not set 17.2055 +# CONFIG_CIFS is not set 17.2056 +# CONFIG_NCP_FS is not set 17.2057 +# CONFIG_CODA_FS is not set 17.2058 +# CONFIG_AFS_FS is not set 17.2059 + 17.2060 +# 17.2061 +# Partition Types 17.2062 +# 17.2063 +CONFIG_PARTITION_ADVANCED=y 17.2064 +# CONFIG_ACORN_PARTITION is not set 17.2065 +# CONFIG_OSF_PARTITION is not set 17.2066 +# CONFIG_AMIGA_PARTITION is not set 17.2067 +# CONFIG_ATARI_PARTITION is not set 17.2068 +# CONFIG_MAC_PARTITION is not set 17.2069 +CONFIG_MSDOS_PARTITION=y 17.2070 +# CONFIG_BSD_DISKLABEL is not set 17.2071 +# CONFIG_MINIX_SUBPARTITION is not set 17.2072 +# CONFIG_SOLARIS_X86_PARTITION is not set 17.2073 +# CONFIG_UNIXWARE_DISKLABEL is not set 17.2074 +# CONFIG_LDM_PARTITION is not set 17.2075 +# CONFIG_SGI_PARTITION is not set 17.2076 +# CONFIG_ULTRIX_PARTITION is not set 17.2077 +# CONFIG_SUN_PARTITION is not set 17.2078 +# CONFIG_KARMA_PARTITION is not set 17.2079 +# CONFIG_EFI_PARTITION is not set 17.2080 +# CONFIG_SYSV68_PARTITION is not set 17.2081 +CONFIG_NLS=y 17.2082 +CONFIG_NLS_DEFAULT="iso8859-1" 17.2083 +CONFIG_NLS_CODEPAGE_437=y 17.2084 +# CONFIG_NLS_CODEPAGE_737 is not set 17.2085 +# CONFIG_NLS_CODEPAGE_775 is not set 17.2086 +CONFIG_NLS_CODEPAGE_850=y 17.2087 +CONFIG_NLS_CODEPAGE_852=y 17.2088 +# CONFIG_NLS_CODEPAGE_855 is not set 17.2089 +# CONFIG_NLS_CODEPAGE_857 is not set 17.2090 +# CONFIG_NLS_CODEPAGE_860 is not set 17.2091 +# CONFIG_NLS_CODEPAGE_861 is not set 17.2092 +# CONFIG_NLS_CODEPAGE_862 is not set 17.2093 +CONFIG_NLS_CODEPAGE_863=y 17.2094 +# CONFIG_NLS_CODEPAGE_864 is not set 17.2095 +CONFIG_NLS_CODEPAGE_865=y 17.2096 +# CONFIG_NLS_CODEPAGE_866 is not set 17.2097 +# CONFIG_NLS_CODEPAGE_869 is not set 17.2098 +# CONFIG_NLS_CODEPAGE_936 is not set 17.2099 +# CONFIG_NLS_CODEPAGE_950 is not set 17.2100 +# CONFIG_NLS_CODEPAGE_932 is not set 17.2101 +# CONFIG_NLS_CODEPAGE_949 is not set 17.2102 +# CONFIG_NLS_CODEPAGE_874 is not set 17.2103 +# CONFIG_NLS_ISO8859_8 is not set 17.2104 +# CONFIG_NLS_CODEPAGE_1250 is not set 17.2105 +# CONFIG_NLS_CODEPAGE_1251 is not set 17.2106 +CONFIG_NLS_ASCII=y 17.2107 +CONFIG_NLS_ISO8859_1=y 17.2108 +CONFIG_NLS_ISO8859_2=y 17.2109 +# CONFIG_NLS_ISO8859_3 is not set 17.2110 +# CONFIG_NLS_ISO8859_4 is not set 17.2111 +# CONFIG_NLS_ISO8859_5 is not set 17.2112 +# CONFIG_NLS_ISO8859_6 is not set 17.2113 +# CONFIG_NLS_ISO8859_7 is not set 17.2114 +# CONFIG_NLS_ISO8859_9 is not set 17.2115 +# CONFIG_NLS_ISO8859_13 is not set 17.2116 +# CONFIG_NLS_ISO8859_14 is not set 17.2117 +CONFIG_NLS_ISO8859_15=y 17.2118 +# CONFIG_NLS_KOI8_R is not set 17.2119 +# CONFIG_NLS_KOI8_U is not set 17.2120 +CONFIG_NLS_UTF8=m 17.2121 +# CONFIG_DLM is not set 17.2122 + 17.2123 +# 17.2124 +# Kernel hacking 17.2125 +# 17.2126 +CONFIG_TRACE_IRQFLAGS_SUPPORT=y 17.2127 +# CONFIG_PRINTK_TIME is not set 17.2128 +CONFIG_ENABLE_WARN_DEPRECATED=y 17.2129 +CONFIG_ENABLE_MUST_CHECK=y 17.2130 +# CONFIG_MAGIC_SYSRQ is not set 17.2131 +CONFIG_UNUSED_SYMBOLS=y 17.2132 +# CONFIG_DEBUG_FS is not set 17.2133 +# CONFIG_HEADERS_CHECK is not set 17.2134 +# CONFIG_DEBUG_KERNEL is not set 17.2135 +CONFIG_DEBUG_BUGVERBOSE=y 17.2136 +# CONFIG_LATENCYTOP is not set 17.2137 +# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set 17.2138 +# CONFIG_SAMPLES is not set 17.2139 +CONFIG_EARLY_PRINTK=y 17.2140 +CONFIG_X86_FIND_SMP_CONFIG=y 17.2141 +CONFIG_X86_MPPARSE=y 17.2142 +CONFIG_DOUBLEFAULT=y 17.2143 +CONFIG_IO_DELAY_TYPE_0X80=0 17.2144 +CONFIG_IO_DELAY_TYPE_0XED=1 17.2145 +CONFIG_IO_DELAY_TYPE_UDELAY=2 17.2146 +CONFIG_IO_DELAY_TYPE_NONE=3 17.2147 +CONFIG_IO_DELAY_0X80=y 17.2148 +# CONFIG_IO_DELAY_0XED is not set 17.2149 +# CONFIG_IO_DELAY_UDELAY is not set 17.2150 +# CONFIG_IO_DELAY_NONE is not set 17.2151 +CONFIG_DEFAULT_IO_DELAY_TYPE=0 17.2152 + 17.2153 +# 17.2154 +# Security options 17.2155 +# 17.2156 +# CONFIG_KEYS is not set 17.2157 +# CONFIG_SECURITY is not set 17.2158 +# CONFIG_SECURITY_FILE_CAPABILITIES is not set 17.2159 +CONFIG_CRYPTO=y 17.2160 +CONFIG_CRYPTO_ALGAPI=y 17.2161 +CONFIG_CRYPTO_AEAD=y 17.2162 +CONFIG_CRYPTO_BLKCIPHER=y 17.2163 +# CONFIG_CRYPTO_SEQIV is not set 17.2164 +CONFIG_CRYPTO_HASH=y 17.2165 +CONFIG_CRYPTO_MANAGER=y 17.2166 +CONFIG_CRYPTO_HMAC=y 17.2167 +# CONFIG_CRYPTO_XCBC is not set 17.2168 +# CONFIG_CRYPTO_NULL is not set 17.2169 +# CONFIG_CRYPTO_MD4 is not set 17.2170 +CONFIG_CRYPTO_MD5=y 17.2171 +CONFIG_CRYPTO_SHA1=y 17.2172 +# CONFIG_CRYPTO_SHA256 is not set 17.2173 +# CONFIG_CRYPTO_SHA512 is not set 17.2174 +# CONFIG_CRYPTO_WP512 is not set 17.2175 +# CONFIG_CRYPTO_TGR192 is not set 17.2176 +# CONFIG_CRYPTO_GF128MUL is not set 17.2177 +CONFIG_CRYPTO_ECB=m 17.2178 +CONFIG_CRYPTO_CBC=y 17.2179 +CONFIG_CRYPTO_PCBC=m 17.2180 +# CONFIG_CRYPTO_LRW is not set 17.2181 +# CONFIG_CRYPTO_XTS is not set 17.2182 +# CONFIG_CRYPTO_CTR is not set 17.2183 +# CONFIG_CRYPTO_GCM is not set 17.2184 +# CONFIG_CRYPTO_CCM is not set 17.2185 +# CONFIG_CRYPTO_CRYPTD is not set 17.2186 +CONFIG_CRYPTO_DES=y 17.2187 +# CONFIG_CRYPTO_FCRYPT is not set 17.2188 +# CONFIG_CRYPTO_BLOWFISH is not set 17.2189 +# CONFIG_CRYPTO_TWOFISH is not set 17.2190 +# CONFIG_CRYPTO_TWOFISH_586 is not set 17.2191 +# CONFIG_CRYPTO_SERPENT is not set 17.2192 +CONFIG_CRYPTO_AES=m 17.2193 +# CONFIG_CRYPTO_AES_586 is not set 17.2194 +# CONFIG_CRYPTO_CAST5 is not set 17.2195 +# CONFIG_CRYPTO_CAST6 is not set 17.2196 +# CONFIG_CRYPTO_TEA is not set 17.2197 +CONFIG_CRYPTO_ARC4=m 17.2198 +# CONFIG_CRYPTO_KHAZAD is not set 17.2199 +# CONFIG_CRYPTO_ANUBIS is not set 17.2200 +# CONFIG_CRYPTO_SEED is not set 17.2201 +# CONFIG_CRYPTO_SALSA20 is not set 17.2202 +# CONFIG_CRYPTO_SALSA20_586 is not set 17.2203 +CONFIG_CRYPTO_DEFLATE=y 17.2204 +CONFIG_CRYPTO_MICHAEL_MIC=m 17.2205 +CONFIG_CRYPTO_CRC32C=m 17.2206 +# CONFIG_CRYPTO_CAMELLIA is not set 17.2207 +# CONFIG_CRYPTO_TEST is not set 17.2208 +CONFIG_CRYPTO_AUTHENC=y 17.2209 +# CONFIG_CRYPTO_LZO is not set 17.2210 +CONFIG_CRYPTO_HW=y 17.2211 +# CONFIG_CRYPTO_DEV_PADLOCK is not set 17.2212 +# CONFIG_CRYPTO_DEV_GEODE is not set 17.2213 +# CONFIG_CRYPTO_DEV_HIFN_795X is not set 17.2214 +CONFIG_HAVE_KVM=y 17.2215 +CONFIG_VIRTUALIZATION=y 17.2216 +CONFIG_KVM=m 17.2217 +CONFIG_KVM_INTEL=m 17.2218 +CONFIG_KVM_AMD=m 17.2219 +CONFIG_LGUEST=m 17.2220 +CONFIG_VIRTIO=m 17.2221 +CONFIG_VIRTIO_RING=m 17.2222 +CONFIG_VIRTIO_PCI=m 17.2223 +# CONFIG_VIRTIO_BALLOON is not set 17.2224 + 17.2225 +# 17.2226 +# Library routines 17.2227 +# 17.2228 +CONFIG_BITREVERSE=y 17.2229 +CONFIG_CRC_CCITT=y 17.2230 +# CONFIG_CRC16 is not set 17.2231 +# CONFIG_CRC_ITU_T is not set 17.2232 +CONFIG_CRC32=y 17.2233 +# CONFIG_CRC7 is not set 17.2234 +CONFIG_LIBCRC32C=m 17.2235 +CONFIG_ZLIB_INFLATE=y 17.2236 +CONFIG_ZLIB_DEFLATE=y 17.2237 +CONFIG_PLIST=y 17.2238 +CONFIG_HAS_IOMEM=y 17.2239 +CONFIG_HAS_IOPORT=y 17.2240 +CONFIG_HAS_DMA=y
18.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 18.2 +++ b/linux/stuff/linux-diff-2.6.25.5.u Sat Jun 07 22:04:11 2008 +0000 18.3 @@ -0,0 +1,18 @@ 18.4 +--- linux-2.6.25.5/arch/x86/vdso/Makefile 18.5 ++++ linux-2.6.25.5/arch/x86/vdso/Makefile 18.6 +@@ -103,10 +103,12 @@ 18.7 + $(foreach H,$(filter-out FORCE,$^),\ 18.8 + if grep -q VDSO32_SYSENTER_RETURN $H; \ 18.9 + then diff -u $(@D)/.tmp_$(@F) $H; \ 18.10 +- else sed /VDSO32_SYSENTER_RETURN/d $(@D)/.tmp_$(@F) | \ 18.11 +- diff -u - $H; fi &&) : ;\ 18.12 ++ else sed /VDSO32_SYSENTER_RETURN/d $(@D)/.tmp_$(@F) > \ 18.13 ++ $(@D)/.tmp_$(@F).$$ ; \ 18.14 ++ diff -u $(@D)/.tmp_$(@F).$$ $H; fi &&) : ;\ 18.15 + then mv -f $(@D)/.tmp_$(@F) $@; \ 18.16 +- else rm -f $(@D)/.tmp_$(@F); exit 1; \ 18.17 ++ else rm -f $(@D)/.tmp_$(@F)*; exit 1; \ 18.18 ++ rm -f $(@D)/.tmp_$(@F)*; \ 18.19 + fi 18.20 + endef 18.21 +
19.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 19.2 +++ b/linux/stuff/linux-lzma-2.6.25.5.u Sat Jun 07 22:04:11 2008 +0000 19.3 @@ -0,0 +1,2127 @@ 19.4 +--- linux-2.6.25.5/arch/x86/boot/compressed/Makefile 19.5 ++++ linux-2.6.25.5/arch/x86/boot/compressed/Makefile 19.6 +@@ -4,7 +4,7 @@ 19.7 + # create a compressed vmlinux image from the original vmlinux 19.8 + # 19.9 + 19.10 +-targets := vmlinux vmlinux.bin vmlinux.bin.gz head_$(BITS).o misc.o piggy.o 19.11 ++targets := vmlinux vmlinux.bin vmlinux.bin.gz vmlinux.bin.bz2 vmlinux.bin.lzma head_$(BITS).o misc.o piggy.o 19.12 + 19.13 + KBUILD_CFLAGS := -m$(BITS) -D__KERNEL__ $(LINUX_INCLUDE) -O2 19.14 + KBUILD_CFLAGS += -fno-strict-aliasing -fPIC 19.15 +@@ -50,15 +50,41 @@ 19.16 + $(obj)/vmlinux.bin.gz: $(obj)/vmlinux.bin FORCE 19.17 + $(call if_changed,gzip) 19.18 + endif 19.19 ++ 19.20 ++ifdef CONFIG_RELOCATABLE 19.21 ++$(obj)/vmlinux.bin.bz2: $(obj)/vmlinux.bin.all FORCE 19.22 ++ $(call if_changed,bzip2) 19.23 ++else 19.24 ++$(obj)/vmlinux.bin.bz2: $(obj)/vmlinux.bin FORCE 19.25 ++ $(call if_changed,bzip2) 19.26 ++endif 19.27 ++ 19.28 ++ifdef CONFIG_RELOCATABLE 19.29 ++$(obj)/vmlinux.bin.lzma: $(obj)/vmlinux.bin.all FORCE 19.30 ++ $(call if_changed,lzma) 19.31 ++else 19.32 ++$(obj)/vmlinux.bin.lzma: $(obj)/vmlinux.bin FORCE 19.33 ++ $(call if_changed,lzma) 19.34 ++endif 19.35 ++ 19.36 + LDFLAGS_piggy.o := -r --format binary --oformat elf32-i386 -T 19.37 + 19.38 + else 19.39 ++$(obj)/vmlinux.bin.bz2: $(obj)/vmlinux.bin FORCE 19.40 ++ $(call if_changed,bzip2) 19.41 ++ 19.42 ++$(obj)/vmlinux.bin.lzma: $(obj)/vmlinux.bin FORCE 19.43 ++ $(call if_changed,lzma) 19.44 ++ 19.45 + $(obj)/vmlinux.bin.gz: $(obj)/vmlinux.bin FORCE 19.46 + $(call if_changed,gzip) 19.47 + 19.48 + LDFLAGS_piggy.o := -r --format binary --oformat elf64-x86-64 -T 19.49 + endif 19.50 + 19.51 ++suffix_$(CONFIG_KERNEL_GZIP) = gz 19.52 ++suffix_$(CONFIG_KERNEL_BZIP2) = bz2 19.53 ++suffix_$(CONFIG_KERNEL_LZMA) = lzma 19.54 + 19.55 +-$(obj)/piggy.o: $(obj)/vmlinux.scr $(obj)/vmlinux.bin.gz FORCE 19.56 ++$(obj)/piggy.o: $(src)/vmlinux.scr $(obj)/vmlinux.bin.$(suffix_y) FORCE 19.57 + $(call if_changed,ld) 19.58 + 19.59 +--- linux-2.6.25.5/arch/x86/boot/compressed/misc.c 19.60 ++++ linux-2.6.25.5/arch/x86/boot/compressed/misc.c 19.61 +@@ -130,9 +130,12 @@ 19.62 + * always be larger than our output buffer. 19.63 + */ 19.64 + 19.65 ++#ifdef CONFIG_KERNEL_GZIP 19.66 + static uch *inbuf; /* input buffer */ 19.67 ++#endif 19.68 + static uch *window; /* Sliding window buffer, (and final output buffer) */ 19.69 + 19.70 ++#ifdef CONFIG_KERNEL_GZIP 19.71 + static unsigned insize; /* valid bytes in inbuf */ 19.72 + static unsigned inptr; /* index of next byte to be processed in inbuf */ 19.73 + static unsigned outcnt; /* bytes in output buffer */ 19.74 +@@ -167,9 +170,12 @@ 19.75 + 19.76 + static int fill_inbuf(void); 19.77 + static void flush_window(void); 19.78 ++#endif 19.79 + static void error(char *m); 19.80 ++#ifdef CONFIG_KERNEL_GZIP 19.81 + static void gzip_mark(void **); 19.82 + static void gzip_release(void **); 19.83 ++#endif 19.84 + 19.85 + /* 19.86 + * This is set up by the setup-routine at boot-time 19.87 +@@ -185,12 +191,12 @@ 19.88 + extern unsigned char input_data[]; 19.89 + extern int input_len; 19.90 + 19.91 +-static long bytes_out = 0; 19.92 +- 19.93 + static void *malloc(int size); 19.94 + static void free(void *where); 19.95 + 19.96 ++#if (defined CONFIG_KERNEL_GZIP || defined CONFIG_KERNEL_BZIP2) 19.97 + static void *memset(void *s, int c, unsigned n); 19.98 ++#endif 19.99 + static void *memcpy(void *dest, const void *src, unsigned n); 19.100 + 19.101 + static void putstr(const char *); 19.102 +@@ -204,11 +210,15 @@ 19.103 + static memptr free_mem_ptr; 19.104 + static memptr free_mem_end_ptr; 19.105 + 19.106 ++#if (defined CONFIG_KERNEL_BZIP2 || defined CONFIG_KERNEL_LZMA) 19.107 ++#define HEAP_SIZE 0x400000 19.108 ++#else 19.109 + #ifdef CONFIG_X86_64 19.110 + #define HEAP_SIZE 0x7000 19.111 + #else 19.112 + #define HEAP_SIZE 0x4000 19.113 + #endif 19.114 ++#endif 19.115 + 19.116 + static char *vidmem = (char *)0xb8000; 19.117 + static int vidport; 19.118 +@@ -218,7 +228,29 @@ 19.119 + void *xquad_portio; 19.120 + #endif 19.121 + 19.122 ++#if (defined CONFIG_KERNEL_BZIP2 || defined CONFIG_KERNEL_LZMA) 19.123 ++ 19.124 ++#define large_malloc malloc 19.125 ++#define large_free free 19.126 ++ 19.127 ++#ifdef current 19.128 ++#undef current 19.129 ++#endif 19.130 ++ 19.131 ++#define INCLUDED 19.132 ++#endif 19.133 ++ 19.134 ++#ifdef CONFIG_KERNEL_GZIP 19.135 + #include "../../../../lib/inflate.c" 19.136 ++#endif 19.137 ++ 19.138 ++#ifdef CONFIG_KERNEL_BZIP2 19.139 ++#include "../../../../lib/decompress_bunzip2.c" 19.140 ++#endif 19.141 ++ 19.142 ++#ifdef CONFIG_KERNEL_LZMA 19.143 ++#include "../../../../lib/decompress_unlzma.c" 19.144 ++#endif 19.145 + 19.146 + static void *malloc(int size) 19.147 + { 19.148 +@@ -242,6 +274,7 @@ 19.149 + { /* Don't care */ 19.150 + } 19.151 + 19.152 ++#ifdef CONFIG_KERNEL_GZIP 19.153 + static void gzip_mark(void **ptr) 19.154 + { 19.155 + *ptr = (void *) free_mem_ptr; 19.156 +@@ -251,6 +284,7 @@ 19.157 + { 19.158 + free_mem_ptr = (memptr) *ptr; 19.159 + } 19.160 ++#endif 19.161 + 19.162 + static void scroll(void) 19.163 + { 19.164 +@@ -303,6 +337,7 @@ 19.165 + outb(0xff & (pos >> 1), vidport+1); 19.166 + } 19.167 + 19.168 ++#if (defined CONFIG_KERNEL_GZIP || defined CONFIG_KERNEL_BZIP2) 19.169 + static void* memset(void* s, int c, unsigned n) 19.170 + { 19.171 + int i; 19.172 +@@ -311,6 +346,7 @@ 19.173 + for (i=0;i<n;i++) ss[i] = c; 19.174 + return s; 19.175 + } 19.176 ++#endif 19.177 + 19.178 + static void* memcpy(void* dest, const void* src, unsigned n) 19.179 + { 19.180 +@@ -322,6 +358,26 @@ 19.181 + return dest; 19.182 + } 19.183 + 19.184 ++#ifdef CONFIG_KERNEL_BZIP2 19.185 ++/* =========================================================================== 19.186 ++ * Write the output window window[0..outcnt-1]. 19.187 ++ * (Used for the decompressed data only.) 19.188 ++ */ 19.189 ++static int compr_flush(char *data, unsigned int len) 19.190 ++{ 19.191 ++ unsigned n; 19.192 ++ uch *out; 19.193 ++ 19.194 ++ out = window; 19.195 ++ for (n = 0; n < len; n++) { 19.196 ++ *out++ = *data++; 19.197 ++ } 19.198 ++ window += (ulg)len; 19.199 ++ return len; 19.200 ++} 19.201 ++ 19.202 ++#endif 19.203 ++#ifdef CONFIG_KERNEL_GZIP 19.204 + /* =========================================================================== 19.205 + * Fill the input buffer. This is called only when the buffer is empty 19.206 + * and at least one byte is really needed. 19.207 +@@ -333,7 +389,7 @@ 19.208 + } 19.209 + 19.210 + /* =========================================================================== 19.211 +- * Write the output window window[0..outcnt-1] and update crc and bytes_out. 19.212 ++ * Write the output window window[0..outcnt-1] and update crc. 19.213 + * (Used for the decompressed data only.) 19.214 + */ 19.215 + static void flush_window(void) 19.216 +@@ -351,9 +407,9 @@ 19.217 + c = crc_32_tab[((int)c ^ ch) & 0xff] ^ (c >> 8); 19.218 + } 19.219 + crc = c; 19.220 +- bytes_out += (ulg)outcnt; 19.221 + outcnt = 0; 19.222 + } 19.223 ++#endif 19.224 + 19.225 + static void error(char *x) 19.226 + { 19.227 +@@ -385,9 +441,11 @@ 19.228 + window = output; /* Output buffer (Normally at 1M) */ 19.229 + free_mem_ptr = heap; /* Heap */ 19.230 + free_mem_end_ptr = heap + HEAP_SIZE; 19.231 ++#ifdef CONFIG_KERNEL_GZIP 19.232 + inbuf = input_data; /* Input buffer */ 19.233 + insize = input_len; 19.234 + inptr = 0; 19.235 ++#endif 19.236 + 19.237 + #ifdef CONFIG_X86_64 19.238 + if ((ulg)output & (__KERNEL_ALIGN - 1)) 19.239 +@@ -405,9 +463,21 @@ 19.240 + #endif 19.241 + #endif 19.242 + 19.243 ++#ifdef CONFIG_KERNEL_BZIP2 19.244 ++ putstr("\nBunzipping Linux... "); 19.245 ++ bunzip2(input_data, input_len-4, NULL, compr_flush, NULL); 19.246 ++#endif 19.247 ++ 19.248 ++#ifdef CONFIG_KERNEL_LZMA 19.249 ++ putstr("\nUnlzmaing Linux... "); 19.250 ++ unlzma(input_data, input_len-4, NULL, NULL, window); 19.251 ++#endif 19.252 ++ 19.253 ++#ifdef CONFIG_KERNEL_GZIP 19.254 + makecrc(); 19.255 + putstr("\nDecompressing Linux... "); 19.256 + gunzip(); 19.257 ++#endif 19.258 + putstr("done.\nBooting the kernel.\n"); 19.259 + return; 19.260 + } 19.261 + 19.262 +--- linux-2.6.25.5/drivers/block/Kconfig 19.263 ++++ linux-2.6.25.5/drivers/block/Kconfig 19.264 +@@ -357,6 +357,30 @@ 19.265 + will prevent RAM block device backing store memory from being 19.266 + allocated from highmem (only a problem for highmem systems). 19.267 + 19.268 ++config RD_BZIP2 19.269 ++ bool "Initial ramdisk compressed using bzip2" 19.270 ++ default n 19.271 ++ depends on BLK_DEV_INITRD=y 19.272 ++ help 19.273 ++ Support loading of a bzip2 encoded initial ramdisk or cpio buffer 19.274 ++ If unsure, say N. 19.275 ++ 19.276 ++config RD_LZMA 19.277 ++ bool "Initial ramdisk compressed using lzma" 19.278 ++ default n 19.279 ++ depends on BLK_DEV_INITRD=y 19.280 ++ help 19.281 ++ Support loading of a lzma encoded initial ramdisk or cpio buffer 19.282 ++ If unsure, say N. 19.283 ++ 19.284 ++config RD_GZIP 19.285 ++ bool "Initial ramdisk compressed using gzip" 19.286 ++ default y 19.287 ++ depends on BLK_DEV_INITRD=y 19.288 ++ help 19.289 ++ Support loading of a gzip encoded initial ramdisk or cpio buffer. 19.290 ++ If unsure, say Y. 19.291 ++ 19.292 + config CDROM_PKTCDVD 19.293 + tristate "Packet writing on CD/DVD media" 19.294 + depends on !UML 19.295 + 19.296 +--- linux-2.6.25.5/include/linux/decompress_bunzip2.h 19.297 ++++ linux-2.6.25.5/include/linux/decompress_bunzip2.h 19.298 +@@ -0,0 +1,16 @@ 19.299 ++#ifndef DECOMPRESS_BUNZIP2_H 19.300 ++#define DECOMPRESS_BUNZIP2_H 19.301 ++ 19.302 ++/* Other housekeeping constants */ 19.303 ++#define BZIP2_IOBUF_SIZE 4096 19.304 ++ 19.305 ++#ifndef STATIC 19.306 ++#define STATIC /**/ 19.307 ++#endif 19.308 ++ 19.309 ++STATIC int bunzip2(char *inbuf, int len, 19.310 ++ int(*fill)(void*,unsigned int), 19.311 ++ int(*writebb)(char*,unsigned int), 19.312 ++ int *pos); 19.313 ++ 19.314 ++#endif 19.315 + 19.316 +--- linux-2.6.25.5/include/linux/decompress_generic.h 19.317 ++++ linux-2.6.25.5/include/linux/decompress_generic.h 19.318 +@@ -0,0 +1,28 @@ 19.319 ++#ifndef DECOMPRESS_GENERIC_H 19.320 ++#define DECOMPRESS_GENERIC_H 19.321 ++ 19.322 ++/* Minimal chunksize to be read. 19.323 ++ * Bzip2 prefers at least 4096 19.324 ++ * Lzma prefers 0x10000 */ 19.325 ++#define COMPR_IOBUF_SIZE 4096 19.326 ++ 19.327 ++typedef int (*uncompress_fn) (char *inbuf, int len, 19.328 ++ int(*fill)(char*,unsigned int), 19.329 ++ int(*writebb)(char*,unsigned int), 19.330 ++ int *posp); 19.331 ++ 19.332 ++/* inbuf - input buffer 19.333 ++ * len - len of pre-read data in inbuf 19.334 ++ * fill - function to fill inbuf if empty 19.335 ++ * writebb - function to write out outbug 19.336 ++ * posp - if non-null, input position (number of bytes read) will be 19.337 ++ * returned here 19.338 ++ * 19.339 ++ * If len != 0, the inbuf is initialized (with as much data), and fill 19.340 ++ * should not be called 19.341 ++ * If len = 0, the inbuf is allocated, but empty. Its size is IOBUF_SIZE 19.342 ++ * fill should be called (repeatedly...) to read data, at most IOBUF_SIZE 19.343 ++ */ 19.344 ++ 19.345 ++ 19.346 ++#endif 19.347 + 19.348 +--- linux-2.6.25.5/include/linux/decompress_unlzma.h 19.349 ++++ linux-2.6.25.5/include/linux/decompress_unlzma.h 19.350 +@@ -0,0 +1,15 @@ 19.351 ++#ifndef DECOMPRESS_UNLZMA_H 19.352 ++#define DECOMPRESS_UNLZMA_H 19.353 ++ 19.354 ++#define LZMA_IOBUF_SIZE 0x10000 19.355 ++ 19.356 ++#ifndef STATIC 19.357 ++#define STATIC /**/ 19.358 ++#endif 19.359 ++ 19.360 ++STATIC int unlzma(char *inbuf, int len, 19.361 ++ int(*fill)(void*,unsigned int), 19.362 ++ int(*writebb)(char*,unsigned int), 19.363 ++ int *pos); 19.364 ++ 19.365 ++#endif 19.366 + 19.367 +--- linux-2.6.25.5/init/do_mounts_rd.c 19.368 ++++ linux-2.6.25.5/init/do_mounts_rd.c 19.369 +@@ -8,6 +8,16 @@ 19.370 + #include <linux/initrd.h> 19.371 + #include <linux/string.h> 19.372 + 19.373 ++#ifdef CONFIG_RD_BZIP2 19.374 ++#include <linux/decompress_bunzip2.h> 19.375 ++#undef STATIC 19.376 ++#endif 19.377 ++ 19.378 ++#ifdef CONFIG_RD_LZMA 19.379 ++#include <linux/decompress_unlzma.h> 19.380 ++#undef STATIC 19.381 ++#endif 19.382 ++ 19.383 + #include "do_mounts.h" 19.384 + 19.385 + #define BUILD_CRAMDISK 19.386 +@@ -30,7 +40,15 @@ static int __init ramdisk_start_setup(ch 19.387 + } 19.388 + __setup("ramdisk_start=", ramdisk_start_setup); 19.389 + 19.390 ++#ifdef CONFIG_RD_GZIP 19.391 + static int __init crd_load(int in_fd, int out_fd); 19.392 ++#endif 19.393 ++#ifdef CONFIG_RD_BZIP2 19.394 ++static int __init crd_load_bzip2(int in_fd, int out_fd); 19.395 ++#endif 19.396 ++#ifdef CONFIG_RD_LZMA 19.397 ++static int __init crd_load_lzma(int in_fd, int out_fd); 19.398 ++#endif 19.399 + 19.400 + /* 19.401 + * This routine tries to find a RAM disk image to load, and returns the 19.402 +@@ -46,7 +64,7 @@ static int __init crd_load(int in_fd, in 19.403 + * gzip 19.404 + */ 19.405 + static int __init 19.406 +-identify_ramdisk_image(int fd, int start_block) 19.407 ++identify_ramdisk_image(int fd, int start_block, int *ztype) 19.408 + { 19.409 + const int size = 512; 19.410 + struct minix_super_block *minixsb; 19.411 +@@ -72,6 +90,7 @@ identify_ramdisk_image(int fd, int start 19.412 + sys_lseek(fd, start_block * BLOCK_SIZE, 0); 19.413 + sys_read(fd, buf, size); 19.414 + 19.415 ++#ifdef CONFIG_RD_GZIP 19.416 + /* 19.417 + * If it matches the gzip magic numbers, return -1 19.418 + */ 19.419 +@@ -79,9 +98,40 @@ identify_ramdisk_image(int fd, int start 19.420 + printk(KERN_NOTICE 19.421 + "RAMDISK: Compressed image found at block %d\n", 19.422 + start_block); 19.423 ++ *ztype = 0; 19.424 ++ nblocks = 0; 19.425 ++ goto done; 19.426 ++ } 19.427 ++#endif 19.428 ++ 19.429 ++#ifdef CONFIG_RD_BZIP2 19.430 ++ /* 19.431 ++ * If it matches the bzip magic numbers, return -1 19.432 ++ */ 19.433 ++ if (buf[0] == 0x42 && (buf[1] == 0x5a)) { 19.434 ++ printk(KERN_NOTICE 19.435 ++ "RAMDISK: Bzipped image found at block %d\n", 19.436 ++ start_block); 19.437 ++ *ztype = 1; 19.438 ++ nblocks = 0; 19.439 ++ goto done; 19.440 ++ } 19.441 ++#endif 19.442 ++ 19.443 ++#ifdef CONFIG_RD_LZMA 19.444 ++ /* 19.445 ++ * If it matches the bzip magic numbers, return -1 19.446 ++ */ 19.447 ++ if (buf[0] == 0x5d && (buf[1] == 0x00)) { 19.448 ++ printk(KERN_NOTICE 19.449 ++ "RAMDISK: Lzma image found at block %d\n", 19.450 ++ start_block); 19.451 ++ *ztype = 2; 19.452 + nblocks = 0; 19.453 + goto done; 19.454 + } 19.455 ++#endif 19.456 ++ 19.457 + 19.458 + /* romfs is at block zero too */ 19.459 + if (romfsb->word0 == ROMSB_WORD0 && 19.460 +@@ -145,6 +195,7 @@ int __init rd_load_image(char *from) 19.461 + int nblocks, i, disk; 19.462 + char *buf = NULL; 19.463 + unsigned short rotate = 0; 19.464 ++ int ztype=-1; 19.465 + #if !defined(CONFIG_S390) && !defined(CONFIG_PPC_ISERIES) 19.466 + char rotator[4] = { '|' , '/' , '-' , '\\' }; 19.467 + #endif 19.468 +@@ -157,14 +208,38 @@ int __init rd_load_image(char *from) 19.469 + if (in_fd < 0) 19.470 + goto noclose_input; 19.471 + 19.472 +- nblocks = identify_ramdisk_image(in_fd, rd_image_start); 19.473 ++ nblocks = identify_ramdisk_image(in_fd, rd_image_start, &ztype); 19.474 + if (nblocks < 0) 19.475 + goto done; 19.476 + 19.477 + if (nblocks == 0) { 19.478 + #ifdef BUILD_CRAMDISK 19.479 +- if (crd_load(in_fd, out_fd) == 0) 19.480 +- goto successful_load; 19.481 ++ switch(ztype) { 19.482 ++ 19.483 ++#ifdef CONFIG_RD_GZIP 19.484 ++ case 0: 19.485 ++ if (crd_load(in_fd, out_fd) == 0) 19.486 ++ goto successful_load; 19.487 ++ break; 19.488 ++#endif 19.489 ++ 19.490 ++#ifdef CONFIG_RD_BZIP2 19.491 ++ case 1: 19.492 ++ if (crd_load_bzip2(in_fd, out_fd) == 0) 19.493 ++ goto successful_load; 19.494 ++ break; 19.495 ++#endif 19.496 ++ 19.497 ++#ifdef CONFIG_RD_LZMA 19.498 ++ case 2: 19.499 ++ if (crd_load_lzma(in_fd, out_fd) == 0) 19.500 ++ goto successful_load; 19.501 ++ break; 19.502 ++#endif 19.503 ++ 19.504 ++ default: 19.505 ++ break; 19.506 ++ } 19.507 + #else 19.508 + printk(KERN_NOTICE 19.509 + "RAMDISK: Kernel does not support compressed " 19.510 +@@ -269,6 +344,7 @@ int __init rd_load_disk(int n) 19.511 + 19.512 + #ifdef BUILD_CRAMDISK 19.513 + 19.514 ++#ifdef CONFIG_RD_GZIP 19.515 + /* 19.516 + * gzip declarations 19.517 + */ 19.518 +@@ -296,8 +372,11 @@ static unsigned outcnt; /* bytes in out 19.519 + static int exit_code; 19.520 + static int unzip_error; 19.521 + static long bytes_out; 19.522 ++#endif 19.523 ++ 19.524 + static int crd_infd, crd_outfd; 19.525 + 19.526 ++#ifdef CONFIG_RD_GZIP 19.527 + #define get_byte() (inptr < insize ? inbuf[inptr++] : fill_inbuf()) 19.528 + 19.529 + /* Diagnostic functions (stubbed out) */ 19.530 +@@ -359,7 +438,22 @@ static int __init fill_inbuf(void) 19.531 + 19.532 + return inbuf[0]; 19.533 + } 19.534 ++#endif 19.535 ++ 19.536 ++#if (defined CONFIG_RD_BZIP2 || defined CONFIG_RD_LZMA) 19.537 ++static int __init compr_fill(void *buf, unsigned int len) 19.538 ++{ 19.539 ++ int r = sys_read(crd_infd, buf, len); 19.540 ++ if(r < 0) { 19.541 ++ printk(KERN_ERR "RAMDISK: error while reading compressed data"); 19.542 ++ } else if(r == 0) { 19.543 ++ printk(KERN_ERR "RAMDISK: EOF while reading compressed data"); 19.544 ++ } 19.545 ++ return r; 19.546 ++} 19.547 ++#endif 19.548 + 19.549 ++#ifdef CONFIG_RD_GZIP 19.550 + /* =========================================================================== 19.551 + * Write the output window window[0..outcnt-1] and update crc and bytes_out. 19.552 + * (Used for the decompressed data only.) 19.553 +@@ -385,7 +479,24 @@ static void __init flush_window(void) 19.554 + bytes_out += (ulg)outcnt; 19.555 + outcnt = 0; 19.556 + } 19.557 ++#endif 19.558 ++ 19.559 ++#if (defined CONFIG_RD_BZIP2 || defined CONFIG_RD_LZMA) 19.560 ++static int __init compr_flush(void *window, unsigned int outcnt) { 19.561 ++ static int progressDots=0; 19.562 ++ int written = sys_write(crd_outfd, window, outcnt); 19.563 ++ if (written != outcnt) { 19.564 ++ printk(KERN_ERR "RAMDISK: incomplete write (%d != %d)\n", 19.565 ++ written, outcnt); 19.566 ++ } 19.567 ++ progressDots = (progressDots+1)%10; 19.568 ++ if(!progressDots) 19.569 ++ printk("."); 19.570 ++ return outcnt; 19.571 ++} 19.572 ++#endif 19.573 + 19.574 ++#ifdef CONFIG_RD_GZIP 19.575 + static void __init error(char *x) 19.576 + { 19.577 + printk(KERN_ERR "%s\n", x); 19.578 +@@ -425,5 +536,43 @@ static int __init crd_load(int in_fd, in 19.579 + kfree(window); 19.580 + return result; 19.581 + } 19.582 ++#endif 19.583 ++ 19.584 ++#if (defined CONFIG_RD_BZIP2 || defined CONFIG_RD_LZMA) 19.585 ++static int __init crd_load_compr(int in_fd, int out_fd, int size, 19.586 ++ int (*deco)(char *,int, 19.587 ++ int(*fill)(void*,unsigned int), 19.588 ++ int(*flush)(void*,unsigned int), 19.589 ++ int *)) 19.590 ++{ 19.591 ++ int result; 19.592 ++ char *inbuf = kmalloc(size, GFP_KERNEL); 19.593 ++ crd_infd = in_fd; 19.594 ++ crd_outfd = out_fd; 19.595 ++ if (inbuf == 0) { 19.596 ++ printk(KERN_ERR "RAMDISK: Couldn't allocate decompression buffer\n"); 19.597 ++ return -1; 19.598 ++ } 19.599 ++ result=deco(inbuf, 0, compr_fill, compr_flush, NULL); 19.600 ++ kfree(inbuf); 19.601 ++ printk("\n"); 19.602 ++ return result; 19.603 ++} 19.604 ++#endif 19.605 ++ 19.606 ++#ifdef CONFIG_RD_BZIP2 19.607 ++static int __init crd_load_bzip2(int in_fd, int out_fd) 19.608 ++{ 19.609 ++ return crd_load_compr(in_fd, out_fd, BZIP2_IOBUF_SIZE, bunzip2); 19.610 ++} 19.611 ++#endif 19.612 ++ 19.613 ++#ifdef CONFIG_RD_LZMA 19.614 ++static int __init crd_load_lzma(int in_fd, int out_fd) 19.615 ++{ 19.616 ++ return crd_load_compr(in_fd, out_fd, LZMA_IOBUF_SIZE, unlzma); 19.617 ++} 19.618 ++ 19.619 ++#endif 19.620 + 19.621 + #endif /* BUILD_CRAMDISK */ 19.622 + 19.623 +--- linux-2.6.25.5/init/initramfs.c 19.624 ++++ linux-2.6.25.5/init/initramfs.c 19.625 +@@ -367,6 +367,18 @@ 19.626 + } 19.627 + } 19.628 + 19.629 ++#ifdef CONFIG_RD_BZIP2 19.630 ++#include <linux/decompress_bunzip2.h> 19.631 ++#undef STATIC 19.632 ++ 19.633 ++#endif 19.634 ++ 19.635 ++#ifdef CONFIG_RD_LZMA 19.636 ++#include <linux/decompress_unlzma.h> 19.637 ++#undef STATIC 19.638 ++ 19.639 ++#endif 19.640 ++ 19.641 + /* 19.642 + * gzip declarations 19.643 + */ 19.644 +@@ -441,6 +453,29 @@ 19.645 + outcnt = 0; 19.646 + } 19.647 + 19.648 ++#include <linux/initrd.h> 19.649 ++#ifdef CONFIG_RD_LZMA 19.650 ++#define INITRD_PAGE ((PAGE_SIZE > 1024*1024) ? PAGE_SIZE : 1024*1024) 19.651 ++static int fill_offset, fill_total; 19.652 ++static int fill_buffer(void *buffer, unsigned size) 19.653 ++{ 19.654 ++ int max = initrd_end - initrd_start - fill_offset; 19.655 ++ if (size < max) max = size; 19.656 ++ memcpy(buffer, (void *)(initrd_start + fill_offset), max); 19.657 ++ fill_offset += max; 19.658 ++ fill_total += max; 19.659 ++ if (fill_offset >= INITRD_PAGE) { 19.660 ++ unsigned rem = fill_offset % INITRD_PAGE; 19.661 ++ unsigned end = initrd_start + fill_offset - rem; 19.662 ++ free_initrd_mem(initrd_start, end); 19.663 ++ printk("."); 19.664 ++ initrd_start = end; 19.665 ++ fill_offset = rem; 19.666 ++ } 19.667 ++ return max; 19.668 ++} 19.669 ++#endif 19.670 ++ 19.671 + static char * __init unpack_to_rootfs(char *buf, unsigned len, int check_only) 19.672 + { 19.673 + int written; 19.674 +@@ -455,6 +490,9 @@ 19.675 + this_header = 0; 19.676 + message = NULL; 19.677 + while (!message && len) { 19.678 ++#ifdef CONFIG_RD_LZMA 19.679 ++ int status; 19.680 ++#endif 19.681 + loff_t saved_offset = this_header; 19.682 + if (*buf == '0' && !(this_header & 3)) { 19.683 + state = Start; 19.684 +@@ -477,9 +515,42 @@ 19.685 + bytes_out = 0; 19.686 + crc = (ulg)0xffffffffL; /* shift register contents */ 19.687 + makecrc(); 19.688 +- gunzip(); 19.689 ++ if(!gunzip() && message == NULL) 19.690 ++ goto ok; 19.691 ++ 19.692 ++#ifdef CONFIG_RD_BZIP2 19.693 ++ message = NULL; /* Zero out message, or else cpio will 19.694 ++ think an error has already occured */ 19.695 ++ if(!bunzip2(buf, len, NULL, flush_buffer, &inptr) < 0 && 19.696 ++ message == NULL) { 19.697 ++ goto ok; 19.698 ++ } 19.699 ++#endif 19.700 ++ 19.701 ++#ifdef CONFIG_RD_LZMA 19.702 ++ message = NULL; /* Zero out message, or else cpio will 19.703 ++ think an error has already occured */ 19.704 ++ status = -1; 19.705 ++ if(buf == (char *) initrd_start) { 19.706 ++ char *work_buffer = malloc(LZMA_IOBUF_SIZE); 19.707 ++ if (work_buffer) { 19.708 ++ fill_total = fill_offset = 0; 19.709 ++ fill_buffer(work_buffer, LZMA_IOBUF_SIZE); 19.710 ++ status = unlzma(work_buffer, LZMA_IOBUF_SIZE, 19.711 ++ fill_buffer, flush_buffer, NULL); 19.712 ++ inptr = fill_total; 19.713 ++ free(work_buffer); 19.714 ++ } 19.715 ++ } 19.716 ++ else status = unlzma(buf,len, NULL, flush_buffer, &inptr); 19.717 ++ if (status == 0 && message == NULL) { 19.718 ++ goto ok; 19.719 ++ } 19.720 ++#endif 19.721 ++ ok: 19.722 ++ 19.723 + if (state != Reset) 19.724 +- error("junk in gzipped archive"); 19.725 ++ error("junk in compressed archive"); 19.726 + this_header = saved_offset + inptr; 19.727 + buf += inptr; 19.728 + len -= inptr; 19.729 +@@ -545,7 +616,7 @@ 19.730 + if (err) 19.731 + panic(err); 19.732 + if (initrd_start) { 19.733 +-#ifdef CONFIG_BLK_DEV_RAM 19.734 ++#ifdef NOT_IN_SLITAZ_CONFIG_BLK_DEV_RAM 19.735 + int fd; 19.736 + printk(KERN_INFO "checking if image is initramfs..."); 19.737 + err = unpack_to_rootfs((char *)initrd_start, 19.738 + 19.739 +--- linux-2.6.25.5/init/Kconfig 19.740 ++++ linux-2.6.25.5/init/Kconfig 19.741 +@@ -100,6 +100,56 @@ 19.742 + 19.743 + which is done within the script "scripts/setlocalversion".) 19.744 + 19.745 ++choice 19.746 ++ prompt "Kernel compression mode" 19.747 ++ default KERNEL_GZIP 19.748 ++ help 19.749 ++ The linux kernel is a kind of self-extracting executable. 19.750 ++ Several compression algorithms are available, which differ 19.751 ++ in efficiency, compression and decompression speed. 19.752 ++ Compression speed is only relevant when building a kernel. 19.753 ++ Decompression speed is relevant at each boot. 19.754 ++ 19.755 ++ If you have any problems with bzip2 or lzma compressed 19.756 ++ kernels, mail me (Alain Knaff) <alain@knaff.lu>. (An older 19.757 ++ version of this functionality (bzip2 only), for 2.4, was 19.758 ++ supplied by Christian Ludwig) 19.759 ++ 19.760 ++ High compression options are mostly useful for users, who 19.761 ++ are low on disk space (embedded systems), but for whom ram 19.762 ++ size matters less. 19.763 ++ 19.764 ++ If in doubt, select 'gzip' 19.765 ++ 19.766 ++config KERNEL_GZIP 19.767 ++ bool "Gzip" 19.768 ++ help 19.769 ++ The old and tries gzip compression. Its compression ratio is 19.770 ++ the poorest among the 3 choices; however its speed (both 19.771 ++ compression and decompression) is the fastest. 19.772 ++ 19.773 ++config KERNEL_BZIP2 19.774 ++ bool "Bzip2" 19.775 ++ help 19.776 ++ Its compression ratio and speed is intermediate. 19.777 ++ Decompression speed is slowest among the 3. 19.778 ++ The kernel size is about 10 per cent smaller with bzip2, 19.779 ++ in comparison to gzip. 19.780 ++ Bzip2 uses a large amount of memory. For modern kernels 19.781 ++ you will need at least 8MB RAM or more for booting. 19.782 ++ 19.783 ++config KERNEL_LZMA 19.784 ++ bool "LZMA" 19.785 ++ help 19.786 ++ The most recent compression algorithm. 19.787 ++ Its ratio is best, decompression speed is between the other 19.788 ++ 2. Compression is slowest. 19.789 ++ The kernel size is about 33 per cent smaller with lzma, 19.790 ++ in comparison to gzip. 19.791 ++ 19.792 ++endchoice 19.793 ++ 19.794 ++ 19.795 + config SWAP 19.796 + bool "Support for paging of anonymous memory (swap)" 19.797 + depends on MMU && BLOCK 19.798 + 19.799 +--- linux-2.6.25.5/lib/decompress_bunzip2.c 19.800 ++++ linux-2.6.25.5/lib/decompress_bunzip2.c 19.801 +@@ -0,0 +1,645 @@ 19.802 ++/* vi: set sw=4 ts=4: */ 19.803 ++/* Small bzip2 deflate implementation, by Rob Landley (rob@landley.net). 19.804 ++ 19.805 ++ Based on bzip2 decompression code by Julian R Seward (jseward@acm.org), 19.806 ++ which also acknowledges contributions by Mike Burrows, David Wheeler, 19.807 ++ Peter Fenwick, Alistair Moffat, Radford Neal, Ian H. Witten, 19.808 ++ Robert Sedgewick, and Jon L. Bentley. 19.809 ++ 19.810 ++ This code is licensed under the LGPLv2: 19.811 ++ LGPL (http://www.gnu.org/copyleft/lgpl.html 19.812 ++*/ 19.813 ++ 19.814 ++/* 19.815 ++ Size and speed optimizations by Manuel Novoa III (mjn3@codepoet.org). 19.816 ++ 19.817 ++ More efficient reading of Huffman codes, a streamlined read_bunzip() 19.818 ++ function, and various other tweaks. In (limited) tests, approximately 19.819 ++ 20% faster than bzcat on x86 and about 10% faster on arm. 19.820 ++ 19.821 ++ Note that about 2/3 of the time is spent in read_unzip() reversing 19.822 ++ the Burrows-Wheeler transformation. Much of that time is delay 19.823 ++ resulting from cache misses. 19.824 ++ 19.825 ++ I would ask that anyone benefiting from this work, especially those 19.826 ++ using it in commercial products, consider making a donation to my local 19.827 ++ non-profit hospice organization in the name of the woman I loved, who 19.828 ++ passed away Feb. 12, 2003. 19.829 ++ 19.830 ++ In memory of Toni W. Hagan 19.831 ++ 19.832 ++ Hospice of Acadiana, Inc. 19.833 ++ 2600 Johnston St., Suite 200 19.834 ++ Lafayette, LA 70503-3240 19.835 ++ 19.836 ++ Phone (337) 232-1234 or 1-800-738-2226 19.837 ++ Fax (337) 232-1297 19.838 ++ 19.839 ++ http://www.hospiceacadiana.com/ 19.840 ++ 19.841 ++ Manuel 19.842 ++ */ 19.843 ++ 19.844 ++/* 19.845 ++ Made it fit for running in Linux Kernel by Alain Knaff (alain@knaff.lu) 19.846 ++*/ 19.847 ++ 19.848 ++ 19.849 ++#ifndef STATIC 19.850 ++ 19.851 ++#include <linux/kernel.h> 19.852 ++#include <linux/fs.h> 19.853 ++#include <linux/string.h> 19.854 ++ 19.855 ++#ifdef TEST 19.856 ++#include "test.h" 19.857 ++#else 19.858 ++#include <linux/vmalloc.h> 19.859 ++#endif 19.860 ++ 19.861 ++static void __init *large_malloc(size_t size) 19.862 ++{ 19.863 ++ return vmalloc(size); 19.864 ++} 19.865 ++ 19.866 ++static void __init large_free(void *where) 19.867 ++{ 19.868 ++ vfree(where); 19.869 ++} 19.870 ++ 19.871 ++#ifndef TEST 19.872 ++static void __init *malloc(size_t size) 19.873 ++{ 19.874 ++ return kmalloc(size, GFP_KERNEL); 19.875 ++} 19.876 ++ 19.877 ++static void __init free(void *where) 19.878 ++{ 19.879 ++ kfree(where); 19.880 ++} 19.881 ++ 19.882 ++static void __init error(char *x) 19.883 ++{ 19.884 ++ printk(KERN_ERR "%s\n", x); 19.885 ++} 19.886 ++#endif 19.887 ++ 19.888 ++#define STATIC /**/ 19.889 ++ 19.890 ++#endif 19.891 ++ 19.892 ++#include <linux/decompress_bunzip2.h> 19.893 ++ 19.894 ++ 19.895 ++/* Constants for Huffman coding */ 19.896 ++#define MAX_GROUPS 6 19.897 ++#define GROUP_SIZE 50 /* 64 would have been more efficient */ 19.898 ++#define MAX_HUFCODE_BITS 20 /* Longest Huffman code allowed */ 19.899 ++#define MAX_SYMBOLS 258 /* 256 literals + RUNA + RUNB */ 19.900 ++#define SYMBOL_RUNA 0 19.901 ++#define SYMBOL_RUNB 1 19.902 ++ 19.903 ++/* Status return values */ 19.904 ++#define RETVAL_OK 0 19.905 ++#define RETVAL_LAST_BLOCK (-1) 19.906 ++#define RETVAL_NOT_BZIP_DATA (-2) 19.907 ++#define RETVAL_UNEXPECTED_INPUT_EOF (-3) 19.908 ++#define RETVAL_UNEXPECTED_OUTPUT_EOF (-4) 19.909 ++#define RETVAL_DATA_ERROR (-5) 19.910 ++#define RETVAL_OUT_OF_MEMORY (-6) 19.911 ++#define RETVAL_OBSOLETE_INPUT (-7) 19.912 ++ 19.913 ++ 19.914 ++/* This is what we know about each Huffman coding group */ 19.915 ++struct group_data { 19.916 ++ /* We have an extra slot at the end of limit[] for a sentinal value. */ 19.917 ++ int limit[MAX_HUFCODE_BITS+1],base[MAX_HUFCODE_BITS],permute[MAX_SYMBOLS]; 19.918 ++ int minLen, maxLen; 19.919 ++}; 19.920 ++ 19.921 ++/* Structure holding all the housekeeping data, including IO buffers and 19.922 ++ memory that persists between calls to bunzip */ 19.923 ++typedef struct { 19.924 ++ /* State for interrupting output loop */ 19.925 ++ int writeCopies,writePos,writeRunCountdown,writeCount,writeCurrent; 19.926 ++ /* I/O tracking data (file handles, buffers, positions, etc.) */ 19.927 ++ int (*fill)(void*,unsigned int); 19.928 ++ int inbufCount,inbufPos /*,outbufPos*/; 19.929 ++ unsigned char *inbuf /*,*outbuf*/; 19.930 ++ unsigned int inbufBitCount, inbufBits; 19.931 ++ /* The CRC values stored in the block header and calculated from the data */ 19.932 ++ unsigned int crc32Table[256],headerCRC, totalCRC, writeCRC; 19.933 ++ /* Intermediate buffer and its size (in bytes) */ 19.934 ++ unsigned int *dbuf, dbufSize; 19.935 ++ /* These things are a bit too big to go on the stack */ 19.936 ++ unsigned char selectors[32768]; /* nSelectors=15 bits */ 19.937 ++ struct group_data groups[MAX_GROUPS]; /* Huffman coding tables */ 19.938 ++ int io_error; /* non-zero if we have IO error */ 19.939 ++} bunzip_data; 19.940 ++ 19.941 ++ 19.942 ++/* Return the next nnn bits of input. All reads from the compressed input 19.943 ++ are done through this function. All reads are big endian */ 19.944 ++static unsigned int get_bits(bunzip_data *bd, char bits_wanted) 19.945 ++{ 19.946 ++ unsigned int bits=0; 19.947 ++ 19.948 ++ /* If we need to get more data from the byte buffer, do so. (Loop getting 19.949 ++ one byte at a time to enforce endianness and avoid unaligned access.) */ 19.950 ++ while (bd->inbufBitCount<bits_wanted) { 19.951 ++ /* If we need to read more data from file into byte buffer, do so */ 19.952 ++ if(bd->inbufPos==bd->inbufCount) { 19.953 ++ if(bd->io_error) 19.954 ++ return 0; 19.955 ++ if((bd->inbufCount = bd->fill(bd->inbuf, BZIP2_IOBUF_SIZE)) <= 0) { 19.956 ++ bd->io_error=RETVAL_UNEXPECTED_INPUT_EOF; 19.957 ++ return 0; 19.958 ++ } 19.959 ++ bd->inbufPos=0; 19.960 ++ } 19.961 ++ /* Avoid 32-bit overflow (dump bit buffer to top of output) */ 19.962 ++ if(bd->inbufBitCount>=24) { 19.963 ++ bits=bd->inbufBits&((1<<bd->inbufBitCount)-1); 19.964 ++ bits_wanted-=bd->inbufBitCount; 19.965 ++ bits<<=bits_wanted; 19.966 ++ bd->inbufBitCount=0; 19.967 ++ } 19.968 ++ /* Grab next 8 bits of input from buffer. */ 19.969 ++ bd->inbufBits=(bd->inbufBits<<8)|bd->inbuf[bd->inbufPos++]; 19.970 ++ bd->inbufBitCount+=8; 19.971 ++ } 19.972 ++ /* Calculate result */ 19.973 ++ bd->inbufBitCount-=bits_wanted; 19.974 ++ bits|=(bd->inbufBits>>bd->inbufBitCount)&((1<<bits_wanted)-1); 19.975 ++ 19.976 ++ return bits; 19.977 ++} 19.978 ++ 19.979 ++/* Unpacks the next block and sets up for the inverse burrows-wheeler step. */ 19.980 ++ 19.981 ++static int get_next_block(bunzip_data *bd) 19.982 ++{ 19.983 ++ struct group_data *hufGroup=NULL; 19.984 ++ int *base=NULL; 19.985 ++ int *limit=NULL; 19.986 ++ int dbufCount,nextSym,dbufSize,groupCount,selector, 19.987 ++ i,j,k,t,runPos,symCount,symTotal,nSelectors,byteCount[256]; 19.988 ++ unsigned char uc, symToByte[256], mtfSymbol[256], *selectors; 19.989 ++ unsigned int *dbuf,origPtr; 19.990 ++ 19.991 ++ dbuf=bd->dbuf; 19.992 ++ dbufSize=bd->dbufSize; 19.993 ++ selectors=bd->selectors; 19.994 ++ 19.995 ++ /* Read in header signature and CRC, then validate signature. 19.996 ++ (last block signature means CRC is for whole file, return now) */ 19.997 ++ i = get_bits(bd,24); 19.998 ++ j = get_bits(bd,24); 19.999 ++ bd->headerCRC=get_bits(bd,32); 19.1000 ++ if ((i == 0x177245) && (j == 0x385090)) return RETVAL_LAST_BLOCK; 19.1001 ++ if ((i != 0x314159) || (j != 0x265359)) return RETVAL_NOT_BZIP_DATA; 19.1002 ++ /* We can add support for blockRandomised if anybody complains. There was 19.1003 ++ some code for this in busybox 1.0.0-pre3, but nobody ever noticed that 19.1004 ++ it didn't actually work. */ 19.1005 ++ if(get_bits(bd,1)) return RETVAL_OBSOLETE_INPUT; 19.1006 ++ if((origPtr=get_bits(bd,24)) > dbufSize) return RETVAL_DATA_ERROR; 19.1007 ++ /* mapping table: if some byte values are never used (encoding things 19.1008 ++ like ascii text), the compression code removes the gaps to have fewer 19.1009 ++ symbols to deal with, and writes a sparse bitfield indicating which 19.1010 ++ values were present. We make a translation table to convert the symbols 19.1011 ++ back to the corresponding bytes. */ 19.1012 ++ t=get_bits(bd, 16); 19.1013 ++ symTotal=0; 19.1014 ++ for (i=0;i<16;i++) { 19.1015 ++ if(t&(1<<(15-i))) { 19.1016 ++ k=get_bits(bd,16); 19.1017 ++ for(j=0;j<16;j++) 19.1018 ++ if(k&(1<<(15-j))) symToByte[symTotal++]=(16*i)+j; 19.1019 ++ } 19.1020 ++ } 19.1021 ++ /* How many different Huffman coding groups does this block use? */ 19.1022 ++ groupCount=get_bits(bd,3); 19.1023 ++ if (groupCount<2 || groupCount>MAX_GROUPS) return RETVAL_DATA_ERROR; 19.1024 ++ /* nSelectors: Every GROUP_SIZE many symbols we select a new Huffman coding 19.1025 ++ group. Read in the group selector list, which is stored as MTF encoded 19.1026 ++ bit runs. (MTF=Move To Front, as each value is used it's moved to the 19.1027 ++ start of the list.) */ 19.1028 ++ if(!(nSelectors=get_bits(bd, 15))) return RETVAL_DATA_ERROR; 19.1029 ++ for(i=0; i<groupCount; i++) mtfSymbol[i] = i; 19.1030 ++ for(i=0; i<nSelectors; i++) { 19.1031 ++ /* Get next value */ 19.1032 ++ for(j=0;get_bits(bd,1);j++) if (j>=groupCount) return RETVAL_DATA_ERROR; 19.1033 ++ /* Decode MTF to get the next selector */ 19.1034 ++ uc = mtfSymbol[j]; 19.1035 ++ for(;j;j--) mtfSymbol[j] = mtfSymbol[j-1]; 19.1036 ++ mtfSymbol[0]=selectors[i]=uc; 19.1037 ++ } 19.1038 ++ /* Read the Huffman coding tables for each group, which code for symTotal 19.1039 ++ literal symbols, plus two run symbols (RUNA, RUNB) */ 19.1040 ++ symCount=symTotal+2; 19.1041 ++ for (j=0; j<groupCount; j++) { 19.1042 ++ unsigned char length[MAX_SYMBOLS],temp[MAX_HUFCODE_BITS+1]; 19.1043 ++ int minLen, maxLen, pp; 19.1044 ++ /* Read Huffman code lengths for each symbol. They're stored in 19.1045 ++ a way similar to mtf; record a starting value for the first symbol, 19.1046 ++ and an offset from the previous value for everys symbol after that. 19.1047 ++ (Subtracting 1 before the loop and then adding it back at the end is 19.1048 ++ an optimization that makes the test inside the loop simpler: symbol 19.1049 ++ length 0 becomes negative, so an unsigned inequality catches it.) */ 19.1050 ++ t=get_bits(bd, 5)-1; 19.1051 ++ for (i = 0; i < symCount; i++) { 19.1052 ++ for(;;) { 19.1053 ++ if (((unsigned)t) > (MAX_HUFCODE_BITS-1)) 19.1054 ++ return RETVAL_DATA_ERROR; 19.1055 ++ /* If first bit is 0, stop. Else second bit indicates whether 19.1056 ++ to increment or decrement the value. Optimization: grab 2 19.1057 ++ bits and unget the second if the first was 0. */ 19.1058 ++ k = get_bits(bd,2); 19.1059 ++ if (k < 2) { 19.1060 ++ bd->inbufBitCount++; 19.1061 ++ break; 19.1062 ++ } 19.1063 ++ /* Add one if second bit 1, else subtract 1. Avoids if/else */ 19.1064 ++ t+=(((k+1)&2)-1); 19.1065 ++ } 19.1066 ++ /* Correct for the initial -1, to get the final symbol length */ 19.1067 ++ length[i]=t+1; 19.1068 ++ } 19.1069 ++ /* Find largest and smallest lengths in this group */ 19.1070 ++ minLen=maxLen=length[0]; 19.1071 ++ for(i = 1; i < symCount; i++) { 19.1072 ++ if(length[i] > maxLen) maxLen = length[i]; 19.1073 ++ else if(length[i] < minLen) minLen = length[i]; 19.1074 ++ } 19.1075 ++ /* Calculate permute[], base[], and limit[] tables from length[]. 19.1076 ++ * 19.1077 ++ * permute[] is the lookup table for converting Huffman coded symbols 19.1078 ++ * into decoded symbols. base[] is the amount to subtract from the 19.1079 ++ * value of a Huffman symbol of a given length when using permute[]. 19.1080 ++ * 19.1081 ++ * limit[] indicates the largest numerical value a symbol with a given 19.1082 ++ * number of bits can have. This is how the Huffman codes can vary in 19.1083 ++ * length: each code with a value>limit[length] needs another bit. 19.1084 ++ */ 19.1085 ++ hufGroup=bd->groups+j; 19.1086 ++ hufGroup->minLen = minLen; 19.1087 ++ hufGroup->maxLen = maxLen; 19.1088 ++ /* Note that minLen can't be smaller than 1, so we adjust the base 19.1089 ++ and limit array pointers so we're not always wasting the first 19.1090 ++ entry. We do this again when using them (during symbol decoding).*/ 19.1091 ++ base=hufGroup->base-1; 19.1092 ++ limit=hufGroup->limit-1; 19.1093 ++ /* Calculate permute[]. Concurently, initialize temp[] and limit[]. */ 19.1094 ++ pp=0; 19.1095 ++ for(i=minLen;i<=maxLen;i++) { 19.1096 ++ temp[i]=limit[i]=0; 19.1097 ++ for(t=0;t<symCount;t++) 19.1098 ++ if(length[t]==i) hufGroup->permute[pp++] = t; 19.1099 ++ } 19.1100 ++ /* Count symbols coded for at each bit length */ 19.1101 ++ for (i=0;i<symCount;i++) temp[length[i]]++; 19.1102 ++ /* Calculate limit[] (the largest symbol-coding value at each bit 19.1103 ++ * length, which is (previous limit<<1)+symbols at this level), and 19.1104 ++ * base[] (number of symbols to ignore at each bit length, which is 19.1105 ++ * limit minus the cumulative count of symbols coded for already). */ 19.1106 ++ pp=t=0; 19.1107 ++ for (i=minLen; i<maxLen; i++) { 19.1108 ++ pp+=temp[i]; 19.1109 ++ /* We read the largest possible symbol size and then unget bits 19.1110 ++ after determining how many we need, and those extra bits could 19.1111 ++ be set to anything. (They're noise from future symbols.) At 19.1112 ++ each level we're really only interested in the first few bits, 19.1113 ++ so here we set all the trailing to-be-ignored bits to 1 so they 19.1114 ++ don't affect the value>limit[length] comparison. */ 19.1115 ++ limit[i]= (pp << (maxLen - i)) - 1; 19.1116 ++ pp<<=1; 19.1117 ++ base[i+1]=pp-(t+=temp[i]); 19.1118 ++ } 19.1119 ++ limit[maxLen+1] = INT_MAX; /* Sentinal value for reading next sym. */ 19.1120 ++ limit[maxLen]=pp+temp[maxLen]-1; 19.1121 ++ base[minLen]=0; 19.1122 ++ } 19.1123 ++ /* We've finished reading and digesting the block header. Now read this 19.1124 ++ block's Huffman coded symbols from the file and undo the Huffman coding 19.1125 ++ and run length encoding, saving the result into dbuf[dbufCount++]=uc */ 19.1126 ++ 19.1127 ++ /* Initialize symbol occurrence counters and symbol Move To Front table */ 19.1128 ++ for(i=0;i<256;i++) { 19.1129 ++ byteCount[i] = 0; 19.1130 ++ mtfSymbol[i]=(unsigned char)i; 19.1131 ++ } 19.1132 ++ /* Loop through compressed symbols. */ 19.1133 ++ runPos=dbufCount=symCount=selector=0; 19.1134 ++ for(;;) { 19.1135 ++ /* Determine which Huffman coding group to use. */ 19.1136 ++ if(!(symCount--)) { 19.1137 ++ symCount=GROUP_SIZE-1; 19.1138 ++ if(selector>=nSelectors) return RETVAL_DATA_ERROR; 19.1139 ++ hufGroup=bd->groups+selectors[selector++]; 19.1140 ++ base=hufGroup->base-1; 19.1141 ++ limit=hufGroup->limit-1; 19.1142 ++ } 19.1143 ++ /* Read next Huffman-coded symbol. */ 19.1144 ++ /* Note: It is far cheaper to read maxLen bits and back up than it is 19.1145 ++ to read minLen bits and then an additional bit at a time, testing 19.1146 ++ as we go. Because there is a trailing last block (with file CRC), 19.1147 ++ there is no danger of the overread causing an unexpected EOF for a 19.1148 ++ valid compressed file. As a further optimization, we do the read 19.1149 ++ inline (falling back to a call to get_bits if the buffer runs 19.1150 ++ dry). The following (up to got_huff_bits:) is equivalent to 19.1151 ++ j=get_bits(bd,hufGroup->maxLen); 19.1152 ++ */ 19.1153 ++ while (bd->inbufBitCount<hufGroup->maxLen) { 19.1154 ++ if(bd->inbufPos==bd->inbufCount) { 19.1155 ++ j = get_bits(bd,hufGroup->maxLen); 19.1156 ++ goto got_huff_bits; 19.1157 ++ } 19.1158 ++ bd->inbufBits=(bd->inbufBits<<8)|bd->inbuf[bd->inbufPos++]; 19.1159 ++ bd->inbufBitCount+=8; 19.1160 ++ }; 19.1161 ++ bd->inbufBitCount-=hufGroup->maxLen; 19.1162 ++ j = (bd->inbufBits>>bd->inbufBitCount)&((1<<hufGroup->maxLen)-1); 19.1163 ++got_huff_bits: 19.1164 ++ /* Figure how how many bits are in next symbol and unget extras */ 19.1165 ++ i=hufGroup->minLen; 19.1166 ++ while(j>limit[i]) ++i; 19.1167 ++ bd->inbufBitCount += (hufGroup->maxLen - i); 19.1168 ++ /* Huffman decode value to get nextSym (with bounds checking) */ 19.1169 ++ if ((i > hufGroup->maxLen) 19.1170 ++ || (((unsigned)(j=(j>>(hufGroup->maxLen-i))-base[i])) 19.1171 ++ >= MAX_SYMBOLS)) 19.1172 ++ return RETVAL_DATA_ERROR; 19.1173 ++ nextSym = hufGroup->permute[j]; 19.1174 ++ /* We have now decoded the symbol, which indicates either a new literal 19.1175 ++ byte, or a repeated run of the most recent literal byte. First, 19.1176 ++ check if nextSym indicates a repeated run, and if so loop collecting 19.1177 ++ how many times to repeat the last literal. */ 19.1178 ++ if (((unsigned)nextSym) <= SYMBOL_RUNB) { /* RUNA or RUNB */ 19.1179 ++ /* If this is the start of a new run, zero out counter */ 19.1180 ++ if(!runPos) { 19.1181 ++ runPos = 1; 19.1182 ++ t = 0; 19.1183 ++ } 19.1184 ++ /* Neat trick that saves 1 symbol: instead of or-ing 0 or 1 at 19.1185 ++ each bit position, add 1 or 2 instead. For example, 19.1186 ++ 1011 is 1<<0 + 1<<1 + 2<<2. 1010 is 2<<0 + 2<<1 + 1<<2. 19.1187 ++ You can make any bit pattern that way using 1 less symbol than 19.1188 ++ the basic or 0/1 method (except all bits 0, which would use no 19.1189 ++ symbols, but a run of length 0 doesn't mean anything in this 19.1190 ++ context). Thus space is saved. */ 19.1191 ++ t += (runPos << nextSym); /* +runPos if RUNA; +2*runPos if RUNB */ 19.1192 ++ runPos <<= 1; 19.1193 ++ continue; 19.1194 ++ } 19.1195 ++ /* When we hit the first non-run symbol after a run, we now know 19.1196 ++ how many times to repeat the last literal, so append that many 19.1197 ++ copies to our buffer of decoded symbols (dbuf) now. (The last 19.1198 ++ literal used is the one at the head of the mtfSymbol array.) */ 19.1199 ++ if(runPos) { 19.1200 ++ runPos=0; 19.1201 ++ if(dbufCount+t>=dbufSize) return RETVAL_DATA_ERROR; 19.1202 ++ 19.1203 ++ uc = symToByte[mtfSymbol[0]]; 19.1204 ++ byteCount[uc] += t; 19.1205 ++ while(t--) dbuf[dbufCount++]=uc; 19.1206 ++ } 19.1207 ++ /* Is this the terminating symbol? */ 19.1208 ++ if(nextSym>symTotal) break; 19.1209 ++ /* At this point, nextSym indicates a new literal character. Subtract 19.1210 ++ one to get the position in the MTF array at which this literal is 19.1211 ++ currently to be found. (Note that the result can't be -1 or 0, 19.1212 ++ because 0 and 1 are RUNA and RUNB. But another instance of the 19.1213 ++ first symbol in the mtf array, position 0, would have been handled 19.1214 ++ as part of a run above. Therefore 1 unused mtf position minus 19.1215 ++ 2 non-literal nextSym values equals -1.) */ 19.1216 ++ if(dbufCount>=dbufSize) return RETVAL_DATA_ERROR; 19.1217 ++ i = nextSym - 1; 19.1218 ++ uc = mtfSymbol[i]; 19.1219 ++ /* Adjust the MTF array. Since we typically expect to move only a 19.1220 ++ * small number of symbols, and are bound by 256 in any case, using 19.1221 ++ * memmove here would typically be bigger and slower due to function 19.1222 ++ * call overhead and other assorted setup costs. */ 19.1223 ++ do { 19.1224 ++ mtfSymbol[i] = mtfSymbol[i-1]; 19.1225 ++ } while (--i); 19.1226 ++ mtfSymbol[0] = uc; 19.1227 ++ uc=symToByte[uc]; 19.1228 ++ /* We have our literal byte. Save it into dbuf. */ 19.1229 ++ byteCount[uc]++; 19.1230 ++ dbuf[dbufCount++] = (unsigned int)uc; 19.1231 ++ } 19.1232 ++ /* At this point, we've read all the Huffman-coded symbols (and repeated 19.1233 ++ runs) for this block from the input stream, and decoded them into the 19.1234 ++ intermediate buffer. There are dbufCount many decoded bytes in dbuf[]. 19.1235 ++ Now undo the Burrows-Wheeler transform on dbuf. 19.1236 ++ See http://dogma.net/markn/articles/bwt/bwt.htm 19.1237 ++ */ 19.1238 ++ /* Turn byteCount into cumulative occurrence counts of 0 to n-1. */ 19.1239 ++ j=0; 19.1240 ++ for(i=0;i<256;i++) { 19.1241 ++ k=j+byteCount[i]; 19.1242 ++ byteCount[i] = j; 19.1243 ++ j=k; 19.1244 ++ } 19.1245 ++ /* Figure out what order dbuf would be in if we sorted it. */ 19.1246 ++ for (i=0;i<dbufCount;i++) { 19.1247 ++ uc=(unsigned char)(dbuf[i] & 0xff); 19.1248 ++ dbuf[byteCount[uc]] |= (i << 8); 19.1249 ++ byteCount[uc]++; 19.1250 ++ } 19.1251 ++ /* Decode first byte by hand to initialize "previous" byte. Note that it 19.1252 ++ doesn't get output, and if the first three characters are identical 19.1253 ++ it doesn't qualify as a run (hence writeRunCountdown=5). */ 19.1254 ++ if(dbufCount) { 19.1255 ++ if(origPtr>=dbufCount) return RETVAL_DATA_ERROR; 19.1256 ++ bd->writePos=dbuf[origPtr]; 19.1257 ++ bd->writeCurrent=(unsigned char)(bd->writePos&0xff); 19.1258 ++ bd->writePos>>=8; 19.1259 ++ bd->writeRunCountdown=5; 19.1260 ++ } 19.1261 ++ bd->writeCount=dbufCount; 19.1262 ++ 19.1263 ++ return RETVAL_OK; 19.1264 ++} 19.1265 ++ 19.1266 ++/* Undo burrows-wheeler transform on intermediate buffer to produce output. 19.1267 ++ If start_bunzip was initialized with out_fd=-1, then up to len bytes of 19.1268 ++ data are written to outbuf. Return value is number of bytes written or 19.1269 ++ error (all errors are negative numbers). If out_fd!=-1, outbuf and len 19.1270 ++ are ignored, data is written to out_fd and return is RETVAL_OK or error. 19.1271 ++*/ 19.1272 ++ 19.1273 ++static int read_bunzip(bunzip_data *bd, char *outbuf, int len) 19.1274 ++{ 19.1275 ++ const unsigned int *dbuf; 19.1276 ++ int pos,xcurrent,previous,gotcount; 19.1277 ++ 19.1278 ++ /* If last read was short due to end of file, return last block now */ 19.1279 ++ if(bd->writeCount<0) return bd->writeCount; 19.1280 ++ 19.1281 ++ gotcount = 0; 19.1282 ++ dbuf=bd->dbuf; 19.1283 ++ pos=bd->writePos; 19.1284 ++ xcurrent=bd->writeCurrent; 19.1285 ++ 19.1286 ++ /* We will always have pending decoded data to write into the output 19.1287 ++ buffer unless this is the very first call (in which case we haven't 19.1288 ++ Huffman-decoded a block into the intermediate buffer yet). */ 19.1289 ++ 19.1290 ++ if (bd->writeCopies) { 19.1291 ++ /* Inside the loop, writeCopies means extra copies (beyond 1) */ 19.1292 ++ --bd->writeCopies; 19.1293 ++ /* Loop outputting bytes */ 19.1294 ++ for(;;) { 19.1295 ++ /* If the output buffer is full, snapshot state and return */ 19.1296 ++ if(gotcount >= len) { 19.1297 ++ bd->writePos=pos; 19.1298 ++ bd->writeCurrent=xcurrent; 19.1299 ++ bd->writeCopies++; 19.1300 ++ return len; 19.1301 ++ } 19.1302 ++ /* Write next byte into output buffer, updating CRC */ 19.1303 ++ outbuf[gotcount++] = xcurrent; 19.1304 ++ bd->writeCRC=(((bd->writeCRC)<<8) 19.1305 ++ ^bd->crc32Table[((bd->writeCRC)>>24)^xcurrent]); 19.1306 ++ /* Loop now if we're outputting multiple copies of this byte */ 19.1307 ++ if (bd->writeCopies) { 19.1308 ++ --bd->writeCopies; 19.1309 ++ continue; 19.1310 ++ } 19.1311 ++decode_next_byte: 19.1312 ++ if (!bd->writeCount--) break; 19.1313 ++ /* Follow sequence vector to undo Burrows-Wheeler transform */ 19.1314 ++ previous=xcurrent; 19.1315 ++ pos=dbuf[pos]; 19.1316 ++ xcurrent=pos&0xff; 19.1317 ++ pos>>=8; 19.1318 ++ /* After 3 consecutive copies of the same byte, the 4th is a repeat 19.1319 ++ count. We count down from 4 instead 19.1320 ++ * of counting up because testing for non-zero is faster */ 19.1321 ++ if(--bd->writeRunCountdown) { 19.1322 ++ if(xcurrent!=previous) bd->writeRunCountdown=4; 19.1323 ++ } else { 19.1324 ++ /* We have a repeated run, this byte indicates the count */ 19.1325 ++ bd->writeCopies=xcurrent; 19.1326 ++ xcurrent=previous; 19.1327 ++ bd->writeRunCountdown=5; 19.1328 ++ /* Sometimes there are just 3 bytes (run length 0) */ 19.1329 ++ if(!bd->writeCopies) goto decode_next_byte; 19.1330 ++ /* Subtract the 1 copy we'd output anyway to get extras */ 19.1331 ++ --bd->writeCopies; 19.1332 ++ } 19.1333 ++ } 19.1334 ++ /* Decompression of this block completed successfully */ 19.1335 ++ bd->writeCRC=~bd->writeCRC; 19.1336 ++ bd->totalCRC=((bd->totalCRC<<1) | (bd->totalCRC>>31)) ^ bd->writeCRC; 19.1337 ++ /* If this block had a CRC error, force file level CRC error. */ 19.1338 ++ if(bd->writeCRC!=bd->headerCRC) { 19.1339 ++ bd->totalCRC=bd->headerCRC+1; 19.1340 ++ return RETVAL_LAST_BLOCK; 19.1341 ++ } 19.1342 ++ } 19.1343 ++ 19.1344 ++ /* Refill the intermediate buffer by Huffman-decoding next block of input */ 19.1345 ++ /* (previous is just a convenient unused temp variable here) */ 19.1346 ++ previous=get_next_block(bd); 19.1347 ++ if(previous) { 19.1348 ++ bd->writeCount=previous; 19.1349 ++ return (previous!=RETVAL_LAST_BLOCK) ? previous : gotcount; 19.1350 ++ } 19.1351 ++ bd->writeCRC=0xffffffffUL; 19.1352 ++ pos=bd->writePos; 19.1353 ++ xcurrent=bd->writeCurrent; 19.1354 ++ goto decode_next_byte; 19.1355 ++} 19.1356 ++ 19.1357 ++static int nofill(void *buf,unsigned int len) { 19.1358 ++ return -1; 19.1359 ++} 19.1360 ++ 19.1361 ++/* Allocate the structure, read file header. If in_fd==-1, inbuf must contain 19.1362 ++ a complete bunzip file (len bytes long). If in_fd!=-1, inbuf and len are 19.1363 ++ ignored, and data is read from file handle into temporary buffer. */ 19.1364 ++static int start_bunzip(bunzip_data **bdp, void *inbuf, int len, 19.1365 ++ int (*fill)(void*,unsigned int)) 19.1366 ++{ 19.1367 ++ bunzip_data *bd; 19.1368 ++ unsigned int i,j,c; 19.1369 ++ const unsigned int BZh0=(((unsigned int)'B')<<24)+(((unsigned int)'Z')<<16) 19.1370 ++ +(((unsigned int)'h')<<8)+(unsigned int)'0'; 19.1371 ++ 19.1372 ++ /* Figure out how much data to allocate */ 19.1373 ++ i=sizeof(bunzip_data); 19.1374 ++ 19.1375 ++ /* Allocate bunzip_data. Most fields initialize to zero. */ 19.1376 ++ bd=*bdp=malloc(i); 19.1377 ++ memset(bd,0,sizeof(bunzip_data)); 19.1378 ++ /* Setup input buffer */ 19.1379 ++ bd->inbuf=inbuf; 19.1380 ++ bd->inbufCount=len; 19.1381 ++ if(fill != NULL) 19.1382 ++ bd->fill=fill; 19.1383 ++ else 19.1384 ++ bd->fill=nofill; 19.1385 ++ 19.1386 ++ /* Init the CRC32 table (big endian) */ 19.1387 ++ for(i=0;i<256;i++) { 19.1388 ++ c=i<<24; 19.1389 ++ for(j=8;j;j--) 19.1390 ++ c=c&0x80000000 ? (c<<1)^0x04c11db7 : (c<<1); 19.1391 ++ bd->crc32Table[i]=c; 19.1392 ++ } 19.1393 ++ 19.1394 ++ /* Ensure that file starts with "BZh['1'-'9']." */ 19.1395 ++ i = get_bits(bd,32); 19.1396 ++ if (((unsigned int)(i-BZh0-1)) >= 9) return RETVAL_NOT_BZIP_DATA; 19.1397 ++ 19.1398 ++ /* Fourth byte (ascii '1'-'9'), indicates block size in units of 100k of 19.1399 ++ uncompressed data. Allocate intermediate buffer for block. */ 19.1400 ++ bd->dbufSize=100000*(i-BZh0); 19.1401 ++ 19.1402 ++ bd->dbuf=large_malloc(bd->dbufSize * sizeof(int)); 19.1403 ++ return RETVAL_OK; 19.1404 ++} 19.1405 ++ 19.1406 ++/* Example usage: decompress src_fd to dst_fd. (Stops at end of bzip data, 19.1407 ++ not end of file.) */ 19.1408 ++STATIC int bunzip2(char *inbuf, int len, 19.1409 ++ int(*fill)(void*,unsigned int), 19.1410 ++ int(*writebb)(char*,unsigned int), 19.1411 ++ int *pos) 19.1412 ++{ 19.1413 ++ char *outbuf; 19.1414 ++ bunzip_data *bd; 19.1415 ++ int i; 19.1416 ++ 19.1417 ++ outbuf=malloc(BZIP2_IOBUF_SIZE); 19.1418 ++ if(!(i=start_bunzip(&bd,inbuf,len,fill))) { 19.1419 ++ for(;;) { 19.1420 ++ if((i=read_bunzip(bd,outbuf,BZIP2_IOBUF_SIZE)) <= 0) break; 19.1421 ++ if(i!=writebb(outbuf,i)) { 19.1422 ++ i=RETVAL_UNEXPECTED_OUTPUT_EOF; 19.1423 ++ break; 19.1424 ++ } 19.1425 ++ } 19.1426 ++ } 19.1427 ++ /* Check CRC and release memory */ 19.1428 ++ if(i==RETVAL_LAST_BLOCK) { 19.1429 ++ if (bd->headerCRC!=bd->totalCRC) { 19.1430 ++ error("Data integrity error when decompressing."); 19.1431 ++ } else { 19.1432 ++ i=RETVAL_OK; 19.1433 ++ } 19.1434 ++ } 19.1435 ++ else if (i==RETVAL_UNEXPECTED_OUTPUT_EOF) { 19.1436 ++ error("Compressed file ends unexpectedly"); 19.1437 ++ } 19.1438 ++ if(bd->dbuf) large_free(bd->dbuf); 19.1439 ++ if(pos) 19.1440 ++ *pos = bd->inbufPos; 19.1441 ++ free(bd); 19.1442 ++ free(outbuf); 19.1443 ++ 19.1444 ++ return i; 19.1445 ++} 19.1446 ++ 19.1447 + 19.1448 +--- linux-2.6.25.5/lib/decompress_unlzma.c 19.1449 ++++ linux-2.6.25.5/lib/decompress_unlzma.c 19.1450 +@@ -0,0 +1,607 @@ 19.1451 ++/* Lzma decompressor for Linux kernel. Shamelessly snarfed 19.1452 ++ * from busybox 1.1.1 19.1453 ++ * 19.1454 ++ * Linux kernel adaptation 19.1455 ++ * Copyright (C) 2006 Alain <alain@knaff.lu> 19.1456 ++ * 19.1457 ++ * Based on small lzma deflate implementation/Small range coder 19.1458 ++ * implementation for lzma. 19.1459 ++ * Copyright (C) 2006 Aurelien Jacobs <aurel@gnuage.org> 19.1460 ++ * 19.1461 ++ * Based on LzmaDecode.c from the LZMA SDK 4.22 (http://www.7-zip.org/) 19.1462 ++ * Copyright (C) 1999-2005 Igor Pavlov 19.1463 ++ * 19.1464 ++ * Copyrights of the parts, see headers below. 19.1465 ++ * 19.1466 ++ * 19.1467 ++ * This program is free software; you can redistribute it and/or 19.1468 ++ * modify it under the terms of the GNU Lesser General Public 19.1469 ++ * License as published by the Free Software Foundation; either 19.1470 ++ * version 2.1 of the License, or (at your option) any later version. 19.1471 ++ * 19.1472 ++ * This program is distributed in the hope that it will be useful, 19.1473 ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of 19.1474 ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 19.1475 ++ * Lesser General Public License for more details. 19.1476 ++ * 19.1477 ++ * You should have received a copy of the GNU Lesser General Public 19.1478 ++ * License along with this library; if not, write to the Free Software 19.1479 ++ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 19.1480 ++ */ 19.1481 ++ 19.1482 ++#ifndef STATIC 19.1483 ++ 19.1484 ++#include <linux/kernel.h> 19.1485 ++#include <linux/fs.h> 19.1486 ++#include <linux/string.h> 19.1487 ++ 19.1488 ++#ifdef TEST 19.1489 ++#include "test.h" 19.1490 ++#else 19.1491 ++#include <linux/vmalloc.h> 19.1492 ++#endif 19.1493 ++ 19.1494 ++static void __init *large_malloc(size_t size) 19.1495 ++{ 19.1496 ++ return vmalloc(size); 19.1497 ++} 19.1498 ++ 19.1499 ++static void __init large_free(void *where) 19.1500 ++{ 19.1501 ++ vfree(where); 19.1502 ++} 19.1503 ++ 19.1504 ++#ifndef TEST 19.1505 ++static void __init error(char *x) 19.1506 ++{ 19.1507 ++ printk(KERN_ERR "%s\n", x); 19.1508 ++} 19.1509 ++ 19.1510 ++#endif 19.1511 ++ 19.1512 ++#define STATIC /**/ 19.1513 ++ 19.1514 ++#endif 19.1515 ++ 19.1516 ++#define CONFIG_FEATURE_LZMA_FAST 19.1517 ++#include <linux/decompress_unlzma.h> 19.1518 ++ 19.1519 ++#define MIN(a,b) (((a)<(b))?(a):(b)) 19.1520 ++ 19.1521 ++static long long read_int(unsigned char *ptr, int size) 19.1522 ++{ 19.1523 ++ int i; 19.1524 ++ long long ret=0; 19.1525 ++ 19.1526 ++ for(i=0; i<size; i++) { 19.1527 ++ ret = (ret << 8) | ptr[size-i-1]; 19.1528 ++ } 19.1529 ++ return ret; 19.1530 ++} 19.1531 ++ 19.1532 ++#define ENDIAN_CONVERT(x) x=(typeof(x))read_int((unsigned char*)&x,sizeof(x)) 19.1533 ++ 19.1534 ++ 19.1535 ++/* Small range coder implementation for lzma. 19.1536 ++ * Copyright (C) 2006 Aurelien Jacobs <aurel@gnuage.org> 19.1537 ++ * 19.1538 ++ * Based on LzmaDecode.c from the LZMA SDK 4.22 (http://www.7-zip.org/) 19.1539 ++ * Copyright (c) 1999-2005 Igor Pavlov 19.1540 ++ */ 19.1541 ++ 19.1542 ++#ifndef always_inline 19.1543 ++# if defined(__GNUC__) && (__GNUC__ > 3 || __GNUC__ == 3 && __GNUC_MINOR__ >0) 19.1544 ++# define always_inline __attribute__((always_inline)) inline 19.1545 ++# else 19.1546 ++# define always_inline inline 19.1547 ++# endif 19.1548 ++#endif 19.1549 ++ 19.1550 ++#ifdef CONFIG_FEATURE_LZMA_FAST 19.1551 ++# define speed_inline always_inline 19.1552 ++#else 19.1553 ++# define speed_inline 19.1554 ++#endif 19.1555 ++ 19.1556 ++ 19.1557 ++typedef struct { 19.1558 ++ int (*fill)(void*,unsigned int); 19.1559 ++ uint8_t *ptr; 19.1560 ++ uint8_t *buffer; 19.1561 ++ uint8_t *buffer_end; 19.1562 ++ int buffer_size; 19.1563 ++ uint32_t code; 19.1564 ++ uint32_t range; 19.1565 ++ uint32_t bound; 19.1566 ++} rc_t; 19.1567 ++ 19.1568 ++ 19.1569 ++#define RC_TOP_BITS 24 19.1570 ++#define RC_MOVE_BITS 5 19.1571 ++#define RC_MODEL_TOTAL_BITS 11 19.1572 ++ 19.1573 ++ 19.1574 ++/* Called twice: once at startup and once in rc_normalize() */ 19.1575 ++static void rc_read(rc_t * rc) 19.1576 ++{ 19.1577 ++ rc->buffer_size = rc->fill((char*)rc->buffer, LZMA_IOBUF_SIZE); 19.1578 ++ if (rc->buffer_size <= 0) 19.1579 ++ error("unexpected EOF"); 19.1580 ++ rc->ptr = rc->buffer; 19.1581 ++ rc->buffer_end = rc->buffer + rc->buffer_size; 19.1582 ++} 19.1583 ++ 19.1584 ++/* Called once */ 19.1585 ++static always_inline void rc_init(rc_t * rc, int (*fill)(void*,unsigned int), 19.1586 ++ char *buffer, int buffer_size) 19.1587 ++{ 19.1588 ++ rc->fill = fill; 19.1589 ++ rc->buffer = (uint8_t *)buffer; 19.1590 ++ rc->buffer_size = buffer_size; 19.1591 ++ rc->buffer_end = rc->buffer + rc->buffer_size; 19.1592 ++ rc->ptr = rc->buffer; 19.1593 ++ 19.1594 ++ rc->code = 0; 19.1595 ++ rc->range = 0xFFFFFFFF; 19.1596 ++} 19.1597 ++ 19.1598 ++static always_inline void rc_init_code(rc_t * rc) 19.1599 ++{ 19.1600 ++ int i; 19.1601 ++ 19.1602 ++ for (i = 0; i < 5; i++) { 19.1603 ++ if (rc->ptr >= rc->buffer_end) 19.1604 ++ rc_read(rc); 19.1605 ++ rc->code = (rc->code << 8) | *rc->ptr++; 19.1606 ++ } 19.1607 ++} 19.1608 ++ 19.1609 ++/* Called twice, but one callsite is in speed_inline'd rc_is_bit_0_helper() */ 19.1610 ++static void rc_do_normalize(rc_t * rc) 19.1611 ++{ 19.1612 ++ if (rc->ptr >= rc->buffer_end) 19.1613 ++ rc_read(rc); 19.1614 ++ rc->range <<= 8; 19.1615 ++ rc->code = (rc->code << 8) | *rc->ptr++; 19.1616 ++} 19.1617 ++static always_inline void rc_normalize(rc_t * rc) 19.1618 ++{ 19.1619 ++ if (rc->range < (1 << RC_TOP_BITS)) { 19.1620 ++ rc_do_normalize(rc); 19.1621 ++ } 19.1622 ++} 19.1623 ++ 19.1624 ++/* Called 9 times */ 19.1625 ++/* Why rc_is_bit_0_helper exists? 19.1626 ++ * Because we want to always expose (rc->code < rc->bound) to optimizer 19.1627 ++ */ 19.1628 ++static speed_inline uint32_t rc_is_bit_0_helper(rc_t * rc, uint16_t * p) 19.1629 ++{ 19.1630 ++ rc_normalize(rc); 19.1631 ++ rc->bound = *p * (rc->range >> RC_MODEL_TOTAL_BITS); 19.1632 ++ return rc->bound; 19.1633 ++} 19.1634 ++static always_inline int rc_is_bit_0(rc_t * rc, uint16_t * p) 19.1635 ++{ 19.1636 ++ uint32_t t = rc_is_bit_0_helper(rc, p); 19.1637 ++ return rc->code < t; 19.1638 ++} 19.1639 ++ 19.1640 ++/* Called ~10 times, but very small, thus inlined */ 19.1641 ++static speed_inline void rc_update_bit_0(rc_t * rc, uint16_t * p) 19.1642 ++{ 19.1643 ++ rc->range = rc->bound; 19.1644 ++ *p += ((1 << RC_MODEL_TOTAL_BITS) - *p) >> RC_MOVE_BITS; 19.1645 ++} 19.1646 ++static speed_inline void rc_update_bit_1(rc_t * rc, uint16_t * p) 19.1647 ++{ 19.1648 ++ rc->range -= rc->bound; 19.1649 ++ rc->code -= rc->bound; 19.1650 ++ *p -= *p >> RC_MOVE_BITS; 19.1651 ++} 19.1652 ++ 19.1653 ++/* Called 4 times in unlzma loop */ 19.1654 ++static int rc_get_bit(rc_t * rc, uint16_t * p, int *symbol) 19.1655 ++{ 19.1656 ++ if (rc_is_bit_0(rc, p)) { 19.1657 ++ rc_update_bit_0(rc, p); 19.1658 ++ *symbol *= 2; 19.1659 ++ return 0; 19.1660 ++ } else { 19.1661 ++ rc_update_bit_1(rc, p); 19.1662 ++ *symbol = *symbol * 2 + 1; 19.1663 ++ return 1; 19.1664 ++ } 19.1665 ++} 19.1666 ++ 19.1667 ++/* Called once */ 19.1668 ++static always_inline int rc_direct_bit(rc_t * rc) 19.1669 ++{ 19.1670 ++ rc_normalize(rc); 19.1671 ++ rc->range >>= 1; 19.1672 ++ if (rc->code >= rc->range) { 19.1673 ++ rc->code -= rc->range; 19.1674 ++ return 1; 19.1675 ++ } 19.1676 ++ return 0; 19.1677 ++} 19.1678 ++ 19.1679 ++/* Called twice */ 19.1680 ++static speed_inline void 19.1681 ++rc_bit_tree_decode(rc_t * rc, uint16_t * p, int num_levels, int *symbol) 19.1682 ++{ 19.1683 ++ int i = num_levels; 19.1684 ++ 19.1685 ++ *symbol = 1; 19.1686 ++ while (i--) 19.1687 ++ rc_get_bit(rc, p + *symbol, symbol); 19.1688 ++ *symbol -= 1 << num_levels; 19.1689 ++} 19.1690 ++ 19.1691 ++ 19.1692 ++/* 19.1693 ++ * Small lzma deflate implementation. 19.1694 ++ * Copyright (C) 2006 Aurelien Jacobs <aurel@gnuage.org> 19.1695 ++ * 19.1696 ++ * Based on LzmaDecode.c from the LZMA SDK 4.22 (http://www.7-zip.org/) 19.1697 ++ * Copyright (C) 1999-2005 Igor Pavlov 19.1698 ++ */ 19.1699 ++ 19.1700 ++ 19.1701 ++typedef struct { 19.1702 ++ uint8_t pos; 19.1703 ++ uint32_t dict_size; 19.1704 ++ uint64_t dst_size; 19.1705 ++} __attribute__ ((packed)) lzma_header_t; 19.1706 ++ 19.1707 ++ 19.1708 ++#define LZMA_BASE_SIZE 1846 19.1709 ++#define LZMA_LIT_SIZE 768 19.1710 ++ 19.1711 ++#define LZMA_NUM_POS_BITS_MAX 4 19.1712 ++ 19.1713 ++#define LZMA_LEN_NUM_LOW_BITS 3 19.1714 ++#define LZMA_LEN_NUM_MID_BITS 3 19.1715 ++#define LZMA_LEN_NUM_HIGH_BITS 8 19.1716 ++ 19.1717 ++#define LZMA_LEN_CHOICE 0 19.1718 ++#define LZMA_LEN_CHOICE_2 (LZMA_LEN_CHOICE + 1) 19.1719 ++#define LZMA_LEN_LOW (LZMA_LEN_CHOICE_2 + 1) 19.1720 ++#define LZMA_LEN_MID (LZMA_LEN_LOW \ 19.1721 ++ + (1 << (LZMA_NUM_POS_BITS_MAX + LZMA_LEN_NUM_LOW_BITS))) 19.1722 ++#define LZMA_LEN_HIGH (LZMA_LEN_MID \ 19.1723 ++ +(1 << (LZMA_NUM_POS_BITS_MAX + LZMA_LEN_NUM_MID_BITS))) 19.1724 ++#define LZMA_NUM_LEN_PROBS (LZMA_LEN_HIGH + (1 << LZMA_LEN_NUM_HIGH_BITS)) 19.1725 ++ 19.1726 ++#define LZMA_NUM_STATES 12 19.1727 ++#define LZMA_NUM_LIT_STATES 7 19.1728 ++ 19.1729 ++#define LZMA_START_POS_MODEL_INDEX 4 19.1730 ++#define LZMA_END_POS_MODEL_INDEX 14 19.1731 ++#define LZMA_NUM_FULL_DISTANCES (1 << (LZMA_END_POS_MODEL_INDEX >> 1)) 19.1732 ++ 19.1733 ++#define LZMA_NUM_POS_SLOT_BITS 6 19.1734 ++#define LZMA_NUM_LEN_TO_POS_STATES 4 19.1735 ++ 19.1736 ++#define LZMA_NUM_ALIGN_BITS 4 19.1737 ++ 19.1738 ++#define LZMA_MATCH_MIN_LEN 2 19.1739 ++ 19.1740 ++#define LZMA_IS_MATCH 0 19.1741 ++#define LZMA_IS_REP (LZMA_IS_MATCH + (LZMA_NUM_STATES <<LZMA_NUM_POS_BITS_MAX)) 19.1742 ++#define LZMA_IS_REP_G0 (LZMA_IS_REP + LZMA_NUM_STATES) 19.1743 ++#define LZMA_IS_REP_G1 (LZMA_IS_REP_G0 + LZMA_NUM_STATES) 19.1744 ++#define LZMA_IS_REP_G2 (LZMA_IS_REP_G1 + LZMA_NUM_STATES) 19.1745 ++#define LZMA_IS_REP_0_LONG (LZMA_IS_REP_G2 + LZMA_NUM_STATES) 19.1746 ++#define LZMA_POS_SLOT (LZMA_IS_REP_0_LONG \ 19.1747 ++ + (LZMA_NUM_STATES << LZMA_NUM_POS_BITS_MAX)) 19.1748 ++#define LZMA_SPEC_POS (LZMA_POS_SLOT \ 19.1749 ++ +(LZMA_NUM_LEN_TO_POS_STATES << LZMA_NUM_POS_SLOT_BITS)) 19.1750 ++#define LZMA_ALIGN (LZMA_SPEC_POS \ 19.1751 ++ + LZMA_NUM_FULL_DISTANCES - LZMA_END_POS_MODEL_INDEX) 19.1752 ++#define LZMA_LEN_CODER (LZMA_ALIGN + (1 << LZMA_NUM_ALIGN_BITS)) 19.1753 ++#define LZMA_REP_LEN_CODER (LZMA_LEN_CODER + LZMA_NUM_LEN_PROBS) 19.1754 ++#define LZMA_LITERAL (LZMA_REP_LEN_CODER + LZMA_NUM_LEN_PROBS) 19.1755 ++ 19.1756 ++ 19.1757 ++STATIC int unlzma(char *inbuf, int in_len, 19.1758 ++ int(*fill)(void*,unsigned int), 19.1759 ++ int(*writebb)(char*,unsigned int), 19.1760 ++ int *posp) 19.1761 ++{ 19.1762 ++ lzma_header_t header; 19.1763 ++ int lc, pb, lp; 19.1764 ++ uint32_t pos_state_mask; 19.1765 ++ uint32_t literal_pos_mask; 19.1766 ++ uint32_t pos; 19.1767 ++ uint16_t *p; 19.1768 ++ uint16_t *prob; 19.1769 ++ uint16_t *prob_lit; 19.1770 ++ int num_bits; 19.1771 ++ int num_probs; 19.1772 ++ rc_t rc; 19.1773 ++ int i, mi; 19.1774 ++ uint8_t *buffer; 19.1775 ++ uint8_t previous_byte = 0; 19.1776 ++ size_t buffer_pos = 0, global_pos = 0; 19.1777 ++ int len = 0; 19.1778 ++ int state = 0; 19.1779 ++ int bufsize; 19.1780 ++ uint32_t rep0 = 1, rep1 = 1, rep2 = 1, rep3 = 1; 19.1781 ++ 19.1782 ++ rc_init(&rc, fill, inbuf, in_len); 19.1783 ++ 19.1784 ++ header.dict_size = header.dst_size = in_len; 19.1785 ++ if (inbuf && in_len > 0 && inbuf[0] == 0) { 19.1786 ++ const int LZMA_LC = 3, LZMA_LP = 0, LZMA_PB = 2; 19.1787 ++ header.pos = (LZMA_PB * 45) + (LZMA_LP * 5) + LZMA_LC; 19.1788 ++ rc.ptr++; 19.1789 ++ } 19.1790 ++ else { 19.1791 ++ int hdrsize = sizeof(header); 19.1792 ++ if (inbuf && in_len > 12 && 19.1793 ++ (1 + * (unsigned long *) &inbuf[9]) > 1U) 19.1794 ++ hdrsize = 5; 19.1795 ++ for (i = 0; i < hdrsize; i++) { 19.1796 ++ if (rc.ptr >= rc.buffer_end) 19.1797 ++ rc_read(&rc); 19.1798 ++ ((unsigned char *)&header)[i] = *rc.ptr++; 19.1799 ++ } 19.1800 ++ } 19.1801 ++ 19.1802 ++ if (header.pos >= (9 * 5 * 5)) 19.1803 ++ error("bad header"); 19.1804 ++ 19.1805 ++ mi = header.pos / 9; 19.1806 ++ lc = header.pos % 9; 19.1807 ++ pb = mi / 5; 19.1808 ++ lp = mi % 5; 19.1809 ++ pos_state_mask = (1 << pb) - 1; 19.1810 ++ literal_pos_mask = (1 << lp) - 1; 19.1811 ++ 19.1812 ++ ENDIAN_CONVERT(header.dict_size); 19.1813 ++ ENDIAN_CONVERT(header.dst_size); 19.1814 ++ 19.1815 ++ if (header.dict_size == 0) 19.1816 ++ header.dict_size = 1; 19.1817 ++ 19.1818 ++ bufsize = MIN(header.dst_size, header.dict_size); 19.1819 ++ buffer = (uint8_t *) posp; 19.1820 ++ if (writebb) buffer = large_malloc(bufsize); 19.1821 ++ if(buffer == NULL) 19.1822 ++ return -1; 19.1823 ++ 19.1824 ++ num_probs = LZMA_BASE_SIZE + (LZMA_LIT_SIZE << (lc + lp)); 19.1825 ++ p = large_malloc(num_probs * sizeof(*p)); 19.1826 ++ num_probs = LZMA_LITERAL + (LZMA_LIT_SIZE << (lc + lp)); 19.1827 ++ for (i = 0; i < num_probs; i++) 19.1828 ++ p[i] = (1 << RC_MODEL_TOTAL_BITS) >> 1; 19.1829 ++ 19.1830 ++ rc_init_code(&rc); 19.1831 ++ 19.1832 ++ while (global_pos + buffer_pos < header.dst_size) { 19.1833 ++ int pos_state = (buffer_pos + global_pos) & pos_state_mask; 19.1834 ++ 19.1835 ++ prob = 19.1836 ++ p + LZMA_IS_MATCH + (state << LZMA_NUM_POS_BITS_MAX) + pos_state; 19.1837 ++ if (rc_is_bit_0(&rc, prob)) { 19.1838 ++ mi = 1; 19.1839 ++ rc_update_bit_0(&rc, prob); 19.1840 ++ prob = (p + LZMA_LITERAL + (LZMA_LIT_SIZE 19.1841 ++ * ((((buffer_pos + global_pos) & literal_pos_mask) << lc) 19.1842 ++ + (previous_byte >> (8 - lc))))); 19.1843 ++ 19.1844 ++ if (state >= LZMA_NUM_LIT_STATES) { 19.1845 ++ int match_byte; 19.1846 ++ 19.1847 ++ pos = buffer_pos - rep0; 19.1848 ++ if (writebb) { 19.1849 ++ while (pos >= header.dict_size) 19.1850 ++ pos += header.dict_size; 19.1851 ++ if(pos >= bufsize) { 19.1852 ++ goto fail; 19.1853 ++ } 19.1854 ++ } 19.1855 ++ match_byte = buffer[pos]; 19.1856 ++ do { 19.1857 ++ int bit; 19.1858 ++ 19.1859 ++ match_byte <<= 1; 19.1860 ++ bit = match_byte & 0x100; 19.1861 ++ prob_lit = prob + 0x100 + bit + mi; 19.1862 ++ if (rc_get_bit(&rc, prob_lit, &mi)) { 19.1863 ++ if (!bit) 19.1864 ++ break; 19.1865 ++ } else { 19.1866 ++ if (bit) 19.1867 ++ break; 19.1868 ++ } 19.1869 ++ } while (mi < 0x100); 19.1870 ++ } 19.1871 ++ while (mi < 0x100) { 19.1872 ++ prob_lit = prob + mi; 19.1873 ++ rc_get_bit(&rc, prob_lit, &mi); 19.1874 ++ } 19.1875 ++ previous_byte = (uint8_t) mi; 19.1876 ++ if (state < 4) 19.1877 ++ state = 0; 19.1878 ++ else if (state < 10) 19.1879 ++ state -= 3; 19.1880 ++ else 19.1881 ++ state -= 6; 19.1882 ++ goto store_previous_byte; 19.1883 ++ } else { 19.1884 ++ int offset; 19.1885 ++ uint16_t *prob_len; 19.1886 ++ 19.1887 ++ rc_update_bit_1(&rc, prob); 19.1888 ++ prob = p + LZMA_IS_REP + state; 19.1889 ++ if (rc_is_bit_0(&rc, prob)) { 19.1890 ++ rc_update_bit_0(&rc, prob); 19.1891 ++ rep3 = rep2; 19.1892 ++ rep2 = rep1; 19.1893 ++ rep1 = rep0; 19.1894 ++ state = state < LZMA_NUM_LIT_STATES ? 0 : 3; 19.1895 ++ prob = p + LZMA_LEN_CODER; 19.1896 ++ } else { 19.1897 ++ rc_update_bit_1(&rc, prob); 19.1898 ++ prob = p + LZMA_IS_REP_G0 + state; 19.1899 ++ if (rc_is_bit_0(&rc, prob)) { 19.1900 ++ rc_update_bit_0(&rc, prob); 19.1901 ++ prob = (p + LZMA_IS_REP_0_LONG 19.1902 ++ + (state << LZMA_NUM_POS_BITS_MAX) + pos_state); 19.1903 ++ if (rc_is_bit_0(&rc, prob)) { 19.1904 ++ rc_update_bit_0(&rc, prob); 19.1905 ++ 19.1906 ++ state = state < LZMA_NUM_LIT_STATES ? 9 : 11; 19.1907 ++ pos = buffer_pos - rep0; 19.1908 ++ if (writebb) { 19.1909 ++ while (pos >= header.dict_size) 19.1910 ++ pos += header.dict_size; 19.1911 ++ if(pos >= bufsize) { 19.1912 ++ goto fail; 19.1913 ++ } 19.1914 ++ } 19.1915 ++ previous_byte = buffer[pos]; 19.1916 ++ store_previous_byte: 19.1917 ++ buffer[buffer_pos++] = previous_byte; 19.1918 ++ if (writebb && buffer_pos == header.dict_size) { 19.1919 ++ buffer_pos = 0; 19.1920 ++ global_pos += header.dict_size; 19.1921 ++ writebb((char*)buffer, header.dict_size); 19.1922 ++ } 19.1923 ++ continue; 19.1924 ++ } else { 19.1925 ++ rc_update_bit_1(&rc, prob); 19.1926 ++ } 19.1927 ++ } else { 19.1928 ++ uint32_t distance; 19.1929 ++ 19.1930 ++ rc_update_bit_1(&rc, prob); 19.1931 ++ prob = p + LZMA_IS_REP_G1 + state; 19.1932 ++ if (rc_is_bit_0(&rc, prob)) { 19.1933 ++ rc_update_bit_0(&rc, prob); 19.1934 ++ distance = rep1; 19.1935 ++ } else { 19.1936 ++ rc_update_bit_1(&rc, prob); 19.1937 ++ prob = p + LZMA_IS_REP_G2 + state; 19.1938 ++ if (rc_is_bit_0(&rc, prob)) { 19.1939 ++ rc_update_bit_0(&rc, prob); 19.1940 ++ distance = rep2; 19.1941 ++ } else { 19.1942 ++ rc_update_bit_1(&rc, prob); 19.1943 ++ distance = rep3; 19.1944 ++ rep3 = rep2; 19.1945 ++ } 19.1946 ++ rep2 = rep1; 19.1947 ++ } 19.1948 ++ rep1 = rep0; 19.1949 ++ rep0 = distance; 19.1950 ++ } 19.1951 ++ state = state < LZMA_NUM_LIT_STATES ? 8 : 11; 19.1952 ++ prob = p + LZMA_REP_LEN_CODER; 19.1953 ++ } 19.1954 ++ 19.1955 ++ prob_len = prob + LZMA_LEN_CHOICE; 19.1956 ++ if (rc_is_bit_0(&rc, prob_len)) { 19.1957 ++ rc_update_bit_0(&rc, prob_len); 19.1958 ++ prob_len = (prob + LZMA_LEN_LOW 19.1959 ++ + (pos_state << LZMA_LEN_NUM_LOW_BITS)); 19.1960 ++ offset = 0; 19.1961 ++ num_bits = LZMA_LEN_NUM_LOW_BITS; 19.1962 ++ } else { 19.1963 ++ rc_update_bit_1(&rc, prob_len); 19.1964 ++ prob_len = prob + LZMA_LEN_CHOICE_2; 19.1965 ++ if (rc_is_bit_0(&rc, prob_len)) { 19.1966 ++ rc_update_bit_0(&rc, prob_len); 19.1967 ++ prob_len = (prob + LZMA_LEN_MID 19.1968 ++ + (pos_state << LZMA_LEN_NUM_MID_BITS)); 19.1969 ++ offset = 1 << LZMA_LEN_NUM_LOW_BITS; 19.1970 ++ num_bits = LZMA_LEN_NUM_MID_BITS; 19.1971 ++ } else { 19.1972 ++ rc_update_bit_1(&rc, prob_len); 19.1973 ++ prob_len = prob + LZMA_LEN_HIGH; 19.1974 ++ offset = ((1 << LZMA_LEN_NUM_LOW_BITS) 19.1975 ++ + (1 << LZMA_LEN_NUM_MID_BITS)); 19.1976 ++ num_bits = LZMA_LEN_NUM_HIGH_BITS; 19.1977 ++ } 19.1978 ++ } 19.1979 ++ rc_bit_tree_decode(&rc, prob_len, num_bits, &len); 19.1980 ++ len += offset; 19.1981 ++ 19.1982 ++ if (state < 4) { 19.1983 ++ int pos_slot; 19.1984 ++ 19.1985 ++ state += LZMA_NUM_LIT_STATES; 19.1986 ++ prob = 19.1987 ++ p + LZMA_POS_SLOT + 19.1988 ++ ((len < 19.1989 ++ LZMA_NUM_LEN_TO_POS_STATES ? len : 19.1990 ++ LZMA_NUM_LEN_TO_POS_STATES - 1) 19.1991 ++ << LZMA_NUM_POS_SLOT_BITS); 19.1992 ++ rc_bit_tree_decode(&rc, prob, LZMA_NUM_POS_SLOT_BITS, 19.1993 ++ &pos_slot); 19.1994 ++ if (pos_slot >= LZMA_START_POS_MODEL_INDEX) { 19.1995 ++ num_bits = (pos_slot >> 1) - 1; 19.1996 ++ rep0 = 2 | (pos_slot & 1); 19.1997 ++ if (pos_slot < LZMA_END_POS_MODEL_INDEX) { 19.1998 ++ rep0 <<= num_bits; 19.1999 ++ prob = p + LZMA_SPEC_POS + rep0 - pos_slot - 1; 19.2000 ++ } else { 19.2001 ++ num_bits -= LZMA_NUM_ALIGN_BITS; 19.2002 ++ while (num_bits--) 19.2003 ++ rep0 = (rep0 << 1) | rc_direct_bit(&rc); 19.2004 ++ prob = p + LZMA_ALIGN; 19.2005 ++ rep0 <<= LZMA_NUM_ALIGN_BITS; 19.2006 ++ num_bits = LZMA_NUM_ALIGN_BITS; 19.2007 ++ } 19.2008 ++ i = 1; 19.2009 ++ mi = 1; 19.2010 ++ while (num_bits--) { 19.2011 ++ if (rc_get_bit(&rc, prob + mi, &mi)) 19.2012 ++ rep0 |= i; 19.2013 ++ i <<= 1; 19.2014 ++ } 19.2015 ++ } else 19.2016 ++ rep0 = pos_slot; 19.2017 ++ if (++rep0 == 0) 19.2018 ++ break; 19.2019 ++ } 19.2020 ++ 19.2021 ++ len += LZMA_MATCH_MIN_LEN; 19.2022 ++ 19.2023 ++ do { 19.2024 ++ pos = buffer_pos - rep0; 19.2025 ++ if (writebb) { 19.2026 ++ while (pos >= header.dict_size) 19.2027 ++ pos += header.dict_size; 19.2028 ++ if(pos >= bufsize) { 19.2029 ++ goto fail; 19.2030 ++ } 19.2031 ++ } 19.2032 ++ previous_byte = buffer[pos]; 19.2033 ++ buffer[buffer_pos++] = previous_byte; 19.2034 ++ if (writebb && buffer_pos == header.dict_size) { 19.2035 ++ buffer_pos = 0; 19.2036 ++ global_pos += header.dict_size; 19.2037 ++ writebb((char*)buffer, header.dict_size); 19.2038 ++ } 19.2039 ++ len--; 19.2040 ++ } while (len != 0 && buffer_pos < header.dst_size); 19.2041 ++ } 19.2042 ++ } 19.2043 ++ 19.2044 ++ if (writebb) { 19.2045 ++ writebb((char*)buffer, buffer_pos); 19.2046 ++ if(posp) { 19.2047 ++ *posp = rc.ptr-rc.buffer; 19.2048 ++ } 19.2049 ++ large_free(buffer); 19.2050 ++ } 19.2051 ++ large_free(p); 19.2052 ++ return 0; 19.2053 ++ fail: 19.2054 ++ if (writebb) large_free(buffer); 19.2055 ++ large_free(p); 19.2056 ++ return -1; 19.2057 ++} 19.2058 + 19.2059 +--- linux-2.6.25.5/lib/unlzma_syms.c 19.2060 ++++ linux-2.6.25.5/lib/unlzma_syms.c 19.2061 +@@ -0,0 +1,14 @@ 19.2062 ++/* 19.2063 ++ * linux/lib/unlzma_syms.c 19.2064 ++ * 19.2065 ++ * Exported symbols for the unlzma functionality. 19.2066 ++ * 19.2067 ++ */ 19.2068 ++ 19.2069 ++#include <linux/module.h> 19.2070 ++#include <linux/init.h> 19.2071 ++ 19.2072 ++#include <linux/decompress_unlzma.h> 19.2073 ++ 19.2074 ++EXPORT_SYMBOL(unlzma); 19.2075 ++MODULE_LICENSE("GPL"); 19.2076 + 19.2077 +--- linux-2.6.25.5/lib/Makefile 19.2078 ++++ linux-2.6.25.5/lib/Makefile 19.2079 +@@ -50,6 +50,9 @@ obj-$(CONFIG_CRC7) += crc7.o 19.2080 + obj-$(CONFIG_LIBCRC32C) += libcrc32c.o 19.2081 + obj-$(CONFIG_GENERIC_ALLOCATOR) += genalloc.o 19.2082 + 19.2083 ++obj-$(CONFIG_RD_BZIP2) += decompress_bunzip2.o 19.2084 ++obj-$(CONFIG_RD_LZMA) += decompress_unlzma.o unlzma_syms.o 19.2085 ++ 19.2086 + obj-$(CONFIG_ZLIB_INFLATE) += zlib_inflate/ 19.2087 + obj-$(CONFIG_ZLIB_DEFLATE) += zlib_deflate/ 19.2088 + obj-$(CONFIG_REED_SOLOMON) += reed_solomon/ 19.2089 + 19.2090 +--- linux-2.6.25.5/scripts/Makefile.lib 19.2091 ++++ linux-2.6.25.5/scripts/Makefile.lib 19.2092 +@@ -172,4 +172,17 @@ 19.2093 + quiet_cmd_gzip = GZIP $@ 19.2094 + cmd_gzip = gzip -f -9 < $< > $@ 19.2095 + 19.2096 ++# Append size 19.2097 ++size_append=perl -e 'print(pack("i",(stat($$ARGV[0]))[7]));' 19.2098 + 19.2099 ++# Bzip2 19.2100 ++# --------------------------------------------------------------------------- 19.2101 ++ 19.2102 ++quiet_cmd_bzip2 = BZIP2 $@ 19.2103 ++cmd_bzip2 = (bzip2 -9 < $< ; $(size_append) $<) > $@ 19.2104 ++ 19.2105 ++# Lzma 19.2106 ++# --------------------------------------------------------------------------- 19.2107 ++ 19.2108 ++quiet_cmd_lzma = LZMA $@ 19.2109 ++cmd_lzma = (lzma e $< -so ; $(size_append) $<) >$@ 19.2110 + 19.2111 +--- linux-2.6.25.5/arch/x86/mm/init_32.c 19.2112 ++++ linux-2.6.25.5/arch/x86/mm/init_32.c 19.2113 +@@ -788,7 +788,8 @@ 19.2114 + free_page(addr); 19.2115 + totalram_pages++; 19.2116 + } 19.2117 +- printk(KERN_INFO "Freeing %s: %luk freed\n", what, (end - begin) >> 10); 19.2118 ++ if (what) 19.2119 ++ printk(KERN_INFO "Freeing %s: %luk freed\n", what, (end - begin) >> 10); 19.2120 + #endif 19.2121 + } 19.2122 + 19.2123 +@@ -802,6 +803,6 @@ 19.2124 + #ifdef CONFIG_BLK_DEV_INITRD 19.2125 + void free_initrd_mem(unsigned long start, unsigned long end) 19.2126 + { 19.2127 +- free_init_pages("initrd memory", start, end); 19.2128 ++ free_init_pages(NULL, start, end); 19.2129 + } 19.2130 + #endif
20.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 20.2 +++ b/linux/stuff/linux-utf8-2.6.25.5.u Sat Jun 07 22:04:11 2008 +0000 20.3 @@ -0,0 +1,1 @@ 20.4 +linux-utf8-2.6.24.2.u 20.5 \ No newline at end of file
21.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 21.2 +++ b/linux/stuff/list_modules.sh Sat Jun 07 22:04:11 2008 +0000 21.3 @@ -0,0 +1,34 @@ 21.4 +#!/bin/sh 21.5 +# list_modules.sh: list Linux kernel modules for SliTaz GNU/Linux. 21.6 +# 2008/06/07 <pascal.bellard@slitaz.org> - GNU General Public License. 21.7 +# 21.8 + 21.9 +if [ -z "$1" ] ; then 21.10 + cat 1>&2 <<EOT 21.11 + 21.12 +\033[1musage:\033[0m `basename $0` path/to/kernel-modules-subtrees 21.13 +exemple `basename $0` drivers/net/wireless >list 21.14 + 21.15 +EOT 21.16 + exit 1 21.17 +fi 21.18 + 21.19 +if [ -z "$(ls -d $_pkg/lib/modules/*-slitaz/kernel/$1 2>-)" ] ; then 21.20 + cat 1>&2 <<EOT 21.21 + 21.22 +Error : $1 does not exist. 21.23 + 21.24 +EOT 21.25 + exit 1 21.26 +fi 21.27 + 21.28 +for tree in $@; do 21.29 + for module in $(find $_pkg/lib/modules/*-slitaz/kernel/$tree \ 21.30 + -type f -exec basename {} \;) ; do 21.31 + grep /$module: $_pkg/lib/modules/*-slitaz/modules.dep 21.32 + done | awk '{ for (i = 1; i <= NF; i++) print $i; }' 21.33 +done | sort | uniq | sed -e 's,.*slitaz/kernel/,,' -e 's/:$//' | \ 21.34 +while read module; do 21.35 + grep -qs ^$module$ $src/modules.list && continue 21.36 + echo $module 21.37 +done
22.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 22.2 +++ b/linux/stuff/modules-2.6.25.5.list Sat Jun 07 22:04:11 2008 +0000 22.3 @@ -0,0 +1,107 @@ 22.4 +drivers/base/firmware_class.ko.gz 22.5 +drivers/char/genrtc.ko.gz 22.6 +drivers/char/lp.ko.gz 22.7 +drivers/char/rtc.ko.gz 22.8 +drivers/hwmon/hwmon.ko.gz 22.9 +drivers/input/mouse/inport.ko.gz 22.10 +drivers/input/mouse/logibm.ko.gz 22.11 +drivers/input/mouse/pc110pad.ko.gz 22.12 +drivers/net/3c501.ko.gz 22.13 +drivers/net/3c503.ko.gz 22.14 +drivers/net/3c505.ko.gz 22.15 +drivers/net/3c509.ko.gz 22.16 +drivers/net/3c515.ko.gz 22.17 +drivers/net/3c59x.ko.gz 22.18 +drivers/net/82596.ko.gz 22.19 +drivers/net/amd8111e.ko.gz 22.20 +drivers/net/arcnet/arcnet.ko.gz 22.21 +drivers/net/arcnet/com90xx.ko.gz 22.22 +drivers/net/arcnet/rfc1201.ko.gz 22.23 +drivers/net/bnx2.ko.gz 22.24 +drivers/net/cassini.ko.gz 22.25 +drivers/net/cs89x0.ko.gz 22.26 +drivers/net/depca.ko.gz 22.27 +drivers/net/dl2k.ko.gz 22.28 +drivers/net/e1000/e1000.ko.gz 22.29 +drivers/net/e2100.ko.gz 22.30 +drivers/net/eepro.ko.gz 22.31 +drivers/net/eexpress.ko.gz 22.32 +drivers/net/eth16i.ko.gz 22.33 +drivers/net/ewrk3.ko.gz 22.34 +drivers/net/fealnx.ko.gz 22.35 +drivers/net/hp100.ko.gz 22.36 +drivers/net/hp.ko.gz 22.37 +drivers/net/hp-plus.ko.gz 22.38 +drivers/net/ipg.ko.gz 22.39 +drivers/net/lance.ko.gz 22.40 +drivers/net/lp486e.ko.gz 22.41 +drivers/net/ne.ko.gz 22.42 +drivers/net/ni52.ko.gz 22.43 +drivers/net/ni65.ko.gz 22.44 +drivers/net/pcmcia/3c574_cs.ko.gz 22.45 +drivers/net/pcmcia/3c589_cs.ko.gz 22.46 +drivers/net/pcmcia/axnet_cs.ko.gz 22.47 +drivers/net/pcmcia/fmvj18x_cs.ko.gz 22.48 +drivers/net/pcmcia/nmclan_cs.ko.gz 22.49 +drivers/net/pcmcia/pcnet_cs.ko.gz 22.50 +drivers/net/pcmcia/smc91c92_cs.ko.gz 22.51 +drivers/net/pcmcia/xirc2ps_cs.ko.gz 22.52 +drivers/net/phy/broadcom.ko.gz 22.53 +drivers/net/phy/cicada.ko.gz 22.54 +drivers/net/phy/davicom.ko.gz 22.55 +drivers/net/phy/libphy.ko.gz 22.56 +drivers/net/phy/lxt.ko.gz 22.57 +drivers/net/phy/marvell.ko.gz 22.58 +drivers/net/phy/qsemi.ko.gz 22.59 +drivers/net/sis190.ko.gz 22.60 +drivers/net/sk98lin/sk98lin.ko.gz 22.61 +drivers/net/skge.ko.gz 22.62 +drivers/net/sky2.ko.gz 22.63 +drivers/net/smc9194.ko.gz 22.64 +drivers/net/smc-ultra.ko.gz 22.65 +drivers/net/starfire.ko.gz 22.66 +drivers/net/sungem.ko.gz 22.67 +drivers/net/sungem_phy.ko.gz 22.68 +drivers/net/sunhme.ko.gz 22.69 +drivers/net/tg3.ko.gz 22.70 +drivers/net/tulip/tulip.ko.gz 22.71 +drivers/net/tulip/uli526x.ko.gz 22.72 +drivers/net/typhoon.ko.gz 22.73 +drivers/net/usb/asix.ko.gz 22.74 +drivers/net/usb/cdc_ether.ko.gz 22.75 +drivers/net/usb/cdc_subset.ko.gz 22.76 +drivers/net/usb/net1080.ko.gz 22.77 +drivers/net/usb/rndis_host.ko.gz 22.78 +drivers/net/usb/usbnet.ko.gz 22.79 +drivers/net/usb/zaurus.ko.gz 22.80 +drivers/net/via-velocity.ko.gz 22.81 +drivers/net/wd.ko.gz 22.82 +drivers/parport/parport.ko.gz 22.83 +drivers/parport/parport_pc.ko.gz 22.84 +drivers/pcmcia/i82092.ko.gz 22.85 +drivers/pcmcia/i82365.ko.gz 22.86 +drivers/pcmcia/pcmcia_core.ko.gz 22.87 +drivers/pcmcia/pcmcia.ko.gz 22.88 +drivers/pcmcia/pd6729.ko.gz 22.89 +drivers/pcmcia/rsrc_nonstatic.ko.gz 22.90 +drivers/pcmcia/yenta_socket.ko.gz 22.91 +drivers/scsi/aic7xxx/aic7xxx.ko.gz 22.92 +drivers/scsi/iscsi_tcp.ko.gz 22.93 +drivers/scsi/libiscsi.ko.gz 22.94 +drivers/scsi/scsi_transport_iscsi.ko.gz 22.95 +drivers/scsi/scsi_transport_spi.ko.gz 22.96 +drivers/scsi/scsi_wait_scan.ko.gz 22.97 +drivers/usb/class/cdc-acm.ko.gz 22.98 +drivers/usb/class/usblp.ko.gz 22.99 +drivers/usb/host/ohci-hcd.ko.gz 22.100 +drivers/usb/serial/ch341.ko.gz 22.101 +drivers/usb/serial/pl2303.ko.gz 22.102 +drivers/usb/serial/usbserial.ko.gz 22.103 +fs/binfmt_misc.ko.gz 22.104 +fs/fat/fat.ko.gz 22.105 +fs/msdos/msdos.ko.gz 22.106 +fs/nls/nls_utf8.ko.gz 22.107 +fs/vfat/vfat.ko.gz 22.108 +net/ipv4/netfilter/ipt_REJECT.ko.gz 22.109 +net/netfilter/nfnetlink.ko.gz 22.110 +net/netfilter/nfnetlink_log.ko.gz