Merge git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6: (24 commits)
[PARISC] Fix double free when removing HIL drivers
[PARISC] Add atomic_sub_and_test
[PARISC] Enabled some NLS modules in a500, b180 and c3000 defconfigs
[PARISC] Kill duplicated EXPORT_SYMBOL warnings
[PARISC] Move ioremap EXPORT_SYMBOL from parisc_ksyms.c
[PARISC] Make local_t use atomic_long_t
[PARISC] Update defconfigs
[PARISC] Add PREEMPT support
[PARISC] More useful readwrite lock helpers
[PARISC] Convert HIL drivers to use input_allocate_device
[PARISC] Fixup CONFIG_EISA a bit
[PARISC] getsockopt should be ENTRY_COMP
[PARISC] Remove obsolete CONFIG_DEBUG_IOREMAP
[PARISC] Temporary FIXME for ioremapping EISA regions
[PARISC] Enable ioremap functionality unconditionally
[PARISC] Fix stifb with IOREMAP and a 64-bit kernel
[PARISC] Add CONFIG_HPPA_IOREMAP to conditionally enable ioremap
[PARISC] Add STRICT_MM_TYPECHECKS
[PARISC] Fix IOREMAP with a 64-bit kernel
[PARISC] Add parisc implementation of flush_kernel_dcache_page()
...

+623 -803
+1 -5
arch/parisc/Kconfig
··· 177 177 def_bool y 178 178 depends on ARCH_DISCONTIGMEM_ENABLE 179 179 180 + source "kernel/Kconfig.preempt" 180 181 source "kernel/Kconfig.hz" 181 182 source "mm/Kconfig" 182 - 183 - config PREEMPT 184 - bool 185 - # bool "Preemptible Kernel" 186 - default n 187 183 188 184 config COMPAT 189 185 def_bool y
+74 -86
arch/parisc/configs/712_defconfig
··· 1 1 # 2 2 # Automatically generated make config: don't edit 3 - # Linux kernel version: 2.6.14-rc5-pa1 4 - # Fri Oct 21 23:04:34 2005 3 + # Linux kernel version: 2.6.16-pa6 4 + # Sun Mar 26 19:59:51 2006 5 5 # 6 6 CONFIG_PARISC=y 7 7 CONFIG_MMU=y ··· 10 10 CONFIG_GENERIC_CALIBRATE_DELAY=y 11 11 CONFIG_GENERIC_HARDIRQS=y 12 12 CONFIG_GENERIC_IRQ_PROBE=y 13 - CONFIG_ARCH_MAY_HAVE_PC_FDC=y 14 13 15 14 # 16 15 # Code maturity level options 17 16 # 18 17 CONFIG_EXPERIMENTAL=y 19 - # CONFIG_CLEAN_COMPILE is not set 20 - CONFIG_BROKEN=y 21 18 CONFIG_BROKEN_ON_SMP=y 22 19 CONFIG_INIT_ENV_ARG_LIMIT=32 23 20 ··· 29 32 # CONFIG_BSD_PROCESS_ACCT is not set 30 33 CONFIG_SYSCTL=y 31 34 # CONFIG_AUDIT is not set 32 - CONFIG_HOTPLUG=y 33 - CONFIG_KOBJECT_UEVENT=y 34 35 CONFIG_IKCONFIG=y 35 36 CONFIG_IKCONFIG_PROC=y 36 37 CONFIG_INITRAMFS_SOURCE="" 38 + CONFIG_CC_OPTIMIZE_FOR_SIZE=y 37 39 # CONFIG_EMBEDDED is not set 38 40 CONFIG_KALLSYMS=y 39 41 CONFIG_KALLSYMS_ALL=y 40 42 # CONFIG_KALLSYMS_EXTRA_PASS is not set 43 + CONFIG_HOTPLUG=y 41 44 CONFIG_PRINTK=y 42 45 CONFIG_BUG=y 46 + CONFIG_ELF_CORE=y 43 47 CONFIG_BASE_FULL=y 44 48 CONFIG_FUTEX=y 45 49 CONFIG_EPOLL=y ··· 49 51 CONFIG_CC_ALIGN_LABELS=0 50 52 CONFIG_CC_ALIGN_LOOPS=0 51 53 CONFIG_CC_ALIGN_JUMPS=0 54 + CONFIG_SLAB=y 52 55 # CONFIG_TINY_SHMEM is not set 53 56 CONFIG_BASE_SMALL=0 57 + # CONFIG_SLOB is not set 54 58 55 59 # 56 60 # Loadable module support ··· 66 66 CONFIG_KMOD=y 67 67 68 68 # 69 + # Block layer 70 + # 71 + 72 + # 73 + # IO Schedulers 74 + # 75 + CONFIG_IOSCHED_NOOP=y 76 + CONFIG_IOSCHED_AS=y 77 + CONFIG_IOSCHED_DEADLINE=y 78 + CONFIG_IOSCHED_CFQ=y 79 + CONFIG_DEFAULT_AS=y 80 + # CONFIG_DEFAULT_DEADLINE is not set 81 + # CONFIG_DEFAULT_CFQ is not set 82 + # CONFIG_DEFAULT_NOOP is not set 83 + CONFIG_DEFAULT_IOSCHED="anticipatory" 84 + 85 + # 69 86 # Processor type and features 70 87 # 71 88 # CONFIG_PA7000 is not set ··· 92 75 # CONFIG_PA8X00 is not set 93 76 CONFIG_PA11=y 94 77 # CONFIG_SMP is not set 78 + CONFIG_ARCH_FLATMEM_ENABLE=y 79 + # CONFIG_PREEMPT_NONE is not set 80 + CONFIG_PREEMPT_VOLUNTARY=y 81 + # CONFIG_PREEMPT is not set 95 82 # CONFIG_HZ_100 is not set 96 83 CONFIG_HZ_250=y 97 84 # CONFIG_HZ_1000 is not set ··· 107 86 CONFIG_FLATMEM=y 108 87 CONFIG_FLAT_NODE_MEM_MAP=y 109 88 # CONFIG_SPARSEMEM_STATIC is not set 110 - # CONFIG_PREEMPT is not set 89 + CONFIG_SPLIT_PTLOCK_CPUS=4096 111 90 # CONFIG_HPUX is not set 112 91 113 92 # ··· 151 130 # 152 131 # Networking options 153 132 # 133 + # CONFIG_NETDEBUG is not set 154 134 CONFIG_PACKET=y 155 135 CONFIG_PACKET_MMAP=y 156 136 CONFIG_UNIX=y ··· 187 165 # CONFIG_IPV6 is not set 188 166 CONFIG_NETFILTER=y 189 167 # CONFIG_NETFILTER_DEBUG is not set 168 + 169 + # 170 + # Core Netfilter Configuration 171 + # 190 172 # CONFIG_NETFILTER_NETLINK is not set 173 + # CONFIG_NETFILTER_XTABLES is not set 191 174 192 175 # 193 176 # IP: Netfilter Configuration ··· 209 182 CONFIG_IP_NF_AMANDA=m 210 183 # CONFIG_IP_NF_PPTP is not set 211 184 CONFIG_IP_NF_QUEUE=m 212 - CONFIG_IP_NF_IPTABLES=m 213 - CONFIG_IP_NF_MATCH_LIMIT=m 214 - CONFIG_IP_NF_MATCH_IPRANGE=m 215 - CONFIG_IP_NF_MATCH_MAC=m 216 - CONFIG_IP_NF_MATCH_PKTTYPE=m 217 - CONFIG_IP_NF_MATCH_MARK=m 218 - CONFIG_IP_NF_MATCH_MULTIPORT=m 219 - CONFIG_IP_NF_MATCH_TOS=m 220 - CONFIG_IP_NF_MATCH_RECENT=m 221 - CONFIG_IP_NF_MATCH_ECN=m 222 - CONFIG_IP_NF_MATCH_DSCP=m 223 - CONFIG_IP_NF_MATCH_AH_ESP=m 224 - CONFIG_IP_NF_MATCH_LENGTH=m 225 - CONFIG_IP_NF_MATCH_TTL=m 226 - CONFIG_IP_NF_MATCH_TCPMSS=m 227 - CONFIG_IP_NF_MATCH_HELPER=m 228 - CONFIG_IP_NF_MATCH_STATE=m 229 - CONFIG_IP_NF_MATCH_CONNTRACK=m 230 - CONFIG_IP_NF_MATCH_OWNER=m 231 - # CONFIG_IP_NF_MATCH_ADDRTYPE is not set 232 - # CONFIG_IP_NF_MATCH_REALM is not set 233 - CONFIG_IP_NF_MATCH_SCTP=m 234 - # CONFIG_IP_NF_MATCH_DCCP is not set 235 - CONFIG_IP_NF_MATCH_COMMENT=m 236 - CONFIG_IP_NF_MATCH_CONNMARK=m 237 - CONFIG_IP_NF_MATCH_HASHLIMIT=m 238 - # CONFIG_IP_NF_MATCH_STRING is not set 239 - CONFIG_IP_NF_FILTER=m 240 - CONFIG_IP_NF_TARGET_REJECT=m 241 - CONFIG_IP_NF_TARGET_LOG=m 242 - CONFIG_IP_NF_TARGET_ULOG=m 243 - CONFIG_IP_NF_TARGET_TCPMSS=m 244 - # CONFIG_IP_NF_TARGET_NFQUEUE is not set 245 - CONFIG_IP_NF_NAT=m 246 - CONFIG_IP_NF_NAT_NEEDED=y 247 - CONFIG_IP_NF_TARGET_MASQUERADE=m 248 - CONFIG_IP_NF_TARGET_REDIRECT=m 249 - CONFIG_IP_NF_TARGET_NETMAP=m 250 - CONFIG_IP_NF_TARGET_SAME=m 251 - CONFIG_IP_NF_NAT_SNMP_BASIC=m 252 - CONFIG_IP_NF_NAT_IRC=m 253 - CONFIG_IP_NF_NAT_FTP=m 254 - CONFIG_IP_NF_NAT_TFTP=m 255 - CONFIG_IP_NF_NAT_AMANDA=m 256 - CONFIG_IP_NF_MANGLE=m 257 - CONFIG_IP_NF_TARGET_TOS=m 258 - CONFIG_IP_NF_TARGET_ECN=m 259 - CONFIG_IP_NF_TARGET_DSCP=m 260 - CONFIG_IP_NF_TARGET_MARK=m 261 - CONFIG_IP_NF_TARGET_CLASSIFY=m 262 - # CONFIG_IP_NF_TARGET_TTL is not set 263 - CONFIG_IP_NF_TARGET_CONNMARK=m 264 - CONFIG_IP_NF_TARGET_CLUSTERIP=m 265 - CONFIG_IP_NF_RAW=m 266 - CONFIG_IP_NF_TARGET_NOTRACK=m 267 - CONFIG_IP_NF_ARPTABLES=m 268 - CONFIG_IP_NF_ARPFILTER=m 269 - CONFIG_IP_NF_ARP_MANGLE=m 270 185 271 186 # 272 187 # DCCP Configuration (EXPERIMENTAL) ··· 219 250 # SCTP Configuration (EXPERIMENTAL) 220 251 # 221 252 # CONFIG_IP_SCTP is not set 253 + 254 + # 255 + # TIPC Configuration (EXPERIMENTAL) 256 + # 257 + # CONFIG_TIPC is not set 222 258 # CONFIG_ATM is not set 223 259 # CONFIG_BRIDGE is not set 224 260 # CONFIG_VLAN_8021Q is not set ··· 237 263 # CONFIG_NET_DIVERT is not set 238 264 # CONFIG_ECONET is not set 239 265 # CONFIG_WAN_ROUTER is not set 266 + 267 + # 268 + # QoS and/or fair queueing 269 + # 240 270 # CONFIG_NET_SCHED is not set 241 - # CONFIG_NET_CLS_ROUTE is not set 242 271 243 272 # 244 273 # Network testing ··· 281 304 CONFIG_PARPORT_PC=m 282 305 # CONFIG_PARPORT_PC_FIFO is not set 283 306 # CONFIG_PARPORT_PC_SUPERIO is not set 307 + CONFIG_PARPORT_NOT_PC=y 284 308 CONFIG_PARPORT_GSC=y 285 309 # CONFIG_PARPORT_1284 is not set 286 310 ··· 292 314 # 293 315 # Block devices 294 316 # 295 - # CONFIG_BLK_DEV_FD is not set 296 317 # CONFIG_PARIDE is not set 297 318 # CONFIG_BLK_DEV_COW_COMMON is not set 298 319 CONFIG_BLK_DEV_LOOP=y ··· 302 325 CONFIG_BLK_DEV_RAM_SIZE=6144 303 326 CONFIG_BLK_DEV_INITRD=y 304 327 # CONFIG_CDROM_PKTCDVD is not set 305 - 306 - # 307 - # IO Schedulers 308 - # 309 - CONFIG_IOSCHED_NOOP=y 310 - CONFIG_IOSCHED_AS=y 311 - CONFIG_IOSCHED_DEADLINE=y 312 - CONFIG_IOSCHED_CFQ=y 313 328 CONFIG_ATA_OVER_ETH=m 314 329 315 330 # ··· 345 376 # 346 377 # SCSI low-level drivers 347 378 # 379 + # CONFIG_ISCSI_TCP is not set 348 380 # CONFIG_SCSI_SATA is not set 349 381 # CONFIG_SCSI_PPA is not set 350 382 # CONFIG_SCSI_IMM is not set ··· 377 407 # 378 408 # IEEE 1394 (FireWire) support 379 409 # 380 - # CONFIG_IEEE1394 is not set 381 410 382 411 # 383 412 # I2O device support ··· 440 471 CONFIG_PPP_SYNC_TTY=m 441 472 CONFIG_PPP_DEFLATE=m 442 473 CONFIG_PPP_BSDCOMP=m 474 + CONFIG_PPP_MPPE=m 443 475 CONFIG_PPPOE=m 444 476 # CONFIG_SLIP is not set 445 477 # CONFIG_SHAPER is not set ··· 486 516 # CONFIG_KEYBOARD_LKKBD is not set 487 517 # CONFIG_KEYBOARD_XTKBD is not set 488 518 # CONFIG_KEYBOARD_NEWTON is not set 489 - CONFIG_KEYBOARD_HIL_OLD=y 490 - # CONFIG_KEYBOARD_HIL is not set 519 + # CONFIG_KEYBOARD_HIL_OLD is not set 520 + CONFIG_KEYBOARD_HIL=y 491 521 CONFIG_INPUT_MOUSE=y 492 522 CONFIG_MOUSE_PS2=y 493 523 CONFIG_MOUSE_SERIAL=m ··· 524 554 CONFIG_SERIAL_8250=y 525 555 CONFIG_SERIAL_8250_CONSOLE=y 526 556 CONFIG_SERIAL_8250_NR_UARTS=17 557 + CONFIG_SERIAL_8250_RUNTIME_UARTS=4 527 558 CONFIG_SERIAL_8250_EXTENDED=y 528 559 CONFIG_SERIAL_8250_MANY_PORTS=y 529 560 CONFIG_SERIAL_8250_SHARE_IRQ=y ··· 569 598 # 570 599 # TPM devices 571 600 # 601 + # CONFIG_TCG_TPM is not set 602 + # CONFIG_TELCLOCK is not set 572 603 573 604 # 574 605 # I2C support 575 606 # 576 607 # CONFIG_I2C is not set 608 + 609 + # 610 + # SPI support 611 + # 612 + # CONFIG_SPI is not set 613 + # CONFIG_SPI_MASTER is not set 577 614 578 615 # 579 616 # Dallas's 1-wire bus ··· 619 640 CONFIG_FB_CFB_FILLRECT=y 620 641 CONFIG_FB_CFB_COPYAREA=y 621 642 CONFIG_FB_CFB_IMAGEBLIT=y 622 - CONFIG_FB_SOFT_CURSOR=y 623 643 # CONFIG_FB_MACMODES is not set 624 644 CONFIG_FB_MODE_HELPERS=y 625 645 CONFIG_FB_TILEBLITTING=y ··· 633 655 CONFIG_DUMMY_CONSOLE_COLUMNS=128 634 656 CONFIG_DUMMY_CONSOLE_ROWS=48 635 657 CONFIG_FRAMEBUFFER_CONSOLE=y 658 + # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set 636 659 CONFIG_STI_CONSOLE=y 637 660 CONFIG_FONTS=y 638 661 CONFIG_FONT_8x8=y ··· 674 695 CONFIG_SND_MIXER_OSS=y 675 696 CONFIG_SND_PCM_OSS=y 676 697 CONFIG_SND_SEQUENCER_OSS=y 698 + # CONFIG_SND_DYNAMIC_MINORS is not set 699 + CONFIG_SND_SUPPORT_OLD_API=y 677 700 # CONFIG_SND_VERBOSE_PRINTK is not set 678 701 # CONFIG_SND_DEBUG is not set 679 702 ··· 705 724 # CONFIG_USB_ARCH_HAS_OHCI is not set 706 725 707 726 # 727 + # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' 728 + # 729 + 730 + # 708 731 # USB Gadget Support 709 732 # 710 733 # CONFIG_USB_GADGET is not set ··· 721 736 # 722 737 # InfiniBand support 723 738 # 724 - # CONFIG_INFINIBAND is not set 725 739 726 740 # 727 - # SN Devices 741 + # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) 728 742 # 729 743 730 744 # ··· 749 765 # CONFIG_XFS_SECURITY is not set 750 766 # CONFIG_XFS_POSIX_ACL is not set 751 767 # CONFIG_XFS_RT is not set 768 + # CONFIG_OCFS2_FS is not set 752 769 # CONFIG_MINIX_FS is not set 753 770 # CONFIG_ROMFS_FS is not set 754 771 CONFIG_INOTIFY=y ··· 785 800 CONFIG_PROC_KCORE=y 786 801 CONFIG_SYSFS=y 787 802 CONFIG_TMPFS=y 788 - # CONFIG_HUGETLBFS is not set 789 803 # CONFIG_HUGETLB_PAGE is not set 790 804 CONFIG_RAMFS=y 791 805 # CONFIG_RELAYFS_FS is not set 806 + # CONFIG_CONFIGFS_FS is not set 792 807 793 808 # 794 809 # Miscellaneous filesystems ··· 806 821 # CONFIG_QNX4FS_FS is not set 807 822 # CONFIG_SYSV_FS is not set 808 823 CONFIG_UFS_FS=m 809 - # CONFIG_UFS_FS_WRITE is not set 810 824 811 825 # 812 826 # Network File Systems ··· 901 917 # Kernel hacking 902 918 # 903 919 # CONFIG_PRINTK_TIME is not set 904 - CONFIG_DEBUG_KERNEL=y 905 920 CONFIG_MAGIC_SYSRQ=y 921 + CONFIG_DEBUG_KERNEL=y 906 922 CONFIG_LOG_BUF_SHIFT=16 907 923 CONFIG_DETECT_SOFTLOCKUP=y 908 924 # CONFIG_SCHEDSTATS is not set 909 925 # CONFIG_DEBUG_SLAB is not set 926 + CONFIG_DEBUG_MUTEXES=y 910 927 # CONFIG_DEBUG_SPINLOCK is not set 911 928 # CONFIG_DEBUG_SPINLOCK_SLEEP is not set 912 929 # CONFIG_DEBUG_KOBJECT is not set 913 930 # CONFIG_DEBUG_INFO is not set 914 - # CONFIG_DEBUG_IOREMAP is not set 915 931 # CONFIG_DEBUG_FS is not set 932 + # CONFIG_DEBUG_VM is not set 933 + CONFIG_FORCED_INLINING=y 934 + # CONFIG_RCU_TORTURE_TEST is not set 935 + CONFIG_DEBUG_RODATA=y 916 936 917 937 # 918 938 # Security options
+2 -2
arch/parisc/configs/a500_defconfig
··· 1031 1031 # CONFIG_NLS_ISO8859_8 is not set 1032 1032 # CONFIG_NLS_CODEPAGE_1250 is not set 1033 1033 # CONFIG_NLS_CODEPAGE_1251 is not set 1034 - # CONFIG_NLS_ASCII is not set 1035 - # CONFIG_NLS_ISO8859_1 is not set 1034 + CONFIG_NLS_ASCII=m 1035 + CONFIG_NLS_ISO8859_1=m 1036 1036 # CONFIG_NLS_ISO8859_2 is not set 1037 1037 # CONFIG_NLS_ISO8859_3 is not set 1038 1038 # CONFIG_NLS_ISO8859_4 is not set
+6 -6
arch/parisc/configs/b180_defconfig
··· 939 939 # 940 940 CONFIG_NLS=y 941 941 CONFIG_NLS_DEFAULT="iso8859-1" 942 - # CONFIG_NLS_CODEPAGE_437 is not set 942 + CONFIG_NLS_CODEPAGE_437=m 943 943 # CONFIG_NLS_CODEPAGE_737 is not set 944 944 # CONFIG_NLS_CODEPAGE_775 is not set 945 - # CONFIG_NLS_CODEPAGE_850 is not set 945 + CONFIG_NLS_CODEPAGE_850=m 946 946 # CONFIG_NLS_CODEPAGE_852 is not set 947 947 # CONFIG_NLS_CODEPAGE_855 is not set 948 948 # CONFIG_NLS_CODEPAGE_857 is not set ··· 962 962 # CONFIG_NLS_ISO8859_8 is not set 963 963 # CONFIG_NLS_CODEPAGE_1250 is not set 964 964 # CONFIG_NLS_CODEPAGE_1251 is not set 965 - # CONFIG_NLS_ASCII is not set 966 - # CONFIG_NLS_ISO8859_1 is not set 965 + CONFIG_NLS_ASCII=m 966 + CONFIG_NLS_ISO8859_1=m 967 967 # CONFIG_NLS_ISO8859_2 is not set 968 968 # CONFIG_NLS_ISO8859_3 is not set 969 969 # CONFIG_NLS_ISO8859_4 is not set ··· 973 973 # CONFIG_NLS_ISO8859_9 is not set 974 974 # CONFIG_NLS_ISO8859_13 is not set 975 975 # CONFIG_NLS_ISO8859_14 is not set 976 - # CONFIG_NLS_ISO8859_15 is not set 976 + CONFIG_NLS_ISO8859_15=m 977 977 # CONFIG_NLS_KOI8_R is not set 978 978 # CONFIG_NLS_KOI8_U is not set 979 - # CONFIG_NLS_UTF8 is not set 979 + CONFIG_NLS_UTF8=m 980 980 981 981 # 982 982 # Kernel hacking
+108 -144
arch/parisc/configs/c3000_defconfig
··· 1 1 # 2 2 # Automatically generated make config: don't edit 3 - # Linux kernel version: 2.6.14-rc5-pa1 4 - # Fri Oct 21 23:06:31 2005 3 + # Linux kernel version: 2.6.16-pa6 4 + # Sun Mar 26 20:03:29 2006 5 5 # 6 6 CONFIG_PARISC=y 7 7 CONFIG_MMU=y ··· 10 10 CONFIG_GENERIC_CALIBRATE_DELAY=y 11 11 CONFIG_GENERIC_HARDIRQS=y 12 12 CONFIG_GENERIC_IRQ_PROBE=y 13 - CONFIG_ARCH_MAY_HAVE_PC_FDC=y 14 13 15 14 # 16 15 # Code maturity level options 17 16 # 18 17 CONFIG_EXPERIMENTAL=y 19 - # CONFIG_CLEAN_COMPILE is not set 20 - CONFIG_BROKEN=y 21 18 CONFIG_BROKEN_ON_SMP=y 22 19 CONFIG_INIT_ENV_ARG_LIMIT=32 23 20 ··· 29 32 # CONFIG_BSD_PROCESS_ACCT is not set 30 33 CONFIG_SYSCTL=y 31 34 # CONFIG_AUDIT is not set 32 - CONFIG_HOTPLUG=y 33 - CONFIG_KOBJECT_UEVENT=y 34 35 CONFIG_IKCONFIG=y 35 36 CONFIG_IKCONFIG_PROC=y 36 37 CONFIG_INITRAMFS_SOURCE="" 38 + # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 37 39 CONFIG_EMBEDDED=y 38 40 CONFIG_KALLSYMS=y 39 41 CONFIG_KALLSYMS_ALL=y 40 42 # CONFIG_KALLSYMS_EXTRA_PASS is not set 43 + CONFIG_HOTPLUG=y 41 44 CONFIG_PRINTK=y 42 45 CONFIG_BUG=y 46 + CONFIG_ELF_CORE=y 43 47 CONFIG_BASE_FULL=y 44 48 CONFIG_FUTEX=y 45 49 CONFIG_EPOLL=y 46 - # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set 47 50 CONFIG_SHMEM=y 48 51 CONFIG_CC_ALIGN_FUNCTIONS=0 49 52 CONFIG_CC_ALIGN_LABELS=0 50 53 CONFIG_CC_ALIGN_LOOPS=0 51 54 CONFIG_CC_ALIGN_JUMPS=0 55 + CONFIG_SLAB=y 52 56 # CONFIG_TINY_SHMEM is not set 53 57 CONFIG_BASE_SMALL=0 58 + # CONFIG_SLOB is not set 54 59 55 60 # 56 61 # Loadable module support ··· 66 67 CONFIG_KMOD=y 67 68 68 69 # 70 + # Block layer 71 + # 72 + 73 + # 74 + # IO Schedulers 75 + # 76 + CONFIG_IOSCHED_NOOP=y 77 + CONFIG_IOSCHED_AS=y 78 + CONFIG_IOSCHED_DEADLINE=y 79 + CONFIG_IOSCHED_CFQ=y 80 + CONFIG_DEFAULT_AS=y 81 + # CONFIG_DEFAULT_DEADLINE is not set 82 + # CONFIG_DEFAULT_CFQ is not set 83 + # CONFIG_DEFAULT_NOOP is not set 84 + CONFIG_DEFAULT_IOSCHED="anticipatory" 85 + 86 + # 69 87 # Processor type and features 70 88 # 71 89 # CONFIG_PA7000 is not set ··· 94 78 CONFIG_PREFETCH=y 95 79 # CONFIG_64BIT is not set 96 80 # CONFIG_SMP is not set 81 + CONFIG_ARCH_FLATMEM_ENABLE=y 82 + # CONFIG_PREEMPT_NONE is not set 83 + CONFIG_PREEMPT_VOLUNTARY=y 84 + # CONFIG_PREEMPT is not set 97 85 # CONFIG_HZ_100 is not set 98 86 CONFIG_HZ_250=y 99 87 # CONFIG_HZ_1000 is not set ··· 109 89 CONFIG_FLATMEM=y 110 90 CONFIG_FLAT_NODE_MEM_MAP=y 111 91 # CONFIG_SPARSEMEM_STATIC is not set 112 - # CONFIG_PREEMPT is not set 92 + CONFIG_SPLIT_PTLOCK_CPUS=4 113 93 # CONFIG_HPUX is not set 114 94 115 95 # ··· 155 135 # 156 136 # Networking options 157 137 # 138 + # CONFIG_NETDEBUG is not set 158 139 CONFIG_PACKET=y 159 140 CONFIG_PACKET_MMAP=y 160 141 CONFIG_UNIX=y ··· 196 175 CONFIG_IPV6_TUNNEL=m 197 176 CONFIG_NETFILTER=y 198 177 CONFIG_NETFILTER_DEBUG=y 178 + 179 + # 180 + # Core Netfilter Configuration 181 + # 199 182 # CONFIG_NETFILTER_NETLINK is not set 183 + # CONFIG_NETFILTER_XTABLES is not set 200 184 201 185 # 202 186 # IP: Netfilter Configuration ··· 218 192 CONFIG_IP_NF_AMANDA=m 219 193 # CONFIG_IP_NF_PPTP is not set 220 194 CONFIG_IP_NF_QUEUE=m 221 - CONFIG_IP_NF_IPTABLES=m 222 - CONFIG_IP_NF_MATCH_LIMIT=m 223 - CONFIG_IP_NF_MATCH_IPRANGE=m 224 - CONFIG_IP_NF_MATCH_MAC=m 225 - CONFIG_IP_NF_MATCH_PKTTYPE=m 226 - CONFIG_IP_NF_MATCH_MARK=m 227 - CONFIG_IP_NF_MATCH_MULTIPORT=m 228 - CONFIG_IP_NF_MATCH_TOS=m 229 - CONFIG_IP_NF_MATCH_RECENT=m 230 - CONFIG_IP_NF_MATCH_ECN=m 231 - CONFIG_IP_NF_MATCH_DSCP=m 232 - CONFIG_IP_NF_MATCH_AH_ESP=m 233 - CONFIG_IP_NF_MATCH_LENGTH=m 234 - CONFIG_IP_NF_MATCH_TTL=m 235 - CONFIG_IP_NF_MATCH_TCPMSS=m 236 - CONFIG_IP_NF_MATCH_HELPER=m 237 - CONFIG_IP_NF_MATCH_STATE=m 238 - CONFIG_IP_NF_MATCH_CONNTRACK=m 239 - CONFIG_IP_NF_MATCH_OWNER=m 240 - # CONFIG_IP_NF_MATCH_ADDRTYPE is not set 241 - # CONFIG_IP_NF_MATCH_REALM is not set 242 - # CONFIG_IP_NF_MATCH_SCTP is not set 243 - # CONFIG_IP_NF_MATCH_DCCP is not set 244 - # CONFIG_IP_NF_MATCH_COMMENT is not set 245 - # CONFIG_IP_NF_MATCH_HASHLIMIT is not set 246 - # CONFIG_IP_NF_MATCH_STRING is not set 247 - CONFIG_IP_NF_FILTER=m 248 - CONFIG_IP_NF_TARGET_REJECT=m 249 - CONFIG_IP_NF_TARGET_LOG=m 250 - CONFIG_IP_NF_TARGET_ULOG=m 251 - CONFIG_IP_NF_TARGET_TCPMSS=m 252 - # CONFIG_IP_NF_TARGET_NFQUEUE is not set 253 - CONFIG_IP_NF_NAT=m 254 - CONFIG_IP_NF_NAT_NEEDED=y 255 - CONFIG_IP_NF_TARGET_MASQUERADE=m 256 - CONFIG_IP_NF_TARGET_REDIRECT=m 257 - CONFIG_IP_NF_TARGET_NETMAP=m 258 - CONFIG_IP_NF_TARGET_SAME=m 259 - CONFIG_IP_NF_NAT_SNMP_BASIC=m 260 - CONFIG_IP_NF_NAT_IRC=m 261 - CONFIG_IP_NF_NAT_FTP=m 262 - CONFIG_IP_NF_NAT_TFTP=m 263 - CONFIG_IP_NF_NAT_AMANDA=m 264 - CONFIG_IP_NF_MANGLE=m 265 - CONFIG_IP_NF_TARGET_TOS=m 266 - CONFIG_IP_NF_TARGET_ECN=m 267 - CONFIG_IP_NF_TARGET_DSCP=m 268 - CONFIG_IP_NF_TARGET_MARK=m 269 - CONFIG_IP_NF_TARGET_CLASSIFY=m 270 - # CONFIG_IP_NF_TARGET_TTL is not set 271 - # CONFIG_IP_NF_RAW is not set 272 - CONFIG_IP_NF_ARPTABLES=m 273 - CONFIG_IP_NF_ARPFILTER=m 274 - CONFIG_IP_NF_ARP_MANGLE=m 275 195 276 196 # 277 197 # IPv6: Netfilter Configuration (EXPERIMENTAL) 278 198 # 279 199 # CONFIG_IP6_NF_QUEUE is not set 280 - CONFIG_IP6_NF_IPTABLES=m 281 - # CONFIG_IP6_NF_MATCH_LIMIT is not set 282 - CONFIG_IP6_NF_MATCH_MAC=m 283 - CONFIG_IP6_NF_MATCH_RT=m 284 - # CONFIG_IP6_NF_MATCH_OPTS is not set 285 - # CONFIG_IP6_NF_MATCH_FRAG is not set 286 - # CONFIG_IP6_NF_MATCH_HL is not set 287 - # CONFIG_IP6_NF_MATCH_MULTIPORT is not set 288 - CONFIG_IP6_NF_MATCH_OWNER=m 289 - # CONFIG_IP6_NF_MATCH_MARK is not set 290 - CONFIG_IP6_NF_MATCH_IPV6HEADER=m 291 - # CONFIG_IP6_NF_MATCH_AHESP is not set 292 - CONFIG_IP6_NF_MATCH_LENGTH=m 293 - # CONFIG_IP6_NF_MATCH_EUI64 is not set 294 - CONFIG_IP6_NF_FILTER=m 295 - CONFIG_IP6_NF_TARGET_LOG=m 296 - CONFIG_IP6_NF_TARGET_REJECT=m 297 - # CONFIG_IP6_NF_TARGET_NFQUEUE is not set 298 - CONFIG_IP6_NF_MANGLE=m 299 - # CONFIG_IP6_NF_TARGET_MARK is not set 300 - # CONFIG_IP6_NF_TARGET_HL is not set 301 - # CONFIG_IP6_NF_RAW is not set 302 200 303 201 # 304 202 # DCCP Configuration (EXPERIMENTAL) ··· 233 283 # SCTP Configuration (EXPERIMENTAL) 234 284 # 235 285 # CONFIG_IP_SCTP is not set 286 + 287 + # 288 + # TIPC Configuration (EXPERIMENTAL) 289 + # 290 + # CONFIG_TIPC is not set 236 291 # CONFIG_ATM is not set 237 292 # CONFIG_BRIDGE is not set 238 293 # CONFIG_VLAN_8021Q is not set ··· 250 295 # CONFIG_NET_DIVERT is not set 251 296 # CONFIG_ECONET is not set 252 297 # CONFIG_WAN_ROUTER is not set 298 + 299 + # 300 + # QoS and/or fair queueing 301 + # 253 302 # CONFIG_NET_SCHED is not set 254 - # CONFIG_NET_CLS_ROUTE is not set 255 303 256 304 # 257 305 # Network testing ··· 299 341 # 300 342 # Block devices 301 343 # 302 - # CONFIG_BLK_DEV_FD is not set 303 344 # CONFIG_BLK_CPQ_DA is not set 304 345 # CONFIG_BLK_CPQ_CISS_DA is not set 305 346 # CONFIG_BLK_DEV_DAC960 is not set ··· 312 355 # CONFIG_BLK_DEV_RAM is not set 313 356 CONFIG_BLK_DEV_RAM_COUNT=16 314 357 # CONFIG_CDROM_PKTCDVD is not set 315 - 316 - # 317 - # IO Schedulers 318 - # 319 - CONFIG_IOSCHED_NOOP=y 320 - CONFIG_IOSCHED_AS=y 321 - CONFIG_IOSCHED_DEADLINE=y 322 - CONFIG_IOSCHED_CFQ=y 323 358 # CONFIG_ATA_OVER_ETH is not set 324 359 325 360 # ··· 407 458 # 408 459 # SCSI low-level drivers 409 460 # 461 + # CONFIG_ISCSI_TCP is not set 410 462 # CONFIG_BLK_DEV_3W_XXXX_RAID is not set 411 463 # CONFIG_SCSI_3W_9XXX is not set 412 464 # CONFIG_SCSI_ACARD is not set ··· 416 466 # CONFIG_SCSI_AIC7XXX_OLD is not set 417 467 # CONFIG_SCSI_AIC79XX is not set 418 468 # CONFIG_SCSI_DPT_I2O is not set 419 - # CONFIG_SCSI_ADVANSYS is not set 420 469 # CONFIG_MEGARAID_NEWGEN is not set 421 470 # CONFIG_MEGARAID_LEGACY is not set 422 471 # CONFIG_MEGARAID_SAS is not set ··· 425 476 CONFIG_SCSI_ATA_PIIX=m 426 477 # CONFIG_SCSI_SATA_MV is not set 427 478 # CONFIG_SCSI_SATA_NV is not set 428 - CONFIG_SCSI_SATA_PROMISE=m 479 + # CONFIG_SCSI_PDC_ADMA is not set 429 480 # CONFIG_SCSI_SATA_QSTOR is not set 481 + CONFIG_SCSI_SATA_PROMISE=m 430 482 # CONFIG_SCSI_SATA_SX4 is not set 431 483 CONFIG_SCSI_SATA_SIL=m 484 + # CONFIG_SCSI_SATA_SIL24 is not set 432 485 # CONFIG_SCSI_SATA_SIS is not set 433 486 # CONFIG_SCSI_SATA_ULI is not set 434 487 CONFIG_SCSI_SATA_VIA=m 435 488 # CONFIG_SCSI_SATA_VITESSE is not set 436 489 CONFIG_SCSI_SATA_INTEL_COMBINED=y 437 - # CONFIG_SCSI_CPQFCTS is not set 438 490 # CONFIG_SCSI_DMX3191D is not set 439 - # CONFIG_SCSI_EATA_PIO is not set 440 491 # CONFIG_SCSI_FUTURE_DOMAIN is not set 441 492 # CONFIG_SCSI_IPS is not set 442 493 # CONFIG_SCSI_INITIO is not set ··· 445 496 CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=0 446 497 CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 447 498 CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 448 - # CONFIG_SCSI_SYM53C8XX_IOMAPPED is not set 499 + CONFIG_SCSI_SYM53C8XX_MMIO=y 449 500 # CONFIG_SCSI_IPR is not set 450 - # CONFIG_SCSI_QLOGIC_ISP is not set 451 501 # CONFIG_SCSI_QLOGIC_FC is not set 452 502 # CONFIG_SCSI_QLOGIC_1280 is not set 453 - CONFIG_SCSI_QLA2XXX=y 454 - # CONFIG_SCSI_QLA21XX is not set 455 - # CONFIG_SCSI_QLA22XX is not set 456 - # CONFIG_SCSI_QLA2300 is not set 457 - # CONFIG_SCSI_QLA2322 is not set 458 - # CONFIG_SCSI_QLA6312 is not set 459 - # CONFIG_SCSI_QLA24XX is not set 503 + # CONFIG_SCSI_QLA_FC is not set 460 504 # CONFIG_SCSI_LPFC is not set 461 505 # CONFIG_SCSI_DC395x is not set 462 506 # CONFIG_SCSI_DC390T is not set ··· 575 633 # CONFIG_R8169 is not set 576 634 # CONFIG_SIS190 is not set 577 635 # CONFIG_SKGE is not set 636 + # CONFIG_SKY2 is not set 578 637 # CONFIG_SK98LIN is not set 579 638 # CONFIG_VIA_VELOCITY is not set 580 639 CONFIG_TIGON3=m ··· 611 668 CONFIG_PPP_SYNC_TTY=m 612 669 CONFIG_PPP_DEFLATE=m 613 670 CONFIG_PPP_BSDCOMP=m 671 + # CONFIG_PPP_MPPE is not set 614 672 CONFIG_PPPOE=m 615 673 # CONFIG_SLIP is not set 616 674 # CONFIG_NET_FC is not set ··· 688 744 CONFIG_SERIAL_8250=y 689 745 CONFIG_SERIAL_8250_CONSOLE=y 690 746 CONFIG_SERIAL_8250_NR_UARTS=13 747 + CONFIG_SERIAL_8250_RUNTIME_UARTS=4 691 748 CONFIG_SERIAL_8250_EXTENDED=y 692 749 CONFIG_SERIAL_8250_MANY_PORTS=y 693 750 CONFIG_SERIAL_8250_SHARE_IRQ=y ··· 698 753 # 699 754 # Non-8250 serial port support 700 755 # 701 - # CONFIG_SERIAL_MUX is not set 702 756 # CONFIG_PDC_CONSOLE is not set 703 757 CONFIG_SERIAL_CORE=y 704 758 CONFIG_SERIAL_CORE_CONSOLE=y ··· 732 788 # TPM devices 733 789 # 734 790 # CONFIG_TCG_TPM is not set 791 + # CONFIG_TELCLOCK is not set 735 792 736 793 # 737 794 # I2C support 738 795 # 739 796 # CONFIG_I2C is not set 797 + 798 + # 799 + # SPI support 800 + # 801 + # CONFIG_SPI is not set 802 + # CONFIG_SPI_MASTER is not set 740 803 741 804 # 742 805 # Dallas's 1-wire bus ··· 781 830 CONFIG_FB_CFB_FILLRECT=y 782 831 CONFIG_FB_CFB_COPYAREA=y 783 832 CONFIG_FB_CFB_IMAGEBLIT=y 784 - CONFIG_FB_SOFT_CURSOR=y 785 833 # CONFIG_FB_MACMODES is not set 786 834 # CONFIG_FB_MODE_HELPERS is not set 787 835 # CONFIG_FB_TILEBLITTING is not set ··· 790 840 # CONFIG_FB_ASILIANT is not set 791 841 # CONFIG_FB_IMSTT is not set 792 842 CONFIG_FB_STI=y 843 + # CONFIG_FB_S1D13XXX is not set 793 844 # CONFIG_FB_NVIDIA is not set 794 845 # CONFIG_FB_RIVA is not set 795 846 # CONFIG_FB_MATROX is not set ··· 804 853 # CONFIG_FB_KYRO is not set 805 854 # CONFIG_FB_3DFX is not set 806 855 # CONFIG_FB_VOODOO1 is not set 807 - # CONFIG_FB_CYBLA is not set 808 856 # CONFIG_FB_TRIDENT is not set 809 - # CONFIG_FB_PM3 is not set 810 - # CONFIG_FB_S1D13XXX is not set 811 857 # CONFIG_FB_VIRTUAL is not set 812 858 813 859 # ··· 814 866 CONFIG_DUMMY_CONSOLE_COLUMNS=160 815 867 CONFIG_DUMMY_CONSOLE_ROWS=64 816 868 CONFIG_FRAMEBUFFER_CONSOLE=y 869 + # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set 817 870 CONFIG_STI_CONSOLE=y 818 871 # CONFIG_FONTS is not set 819 872 CONFIG_FONT_8x8=y ··· 847 898 CONFIG_SND_MIXER_OSS=y 848 899 CONFIG_SND_PCM_OSS=y 849 900 CONFIG_SND_SEQUENCER_OSS=y 901 + # CONFIG_SND_DYNAMIC_MINORS is not set 902 + CONFIG_SND_SUPPORT_OLD_API=y 850 903 # CONFIG_SND_VERBOSE_PRINTK is not set 851 904 # CONFIG_SND_DEBUG is not set 852 905 853 906 # 854 907 # Generic devices 855 908 # 909 + CONFIG_SND_AC97_CODEC=y 910 + CONFIG_SND_AC97_BUS=y 856 911 # CONFIG_SND_DUMMY is not set 857 912 # CONFIG_SND_VIRMIDI is not set 858 913 # CONFIG_SND_MTPAV is not set 859 914 # CONFIG_SND_SERIAL_U16550 is not set 860 915 # CONFIG_SND_MPU401 is not set 861 - CONFIG_SND_AC97_CODEC=y 862 - CONFIG_SND_AC97_BUS=y 863 916 864 917 # 865 918 # PCI devices 866 919 # 920 + CONFIG_SND_AD1889=y 921 + # CONFIG_SND_AD1889_OPL3 is not set 867 922 # CONFIG_SND_ALI5451 is not set 868 923 # CONFIG_SND_ATIIXP is not set 869 924 # CONFIG_SND_ATIIXP_MODEM is not set ··· 876 923 # CONFIG_SND_AU8830 is not set 877 924 # CONFIG_SND_AZT3328 is not set 878 925 # CONFIG_SND_BT87X is not set 879 - # CONFIG_SND_CS46XX is not set 926 + # CONFIG_SND_CA0106 is not set 927 + # CONFIG_SND_CMIPCI is not set 880 928 # CONFIG_SND_CS4281 is not set 929 + # CONFIG_SND_CS46XX is not set 881 930 # CONFIG_SND_EMU10K1 is not set 882 931 # CONFIG_SND_EMU10K1X is not set 883 - # CONFIG_SND_CA0106 is not set 884 - # CONFIG_SND_KORG1212 is not set 885 - # CONFIG_SND_MIXART is not set 886 - # CONFIG_SND_NM256 is not set 887 - # CONFIG_SND_RME32 is not set 888 - # CONFIG_SND_RME96 is not set 889 - # CONFIG_SND_RME9652 is not set 890 - # CONFIG_SND_HDSP is not set 891 - # CONFIG_SND_HDSPM is not set 892 - # CONFIG_SND_TRIDENT is not set 893 - # CONFIG_SND_YMFPCI is not set 894 - CONFIG_SND_AD1889=y 895 - # CONFIG_SND_AD1889_OPL3 is not set 896 - # CONFIG_SND_CMIPCI is not set 897 932 # CONFIG_SND_ENS1370 is not set 898 933 # CONFIG_SND_ENS1371 is not set 899 934 # CONFIG_SND_ES1938 is not set 900 935 # CONFIG_SND_ES1968 is not set 901 - # CONFIG_SND_MAESTRO3 is not set 902 936 # CONFIG_SND_FM801 is not set 937 + # CONFIG_SND_HDA_INTEL is not set 938 + # CONFIG_SND_HDSP is not set 939 + # CONFIG_SND_HDSPM is not set 903 940 # CONFIG_SND_ICE1712 is not set 904 941 # CONFIG_SND_ICE1724 is not set 905 942 # CONFIG_SND_INTEL8X0 is not set 906 943 # CONFIG_SND_INTEL8X0M is not set 944 + # CONFIG_SND_KORG1212 is not set 945 + # CONFIG_SND_MAESTRO3 is not set 946 + # CONFIG_SND_MIXART is not set 947 + # CONFIG_SND_NM256 is not set 948 + # CONFIG_SND_PCXHR is not set 949 + # CONFIG_SND_RME32 is not set 950 + # CONFIG_SND_RME96 is not set 951 + # CONFIG_SND_RME9652 is not set 907 952 # CONFIG_SND_SONICVIBES is not set 953 + # CONFIG_SND_TRIDENT is not set 908 954 # CONFIG_SND_VIA82XX is not set 909 955 # CONFIG_SND_VIA82XX_MODEM is not set 910 956 # CONFIG_SND_VX222 is not set 911 - # CONFIG_SND_HDA_INTEL is not set 957 + # CONFIG_SND_YMFPCI is not set 912 958 913 959 # 914 960 # USB devices ··· 950 998 # USB Device Class drivers 951 999 # 952 1000 # CONFIG_OBSOLETE_OSS_USB_DRIVER is not set 953 - # CONFIG_USB_BLUETOOTH_TTY is not set 954 1001 # CONFIG_USB_ACM is not set 955 1002 CONFIG_USB_PRINTER=m 956 1003 957 1004 # 958 - # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' may also be needed; see USB_STORAGE Help for more information 1005 + # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' 1006 + # 1007 + 1008 + # 1009 + # may also be needed; see USB_STORAGE Help for more information 959 1010 # 960 1011 CONFIG_USB_STORAGE=m 961 1012 # CONFIG_USB_STORAGE_DEBUG is not set ··· 970 1015 CONFIG_USB_STORAGE_SDDR09=y 971 1016 CONFIG_USB_STORAGE_SDDR55=y 972 1017 CONFIG_USB_STORAGE_JUMPSHOT=y 1018 + # CONFIG_USB_STORAGE_ALAUDA is not set 1019 + # CONFIG_USB_LIBUSUAL is not set 973 1020 974 1021 # 975 1022 # USB Input Devices 976 1023 # 977 1024 CONFIG_USB_HID=y 978 1025 CONFIG_USB_HIDINPUT=y 1026 + # CONFIG_USB_HIDINPUT_POWERBOOK is not set 979 1027 # CONFIG_HID_FF is not set 980 1028 CONFIG_USB_HIDDEV=y 981 1029 # CONFIG_USB_AIPTEK is not set ··· 992 1034 # CONFIG_USB_YEALINK is not set 993 1035 # CONFIG_USB_XPAD is not set 994 1036 # CONFIG_USB_ATI_REMOTE is not set 1037 + # CONFIG_USB_ATI_REMOTE2 is not set 995 1038 # CONFIG_USB_KEYSPAN_REMOTE is not set 996 1039 # CONFIG_USB_APPLETOUCH is not set 997 1040 ··· 1067 1108 # CONFIG_INFINIBAND is not set 1068 1109 1069 1110 # 1070 - # SN Devices 1111 + # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) 1071 1112 # 1072 1113 1073 1114 # ··· 1089 1130 # CONFIG_XFS_SECURITY is not set 1090 1131 # CONFIG_XFS_POSIX_ACL is not set 1091 1132 # CONFIG_XFS_RT is not set 1133 + # CONFIG_OCFS2_FS is not set 1092 1134 # CONFIG_MINIX_FS is not set 1093 1135 # CONFIG_ROMFS_FS is not set 1094 1136 CONFIG_INOTIFY=y ··· 1124 1164 CONFIG_PROC_KCORE=y 1125 1165 CONFIG_SYSFS=y 1126 1166 CONFIG_TMPFS=y 1127 - # CONFIG_HUGETLBFS is not set 1128 1167 # CONFIG_HUGETLB_PAGE is not set 1129 1168 CONFIG_RAMFS=y 1130 1169 # CONFIG_RELAYFS_FS is not set 1170 + # CONFIG_CONFIGFS_FS is not set 1131 1171 1132 1172 # 1133 1173 # Miscellaneous filesystems ··· 1185 1225 # 1186 1226 CONFIG_NLS=y 1187 1227 CONFIG_NLS_DEFAULT="iso8859-1" 1188 - # CONFIG_NLS_CODEPAGE_437 is not set 1228 + CONFIG_NLS_CODEPAGE_437=m 1189 1229 # CONFIG_NLS_CODEPAGE_737 is not set 1190 1230 # CONFIG_NLS_CODEPAGE_775 is not set 1191 - # CONFIG_NLS_CODEPAGE_850 is not set 1231 + CONFIG_NLS_CODEPAGE_850=m 1192 1232 # CONFIG_NLS_CODEPAGE_852 is not set 1193 1233 # CONFIG_NLS_CODEPAGE_855 is not set 1194 1234 # CONFIG_NLS_CODEPAGE_857 is not set ··· 1208 1248 # CONFIG_NLS_ISO8859_8 is not set 1209 1249 # CONFIG_NLS_CODEPAGE_1250 is not set 1210 1250 # CONFIG_NLS_CODEPAGE_1251 is not set 1211 - # CONFIG_NLS_ASCII is not set 1212 - # CONFIG_NLS_ISO8859_1 is not set 1251 + CONFIG_NLS_ASCII=m 1252 + CONFIG_NLS_ISO8859_1=m 1213 1253 # CONFIG_NLS_ISO8859_2 is not set 1214 1254 # CONFIG_NLS_ISO8859_3 is not set 1215 1255 # CONFIG_NLS_ISO8859_4 is not set ··· 1219 1259 # CONFIG_NLS_ISO8859_9 is not set 1220 1260 # CONFIG_NLS_ISO8859_13 is not set 1221 1261 # CONFIG_NLS_ISO8859_14 is not set 1222 - # CONFIG_NLS_ISO8859_15 is not set 1262 + CONFIG_NLS_ISO8859_15=m 1223 1263 # CONFIG_NLS_KOI8_R is not set 1224 1264 # CONFIG_NLS_KOI8_U is not set 1225 - # CONFIG_NLS_UTF8 is not set 1265 + CONFIG_NLS_UTF8=m 1226 1266 1227 1267 # 1228 1268 # Profiling support ··· 1234 1274 # Kernel hacking 1235 1275 # 1236 1276 # CONFIG_PRINTK_TIME is not set 1237 - CONFIG_DEBUG_KERNEL=y 1238 1277 CONFIG_MAGIC_SYSRQ=y 1278 + CONFIG_DEBUG_KERNEL=y 1239 1279 CONFIG_LOG_BUF_SHIFT=16 1240 1280 CONFIG_DETECT_SOFTLOCKUP=y 1241 1281 # CONFIG_SCHEDSTATS is not set 1242 1282 # CONFIG_DEBUG_SLAB is not set 1283 + CONFIG_DEBUG_MUTEXES=y 1243 1284 # CONFIG_DEBUG_SPINLOCK is not set 1244 1285 # CONFIG_DEBUG_SPINLOCK_SLEEP is not set 1245 1286 # CONFIG_DEBUG_KOBJECT is not set 1246 1287 # CONFIG_DEBUG_INFO is not set 1247 - # CONFIG_DEBUG_IOREMAP is not set 1248 1288 # CONFIG_DEBUG_FS is not set 1289 + # CONFIG_DEBUG_VM is not set 1290 + CONFIG_FORCED_INLINING=y 1291 + # CONFIG_RCU_TORTURE_TEST is not set 1292 + CONFIG_DEBUG_RODATA=y 1249 1293 1250 1294 # 1251 1295 # Security options
+110 -55
arch/parisc/defconfig
··· 1 1 # 2 2 # Automatically generated make config: don't edit 3 - # Linux kernel version: 2.6.14-rc5-pa1 4 - # Fri Oct 21 23:01:33 2005 3 + # Linux kernel version: 2.6.16-pa6 4 + # Sun Mar 26 19:50:07 2006 5 5 # 6 6 CONFIG_PARISC=y 7 7 CONFIG_MMU=y ··· 15 15 # Code maturity level options 16 16 # 17 17 CONFIG_EXPERIMENTAL=y 18 - CONFIG_CLEAN_COMPILE=y 19 18 CONFIG_BROKEN_ON_SMP=y 20 19 CONFIG_INIT_ENV_ARG_LIMIT=32 21 20 ··· 29 30 # CONFIG_BSD_PROCESS_ACCT is not set 30 31 CONFIG_SYSCTL=y 31 32 # CONFIG_AUDIT is not set 32 - # CONFIG_HOTPLUG is not set 33 - CONFIG_KOBJECT_UEVENT=y 34 33 CONFIG_IKCONFIG=y 35 34 CONFIG_IKCONFIG_PROC=y 36 35 CONFIG_INITRAMFS_SOURCE="" 36 + CONFIG_CC_OPTIMIZE_FOR_SIZE=y 37 37 # CONFIG_EMBEDDED is not set 38 38 CONFIG_KALLSYMS=y 39 39 # CONFIG_KALLSYMS_ALL is not set 40 40 # CONFIG_KALLSYMS_EXTRA_PASS is not set 41 + CONFIG_HOTPLUG=y 41 42 CONFIG_PRINTK=y 42 43 CONFIG_BUG=y 44 + CONFIG_ELF_CORE=y 43 45 CONFIG_BASE_FULL=y 44 46 CONFIG_FUTEX=y 45 47 CONFIG_EPOLL=y ··· 49 49 CONFIG_CC_ALIGN_LABELS=0 50 50 CONFIG_CC_ALIGN_LOOPS=0 51 51 CONFIG_CC_ALIGN_JUMPS=0 52 + CONFIG_SLAB=y 52 53 # CONFIG_TINY_SHMEM is not set 53 54 CONFIG_BASE_SMALL=0 55 + # CONFIG_SLOB is not set 54 56 55 57 # 56 58 # Loadable module support 57 59 # 58 60 # CONFIG_MODULES is not set 61 + 62 + # 63 + # Block layer 64 + # 65 + 66 + # 67 + # IO Schedulers 68 + # 69 + CONFIG_IOSCHED_NOOP=y 70 + CONFIG_IOSCHED_AS=y 71 + CONFIG_IOSCHED_DEADLINE=y 72 + CONFIG_IOSCHED_CFQ=y 73 + CONFIG_DEFAULT_AS=y 74 + # CONFIG_DEFAULT_DEADLINE is not set 75 + # CONFIG_DEFAULT_CFQ is not set 76 + # CONFIG_DEFAULT_NOOP is not set 77 + CONFIG_DEFAULT_IOSCHED="anticipatory" 59 78 60 79 # 61 80 # Processor type and features ··· 86 67 # CONFIG_PA8X00 is not set 87 68 CONFIG_PA11=y 88 69 # CONFIG_SMP is not set 70 + CONFIG_ARCH_FLATMEM_ENABLE=y 71 + CONFIG_PREEMPT_NONE=y 72 + # CONFIG_PREEMPT_VOLUNTARY is not set 73 + # CONFIG_PREEMPT is not set 89 74 # CONFIG_HZ_100 is not set 90 75 CONFIG_HZ_250=y 91 76 # CONFIG_HZ_1000 is not set ··· 101 78 CONFIG_FLATMEM=y 102 79 CONFIG_FLAT_NODE_MEM_MAP=y 103 80 # CONFIG_SPARSEMEM_STATIC is not set 104 - # CONFIG_PREEMPT is not set 81 + CONFIG_SPLIT_PTLOCK_CPUS=4096 105 82 # CONFIG_HPUX is not set 106 83 107 84 # ··· 155 132 # 156 133 # Networking options 157 134 # 135 + # CONFIG_NETDEBUG is not set 158 136 CONFIG_PACKET=y 159 137 CONFIG_PACKET_MMAP=y 160 138 CONFIG_UNIX=y ··· 198 174 # SCTP Configuration (EXPERIMENTAL) 199 175 # 200 176 # CONFIG_IP_SCTP is not set 177 + 178 + # 179 + # TIPC Configuration (EXPERIMENTAL) 180 + # 181 + # CONFIG_TIPC is not set 201 182 # CONFIG_ATM is not set 202 183 # CONFIG_BRIDGE is not set 203 184 # CONFIG_VLAN_8021Q is not set ··· 215 186 # CONFIG_NET_DIVERT is not set 216 187 # CONFIG_ECONET is not set 217 188 # CONFIG_WAN_ROUTER is not set 189 + 190 + # 191 + # QoS and/or fair queueing 192 + # 218 193 # CONFIG_NET_SCHED is not set 219 - # CONFIG_NET_CLS_ROUTE is not set 220 194 221 195 # 222 196 # Network testing ··· 260 228 # CONFIG_PARPORT_SERIAL is not set 261 229 # CONFIG_PARPORT_PC_FIFO is not set 262 230 # CONFIG_PARPORT_PC_SUPERIO is not set 231 + CONFIG_PARPORT_NOT_PC=y 263 232 CONFIG_PARPORT_GSC=y 264 233 # CONFIG_PARPORT_1284 is not set 265 234 ··· 287 254 CONFIG_BLK_DEV_RAM_SIZE=4096 288 255 CONFIG_BLK_DEV_INITRD=y 289 256 # CONFIG_CDROM_PKTCDVD is not set 290 - 291 - # 292 - # IO Schedulers 293 - # 294 - CONFIG_IOSCHED_NOOP=y 295 - CONFIG_IOSCHED_AS=y 296 - CONFIG_IOSCHED_DEADLINE=y 297 - CONFIG_IOSCHED_CFQ=y 298 257 # CONFIG_ATA_OVER_ETH is not set 299 258 300 259 # ··· 330 305 # 331 306 # SCSI low-level drivers 332 307 # 308 + # CONFIG_ISCSI_TCP is not set 333 309 # CONFIG_BLK_DEV_3W_XXXX_RAID is not set 334 310 # CONFIG_SCSI_3W_9XXX is not set 335 311 # CONFIG_SCSI_ACARD is not set ··· 357 331 CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 358 332 CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 359 333 CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 360 - # CONFIG_SCSI_SYM53C8XX_IOMAPPED is not set 334 + CONFIG_SCSI_SYM53C8XX_MMIO=y 361 335 # CONFIG_SCSI_IPR is not set 362 336 CONFIG_SCSI_ZALON=y 363 337 CONFIG_SCSI_NCR53C8XX_DEFAULT_TAGS=8 ··· 366 340 # CONFIG_SCSI_NCR53C8XX_PROFILE is not set 367 341 # CONFIG_SCSI_QLOGIC_FC is not set 368 342 # CONFIG_SCSI_QLOGIC_1280 is not set 369 - CONFIG_SCSI_QLA2XXX=y 370 - # CONFIG_SCSI_QLA21XX is not set 371 - # CONFIG_SCSI_QLA22XX is not set 372 - # CONFIG_SCSI_QLA2300 is not set 373 - # CONFIG_SCSI_QLA2322 is not set 374 - # CONFIG_SCSI_QLA6312 is not set 375 - # CONFIG_SCSI_QLA24XX is not set 343 + # CONFIG_SCSI_QLA_FC is not set 376 344 # CONFIG_SCSI_LPFC is not set 377 345 # CONFIG_SCSI_SIM710 is not set 378 346 # CONFIG_SCSI_DC395x is not set ··· 491 471 # CONFIG_R8169 is not set 492 472 # CONFIG_SIS190 is not set 493 473 # CONFIG_SKGE is not set 474 + # CONFIG_SKY2 is not set 494 475 # CONFIG_SK98LIN is not set 495 476 # CONFIG_VIA_VELOCITY is not set 496 477 CONFIG_TIGON3=y ··· 583 562 # CONFIG_KEYBOARD_LKKBD is not set 584 563 # CONFIG_KEYBOARD_XTKBD is not set 585 564 # CONFIG_KEYBOARD_NEWTON is not set 586 - CONFIG_KEYBOARD_HIL_OLD=y 565 + # CONFIG_KEYBOARD_HIL_OLD is not set 587 566 CONFIG_KEYBOARD_HIL=y 588 567 CONFIG_INPUT_MOUSE=y 589 568 # CONFIG_MOUSE_PS2 is not set 590 569 # CONFIG_MOUSE_SERIAL is not set 591 570 # CONFIG_MOUSE_VSXXXAA is not set 592 - # CONFIG_MOUSE_HIL is not set 571 + CONFIG_MOUSE_HIL=y 593 572 CONFIG_INPUT_JOYSTICK=y 594 573 # CONFIG_JOYSTICK_ANALOG is not set 595 574 # CONFIG_JOYSTICK_A3D is not set ··· 649 628 CONFIG_SERIAL_8250=y 650 629 CONFIG_SERIAL_8250_CONSOLE=y 651 630 CONFIG_SERIAL_8250_NR_UARTS=13 631 + CONFIG_SERIAL_8250_RUNTIME_UARTS=4 652 632 CONFIG_SERIAL_8250_EXTENDED=y 653 633 CONFIG_SERIAL_8250_MANY_PORTS=y 654 634 CONFIG_SERIAL_8250_SHARE_IRQ=y ··· 697 675 # TPM devices 698 676 # 699 677 # CONFIG_TCG_TPM is not set 678 + # CONFIG_TELCLOCK is not set 700 679 701 680 # 702 681 # I2C support 703 682 # 704 683 # CONFIG_I2C is not set 684 + 685 + # 686 + # SPI support 687 + # 688 + # CONFIG_SPI is not set 689 + # CONFIG_SPI_MASTER is not set 705 690 706 691 # 707 692 # Dallas's 1-wire bus ··· 720 691 # 721 692 CONFIG_HWMON=y 722 693 # CONFIG_HWMON_VID is not set 694 + # CONFIG_SENSORS_F71805F is not set 723 695 # CONFIG_HWMON_DEBUG_CHIP is not set 724 696 725 697 # ··· 748 718 CONFIG_FB_CFB_FILLRECT=y 749 719 CONFIG_FB_CFB_COPYAREA=y 750 720 CONFIG_FB_CFB_IMAGEBLIT=y 751 - CONFIG_FB_SOFT_CURSOR=y 752 721 # CONFIG_FB_MACMODES is not set 753 722 # CONFIG_FB_MODE_HELPERS is not set 754 723 # CONFIG_FB_TILEBLITTING is not set ··· 757 728 # CONFIG_FB_ASILIANT is not set 758 729 # CONFIG_FB_IMSTT is not set 759 730 CONFIG_FB_STI=y 731 + # CONFIG_FB_S1D13XXX is not set 760 732 # CONFIG_FB_NVIDIA is not set 761 733 # CONFIG_FB_RIVA is not set 762 734 # CONFIG_FB_MATROX is not set ··· 771 741 # CONFIG_FB_KYRO is not set 772 742 # CONFIG_FB_3DFX is not set 773 743 # CONFIG_FB_VOODOO1 is not set 774 - # CONFIG_FB_CYBLA is not set 775 744 # CONFIG_FB_TRIDENT is not set 776 - # CONFIG_FB_S1D13XXX is not set 777 745 # CONFIG_FB_VIRTUAL is not set 778 746 779 747 # ··· 781 753 CONFIG_DUMMY_CONSOLE_COLUMNS=160 782 754 CONFIG_DUMMY_CONSOLE_ROWS=64 783 755 CONFIG_FRAMEBUFFER_CONSOLE=y 756 + # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set 784 757 CONFIG_STI_CONSOLE=y 785 - # CONFIG_FONTS is not set 786 - CONFIG_FONT_8x8=y 758 + CONFIG_FONTS=y 759 + # CONFIG_FONT_8x8 is not set 787 760 CONFIG_FONT_8x16=y 761 + # CONFIG_FONT_6x11 is not set 762 + # CONFIG_FONT_7x14 is not set 763 + # CONFIG_FONT_PEARL_8x8 is not set 764 + # CONFIG_FONT_ACORN_8x8 is not set 765 + # CONFIG_FONT_MINI_4x6 is not set 766 + # CONFIG_FONT_SUN8x16 is not set 767 + # CONFIG_FONT_SUN12x22 is not set 768 + # CONFIG_FONT_10x18 is not set 788 769 789 770 # 790 771 # Logo configuration 791 772 # 792 - # CONFIG_LOGO is not set 773 + CONFIG_LOGO=y 774 + # CONFIG_LOGO_LINUX_MONO is not set 775 + # CONFIG_LOGO_LINUX_VGA16 is not set 776 + # CONFIG_LOGO_LINUX_CLUT224 is not set 777 + CONFIG_LOGO_PARISC_CLUT224=y 793 778 # CONFIG_BACKLIGHT_LCD_SUPPORT is not set 794 779 795 780 # ··· 822 781 CONFIG_SND_MIXER_OSS=y 823 782 CONFIG_SND_PCM_OSS=y 824 783 CONFIG_SND_SEQUENCER_OSS=y 784 + # CONFIG_SND_DYNAMIC_MINORS is not set 785 + CONFIG_SND_SUPPORT_OLD_API=y 825 786 # CONFIG_SND_VERBOSE_PRINTK is not set 826 787 # CONFIG_SND_DEBUG is not set 827 788 828 789 # 829 790 # Generic devices 830 791 # 792 + CONFIG_SND_AC97_CODEC=y 793 + CONFIG_SND_AC97_BUS=y 831 794 # CONFIG_SND_DUMMY is not set 832 795 # CONFIG_SND_VIRMIDI is not set 833 796 # CONFIG_SND_MTPAV is not set 834 797 # CONFIG_SND_SERIAL_U16550 is not set 835 798 # CONFIG_SND_MPU401 is not set 836 - CONFIG_SND_AC97_CODEC=y 837 - CONFIG_SND_AC97_BUS=y 838 799 839 800 # 840 801 # PCI devices 841 802 # 803 + CONFIG_SND_AD1889=y 804 + # CONFIG_SND_AD1889_OPL3 is not set 842 805 # CONFIG_SND_ALI5451 is not set 843 806 # CONFIG_SND_ATIIXP is not set 844 807 # CONFIG_SND_ATIIXP_MODEM is not set ··· 851 806 # CONFIG_SND_AU8830 is not set 852 807 # CONFIG_SND_AZT3328 is not set 853 808 # CONFIG_SND_BT87X is not set 854 - # CONFIG_SND_CS46XX is not set 809 + # CONFIG_SND_CA0106 is not set 810 + # CONFIG_SND_CMIPCI is not set 855 811 # CONFIG_SND_CS4281 is not set 812 + # CONFIG_SND_CS46XX is not set 856 813 # CONFIG_SND_EMU10K1 is not set 857 814 # CONFIG_SND_EMU10K1X is not set 858 - # CONFIG_SND_CA0106 is not set 859 - # CONFIG_SND_KORG1212 is not set 860 - # CONFIG_SND_MIXART is not set 861 - # CONFIG_SND_NM256 is not set 862 - # CONFIG_SND_RME32 is not set 863 - # CONFIG_SND_RME96 is not set 864 - # CONFIG_SND_RME9652 is not set 865 - # CONFIG_SND_HDSP is not set 866 - # CONFIG_SND_HDSPM is not set 867 - # CONFIG_SND_TRIDENT is not set 868 - # CONFIG_SND_YMFPCI is not set 869 - CONFIG_SND_AD1889=y 870 - # CONFIG_SND_AD1889_OPL3 is not set 871 - # CONFIG_SND_CMIPCI is not set 872 815 # CONFIG_SND_ENS1370 is not set 873 816 # CONFIG_SND_ENS1371 is not set 874 817 # CONFIG_SND_ES1938 is not set 875 818 # CONFIG_SND_ES1968 is not set 876 - # CONFIG_SND_MAESTRO3 is not set 877 819 # CONFIG_SND_FM801 is not set 820 + # CONFIG_SND_HDA_INTEL is not set 821 + # CONFIG_SND_HDSP is not set 822 + # CONFIG_SND_HDSPM is not set 878 823 # CONFIG_SND_ICE1712 is not set 879 824 # CONFIG_SND_ICE1724 is not set 880 825 # CONFIG_SND_INTEL8X0 is not set 881 826 # CONFIG_SND_INTEL8X0M is not set 827 + # CONFIG_SND_KORG1212 is not set 828 + # CONFIG_SND_MAESTRO3 is not set 829 + # CONFIG_SND_MIXART is not set 830 + # CONFIG_SND_NM256 is not set 831 + # CONFIG_SND_PCXHR is not set 832 + # CONFIG_SND_RME32 is not set 833 + # CONFIG_SND_RME96 is not set 834 + # CONFIG_SND_RME9652 is not set 882 835 # CONFIG_SND_SONICVIBES is not set 836 + # CONFIG_SND_TRIDENT is not set 883 837 # CONFIG_SND_VIA82XX is not set 884 838 # CONFIG_SND_VIA82XX_MODEM is not set 885 839 # CONFIG_SND_VX222 is not set 886 - # CONFIG_SND_HDA_INTEL is not set 840 + # CONFIG_SND_YMFPCI is not set 887 841 888 842 # 889 843 # USB devices ··· 932 888 # USB Device Class drivers 933 889 # 934 890 # CONFIG_OBSOLETE_OSS_USB_DRIVER is not set 935 - # CONFIG_USB_BLUETOOTH_TTY is not set 936 891 # CONFIG_USB_ACM is not set 937 892 # CONFIG_USB_PRINTER is not set 938 893 939 894 # 940 - # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' may also be needed; see USB_STORAGE Help for more information 895 + # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' 896 + # 897 + 898 + # 899 + # may also be needed; see USB_STORAGE Help for more information 941 900 # 942 901 # CONFIG_USB_STORAGE is not set 902 + # CONFIG_USB_LIBUSUAL is not set 943 903 944 904 # 945 905 # USB Input Devices ··· 966 918 # CONFIG_USB_YEALINK is not set 967 919 # CONFIG_USB_XPAD is not set 968 920 # CONFIG_USB_ATI_REMOTE is not set 921 + # CONFIG_USB_ATI_REMOTE2 is not set 969 922 # CONFIG_USB_KEYSPAN_REMOTE is not set 970 923 # CONFIG_USB_APPLETOUCH is not set 971 924 ··· 1043 994 # CONFIG_INFINIBAND is not set 1044 995 1045 996 # 1046 - # SN Devices 997 + # EDAC - error detection and reporting (RAS) (EXPERIMENTAL) 1047 998 # 1048 999 1049 1000 # ··· 1060 1011 # CONFIG_JFS_FS is not set 1061 1012 # CONFIG_FS_POSIX_ACL is not set 1062 1013 # CONFIG_XFS_FS is not set 1014 + # CONFIG_OCFS2_FS is not set 1063 1015 # CONFIG_MINIX_FS is not set 1064 1016 # CONFIG_ROMFS_FS is not set 1065 1017 CONFIG_INOTIFY=y ··· 1095 1045 # CONFIG_HUGETLB_PAGE is not set 1096 1046 CONFIG_RAMFS=y 1097 1047 # CONFIG_RELAYFS_FS is not set 1048 + # CONFIG_CONFIGFS_FS is not set 1098 1049 1099 1050 # 1100 1051 # Miscellaneous filesystems ··· 1202 1151 # Kernel hacking 1203 1152 # 1204 1153 # CONFIG_PRINTK_TIME is not set 1205 - CONFIG_DEBUG_KERNEL=y 1206 1154 CONFIG_MAGIC_SYSRQ=y 1155 + CONFIG_DEBUG_KERNEL=y 1207 1156 CONFIG_LOG_BUF_SHIFT=15 1208 1157 CONFIG_DETECT_SOFTLOCKUP=y 1209 1158 # CONFIG_SCHEDSTATS is not set 1210 1159 # CONFIG_DEBUG_SLAB is not set 1160 + CONFIG_DEBUG_MUTEXES=y 1211 1161 # CONFIG_DEBUG_SPINLOCK is not set 1212 1162 # CONFIG_DEBUG_SPINLOCK_SLEEP is not set 1213 1163 # CONFIG_DEBUG_KOBJECT is not set 1214 1164 # CONFIG_DEBUG_INFO is not set 1215 - # CONFIG_DEBUG_IOREMAP is not set 1216 1165 # CONFIG_DEBUG_FS is not set 1166 + # CONFIG_DEBUG_VM is not set 1167 + CONFIG_FORCED_INLINING=y 1168 + # CONFIG_RCU_TORTURE_TEST is not set 1169 + CONFIG_DEBUG_RODATA=y 1217 1170 1218 1171 # 1219 1172 # Security options
+3 -3
arch/parisc/kernel/cache.c
··· 89 89 if (pfn_valid(page_to_pfn(page)) && page_mapping(page) && 90 90 test_bit(PG_dcache_dirty, &page->flags)) { 91 91 92 - flush_kernel_dcache_page(page_address(page)); 92 + flush_kernel_dcache_page(page); 93 93 clear_bit(PG_dcache_dirty, &page->flags); 94 94 } 95 95 } ··· 278 278 return; 279 279 } 280 280 281 - flush_kernel_dcache_page(page_address(page)); 281 + flush_kernel_dcache_page(page); 282 282 283 283 if (!mapping) 284 284 return; ··· 317 317 318 318 /* Defined in arch/parisc/kernel/pacache.S */ 319 319 EXPORT_SYMBOL(flush_kernel_dcache_range_asm); 320 - EXPORT_SYMBOL(flush_kernel_dcache_page); 320 + EXPORT_SYMBOL(flush_kernel_dcache_page_asm); 321 321 EXPORT_SYMBOL(flush_data_cache_local); 322 322 EXPORT_SYMBOL(flush_kernel_icache_range_asm); 323 323
+39 -6
arch/parisc/kernel/entry.S
··· 563 563 extrd,u,*= \pte,_PAGE_GATEWAY_BIT+32,1,%r0 564 564 depd %r0,11,2,\prot /* If Gateway, Set PL2 to 0 */ 565 565 566 - /* Get rid of prot bits and convert to page addr for iitlbt */ 566 + /* Get rid of prot bits and convert to page addr for iitlbt and idtlbt */ 567 567 568 568 depd %r0,63,PAGE_SHIFT,\pte 569 - extrd,u \pte,56,32,\pte 569 + extrd,s \pte,(63-PAGE_SHIFT)+(63-58),64-PAGE_SHIFT,\pte 570 570 .endm 571 571 572 572 /* Identical macro to make_insert_tlb above, except it ··· 584 584 585 585 /* Get rid of prot bits and convert to page addr for iitlba */ 586 586 587 - depi 0,31,12,\pte 587 + depi 0,31,PAGE_SHIFT,\pte 588 588 extru \pte,24,25,\pte 589 589 590 590 .endm ··· 1014 1014 nop 1015 1015 nop 1016 1016 1017 + #ifndef CONFIG_PREEMPT 1018 + # define intr_do_preempt intr_restore 1019 + #endif /* !CONFIG_PREEMPT */ 1020 + 1017 1021 .import schedule,code 1018 1022 intr_do_resched: 1019 - /* Only do reschedule if we are returning to user space */ 1023 + /* Only call schedule on return to userspace. If we're returning 1024 + * to kernel space, we may schedule if CONFIG_PREEMPT, otherwise 1025 + * we jump back to intr_restore. 1026 + */ 1020 1027 LDREG PT_IASQ0(%r16), %r20 1021 - CMPIB= 0,%r20,intr_restore /* backward */ 1028 + CMPIB= 0, %r20, intr_do_preempt 1022 1029 nop 1023 1030 LDREG PT_IASQ1(%r16), %r20 1024 - CMPIB= 0,%r20,intr_restore /* backward */ 1031 + CMPIB= 0, %r20, intr_do_preempt 1025 1032 nop 1026 1033 1027 1034 #ifdef CONFIG_64BIT ··· 1044 1037 #endif 1045 1038 ldo R%intr_check_sig(%r2), %r2 1046 1039 1040 + /* preempt the current task on returning to kernel 1041 + * mode from an interrupt, iff need_resched is set, 1042 + * and preempt_count is 0. otherwise, we continue on 1043 + * our merry way back to the current running task. 1044 + */ 1045 + #ifdef CONFIG_PREEMPT 1046 + .import preempt_schedule_irq,code 1047 + intr_do_preempt: 1048 + rsm PSW_SM_I, %r0 /* disable interrupts */ 1049 + 1050 + /* current_thread_info()->preempt_count */ 1051 + mfctl %cr30, %r1 1052 + LDREG TI_PRE_COUNT(%r1), %r19 1053 + CMPIB<> 0, %r19, intr_restore /* if preempt_count > 0 */ 1054 + nop /* prev insn branched backwards */ 1055 + 1056 + /* check if we interrupted a critical path */ 1057 + LDREG PT_PSW(%r16), %r20 1058 + bb,<,n %r20, 31 - PSW_SM_I, intr_restore 1059 + nop 1060 + 1061 + BL preempt_schedule_irq, %r2 1062 + nop 1063 + 1064 + b intr_restore /* ssm PSW_SM_I done by intr_restore */ 1065 + #endif /* CONFIG_PREEMPT */ 1047 1066 1048 1067 .import do_signal,code 1049 1068 intr_do_signal:
+2 -2
arch/parisc/kernel/pacache.S
··· 621 621 622 622 .procend 623 623 624 - .export flush_kernel_dcache_page 624 + .export flush_kernel_dcache_page_asm 625 625 626 - flush_kernel_dcache_page: 626 + flush_kernel_dcache_page_asm: 627 627 .proc 628 628 .callinfo NO_CALLS 629 629 .entry
-19
arch/parisc/kernel/parisc_ksyms.c
··· 30 30 #include <linux/syscalls.h> 31 31 32 32 #include <linux/string.h> 33 - EXPORT_SYMBOL(memchr); 34 - EXPORT_SYMBOL(memcmp); 35 - EXPORT_SYMBOL(memmove); 36 - EXPORT_SYMBOL(memscan); 37 33 EXPORT_SYMBOL(memset); 38 - EXPORT_SYMBOL(strcat); 39 - EXPORT_SYMBOL(strchr); 40 - EXPORT_SYMBOL(strcmp); 41 - EXPORT_SYMBOL(strcpy); 42 - EXPORT_SYMBOL(strlen); 43 - EXPORT_SYMBOL(strncat); 44 - EXPORT_SYMBOL(strncmp); 45 - EXPORT_SYMBOL(strncpy); 46 - EXPORT_SYMBOL(strnlen); 47 - EXPORT_SYMBOL(strrchr); 48 - EXPORT_SYMBOL(strstr); 49 34 EXPORT_SYMBOL(strpbrk); 50 35 51 36 #include <asm/atomic.h> ··· 67 82 #endif 68 83 69 84 #include <asm/io.h> 70 - EXPORT_SYMBOL(__ioremap); 71 - EXPORT_SYMBOL(iounmap); 72 85 EXPORT_SYMBOL(memcpy_toio); 73 86 EXPORT_SYMBOL(memcpy_fromio); 74 87 EXPORT_SYMBOL(memset_io); 75 88 76 89 #include <asm/unistd.h> 77 - EXPORT_SYMBOL(sys_open); 78 90 EXPORT_SYMBOL(sys_lseek); 79 - EXPORT_SYMBOL(sys_read); 80 91 EXPORT_SYMBOL(sys_write); 81 92 82 93 #include <asm/semaphore.h>
+2 -3
arch/parisc/kernel/pdc_chassis.c
··· 5 5 * Copyright (C) 2002-2004 Thibaut VARENE <varenet@parisc-linux.org> 6 6 * 7 7 * This program is free software; you can redistribute it and/or modify 8 - * it under the terms of the GNU General Public License as published by 9 - * the Free Software Foundation; either version 2 of the License, or 10 - * (at your option) any later version. 8 + * it under the terms of the GNU General Public License, version 2, as 9 + * published by the Free Software Foundation. 11 10 * 12 11 * This program is distributed in the hope that it will be useful, 13 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
+1 -1
arch/parisc/kernel/perf.c
··· 805 805 return -1; 806 806 } 807 807 808 - runway = ioremap(cpu_device->hpa.start, 4096); 808 + runway = ioremap_nocache(cpu_device->hpa.start, 4096); 809 809 810 810 /* Merge intrigue bits into Runway STATUS 0 */ 811 811 tmp64 = __raw_readq(runway + RUNWAY_STATUS) & 0xffecfffffffffffful;
+1 -1
arch/parisc/kernel/syscall_table.S
··· 287 287 ENTRY_SAME(chown) /* 180 */ 288 288 /* setsockopt() used by iptables: SO_SET_REPLACE/SO_SET_ADD_COUNTERS */ 289 289 ENTRY_COMP(setsockopt) 290 - ENTRY_SAME(getsockopt) 290 + ENTRY_COMP(getsockopt) 291 291 ENTRY_COMP(sendmsg) 292 292 ENTRY_COMP(recvmsg) 293 293 ENTRY_SAME(semop) /* 185 */
-4
arch/parisc/lib/iomap.c
··· 263 263 264 264 const struct iomap_ops *iomap_ops[8] = { 265 265 [0] = &ioport_ops, 266 - #ifdef CONFIG_DEBUG_IOREMAP 267 - [6] = &iomem_ops, 268 - #else 269 266 [7] = &iomem_ops 270 - #endif 271 267 }; 272 268 273 269
+3 -4
arch/parisc/mm/init.c
··· 1013 1013 #ifdef CONFIG_BLK_DEV_INITRD 1014 1014 void free_initrd_mem(unsigned long start, unsigned long end) 1015 1015 { 1016 - #if 0 1017 - if (start < end) 1018 - printk(KERN_INFO "Freeing initrd memory: %ldk freed\n", (end - start) >> 10); 1016 + if (start >= end) 1017 + return; 1018 + printk(KERN_INFO "Freeing initrd memory: %ldk freed\n", (end - start) >> 10); 1019 1019 for (; start < end; start += PAGE_SIZE) { 1020 1020 ClearPageReserved(virt_to_page(start)); 1021 1021 init_page_count(virt_to_page(start)); ··· 1023 1023 num_physpages++; 1024 1024 totalram_pages++; 1025 1025 } 1026 - #endif 1027 1026 } 1028 1027 #endif
+11 -47
arch/parisc/mm/ioremap.c
··· 72 72 return 0; 73 73 } 74 74 75 - #if USE_HPPA_IOREMAP 76 75 static int 77 76 remap_area_pages(unsigned long address, unsigned long phys_addr, 78 77 unsigned long size, unsigned long flags) ··· 113 114 114 115 return error; 115 116 } 116 - #endif /* USE_HPPA_IOREMAP */ 117 - 118 - #ifdef CONFIG_DEBUG_IOREMAP 119 - static unsigned long last = 0; 120 - 121 - void gsc_bad_addr(unsigned long addr) 122 - { 123 - if (time_after(jiffies, last + HZ*10)) { 124 - printk("gsc_foo() called with bad address 0x%lx\n", addr); 125 - dump_stack(); 126 - last = jiffies; 127 - } 128 - } 129 - EXPORT_SYMBOL(gsc_bad_addr); 130 - 131 - void __raw_bad_addr(const volatile void __iomem *addr) 132 - { 133 - if (time_after(jiffies, last + HZ*10)) { 134 - printk("__raw_foo() called with bad address 0x%p\n", addr); 135 - dump_stack(); 136 - last = jiffies; 137 - } 138 - } 139 - EXPORT_SYMBOL(__raw_bad_addr); 140 - #endif 141 117 142 118 /* 143 119 * Generic mapping function (not visible outside): ··· 128 154 */ 129 155 void __iomem * __ioremap(unsigned long phys_addr, unsigned long size, unsigned long flags) 130 156 { 131 - #if !(USE_HPPA_IOREMAP) 132 - 133 - unsigned long end = phys_addr + size - 1; 134 - /* Support EISA addresses */ 135 - if ((phys_addr >= 0x00080000 && end < 0x000fffff) 136 - || (phys_addr >= 0x00500000 && end < 0x03bfffff)) { 137 - phys_addr |= 0xfc000000; 138 - } 139 - 140 - #ifdef CONFIG_DEBUG_IOREMAP 141 - return (void __iomem *)(phys_addr - (0x1UL << NYBBLE_SHIFT)); 142 - #else 143 - return (void __iomem *)phys_addr; 144 - #endif 145 - 146 - #else 147 157 void *addr; 148 158 struct vm_struct *area; 149 159 unsigned long offset, last_addr; 160 + 161 + #ifdef CONFIG_EISA 162 + unsigned long end = phys_addr + size - 1; 163 + /* Support EISA addresses */ 164 + if ((phys_addr >= 0x00080000 && end < 0x000fffff) || 165 + (phys_addr >= 0x00500000 && end < 0x03bfffff)) { 166 + phys_addr |= F_EXTEND(0xfc000000); 167 + } 168 + #endif 150 169 151 170 /* Don't allow wraparound or zero size */ 152 171 last_addr = phys_addr + size - 1; ··· 184 217 } 185 218 186 219 return (void __iomem *) (offset + (char *)addr); 187 - #endif 188 220 } 221 + EXPORT_SYMBOL(__ioremap); 189 222 190 223 void iounmap(void __iomem *addr) 191 224 { 192 - #if !(USE_HPPA_IOREMAP) 193 - return; 194 - #else 195 225 if (addr > high_memory) 196 226 return vfree((void *) (PAGE_MASK & (unsigned long __force) addr)); 197 - #endif 198 227 } 228 + EXPORT_SYMBOL(iounmap);
+30 -26
drivers/input/keyboard/hil_kbd.c
··· 66 66 static char hil_language[][16] = { HIL_LOCALE_MAP }; 67 67 68 68 struct hil_kbd { 69 - struct input_dev dev; 69 + struct input_dev *dev; 70 70 struct serio *serio; 71 71 72 72 /* Input buffer and index for packets from HIL bus. */ ··· 86 86 /* Process a complete packet after transfer from the HIL */ 87 87 static void hil_kbd_process_record(struct hil_kbd *kbd) 88 88 { 89 - struct input_dev *dev = &kbd->dev; 89 + struct input_dev *dev = kbd->dev; 90 90 hil_packet *data = kbd->data; 91 91 hil_packet p; 92 92 int idx, i, cnt; ··· 240 240 return; 241 241 } 242 242 243 - input_unregister_device(&kbd->dev); 244 243 serio_close(serio); 244 + input_unregister_device(kbd->dev); 245 245 kfree(kbd); 246 246 } 247 247 ··· 251 251 uint8_t did, *idd; 252 252 int i; 253 253 254 - kbd = kmalloc(sizeof(*kbd), GFP_KERNEL); 254 + kbd = kzalloc(sizeof(*kbd), GFP_KERNEL); 255 255 if (!kbd) 256 256 return -ENOMEM; 257 - memset(kbd, 0, sizeof(struct hil_kbd)); 257 + 258 + kbd->dev = input_allocate_device(); 259 + if (!kbd->dev) goto bail1; 260 + kbd->dev->private = kbd; 258 261 259 262 if (serio_open(serio, drv)) goto bail0; 260 263 261 264 serio_set_drvdata(serio, kbd); 262 265 kbd->serio = serio; 263 - kbd->dev.private = kbd; 264 266 265 267 init_MUTEX_LOCKED(&(kbd->sem)); 266 268 ··· 304 302 did, hil_language[did & HIL_IDD_DID_TYPE_KB_LANG_MASK]); 305 303 break; 306 304 default: 307 - goto bail1; 305 + goto bail2; 308 306 } 309 307 310 308 if(HIL_IDD_NUM_BUTTONS(idd) || HIL_IDD_NUM_AXES_PER_SET(*idd)) { 311 309 printk(KERN_INFO PREFIX "keyboards only, no combo devices supported.\n"); 312 - goto bail1; 310 + goto bail2; 313 311 } 314 312 315 313 316 - kbd->dev.evbit[0] = BIT(EV_KEY) | BIT(EV_REP); 317 - kbd->dev.ledbit[0] = BIT(LED_NUML) | BIT(LED_CAPSL) | BIT(LED_SCROLLL); 318 - kbd->dev.keycodemax = HIL_KEYCODES_SET1_TBLSIZE; 319 - kbd->dev.keycodesize = sizeof(hil_kbd_set1[0]); 320 - kbd->dev.keycode = hil_kbd_set1; 321 - kbd->dev.name = strlen(kbd->rnm) ? kbd->rnm : HIL_GENERIC_NAME; 322 - kbd->dev.phys = "hpkbd/input0"; /* XXX */ 314 + kbd->dev->evbit[0] = BIT(EV_KEY) | BIT(EV_REP); 315 + kbd->dev->ledbit[0] = BIT(LED_NUML) | BIT(LED_CAPSL) | BIT(LED_SCROLLL); 316 + kbd->dev->keycodemax = HIL_KEYCODES_SET1_TBLSIZE; 317 + kbd->dev->keycodesize = sizeof(hil_kbd_set1[0]); 318 + kbd->dev->keycode = hil_kbd_set1; 319 + kbd->dev->name = strlen(kbd->rnm) ? kbd->rnm : HIL_GENERIC_NAME; 320 + kbd->dev->phys = "hpkbd/input0"; /* XXX */ 323 321 324 - kbd->dev.id.bustype = BUS_HIL; 325 - kbd->dev.id.vendor = PCI_VENDOR_ID_HP; 326 - kbd->dev.id.product = 0x0001; /* TODO: get from kbd->rsc */ 327 - kbd->dev.id.version = 0x0100; /* TODO: get from kbd->rsc */ 328 - kbd->dev.dev = &serio->dev; 322 + kbd->dev->id.bustype = BUS_HIL; 323 + kbd->dev->id.vendor = PCI_VENDOR_ID_HP; 324 + kbd->dev->id.product = 0x0001; /* TODO: get from kbd->rsc */ 325 + kbd->dev->id.version = 0x0100; /* TODO: get from kbd->rsc */ 326 + kbd->dev->dev = &serio->dev; 329 327 330 328 for (i = 0; i < 128; i++) { 331 - set_bit(hil_kbd_set1[i], kbd->dev.keybit); 332 - set_bit(hil_kbd_set3[i], kbd->dev.keybit); 329 + set_bit(hil_kbd_set1[i], kbd->dev->keybit); 330 + set_bit(hil_kbd_set3[i], kbd->dev->keybit); 333 331 } 334 - clear_bit(0, kbd->dev.keybit); 332 + clear_bit(0, kbd->dev->keybit); 335 333 336 - input_register_device(&kbd->dev); 334 + input_register_device(kbd->dev); 337 335 printk(KERN_INFO "input: %s, ID: %d\n", 338 - kbd->dev.name, did); 336 + kbd->dev->name, did); 339 337 340 338 serio->write(serio, 0); 341 339 serio->write(serio, 0); ··· 345 343 up(&(kbd->sem)); 346 344 347 345 return 0; 348 - bail1: 346 + bail2: 349 347 serio_close(serio); 348 + bail1: 349 + input_free_device(kbd->dev); 350 350 bail0: 351 351 kfree(kbd); 352 352 serio_set_drvdata(serio, NULL);
+26 -21
drivers/input/keyboard/hilkbd.c
··· 3 3 * 4 4 * Copyright (C) 1998 Philip Blundell <philb@gnu.org> 5 5 * Copyright (C) 1999 Matthew Wilcox <willy@bofh.ai> 6 - * Copyright (C) 1999-2003 Helge Deller <deller@gmx.de> 6 + * Copyright (C) 1999-2006 Helge Deller <deller@gmx.de> 7 7 * 8 8 * Very basic HP Human Interface Loop (HIL) driver. 9 9 * This driver handles the keyboard on HP300 (m68k) and on some ··· 90 90 91 91 /* HIL structure */ 92 92 static struct { 93 - struct input_dev dev; 93 + struct input_dev *dev; 94 94 95 95 unsigned int curdev; 96 96 ··· 117 117 down = (hil_dev.data[1] & 1) == 0; 118 118 scode = hil_dev.data[1] >> 1; 119 119 key = hphilkeyb_keycode[scode]; 120 - input_report_key(&hil_dev.dev, key, down); 120 + input_report_key(hil_dev.dev, key, down); 121 121 break; 122 122 } 123 123 hil_dev.curdev = 0; ··· 207 207 unsigned int i, kbid; 208 208 wait_queue_head_t hil_wait; 209 209 210 - if (hil_dev.dev.id.bustype) { 210 + if (hil_dev.dev) { 211 211 return -ENODEV; /* already initialized */ 212 212 } 213 + 214 + hil_dev.dev = input_allocate_device(); 215 + if (!hil_dev.dev) 216 + return -ENOMEM; 217 + hil_dev.dev->private = &hil_dev; 213 218 214 219 #if defined(CONFIG_HP300) 215 220 if (!hwreg_present((void *)(HILBASE + HIL_DATA))) ··· 252 247 c = 0; 253 248 hil_do(HIL_WRITEKBDSADR, &c, 1); 254 249 255 - init_input_dev(&hil_dev.dev); 256 - 257 250 for (i = 0; i < HIL_KEYCODES_SET1_TBLSIZE; i++) 258 251 if (hphilkeyb_keycode[i] != KEY_RESERVED) 259 - set_bit(hphilkeyb_keycode[i], hil_dev.dev.keybit); 252 + set_bit(hphilkeyb_keycode[i], hil_dev.dev->keybit); 260 253 261 - hil_dev.dev.evbit[0] = BIT(EV_KEY) | BIT(EV_REP); 262 - hil_dev.dev.ledbit[0] = BIT(LED_NUML) | BIT(LED_CAPSL) | BIT(LED_SCROLLL); 263 - hil_dev.dev.keycodemax = HIL_KEYCODES_SET1_TBLSIZE; 264 - hil_dev.dev.keycodesize = sizeof(hphilkeyb_keycode[0]); 265 - hil_dev.dev.keycode = hphilkeyb_keycode; 266 - hil_dev.dev.name = "HIL keyboard"; 267 - hil_dev.dev.phys = "hpkbd/input0"; 254 + hil_dev.dev->evbit[0] = BIT(EV_KEY) | BIT(EV_REP); 255 + hil_dev.dev->ledbit[0] = BIT(LED_NUML) | BIT(LED_CAPSL) | BIT(LED_SCROLLL); 256 + hil_dev.dev->keycodemax = HIL_KEYCODES_SET1_TBLSIZE; 257 + hil_dev.dev->keycodesize = sizeof(hphilkeyb_keycode[0]); 258 + hil_dev.dev->keycode = hphilkeyb_keycode; 259 + hil_dev.dev->name = "HIL keyboard"; 260 + hil_dev.dev->phys = "hpkbd/input0"; 268 261 269 - hil_dev.dev.id.bustype = BUS_HIL; 270 - hil_dev.dev.id.vendor = PCI_VENDOR_ID_HP; 271 - hil_dev.dev.id.product = 0x0001; 272 - hil_dev.dev.id.version = 0x0010; 262 + hil_dev.dev->id.bustype = BUS_HIL; 263 + hil_dev.dev->id.vendor = PCI_VENDOR_ID_HP; 264 + hil_dev.dev->id.product = 0x0001; 265 + hil_dev.dev->id.version = 0x0010; 273 266 274 - input_register_device(&hil_dev.dev); 267 + input_register_device(hil_dev.dev); 275 268 printk(KERN_INFO "input: %s, ID %d at 0x%08lx (irq %d) found and attached\n", 276 - hil_dev.dev.name, kbid, HILBASE, HIL_IRQ); 269 + hil_dev.dev->name, kbid, HILBASE, HIL_IRQ); 277 270 278 271 return 0; 279 272 } ··· 332 329 /* Turn off interrupts */ 333 330 hil_do(HIL_INTOFF, NULL, 0); 334 331 335 - input_unregister_device(&hil_dev.dev); 332 + input_unregister_device(hil_dev.dev); 333 + 334 + hil_dev.dev = NULL; 336 335 337 336 #if defined(CONFIG_PARISC) 338 337 unregister_parisc_driver(&hil_driver);
+47 -43
drivers/input/mouse/hil_ptr.c
··· 55 55 #define HIL_PTR_MAX_LENGTH 16 56 56 57 57 struct hil_ptr { 58 - struct input_dev dev; 58 + struct input_dev *dev; 59 59 struct serio *serio; 60 60 61 61 /* Input buffer and index for packets from HIL bus. */ ··· 79 79 /* Process a complete packet after transfer from the HIL */ 80 80 static void hil_ptr_process_record(struct hil_ptr *ptr) 81 81 { 82 - struct input_dev *dev = &ptr->dev; 82 + struct input_dev *dev = ptr->dev; 83 83 hil_packet *data = ptr->data; 84 84 hil_packet p; 85 85 int idx, i, cnt, laxis; ··· 148 148 if (absdev) { 149 149 val = lo + (hi<<8); 150 150 #ifdef TABLET_AUTOADJUST 151 - if (val < ptr->dev.absmin[ABS_X + i]) 152 - ptr->dev.absmin[ABS_X + i] = val; 153 - if (val > ptr->dev.absmax[ABS_X + i]) 154 - ptr->dev.absmax[ABS_X + i] = val; 151 + if (val < dev->absmin[ABS_X + i]) 152 + dev->absmin[ABS_X + i] = val; 153 + if (val > dev->absmax[ABS_X + i]) 154 + dev->absmax[ABS_X + i] = val; 155 155 #endif 156 - if (i%3) val = ptr->dev.absmax[ABS_X + i] - val; 156 + if (i%3) val = dev->absmax[ABS_X + i] - val; 157 157 input_report_abs(dev, ABS_X + i, val); 158 158 } else { 159 159 val = (int) (((int8_t)lo) | ((int8_t)hi<<8)); ··· 233 233 return; 234 234 } 235 235 236 - input_unregister_device(&ptr->dev); 237 236 serio_close(serio); 237 + input_unregister_device(ptr->dev); 238 238 kfree(ptr); 239 239 } 240 240 241 241 static int hil_ptr_connect(struct serio *serio, struct serio_driver *driver) 242 242 { 243 - struct hil_ptr *ptr; 244 - char *txt; 245 - unsigned int i, naxsets, btntype; 246 - uint8_t did, *idd; 243 + struct hil_ptr *ptr; 244 + char *txt; 245 + unsigned int i, naxsets, btntype; 246 + uint8_t did, *idd; 247 247 248 - if (!(ptr = kmalloc(sizeof(struct hil_ptr), GFP_KERNEL))) return -ENOMEM; 249 - memset(ptr, 0, sizeof(struct hil_ptr)); 248 + if (!(ptr = kzalloc(sizeof(struct hil_ptr), GFP_KERNEL))) 249 + return -ENOMEM; 250 250 251 - if (serio_open(serio, driver)) goto bail0; 251 + ptr->dev = input_allocate_device(); 252 + if (!ptr->dev) goto bail0; 253 + ptr->dev->private = ptr; 254 + 255 + if (serio_open(serio, driver)) goto bail1; 252 256 253 257 serio_set_drvdata(serio, ptr); 254 258 ptr->serio = serio; 255 - ptr->dev.private = ptr; 256 259 257 260 init_MUTEX_LOCKED(&(ptr->sem)); 258 261 ··· 286 283 287 284 up(&(ptr->sem)); 288 285 289 - init_input_dev(&ptr->dev); 290 286 did = ptr->idd[0]; 291 287 idd = ptr->idd + 1; 292 288 txt = "unknown"; 293 289 if ((did & HIL_IDD_DID_TYPE_MASK) == HIL_IDD_DID_TYPE_REL) { 294 - ptr->dev.evbit[0] = BIT(EV_REL); 290 + ptr->dev->evbit[0] = BIT(EV_REL); 295 291 txt = "relative"; 296 292 } 297 293 298 294 if ((did & HIL_IDD_DID_TYPE_MASK) == HIL_IDD_DID_TYPE_ABS) { 299 - ptr->dev.evbit[0] = BIT(EV_ABS); 295 + ptr->dev->evbit[0] = BIT(EV_ABS); 300 296 txt = "absolute"; 301 297 } 302 - if (!ptr->dev.evbit[0]) { 303 - goto bail1; 298 + if (!ptr->dev->evbit[0]) { 299 + goto bail2; 304 300 } 305 301 306 302 ptr->nbtn = HIL_IDD_NUM_BUTTONS(idd); 307 - if (ptr->nbtn) ptr->dev.evbit[0] |= BIT(EV_KEY); 303 + if (ptr->nbtn) ptr->dev->evbit[0] |= BIT(EV_KEY); 308 304 309 305 naxsets = HIL_IDD_NUM_AXSETS(*idd); 310 306 ptr->naxes = HIL_IDD_NUM_AXES_PER_SET(*idd); ··· 327 325 btntype = BTN_MOUSE; 328 326 329 327 for (i = 0; i < ptr->nbtn; i++) { 330 - set_bit(btntype | i, ptr->dev.keybit); 328 + set_bit(btntype | i, ptr->dev->keybit); 331 329 ptr->btnmap[i] = btntype | i; 332 330 } 333 331 ··· 339 337 340 338 if ((did & HIL_IDD_DID_TYPE_MASK) == HIL_IDD_DID_TYPE_REL) { 341 339 for (i = 0; i < ptr->naxes; i++) { 342 - set_bit(REL_X + i, ptr->dev.relbit); 340 + set_bit(REL_X + i, ptr->dev->relbit); 343 341 } 344 342 for (i = 3; (i < ptr->naxes + 3) && (naxsets > 1); i++) { 345 - set_bit(REL_X + i, ptr->dev.relbit); 343 + set_bit(REL_X + i, ptr->dev->relbit); 346 344 } 347 345 } else { 348 346 for (i = 0; i < ptr->naxes; i++) { 349 - set_bit(ABS_X + i, ptr->dev.absbit); 350 - ptr->dev.absmin[ABS_X + i] = 0; 351 - ptr->dev.absmax[ABS_X + i] = 347 + set_bit(ABS_X + i, ptr->dev->absbit); 348 + ptr->dev->absmin[ABS_X + i] = 0; 349 + ptr->dev->absmax[ABS_X + i] = 352 350 HIL_IDD_AXIS_MAX((ptr->idd + 1), i); 353 351 } 354 352 for (i = 3; (i < ptr->naxes + 3) && (naxsets > 1); i++) { 355 - set_bit(ABS_X + i, ptr->dev.absbit); 356 - ptr->dev.absmin[ABS_X + i] = 0; 357 - ptr->dev.absmax[ABS_X + i] = 353 + set_bit(ABS_X + i, ptr->dev->absbit); 354 + ptr->dev->absmin[ABS_X + i] = 0; 355 + ptr->dev->absmax[ABS_X + i] = 358 356 HIL_IDD_AXIS_MAX((ptr->idd + 1), (i - 3)); 359 357 } 360 358 #ifdef TABLET_AUTOADJUST 361 359 for (i = 0; i < ABS_MAX; i++) { 362 - int diff = ptr->dev.absmax[ABS_X + i] / 10; 363 - ptr->dev.absmin[ABS_X + i] += diff; 364 - ptr->dev.absmax[ABS_X + i] -= diff; 360 + int diff = ptr->dev->absmax[ABS_X + i] / 10; 361 + ptr->dev->absmin[ABS_X + i] += diff; 362 + ptr->dev->absmax[ABS_X + i] -= diff; 365 363 } 366 364 #endif 367 365 } 368 366 369 - ptr->dev.name = strlen(ptr->rnm) ? ptr->rnm : HIL_GENERIC_NAME; 367 + ptr->dev->name = strlen(ptr->rnm) ? ptr->rnm : HIL_GENERIC_NAME; 370 368 371 - ptr->dev.id.bustype = BUS_HIL; 372 - ptr->dev.id.vendor = PCI_VENDOR_ID_HP; 373 - ptr->dev.id.product = 0x0001; /* TODO: get from ptr->rsc */ 374 - ptr->dev.id.version = 0x0100; /* TODO: get from ptr->rsc */ 375 - ptr->dev.dev = &serio->dev; 369 + ptr->dev->id.bustype = BUS_HIL; 370 + ptr->dev->id.vendor = PCI_VENDOR_ID_HP; 371 + ptr->dev->id.product = 0x0001; /* TODO: get from ptr->rsc */ 372 + ptr->dev->id.version = 0x0100; /* TODO: get from ptr->rsc */ 373 + ptr->dev->dev = &serio->dev; 376 374 377 - input_register_device(&ptr->dev); 375 + input_register_device(ptr->dev); 378 376 printk(KERN_INFO "input: %s (%s), ID: %d\n", 379 - ptr->dev.name, 377 + ptr->dev->name, 380 378 (btntype == BTN_MOUSE) ? "HIL mouse":"HIL tablet or touchpad", 381 379 did); 382 380 383 381 return 0; 384 - bail1: 382 + bail2: 385 383 serio_close(serio); 384 + bail1: 385 + input_free_device(ptr->dev); 386 386 bail0: 387 387 kfree(ptr); 388 388 serio_set_drvdata(serio, NULL);
+2 -2
drivers/input/serio/gscps2.c
··· 1 1 /* 2 2 * drivers/input/serio/gscps2.c 3 3 * 4 - * Copyright (c) 2004 Helge Deller <deller@gmx.de> 4 + * Copyright (c) 2004-2006 Helge Deller <deller@gmx.de> 5 5 * Copyright (c) 2002 Laurent Canet <canetl@esiee.fr> 6 6 * Copyright (c) 2002 Thibaut Varene <varenet@parisc-linux.org> 7 7 * ··· 354 354 memset(serio, 0, sizeof(struct serio)); 355 355 ps2port->port = serio; 356 356 ps2port->padev = dev; 357 - ps2port->addr = ioremap(hpa, GSC_STATUS + 4); 357 + ps2port->addr = ioremap_nocache(hpa, GSC_STATUS + 4); 358 358 spin_lock_init(&ps2port->lock); 359 359 360 360 gscps2_reset(ps2port);
+1 -1
drivers/parisc/ccio-dma.c
··· 1560 1560 *ioc_p = ioc; 1561 1561 1562 1562 ioc->hw_path = dev->hw_path; 1563 - ioc->ioc_regs = ioremap(dev->hpa.start, 4096); 1563 + ioc->ioc_regs = ioremap_nocache(dev->hpa.start, 4096); 1564 1564 ccio_ioc_init(ioc); 1565 1565 ccio_init_resources(ioc); 1566 1566 hppa_dma_ops = &ccio_ops;
+3 -2
drivers/parisc/dino.c
··· 5 5 ** (c) Copyright 1999 SuSE GmbH 6 6 ** (c) Copyright 1999,2000 Hewlett-Packard Company 7 7 ** (c) Copyright 2000 Grant Grundler 8 + ** (c) Copyright 2006 Helge Deller 8 9 ** 9 10 ** This program is free software; you can redistribute it and/or modify 10 11 ** it under the terms of the GNU General Public License as published by ··· 786 785 if((io_addr & (1 << i)) == 0) 787 786 continue; 788 787 789 - start = (unsigned long)(signed int)(0xf0000000 | (i << 23)); 788 + start = F_EXTEND(0xf0000000UL) | (i << 23); 790 789 end = start + 8 * 1024 * 1024 - 1; 791 790 792 791 DBG("DINO RANGE %d is at 0x%lx-0x%lx\n", count, ··· 997 996 } 998 997 999 998 dino_dev->hba.dev = dev; 1000 - dino_dev->hba.base_addr = ioremap(hpa, 4096); 999 + dino_dev->hba.base_addr = ioremap_nocache(hpa, 4096); 1001 1000 dino_dev->hba.lmmio_space_offset = 0; /* CPU addrs == bus addrs */ 1002 1001 spin_lock_init(&dino_dev->dinosaur_pen); 1003 1002 dino_dev->hba.iommu = ccio_get_iommu(dev);
+1 -1
drivers/parisc/eisa.c
··· 366 366 eisa_dev.eeprom_addr = MIRAGE_EEPROM_BASE_ADDR; 367 367 } 368 368 } 369 - eisa_eeprom_addr = ioremap(eisa_dev.eeprom_addr, HPEE_MAX_LENGTH); 369 + eisa_eeprom_addr = ioremap_nocache(eisa_dev.eeprom_addr, HPEE_MAX_LENGTH); 370 370 result = eisa_enumerator(eisa_dev.eeprom_addr, &eisa_dev.hba.io_space, 371 371 &eisa_dev.hba.lmmio_space); 372 372 init_eisa_pic();
+1 -1
drivers/parisc/iosapic.c
··· 879 879 return NULL; 880 880 } 881 881 882 - isi->addr = ioremap(hpa, 4096); 882 + isi->addr = ioremap_nocache(hpa, 4096); 883 883 isi->isi_hpa = hpa; 884 884 isi->isi_version = iosapic_rd_version(isi); 885 885 isi->isi_num_vectors = IOSAPIC_IRDT_MAX_ENTRY(isi->isi_version) + 1;
+4 -4
drivers/parisc/lba_pci.c
··· 1213 1213 ** Postable I/O port space is per PCI host adapter. 1214 1214 ** base of 64MB PIOP region 1215 1215 */ 1216 - lba_dev->iop_base = ioremap(p->start, 64 * 1024 * 1024); 1216 + lba_dev->iop_base = ioremap_nocache(p->start, 64 * 1024 * 1024); 1217 1217 1218 1218 sprintf(lba_dev->hba.io_name, "PCI%02lx Ports", 1219 1219 lba_dev->hba.bus_num.start); ··· 1525 1525 u32 func_class; 1526 1526 void *tmp_obj; 1527 1527 char *version; 1528 - void __iomem *addr = ioremap(dev->hpa.start, 4096); 1528 + void __iomem *addr = ioremap_nocache(dev->hpa.start, 4096); 1529 1529 1530 1530 /* Read HW Rev First */ 1531 1531 func_class = READ_REG32(addr + LBA_FCLASS); ··· 1619 1619 } else { 1620 1620 if (!astro_iop_base) { 1621 1621 /* Sprockets PDC uses NPIOP region */ 1622 - astro_iop_base = ioremap(LBA_PORT_BASE, 64 * 1024); 1622 + astro_iop_base = ioremap_nocache(LBA_PORT_BASE, 64 * 1024); 1623 1623 pci_port = &lba_astro_port_ops; 1624 1624 } 1625 1625 ··· 1700 1700 */ 1701 1701 void lba_set_iregs(struct parisc_device *lba, u32 ibase, u32 imask) 1702 1702 { 1703 - void __iomem * base_addr = ioremap(lba->hpa.start, 4096); 1703 + void __iomem * base_addr = ioremap_nocache(lba->hpa.start, 4096); 1704 1704 1705 1705 imask <<= 2; /* adjust for hints - 2 more bits */ 1706 1706
+2 -3
drivers/parisc/pdc_stable.c
··· 4 4 * Copyright (C) 2005-2006 Thibaut VARENE <varenet@parisc-linux.org> 5 5 * 6 6 * This program is free software; you can redistribute it and/or modify 7 - * it under the terms of the GNU General Public License as published by 8 - * the Free Software Foundation; either version 2 of the License, or 9 - * (at your option) any later version. 7 + * it under the terms of the GNU General Public License, version 2, as 8 + * published by the Free Software Foundation. 10 9 * 11 10 * This program is distributed in the hope that it will be useful, 12 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
+3 -3
drivers/parisc/sba_iommu.c
··· 1642 1642 ** 1643 1643 **************************************************************************/ 1644 1644 1645 - static void __iomem *ioc_remap(struct sba_device *sba_dev, int offset) 1645 + static void __iomem *ioc_remap(struct sba_device *sba_dev, unsigned int offset) 1646 1646 { 1647 - return ioremap(sba_dev->dev->hpa.start + offset, SBA_FUNC_SIZE); 1647 + return ioremap_nocache(sba_dev->dev->hpa.start + offset, SBA_FUNC_SIZE); 1648 1648 } 1649 1649 1650 1650 static void sba_hw_init(struct sba_device *sba_dev) ··· 2040 2040 u32 func_class; 2041 2041 int i; 2042 2042 char *version; 2043 - void __iomem *sba_addr = ioremap(dev->hpa.start, SBA_FUNC_SIZE); 2043 + void __iomem *sba_addr = ioremap_nocache(dev->hpa.start, SBA_FUNC_SIZE); 2044 2044 struct proc_dir_entry *info_entry, *bitmap_entry, *root; 2045 2045 2046 2046 sba_dump_ranges(sba_addr);
+19 -27
drivers/parisc/superio.c
··· 12 12 * (C) Copyright 2001 John Marvin <jsm fc hp com> 13 13 * (C) Copyright 2003 Grant Grundler <grundler parisc-linux org> 14 14 * (C) Copyright 2005 Kyle McMartin <kyle@parisc-linux.org> 15 + * (C) Copyright 2006 Helge Deller <deller@gmx.de> 15 16 * 16 17 * This program is free software; you can redistribute it and/or 17 18 * modify it under the terms of the GNU General Public License as ··· 389 388 return local_irq; 390 389 } 391 390 392 - static struct uart_port serial[] = { 393 - { 394 - .iotype = UPIO_PORT, 395 - .line = 0, 396 - .type = PORT_16550A, 397 - .uartclk = 115200*16, 398 - .fifosize = 16, 399 - }, 400 - { 401 - .iotype = UPIO_PORT, 402 - .line = 1, 403 - .type = PORT_16550A, 404 - .uartclk = 115200*16, 405 - .fifosize = 16, 406 - } 407 - }; 408 - 409 391 static void __devinit superio_serial_init(void) 410 392 { 411 393 #ifdef CONFIG_SERIAL_8250 412 394 int retval; 413 - 414 - serial[0].iobase = sio_dev.sp1_base; 415 - serial[0].irq = SP1_IRQ; 416 - spin_lock_init(&serial[0].lock); 395 + struct uart_port serial_port; 417 396 418 - retval = early_serial_setup(&serial[0]); 397 + memset(&serial_port, 0, sizeof(serial_port)); 398 + serial_port.iotype = UPIO_PORT; 399 + serial_port.type = PORT_16550A; 400 + serial_port.uartclk = 115200*16; 401 + serial_port.fifosize = 16; 402 + spin_lock_init(&serial_port.lock); 403 + 404 + /* serial port #1 */ 405 + serial_port.iobase = sio_dev.sp1_base; 406 + serial_port.irq = SP1_IRQ; 407 + serial_port.line = 0; 408 + retval = early_serial_setup(&serial_port); 419 409 if (retval < 0) { 420 410 printk(KERN_WARNING PFX "Register Serial #0 failed.\n"); 421 411 return; 422 412 } 423 413 424 - serial[1].iobase = sio_dev.sp2_base; 425 - serial[1].irq = SP2_IRQ; 426 - spin_lock_init(&serial[1].lock); 427 - retval = early_serial_setup(&serial[1]); 428 - 414 + /* serial port #2 */ 415 + serial_port.iobase = sio_dev.sp2_base; 416 + serial_port.irq = SP2_IRQ; 417 + serial_port.line = 1; 418 + retval = early_serial_setup(&serial_port); 429 419 if (retval < 0) 430 420 printk(KERN_WARNING PFX "Register Serial #1 failed.\n"); 431 421 #endif /* CONFIG_SERIAL_8250 */
+1 -1
drivers/scsi/lasi700.c
··· 112 112 113 113 hostdata->dev = &dev->dev; 114 114 dma_set_mask(&dev->dev, DMA_32BIT_MASK); 115 - hostdata->base = ioremap(base, 0x100); 115 + hostdata->base = ioremap_nocache(base, 0x100); 116 116 hostdata->differential = 0; 117 117 118 118 if (dev->id.sversion == LASI_700_SVERSION) {
+1 -1
drivers/scsi/zalon.c
··· 88 88 struct gsc_irq gsc_irq; 89 89 u32 zalon_vers; 90 90 int error = -ENODEV; 91 - void __iomem *zalon = ioremap(dev->hpa.start, 4096); 91 + void __iomem *zalon = ioremap_nocache(dev->hpa.start, 4096); 92 92 void __iomem *io_port = zalon + GSC_SCSI_ZALON_OFFSET; 93 93 static int unit = 0; 94 94 struct Scsi_Host *host;
+8 -7
drivers/serial/8250_gsc.c
··· 52 52 address += 0x800; 53 53 } 54 54 55 - memset(&port, 0, sizeof(struct uart_port)); 56 - port.mapbase = address; 57 - port.irq = dev->irq; 58 - port.iotype = UPIO_MEM; 59 - port.flags = UPF_IOREMAP | UPF_BOOT_AUTOCONF; 60 - port.uartclk = LASI_BASE_BAUD * 16; 61 - port.dev = &dev->dev; 55 + memset(&port, 0, sizeof(port)); 56 + port.iotype = UPIO_MEM; 57 + port.uartclk = LASI_BASE_BAUD * 16; 58 + port.mapbase = address; 59 + port.membase = ioremap_nocache(address, 16); 60 + port.irq = dev->irq; 61 + port.flags = UPF_BOOT_AUTOCONF; 62 + port.dev = &dev->dev; 62 63 63 64 err = serial8250_register_port(&port); 64 65 if (err < 0) {
+2 -2
drivers/serial/mux.c
··· 51 51 #define MUX_BREAK(status) ((status & 0xF000) == 0x2000) 52 52 53 53 #define MUX_NR 256 54 - static unsigned int port_cnt = 0; 54 + static unsigned int port_cnt __read_mostly; 55 55 static struct uart_port mux_ports[MUX_NR]; 56 56 57 57 static struct uart_driver mux_driver = { ··· 461 461 port->iobase = 0; 462 462 port->mapbase = dev->hpa.start + MUX_OFFSET + 463 463 (i * MUX_LINE_OFFSET); 464 - port->membase = ioremap(port->mapbase, MUX_LINE_OFFSET); 464 + port->membase = ioremap_nocache(port->mapbase, MUX_LINE_OFFSET); 465 465 port->iotype = UPIO_MEM; 466 466 port->type = PORT_MUX; 467 467 port->irq = NO_IRQ;
+2 -16
drivers/video/console/sticore.c
··· 373 373 glob_cfg->save_addr)); 374 374 375 375 /* dump extended cfg */ 376 - cfg = PTR_STI(glob_cfg->ext_ptr); 376 + cfg = PTR_STI((unsigned long)glob_cfg->ext_ptr); 377 377 DPRINTK(( KERN_INFO 378 378 "monitor %d\n" 379 379 "in friendly mode: %d\n" ··· 453 453 sti->regions_phys[i] = 454 454 REGION_OFFSET_TO_PHYS(sti->regions[i], newhpa); 455 455 456 - /* remap virtually */ 457 - /* FIXME: add BTLB support if btlb==1 */ 458 456 len = sti->regions[i].region_desc.length * 4096; 459 - 460 - /* XXX: Enabling IOREMAP debugging causes a crash, so we must be passing 461 - * a virtual address to something expecting a physical address that doesn't 462 - * go through a readX macro */ 463 - #if 0 464 - if (len) 465 - glob_cfg->region_ptrs[i] = (unsigned long) ( 466 - sti->regions[i].region_desc.cache ? 467 - ioremap(sti->regions_phys[i], len) : 468 - ioremap_nocache(sti->regions_phys[i], len) ); 469 - #else 470 457 if (len) 471 458 glob_cfg->region_ptrs[i] = sti->regions_phys[i]; 472 - #endif 473 459 474 - DPRINTK(("region #%d: phys %08lx, virt %08x, len=%lukB, " 460 + DPRINTK(("region #%d: phys %08lx, region_ptr %08x, len=%lukB, " 475 461 "btlb=%d, sysonly=%d, cache=%d, last=%d\n", 476 462 i, sti->regions_phys[i], glob_cfg->region_ptrs[i], 477 463 len/1024,
+11 -26
drivers/video/sticore.h
··· 34 34 * for them to fix it and steal their solution. prumpf 35 35 */ 36 36 37 + #include <asm/io.h> 38 + 37 39 #define STI_WAIT 1 38 40 39 - #include <asm/io.h> /* for USE_HPPA_IOREMAP */ 40 - 41 - #if USE_HPPA_IOREMAP 42 - 43 - #define STI_PTR(p) (p) 44 - #define PTR_STI(p) (p) 45 - static inline int STI_CALL( unsigned long func, 46 - void *flags, void *inptr, void *outptr, void *glob_cfg ) 47 - { 48 - int (*f)(void *,void *,void *,void *); 49 - f = (void*)func; 50 - return f(flags, inptr, outptr, glob_cfg); 51 - } 52 - 53 - #else /* !USE_HPPA_IOREMAP */ 54 - 55 41 #define STI_PTR(p) ( virt_to_phys(p) ) 56 - #define PTR_STI(p) ( phys_to_virt((long)p) ) 57 - #define STI_CALL(func, flags, inptr, outptr, glob_cfg) \ 58 - ({ \ 59 - pdc_sti_call( func, (unsigned long)STI_PTR(flags), \ 60 - (unsigned long)STI_PTR(inptr), \ 61 - (unsigned long)STI_PTR(outptr), \ 62 - (unsigned long)STI_PTR(glob_cfg)); \ 42 + #define PTR_STI(p) ( phys_to_virt((unsigned long)p) ) 43 + #define STI_CALL(func, flags, inptr, outptr, glob_cfg) \ 44 + ({ \ 45 + pdc_sti_call( func, STI_PTR(flags), \ 46 + STI_PTR(inptr), \ 47 + STI_PTR(outptr), \ 48 + STI_PTR(glob_cfg)); \ 63 49 }) 64 - 65 - #endif /* USE_HPPA_IOREMAP */ 66 50 67 51 68 52 #define sti_onscreen_x(sti) (sti->glob_cfg->onscreen_x) ··· 336 352 struct sti_conf_outptr outptr; /* configuration */ 337 353 struct sti_conf_outptr_ext outptr_ext; 338 354 339 - /* PCI data structures (pg. 17ff from sti.pdf) */ 340 355 struct pci_dev *pd; 356 + 357 + /* PCI data structures (pg. 17ff from sti.pdf) */ 341 358 u8 rm_entry[16]; /* pci region mapper array == pci config space offset */ 342 359 343 360 /* pointer to the fb_info where this STI device is used */
+6 -85
drivers/video/stifb.c
··· 3 3 * Low level Frame buffer driver for HP workstations with 4 4 * STI (standard text interface) video firmware. 5 5 * 6 - * Copyright (C) 2001-2005 Helge Deller <deller@gmx.de> 6 + * Copyright (C) 2001-2006 Helge Deller <deller@gmx.de> 7 7 * Portions Copyright (C) 2001 Thomas Bogendoerfer <tsbogend@alpha.franken.de> 8 8 * 9 9 * Based on: ··· 514 514 SETUP_HW(fb); 515 515 WRITE_BYTE(1, fb, REG_16b1); 516 516 517 - fb_memset(fb->info.fix.smem_start, 0xff, 517 + fb_memset((void*)fb->info.fix.smem_start, 0xff, 518 518 fb->info.var.yres*fb->info.fix.line_length); 519 519 520 520 CRX24_SET_OVLY_MASK(fb); ··· 908 908 909 909 /* ------------------- driver specific functions --------------------------- */ 910 910 911 - #define TMPBUFLEN 2048 912 - 913 - static ssize_t 914 - stifb_read(struct file *file, char *buf, size_t count, loff_t *ppos) 915 - { 916 - unsigned long p = *ppos; 917 - struct inode *inode = file->f_dentry->d_inode; 918 - int fbidx = iminor(inode); 919 - struct fb_info *info = registered_fb[fbidx]; 920 - char tmpbuf[TMPBUFLEN]; 921 - 922 - if (!info || ! info->screen_base) 923 - return -ENODEV; 924 - 925 - if (p >= info->fix.smem_len) 926 - return 0; 927 - if (count >= info->fix.smem_len) 928 - count = info->fix.smem_len; 929 - if (count + p > info->fix.smem_len) 930 - count = info->fix.smem_len - p; 931 - if (count > sizeof(tmpbuf)) 932 - count = sizeof(tmpbuf); 933 - if (count) { 934 - char *base_addr; 935 - 936 - base_addr = info->screen_base; 937 - memcpy_fromio(&tmpbuf, base_addr+p, count); 938 - count -= copy_to_user(buf, &tmpbuf, count); 939 - if (!count) 940 - return -EFAULT; 941 - *ppos += count; 942 - } 943 - return count; 944 - } 945 - 946 - static ssize_t 947 - stifb_write(struct file *file, const char *buf, size_t count, loff_t *ppos) 948 - { 949 - struct inode *inode = file->f_dentry->d_inode; 950 - int fbidx = iminor(inode); 951 - struct fb_info *info = registered_fb[fbidx]; 952 - unsigned long p = *ppos; 953 - size_t c; 954 - int err; 955 - char tmpbuf[TMPBUFLEN]; 956 - 957 - if (!info || !info->screen_base) 958 - return -ENODEV; 959 - 960 - if (p > info->fix.smem_len) 961 - return -ENOSPC; 962 - if (count >= info->fix.smem_len) 963 - count = info->fix.smem_len; 964 - err = 0; 965 - if (count + p > info->fix.smem_len) { 966 - count = info->fix.smem_len - p; 967 - err = -ENOSPC; 968 - } 969 - 970 - p += (unsigned long)info->screen_base; 971 - c = count; 972 - while (c) { 973 - int len = c > sizeof(tmpbuf) ? sizeof(tmpbuf) : c; 974 - err = -EFAULT; 975 - if (copy_from_user(&tmpbuf, buf, len)) 976 - break; 977 - memcpy_toio(p, &tmpbuf, len); 978 - c -= len; 979 - p += len; 980 - buf += len; 981 - *ppos += len; 982 - } 983 - if (count-c) 984 - return (count-c); 985 - return err; 986 - } 987 - 988 911 static int 989 912 stifb_setcolreg(u_int regno, u_int red, u_int green, 990 913 u_int blue, u_int transp, struct fb_info *info) ··· 1060 1137 1061 1138 static struct fb_ops stifb_ops = { 1062 1139 .owner = THIS_MODULE, 1063 - .fb_read = stifb_read, 1064 - .fb_write = stifb_write, 1065 1140 .fb_setcolreg = stifb_setcolreg, 1066 1141 .fb_blank = stifb_blank, 1067 1142 .fb_fillrect = cfb_fillrect, ··· 1083 1162 char *dev_name; 1084 1163 int bpp, xres, yres; 1085 1164 1086 - fb = kmalloc(sizeof(*fb), GFP_ATOMIC); 1165 + fb = kzalloc(sizeof(*fb), GFP_ATOMIC); 1087 1166 if (!fb) { 1088 1167 printk(KERN_ERR "stifb: Could not allocate stifb structure\n"); 1089 1168 return -ENODEV; ··· 1092 1171 info = &fb->info; 1093 1172 1094 1173 /* set struct to a known state */ 1095 - memset(fb, 0, sizeof(*fb)); 1096 1174 fix = &info->fix; 1097 1175 var = &info->var; 1098 1176 ··· 1154 1234 case S9000_ID_TOMCAT: /* Dual CRX, behaves else like a CRX */ 1155 1235 /* FIXME: TomCat supports two heads: 1156 1236 * fb.iobase = REGION_BASE(fb_info,3); 1157 - * fb.screen_base = (void*) REGION_BASE(fb_info,2); 1237 + * fb.screen_base = ioremap_nocache(REGION_BASE(fb_info,2),xxx); 1158 1238 * for now we only support the left one ! */ 1159 1239 xres = fb->ngle_rom.x_size_visible; 1160 1240 yres = fb->ngle_rom.y_size_visible; ··· 1247 1327 1248 1328 strcpy(fix->id, "stifb"); 1249 1329 info->fbops = &stifb_ops; 1250 - info->screen_base = (void*) REGION_BASE(fb,1); 1330 + info->screen_base = ioremap_nocache(REGION_BASE(fb,1), fix->smem_len); 1331 + info->screen_size = fix->smem_len; 1251 1332 info->flags = FBINFO_DEFAULT; 1252 1333 info->pseudo_palette = &fb->pseudo_palette; 1253 1334
+3
include/asm-parisc/atomic.h
··· 210 210 211 211 #define atomic_dec_and_test(v) (atomic_dec_return(v) == 0) 212 212 213 + #define atomic_sub_and_test(i,v) (atomic_sub_return((i),(v)) == 0) 214 + 213 215 #define ATOMIC_INIT(i) ((atomic_t) { (i) }) 214 216 215 217 #define smp_mb__before_atomic_dec() smp_mb() ··· 269 267 270 268 #define atomic64_inc_and_test(v) (atomic64_inc_return(v) == 0) 271 269 #define atomic64_dec_and_test(v) (atomic64_dec_return(v) == 0) 270 + #define atomic64_sub_and_test(i,v) (atomic64_sub_return((i),(v)) == 0) 272 271 273 272 #endif /* __LP64__ */ 274 273
+1 -1
include/asm-parisc/cache.h
··· 48 48 extern void flush_kernel_icache_range_asm(unsigned long, unsigned long); 49 49 extern void flush_user_dcache_range_asm(unsigned long, unsigned long); 50 50 extern void flush_kernel_dcache_range_asm(unsigned long, unsigned long); 51 - extern void flush_kernel_dcache_page(void *); 51 + extern void flush_kernel_dcache_page_asm(void *); 52 52 extern void flush_kernel_icache_page(void *); 53 53 extern void disable_sr_hashing(void); /* turns off space register hashing */ 54 54 extern void disable_sr_hashing_asm(int); /* low level support for above */
+16 -1
include/asm-parisc/cacheflush.h
··· 62 62 #define flush_dcache_mmap_unlock(mapping) \ 63 63 write_unlock_irq(&(mapping)->tree_lock) 64 64 65 - #define flush_icache_page(vma,page) do { flush_kernel_dcache_page(page_address(page)); flush_kernel_icache_page(page_address(page)); } while (0) 65 + #define flush_icache_page(vma,page) do { flush_kernel_dcache_page(page); flush_kernel_icache_page(page_address(page)); } while (0) 66 66 67 67 #define flush_icache_range(s,e) do { flush_kernel_dcache_range_asm(s,e); flush_kernel_icache_range_asm(s,e); } while (0) 68 68 ··· 183 183 __flush_cache_page(vma, vmaddr); 184 184 185 185 } 186 + 187 + static inline void 188 + flush_anon_page(struct page *page, unsigned long vmaddr) 189 + { 190 + if (PageAnon(page)) 191 + flush_user_dcache_page(vmaddr); 192 + } 193 + #define ARCH_HAS_FLUSH_ANON_PAGE 194 + 195 + static inline void 196 + flush_kernel_dcache_page(struct page *page) 197 + { 198 + flush_kernel_dcache_page_asm(page_address(page)); 199 + } 200 + #define ARCH_HAS_FLUSH_KERNEL_DCACHE_PAGE 186 201 187 202 #ifdef CONFIG_DEBUG_RODATA 188 203 void mark_rodata_ro(void);
-95
include/asm-parisc/io.h
··· 25 25 * eg dev->hpa or 0xfee00000. 26 26 */ 27 27 28 - #ifdef CONFIG_DEBUG_IOREMAP 29 - #ifdef CONFIG_64BIT 30 - #define NYBBLE_SHIFT 60 31 - #else 32 - #define NYBBLE_SHIFT 28 33 - #endif 34 - extern void gsc_bad_addr(unsigned long addr); 35 - extern void __raw_bad_addr(const volatile void __iomem *addr); 36 - #define gsc_check_addr(addr) \ 37 - if ((addr >> NYBBLE_SHIFT) != 0xf) { \ 38 - gsc_bad_addr(addr); \ 39 - addr |= 0xfUL << NYBBLE_SHIFT; \ 40 - } 41 - #define __raw_check_addr(addr) \ 42 - if (((unsigned long)addr >> NYBBLE_SHIFT) != 0xe) \ 43 - __raw_bad_addr(addr); \ 44 - addr = (void __iomem *)((unsigned long)addr | (0xfUL << NYBBLE_SHIFT)); 45 - #else 46 - #define gsc_check_addr(addr) 47 - #define __raw_check_addr(addr) 48 - #endif 49 - 50 28 static inline unsigned char gsc_readb(unsigned long addr) 51 29 { 52 30 long flags; 53 31 unsigned char ret; 54 - 55 - gsc_check_addr(addr); 56 32 57 33 __asm__ __volatile__( 58 34 " rsm 2,%0\n" ··· 44 68 long flags; 45 69 unsigned short ret; 46 70 47 - gsc_check_addr(addr); 48 - 49 71 __asm__ __volatile__( 50 72 " rsm 2,%0\n" 51 73 " ldhx 0(%2),%1\n" ··· 57 83 { 58 84 u32 ret; 59 85 60 - gsc_check_addr(addr); 61 - 62 86 __asm__ __volatile__( 63 87 " ldwax 0(%1),%0\n" 64 88 : "=r" (ret) : "r" (addr) ); ··· 67 95 static inline unsigned long long gsc_readq(unsigned long addr) 68 96 { 69 97 unsigned long long ret; 70 - gsc_check_addr(addr); 71 98 72 99 #ifdef __LP64__ 73 100 __asm__ __volatile__( ··· 83 112 static inline void gsc_writeb(unsigned char val, unsigned long addr) 84 113 { 85 114 long flags; 86 - gsc_check_addr(addr); 87 - 88 115 __asm__ __volatile__( 89 116 " rsm 2,%0\n" 90 117 " stbs %1,0(%2)\n" ··· 93 124 static inline void gsc_writew(unsigned short val, unsigned long addr) 94 125 { 95 126 long flags; 96 - gsc_check_addr(addr); 97 - 98 127 __asm__ __volatile__( 99 128 " rsm 2,%0\n" 100 129 " sths %1,0(%2)\n" ··· 102 135 103 136 static inline void gsc_writel(unsigned int val, unsigned long addr) 104 137 { 105 - gsc_check_addr(addr); 106 - 107 138 __asm__ __volatile__( 108 139 " stwas %0,0(%1)\n" 109 140 : : "r" (val), "r" (addr) ); ··· 109 144 110 145 static inline void gsc_writeq(unsigned long long val, unsigned long addr) 111 146 { 112 - gsc_check_addr(addr); 113 - 114 147 #ifdef __LP64__ 115 148 __asm__ __volatile__( 116 149 " stda %0,0(%1)\n" ··· 143 180 144 181 extern void iounmap(void __iomem *addr); 145 182 146 - /* 147 - * USE_HPPA_IOREMAP is the magic flag to enable or disable real ioremap() 148 - * functionality. It's currently disabled because it may not work on some 149 - * machines. 150 - */ 151 - #define USE_HPPA_IOREMAP 0 152 183 153 - #if USE_HPPA_IOREMAP 154 184 static inline unsigned char __raw_readb(const volatile void __iomem *addr) 155 185 { 156 186 return (*(volatile unsigned char __force *) (addr)); ··· 177 221 { 178 222 *(volatile unsigned long long __force *) addr = b; 179 223 } 180 - #else /* !USE_HPPA_IOREMAP */ 181 - static inline unsigned char __raw_readb(const volatile void __iomem *addr) 182 - { 183 - __raw_check_addr(addr); 184 - 185 - return gsc_readb((unsigned long) addr); 186 - } 187 - static inline unsigned short __raw_readw(const volatile void __iomem *addr) 188 - { 189 - __raw_check_addr(addr); 190 - 191 - return gsc_readw((unsigned long) addr); 192 - } 193 - static inline unsigned int __raw_readl(const volatile void __iomem *addr) 194 - { 195 - __raw_check_addr(addr); 196 - 197 - return gsc_readl((unsigned long) addr); 198 - } 199 - static inline unsigned long long __raw_readq(const volatile void __iomem *addr) 200 - { 201 - __raw_check_addr(addr); 202 - 203 - return gsc_readq((unsigned long) addr); 204 - } 205 - 206 - static inline void __raw_writeb(unsigned char b, volatile void __iomem *addr) 207 - { 208 - __raw_check_addr(addr); 209 - 210 - gsc_writeb(b, (unsigned long) addr); 211 - } 212 - static inline void __raw_writew(unsigned short b, volatile void __iomem *addr) 213 - { 214 - __raw_check_addr(addr); 215 - 216 - gsc_writew(b, (unsigned long) addr); 217 - } 218 - static inline void __raw_writel(unsigned int b, volatile void __iomem *addr) 219 - { 220 - __raw_check_addr(addr); 221 - 222 - gsc_writel(b, (unsigned long) addr); 223 - } 224 - static inline void __raw_writeq(unsigned long long b, volatile void __iomem *addr) 225 - { 226 - __raw_check_addr(addr); 227 - 228 - gsc_writeq(b, (unsigned long) addr); 229 - } 230 - #endif /* !USE_HPPA_IOREMAP */ 231 224 232 225 /* readb can never be const, so use __fswab instead of le*_to_cpu */ 233 226 #define readb(addr) __raw_readb(addr)
+8 -8
include/asm-parisc/local.h
··· 4 4 #include <linux/percpu.h> 5 5 #include <asm/atomic.h> 6 6 7 - typedef atomic_t local_t; 7 + typedef atomic_long_t local_t; 8 8 9 - #define LOCAL_INIT(i) ATOMIC_INIT(i) 10 - #define local_read(v) atomic_read(v) 11 - #define local_set(v,i) atomic_set(v,i) 9 + #define LOCAL_INIT(i) ATOMIC_LONG_INIT(i) 10 + #define local_read(v) atomic_long_read(v) 11 + #define local_set(v,i) atomic_long_set(v,i) 12 12 13 - #define local_inc(v) atomic_inc(v) 14 - #define local_dec(v) atomic_dec(v) 15 - #define local_add(i, v) atomic_add(i, v) 16 - #define local_sub(i, v) atomic_sub(i, v) 13 + #define local_inc(v) atomic_long_inc(v) 14 + #define local_dec(v) atomic_long_dec(v) 15 + #define local_add(i, v) atomic_long_add(i, v) 16 + #define local_sub(i, v) atomic_long_sub(i, v) 17 17 18 18 #define __local_inc(v) ((v)->counter++) 19 19 #define __local_dec(v) ((v)->counter--)
+41 -17
include/asm-parisc/page.h
··· 26 26 copy_user_page(void *vto, void *vfrom, unsigned long vaddr, struct page *pg) 27 27 { 28 28 copy_user_page_asm(vto, vfrom); 29 - flush_kernel_dcache_page(vto); 29 + flush_kernel_dcache_page_asm(vto); 30 30 /* XXX: ppc flushes icache too, should we? */ 31 31 } 32 32 ··· 40 40 /* 41 41 * These are used to make use of C type-checking.. 42 42 */ 43 - #ifdef __LP64__ 44 - typedef struct { unsigned long pte; } pte_t; 45 - #else 46 - typedef struct { 47 - unsigned long pte; 48 - unsigned long flags; 49 - } pte_t; 43 + #define STRICT_MM_TYPECHECKS 44 + #ifdef STRICT_MM_TYPECHECKS 45 + typedef struct { unsigned long pte; 46 + #if !defined(CONFIG_64BIT) 47 + unsigned long future_flags; 48 + /* XXX: it's possible to remove future_flags and change BITS_PER_PTE_ENTRY 49 + to 2, but then strangely the identical 32bit kernel boots on a 50 + c3000(pa20), but not any longer on a 715(pa11). 51 + Still investigating... HelgeD. 52 + */ 50 53 #endif 54 + } pte_t; /* either 32 or 64bit */ 55 + 51 56 /* NOTE: even on 64 bits, these entries are __u32 because we allocate 52 57 * the pmd and pgd in ZONE_DMA (i.e. under 4GB) */ 53 58 typedef struct { __u32 pmd; } pmd_t; ··· 60 55 typedef struct { unsigned long pgprot; } pgprot_t; 61 56 62 57 #define pte_val(x) ((x).pte) 63 - #ifdef __LP64__ 64 - #define pte_flags(x) (*(__u32 *)&((x).pte)) 65 - #else 66 - #define pte_flags(x) ((x).flags) 67 - #endif 68 - 69 58 /* These do not work lvalues, so make sure we don't use them as such. */ 70 59 #define pmd_val(x) ((x).pmd + 0) 71 60 #define pgd_val(x) ((x).pgd + 0) 72 61 #define pgprot_val(x) ((x).pgprot) 73 62 74 - #define __pmd_val_set(x,n) (x).pmd = (n) 75 - #define __pgd_val_set(x,n) (x).pgd = (n) 76 - 77 63 #define __pte(x) ((pte_t) { (x) } ) 78 64 #define __pmd(x) ((pmd_t) { (x) } ) 79 65 #define __pgd(x) ((pgd_t) { (x) } ) 80 66 #define __pgprot(x) ((pgprot_t) { (x) } ) 67 + 68 + #define __pmd_val_set(x,n) (x).pmd = (n) 69 + #define __pgd_val_set(x,n) (x).pgd = (n) 70 + 71 + #else 72 + /* 73 + * .. while these make it easier on the compiler 74 + */ 75 + typedef unsigned long pte_t; 76 + typedef __u32 pmd_t; 77 + typedef __u32 pgd_t; 78 + typedef unsigned long pgprot_t; 79 + 80 + #define pte_val(x) (x) 81 + #define pmd_val(x) (x) 82 + #define pgd_val(x) (x) 83 + #define pgprot_val(x) (x) 84 + 85 + #define __pte(x) (x) 86 + #define __pmd(x) (x) 87 + #define __pgd(x) (x) 88 + #define __pgprot(x) (x) 89 + 90 + #define __pmd_val_set(x,n) (x) = (n) 91 + #define __pgd_val_set(x,n) (x) = (n) 92 + 93 + #endif /* STRICT_MM_TYPECHECKS */ 94 + 81 95 82 96 typedef struct __physmem_range { 83 97 unsigned long start_pfn;
+5
include/asm-parisc/pci.h
··· 289 289 { 290 290 } 291 291 292 + static inline void pcibios_penalize_isa_irq(int irq, int active) 293 + { 294 + /* We don't need to penalize isa irq's */ 295 + } 296 + 292 297 #endif /* __ASM_PARISC_PCI_H */
+2 -3
include/asm-parisc/pdc_chassis.h
··· 6 6 * 7 7 * 8 8 * This program is free software; you can redistribute it and/or modify 9 - * it under the terms of the GNU General Public License as published by 10 - * the Free Software Foundation; either version 2, or (at your option) 11 - * any later version. 9 + * it under the terms of the GNU General Public License, version 2, as 10 + * published by the Free Software Foundation. 12 11 * 13 12 * This program is distributed in the hope that it will be useful, 14 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
+12 -4
include/asm-parisc/spinlock.h
··· 134 134 return 1; 135 135 } 136 136 137 - static __inline__ int __raw_is_read_locked(raw_rwlock_t *rw) 137 + /* 138 + * read_can_lock - would read_trylock() succeed? 139 + * @lock: the rwlock in question. 140 + */ 141 + static __inline__ int __raw_read_can_lock(raw_rwlock_t *rw) 138 142 { 139 - return rw->counter > 0; 143 + return rw->counter >= 0; 140 144 } 141 145 142 - static __inline__ int __raw_is_write_locked(raw_rwlock_t *rw) 146 + /* 147 + * write_can_lock - would write_trylock() succeed? 148 + * @lock: the rwlock in question. 149 + */ 150 + static __inline__ int __raw_write_can_lock(raw_rwlock_t *rw) 143 151 { 144 - return rw->counter < 0; 152 + return !rw->counter; 145 153 } 146 154 147 155 #endif /* __ASM_SPINLOCK_H */
+2 -1
include/asm-parisc/thread_info.h
··· 49 49 50 50 #endif /* !__ASSEMBLY */ 51 51 52 - #define PREEMPT_ACTIVE 0x10000000 52 + #define PREEMPT_ACTIVE_BIT 28 53 + #define PREEMPT_ACTIVE (1 << PREEMPT_ACTIVE_BIT) 53 54 54 55 /* 55 56 * thread information flags
-13
lib/Kconfig.debug
··· 157 157 158 158 If unsure, say N. 159 159 160 - config DEBUG_IOREMAP 161 - bool "Enable ioremap() debugging" 162 - depends on DEBUG_KERNEL && PARISC 163 - help 164 - Enabling this option will cause the kernel to distinguish between 165 - ioremapped and physical addresses. It will print a backtrace (at 166 - most one every 10 seconds), hopefully allowing you to see which 167 - drivers need work. Fixing all these problems is a prerequisite 168 - for turning on USE_HPPA_IOREMAP. The warnings are harmless; 169 - the kernel has enough information to fix the broken drivers 170 - automatically, but we'd like to make it more efficient by not 171 - having to do that. 172 - 173 160 config DEBUG_FS 174 161 bool "Debug Filesystem" 175 162 depends on SYSFS