diff options
285 files changed, 5768 insertions, 2974 deletions
| @@ -611,8 +611,7 @@ S: USA | |||
| 611 | N: Randolph Chung | 611 | N: Randolph Chung |
| 612 | E: tausq@debian.org | 612 | E: tausq@debian.org |
| 613 | D: Linux/PA-RISC hacker | 613 | D: Linux/PA-RISC hacker |
| 614 | S: Los Altos, CA 94022 | 614 | S: Hong Kong |
| 615 | S: USA | ||
| 616 | 615 | ||
| 617 | N: Juan Jose Ciarlante | 616 | N: Juan Jose Ciarlante |
| 618 | W: http://juanjox.kernelnotes.org/ | 617 | W: http://juanjox.kernelnotes.org/ |
| @@ -3405,6 +3404,15 @@ S: Chudenicka 8 | |||
| 3405 | S: 10200 Prague 10, Hostivar | 3404 | S: 10200 Prague 10, Hostivar |
| 3406 | S: Czech Republic | 3405 | S: Czech Republic |
| 3407 | 3406 | ||
| 3407 | N: Thibaut Varene | ||
| 3408 | E: T-Bone@parisc-linux.org | ||
| 3409 | W: http://www.parisc-linux.org/ | ||
| 3410 | P: 1024D/B7D2F063 E67C 0D43 A75E 12A5 BB1C FA2F 1E32 C3DA B7D2 F063 | ||
| 3411 | D: PA-RISC port minion, PDC and GSCPS2 drivers, debuglocks and other bits | ||
| 3412 | D: Some bits in an ARM port, S1D13XXX FB driver, random patches here and there | ||
| 3413 | D: AD1889 sound driver | ||
| 3414 | S: Paris, France | ||
| 3415 | |||
| 3408 | N: Heikki Vatiainen | 3416 | N: Heikki Vatiainen |
| 3409 | E: hessu@cs.tut.fi | 3417 | E: hessu@cs.tut.fi |
| 3410 | D: Co-author of Multi-Protocol Over ATM (MPOA), some LANE hacks | 3418 | D: Co-author of Multi-Protocol Over ATM (MPOA), some LANE hacks |
diff --git a/Documentation/00-INDEX b/Documentation/00-INDEX index 433cf5e9ae04..5f7f7d7f77d2 100644 --- a/Documentation/00-INDEX +++ b/Documentation/00-INDEX | |||
| @@ -24,6 +24,8 @@ DMA-mapping.txt | |||
| 24 | - info for PCI drivers using DMA portably across all platforms. | 24 | - info for PCI drivers using DMA portably across all platforms. |
| 25 | DocBook/ | 25 | DocBook/ |
| 26 | - directory with DocBook templates etc. for kernel documentation. | 26 | - directory with DocBook templates etc. for kernel documentation. |
| 27 | HOWTO | ||
| 28 | - The process and procedures of how to do Linux kernel development. | ||
| 27 | IO-mapping.txt | 29 | IO-mapping.txt |
| 28 | - how to access I/O mapped memory from within device drivers. | 30 | - how to access I/O mapped memory from within device drivers. |
| 29 | IPMI.txt | 31 | IPMI.txt |
| @@ -256,6 +258,10 @@ specialix.txt | |||
| 256 | - info on hardware/driver for specialix IO8+ multiport serial card. | 258 | - info on hardware/driver for specialix IO8+ multiport serial card. |
| 257 | spinlocks.txt | 259 | spinlocks.txt |
| 258 | - info on using spinlocks to provide exclusive access in kernel. | 260 | - info on using spinlocks to provide exclusive access in kernel. |
| 261 | stable_api_nonsense.txt | ||
| 262 | - info on why the kernel does not have a stable in-kernel api or abi. | ||
| 263 | stable_kernel_rules.txt | ||
| 264 | - rules and procedures for the -stable kernel releases. | ||
| 259 | stallion.txt | 265 | stallion.txt |
| 260 | - info on using the Stallion multiport serial driver. | 266 | - info on using the Stallion multiport serial driver. |
| 261 | svga.txt | 267 | svga.txt |
diff --git a/Documentation/HOWTO b/Documentation/HOWTO new file mode 100644 index 000000000000..6c9e746267da --- /dev/null +++ b/Documentation/HOWTO | |||
| @@ -0,0 +1,618 @@ | |||
| 1 | HOWTO do Linux kernel development | ||
| 2 | --------------------------------- | ||
| 3 | |||
| 4 | This is the be-all, end-all document on this topic. It contains | ||
| 5 | instructions on how to become a Linux kernel developer and how to learn | ||
| 6 | to work with the Linux kernel development community. It tries to not | ||
| 7 | contain anything related to the technical aspects of kernel programming, | ||
| 8 | but will help point you in the right direction for that. | ||
| 9 | |||
| 10 | If anything in this document becomes out of date, please send in patches | ||
| 11 | to the maintainer of this file, who is listed at the bottom of the | ||
| 12 | document. | ||
| 13 | |||
| 14 | |||
| 15 | Introduction | ||
| 16 | ------------ | ||
| 17 | |||
| 18 | So, you want to learn how to become a Linux kernel developer? Or you | ||
| 19 | have been told by your manager, "Go write a Linux driver for this | ||
| 20 | device." This document's goal is to teach you everything you need to | ||
| 21 | know to achieve this by describing the process you need to go through, | ||
| 22 | and hints on how to work with the community. It will also try to | ||
| 23 | explain some of the reasons why the community works like it does. | ||
| 24 | |||
| 25 | The kernel is written mostly in C, with some architecture-dependent | ||
| 26 | parts written in assembly. A good understanding of C is required for | ||
| 27 | kernel development. Assembly (any architecture) is not required unless | ||
| 28 | you plan to do low-level development for that architecture. Though they | ||
| 29 | are not a good substitute for a solid C education and/or years of | ||
| 30 | experience, the following books are good for, if anything, reference: | ||
| 31 | - "The C Programming Language" by Kernighan and Ritchie [Prentice Hall] | ||
| 32 | - "Practical C Programming" by Steve Oualline [O'Reilly] | ||
| 33 | |||
| 34 | The kernel is written using GNU C and the GNU toolchain. While it | ||
| 35 | adheres to the ISO C89 standard, it uses a number of extensions that are | ||
| 36 | not featured in the standard. The kernel is a freestanding C | ||
| 37 | environment, with no reliance on the standard C library, so some | ||
| 38 | portions of the C standard are not supported. Arbitrary long long | ||
| 39 | divisions and floating point are not allowed. It can sometimes be | ||
| 40 | difficult to understand the assumptions the kernel has on the toolchain | ||
| 41 | and the extensions that it uses, and unfortunately there is no | ||
| 42 | definitive reference for them. Please check the gcc info pages (`info | ||
| 43 | gcc`) for some information on them. | ||
| 44 | |||
| 45 | Please remember that you are trying to learn how to work with the | ||
| 46 | existing development community. It is a diverse group of people, with | ||
| 47 | high standards for coding, style and procedure. These standards have | ||
| 48 | been created over time based on what they have found to work best for | ||
| 49 | such a large and geographically dispersed team. Try to learn as much as | ||
| 50 | possible about these standards ahead of time, as they are well | ||
| 51 | documented; do not expect people to adapt to you or your company's way | ||
| 52 | of doing things. | ||
| 53 | |||
| 54 | |||
| 55 | Legal Issues | ||
| 56 | ------------ | ||
| 57 | |||
| 58 | The Linux kernel source code is released under the GPL. Please see the | ||
| 59 | file, COPYING, in the main directory of the source tree, for details on | ||
| 60 | the license. If you have further questions about the license, please | ||
| 61 | contact a lawyer, and do not ask on the Linux kernel mailing list. The | ||
| 62 | people on the mailing lists are not lawyers, and you should not rely on | ||
| 63 | their statements on legal matters. | ||
| 64 | |||
| 65 | For common questions and answers about the GPL, please see: | ||
| 66 | http://www.gnu.org/licenses/gpl-faq.html | ||
| 67 | |||
| 68 | |||
| 69 | Documentation | ||
| 70 | ------------ | ||
| 71 | |||
| 72 | The Linux kernel source tree has a large range of documents that are | ||
| 73 | invaluable for learning how to interact with the kernel community. When | ||
| 74 | new features are added to the kernel, it is recommended that new | ||
| 75 | documentation files are also added which explain how to use the feature. | ||
| 76 | When a kernel change causes the interface that the kernel exposes to | ||
| 77 | userspace to change, it is recommended that you send the information or | ||
| 78 | a patch to the manual pages explaining the change to the manual pages | ||
| 79 | maintainer at mtk-manpages@gmx.net. | ||
| 80 | |||
| 81 | Here is a list of files that are in the kernel source tree that are | ||
| 82 | required reading: | ||
| 83 | README | ||
| 84 | This file gives a short background on the Linux kernel and describes | ||
| 85 | what is necessary to do to configure and build the kernel. People | ||
| 86 | who are new to the kernel should start here. | ||
| 87 | |||
| 88 | Documentation/Changes | ||
| 89 | This file gives a list of the minimum levels of various software | ||
| 90 | packages that are necessary to build and run the kernel | ||
| 91 | successfully. | ||
| 92 | |||
| 93 | Documentation/CodingStyle | ||
| 94 | This describes the Linux kernel coding style, and some of the | ||
| 95 | rationale behind it. All new code is expected to follow the | ||
| 96 | guidelines in this document. Most maintainers will only accept | ||
| 97 | patches if these rules are followed, and many people will only | ||
| 98 | review code if it is in the proper style. | ||
| 99 | |||
| 100 | Documentation/SubmittingPatches | ||
| 101 | Documentation/SubmittingDrivers | ||
| 102 | These files describe in explicit detail how to successfully create | ||
| 103 | and send a patch, including (but not limited to): | ||
| 104 | - Email contents | ||
| 105 | - Email format | ||
| 106 | - Who to send it to | ||
| 107 | Following these rules will not guarantee success (as all patches are | ||
| 108 | subject to scrutiny for content and style), but not following them | ||
| 109 | will almost always prevent it. | ||
| 110 | |||
| 111 | Other excellent descriptions of how to create patches properly are: | ||
| 112 | "The Perfect Patch" | ||
| 113 | http://www.zip.com.au/~akpm/linux/patches/stuff/tpp.txt | ||
| 114 | "Linux kernel patch submission format" | ||
| 115 | http://linux.yyz.us/patch-format.html | ||
| 116 | |||
| 117 | Documentation/stable_api_nonsense.txt | ||
| 118 | This file describes the rationale behind the conscious decision to | ||
| 119 | not have a stable API within the kernel, including things like: | ||
| 120 | - Subsystem shim-layers (for compatibility?) | ||
| 121 | - Driver portability between Operating Systems. | ||
| 122 | - Mitigating rapid change within the kernel source tree (or | ||
| 123 | preventing rapid change) | ||
| 124 | This document is crucial for understanding the Linux development | ||
| 125 | philosophy and is very important for people moving to Linux from | ||
| 126 | development on other Operating Systems. | ||
| 127 | |||
| 128 | Documentation/SecurityBugs | ||
| 129 | If you feel you have found a security problem in the Linux kernel, | ||
| 130 | please follow the steps in this document to help notify the kernel | ||
| 131 | developers, and help solve the issue. | ||
| 132 | |||
| 133 | Documentation/ManagementStyle | ||
| 134 | This document describes how Linux kernel maintainers operate and the | ||
| 135 | shared ethos behind their methodologies. This is important reading | ||
| 136 | for anyone new to kernel development (or anyone simply curious about | ||
| 137 | it), as it resolves a lot of common misconceptions and confusion | ||
| 138 | about the unique behavior of kernel maintainers. | ||
| 139 | |||
| 140 | Documentation/stable_kernel_rules.txt | ||
| 141 | This file describes the rules on how the stable kernel releases | ||
| 142 | happen, and what to do if you want to get a change into one of these | ||
| 143 | releases. | ||
| 144 | |||
| 145 | Documentation/kernel-docs.txt | ||
| 146 | A list of external documentation that pertains to kernel | ||
| 147 | development. Please consult this list if you do not find what you | ||
| 148 | are looking for within the in-kernel documentation. | ||
| 149 | |||
| 150 | Documentation/applying-patches.txt | ||
| 151 | A good introduction describing exactly what a patch is and how to | ||
| 152 | apply it to the different development branches of the kernel. | ||
| 153 | |||
| 154 | The kernel also has a large number of documents that can be | ||
| 155 | automatically generated from the source code itself. This includes a | ||
| 156 | full description of the in-kernel API, and rules on how to handle | ||
| 157 | locking properly. The documents will be created in the | ||
| 158 | Documentation/DocBook/ directory and can be generated as PDF, | ||
| 159 | Postscript, HTML, and man pages by running: | ||
| 160 | make pdfdocs | ||
| 161 | make psdocs | ||
| 162 | make htmldocs | ||
| 163 | make mandocs | ||
| 164 | respectively from the main kernel source directory. | ||
| 165 | |||
| 166 | |||
| 167 | Becoming A Kernel Developer | ||
| 168 | --------------------------- | ||
| 169 | |||
| 170 | If you do not know anything about Linux kernel development, you should | ||
| 171 | look at the Linux KernelNewbies project: | ||
| 172 | http://kernelnewbies.org | ||
| 173 | It consists of a helpful mailing list where you can ask almost any type | ||
| 174 | of basic kernel development question (make sure to search the archives | ||
| 175 | first, before asking something that has already been answered in the | ||
| 176 | past.) It also has an IRC channel that you can use to ask questions in | ||
| 177 | real-time, and a lot of helpful documentation that is useful for | ||
| 178 | learning about Linux kernel development. | ||
| 179 | |||
| 180 | The website has basic information about code organization, subsystems, | ||
| 181 | and current projects (both in-tree and out-of-tree). It also describes | ||
| 182 | some basic logistical information, like how to compile a kernel and | ||
| 183 | apply a patch. | ||
| 184 | |||
| 185 | If you do not know where you want to start, but you want to look for | ||
| 186 | some task to start doing to join into the kernel development community, | ||
| 187 | go to the Linux Kernel Janitor's project: | ||
| 188 | http://janitor.kernelnewbies.org/ | ||
| 189 | It is a great place to start. It describes a list of relatively simple | ||
| 190 | problems that need to be cleaned up and fixed within the Linux kernel | ||
| 191 | source tree. Working with the developers in charge of this project, you | ||
| 192 | will learn the basics of getting your patch into the Linux kernel tree, | ||
| 193 | and possibly be pointed in the direction of what to go work on next, if | ||
| 194 | you do not already have an idea. | ||
| 195 | |||
| 196 | If you already have a chunk of code that you want to put into the kernel | ||
| 197 | tree, but need some help getting it in the proper form, the | ||
| 198 | kernel-mentors project was created to help you out with this. It is a | ||
| 199 | mailing list, and can be found at: | ||
| 200 | http://selenic.com/mailman/listinfo/kernel-mentors | ||
| 201 | |||
| 202 | Before making any actual modifications to the Linux kernel code, it is | ||
| 203 | imperative to understand how the code in question works. For this | ||
| 204 | purpose, nothing is better than reading through it directly (most tricky | ||
| 205 | bits are commented well), perhaps even with the help of specialized | ||
| 206 | tools. One such tool that is particularly recommended is the Linux | ||
| 207 | Cross-Reference project, which is able to present source code in a | ||
| 208 | self-referential, indexed webpage format. An excellent up-to-date | ||
| 209 | repository of the kernel code may be found at: | ||
| 210 | http://sosdg.org/~coywolf/lxr/ | ||
| 211 | |||
| 212 | |||
| 213 | The development process | ||
| 214 | ----------------------- | ||
| 215 | |||
| 216 | Linux kernel development process currently consists of a few different | ||
| 217 | main kernel "branches" and lots of different subsystem-specific kernel | ||
| 218 | branches. These different branches are: | ||
| 219 | - main 2.6.x kernel tree | ||
| 220 | - 2.6.x.y -stable kernel tree | ||
| 221 | - 2.6.x -git kernel patches | ||
| 222 | - 2.6.x -mm kernel patches | ||
| 223 | - subsystem specific kernel trees and patches | ||
| 224 | |||
| 225 | 2.6.x kernel tree | ||
| 226 | ----------------- | ||
| 227 | 2.6.x kernels are maintained by Linus Torvalds, and can be found on | ||
| 228 | kernel.org in the pub/linux/kernel/v2.6/ directory. Its development | ||
| 229 | process is as follows: | ||
| 230 | - As soon as a new kernel is released a two weeks window is open, | ||
| 231 | during this period of time maintainers can submit big diffs to | ||
| 232 | Linus, usually the patches that have already been included in the | ||
| 233 | -mm kernel for a few weeks. The preferred way to submit big changes | ||
| 234 | is using git (the kernel's source management tool, more information | ||
| 235 | can be found at http://git.or.cz/) but plain patches are also just | ||
| 236 | fine. | ||
| 237 | - After two weeks a -rc1 kernel is released it is now possible to push | ||
| 238 | only patches that do not include new features that could affect the | ||
| 239 | stability of the whole kernel. Please note that a whole new driver | ||
| 240 | (or filesystem) might be accepted after -rc1 because there is no | ||
| 241 | risk of causing regressions with such a change as long as the change | ||
| 242 | is self-contained and does not affect areas outside of the code that | ||
| 243 | is being added. git can be used to send patches to Linus after -rc1 | ||
| 244 | is released, but the patches need to also be sent to a public | ||
| 245 | mailing list for review. | ||
| 246 | - A new -rc is released whenever Linus deems the current git tree to | ||
| 247 | be in a reasonably sane state adequate for testing. The goal is to | ||
| 248 | release a new -rc kernel every week. | ||
| 249 | - Process continues until the kernel is considered "ready", the | ||
| 250 | process should last around 6 weeks. | ||
| 251 | |||
| 252 | It is worth mentioning what Andrew Morton wrote on the linux-kernel | ||
| 253 | mailing list about kernel releases: | ||
| 254 | "Nobody knows when a kernel will be released, because it's | ||
| 255 | released according to perceived bug status, not according to a | ||
| 256 | preconceived timeline." | ||
| 257 | |||
| 258 | 2.6.x.y -stable kernel tree | ||
| 259 | --------------------------- | ||
| 260 | Kernels with 4 digit versions are -stable kernels. They contain | ||
| 261 | relatively small and critical fixes for security problems or significant | ||
| 262 | regressions discovered in a given 2.6.x kernel. | ||
| 263 | |||
| 264 | This is the recommended branch for users who want the most recent stable | ||
| 265 | kernel and are not interested in helping test development/experimental | ||
| 266 | versions. | ||
| 267 | |||
| 268 | If no 2.6.x.y kernel is available, then the highest numbered 2.6.x | ||
| 269 | kernel is the current stable kernel. | ||
| 270 | |||
| 271 | 2.6.x.y are maintained by the "stable" team <stable@kernel.org>, and are | ||
| 272 | released almost every other week. | ||
| 273 | |||
| 274 | The file Documentation/stable_kernel_rules.txt in the kernel tree | ||
| 275 | documents what kinds of changes are acceptable for the -stable tree, and | ||
| 276 | how the release process works. | ||
| 277 | |||
| 278 | 2.6.x -git patches | ||
| 279 | ------------------ | ||
| 280 | These are daily snapshots of Linus' kernel tree which are managed in a | ||
| 281 | git repository (hence the name.) These patches are usually released | ||
| 282 | daily and represent the current state of Linus' tree. They are more | ||
| 283 | experimental than -rc kernels since they are generated automatically | ||
| 284 | without even a cursory glance to see if they are sane. | ||
| 285 | |||
| 286 | 2.6.x -mm kernel patches | ||
| 287 | ------------------------ | ||
| 288 | These are experimental kernel patches released by Andrew Morton. Andrew | ||
| 289 | takes all of the different subsystem kernel trees and patches and mushes | ||
| 290 | them together, along with a lot of patches that have been plucked from | ||
| 291 | the linux-kernel mailing list. This tree serves as a proving ground for | ||
| 292 | new features and patches. Once a patch has proved its worth in -mm for | ||
| 293 | a while Andrew or the subsystem maintainer pushes it on to Linus for | ||
| 294 | inclusion in mainline. | ||
| 295 | |||
| 296 | It is heavily encouraged that all new patches get tested in the -mm tree | ||
| 297 | before they are sent to Linus for inclusion in the main kernel tree. | ||
| 298 | |||
| 299 | These kernels are not appropriate for use on systems that are supposed | ||
| 300 | to be stable and they are more risky to run than any of the other | ||
| 301 | branches. | ||
| 302 | |||
| 303 | If you wish to help out with the kernel development process, please test | ||
| 304 | and use these kernel releases and provide feedback to the linux-kernel | ||
| 305 | mailing list if you have any problems, and if everything works properly. | ||
| 306 | |||
| 307 | In addition to all the other experimental patches, these kernels usually | ||
| 308 | also contain any changes in the mainline -git kernels available at the | ||
| 309 | time of release. | ||
| 310 | |||
| 311 | The -mm kernels are not released on a fixed schedule, but usually a few | ||
| 312 | -mm kernels are released in between each -rc kernel (1 to 3 is common). | ||
| 313 | |||
| 314 | Subsystem Specific kernel trees and patches | ||
| 315 | ------------------------------------------- | ||
| 316 | A number of the different kernel subsystem developers expose their | ||
| 317 | development trees so that others can see what is happening in the | ||
| 318 | different areas of the kernel. These trees are pulled into the -mm | ||
| 319 | kernel releases as described above. | ||
| 320 | |||
| 321 | Here is a list of some of the different kernel trees available: | ||
| 322 | git trees: | ||
| 323 | - Kbuild development tree, Sam Ravnborg <sam@ravnborg.org> | ||
| 324 | kernel.org:/pub/scm/linux/kernel/git/sam/kbuild.git | ||
| 325 | |||
| 326 | - ACPI development tree, Len Brown <len.brown@intel.com> | ||
| 327 | kernel.org:/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6.git | ||
| 328 | |||
| 329 | - Block development tree, Jens Axboe <axboe@suse.de> | ||
| 330 | kernel.org:/pub/scm/linux/kernel/git/axboe/linux-2.6-block.git | ||
| 331 | |||
| 332 | - DRM development tree, Dave Airlie <airlied@linux.ie> | ||
| 333 | kernel.org:/pub/scm/linux/kernel/git/airlied/drm-2.6.git | ||
| 334 | |||
| 335 | - ia64 development tree, Tony Luck <tony.luck@intel.com> | ||
| 336 | kernel.org:/pub/scm/linux/kernel/git/aegl/linux-2.6.git | ||
| 337 | |||
| 338 | - ieee1394 development tree, Jody McIntyre <scjody@modernduck.com> | ||
| 339 | kernel.org:/pub/scm/linux/kernel/git/scjody/ieee1394.git | ||
| 340 | |||
| 341 | - infiniband, Roland Dreier <rolandd@cisco.com> | ||
| 342 | kernel.org:/pub/scm/linux/kernel/git/roland/infiniband.git | ||
| 343 | |||
| 344 | - libata, Jeff Garzik <jgarzik@pobox.com> | ||
| 345 | kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev.git | ||
| 346 | |||
| 347 | - network drivers, Jeff Garzik <jgarzik@pobox.com> | ||
| 348 | kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6.git | ||
| 349 | |||
| 350 | - pcmcia, Dominik Brodowski <linux@dominikbrodowski.net> | ||
| 351 | kernel.org:/pub/scm/linux/kernel/git/brodo/pcmcia-2.6.git | ||
| 352 | |||
| 353 | - SCSI, James Bottomley <James.Bottomley@SteelEye.com> | ||
| 354 | kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6.git | ||
| 355 | |||
| 356 | Other git kernel trees can be found listed at http://kernel.org/git | ||
| 357 | |||
| 358 | quilt trees: | ||
| 359 | - USB, PCI, Driver Core, and I2C, Greg Kroah-Hartman <gregkh@suse.de> | ||
| 360 | kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/ | ||
| 361 | |||
| 362 | |||
| 363 | Bug Reporting | ||
| 364 | ------------- | ||
| 365 | |||
| 366 | bugzilla.kernel.org is where the Linux kernel developers track kernel | ||
| 367 | bugs. Users are encouraged to report all bugs that they find in this | ||
| 368 | tool. For details on how to use the kernel bugzilla, please see: | ||
| 369 | http://test.kernel.org/bugzilla/faq.html | ||
| 370 | |||
| 371 | The file REPORTING-BUGS in the main kernel source directory has a good | ||
| 372 | template for how to report a possible kernel bug, and details what kind | ||
| 373 | of information is needed by the kernel developers to help track down the | ||
| 374 | problem. | ||
| 375 | |||
| 376 | |||
| 377 | Mailing lists | ||
| 378 | ------------- | ||
| 379 | |||
| 380 | As some of the above documents describe, the majority of the core kernel | ||
| 381 | developers participate on the Linux Kernel Mailing list. Details on how | ||
| 382 | to subscribe and unsubscribe from the list can be found at: | ||
| 383 | http://vger.kernel.org/vger-lists.html#linux-kernel | ||
| 384 | There are archives of the mailing list on the web in many different | ||
| 385 | places. Use a search engine to find these archives. For example: | ||
| 386 | http://dir.gmane.org/gmane.linux.kernel | ||
| 387 | It is highly recommended that you search the archives about the topic | ||
| 388 | you want to bring up, before you post it to the list. A lot of things | ||
| 389 | already discussed in detail are only recorded at the mailing list | ||
| 390 | archives. | ||
| 391 | |||
| 392 | Most of the individual kernel subsystems also have their own separate | ||
| 393 | mailing list where they do their development efforts. See the | ||
| 394 | MAINTAINERS file for a list of what these lists are for the different | ||
| 395 | groups. | ||
| 396 | |||
| 397 | Many of the lists are hosted on kernel.org. Information on them can be | ||
| 398 | found at: | ||
| 399 | http://vger.kernel.org/vger-lists.html | ||
| 400 | |||
| 401 | Please remember to follow good behavioral habits when using the lists. | ||
| 402 | Though a bit cheesy, the following URL has some simple guidelines for | ||
| 403 | interacting with the list (or any list): | ||
| 404 | http://www.albion.com/netiquette/ | ||
| 405 | |||
| 406 | If multiple people respond to your mail, the CC: list of recipients may | ||
| 407 | get pretty large. Don't remove anybody from the CC: list without a good | ||
| 408 | reason, or don't reply only to the list address. Get used to receiving the | ||
| 409 | mail twice, one from the sender and the one from the list, and don't try | ||
| 410 | to tune that by adding fancy mail-headers, people will not like it. | ||
| 411 | |||
| 412 | Remember to keep the context and the attribution of your replies intact, | ||
| 413 | keep the "John Kernelhacker wrote ...:" lines at the top of your reply, and | ||
| 414 | add your statements between the individual quoted sections instead of | ||
| 415 | writing at the top of the mail. | ||
| 416 | |||
| 417 | If you add patches to your mail, make sure they are plain readable text | ||
| 418 | as stated in Documentation/SubmittingPatches. Kernel developers don't | ||
| 419 | want to deal with attachments or compressed patches; they may want | ||
| 420 | to comment on individual lines of your patch, which works only that way. | ||
| 421 | Make sure you use a mail program that does not mangle spaces and tab | ||
| 422 | characters. A good first test is to send the mail to yourself and try | ||
| 423 | to apply your own patch by yourself. If that doesn't work, get your | ||
| 424 | mail program fixed or change it until it works. | ||
| 425 | |||
| 426 | Above all, please remember to show respect to other subscribers. | ||
| 427 | |||
| 428 | |||
| 429 | Working with the community | ||
| 430 | -------------------------- | ||
| 431 | |||
| 432 | The goal of the kernel community is to provide the best possible kernel | ||
| 433 | there is. When you submit a patch for acceptance, it will be reviewed | ||
| 434 | on its technical merits and those alone. So, what should you be | ||
| 435 | expecting? | ||
| 436 | - criticism | ||
| 437 | - comments | ||
| 438 | - requests for change | ||
| 439 | - requests for justification | ||
| 440 | - silence | ||
| 441 | |||
| 442 | Remember, this is part of getting your patch into the kernel. You have | ||
| 443 | to be able to take criticism and comments about your patches, evaluate | ||
| 444 | them at a technical level and either rework your patches or provide | ||
| 445 | clear and concise reasoning as to why those changes should not be made. | ||
| 446 | If there are no responses to your posting, wait a few days and try | ||
| 447 | again, sometimes things get lost in the huge volume. | ||
| 448 | |||
| 449 | What should you not do? | ||
| 450 | - expect your patch to be accepted without question | ||
| 451 | - become defensive | ||
| 452 | - ignore comments | ||
| 453 | - resubmit the patch without making any of the requested changes | ||
| 454 | |||
| 455 | In a community that is looking for the best technical solution possible, | ||
| 456 | there will always be differing opinions on how beneficial a patch is. | ||
| 457 | You have to be cooperative, and willing to adapt your idea to fit within | ||
| 458 | the kernel. Or at least be willing to prove your idea is worth it. | ||
| 459 | Remember, being wrong is acceptable as long as you are willing to work | ||
| 460 | toward a solution that is right. | ||
| 461 | |||
| 462 | It is normal that the answers to your first patch might simply be a list | ||
| 463 | of a dozen things you should correct. This does _not_ imply that your | ||
| 464 | patch will not be accepted, and it is _not_ meant against you | ||
| 465 | personally. Simply correct all issues raised against your patch and | ||
| 466 | resend it. | ||
| 467 | |||
| 468 | |||
| 469 | Differences between the kernel community and corporate structures | ||
| 470 | ----------------------------------------------------------------- | ||
| 471 | |||
| 472 | The kernel community works differently than most traditional corporate | ||
| 473 | development environments. Here are a list of things that you can try to | ||
| 474 | do to try to avoid problems: | ||
| 475 | Good things to say regarding your proposed changes: | ||
| 476 | - "This solves multiple problems." | ||
| 477 | - "This deletes 2000 lines of code." | ||
| 478 | - "Here is a patch that explains what I am trying to describe." | ||
| 479 | - "I tested it on 5 different architectures..." | ||
| 480 | - "Here is a series of small patches that..." | ||
| 481 | - "This increases performance on typical machines..." | ||
| 482 | |||
| 483 | Bad things you should avoid saying: | ||
| 484 | - "We did it this way in AIX/ptx/Solaris, so therefore it must be | ||
| 485 | good..." | ||
| 486 | - "I've being doing this for 20 years, so..." | ||
| 487 | - "This is required for my company to make money" | ||
| 488 | - "This is for our Enterprise product line." | ||
| 489 | - "Here is my 1000 page design document that describes my idea" | ||
| 490 | - "I've been working on this for 6 months..." | ||
| 491 | - "Here's a 5000 line patch that..." | ||
| 492 | - "I rewrote all of the current mess, and here it is..." | ||
| 493 | - "I have a deadline, and this patch needs to be applied now." | ||
| 494 | |||
| 495 | Another way the kernel community is different than most traditional | ||
| 496 | software engineering work environments is the faceless nature of | ||
| 497 | interaction. One benefit of using email and irc as the primary forms of | ||
| 498 | communication is the lack of discrimination based on gender or race. | ||
| 499 | The Linux kernel work environment is accepting of women and minorities | ||
| 500 | because all you are is an email address. The international aspect also | ||
| 501 | helps to level the playing field because you can't guess gender based on | ||
| 502 | a person's name. A man may be named Andrea and a woman may be named Pat. | ||
| 503 | Most women who have worked in the Linux kernel and have expressed an | ||
| 504 | opinion have had positive experiences. | ||
| 505 | |||
| 506 | The language barrier can cause problems for some people who are not | ||
| 507 | comfortable with English. A good grasp of the language can be needed in | ||
| 508 | order to get ideas across properly on mailing lists, so it is | ||
| 509 | recommended that you check your emails to make sure they make sense in | ||
| 510 | English before sending them. | ||
| 511 | |||
| 512 | |||
| 513 | Break up your changes | ||
| 514 | --------------------- | ||
| 515 | |||
| 516 | The Linux kernel community does not gladly accept large chunks of code | ||
| 517 | dropped on it all at once. The changes need to be properly introduced, | ||
| 518 | discussed, and broken up into tiny, individual portions. This is almost | ||
| 519 | the exact opposite of what companies are used to doing. Your proposal | ||
| 520 | should also be introduced very early in the development process, so that | ||
| 521 | you can receive feedback on what you are doing. It also lets the | ||
| 522 | community feel that you are working with them, and not simply using them | ||
| 523 | as a dumping ground for your feature. However, don't send 50 emails at | ||
| 524 | one time to a mailing list, your patch series should be smaller than | ||
| 525 | that almost all of the time. | ||
| 526 | |||
| 527 | The reasons for breaking things up are the following: | ||
| 528 | |||
| 529 | 1) Small patches increase the likelihood that your patches will be | ||
| 530 | applied, since they don't take much time or effort to verify for | ||
| 531 | correctness. A 5 line patch can be applied by a maintainer with | ||
| 532 | barely a second glance. However, a 500 line patch may take hours to | ||
| 533 | review for correctness (the time it takes is exponentially | ||
| 534 | proportional to the size of the patch, or something). | ||
| 535 | |||
| 536 | Small patches also make it very easy to debug when something goes | ||
| 537 | wrong. It's much easier to back out patches one by one than it is | ||
| 538 | to dissect a very large patch after it's been applied (and broken | ||
| 539 | something). | ||
| 540 | |||
| 541 | 2) It's important not only to send small patches, but also to rewrite | ||
| 542 | and simplify (or simply re-order) patches before submitting them. | ||
| 543 | |||
| 544 | Here is an analogy from kernel developer Al Viro: | ||
| 545 | "Think of a teacher grading homework from a math student. The | ||
| 546 | teacher does not want to see the student's trials and errors | ||
| 547 | before they came up with the solution. They want to see the | ||
| 548 | cleanest, most elegant answer. A good student knows this, and | ||
| 549 | would never submit her intermediate work before the final | ||
| 550 | solution." | ||
| 551 | |||
| 552 | The same is true of kernel development. The maintainers and | ||
| 553 | reviewers do not want to see the thought process behind the | ||
| 554 | solution to the problem one is solving. They want to see a | ||
| 555 | simple and elegant solution." | ||
| 556 | |||
| 557 | It may be challenging to keep the balance between presenting an elegant | ||
| 558 | solution and working together with the community and discussing your | ||
| 559 | unfinished work. Therefore it is good to get early in the process to | ||
| 560 | get feedback to improve your work, but also keep your changes in small | ||
| 561 | chunks that they may get already accepted, even when your whole task is | ||
| 562 | not ready for inclusion now. | ||
| 563 | |||
| 564 | Also realize that it is not acceptable to send patches for inclusion | ||
| 565 | that are unfinished and will be "fixed up later." | ||
| 566 | |||
| 567 | |||
| 568 | Justify your change | ||
| 569 | ------------------- | ||
| 570 | |||
| 571 | Along with breaking up your patches, it is very important for you to let | ||
| 572 | the Linux community know why they should add this change. New features | ||
| 573 | must be justified as being needed and useful. | ||
| 574 | |||
| 575 | |||
| 576 | Document your change | ||
| 577 | -------------------- | ||
| 578 | |||
| 579 | When sending in your patches, pay special attention to what you say in | ||
| 580 | the text in your email. This information will become the ChangeLog | ||
| 581 | information for the patch, and will be preserved for everyone to see for | ||
| 582 | all time. It should describe the patch completely, containing: | ||
| 583 | - why the change is necessary | ||
| 584 | - the overall design approach in the patch | ||
| 585 | - implementation details | ||
| 586 | - testing results | ||
| 587 | |||
| 588 | For more details on what this should all look like, please see the | ||
| 589 | ChangeLog section of the document: | ||
| 590 | "The Perfect Patch" | ||
| 591 | http://www.zip.com.au/~akpm/linux/patches/stuff/tpp.txt | ||
| 592 | |||
| 593 | |||
| 594 | |||
| 595 | |||
| 596 | All of these things are sometimes very hard to do. It can take years to | ||
| 597 | perfect these practices (if at all). It's a continuous process of | ||
| 598 | improvement that requires a lot of patience and determination. But | ||
| 599 | don't give up, it's possible. Many have done it before, and each had to | ||
| 600 | start exactly where you are now. | ||
| 601 | |||
| 602 | |||
| 603 | |||
| 604 | |||
| 605 | ---------- | ||
| 606 | Thanks to Paolo Ciarrocchi who allowed the "Development Process" section | ||
| 607 | to be based on text he had written, and to Randy Dunlap and Gerrit | ||
| 608 | Huizenga for some of the list of things you should and should not say. | ||
| 609 | Also thanks to Pat Mochel, Hanna Linder, Randy Dunlap, Kay Sievers, | ||
| 610 | Vojtech Pavlik, Jan Kara, Josh Boyer, Kees Cook, Andrew Morton, Andi | ||
| 611 | Kleen, Vadim Lobanov, Jesper Juhl, Adrian Bunk, Keri Harris, Frans Pop, | ||
| 612 | David A. Wheeler, Junio Hamano, Michael Kerrisk, and Alex Shepard for | ||
| 613 | their review, comments, and contributions. Without their help, this | ||
| 614 | document would not have been possible. | ||
| 615 | |||
| 616 | |||
| 617 | |||
| 618 | Maintainer: Greg Kroah-Hartman <greg@kroah.com> | ||
diff --git a/Documentation/devices.txt b/Documentation/devices.txt index 0f515175c72a..3c406acd4dfa 100644 --- a/Documentation/devices.txt +++ b/Documentation/devices.txt | |||
| @@ -2903,14 +2903,14 @@ Your cooperation is appreciated. | |||
| 2903 | 196 = /dev/dvb/adapter3/video0 first video decoder of fourth card | 2903 | 196 = /dev/dvb/adapter3/video0 first video decoder of fourth card |
| 2904 | 2904 | ||
| 2905 | 2905 | ||
| 2906 | 216 char USB BlueTooth devices | 2906 | 216 char Bluetooth RFCOMM TTY devices |
| 2907 | 0 = /dev/ttyUB0 First USB BlueTooth device | 2907 | 0 = /dev/rfcomm0 First Bluetooth RFCOMM TTY device |
| 2908 | 1 = /dev/ttyUB1 Second USB BlueTooth device | 2908 | 1 = /dev/rfcomm1 Second Bluetooth RFCOMM TTY device |
| 2909 | ... | 2909 | ... |
| 2910 | 2910 | ||
| 2911 | 217 char USB BlueTooth devices (alternate devices) | 2911 | 217 char Bluetooth RFCOMM TTY devices (alternate devices) |
| 2912 | 0 = /dev/cuub0 Callout device for ttyUB0 | 2912 | 0 = /dev/curf0 Callout device for rfcomm0 |
| 2913 | 1 = /dev/cuub1 Callout device for ttyUB1 | 2913 | 1 = /dev/curf1 Callout device for rfcomm1 |
| 2914 | ... | 2914 | ... |
| 2915 | 2915 | ||
| 2916 | 218 char The Logical Company bus Unibus/Qbus adapters | 2916 | 218 char The Logical Company bus Unibus/Qbus adapters |
diff --git a/Documentation/feature-removal-schedule.txt b/Documentation/feature-removal-schedule.txt index 24fe8edad304..9b743198f77a 100644 --- a/Documentation/feature-removal-schedule.txt +++ b/Documentation/feature-removal-schedule.txt | |||
| @@ -149,3 +149,13 @@ Files: drivers/md/md.c | |||
| 149 | Why: Not reliable by design - can fail when most needed. | 149 | Why: Not reliable by design - can fail when most needed. |
| 150 | Alternatives exist | 150 | Alternatives exist |
| 151 | Who: NeilBrown <neilb@suse.de> | 151 | Who: NeilBrown <neilb@suse.de> |
| 152 | |||
| 153 | --------------------------- | ||
| 154 | |||
| 155 | What: au1x00_uart driver | ||
| 156 | When: January 2006 | ||
| 157 | Why: The 8250 serial driver now has the ability to deal with the differences | ||
| 158 | between the standard 8250 family of UARTs and their slightly strange | ||
| 159 | brother on Alchemy SOCs. The loss of features is not considered an | ||
| 160 | issue. | ||
| 161 | Who: Ralf Baechle <ralf@linux-mips.org> | ||
diff --git a/Documentation/usb/bluetooth.txt b/Documentation/usb/bluetooth.txt deleted file mode 100644 index 774f5d3835cc..000000000000 --- a/Documentation/usb/bluetooth.txt +++ /dev/null | |||
| @@ -1,44 +0,0 @@ | |||
| 1 | INTRODUCTION | ||
| 2 | |||
| 3 | The USB Bluetooth driver supports any USB Bluetooth device. | ||
| 4 | It currently works well with the Linux USB Bluetooth stack from Axis | ||
| 5 | (available at http://developer.axis.com/software/bluetooth/ ) and | ||
| 6 | has been rumored to work with other Linux USB Bluetooth stacks. | ||
| 7 | |||
| 8 | |||
| 9 | CONFIGURATION | ||
| 10 | |||
| 11 | Currently the driver can handle up to 256 different USB Bluetooth | ||
| 12 | devices at once. | ||
| 13 | |||
| 14 | If you are not using devfs: | ||
| 15 | The major number that the driver uses is 216 so to use the driver, | ||
| 16 | create the following nodes: | ||
| 17 | mknod /dev/ttyUB0 c 216 0 | ||
| 18 | mknod /dev/ttyUB1 c 216 1 | ||
| 19 | mknod /dev/ttyUB2 c 216 2 | ||
| 20 | mknod /dev/ttyUB3 c 216 3 | ||
| 21 | . | ||
| 22 | . | ||
| 23 | . | ||
| 24 | mknod /dev/ttyUB254 c 216 254 | ||
| 25 | mknod /dev/ttyUB255 c 216 255 | ||
| 26 | |||
| 27 | If you are using devfs: | ||
| 28 | The devices supported by this driver will show up as | ||
| 29 | /dev/usb/ttub/{0,1,...} | ||
| 30 | |||
| 31 | When the device is connected and recognized by the driver, the driver | ||
| 32 | will print to the system log, which node the device has been bound to. | ||
| 33 | |||
| 34 | |||
| 35 | CONTACT: | ||
| 36 | |||
| 37 | If anyone has any problems using this driver, please contact me, or | ||
| 38 | join the Linux-USB mailing list (information on joining the mailing | ||
| 39 | list, as well as a link to its searchable archive is at | ||
| 40 | http://www.linux-usb.org/ ) | ||
| 41 | |||
| 42 | |||
| 43 | Greg Kroah-Hartman | ||
| 44 | greg@kroah.com | ||
diff --git a/MAINTAINERS b/MAINTAINERS index 509927e40bbb..f239ac4762dd 100644 --- a/MAINTAINERS +++ b/MAINTAINERS | |||
| @@ -58,6 +58,7 @@ P: Person | |||
| 58 | M: Mail patches to | 58 | M: Mail patches to |
| 59 | L: Mailing list that is relevant to this area | 59 | L: Mailing list that is relevant to this area |
| 60 | W: Web-page with status/info | 60 | W: Web-page with status/info |
| 61 | T: SCM tree type and URL. Type is one of: git, hg, quilt. | ||
| 61 | S: Status, one of the following: | 62 | S: Status, one of the following: |
| 62 | 63 | ||
| 63 | Supported: Someone is actually paid to look after this. | 64 | Supported: Someone is actually paid to look after this. |
| @@ -183,6 +184,7 @@ P: Len Brown | |||
| 183 | M: len.brown@intel.com | 184 | M: len.brown@intel.com |
| 184 | L: acpi-devel@lists.sourceforge.net | 185 | L: acpi-devel@lists.sourceforge.net |
| 185 | W: http://acpi.sourceforge.net/ | 186 | W: http://acpi.sourceforge.net/ |
| 187 | T: git kernel.org:/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6.git | ||
| 186 | S: Maintained | 188 | S: Maintained |
| 187 | 189 | ||
| 188 | AD1816 SOUND DRIVER | 190 | AD1816 SOUND DRIVER |
| @@ -418,6 +420,7 @@ BLOCK LAYER | |||
| 418 | P: Jens Axboe | 420 | P: Jens Axboe |
| 419 | M: axboe@suse.de | 421 | M: axboe@suse.de |
| 420 | L: linux-kernel@vger.kernel.org | 422 | L: linux-kernel@vger.kernel.org |
| 423 | T: git kernel.org:/pub/scm/linux/kernel/git/axboe/linux-2.6-block.git | ||
| 421 | S: Maintained | 424 | S: Maintained |
| 422 | 425 | ||
| 423 | BLUETOOTH SUBSYSTEM | 426 | BLUETOOTH SUBSYSTEM |
| @@ -803,12 +806,14 @@ DRIVER CORE, KOBJECTS, AND SYSFS | |||
| 803 | P: Greg Kroah-Hartman | 806 | P: Greg Kroah-Hartman |
| 804 | M: gregkh@suse.de | 807 | M: gregkh@suse.de |
| 805 | L: linux-kernel@vger.kernel.org | 808 | L: linux-kernel@vger.kernel.org |
| 809 | T: quilt kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/ | ||
| 806 | S: Supported | 810 | S: Supported |
| 807 | 811 | ||
| 808 | DRM DRIVERS | 812 | DRM DRIVERS |
| 809 | P: David Airlie | 813 | P: David Airlie |
| 810 | M: airlied@linux.ie | 814 | M: airlied@linux.ie |
| 811 | L: dri-devel@lists.sourceforge.net | 815 | L: dri-devel@lists.sourceforge.net |
| 816 | T: git kernel.org:/pub/scm/linux/kernel/git/airlied/drm-2.6.git | ||
| 812 | S: Maintained | 817 | S: Maintained |
| 813 | 818 | ||
| 814 | DSCC4 DRIVER | 819 | DSCC4 DRIVER |
| @@ -1113,6 +1118,7 @@ P: Jean Delvare | |||
| 1113 | M: khali@linux-fr.org | 1118 | M: khali@linux-fr.org |
| 1114 | L: lm-sensors@lm-sensors.org | 1119 | L: lm-sensors@lm-sensors.org |
| 1115 | W: http://www.lm-sensors.nu/ | 1120 | W: http://www.lm-sensors.nu/ |
| 1121 | T: quilt kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/ | ||
| 1116 | S: Maintained | 1122 | S: Maintained |
| 1117 | 1123 | ||
| 1118 | I2O | 1124 | I2O |
| @@ -1145,6 +1151,7 @@ P: Tony Luck | |||
| 1145 | M: tony.luck@intel.com | 1151 | M: tony.luck@intel.com |
| 1146 | L: linux-ia64@vger.kernel.org | 1152 | L: linux-ia64@vger.kernel.org |
| 1147 | W: http://www.ia64-linux.org/ | 1153 | W: http://www.ia64-linux.org/ |
| 1154 | T: git kernel.org:/pub/scm/linux/kernel/git/aegl/linux-2.6.git | ||
| 1148 | S: Maintained | 1155 | S: Maintained |
| 1149 | 1156 | ||
| 1150 | SN-IA64 (Itanium) SUB-PLATFORM | 1157 | SN-IA64 (Itanium) SUB-PLATFORM |
| @@ -1212,6 +1219,7 @@ P: Jody McIntyre | |||
| 1212 | M: scjody@steamballoon.com | 1219 | M: scjody@steamballoon.com |
| 1213 | L: linux1394-devel@lists.sourceforge.net | 1220 | L: linux1394-devel@lists.sourceforge.net |
| 1214 | W: http://www.linux1394.org/ | 1221 | W: http://www.linux1394.org/ |
| 1222 | T: git kernel.org:/pub/scm/linux/kernel/git/scjody/ieee1394.git | ||
| 1215 | S: Maintained | 1223 | S: Maintained |
| 1216 | 1224 | ||
| 1217 | IEEE 1394 OHCI DRIVER | 1225 | IEEE 1394 OHCI DRIVER |
| @@ -1263,6 +1271,7 @@ P: Hal Rosenstock | |||
| 1263 | M: halr@voltaire.com | 1271 | M: halr@voltaire.com |
| 1264 | L: openib-general@openib.org | 1272 | L: openib-general@openib.org |
| 1265 | W: http://www.openib.org/ | 1273 | W: http://www.openib.org/ |
| 1274 | T: git kernel.org:/pub/scm/linux/kernel/git/roland/infiniband.git | ||
| 1266 | S: Supported | 1275 | S: Supported |
| 1267 | 1276 | ||
| 1268 | INPUT (KEYBOARD, MOUSE, JOYSTICK) DRIVERS | 1277 | INPUT (KEYBOARD, MOUSE, JOYSTICK) DRIVERS |
| @@ -1436,6 +1445,7 @@ P: Kai Germaschewski | |||
| 1436 | M: kai@germaschewski.name | 1445 | M: kai@germaschewski.name |
| 1437 | P: Sam Ravnborg | 1446 | P: Sam Ravnborg |
| 1438 | M: sam@ravnborg.org | 1447 | M: sam@ravnborg.org |
| 1448 | T: git kernel.org:/pub/scm/linux/kernel/git/sam/kbuild.git | ||
| 1439 | S: Maintained | 1449 | S: Maintained |
| 1440 | 1450 | ||
| 1441 | KERNEL JANITORS | 1451 | KERNEL JANITORS |
| @@ -1782,6 +1792,7 @@ M: akpm@osdl.org | |||
| 1782 | P: Jeff Garzik | 1792 | P: Jeff Garzik |
| 1783 | M: jgarzik@pobox.com | 1793 | M: jgarzik@pobox.com |
| 1784 | L: netdev@vger.kernel.org | 1794 | L: netdev@vger.kernel.org |
| 1795 | T: git kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6.git | ||
| 1785 | S: Maintained | 1796 | S: Maintained |
| 1786 | 1797 | ||
| 1787 | NETWORKING [GENERAL] | 1798 | NETWORKING [GENERAL] |
| @@ -1959,6 +1970,7 @@ P: Greg Kroah-Hartman | |||
| 1959 | M: gregkh@suse.de | 1970 | M: gregkh@suse.de |
| 1960 | L: linux-kernel@vger.kernel.org | 1971 | L: linux-kernel@vger.kernel.org |
| 1961 | L: linux-pci@atrey.karlin.mff.cuni.cz | 1972 | L: linux-pci@atrey.karlin.mff.cuni.cz |
| 1973 | T: quilt kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/ | ||
| 1962 | S: Supported | 1974 | S: Supported |
| 1963 | 1975 | ||
| 1964 | PCI HOTPLUG CORE | 1976 | PCI HOTPLUG CORE |
| @@ -1980,6 +1992,7 @@ S: Maintained | |||
| 1980 | PCMCIA SUBSYSTEM | 1992 | PCMCIA SUBSYSTEM |
| 1981 | P: Linux PCMCIA Team | 1993 | P: Linux PCMCIA Team |
| 1982 | L: http://lists.infradead.org/mailman/listinfo/linux-pcmcia | 1994 | L: http://lists.infradead.org/mailman/listinfo/linux-pcmcia |
| 1995 | T: git kernel.org:/pub/scm/linux/kernel/git/brodo/pcmcia-2.6.git | ||
| 1983 | S: Maintained | 1996 | S: Maintained |
| 1984 | 1997 | ||
| 1985 | PCNET32 NETWORK DRIVER | 1998 | PCNET32 NETWORK DRIVER |
| @@ -2189,6 +2202,7 @@ SCSI SUBSYSTEM | |||
| 2189 | P: James E.J. Bottomley | 2202 | P: James E.J. Bottomley |
| 2190 | M: James.Bottomley@SteelEye.com | 2203 | M: James.Bottomley@SteelEye.com |
| 2191 | L: linux-scsi@vger.kernel.org | 2204 | L: linux-scsi@vger.kernel.org |
| 2205 | T: git kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6.git | ||
| 2192 | S: Maintained | 2206 | S: Maintained |
| 2193 | 2207 | ||
| 2194 | SCSI TAPE DRIVER | 2208 | SCSI TAPE DRIVER |
| @@ -2228,6 +2242,7 @@ SERIAL ATA (SATA) SUBSYSTEM: | |||
| 2228 | P: Jeff Garzik | 2242 | P: Jeff Garzik |
| 2229 | M: jgarzik@pobox.com | 2243 | M: jgarzik@pobox.com |
| 2230 | L: linux-ide@vger.kernel.org | 2244 | L: linux-ide@vger.kernel.org |
| 2245 | T: git kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev.git | ||
| 2231 | S: Supported | 2246 | S: Supported |
| 2232 | 2247 | ||
| 2233 | SGI SN-IA64 (Altix) SERIAL CONSOLE DRIVER | 2248 | SGI SN-IA64 (Altix) SERIAL CONSOLE DRIVER |
| @@ -2749,6 +2764,7 @@ M: gregkh@suse.de | |||
| 2749 | L: linux-usb-users@lists.sourceforge.net | 2764 | L: linux-usb-users@lists.sourceforge.net |
| 2750 | L: linux-usb-devel@lists.sourceforge.net | 2765 | L: linux-usb-devel@lists.sourceforge.net |
| 2751 | W: http://www.linux-usb.org | 2766 | W: http://www.linux-usb.org |
| 2767 | T: quilt kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/ | ||
| 2752 | S: Supported | 2768 | S: Supported |
| 2753 | 2769 | ||
| 2754 | USB UHCI DRIVER | 2770 | USB UHCI DRIVER |
diff --git a/arch/arm/boot/compressed/head.S b/arch/arm/boot/compressed/head.S index 7c7f475e213e..6abafb6f1844 100644 --- a/arch/arm/boot/compressed/head.S +++ b/arch/arm/boot/compressed/head.S | |||
| @@ -19,38 +19,28 @@ | |||
| 19 | */ | 19 | */ |
| 20 | #ifdef DEBUG | 20 | #ifdef DEBUG |
| 21 | 21 | ||
| 22 | #include <asm/arch/debug-macro.S> | ||
| 23 | |||
| 24 | #if defined(CONFIG_DEBUG_ICEDCC) | 22 | #if defined(CONFIG_DEBUG_ICEDCC) |
| 25 | .macro loadsp, rb | 23 | .macro loadsp, rb |
| 26 | .endm | 24 | .endm |
| 27 | .macro writeb, ch, rb | 25 | .macro writeb, ch, rb |
| 28 | mcr p14, 0, \ch, c0, c1, 0 | 26 | mcr p14, 0, \ch, c0, c1, 0 |
| 29 | .endm | 27 | .endm |
| 30 | #else | 28 | #else |
| 29 | |||
| 30 | #include <asm/arch/debug-macro.S> | ||
| 31 | |||
| 31 | .macro writeb, ch, rb | 32 | .macro writeb, ch, rb |
| 32 | senduart \ch, \rb | 33 | senduart \ch, \rb |
| 33 | .endm | 34 | .endm |
| 34 | 35 | ||
| 35 | #if defined(CONFIG_FOOTBRIDGE) || \ | 36 | #if defined(CONFIG_ARCH_SA1100) |
| 36 | defined(CONFIG_ARCH_RPC) || \ | ||
| 37 | defined(CONFIG_ARCH_INTEGRATOR) || \ | ||
| 38 | defined(CONFIG_ARCH_PXA) || \ | ||
| 39 | defined(CONFIG_ARCH_IXP4XX) || \ | ||
| 40 | defined(CONFIG_ARCH_IXP2000) || \ | ||
| 41 | defined(CONFIG_ARCH_LH7A40X) || \ | ||
| 42 | defined(CONFIG_ARCH_OMAP) | ||
| 43 | .macro loadsp, rb | ||
| 44 | addruart \rb | ||
| 45 | .endm | ||
| 46 | #elif defined(CONFIG_ARCH_SA1100) | ||
| 47 | .macro loadsp, rb | 37 | .macro loadsp, rb |
| 48 | mov \rb, #0x80000000 @ physical base address | 38 | mov \rb, #0x80000000 @ physical base address |
| 49 | # if defined(CONFIG_DEBUG_LL_SER3) | 39 | #ifdef CONFIG_DEBUG_LL_SER3 |
| 50 | add \rb, \rb, #0x00050000 @ Ser3 | 40 | add \rb, \rb, #0x00050000 @ Ser3 |
| 51 | # else | 41 | #else |
| 52 | add \rb, \rb, #0x00010000 @ Ser1 | 42 | add \rb, \rb, #0x00010000 @ Ser1 |
| 53 | # endif | 43 | #endif |
| 54 | .endm | 44 | .endm |
| 55 | #elif defined(CONFIG_ARCH_IOP331) | 45 | #elif defined(CONFIG_ARCH_IOP331) |
| 56 | .macro loadsp, rb | 46 | .macro loadsp, rb |
| @@ -64,7 +54,9 @@ | |||
| 64 | add \rb, \rb, #0x4000 * CONFIG_S3C2410_LOWLEVEL_UART_PORT | 54 | add \rb, \rb, #0x4000 * CONFIG_S3C2410_LOWLEVEL_UART_PORT |
| 65 | .endm | 55 | .endm |
| 66 | #else | 56 | #else |
| 67 | #error no serial architecture defined | 57 | .macro loadsp, rb |
| 58 | addruart \rb | ||
| 59 | .endm | ||
| 68 | #endif | 60 | #endif |
| 69 | #endif | 61 | #endif |
| 70 | #endif | 62 | #endif |
diff --git a/arch/arm/common/sa1111.c b/arch/arm/common/sa1111.c index 39a6eea300a2..d0d6e6d2d649 100644 --- a/arch/arm/common/sa1111.c +++ b/arch/arm/common/sa1111.c | |||
| @@ -32,6 +32,7 @@ | |||
| 32 | #include <asm/io.h> | 32 | #include <asm/io.h> |
| 33 | #include <asm/irq.h> | 33 | #include <asm/irq.h> |
| 34 | #include <asm/mach/irq.h> | 34 | #include <asm/mach/irq.h> |
| 35 | #include <asm/sizes.h> | ||
| 35 | 36 | ||
| 36 | #include <asm/hardware/sa1111.h> | 37 | #include <asm/hardware/sa1111.h> |
| 37 | 38 | ||
| @@ -132,6 +133,17 @@ static struct sa1111_dev_info sa1111_devices[] = { | |||
| 132 | }, | 133 | }, |
| 133 | }; | 134 | }; |
| 134 | 135 | ||
| 136 | void __init sa1111_adjust_zones(int node, unsigned long *size, unsigned long *holes) | ||
| 137 | { | ||
| 138 | unsigned int sz = SZ_1M >> PAGE_SHIFT; | ||
| 139 | |||
| 140 | if (node != 0) | ||
| 141 | sz = 0; | ||
| 142 | |||
| 143 | size[1] = size[0] - sz; | ||
| 144 | size[0] = sz; | ||
| 145 | } | ||
| 146 | |||
| 135 | /* | 147 | /* |
| 136 | * SA1111 interrupt support. Since clearing an IRQ while there are | 148 | * SA1111 interrupt support. Since clearing an IRQ while there are |
| 137 | * active IRQs causes the interrupt output to pulse, the upper levels | 149 | * active IRQs causes the interrupt output to pulse, the upper levels |
diff --git a/arch/arm/configs/s3c2410_defconfig b/arch/arm/configs/s3c2410_defconfig index 756348bf5170..3f97590c91f2 100644 --- a/arch/arm/configs/s3c2410_defconfig +++ b/arch/arm/configs/s3c2410_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.13-git8 | 3 | # Linux kernel version: 2.6.15-rc1 |
| 4 | # Thu Sep 8 19:24:02 2005 | 4 | # Sun Nov 13 17:41:24 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_ARM=y | 6 | CONFIG_ARM=y |
| 7 | CONFIG_MMU=y | 7 | CONFIG_MMU=y |
| @@ -62,6 +62,23 @@ CONFIG_OBSOLETE_MODPARM=y | |||
| 62 | CONFIG_KMOD=y | 62 | CONFIG_KMOD=y |
| 63 | 63 | ||
| 64 | # | 64 | # |
| 65 | # Block layer | ||
| 66 | # | ||
| 67 | |||
| 68 | # | ||
| 69 | # IO Schedulers | ||
| 70 | # | ||
| 71 | CONFIG_IOSCHED_NOOP=y | ||
| 72 | CONFIG_IOSCHED_AS=y | ||
| 73 | CONFIG_IOSCHED_DEADLINE=y | ||
| 74 | CONFIG_IOSCHED_CFQ=y | ||
| 75 | CONFIG_DEFAULT_AS=y | ||
| 76 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 77 | # CONFIG_DEFAULT_CFQ is not set | ||
| 78 | # CONFIG_DEFAULT_NOOP is not set | ||
| 79 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 80 | |||
| 81 | # | ||
| 65 | # System Type | 82 | # System Type |
| 66 | # | 83 | # |
| 67 | # CONFIG_ARCH_CLPS7500 is not set | 84 | # CONFIG_ARCH_CLPS7500 is not set |
| @@ -83,6 +100,7 @@ CONFIG_ARCH_S3C2410=y | |||
| 83 | # CONFIG_ARCH_LH7A40X is not set | 100 | # CONFIG_ARCH_LH7A40X is not set |
| 84 | # CONFIG_ARCH_OMAP is not set | 101 | # CONFIG_ARCH_OMAP is not set |
| 85 | # CONFIG_ARCH_VERSATILE is not set | 102 | # CONFIG_ARCH_VERSATILE is not set |
| 103 | # CONFIG_ARCH_REALVIEW is not set | ||
| 86 | # CONFIG_ARCH_IMX is not set | 104 | # CONFIG_ARCH_IMX is not set |
| 87 | # CONFIG_ARCH_H720X is not set | 105 | # CONFIG_ARCH_H720X is not set |
| 88 | # CONFIG_ARCH_AAEC2000 is not set | 106 | # CONFIG_ARCH_AAEC2000 is not set |
| @@ -108,6 +126,7 @@ CONFIG_CPU_S3C2440=y | |||
| 108 | # S3C2410 Boot | 126 | # S3C2410 Boot |
| 109 | # | 127 | # |
| 110 | # CONFIG_S3C2410_BOOT_WATCHDOG is not set | 128 | # CONFIG_S3C2410_BOOT_WATCHDOG is not set |
| 129 | # CONFIG_S3C2410_BOOT_ERROR_RESET is not set | ||
| 111 | 130 | ||
| 112 | # | 131 | # |
| 113 | # S3C2410 Setup | 132 | # S3C2410 Setup |
| @@ -142,6 +161,7 @@ CONFIG_CPU_TLB_V4WBI=y | |||
| 142 | # | 161 | # |
| 143 | # Bus support | 162 | # Bus support |
| 144 | # | 163 | # |
| 164 | CONFIG_ISA=y | ||
| 145 | CONFIG_ISA_DMA_API=y | 165 | CONFIG_ISA_DMA_API=y |
| 146 | 166 | ||
| 147 | # | 167 | # |
| @@ -152,7 +172,6 @@ CONFIG_ISA_DMA_API=y | |||
| 152 | # | 172 | # |
| 153 | # Kernel Features | 173 | # Kernel Features |
| 154 | # | 174 | # |
| 155 | # CONFIG_SMP is not set | ||
| 156 | # CONFIG_PREEMPT is not set | 175 | # CONFIG_PREEMPT is not set |
| 157 | # CONFIG_NO_IDLE_HZ is not set | 176 | # CONFIG_NO_IDLE_HZ is not set |
| 158 | # CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set | 177 | # CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set |
| @@ -163,6 +182,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 163 | CONFIG_FLATMEM=y | 182 | CONFIG_FLATMEM=y |
| 164 | CONFIG_FLAT_NODE_MEM_MAP=y | 183 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 165 | # CONFIG_SPARSEMEM_STATIC is not set | 184 | # CONFIG_SPARSEMEM_STATIC is not set |
| 185 | CONFIG_SPLIT_PTLOCK_CPUS=4096 | ||
| 166 | CONFIG_ALIGNMENT_TRAP=y | 186 | CONFIG_ALIGNMENT_TRAP=y |
| 167 | 187 | ||
| 168 | # | 188 | # |
| @@ -253,6 +273,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 253 | # CONFIG_NET_DIVERT is not set | 273 | # CONFIG_NET_DIVERT is not set |
| 254 | # CONFIG_ECONET is not set | 274 | # CONFIG_ECONET is not set |
| 255 | # CONFIG_WAN_ROUTER is not set | 275 | # CONFIG_WAN_ROUTER is not set |
| 276 | |||
| 277 | # | ||
| 278 | # QoS and/or fair queueing | ||
| 279 | # | ||
| 256 | # CONFIG_NET_SCHED is not set | 280 | # CONFIG_NET_SCHED is not set |
| 257 | # CONFIG_NET_CLS_ROUTE is not set | 281 | # CONFIG_NET_CLS_ROUTE is not set |
| 258 | 282 | ||
| @@ -260,7 +284,6 @@ CONFIG_TCP_CONG_BIC=y | |||
| 260 | # Network testing | 284 | # Network testing |
| 261 | # | 285 | # |
| 262 | # CONFIG_NET_PKTGEN is not set | 286 | # CONFIG_NET_PKTGEN is not set |
| 263 | # CONFIG_NETFILTER_NETLINK is not set | ||
| 264 | # CONFIG_HAMRADIO is not set | 287 | # CONFIG_HAMRADIO is not set |
| 265 | # CONFIG_IRDA is not set | 288 | # CONFIG_IRDA is not set |
| 266 | # CONFIG_BT is not set | 289 | # CONFIG_BT is not set |
| @@ -300,6 +323,7 @@ CONFIG_MTD_BLOCK=y | |||
| 300 | # CONFIG_FTL is not set | 323 | # CONFIG_FTL is not set |
| 301 | # CONFIG_NFTL is not set | 324 | # CONFIG_NFTL is not set |
| 302 | # CONFIG_INFTL is not set | 325 | # CONFIG_INFTL is not set |
| 326 | # CONFIG_RFD_FTL is not set | ||
| 303 | 327 | ||
| 304 | # | 328 | # |
| 305 | # RAM/ROM/Flash chip drivers | 329 | # RAM/ROM/Flash chip drivers |
| @@ -335,7 +359,6 @@ CONFIG_MTD_ROM=y | |||
| 335 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set | 359 | # CONFIG_MTD_COMPLEX_MAPPINGS is not set |
| 336 | # CONFIG_MTD_PHYSMAP is not set | 360 | # CONFIG_MTD_PHYSMAP is not set |
| 337 | # CONFIG_MTD_ARM_INTEGRATOR is not set | 361 | # CONFIG_MTD_ARM_INTEGRATOR is not set |
| 338 | # CONFIG_MTD_EDB7312 is not set | ||
| 339 | # CONFIG_MTD_IMPA7 is not set | 362 | # CONFIG_MTD_IMPA7 is not set |
| 340 | CONFIG_MTD_BAST=y | 363 | CONFIG_MTD_BAST=y |
| 341 | CONFIG_MTD_BAST_MAXSIZE=4 | 364 | CONFIG_MTD_BAST_MAXSIZE=4 |
| @@ -370,6 +393,11 @@ CONFIG_MTD_NAND_S3C2410=y | |||
| 370 | # CONFIG_MTD_NAND_NANDSIM is not set | 393 | # CONFIG_MTD_NAND_NANDSIM is not set |
| 371 | 394 | ||
| 372 | # | 395 | # |
| 396 | # OneNAND Flash Device Drivers | ||
| 397 | # | ||
| 398 | # CONFIG_MTD_ONENAND is not set | ||
| 399 | |||
| 400 | # | ||
| 373 | # Parallel port support | 401 | # Parallel port support |
| 374 | # | 402 | # |
| 375 | CONFIG_PARPORT=y | 403 | CONFIG_PARPORT=y |
| @@ -381,10 +409,12 @@ CONFIG_PARPORT_1284=y | |||
| 381 | # | 409 | # |
| 382 | # Plug and Play support | 410 | # Plug and Play support |
| 383 | # | 411 | # |
| 412 | # CONFIG_PNP is not set | ||
| 384 | 413 | ||
| 385 | # | 414 | # |
| 386 | # Block devices | 415 | # Block devices |
| 387 | # | 416 | # |
| 417 | # CONFIG_BLK_DEV_XD is not set | ||
| 388 | # CONFIG_PARIDE is not set | 418 | # CONFIG_PARIDE is not set |
| 389 | # CONFIG_BLK_DEV_COW_COMMON is not set | 419 | # CONFIG_BLK_DEV_COW_COMMON is not set |
| 390 | CONFIG_BLK_DEV_LOOP=y | 420 | CONFIG_BLK_DEV_LOOP=y |
| @@ -395,14 +425,6 @@ CONFIG_BLK_DEV_RAM_COUNT=16 | |||
| 395 | CONFIG_BLK_DEV_RAM_SIZE=4096 | 425 | CONFIG_BLK_DEV_RAM_SIZE=4096 |
| 396 | CONFIG_BLK_DEV_INITRD=y | 426 | CONFIG_BLK_DEV_INITRD=y |
| 397 | # CONFIG_CDROM_PKTCDVD is not set | 427 | # CONFIG_CDROM_PKTCDVD is not set |
| 398 | |||
| 399 | # | ||
| 400 | # IO Schedulers | ||
| 401 | # | ||
| 402 | CONFIG_IOSCHED_NOOP=y | ||
| 403 | CONFIG_IOSCHED_AS=y | ||
| 404 | CONFIG_IOSCHED_DEADLINE=y | ||
| 405 | CONFIG_IOSCHED_CFQ=y | ||
| 406 | CONFIG_ATA_OVER_ETH=m | 428 | CONFIG_ATA_OVER_ETH=m |
| 407 | 429 | ||
| 408 | # | 430 | # |
| @@ -428,6 +450,7 @@ CONFIG_BLK_DEV_IDEFLOPPY=m | |||
| 428 | CONFIG_IDE_GENERIC=y | 450 | CONFIG_IDE_GENERIC=y |
| 429 | # CONFIG_IDE_ARM is not set | 451 | # CONFIG_IDE_ARM is not set |
| 430 | CONFIG_BLK_DEV_IDE_BAST=y | 452 | CONFIG_BLK_DEV_IDE_BAST=y |
| 453 | # CONFIG_IDE_CHIPSETS is not set | ||
| 431 | # CONFIG_BLK_DEV_IDEDMA is not set | 454 | # CONFIG_BLK_DEV_IDEDMA is not set |
| 432 | # CONFIG_IDEDMA_AUTO is not set | 455 | # CONFIG_IDEDMA_AUTO is not set |
| 433 | # CONFIG_BLK_DEV_HD is not set | 456 | # CONFIG_BLK_DEV_HD is not set |
| @@ -467,6 +490,11 @@ CONFIG_NETDEVICES=y | |||
| 467 | # CONFIG_TUN is not set | 490 | # CONFIG_TUN is not set |
| 468 | 491 | ||
| 469 | # | 492 | # |
| 493 | # ARCnet devices | ||
| 494 | # | ||
| 495 | # CONFIG_ARCNET is not set | ||
| 496 | |||
| 497 | # | ||
| 470 | # PHY device support | 498 | # PHY device support |
| 471 | # | 499 | # |
| 472 | # CONFIG_PHYLIB is not set | 500 | # CONFIG_PHYLIB is not set |
| @@ -475,9 +503,19 @@ CONFIG_NETDEVICES=y | |||
| 475 | # Ethernet (10 or 100Mbit) | 503 | # Ethernet (10 or 100Mbit) |
| 476 | # | 504 | # |
| 477 | CONFIG_NET_ETHERNET=y | 505 | CONFIG_NET_ETHERNET=y |
| 478 | CONFIG_MII=m | 506 | CONFIG_MII=y |
| 507 | # CONFIG_NET_VENDOR_3COM is not set | ||
| 508 | # CONFIG_LANCE is not set | ||
| 509 | # CONFIG_NET_VENDOR_SMC is not set | ||
| 479 | # CONFIG_SMC91X is not set | 510 | # CONFIG_SMC91X is not set |
| 480 | CONFIG_DM9000=m | 511 | CONFIG_DM9000=y |
| 512 | # CONFIG_NET_VENDOR_RACAL is not set | ||
| 513 | # CONFIG_AT1700 is not set | ||
| 514 | # CONFIG_DEPCA is not set | ||
| 515 | # CONFIG_HP100 is not set | ||
| 516 | # CONFIG_NET_ISA is not set | ||
| 517 | # CONFIG_NET_PCI is not set | ||
| 518 | # CONFIG_NET_POCKET is not set | ||
| 481 | 519 | ||
| 482 | # | 520 | # |
| 483 | # Ethernet (1000 Mbit) | 521 | # Ethernet (1000 Mbit) |
| @@ -490,6 +528,7 @@ CONFIG_DM9000=m | |||
| 490 | # | 528 | # |
| 491 | # Token Ring devices | 529 | # Token Ring devices |
| 492 | # | 530 | # |
| 531 | # CONFIG_TR is not set | ||
| 493 | 532 | ||
| 494 | # | 533 | # |
| 495 | # Wireless LAN (non-hamradio) | 534 | # Wireless LAN (non-hamradio) |
| @@ -542,6 +581,9 @@ CONFIG_KEYBOARD_ATKBD=y | |||
| 542 | CONFIG_INPUT_MOUSE=y | 581 | CONFIG_INPUT_MOUSE=y |
| 543 | CONFIG_MOUSE_PS2=y | 582 | CONFIG_MOUSE_PS2=y |
| 544 | # CONFIG_MOUSE_SERIAL is not set | 583 | # CONFIG_MOUSE_SERIAL is not set |
| 584 | # CONFIG_MOUSE_INPORT is not set | ||
| 585 | # CONFIG_MOUSE_LOGIBM is not set | ||
| 586 | # CONFIG_MOUSE_PC110PAD is not set | ||
| 545 | # CONFIG_MOUSE_VSXXXAA is not set | 587 | # CONFIG_MOUSE_VSXXXAA is not set |
| 546 | # CONFIG_INPUT_JOYSTICK is not set | 588 | # CONFIG_INPUT_JOYSTICK is not set |
| 547 | # CONFIG_INPUT_TOUCHSCREEN is not set | 589 | # CONFIG_INPUT_TOUCHSCREEN is not set |
| @@ -568,6 +610,7 @@ CONFIG_SERIAL_NONSTANDARD=y | |||
| 568 | # CONFIG_ROCKETPORT is not set | 610 | # CONFIG_ROCKETPORT is not set |
| 569 | # CONFIG_CYCLADES is not set | 611 | # CONFIG_CYCLADES is not set |
| 570 | # CONFIG_DIGIEPCA is not set | 612 | # CONFIG_DIGIEPCA is not set |
| 613 | # CONFIG_ESPSERIAL is not set | ||
| 571 | # CONFIG_MOXA_INTELLIO is not set | 614 | # CONFIG_MOXA_INTELLIO is not set |
| 572 | # CONFIG_MOXA_SMARTIO is not set | 615 | # CONFIG_MOXA_SMARTIO is not set |
| 573 | # CONFIG_ISI is not set | 616 | # CONFIG_ISI is not set |
| @@ -590,6 +633,10 @@ CONFIG_SERIAL_8250_MANY_PORTS=y | |||
| 590 | CONFIG_SERIAL_8250_SHARE_IRQ=y | 633 | CONFIG_SERIAL_8250_SHARE_IRQ=y |
| 591 | # CONFIG_SERIAL_8250_DETECT_IRQ is not set | 634 | # CONFIG_SERIAL_8250_DETECT_IRQ is not set |
| 592 | # CONFIG_SERIAL_8250_RSA is not set | 635 | # CONFIG_SERIAL_8250_RSA is not set |
| 636 | # CONFIG_SERIAL_8250_FOURPORT is not set | ||
| 637 | # CONFIG_SERIAL_8250_ACCENT is not set | ||
| 638 | # CONFIG_SERIAL_8250_BOCA is not set | ||
| 639 | # CONFIG_SERIAL_8250_HUB6 is not set | ||
| 593 | 640 | ||
| 594 | # | 641 | # |
| 595 | # Non-8250 serial port support | 642 | # Non-8250 serial port support |
| @@ -622,6 +669,13 @@ CONFIG_WATCHDOG=y | |||
| 622 | # | 669 | # |
| 623 | # CONFIG_SOFT_WATCHDOG is not set | 670 | # CONFIG_SOFT_WATCHDOG is not set |
| 624 | CONFIG_S3C2410_WATCHDOG=y | 671 | CONFIG_S3C2410_WATCHDOG=y |
| 672 | |||
| 673 | # | ||
| 674 | # ISA-based Watchdog Cards | ||
| 675 | # | ||
| 676 | # CONFIG_PCWATCHDOG is not set | ||
| 677 | # CONFIG_MIXCOMWD is not set | ||
| 678 | # CONFIG_WDT is not set | ||
| 625 | # CONFIG_NVRAM is not set | 679 | # CONFIG_NVRAM is not set |
| 626 | # CONFIG_RTC is not set | 680 | # CONFIG_RTC is not set |
| 627 | CONFIG_S3C2410_RTC=y | 681 | CONFIG_S3C2410_RTC=y |
| @@ -636,6 +690,7 @@ CONFIG_S3C2410_RTC=y | |||
| 636 | # | 690 | # |
| 637 | # TPM devices | 691 | # TPM devices |
| 638 | # | 692 | # |
| 693 | # CONFIG_TELCLOCK is not set | ||
| 639 | 694 | ||
| 640 | # | 695 | # |
| 641 | # I2C support | 696 | # I2C support |
| @@ -653,6 +708,7 @@ CONFIG_I2C_ALGOBIT=m | |||
| 653 | # | 708 | # |
| 654 | # I2C Hardware Bus support | 709 | # I2C Hardware Bus support |
| 655 | # | 710 | # |
| 711 | # CONFIG_I2C_ELEKTOR is not set | ||
| 656 | CONFIG_I2C_ISA=m | 712 | CONFIG_I2C_ISA=m |
| 657 | # CONFIG_I2C_PARPORT is not set | 713 | # CONFIG_I2C_PARPORT is not set |
| 658 | # CONFIG_I2C_PARPORT_LIGHT is not set | 714 | # CONFIG_I2C_PARPORT_LIGHT is not set |
| @@ -671,6 +727,7 @@ CONFIG_SENSORS_EEPROM=m | |||
| 671 | # CONFIG_SENSORS_PCF8591 is not set | 727 | # CONFIG_SENSORS_PCF8591 is not set |
| 672 | # CONFIG_SENSORS_RTC8564 is not set | 728 | # CONFIG_SENSORS_RTC8564 is not set |
| 673 | # CONFIG_SENSORS_MAX6875 is not set | 729 | # CONFIG_SENSORS_MAX6875 is not set |
| 730 | # CONFIG_RTC_X1205_I2C is not set | ||
| 674 | # CONFIG_I2C_DEBUG_CORE is not set | 731 | # CONFIG_I2C_DEBUG_CORE is not set |
| 675 | # CONFIG_I2C_DEBUG_ALGO is not set | 732 | # CONFIG_I2C_DEBUG_ALGO is not set |
| 676 | # CONFIG_I2C_DEBUG_BUS is not set | 733 | # CONFIG_I2C_DEBUG_BUS is not set |
| @@ -737,22 +794,28 @@ CONFIG_SENSORS_LM85=m | |||
| 737 | # Graphics support | 794 | # Graphics support |
| 738 | # | 795 | # |
| 739 | CONFIG_FB=y | 796 | CONFIG_FB=y |
| 740 | # CONFIG_FB_CFB_FILLRECT is not set | 797 | CONFIG_FB_CFB_FILLRECT=y |
| 741 | # CONFIG_FB_CFB_COPYAREA is not set | 798 | CONFIG_FB_CFB_COPYAREA=y |
| 742 | # CONFIG_FB_CFB_IMAGEBLIT is not set | 799 | CONFIG_FB_CFB_IMAGEBLIT=y |
| 743 | # CONFIG_FB_SOFT_CURSOR is not set | ||
| 744 | # CONFIG_FB_MACMODES is not set | 800 | # CONFIG_FB_MACMODES is not set |
| 745 | CONFIG_FB_MODE_HELPERS=y | 801 | CONFIG_FB_MODE_HELPERS=y |
| 746 | # CONFIG_FB_TILEBLITTING is not set | 802 | # CONFIG_FB_TILEBLITTING is not set |
| 747 | # CONFIG_FB_S1D13XXX is not set | 803 | # CONFIG_FB_S1D13XXX is not set |
| 804 | CONFIG_FB_S3C2410=y | ||
| 805 | # CONFIG_FB_S3C2410_DEBUG is not set | ||
| 748 | # CONFIG_FB_VIRTUAL is not set | 806 | # CONFIG_FB_VIRTUAL is not set |
| 749 | 807 | ||
| 750 | # | 808 | # |
| 751 | # Console display driver support | 809 | # Console display driver support |
| 752 | # | 810 | # |
| 753 | # CONFIG_VGA_CONSOLE is not set | 811 | # CONFIG_VGA_CONSOLE is not set |
| 812 | # CONFIG_MDA_CONSOLE is not set | ||
| 754 | CONFIG_DUMMY_CONSOLE=y | 813 | CONFIG_DUMMY_CONSOLE=y |
| 755 | # CONFIG_FRAMEBUFFER_CONSOLE is not set | 814 | CONFIG_FRAMEBUFFER_CONSOLE=y |
| 815 | # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set | ||
| 816 | # CONFIG_FONTS is not set | ||
| 817 | CONFIG_FONT_8x8=y | ||
| 818 | CONFIG_FONT_8x16=y | ||
| 756 | 819 | ||
| 757 | # | 820 | # |
| 758 | # Logo configuration | 821 | # Logo configuration |
| @@ -773,6 +836,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 773 | # CONFIG_USB is not set | 836 | # CONFIG_USB is not set |
| 774 | 837 | ||
| 775 | # | 838 | # |
| 839 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 840 | # | ||
| 841 | |||
| 842 | # | ||
| 776 | # USB Gadget Support | 843 | # USB Gadget Support |
| 777 | # | 844 | # |
| 778 | # CONFIG_USB_GADGET is not set | 845 | # CONFIG_USB_GADGET is not set |
| @@ -798,10 +865,6 @@ CONFIG_FS_MBCACHE=y | |||
| 798 | # CONFIG_REISERFS_FS is not set | 865 | # CONFIG_REISERFS_FS is not set |
| 799 | # CONFIG_JFS_FS is not set | 866 | # CONFIG_JFS_FS is not set |
| 800 | # CONFIG_FS_POSIX_ACL is not set | 867 | # CONFIG_FS_POSIX_ACL is not set |
| 801 | |||
| 802 | # | ||
| 803 | # XFS support | ||
| 804 | # | ||
| 805 | # CONFIG_XFS_FS is not set | 868 | # CONFIG_XFS_FS is not set |
| 806 | # CONFIG_MINIX_FS is not set | 869 | # CONFIG_MINIX_FS is not set |
| 807 | CONFIG_ROMFS_FS=y | 870 | CONFIG_ROMFS_FS=y |
| @@ -810,6 +873,7 @@ CONFIG_INOTIFY=y | |||
| 810 | CONFIG_DNOTIFY=y | 873 | CONFIG_DNOTIFY=y |
| 811 | # CONFIG_AUTOFS_FS is not set | 874 | # CONFIG_AUTOFS_FS is not set |
| 812 | # CONFIG_AUTOFS4_FS is not set | 875 | # CONFIG_AUTOFS4_FS is not set |
| 876 | # CONFIG_FUSE_FS is not set | ||
| 813 | 877 | ||
| 814 | # | 878 | # |
| 815 | # CD-ROM/DVD Filesystems | 879 | # CD-ROM/DVD Filesystems |
| @@ -854,6 +918,7 @@ CONFIG_JFFS_FS_VERBOSE=0 | |||
| 854 | CONFIG_JFFS2_FS=y | 918 | CONFIG_JFFS2_FS=y |
| 855 | CONFIG_JFFS2_FS_DEBUG=0 | 919 | CONFIG_JFFS2_FS_DEBUG=0 |
| 856 | CONFIG_JFFS2_FS_WRITEBUFFER=y | 920 | CONFIG_JFFS2_FS_WRITEBUFFER=y |
| 921 | # CONFIG_JFFS2_SUMMARY is not set | ||
| 857 | # CONFIG_JFFS2_COMPRESSION_OPTIONS is not set | 922 | # CONFIG_JFFS2_COMPRESSION_OPTIONS is not set |
| 858 | CONFIG_JFFS2_ZLIB=y | 923 | CONFIG_JFFS2_ZLIB=y |
| 859 | CONFIG_JFFS2_RTIME=y | 924 | CONFIG_JFFS2_RTIME=y |
| @@ -884,6 +949,7 @@ CONFIG_SUNRPC=y | |||
| 884 | # CONFIG_NCP_FS is not set | 949 | # CONFIG_NCP_FS is not set |
| 885 | # CONFIG_CODA_FS is not set | 950 | # CONFIG_CODA_FS is not set |
| 886 | # CONFIG_AFS_FS is not set | 951 | # CONFIG_AFS_FS is not set |
| 952 | # CONFIG_9P_FS is not set | ||
| 887 | 953 | ||
| 888 | # | 954 | # |
| 889 | # Partition Types | 955 | # Partition Types |
| @@ -959,7 +1025,7 @@ CONFIG_NLS_DEFAULT="iso8859-1" | |||
| 959 | # | 1025 | # |
| 960 | # CONFIG_PRINTK_TIME is not set | 1026 | # CONFIG_PRINTK_TIME is not set |
| 961 | CONFIG_DEBUG_KERNEL=y | 1027 | CONFIG_DEBUG_KERNEL=y |
| 962 | # CONFIG_MAGIC_SYSRQ is not set | 1028 | CONFIG_MAGIC_SYSRQ=y |
| 963 | CONFIG_LOG_BUF_SHIFT=16 | 1029 | CONFIG_LOG_BUF_SHIFT=16 |
| 964 | CONFIG_DETECT_SOFTLOCKUP=y | 1030 | CONFIG_DETECT_SOFTLOCKUP=y |
| 965 | # CONFIG_SCHEDSTATS is not set | 1031 | # CONFIG_SCHEDSTATS is not set |
| @@ -970,7 +1036,9 @@ CONFIG_DETECT_SOFTLOCKUP=y | |||
| 970 | CONFIG_DEBUG_BUGVERBOSE=y | 1036 | CONFIG_DEBUG_BUGVERBOSE=y |
| 971 | CONFIG_DEBUG_INFO=y | 1037 | CONFIG_DEBUG_INFO=y |
| 972 | # CONFIG_DEBUG_FS is not set | 1038 | # CONFIG_DEBUG_FS is not set |
| 1039 | # CONFIG_DEBUG_VM is not set | ||
| 973 | CONFIG_FRAME_POINTER=y | 1040 | CONFIG_FRAME_POINTER=y |
| 1041 | # CONFIG_RCU_TORTURE_TEST is not set | ||
| 974 | CONFIG_DEBUG_USER=y | 1042 | CONFIG_DEBUG_USER=y |
| 975 | # CONFIG_DEBUG_WAITQ is not set | 1043 | # CONFIG_DEBUG_WAITQ is not set |
| 976 | # CONFIG_DEBUG_ERRORS is not set | 1044 | # CONFIG_DEBUG_ERRORS is not set |
| @@ -998,6 +1066,7 @@ CONFIG_DEBUG_S3C2410_UART=0 | |||
| 998 | # Library routines | 1066 | # Library routines |
| 999 | # | 1067 | # |
| 1000 | # CONFIG_CRC_CCITT is not set | 1068 | # CONFIG_CRC_CCITT is not set |
| 1069 | # CONFIG_CRC16 is not set | ||
| 1001 | CONFIG_CRC32=y | 1070 | CONFIG_CRC32=y |
| 1002 | # CONFIG_LIBCRC32C is not set | 1071 | # CONFIG_LIBCRC32C is not set |
| 1003 | CONFIG_ZLIB_INFLATE=y | 1072 | CONFIG_ZLIB_INFLATE=y |
diff --git a/arch/arm/mach-pxa/corgi_lcd.c b/arch/arm/mach-pxa/corgi_lcd.c index 698eb06545c4..6dbcaf114ad7 100644 --- a/arch/arm/mach-pxa/corgi_lcd.c +++ b/arch/arm/mach-pxa/corgi_lcd.c | |||
| @@ -22,7 +22,7 @@ | |||
| 22 | #include <linux/string.h> | 22 | #include <linux/string.h> |
| 23 | #include <asm/arch/akita.h> | 23 | #include <asm/arch/akita.h> |
| 24 | #include <asm/arch/corgi.h> | 24 | #include <asm/arch/corgi.h> |
| 25 | #include <asm/arch/hardware.h> | 25 | #include <asm/hardware.h> |
| 26 | #include <asm/arch/pxa-regs.h> | 26 | #include <asm/arch/pxa-regs.h> |
| 27 | #include <asm/arch/sharpsl.h> | 27 | #include <asm/arch/sharpsl.h> |
| 28 | #include <asm/arch/spitz.h> | 28 | #include <asm/arch/spitz.h> |
diff --git a/arch/arm/mach-realview/core.h b/arch/arm/mach-realview/core.h index d83e8bad2038..c06e6041df41 100644 --- a/arch/arm/mach-realview/core.h +++ b/arch/arm/mach-realview/core.h | |||
| @@ -26,8 +26,6 @@ | |||
| 26 | #include <asm/leds.h> | 26 | #include <asm/leds.h> |
| 27 | #include <asm/io.h> | 27 | #include <asm/io.h> |
| 28 | 28 | ||
| 29 | #define __io_address(n) __io(IO_ADDRESS(n)) | ||
| 30 | |||
| 31 | extern struct sys_timer realview_timer; | 29 | extern struct sys_timer realview_timer; |
| 32 | 30 | ||
| 33 | #define AMBA_DEVICE(name,busid,base,plat) \ | 31 | #define AMBA_DEVICE(name,busid,base,plat) \ |
diff --git a/arch/arm/mach-realview/localtimer.c b/arch/arm/mach-realview/localtimer.c index 5e917e37d095..c9d7c596b200 100644 --- a/arch/arm/mach-realview/localtimer.c +++ b/arch/arm/mach-realview/localtimer.c | |||
| @@ -21,8 +21,6 @@ | |||
| 21 | #include <asm/io.h> | 21 | #include <asm/io.h> |
| 22 | #include <asm/irq.h> | 22 | #include <asm/irq.h> |
| 23 | 23 | ||
| 24 | #include "core.h" | ||
| 25 | |||
| 26 | #define TWD_BASE(cpu) (__io_address(REALVIEW_TWD_BASE) + \ | 24 | #define TWD_BASE(cpu) (__io_address(REALVIEW_TWD_BASE) + \ |
| 27 | ((cpu) * REALVIEW_TWD_SIZE)) | 25 | ((cpu) * REALVIEW_TWD_SIZE)) |
| 28 | 26 | ||
diff --git a/arch/arm/mach-realview/platsmp.c b/arch/arm/mach-realview/platsmp.c index 0c7d4ac9a7b3..a8fbd76d8be5 100644 --- a/arch/arm/mach-realview/platsmp.c +++ b/arch/arm/mach-realview/platsmp.c | |||
| @@ -17,8 +17,7 @@ | |||
| 17 | #include <asm/cacheflush.h> | 17 | #include <asm/cacheflush.h> |
| 18 | #include <asm/hardware/arm_scu.h> | 18 | #include <asm/hardware/arm_scu.h> |
| 19 | #include <asm/hardware.h> | 19 | #include <asm/hardware.h> |
| 20 | 20 | #include <asm/io.h> | |
| 21 | #include "core.h" | ||
| 22 | 21 | ||
| 23 | extern void realview_secondary_startup(void); | 22 | extern void realview_secondary_startup(void); |
| 24 | 23 | ||
diff --git a/arch/arm/mach-s3c2410/mach-bast.c b/arch/arm/mach-s3c2410/mach-bast.c index 1be2567a7486..4d962717fdf7 100644 --- a/arch/arm/mach-s3c2410/mach-bast.c +++ b/arch/arm/mach-s3c2410/mach-bast.c | |||
| @@ -203,7 +203,7 @@ static struct s3c24xx_uart_clksrc bast_serial_clocks[] = { | |||
| 203 | .name = "pclk", | 203 | .name = "pclk", |
| 204 | .divisor = 1, | 204 | .divisor = 1, |
| 205 | .min_baud = 0, | 205 | .min_baud = 0, |
| 206 | .max_baud = 0. | 206 | .max_baud = 0, |
| 207 | } | 207 | } |
| 208 | }; | 208 | }; |
| 209 | 209 | ||
| @@ -216,7 +216,7 @@ static struct s3c2410_uartcfg bast_uartcfgs[] = { | |||
| 216 | .ulcon = ULCON, | 216 | .ulcon = ULCON, |
| 217 | .ufcon = UFCON, | 217 | .ufcon = UFCON, |
| 218 | .clocks = bast_serial_clocks, | 218 | .clocks = bast_serial_clocks, |
| 219 | .clocks_size = ARRAY_SIZE(bast_serial_clocks) | 219 | .clocks_size = ARRAY_SIZE(bast_serial_clocks), |
| 220 | }, | 220 | }, |
| 221 | [1] = { | 221 | [1] = { |
| 222 | .hwport = 1, | 222 | .hwport = 1, |
| @@ -225,7 +225,7 @@ static struct s3c2410_uartcfg bast_uartcfgs[] = { | |||
| 225 | .ulcon = ULCON, | 225 | .ulcon = ULCON, |
| 226 | .ufcon = UFCON, | 226 | .ufcon = UFCON, |
| 227 | .clocks = bast_serial_clocks, | 227 | .clocks = bast_serial_clocks, |
| 228 | .clocks_size = ARRAY_SIZE(bast_serial_clocks) | 228 | .clocks_size = ARRAY_SIZE(bast_serial_clocks), |
| 229 | }, | 229 | }, |
| 230 | /* port 2 is not actually used */ | 230 | /* port 2 is not actually used */ |
| 231 | [2] = { | 231 | [2] = { |
| @@ -235,7 +235,7 @@ static struct s3c2410_uartcfg bast_uartcfgs[] = { | |||
| 235 | .ulcon = ULCON, | 235 | .ulcon = ULCON, |
| 236 | .ufcon = UFCON, | 236 | .ufcon = UFCON, |
| 237 | .clocks = bast_serial_clocks, | 237 | .clocks = bast_serial_clocks, |
| 238 | .clocks_size = ARRAY_SIZE(bast_serial_clocks) | 238 | .clocks_size = ARRAY_SIZE(bast_serial_clocks), |
| 239 | } | 239 | } |
| 240 | }; | 240 | }; |
| 241 | 241 | ||
| @@ -268,7 +268,7 @@ static struct mtd_partition bast_default_nand_part[] = { | |||
| 268 | [0] = { | 268 | [0] = { |
| 269 | .name = "Boot Agent", | 269 | .name = "Boot Agent", |
| 270 | .size = SZ_16K, | 270 | .size = SZ_16K, |
| 271 | .offset = 0 | 271 | .offset = 0, |
| 272 | }, | 272 | }, |
| 273 | [1] = { | 273 | [1] = { |
| 274 | .name = "/boot", | 274 | .name = "/boot", |
| @@ -296,28 +296,28 @@ static struct s3c2410_nand_set bast_nand_sets[] = { | |||
| 296 | .nr_chips = 1, | 296 | .nr_chips = 1, |
| 297 | .nr_map = smartmedia_map, | 297 | .nr_map = smartmedia_map, |
| 298 | .nr_partitions = ARRAY_SIZE(bast_default_nand_part), | 298 | .nr_partitions = ARRAY_SIZE(bast_default_nand_part), |
| 299 | .partitions = bast_default_nand_part | 299 | .partitions = bast_default_nand_part, |
| 300 | }, | 300 | }, |
| 301 | [1] = { | 301 | [1] = { |
| 302 | .name = "chip0", | 302 | .name = "chip0", |
| 303 | .nr_chips = 1, | 303 | .nr_chips = 1, |
| 304 | .nr_map = chip0_map, | 304 | .nr_map = chip0_map, |
| 305 | .nr_partitions = ARRAY_SIZE(bast_default_nand_part), | 305 | .nr_partitions = ARRAY_SIZE(bast_default_nand_part), |
| 306 | .partitions = bast_default_nand_part | 306 | .partitions = bast_default_nand_part, |
| 307 | }, | 307 | }, |
| 308 | [2] = { | 308 | [2] = { |
| 309 | .name = "chip1", | 309 | .name = "chip1", |
| 310 | .nr_chips = 1, | 310 | .nr_chips = 1, |
| 311 | .nr_map = chip1_map, | 311 | .nr_map = chip1_map, |
| 312 | .nr_partitions = ARRAY_SIZE(bast_default_nand_part), | 312 | .nr_partitions = ARRAY_SIZE(bast_default_nand_part), |
| 313 | .partitions = bast_default_nand_part | 313 | .partitions = bast_default_nand_part, |
| 314 | }, | 314 | }, |
| 315 | [3] = { | 315 | [3] = { |
| 316 | .name = "chip2", | 316 | .name = "chip2", |
| 317 | .nr_chips = 1, | 317 | .nr_chips = 1, |
| 318 | .nr_map = chip2_map, | 318 | .nr_map = chip2_map, |
| 319 | .nr_partitions = ARRAY_SIZE(bast_default_nand_part), | 319 | .nr_partitions = ARRAY_SIZE(bast_default_nand_part), |
| 320 | .partitions = bast_default_nand_part | 320 | .partitions = bast_default_nand_part, |
| 321 | } | 321 | } |
| 322 | }; | 322 | }; |
| 323 | 323 | ||
| @@ -355,17 +355,17 @@ static struct resource bast_dm9k_resource[] = { | |||
| 355 | [0] = { | 355 | [0] = { |
| 356 | .start = S3C2410_CS5 + BAST_PA_DM9000, | 356 | .start = S3C2410_CS5 + BAST_PA_DM9000, |
| 357 | .end = S3C2410_CS5 + BAST_PA_DM9000 + 3, | 357 | .end = S3C2410_CS5 + BAST_PA_DM9000 + 3, |
| 358 | .flags = IORESOURCE_MEM | 358 | .flags = IORESOURCE_MEM, |
| 359 | }, | 359 | }, |
| 360 | [1] = { | 360 | [1] = { |
| 361 | .start = S3C2410_CS5 + BAST_PA_DM9000 + 0x40, | 361 | .start = S3C2410_CS5 + BAST_PA_DM9000 + 0x40, |
| 362 | .end = S3C2410_CS5 + BAST_PA_DM9000 + 0x40 + 0x3f, | 362 | .end = S3C2410_CS5 + BAST_PA_DM9000 + 0x40 + 0x3f, |
| 363 | .flags = IORESOURCE_MEM | 363 | .flags = IORESOURCE_MEM, |
| 364 | }, | 364 | }, |
| 365 | [2] = { | 365 | [2] = { |
| 366 | .start = IRQ_DM9000, | 366 | .start = IRQ_DM9000, |
| 367 | .end = IRQ_DM9000, | 367 | .end = IRQ_DM9000, |
| 368 | .flags = IORESOURCE_IRQ | 368 | .flags = IORESOURCE_IRQ, |
| 369 | } | 369 | } |
| 370 | 370 | ||
| 371 | }; | 371 | }; |
| @@ -375,7 +375,7 @@ static struct resource bast_dm9k_resource[] = { | |||
| 375 | */ | 375 | */ |
| 376 | 376 | ||
| 377 | static struct dm9000_plat_data bast_dm9k_platdata = { | 377 | static struct dm9000_plat_data bast_dm9k_platdata = { |
| 378 | .flags = DM9000_PLATF_16BITONLY | 378 | .flags = DM9000_PLATF_16BITONLY, |
| 379 | }; | 379 | }; |
| 380 | 380 | ||
| 381 | static struct platform_device bast_device_dm9k = { | 381 | static struct platform_device bast_device_dm9k = { |
| @@ -492,7 +492,7 @@ static struct s3c24xx_board bast_board __initdata = { | |||
| 492 | .devices = bast_devices, | 492 | .devices = bast_devices, |
| 493 | .devices_count = ARRAY_SIZE(bast_devices), | 493 | .devices_count = ARRAY_SIZE(bast_devices), |
| 494 | .clocks = bast_clocks, | 494 | .clocks = bast_clocks, |
| 495 | .clocks_count = ARRAY_SIZE(bast_clocks) | 495 | .clocks_count = ARRAY_SIZE(bast_clocks), |
| 496 | }; | 496 | }; |
| 497 | 497 | ||
| 498 | static void __init bast_map_io(void) | 498 | static void __init bast_map_io(void) |
diff --git a/arch/arm/plat-omap/dmtimer.c b/arch/arm/plat-omap/dmtimer.c index a1468d7326eb..38d7ebf87920 100644 --- a/arch/arm/plat-omap/dmtimer.c +++ b/arch/arm/plat-omap/dmtimer.c | |||
| @@ -26,7 +26,7 @@ | |||
| 26 | */ | 26 | */ |
| 27 | 27 | ||
| 28 | #include <linux/init.h> | 28 | #include <linux/init.h> |
| 29 | #include <asm/arch/hardware.h> | 29 | #include <asm/hardware.h> |
| 30 | #include <asm/arch/dmtimer.h> | 30 | #include <asm/arch/dmtimer.h> |
| 31 | #include <asm/io.h> | 31 | #include <asm/io.h> |
| 32 | #include <asm/arch/irqs.h> | 32 | #include <asm/arch/irqs.h> |
diff --git a/arch/arm/plat-omap/ocpi.c b/arch/arm/plat-omap/ocpi.c index 2ede2ee8cae4..b86148227480 100644 --- a/arch/arm/plat-omap/ocpi.c +++ b/arch/arm/plat-omap/ocpi.c | |||
| @@ -34,7 +34,7 @@ | |||
| 34 | 34 | ||
| 35 | #include <asm/io.h> | 35 | #include <asm/io.h> |
| 36 | #include <asm/hardware/clock.h> | 36 | #include <asm/hardware/clock.h> |
| 37 | #include <asm/arch/hardware.h> | 37 | #include <asm/hardware.h> |
| 38 | 38 | ||
| 39 | #define OCPI_BASE 0xfffec320 | 39 | #define OCPI_BASE 0xfffec320 |
| 40 | #define OCPI_FAULT (OCPI_BASE + 0x00) | 40 | #define OCPI_FAULT (OCPI_BASE + 0x00) |
diff --git a/arch/arm/plat-omap/pm.c b/arch/arm/plat-omap/pm.c index 966cca031ca7..1a24e2c10714 100644 --- a/arch/arm/plat-omap/pm.c +++ b/arch/arm/plat-omap/pm.c | |||
| @@ -509,7 +509,7 @@ static void omap_pm_init_proc(void) | |||
| 509 | * @state: suspend state we're entering. | 509 | * @state: suspend state we're entering. |
| 510 | * | 510 | * |
| 511 | */ | 511 | */ |
| 512 | //#include <asm/arch/hardware.h> | 512 | //#include <asm/hardware.h> |
| 513 | 513 | ||
| 514 | static int omap_pm_prepare(suspend_state_t state) | 514 | static int omap_pm_prepare(suspend_state_t state) |
| 515 | { | 515 | { |
diff --git a/arch/arm/plat-omap/sram-fn.S b/arch/arm/plat-omap/sram-fn.S index 4bea36964a00..66414cc8e6e3 100644 --- a/arch/arm/plat-omap/sram-fn.S +++ b/arch/arm/plat-omap/sram-fn.S | |||
| @@ -12,7 +12,7 @@ | |||
| 12 | #include <linux/linkage.h> | 12 | #include <linux/linkage.h> |
| 13 | #include <asm/assembler.h> | 13 | #include <asm/assembler.h> |
| 14 | #include <asm/arch/io.h> | 14 | #include <asm/arch/io.h> |
| 15 | #include <asm/arch/hardware.h> | 15 | #include <asm/hardware.h> |
| 16 | 16 | ||
| 17 | .text | 17 | .text |
| 18 | 18 | ||
diff --git a/arch/ia64/kernel/ivt.S b/arch/ia64/kernel/ivt.S index e06f21f60dc5..301f2e9d262e 100644 --- a/arch/ia64/kernel/ivt.S +++ b/arch/ia64/kernel/ivt.S | |||
| @@ -91,16 +91,17 @@ ENTRY(vhpt_miss) | |||
| 91 | * (the "original") TLB miss, which may either be caused by an instruction | 91 | * (the "original") TLB miss, which may either be caused by an instruction |
| 92 | * fetch or a data access (or non-access). | 92 | * fetch or a data access (or non-access). |
| 93 | * | 93 | * |
| 94 | * What we do here is normal TLB miss handing for the _original_ miss, followed | 94 | * What we do here is normal TLB miss handing for the _original_ miss, |
| 95 | * by inserting the TLB entry for the virtual page table page that the VHPT | 95 | * followed by inserting the TLB entry for the virtual page table page |
| 96 | * walker was attempting to access. The latter gets inserted as long | 96 | * that the VHPT walker was attempting to access. The latter gets |
| 97 | * as both L1 and L2 have valid mappings for the faulting address. | 97 | * inserted as long as page table entry above pte level have valid |
| 98 | * The TLB entry for the original miss gets inserted only if | 98 | * mappings for the faulting address. The TLB entry for the original |
| 99 | * the L3 entry indicates that the page is present. | 99 | * miss gets inserted only if the pte entry indicates that the page is |
| 100 | * present. | ||
| 100 | * | 101 | * |
| 101 | * do_page_fault gets invoked in the following cases: | 102 | * do_page_fault gets invoked in the following cases: |
| 102 | * - the faulting virtual address uses unimplemented address bits | 103 | * - the faulting virtual address uses unimplemented address bits |
| 103 | * - the faulting virtual address has no L1, L2, or L3 mapping | 104 | * - the faulting virtual address has no valid page table mapping |
| 104 | */ | 105 | */ |
| 105 | mov r16=cr.ifa // get address that caused the TLB miss | 106 | mov r16=cr.ifa // get address that caused the TLB miss |
| 106 | #ifdef CONFIG_HUGETLB_PAGE | 107 | #ifdef CONFIG_HUGETLB_PAGE |
| @@ -126,7 +127,7 @@ ENTRY(vhpt_miss) | |||
| 126 | #endif | 127 | #endif |
| 127 | ;; | 128 | ;; |
| 128 | cmp.eq p6,p7=5,r17 // is IFA pointing into to region 5? | 129 | cmp.eq p6,p7=5,r17 // is IFA pointing into to region 5? |
| 129 | shr.u r18=r22,PGDIR_SHIFT // get bits 33-63 of the faulting address | 130 | shr.u r18=r22,PGDIR_SHIFT // get bottom portion of pgd index bit |
| 130 | ;; | 131 | ;; |
| 131 | (p7) dep r17=r17,r19,(PAGE_SHIFT-3),3 // put region number bits in place | 132 | (p7) dep r17=r17,r19,(PAGE_SHIFT-3),3 // put region number bits in place |
| 132 | 133 | ||
| @@ -137,38 +138,38 @@ ENTRY(vhpt_miss) | |||
| 137 | (p6) shr.u r21=r21,PGDIR_SHIFT+PAGE_SHIFT | 138 | (p6) shr.u r21=r21,PGDIR_SHIFT+PAGE_SHIFT |
| 138 | (p7) shr.u r21=r21,PGDIR_SHIFT+PAGE_SHIFT-3 | 139 | (p7) shr.u r21=r21,PGDIR_SHIFT+PAGE_SHIFT-3 |
| 139 | ;; | 140 | ;; |
| 140 | (p6) dep r17=r18,r19,3,(PAGE_SHIFT-3) // r17=PTA + IFA(33,42)*8 | 141 | (p6) dep r17=r18,r19,3,(PAGE_SHIFT-3) // r17=pgd_offset for region 5 |
| 141 | (p7) dep r17=r18,r17,3,(PAGE_SHIFT-6) // r17=PTA + (((IFA(61,63) << 7) | IFA(33,39))*8) | 142 | (p7) dep r17=r18,r17,3,(PAGE_SHIFT-6) // r17=pgd_offset for region[0-4] |
| 142 | cmp.eq p7,p6=0,r21 // unused address bits all zeroes? | 143 | cmp.eq p7,p6=0,r21 // unused address bits all zeroes? |
| 143 | #ifdef CONFIG_PGTABLE_4 | 144 | #ifdef CONFIG_PGTABLE_4 |
| 144 | shr.u r28=r22,PUD_SHIFT // shift L2 index into position | 145 | shr.u r28=r22,PUD_SHIFT // shift pud index into position |
| 145 | #else | 146 | #else |
| 146 | shr.u r18=r22,PMD_SHIFT // shift L3 index into position | 147 | shr.u r18=r22,PMD_SHIFT // shift pmd index into position |
| 147 | #endif | 148 | #endif |
| 148 | ;; | 149 | ;; |
| 149 | ld8 r17=[r17] // fetch the L1 entry (may be 0) | 150 | ld8 r17=[r17] // get *pgd (may be 0) |
| 150 | ;; | 151 | ;; |
| 151 | (p7) cmp.eq p6,p7=r17,r0 // was L1 entry NULL? | 152 | (p7) cmp.eq p6,p7=r17,r0 // was pgd_present(*pgd) == NULL? |
| 152 | #ifdef CONFIG_PGTABLE_4 | 153 | #ifdef CONFIG_PGTABLE_4 |
| 153 | dep r28=r28,r17,3,(PAGE_SHIFT-3) // compute address of L2 page table entry | 154 | dep r28=r28,r17,3,(PAGE_SHIFT-3) // r28=pud_offset(pgd,addr) |
| 154 | ;; | 155 | ;; |
| 155 | shr.u r18=r22,PMD_SHIFT // shift L3 index into position | 156 | shr.u r18=r22,PMD_SHIFT // shift pmd index into position |
| 156 | (p7) ld8 r29=[r28] // fetch the L2 entry (may be 0) | 157 | (p7) ld8 r29=[r28] // get *pud (may be 0) |
| 157 | ;; | 158 | ;; |
| 158 | (p7) cmp.eq.or.andcm p6,p7=r29,r0 // was L2 entry NULL? | 159 | (p7) cmp.eq.or.andcm p6,p7=r29,r0 // was pud_present(*pud) == NULL? |
| 159 | dep r17=r18,r29,3,(PAGE_SHIFT-3) // compute address of L3 page table entry | 160 | dep r17=r18,r29,3,(PAGE_SHIFT-3) // r17=pmd_offset(pud,addr) |
| 160 | #else | 161 | #else |
| 161 | dep r17=r18,r17,3,(PAGE_SHIFT-3) // compute address of L3 page table entry | 162 | dep r17=r18,r17,3,(PAGE_SHIFT-3) // r17=pmd_offset(pgd,addr) |
| 162 | #endif | 163 | #endif |
| 163 | ;; | 164 | ;; |
| 164 | (p7) ld8 r20=[r17] // fetch the L3 entry (may be 0) | 165 | (p7) ld8 r20=[r17] // get *pmd (may be 0) |
| 165 | shr.u r19=r22,PAGE_SHIFT // shift L4 index into position | 166 | shr.u r19=r22,PAGE_SHIFT // shift pte index into position |
| 166 | ;; | 167 | ;; |
| 167 | (p7) cmp.eq.or.andcm p6,p7=r20,r0 // was L3 entry NULL? | 168 | (p7) cmp.eq.or.andcm p6,p7=r20,r0 // was pmd_present(*pmd) == NULL? |
| 168 | dep r21=r19,r20,3,(PAGE_SHIFT-3) // compute address of L4 page table entry | 169 | dep r21=r19,r20,3,(PAGE_SHIFT-3) // r21=pte_offset(pmd,addr) |
| 169 | ;; | 170 | ;; |
| 170 | (p7) ld8 r18=[r21] // read the L4 PTE | 171 | (p7) ld8 r18=[r21] // read *pte |
| 171 | mov r19=cr.isr // cr.isr bit 0 tells us if this is an insn miss | 172 | mov r19=cr.isr // cr.isr bit 32 tells us if this is an insn miss |
| 172 | ;; | 173 | ;; |
| 173 | (p7) tbit.z p6,p7=r18,_PAGE_P_BIT // page present bit cleared? | 174 | (p7) tbit.z p6,p7=r18,_PAGE_P_BIT // page present bit cleared? |
| 174 | mov r22=cr.iha // get the VHPT address that caused the TLB miss | 175 | mov r22=cr.iha // get the VHPT address that caused the TLB miss |
| @@ -202,25 +203,33 @@ ENTRY(vhpt_miss) | |||
| 202 | dv_serialize_data | 203 | dv_serialize_data |
| 203 | 204 | ||
| 204 | /* | 205 | /* |
| 205 | * Re-check L2 and L3 pagetable. If they changed, we may have received a ptc.g | 206 | * Re-check pagetable entry. If they changed, we may have received a ptc.g |
| 206 | * between reading the pagetable and the "itc". If so, flush the entry we | 207 | * between reading the pagetable and the "itc". If so, flush the entry we |
| 207 | * inserted and retry. | 208 | * inserted and retry. At this point, we have: |
| 209 | * | ||
| 210 | * r28 = equivalent of pud_offset(pgd, ifa) | ||
| 211 | * r17 = equivalent of pmd_offset(pud, ifa) | ||
| 212 | * r21 = equivalent of pte_offset(pmd, ifa) | ||
| 213 | * | ||
| 214 | * r29 = *pud | ||
| 215 | * r20 = *pmd | ||
| 216 | * r18 = *pte | ||
| 208 | */ | 217 | */ |
| 209 | ld8 r25=[r21] // read L4 entry again | 218 | ld8 r25=[r21] // read *pte again |
| 210 | ld8 r26=[r17] // read L3 PTE again | 219 | ld8 r26=[r17] // read *pmd again |
| 211 | #ifdef CONFIG_PGTABLE_4 | 220 | #ifdef CONFIG_PGTABLE_4 |
| 212 | ld8 r18=[r28] // read L2 entry again | 221 | ld8 r19=[r28] // read *pud again |
| 213 | #endif | 222 | #endif |
| 214 | cmp.ne p6,p7=r0,r0 | 223 | cmp.ne p6,p7=r0,r0 |
| 215 | ;; | 224 | ;; |
| 216 | cmp.ne.or.andcm p6,p7=r26,r20 // did L3 entry change | 225 | cmp.ne.or.andcm p6,p7=r26,r20 // did *pmd change |
| 217 | #ifdef CONFIG_PGTABLE_4 | 226 | #ifdef CONFIG_PGTABLE_4 |
| 218 | cmp.ne.or.andcm p6,p7=r29,r18 // did L4 PTE change | 227 | cmp.ne.or.andcm p6,p7=r19,r29 // did *pud change |
| 219 | #endif | 228 | #endif |
| 220 | mov r27=PAGE_SHIFT<<2 | 229 | mov r27=PAGE_SHIFT<<2 |
| 221 | ;; | 230 | ;; |
| 222 | (p6) ptc.l r22,r27 // purge PTE page translation | 231 | (p6) ptc.l r22,r27 // purge PTE page translation |
| 223 | (p7) cmp.ne.or.andcm p6,p7=r25,r18 // did L4 PTE change | 232 | (p7) cmp.ne.or.andcm p6,p7=r25,r18 // did *pte change |
| 224 | ;; | 233 | ;; |
| 225 | (p6) ptc.l r16,r27 // purge translation | 234 | (p6) ptc.l r16,r27 // purge translation |
| 226 | #endif | 235 | #endif |
| @@ -235,19 +244,19 @@ END(vhpt_miss) | |||
| 235 | ENTRY(itlb_miss) | 244 | ENTRY(itlb_miss) |
| 236 | DBG_FAULT(1) | 245 | DBG_FAULT(1) |
| 237 | /* | 246 | /* |
| 238 | * The ITLB handler accesses the L3 PTE via the virtually mapped linear | 247 | * The ITLB handler accesses the PTE via the virtually mapped linear |
| 239 | * page table. If a nested TLB miss occurs, we switch into physical | 248 | * page table. If a nested TLB miss occurs, we switch into physical |
| 240 | * mode, walk the page table, and then re-execute the L3 PTE read | 249 | * mode, walk the page table, and then re-execute the PTE read and |
| 241 | * and go on normally after that. | 250 | * go on normally after that. |
| 242 | */ | 251 | */ |
| 243 | mov r16=cr.ifa // get virtual address | 252 | mov r16=cr.ifa // get virtual address |
| 244 | mov r29=b0 // save b0 | 253 | mov r29=b0 // save b0 |
| 245 | mov r31=pr // save predicates | 254 | mov r31=pr // save predicates |
| 246 | .itlb_fault: | 255 | .itlb_fault: |
| 247 | mov r17=cr.iha // get virtual address of L3 PTE | 256 | mov r17=cr.iha // get virtual address of PTE |
| 248 | movl r30=1f // load nested fault continuation point | 257 | movl r30=1f // load nested fault continuation point |
| 249 | ;; | 258 | ;; |
| 250 | 1: ld8 r18=[r17] // read L3 PTE | 259 | 1: ld8 r18=[r17] // read *pte |
| 251 | ;; | 260 | ;; |
| 252 | mov b0=r29 | 261 | mov b0=r29 |
| 253 | tbit.z p6,p0=r18,_PAGE_P_BIT // page present bit cleared? | 262 | tbit.z p6,p0=r18,_PAGE_P_BIT // page present bit cleared? |
| @@ -262,7 +271,7 @@ ENTRY(itlb_miss) | |||
| 262 | */ | 271 | */ |
| 263 | dv_serialize_data | 272 | dv_serialize_data |
| 264 | 273 | ||
| 265 | ld8 r19=[r17] // read L3 PTE again and see if same | 274 | ld8 r19=[r17] // read *pte again and see if same |
| 266 | mov r20=PAGE_SHIFT<<2 // setup page size for purge | 275 | mov r20=PAGE_SHIFT<<2 // setup page size for purge |
| 267 | ;; | 276 | ;; |
| 268 | cmp.ne p7,p0=r18,r19 | 277 | cmp.ne p7,p0=r18,r19 |
| @@ -279,19 +288,19 @@ END(itlb_miss) | |||
| 279 | ENTRY(dtlb_miss) | 288 | ENTRY(dtlb_miss) |
| 280 | DBG_FAULT(2) | 289 | DBG_FAULT(2) |
| 281 | /* | 290 | /* |
| 282 | * The DTLB handler accesses the L3 PTE via the virtually mapped linear | 291 | * The DTLB handler accesses the PTE via the virtually mapped linear |
| 283 | * page table. If a nested TLB miss occurs, we switch into physical | 292 | * page table. If a nested TLB miss occurs, we switch into physical |
| 284 | * mode, walk the page table, and then re-execute the L3 PTE read | 293 | * mode, walk the page table, and then re-execute the PTE read and |
| 285 | * and go on normally after that. | 294 | * go on normally after that. |
| 286 | */ | 295 | */ |
| 287 | mov r16=cr.ifa // get virtual address | 296 | mov r16=cr.ifa // get virtual address |
| 288 | mov r29=b0 // save b0 | 297 | mov r29=b0 // save b0 |
| 289 | mov r31=pr // save predicates | 298 | mov r31=pr // save predicates |
| 290 | dtlb_fault: | 299 | dtlb_fault: |
| 291 | mov r17=cr.iha // get virtual address of L3 PTE | 300 | mov r17=cr.iha // get virtual address of PTE |
| 292 | movl r30=1f // load nested fault continuation point | 301 | movl r30=1f // load nested fault continuation point |
| 293 | ;; | 302 | ;; |
| 294 | 1: ld8 r18=[r17] // read L3 PTE | 303 | 1: ld8 r18=[r17] // read *pte |
| 295 | ;; | 304 | ;; |
| 296 | mov b0=r29 | 305 | mov b0=r29 |
| 297 | tbit.z p6,p0=r18,_PAGE_P_BIT // page present bit cleared? | 306 | tbit.z p6,p0=r18,_PAGE_P_BIT // page present bit cleared? |
| @@ -306,7 +315,7 @@ dtlb_fault: | |||
| 306 | */ | 315 | */ |
| 307 | dv_serialize_data | 316 | dv_serialize_data |
| 308 | 317 | ||
| 309 | ld8 r19=[r17] // read L3 PTE again and see if same | 318 | ld8 r19=[r17] // read *pte again and see if same |
| 310 | mov r20=PAGE_SHIFT<<2 // setup page size for purge | 319 | mov r20=PAGE_SHIFT<<2 // setup page size for purge |
| 311 | ;; | 320 | ;; |
| 312 | cmp.ne p7,p0=r18,r19 | 321 | cmp.ne p7,p0=r18,r19 |
| @@ -420,7 +429,7 @@ ENTRY(nested_dtlb_miss) | |||
| 420 | * r30: continuation address | 429 | * r30: continuation address |
| 421 | * r31: saved pr | 430 | * r31: saved pr |
| 422 | * | 431 | * |
| 423 | * Output: r17: physical address of L3 PTE of faulting address | 432 | * Output: r17: physical address of PTE of faulting address |
| 424 | * r29: saved b0 | 433 | * r29: saved b0 |
| 425 | * r30: continuation address | 434 | * r30: continuation address |
| 426 | * r31: saved pr | 435 | * r31: saved pr |
| @@ -450,33 +459,33 @@ ENTRY(nested_dtlb_miss) | |||
| 450 | (p6) shr.u r21=r21,PGDIR_SHIFT+PAGE_SHIFT | 459 | (p6) shr.u r21=r21,PGDIR_SHIFT+PAGE_SHIFT |
| 451 | (p7) shr.u r21=r21,PGDIR_SHIFT+PAGE_SHIFT-3 | 460 | (p7) shr.u r21=r21,PGDIR_SHIFT+PAGE_SHIFT-3 |
| 452 | ;; | 461 | ;; |
| 453 | (p6) dep r17=r18,r19,3,(PAGE_SHIFT-3) // r17=PTA + IFA(33,42)*8 | 462 | (p6) dep r17=r18,r19,3,(PAGE_SHIFT-3) // r17=pgd_offset for region 5 |
| 454 | (p7) dep r17=r18,r17,3,(PAGE_SHIFT-6) // r17=PTA + (((IFA(61,63) << 7) | IFA(33,39))*8) | 463 | (p7) dep r17=r18,r17,3,(PAGE_SHIFT-6) // r17=pgd_offset for region[0-4] |
| 455 | cmp.eq p7,p6=0,r21 // unused address bits all zeroes? | 464 | cmp.eq p7,p6=0,r21 // unused address bits all zeroes? |
| 456 | #ifdef CONFIG_PGTABLE_4 | 465 | #ifdef CONFIG_PGTABLE_4 |
| 457 | shr.u r18=r22,PUD_SHIFT // shift L2 index into position | 466 | shr.u r18=r22,PUD_SHIFT // shift pud index into position |
| 458 | #else | 467 | #else |
| 459 | shr.u r18=r22,PMD_SHIFT // shift L3 index into position | 468 | shr.u r18=r22,PMD_SHIFT // shift pmd index into position |
| 460 | #endif | 469 | #endif |
| 461 | ;; | 470 | ;; |
| 462 | ld8 r17=[r17] // fetch the L1 entry (may be 0) | 471 | ld8 r17=[r17] // get *pgd (may be 0) |
| 463 | ;; | 472 | ;; |
| 464 | (p7) cmp.eq p6,p7=r17,r0 // was L1 entry NULL? | 473 | (p7) cmp.eq p6,p7=r17,r0 // was pgd_present(*pgd) == NULL? |
| 465 | dep r17=r18,r17,3,(PAGE_SHIFT-3) // compute address of L2 page table entry | 474 | dep r17=r18,r17,3,(PAGE_SHIFT-3) // r17=p[u|m]d_offset(pgd,addr) |
| 466 | ;; | 475 | ;; |
| 467 | #ifdef CONFIG_PGTABLE_4 | 476 | #ifdef CONFIG_PGTABLE_4 |
| 468 | (p7) ld8 r17=[r17] // fetch the L2 entry (may be 0) | 477 | (p7) ld8 r17=[r17] // get *pud (may be 0) |
| 469 | shr.u r18=r22,PMD_SHIFT // shift L3 index into position | 478 | shr.u r18=r22,PMD_SHIFT // shift pmd index into position |
| 470 | ;; | 479 | ;; |
| 471 | (p7) cmp.eq.or.andcm p6,p7=r17,r0 // was L2 entry NULL? | 480 | (p7) cmp.eq.or.andcm p6,p7=r17,r0 // was pud_present(*pud) == NULL? |
| 472 | dep r17=r18,r17,3,(PAGE_SHIFT-3) // compute address of L2 page table entry | 481 | dep r17=r18,r17,3,(PAGE_SHIFT-3) // r17=pmd_offset(pud,addr) |
| 473 | ;; | 482 | ;; |
| 474 | #endif | 483 | #endif |
| 475 | (p7) ld8 r17=[r17] // fetch the L3 entry (may be 0) | 484 | (p7) ld8 r17=[r17] // get *pmd (may be 0) |
| 476 | shr.u r19=r22,PAGE_SHIFT // shift L4 index into position | 485 | shr.u r19=r22,PAGE_SHIFT // shift pte index into position |
| 477 | ;; | 486 | ;; |
| 478 | (p7) cmp.eq.or.andcm p6,p7=r17,r0 // was L3 entry NULL? | 487 | (p7) cmp.eq.or.andcm p6,p7=r17,r0 // was pmd_present(*pmd) == NULL? |
| 479 | dep r17=r19,r17,3,(PAGE_SHIFT-3) // compute address of L4 page table entry | 488 | dep r17=r19,r17,3,(PAGE_SHIFT-3) // r17=pte_offset(pmd,addr); |
| 480 | (p6) br.cond.spnt page_fault | 489 | (p6) br.cond.spnt page_fault |
| 481 | mov b0=r30 | 490 | mov b0=r30 |
| 482 | br.sptk.many b0 // return to continuation point | 491 | br.sptk.many b0 // return to continuation point |
diff --git a/arch/mips/Makefile b/arch/mips/Makefile index 02692027730a..e14ba5e01a36 100644 --- a/arch/mips/Makefile +++ b/arch/mips/Makefile | |||
| @@ -700,6 +700,7 @@ load-$(CONFIG_SNI_RM200_PCI) += 0xffffffff80600000 | |||
| 700 | # | 700 | # |
| 701 | core-$(CONFIG_TOSHIBA_JMR3927) += arch/mips/jmr3927/rbhma3100/ \ | 701 | core-$(CONFIG_TOSHIBA_JMR3927) += arch/mips/jmr3927/rbhma3100/ \ |
| 702 | arch/mips/jmr3927/common/ | 702 | arch/mips/jmr3927/common/ |
| 703 | cflags-$(CONFIG_TOSHIBA_JMR3927) += -Iinclude/asm-mips/mach-jmr3927 | ||
| 703 | load-$(CONFIG_TOSHIBA_JMR3927) += 0xffffffff80050000 | 704 | load-$(CONFIG_TOSHIBA_JMR3927) += 0xffffffff80050000 |
| 704 | 705 | ||
| 705 | # | 706 | # |
diff --git a/arch/mips/au1000/common/setup.c b/arch/mips/au1000/common/setup.c index 4f21f42d096b..08c8c855cc9c 100644 --- a/arch/mips/au1000/common/setup.c +++ b/arch/mips/au1000/common/setup.c | |||
| @@ -93,7 +93,7 @@ void __init plat_setup(void) | |||
| 93 | 93 | ||
| 94 | argptr = prom_getcmdline(); | 94 | argptr = prom_getcmdline(); |
| 95 | 95 | ||
| 96 | #ifdef CONFIG_SERIAL_AU1X00_CONSOLE | 96 | #if defined(CONFIG_SERIAL_AU1X00_CONSOLE) || defined(CONFIG_SERIAL_8250_CONSOLE) |
| 97 | if ((argptr = strstr(argptr, "console=")) == NULL) { | 97 | if ((argptr = strstr(argptr, "console=")) == NULL) { |
| 98 | argptr = prom_getcmdline(); | 98 | argptr = prom_getcmdline(); |
| 99 | strcat(argptr, " console=ttyS0,115200"); | 99 | strcat(argptr, " console=ttyS0,115200"); |
diff --git a/arch/mips/configs/atlas_defconfig b/arch/mips/configs/atlas_defconfig index 132ec3dac63f..74990758154b 100644 --- a/arch/mips/configs/atlas_defconfig +++ b/arch/mips/configs/atlas_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:25:13 2005 | 4 | # Thu Nov 10 12:14:02 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -57,6 +57,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 57 | CONFIG_KMOD=y | 57 | CONFIG_KMOD=y |
| 58 | 58 | ||
| 59 | # | 59 | # |
| 60 | # Block layer | ||
| 61 | # | ||
| 62 | # CONFIG_LBD is not set | ||
| 63 | |||
| 64 | # | ||
| 65 | # IO Schedulers | ||
| 66 | # | ||
| 67 | CONFIG_IOSCHED_NOOP=y | ||
| 68 | CONFIG_IOSCHED_AS=y | ||
| 69 | CONFIG_IOSCHED_DEADLINE=y | ||
| 70 | CONFIG_IOSCHED_CFQ=y | ||
| 71 | CONFIG_DEFAULT_AS=y | ||
| 72 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 73 | # CONFIG_DEFAULT_CFQ is not set | ||
| 74 | # CONFIG_DEFAULT_NOOP is not set | ||
| 75 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 76 | |||
| 77 | # | ||
| 60 | # Machine selection | 78 | # Machine selection |
| 61 | # | 79 | # |
| 62 | # CONFIG_MIPS_MTX1 is not set | 80 | # CONFIG_MIPS_MTX1 is not set |
| @@ -191,6 +209,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 191 | CONFIG_FLATMEM=y | 209 | CONFIG_FLATMEM=y |
| 192 | CONFIG_FLAT_NODE_MEM_MAP=y | 210 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 193 | # CONFIG_SPARSEMEM_STATIC is not set | 211 | # CONFIG_SPARSEMEM_STATIC is not set |
| 212 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 194 | CONFIG_PREEMPT_NONE=y | 213 | CONFIG_PREEMPT_NONE=y |
| 195 | # CONFIG_PREEMPT_VOLUNTARY is not set | 214 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 196 | # CONFIG_PREEMPT is not set | 215 | # CONFIG_PREEMPT is not set |
| @@ -309,6 +328,10 @@ CONFIG_IPV6_TUNNEL=m | |||
| 309 | CONFIG_NETFILTER=y | 328 | CONFIG_NETFILTER=y |
| 310 | # CONFIG_NETFILTER_DEBUG is not set | 329 | # CONFIG_NETFILTER_DEBUG is not set |
| 311 | CONFIG_BRIDGE_NETFILTER=y | 330 | CONFIG_BRIDGE_NETFILTER=y |
| 331 | |||
| 332 | # | ||
| 333 | # Core Netfilter Configuration | ||
| 334 | # | ||
| 312 | CONFIG_NETFILTER_NETLINK=m | 335 | CONFIG_NETFILTER_NETLINK=m |
| 313 | CONFIG_NETFILTER_NETLINK_QUEUE=m | 336 | CONFIG_NETFILTER_NETLINK_QUEUE=m |
| 314 | CONFIG_NETFILTER_NETLINK_LOG=m | 337 | CONFIG_NETFILTER_NETLINK_LOG=m |
| @@ -363,6 +386,7 @@ CONFIG_IP_NF_TARGET_REJECT=m | |||
| 363 | CONFIG_IP_NF_TARGET_LOG=m | 386 | CONFIG_IP_NF_TARGET_LOG=m |
| 364 | CONFIG_IP_NF_TARGET_ULOG=m | 387 | CONFIG_IP_NF_TARGET_ULOG=m |
| 365 | CONFIG_IP_NF_TARGET_TCPMSS=m | 388 | CONFIG_IP_NF_TARGET_TCPMSS=m |
| 389 | CONFIG_IP_NF_TARGET_NFQUEUE=m | ||
| 366 | CONFIG_IP_NF_NAT=m | 390 | CONFIG_IP_NF_NAT=m |
| 367 | CONFIG_IP_NF_NAT_NEEDED=y | 391 | CONFIG_IP_NF_NAT_NEEDED=y |
| 368 | CONFIG_IP_NF_TARGET_MASQUERADE=m | 392 | CONFIG_IP_NF_TARGET_MASQUERADE=m |
| @@ -412,6 +436,7 @@ CONFIG_IP6_NF_MATCH_PHYSDEV=m | |||
| 412 | CONFIG_IP6_NF_FILTER=m | 436 | CONFIG_IP6_NF_FILTER=m |
| 413 | CONFIG_IP6_NF_TARGET_LOG=m | 437 | CONFIG_IP6_NF_TARGET_LOG=m |
| 414 | CONFIG_IP6_NF_TARGET_REJECT=m | 438 | CONFIG_IP6_NF_TARGET_REJECT=m |
| 439 | CONFIG_IP6_NF_TARGET_NFQUEUE=m | ||
| 415 | CONFIG_IP6_NF_MANGLE=m | 440 | CONFIG_IP6_NF_MANGLE=m |
| 416 | CONFIG_IP6_NF_TARGET_MARK=m | 441 | CONFIG_IP6_NF_TARGET_MARK=m |
| 417 | CONFIG_IP6_NF_TARGET_HL=m | 442 | CONFIG_IP6_NF_TARGET_HL=m |
| @@ -472,10 +497,18 @@ CONFIG_IPDDP_DECAP=y | |||
| 472 | CONFIG_NET_DIVERT=y | 497 | CONFIG_NET_DIVERT=y |
| 473 | # CONFIG_ECONET is not set | 498 | # CONFIG_ECONET is not set |
| 474 | # CONFIG_WAN_ROUTER is not set | 499 | # CONFIG_WAN_ROUTER is not set |
| 500 | |||
| 501 | # | ||
| 502 | # QoS and/or fair queueing | ||
| 503 | # | ||
| 475 | CONFIG_NET_SCHED=y | 504 | CONFIG_NET_SCHED=y |
| 476 | CONFIG_NET_SCH_CLK_JIFFIES=y | 505 | CONFIG_NET_SCH_CLK_JIFFIES=y |
| 477 | # CONFIG_NET_SCH_CLK_GETTIMEOFDAY is not set | 506 | # CONFIG_NET_SCH_CLK_GETTIMEOFDAY is not set |
| 478 | # CONFIG_NET_SCH_CLK_CPU is not set | 507 | # CONFIG_NET_SCH_CLK_CPU is not set |
| 508 | |||
| 509 | # | ||
| 510 | # Queueing/Scheduling | ||
| 511 | # | ||
| 479 | CONFIG_NET_SCH_CBQ=m | 512 | CONFIG_NET_SCH_CBQ=m |
| 480 | CONFIG_NET_SCH_HTB=m | 513 | CONFIG_NET_SCH_HTB=m |
| 481 | CONFIG_NET_SCH_HFSC=m | 514 | CONFIG_NET_SCH_HFSC=m |
| @@ -488,8 +521,10 @@ CONFIG_NET_SCH_GRED=m | |||
| 488 | CONFIG_NET_SCH_DSMARK=m | 521 | CONFIG_NET_SCH_DSMARK=m |
| 489 | CONFIG_NET_SCH_NETEM=m | 522 | CONFIG_NET_SCH_NETEM=m |
| 490 | CONFIG_NET_SCH_INGRESS=m | 523 | CONFIG_NET_SCH_INGRESS=m |
| 491 | CONFIG_NET_QOS=y | 524 | |
| 492 | CONFIG_NET_ESTIMATOR=y | 525 | # |
| 526 | # Classification | ||
| 527 | # | ||
| 493 | CONFIG_NET_CLS=y | 528 | CONFIG_NET_CLS=y |
| 494 | CONFIG_NET_CLS_BASIC=m | 529 | CONFIG_NET_CLS_BASIC=m |
| 495 | CONFIG_NET_CLS_TCINDEX=m | 530 | CONFIG_NET_CLS_TCINDEX=m |
| @@ -498,13 +533,14 @@ CONFIG_NET_CLS_ROUTE=y | |||
| 498 | CONFIG_NET_CLS_FW=m | 533 | CONFIG_NET_CLS_FW=m |
| 499 | CONFIG_NET_CLS_U32=m | 534 | CONFIG_NET_CLS_U32=m |
| 500 | # CONFIG_CLS_U32_PERF is not set | 535 | # CONFIG_CLS_U32_PERF is not set |
| 501 | CONFIG_NET_CLS_IND=y | ||
| 502 | # CONFIG_CLS_U32_MARK is not set | 536 | # CONFIG_CLS_U32_MARK is not set |
| 503 | CONFIG_NET_CLS_RSVP=m | 537 | CONFIG_NET_CLS_RSVP=m |
| 504 | CONFIG_NET_CLS_RSVP6=m | 538 | CONFIG_NET_CLS_RSVP6=m |
| 505 | # CONFIG_NET_EMATCH is not set | 539 | # CONFIG_NET_EMATCH is not set |
| 506 | # CONFIG_NET_CLS_ACT is not set | 540 | # CONFIG_NET_CLS_ACT is not set |
| 507 | CONFIG_NET_CLS_POLICE=y | 541 | CONFIG_NET_CLS_POLICE=y |
| 542 | CONFIG_NET_CLS_IND=y | ||
| 543 | CONFIG_NET_ESTIMATOR=y | ||
| 508 | 544 | ||
| 509 | # | 545 | # |
| 510 | # Network testing | 546 | # Network testing |
| @@ -565,18 +601,9 @@ CONFIG_BLK_DEV_RAM=y | |||
| 565 | CONFIG_BLK_DEV_RAM_COUNT=16 | 601 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 566 | CONFIG_BLK_DEV_RAM_SIZE=4096 | 602 | CONFIG_BLK_DEV_RAM_SIZE=4096 |
| 567 | # CONFIG_BLK_DEV_INITRD is not set | 603 | # CONFIG_BLK_DEV_INITRD is not set |
| 568 | # CONFIG_LBD is not set | ||
| 569 | CONFIG_CDROM_PKTCDVD=m | 604 | CONFIG_CDROM_PKTCDVD=m |
| 570 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 605 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 571 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 606 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 572 | |||
| 573 | # | ||
| 574 | # IO Schedulers | ||
| 575 | # | ||
| 576 | CONFIG_IOSCHED_NOOP=y | ||
| 577 | CONFIG_IOSCHED_AS=y | ||
| 578 | CONFIG_IOSCHED_DEADLINE=y | ||
| 579 | CONFIG_IOSCHED_CFQ=y | ||
| 580 | CONFIG_ATA_OVER_ETH=m | 607 | CONFIG_ATA_OVER_ETH=m |
| 581 | 608 | ||
| 582 | # | 609 | # |
| @@ -643,6 +670,7 @@ CONFIG_SCSI_SAS_ATTRS=m | |||
| 643 | # | 670 | # |
| 644 | # SCSI low-level drivers | 671 | # SCSI low-level drivers |
| 645 | # | 672 | # |
| 673 | CONFIG_ISCSI_TCP=m | ||
| 646 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set | 674 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set |
| 647 | # CONFIG_SCSI_3W_9XXX is not set | 675 | # CONFIG_SCSI_3W_9XXX is not set |
| 648 | # CONFIG_SCSI_ACARD is not set | 676 | # CONFIG_SCSI_ACARD is not set |
| @@ -653,6 +681,7 @@ CONFIG_SCSI_SAS_ATTRS=m | |||
| 653 | # CONFIG_SCSI_DPT_I2O is not set | 681 | # CONFIG_SCSI_DPT_I2O is not set |
| 654 | # CONFIG_MEGARAID_NEWGEN is not set | 682 | # CONFIG_MEGARAID_NEWGEN is not set |
| 655 | # CONFIG_MEGARAID_LEGACY is not set | 683 | # CONFIG_MEGARAID_LEGACY is not set |
| 684 | # CONFIG_MEGARAID_SAS is not set | ||
| 656 | # CONFIG_SCSI_SATA is not set | 685 | # CONFIG_SCSI_SATA is not set |
| 657 | # CONFIG_SCSI_DMX3191D is not set | 686 | # CONFIG_SCSI_DMX3191D is not set |
| 658 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | 687 | # CONFIG_SCSI_FUTURE_DOMAIN is not set |
| @@ -707,6 +736,7 @@ CONFIG_DM_MULTIPATH_EMC=m | |||
| 707 | # CONFIG_FUSION is not set | 736 | # CONFIG_FUSION is not set |
| 708 | # CONFIG_FUSION_SPI is not set | 737 | # CONFIG_FUSION_SPI is not set |
| 709 | # CONFIG_FUSION_FC is not set | 738 | # CONFIG_FUSION_FC is not set |
| 739 | # CONFIG_FUSION_SAS is not set | ||
| 710 | 740 | ||
| 711 | # | 741 | # |
| 712 | # IEEE 1394 (FireWire) support | 742 | # IEEE 1394 (FireWire) support |
| @@ -736,7 +766,6 @@ CONFIG_TUN=m | |||
| 736 | # PHY device support | 766 | # PHY device support |
| 737 | # | 767 | # |
| 738 | CONFIG_PHYLIB=m | 768 | CONFIG_PHYLIB=m |
| 739 | CONFIG_PHYCONTROL=y | ||
| 740 | 769 | ||
| 741 | # | 770 | # |
| 742 | # MII PHY device drivers | 771 | # MII PHY device drivers |
| @@ -754,6 +783,7 @@ CONFIG_NET_ETHERNET=y | |||
| 754 | CONFIG_MII=y | 783 | CONFIG_MII=y |
| 755 | # CONFIG_HAPPYMEAL is not set | 784 | # CONFIG_HAPPYMEAL is not set |
| 756 | # CONFIG_SUNGEM is not set | 785 | # CONFIG_SUNGEM is not set |
| 786 | # CONFIG_CASSINI is not set | ||
| 757 | # CONFIG_NET_VENDOR_3COM is not set | 787 | # CONFIG_NET_VENDOR_3COM is not set |
| 758 | 788 | ||
| 759 | # | 789 | # |
| @@ -933,6 +963,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 933 | # TPM devices | 963 | # TPM devices |
| 934 | # | 964 | # |
| 935 | # CONFIG_TCG_TPM is not set | 965 | # CONFIG_TCG_TPM is not set |
| 966 | # CONFIG_TELCLOCK is not set | ||
| 936 | 967 | ||
| 937 | # | 968 | # |
| 938 | # I2C support | 969 | # I2C support |
| @@ -992,6 +1023,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 992 | # CONFIG_USB is not set | 1023 | # CONFIG_USB is not set |
| 993 | 1024 | ||
| 994 | # | 1025 | # |
| 1026 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 1027 | # | ||
| 1028 | |||
| 1029 | # | ||
| 995 | # USB Gadget Support | 1030 | # USB Gadget Support |
| 996 | # | 1031 | # |
| 997 | # CONFIG_USB_GADGET is not set | 1032 | # CONFIG_USB_GADGET is not set |
| @@ -1037,7 +1072,7 @@ CONFIG_JFS_SECURITY=y | |||
| 1037 | CONFIG_FS_POSIX_ACL=y | 1072 | CONFIG_FS_POSIX_ACL=y |
| 1038 | CONFIG_XFS_FS=m | 1073 | CONFIG_XFS_FS=m |
| 1039 | CONFIG_XFS_EXPORT=y | 1074 | CONFIG_XFS_EXPORT=y |
| 1040 | CONFIG_XFS_QUOTA=m | 1075 | CONFIG_XFS_QUOTA=y |
| 1041 | CONFIG_XFS_SECURITY=y | 1076 | CONFIG_XFS_SECURITY=y |
| 1042 | CONFIG_XFS_POSIX_ACL=y | 1077 | CONFIG_XFS_POSIX_ACL=y |
| 1043 | # CONFIG_XFS_RT is not set | 1078 | # CONFIG_XFS_RT is not set |
diff --git a/arch/mips/configs/bigsur_defconfig b/arch/mips/configs/bigsur_defconfig index 25e8a08e68be..ea4b75604c23 100644 --- a/arch/mips/configs/bigsur_defconfig +++ b/arch/mips/configs/bigsur_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:25:17 2005 | 4 | # Mon Nov 7 23:04:36 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -61,6 +61,23 @@ CONFIG_KMOD=y | |||
| 61 | CONFIG_STOP_MACHINE=y | 61 | CONFIG_STOP_MACHINE=y |
| 62 | 62 | ||
| 63 | # | 63 | # |
| 64 | # Block layer | ||
| 65 | # | ||
| 66 | |||
| 67 | # | ||
| 68 | # IO Schedulers | ||
| 69 | # | ||
| 70 | CONFIG_IOSCHED_NOOP=y | ||
| 71 | CONFIG_IOSCHED_AS=y | ||
| 72 | CONFIG_IOSCHED_DEADLINE=y | ||
| 73 | CONFIG_IOSCHED_CFQ=y | ||
| 74 | CONFIG_DEFAULT_AS=y | ||
| 75 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 76 | # CONFIG_DEFAULT_CFQ is not set | ||
| 77 | # CONFIG_DEFAULT_NOOP is not set | ||
| 78 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 79 | |||
| 80 | # | ||
| 64 | # Machine selection | 81 | # Machine selection |
| 65 | # | 82 | # |
| 66 | # CONFIG_MIPS_MTX1 is not set | 83 | # CONFIG_MIPS_MTX1 is not set |
| @@ -127,8 +144,8 @@ CONFIG_SIBYTE_SB1xxx_SOC=y | |||
| 127 | # CONFIG_CPU_SB1_PASS_2_112x is not set | 144 | # CONFIG_CPU_SB1_PASS_2_112x is not set |
| 128 | # CONFIG_CPU_SB1_PASS_3 is not set | 145 | # CONFIG_CPU_SB1_PASS_3 is not set |
| 129 | # CONFIG_SIMULATION is not set | 146 | # CONFIG_SIMULATION is not set |
| 130 | # CONFIG_CONFIG_SB1_CEX_ALWAYS_FATAL is not set | 147 | # CONFIG_SB1_CEX_ALWAYS_FATAL is not set |
| 131 | # CONFIG_CONFIG_SB1_CERR_STALL is not set | 148 | # CONFIG_SB1_CERR_STALL is not set |
| 132 | CONFIG_SIBYTE_CFE=y | 149 | CONFIG_SIBYTE_CFE=y |
| 133 | # CONFIG_SIBYTE_CFE_CONSOLE is not set | 150 | # CONFIG_SIBYTE_CFE_CONSOLE is not set |
| 134 | # CONFIG_SIBYTE_BUS_WATCHER is not set | 151 | # CONFIG_SIBYTE_BUS_WATCHER is not set |
| @@ -198,6 +215,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 198 | CONFIG_FLATMEM=y | 215 | CONFIG_FLATMEM=y |
| 199 | CONFIG_FLAT_NODE_MEM_MAP=y | 216 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 200 | # CONFIG_SPARSEMEM_STATIC is not set | 217 | # CONFIG_SPARSEMEM_STATIC is not set |
| 218 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 201 | CONFIG_SMP=y | 219 | CONFIG_SMP=y |
| 202 | CONFIG_NR_CPUS=4 | 220 | CONFIG_NR_CPUS=4 |
| 203 | CONFIG_PREEMPT_NONE=y | 221 | CONFIG_PREEMPT_NONE=y |
| @@ -295,6 +313,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 295 | # CONFIG_NET_DIVERT is not set | 313 | # CONFIG_NET_DIVERT is not set |
| 296 | # CONFIG_ECONET is not set | 314 | # CONFIG_ECONET is not set |
| 297 | # CONFIG_WAN_ROUTER is not set | 315 | # CONFIG_WAN_ROUTER is not set |
| 316 | |||
| 317 | # | ||
| 318 | # QoS and/or fair queueing | ||
| 319 | # | ||
| 298 | # CONFIG_NET_SCHED is not set | 320 | # CONFIG_NET_SCHED is not set |
| 299 | # CONFIG_NET_CLS_ROUTE is not set | 321 | # CONFIG_NET_CLS_ROUTE is not set |
| 300 | 322 | ||
| @@ -353,14 +375,6 @@ CONFIG_BLK_DEV_NBD=m | |||
| 353 | # CONFIG_BLK_DEV_RAM is not set | 375 | # CONFIG_BLK_DEV_RAM is not set |
| 354 | CONFIG_BLK_DEV_RAM_COUNT=16 | 376 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 355 | # CONFIG_CDROM_PKTCDVD is not set | 377 | # CONFIG_CDROM_PKTCDVD is not set |
| 356 | |||
| 357 | # | ||
| 358 | # IO Schedulers | ||
| 359 | # | ||
| 360 | CONFIG_IOSCHED_NOOP=y | ||
| 361 | CONFIG_IOSCHED_AS=y | ||
| 362 | CONFIG_IOSCHED_DEADLINE=y | ||
| 363 | CONFIG_IOSCHED_CFQ=y | ||
| 364 | # CONFIG_ATA_OVER_ETH is not set | 378 | # CONFIG_ATA_OVER_ETH is not set |
| 365 | 379 | ||
| 366 | # | 380 | # |
| @@ -443,6 +457,7 @@ CONFIG_NET_ETHERNET=y | |||
| 443 | CONFIG_MII=y | 457 | CONFIG_MII=y |
| 444 | # CONFIG_HAPPYMEAL is not set | 458 | # CONFIG_HAPPYMEAL is not set |
| 445 | # CONFIG_SUNGEM is not set | 459 | # CONFIG_SUNGEM is not set |
| 460 | # CONFIG_CASSINI is not set | ||
| 446 | # CONFIG_NET_VENDOR_3COM is not set | 461 | # CONFIG_NET_VENDOR_3COM is not set |
| 447 | 462 | ||
| 448 | # | 463 | # |
| @@ -582,6 +597,7 @@ CONFIG_GEN_RTC=y | |||
| 582 | # TPM devices | 597 | # TPM devices |
| 583 | # | 598 | # |
| 584 | # CONFIG_TCG_TPM is not set | 599 | # CONFIG_TCG_TPM is not set |
| 600 | # CONFIG_TELCLOCK is not set | ||
| 585 | 601 | ||
| 586 | # | 602 | # |
| 587 | # I2C support | 603 | # I2C support |
| @@ -634,6 +650,7 @@ CONFIG_SENSORS_PCA9539=y | |||
| 634 | CONFIG_SENSORS_PCF8591=y | 650 | CONFIG_SENSORS_PCF8591=y |
| 635 | CONFIG_SENSORS_RTC8564=y | 651 | CONFIG_SENSORS_RTC8564=y |
| 636 | CONFIG_SENSORS_MAX6875=y | 652 | CONFIG_SENSORS_MAX6875=y |
| 653 | # CONFIG_RTC_X1205_I2C is not set | ||
| 637 | CONFIG_I2C_DEBUG_CORE=y | 654 | CONFIG_I2C_DEBUG_CORE=y |
| 638 | CONFIG_I2C_DEBUG_ALGO=y | 655 | CONFIG_I2C_DEBUG_ALGO=y |
| 639 | CONFIG_I2C_DEBUG_BUS=y | 656 | CONFIG_I2C_DEBUG_BUS=y |
| @@ -686,6 +703,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 686 | # CONFIG_USB is not set | 703 | # CONFIG_USB is not set |
| 687 | 704 | ||
| 688 | # | 705 | # |
| 706 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 707 | # | ||
| 708 | |||
| 709 | # | ||
| 689 | # USB Gadget Support | 710 | # USB Gadget Support |
| 690 | # | 711 | # |
| 691 | # CONFIG_USB_GADGET is not set | 712 | # CONFIG_USB_GADGET is not set |
| @@ -823,6 +844,8 @@ CONFIG_DETECT_SOFTLOCKUP=y | |||
| 823 | # CONFIG_DEBUG_KOBJECT is not set | 844 | # CONFIG_DEBUG_KOBJECT is not set |
| 824 | # CONFIG_DEBUG_INFO is not set | 845 | # CONFIG_DEBUG_INFO is not set |
| 825 | # CONFIG_DEBUG_FS is not set | 846 | # CONFIG_DEBUG_FS is not set |
| 847 | # CONFIG_DEBUG_VM is not set | ||
| 848 | # CONFIG_RCU_TORTURE_TEST is not set | ||
| 826 | CONFIG_CROSSCOMPILE=y | 849 | CONFIG_CROSSCOMPILE=y |
| 827 | CONFIG_CMDLINE="" | 850 | CONFIG_CMDLINE="" |
| 828 | # CONFIG_DEBUG_STACK_USAGE is not set | 851 | # CONFIG_DEBUG_STACK_USAGE is not set |
diff --git a/arch/mips/configs/capcella_defconfig b/arch/mips/configs/capcella_defconfig index bfbaa08c47cb..a86cc9d9bdae 100644 --- a/arch/mips/configs/capcella_defconfig +++ b/arch/mips/configs/capcella_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:25:20 2005 | 4 | # Mon Nov 7 23:04:39 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -57,6 +57,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 57 | CONFIG_KMOD=y | 57 | CONFIG_KMOD=y |
| 58 | 58 | ||
| 59 | # | 59 | # |
| 60 | # Block layer | ||
| 61 | # | ||
| 62 | # CONFIG_LBD is not set | ||
| 63 | |||
| 64 | # | ||
| 65 | # IO Schedulers | ||
| 66 | # | ||
| 67 | CONFIG_IOSCHED_NOOP=y | ||
| 68 | CONFIG_IOSCHED_AS=y | ||
| 69 | CONFIG_IOSCHED_DEADLINE=y | ||
| 70 | CONFIG_IOSCHED_CFQ=y | ||
| 71 | CONFIG_DEFAULT_AS=y | ||
| 72 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 73 | # CONFIG_DEFAULT_CFQ is not set | ||
| 74 | # CONFIG_DEFAULT_NOOP is not set | ||
| 75 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 76 | |||
| 77 | # | ||
| 60 | # Machine selection | 78 | # Machine selection |
| 61 | # | 79 | # |
| 62 | # CONFIG_MIPS_MTX1 is not set | 80 | # CONFIG_MIPS_MTX1 is not set |
| @@ -182,6 +200,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 182 | CONFIG_FLATMEM=y | 200 | CONFIG_FLATMEM=y |
| 183 | CONFIG_FLAT_NODE_MEM_MAP=y | 201 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 184 | # CONFIG_SPARSEMEM_STATIC is not set | 202 | # CONFIG_SPARSEMEM_STATIC is not set |
| 203 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 185 | CONFIG_PREEMPT_NONE=y | 204 | CONFIG_PREEMPT_NONE=y |
| 186 | # CONFIG_PREEMPT_VOLUNTARY is not set | 205 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 187 | # CONFIG_PREEMPT is not set | 206 | # CONFIG_PREEMPT is not set |
| @@ -270,6 +289,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 270 | # CONFIG_NET_DIVERT is not set | 289 | # CONFIG_NET_DIVERT is not set |
| 271 | # CONFIG_ECONET is not set | 290 | # CONFIG_ECONET is not set |
| 272 | # CONFIG_WAN_ROUTER is not set | 291 | # CONFIG_WAN_ROUTER is not set |
| 292 | |||
| 293 | # | ||
| 294 | # QoS and/or fair queueing | ||
| 295 | # | ||
| 273 | # CONFIG_NET_SCHED is not set | 296 | # CONFIG_NET_SCHED is not set |
| 274 | # CONFIG_NET_CLS_ROUTE is not set | 297 | # CONFIG_NET_CLS_ROUTE is not set |
| 275 | 298 | ||
| @@ -329,16 +352,7 @@ CONFIG_CONNECTOR=m | |||
| 329 | # CONFIG_BLK_DEV_SX8 is not set | 352 | # CONFIG_BLK_DEV_SX8 is not set |
| 330 | # CONFIG_BLK_DEV_RAM is not set | 353 | # CONFIG_BLK_DEV_RAM is not set |
| 331 | CONFIG_BLK_DEV_RAM_COUNT=16 | 354 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 332 | # CONFIG_LBD is not set | ||
| 333 | # CONFIG_CDROM_PKTCDVD is not set | 355 | # CONFIG_CDROM_PKTCDVD is not set |
| 334 | |||
| 335 | # | ||
| 336 | # IO Schedulers | ||
| 337 | # | ||
| 338 | CONFIG_IOSCHED_NOOP=y | ||
| 339 | CONFIG_IOSCHED_AS=y | ||
| 340 | CONFIG_IOSCHED_DEADLINE=y | ||
| 341 | CONFIG_IOSCHED_CFQ=y | ||
| 342 | CONFIG_ATA_OVER_ETH=m | 356 | CONFIG_ATA_OVER_ETH=m |
| 343 | 357 | ||
| 344 | # | 358 | # |
| @@ -412,7 +426,6 @@ CONFIG_NETDEVICES=y | |||
| 412 | # PHY device support | 426 | # PHY device support |
| 413 | # | 427 | # |
| 414 | CONFIG_PHYLIB=m | 428 | CONFIG_PHYLIB=m |
| 415 | CONFIG_PHYCONTROL=y | ||
| 416 | 429 | ||
| 417 | # | 430 | # |
| 418 | # MII PHY device drivers | 431 | # MII PHY device drivers |
| @@ -430,6 +443,7 @@ CONFIG_NET_ETHERNET=y | |||
| 430 | CONFIG_MII=y | 443 | CONFIG_MII=y |
| 431 | # CONFIG_HAPPYMEAL is not set | 444 | # CONFIG_HAPPYMEAL is not set |
| 432 | # CONFIG_SUNGEM is not set | 445 | # CONFIG_SUNGEM is not set |
| 446 | # CONFIG_CASSINI is not set | ||
| 433 | # CONFIG_NET_VENDOR_3COM is not set | 447 | # CONFIG_NET_VENDOR_3COM is not set |
| 434 | 448 | ||
| 435 | # | 449 | # |
| @@ -586,6 +600,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 586 | # CONFIG_WATCHDOG is not set | 600 | # CONFIG_WATCHDOG is not set |
| 587 | # CONFIG_RTC is not set | 601 | # CONFIG_RTC is not set |
| 588 | # CONFIG_GEN_RTC is not set | 602 | # CONFIG_GEN_RTC is not set |
| 603 | # CONFIG_RTC_VR41XX is not set | ||
| 589 | # CONFIG_DTLK is not set | 604 | # CONFIG_DTLK is not set |
| 590 | # CONFIG_R3964 is not set | 605 | # CONFIG_R3964 is not set |
| 591 | # CONFIG_APPLICOM is not set | 606 | # CONFIG_APPLICOM is not set |
| @@ -601,6 +616,7 @@ CONFIG_GPIO_VR41XX=y | |||
| 601 | # TPM devices | 616 | # TPM devices |
| 602 | # | 617 | # |
| 603 | # CONFIG_TCG_TPM is not set | 618 | # CONFIG_TCG_TPM is not set |
| 619 | # CONFIG_TELCLOCK is not set | ||
| 604 | 620 | ||
| 605 | # | 621 | # |
| 606 | # I2C support | 622 | # I2C support |
| @@ -660,6 +676,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 660 | # CONFIG_USB is not set | 676 | # CONFIG_USB is not set |
| 661 | 677 | ||
| 662 | # | 678 | # |
| 679 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 680 | # | ||
| 681 | |||
| 682 | # | ||
| 663 | # USB Gadget Support | 683 | # USB Gadget Support |
| 664 | # | 684 | # |
| 665 | # CONFIG_USB_GADGET is not set | 685 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/cobalt_defconfig b/arch/mips/configs/cobalt_defconfig index 4b4d1ddb3d42..3558c79b0eb7 100644 --- a/arch/mips/configs/cobalt_defconfig +++ b/arch/mips/configs/cobalt_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:25:23 2005 | 4 | # Mon Nov 7 23:04:42 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -51,6 +51,24 @@ CONFIG_BASE_SMALL=0 | |||
| 51 | # CONFIG_MODULES is not set | 51 | # CONFIG_MODULES is not set |
| 52 | 52 | ||
| 53 | # | 53 | # |
| 54 | # Block layer | ||
| 55 | # | ||
| 56 | # CONFIG_LBD is not set | ||
| 57 | |||
| 58 | # | ||
| 59 | # IO Schedulers | ||
| 60 | # | ||
| 61 | CONFIG_IOSCHED_NOOP=y | ||
| 62 | CONFIG_IOSCHED_AS=y | ||
| 63 | CONFIG_IOSCHED_DEADLINE=y | ||
| 64 | CONFIG_IOSCHED_CFQ=y | ||
| 65 | CONFIG_DEFAULT_AS=y | ||
| 66 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 67 | # CONFIG_DEFAULT_CFQ is not set | ||
| 68 | # CONFIG_DEFAULT_NOOP is not set | ||
| 69 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 70 | |||
| 71 | # | ||
| 54 | # Machine selection | 72 | # Machine selection |
| 55 | # | 73 | # |
| 56 | # CONFIG_MIPS_MTX1 is not set | 74 | # CONFIG_MIPS_MTX1 is not set |
| @@ -172,6 +190,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 172 | CONFIG_FLATMEM=y | 190 | CONFIG_FLATMEM=y |
| 173 | CONFIG_FLAT_NODE_MEM_MAP=y | 191 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 174 | # CONFIG_SPARSEMEM_STATIC is not set | 192 | # CONFIG_SPARSEMEM_STATIC is not set |
| 193 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 175 | CONFIG_PREEMPT_NONE=y | 194 | CONFIG_PREEMPT_NONE=y |
| 176 | # CONFIG_PREEMPT_VOLUNTARY is not set | 195 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 177 | # CONFIG_PREEMPT is not set | 196 | # CONFIG_PREEMPT is not set |
| @@ -256,6 +275,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 256 | # CONFIG_NET_DIVERT is not set | 275 | # CONFIG_NET_DIVERT is not set |
| 257 | # CONFIG_ECONET is not set | 276 | # CONFIG_ECONET is not set |
| 258 | # CONFIG_WAN_ROUTER is not set | 277 | # CONFIG_WAN_ROUTER is not set |
| 278 | |||
| 279 | # | ||
| 280 | # QoS and/or fair queueing | ||
| 281 | # | ||
| 259 | # CONFIG_NET_SCHED is not set | 282 | # CONFIG_NET_SCHED is not set |
| 260 | # CONFIG_NET_CLS_ROUTE is not set | 283 | # CONFIG_NET_CLS_ROUTE is not set |
| 261 | 284 | ||
| @@ -287,6 +310,7 @@ CONFIG_FW_LOADER=y | |||
| 287 | # Connector - unified userspace <-> kernelspace linker | 310 | # Connector - unified userspace <-> kernelspace linker |
| 288 | # | 311 | # |
| 289 | CONFIG_CONNECTOR=y | 312 | CONFIG_CONNECTOR=y |
| 313 | CONFIG_PROC_EVENTS=y | ||
| 290 | 314 | ||
| 291 | # | 315 | # |
| 292 | # Memory Technology Devices (MTD) | 316 | # Memory Technology Devices (MTD) |
| @@ -316,18 +340,9 @@ CONFIG_BLK_DEV_LOOP=y | |||
| 316 | # CONFIG_BLK_DEV_SX8 is not set | 340 | # CONFIG_BLK_DEV_SX8 is not set |
| 317 | # CONFIG_BLK_DEV_RAM is not set | 341 | # CONFIG_BLK_DEV_RAM is not set |
| 318 | CONFIG_BLK_DEV_RAM_COUNT=16 | 342 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 319 | # CONFIG_LBD is not set | ||
| 320 | CONFIG_CDROM_PKTCDVD=y | 343 | CONFIG_CDROM_PKTCDVD=y |
| 321 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 344 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 322 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 345 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 323 | |||
| 324 | # | ||
| 325 | # IO Schedulers | ||
| 326 | # | ||
| 327 | CONFIG_IOSCHED_NOOP=y | ||
| 328 | CONFIG_IOSCHED_AS=y | ||
| 329 | CONFIG_IOSCHED_DEADLINE=y | ||
| 330 | CONFIG_IOSCHED_CFQ=y | ||
| 331 | CONFIG_ATA_OVER_ETH=y | 346 | CONFIG_ATA_OVER_ETH=y |
| 332 | 347 | ||
| 333 | # | 348 | # |
| @@ -401,7 +416,6 @@ CONFIG_NETDEVICES=y | |||
| 401 | # PHY device support | 416 | # PHY device support |
| 402 | # | 417 | # |
| 403 | CONFIG_PHYLIB=y | 418 | CONFIG_PHYLIB=y |
| 404 | CONFIG_PHYCONTROL=y | ||
| 405 | 419 | ||
| 406 | # | 420 | # |
| 407 | # MII PHY device drivers | 421 | # MII PHY device drivers |
| @@ -419,6 +433,7 @@ CONFIG_NET_ETHERNET=y | |||
| 419 | # CONFIG_MII is not set | 433 | # CONFIG_MII is not set |
| 420 | # CONFIG_HAPPYMEAL is not set | 434 | # CONFIG_HAPPYMEAL is not set |
| 421 | # CONFIG_SUNGEM is not set | 435 | # CONFIG_SUNGEM is not set |
| 436 | # CONFIG_CASSINI is not set | ||
| 422 | # CONFIG_NET_VENDOR_3COM is not set | 437 | # CONFIG_NET_VENDOR_3COM is not set |
| 423 | 438 | ||
| 424 | # | 439 | # |
| @@ -574,6 +589,7 @@ CONFIG_COBALT_LCD=y | |||
| 574 | # TPM devices | 589 | # TPM devices |
| 575 | # | 590 | # |
| 576 | # CONFIG_TCG_TPM is not set | 591 | # CONFIG_TCG_TPM is not set |
| 592 | # CONFIG_TELCLOCK is not set | ||
| 577 | 593 | ||
| 578 | # | 594 | # |
| 579 | # I2C support | 595 | # I2C support |
| @@ -633,6 +649,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 633 | # CONFIG_USB is not set | 649 | # CONFIG_USB is not set |
| 634 | 650 | ||
| 635 | # | 651 | # |
| 652 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 653 | # | ||
| 654 | |||
| 655 | # | ||
| 636 | # USB Gadget Support | 656 | # USB Gadget Support |
| 637 | # | 657 | # |
| 638 | # CONFIG_USB_GADGET is not set | 658 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/db1000_defconfig b/arch/mips/configs/db1000_defconfig index 6501144ec612..3b103fec7b86 100644 --- a/arch/mips/configs/db1000_defconfig +++ b/arch/mips/configs/db1000_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.15-rc1 |
| 4 | # Thu Oct 20 22:25:26 2005 | 4 | # Tue Nov 15 11:11:04 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -57,6 +57,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 57 | CONFIG_KMOD=y | 57 | CONFIG_KMOD=y |
| 58 | 58 | ||
| 59 | # | 59 | # |
| 60 | # Block layer | ||
| 61 | # | ||
| 62 | # CONFIG_LBD is not set | ||
| 63 | |||
| 64 | # | ||
| 65 | # IO Schedulers | ||
| 66 | # | ||
| 67 | CONFIG_IOSCHED_NOOP=y | ||
| 68 | CONFIG_IOSCHED_AS=y | ||
| 69 | CONFIG_IOSCHED_DEADLINE=y | ||
| 70 | CONFIG_IOSCHED_CFQ=y | ||
| 71 | CONFIG_DEFAULT_AS=y | ||
| 72 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 73 | # CONFIG_DEFAULT_CFQ is not set | ||
| 74 | # CONFIG_DEFAULT_NOOP is not set | ||
| 75 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 76 | |||
| 77 | # | ||
| 60 | # Machine selection | 78 | # Machine selection |
| 61 | # | 79 | # |
| 62 | # CONFIG_MIPS_MTX1 is not set | 80 | # CONFIG_MIPS_MTX1 is not set |
| @@ -178,6 +196,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 178 | CONFIG_FLATMEM=y | 196 | CONFIG_FLATMEM=y |
| 179 | CONFIG_FLAT_NODE_MEM_MAP=y | 197 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 180 | # CONFIG_SPARSEMEM_STATIC is not set | 198 | # CONFIG_SPARSEMEM_STATIC is not set |
| 199 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 181 | CONFIG_PREEMPT_NONE=y | 200 | CONFIG_PREEMPT_NONE=y |
| 182 | # CONFIG_PREEMPT_VOLUNTARY is not set | 201 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 183 | # CONFIG_PREEMPT is not set | 202 | # CONFIG_PREEMPT is not set |
| @@ -201,7 +220,6 @@ CONFIG_PCMCIA_IOCTL=y | |||
| 201 | # | 220 | # |
| 202 | # PC-card bridges | 221 | # PC-card bridges |
| 203 | # | 222 | # |
| 204 | # CONFIG_TCIC is not set | ||
| 205 | # CONFIG_PCMCIA_AU1X00 is not set | 223 | # CONFIG_PCMCIA_AU1X00 is not set |
| 206 | 224 | ||
| 207 | # | 225 | # |
| @@ -259,15 +277,19 @@ CONFIG_TCP_CONG_BIC=y | |||
| 259 | # CONFIG_IPV6 is not set | 277 | # CONFIG_IPV6 is not set |
| 260 | CONFIG_NETFILTER=y | 278 | CONFIG_NETFILTER=y |
| 261 | # CONFIG_NETFILTER_DEBUG is not set | 279 | # CONFIG_NETFILTER_DEBUG is not set |
| 280 | |||
| 281 | # | ||
| 282 | # Core Netfilter Configuration | ||
| 283 | # | ||
| 262 | CONFIG_NETFILTER_NETLINK=m | 284 | CONFIG_NETFILTER_NETLINK=m |
| 263 | CONFIG_NETFILTER_NETLINK_QUEUE=m | 285 | CONFIG_NETFILTER_NETLINK_QUEUE=m |
| 264 | CONFIG_NETFILTER_NETLINK_LOG=m | 286 | CONFIG_NETFILTER_NETLINK_LOG=m |
| 287 | # CONFIG_NF_CONNTRACK is not set | ||
| 265 | 288 | ||
| 266 | # | 289 | # |
| 267 | # IP: Netfilter Configuration | 290 | # IP: Netfilter Configuration |
| 268 | # | 291 | # |
| 269 | # CONFIG_IP_NF_CONNTRACK is not set | 292 | # CONFIG_IP_NF_CONNTRACK is not set |
| 270 | CONFIG_IP_NF_PPTP=m | ||
| 271 | # CONFIG_IP_NF_QUEUE is not set | 293 | # CONFIG_IP_NF_QUEUE is not set |
| 272 | # CONFIG_IP_NF_IPTABLES is not set | 294 | # CONFIG_IP_NF_IPTABLES is not set |
| 273 | # CONFIG_IP_NF_ARPTABLES is not set | 295 | # CONFIG_IP_NF_ARPTABLES is not set |
| @@ -293,6 +315,10 @@ CONFIG_IP_NF_PPTP=m | |||
| 293 | # CONFIG_NET_DIVERT is not set | 315 | # CONFIG_NET_DIVERT is not set |
| 294 | # CONFIG_ECONET is not set | 316 | # CONFIG_ECONET is not set |
| 295 | # CONFIG_WAN_ROUTER is not set | 317 | # CONFIG_WAN_ROUTER is not set |
| 318 | |||
| 319 | # | ||
| 320 | # QoS and/or fair queueing | ||
| 321 | # | ||
| 296 | # CONFIG_NET_SCHED is not set | 322 | # CONFIG_NET_SCHED is not set |
| 297 | # CONFIG_NET_CLS_ROUTE is not set | 323 | # CONFIG_NET_CLS_ROUTE is not set |
| 298 | 324 | ||
| @@ -343,6 +369,7 @@ CONFIG_MTD_BLOCK=y | |||
| 343 | # CONFIG_FTL is not set | 369 | # CONFIG_FTL is not set |
| 344 | # CONFIG_NFTL is not set | 370 | # CONFIG_NFTL is not set |
| 345 | # CONFIG_INFTL is not set | 371 | # CONFIG_INFTL is not set |
| 372 | # CONFIG_RFD_FTL is not set | ||
| 346 | 373 | ||
| 347 | # | 374 | # |
| 348 | # RAM/ROM/Flash chip drivers | 375 | # RAM/ROM/Flash chip drivers |
| @@ -400,6 +427,11 @@ CONFIG_MTD_ALCHEMY=y | |||
| 400 | # CONFIG_MTD_NAND is not set | 427 | # CONFIG_MTD_NAND is not set |
| 401 | 428 | ||
| 402 | # | 429 | # |
| 430 | # OneNAND Flash Device Drivers | ||
| 431 | # | ||
| 432 | # CONFIG_MTD_ONENAND is not set | ||
| 433 | |||
| 434 | # | ||
| 403 | # Parallel port support | 435 | # Parallel port support |
| 404 | # | 436 | # |
| 405 | # CONFIG_PARPORT is not set | 437 | # CONFIG_PARPORT is not set |
| @@ -417,18 +449,9 @@ CONFIG_BLK_DEV_LOOP=y | |||
| 417 | # CONFIG_BLK_DEV_NBD is not set | 449 | # CONFIG_BLK_DEV_NBD is not set |
| 418 | # CONFIG_BLK_DEV_RAM is not set | 450 | # CONFIG_BLK_DEV_RAM is not set |
| 419 | CONFIG_BLK_DEV_RAM_COUNT=16 | 451 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 420 | # CONFIG_LBD is not set | ||
| 421 | CONFIG_CDROM_PKTCDVD=m | 452 | CONFIG_CDROM_PKTCDVD=m |
| 422 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 453 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 423 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 454 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 424 | |||
| 425 | # | ||
| 426 | # IO Schedulers | ||
| 427 | # | ||
| 428 | CONFIG_IOSCHED_NOOP=y | ||
| 429 | CONFIG_IOSCHED_AS=y | ||
| 430 | CONFIG_IOSCHED_DEADLINE=y | ||
| 431 | CONFIG_IOSCHED_CFQ=y | ||
| 432 | CONFIG_ATA_OVER_ETH=m | 455 | CONFIG_ATA_OVER_ETH=m |
| 433 | 456 | ||
| 434 | # | 457 | # |
| @@ -473,7 +496,6 @@ CONFIG_NETDEVICES=y | |||
| 473 | # PHY device support | 496 | # PHY device support |
| 474 | # | 497 | # |
| 475 | CONFIG_PHYLIB=m | 498 | CONFIG_PHYLIB=m |
| 476 | CONFIG_PHYCONTROL=y | ||
| 477 | 499 | ||
| 478 | # | 500 | # |
| 479 | # MII PHY device drivers | 501 | # MII PHY device drivers |
| @@ -490,6 +512,7 @@ CONFIG_CICADA_PHY=m | |||
| 490 | CONFIG_NET_ETHERNET=y | 512 | CONFIG_NET_ETHERNET=y |
| 491 | CONFIG_MII=m | 513 | CONFIG_MII=m |
| 492 | CONFIG_MIPS_AU1X00_ENET=y | 514 | CONFIG_MIPS_AU1X00_ENET=y |
| 515 | # CONFIG_SMC91X is not set | ||
| 493 | 516 | ||
| 494 | # | 517 | # |
| 495 | # Ethernet (1000 Mbit) | 518 | # Ethernet (1000 Mbit) |
| @@ -532,6 +555,7 @@ CONFIG_PPP_ASYNC=m | |||
| 532 | # CONFIG_PPP_SYNC_TTY is not set | 555 | # CONFIG_PPP_SYNC_TTY is not set |
| 533 | CONFIG_PPP_DEFLATE=m | 556 | CONFIG_PPP_DEFLATE=m |
| 534 | # CONFIG_PPP_BSDCOMP is not set | 557 | # CONFIG_PPP_BSDCOMP is not set |
| 558 | CONFIG_PPP_MPPE=m | ||
| 535 | CONFIG_PPPOE=m | 559 | CONFIG_PPPOE=m |
| 536 | # CONFIG_SLIP is not set | 560 | # CONFIG_SLIP is not set |
| 537 | # CONFIG_SHAPER is not set | 561 | # CONFIG_SHAPER is not set |
| @@ -598,13 +622,17 @@ CONFIG_HW_CONSOLE=y | |||
| 598 | # | 622 | # |
| 599 | # Serial drivers | 623 | # Serial drivers |
| 600 | # | 624 | # |
| 601 | # CONFIG_SERIAL_8250 is not set | 625 | CONFIG_SERIAL_8250=y |
| 626 | CONFIG_SERIAL_8250_CONSOLE=y | ||
| 627 | CONFIG_SERIAL_8250_CS=m | ||
| 628 | CONFIG_SERIAL_8250_NR_UARTS=4 | ||
| 629 | # CONFIG_SERIAL_8250_EXTENDED is not set | ||
| 630 | CONFIG_SERIAL_8250_AU1X00=y | ||
| 602 | 631 | ||
| 603 | # | 632 | # |
| 604 | # Non-8250 serial port support | 633 | # Non-8250 serial port support |
| 605 | # | 634 | # |
| 606 | CONFIG_SERIAL_AU1X00=y | 635 | # CONFIG_SERIAL_AU1X00 is not set |
| 607 | CONFIG_SERIAL_AU1X00_CONSOLE=y | ||
| 608 | CONFIG_SERIAL_CORE=y | 636 | CONFIG_SERIAL_CORE=y |
| 609 | CONFIG_SERIAL_CORE_CONSOLE=y | 637 | CONFIG_SERIAL_CORE_CONSOLE=y |
| 610 | CONFIG_UNIX98_PTYS=y | 638 | CONFIG_UNIX98_PTYS=y |
| @@ -633,11 +661,14 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 633 | # PCMCIA character devices | 661 | # PCMCIA character devices |
| 634 | # | 662 | # |
| 635 | CONFIG_SYNCLINK_CS=m | 663 | CONFIG_SYNCLINK_CS=m |
| 664 | # CONFIG_CARDMAN_4000 is not set | ||
| 665 | # CONFIG_CARDMAN_4040 is not set | ||
| 636 | # CONFIG_RAW_DRIVER is not set | 666 | # CONFIG_RAW_DRIVER is not set |
| 637 | 667 | ||
| 638 | # | 668 | # |
| 639 | # TPM devices | 669 | # TPM devices |
| 640 | # | 670 | # |
| 671 | # CONFIG_TELCLOCK is not set | ||
| 641 | 672 | ||
| 642 | # | 673 | # |
| 643 | # I2C support | 674 | # I2C support |
| @@ -697,6 +728,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 697 | # CONFIG_USB is not set | 728 | # CONFIG_USB is not set |
| 698 | 729 | ||
| 699 | # | 730 | # |
| 731 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 732 | # | ||
| 733 | |||
| 734 | # | ||
| 700 | # USB Gadget Support | 735 | # USB Gadget Support |
| 701 | # | 736 | # |
| 702 | # CONFIG_USB_GADGET is not set | 737 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/db1100_defconfig b/arch/mips/configs/db1100_defconfig index b8cd2cd923dd..79cdd940c6a8 100644 --- a/arch/mips/configs/db1100_defconfig +++ b/arch/mips/configs/db1100_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.15-rc1 |
| 4 | # Thu Oct 20 22:25:29 2005 | 4 | # Tue Nov 15 11:11:07 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -57,6 +57,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 57 | CONFIG_KMOD=y | 57 | CONFIG_KMOD=y |
| 58 | 58 | ||
| 59 | # | 59 | # |
| 60 | # Block layer | ||
| 61 | # | ||
| 62 | # CONFIG_LBD is not set | ||
| 63 | |||
| 64 | # | ||
| 65 | # IO Schedulers | ||
| 66 | # | ||
| 67 | CONFIG_IOSCHED_NOOP=y | ||
| 68 | CONFIG_IOSCHED_AS=y | ||
| 69 | CONFIG_IOSCHED_DEADLINE=y | ||
| 70 | CONFIG_IOSCHED_CFQ=y | ||
| 71 | CONFIG_DEFAULT_AS=y | ||
| 72 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 73 | # CONFIG_DEFAULT_CFQ is not set | ||
| 74 | # CONFIG_DEFAULT_NOOP is not set | ||
| 75 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 76 | |||
| 77 | # | ||
| 60 | # Machine selection | 78 | # Machine selection |
| 61 | # | 79 | # |
| 62 | # CONFIG_MIPS_MTX1 is not set | 80 | # CONFIG_MIPS_MTX1 is not set |
| @@ -178,6 +196,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 178 | CONFIG_FLATMEM=y | 196 | CONFIG_FLATMEM=y |
| 179 | CONFIG_FLAT_NODE_MEM_MAP=y | 197 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 180 | # CONFIG_SPARSEMEM_STATIC is not set | 198 | # CONFIG_SPARSEMEM_STATIC is not set |
| 199 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 181 | CONFIG_PREEMPT_NONE=y | 200 | CONFIG_PREEMPT_NONE=y |
| 182 | # CONFIG_PREEMPT_VOLUNTARY is not set | 201 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 183 | # CONFIG_PREEMPT is not set | 202 | # CONFIG_PREEMPT is not set |
| @@ -247,15 +266,19 @@ CONFIG_TCP_CONG_BIC=y | |||
| 247 | # CONFIG_IPV6 is not set | 266 | # CONFIG_IPV6 is not set |
| 248 | CONFIG_NETFILTER=y | 267 | CONFIG_NETFILTER=y |
| 249 | # CONFIG_NETFILTER_DEBUG is not set | 268 | # CONFIG_NETFILTER_DEBUG is not set |
| 269 | |||
| 270 | # | ||
| 271 | # Core Netfilter Configuration | ||
| 272 | # | ||
| 250 | CONFIG_NETFILTER_NETLINK=m | 273 | CONFIG_NETFILTER_NETLINK=m |
| 251 | CONFIG_NETFILTER_NETLINK_QUEUE=m | 274 | CONFIG_NETFILTER_NETLINK_QUEUE=m |
| 252 | CONFIG_NETFILTER_NETLINK_LOG=m | 275 | CONFIG_NETFILTER_NETLINK_LOG=m |
| 276 | # CONFIG_NF_CONNTRACK is not set | ||
| 253 | 277 | ||
| 254 | # | 278 | # |
| 255 | # IP: Netfilter Configuration | 279 | # IP: Netfilter Configuration |
| 256 | # | 280 | # |
| 257 | # CONFIG_IP_NF_CONNTRACK is not set | 281 | # CONFIG_IP_NF_CONNTRACK is not set |
| 258 | CONFIG_IP_NF_PPTP=m | ||
| 259 | # CONFIG_IP_NF_QUEUE is not set | 282 | # CONFIG_IP_NF_QUEUE is not set |
| 260 | # CONFIG_IP_NF_IPTABLES is not set | 283 | # CONFIG_IP_NF_IPTABLES is not set |
| 261 | # CONFIG_IP_NF_ARPTABLES is not set | 284 | # CONFIG_IP_NF_ARPTABLES is not set |
| @@ -281,6 +304,10 @@ CONFIG_IP_NF_PPTP=m | |||
| 281 | # CONFIG_NET_DIVERT is not set | 304 | # CONFIG_NET_DIVERT is not set |
| 282 | # CONFIG_ECONET is not set | 305 | # CONFIG_ECONET is not set |
| 283 | # CONFIG_WAN_ROUTER is not set | 306 | # CONFIG_WAN_ROUTER is not set |
| 307 | |||
| 308 | # | ||
| 309 | # QoS and/or fair queueing | ||
| 310 | # | ||
| 284 | # CONFIG_NET_SCHED is not set | 311 | # CONFIG_NET_SCHED is not set |
| 285 | # CONFIG_NET_CLS_ROUTE is not set | 312 | # CONFIG_NET_CLS_ROUTE is not set |
| 286 | 313 | ||
| @@ -331,6 +358,7 @@ CONFIG_MTD_BLOCK=y | |||
| 331 | # CONFIG_FTL is not set | 358 | # CONFIG_FTL is not set |
| 332 | # CONFIG_NFTL is not set | 359 | # CONFIG_NFTL is not set |
| 333 | # CONFIG_INFTL is not set | 360 | # CONFIG_INFTL is not set |
| 361 | # CONFIG_RFD_FTL is not set | ||
| 334 | 362 | ||
| 335 | # | 363 | # |
| 336 | # RAM/ROM/Flash chip drivers | 364 | # RAM/ROM/Flash chip drivers |
| @@ -388,6 +416,11 @@ CONFIG_MTD_ALCHEMY=y | |||
| 388 | # CONFIG_MTD_NAND is not set | 416 | # CONFIG_MTD_NAND is not set |
| 389 | 417 | ||
| 390 | # | 418 | # |
| 419 | # OneNAND Flash Device Drivers | ||
| 420 | # | ||
| 421 | # CONFIG_MTD_ONENAND is not set | ||
| 422 | |||
| 423 | # | ||
| 391 | # Parallel port support | 424 | # Parallel port support |
| 392 | # | 425 | # |
| 393 | # CONFIG_PARPORT is not set | 426 | # CONFIG_PARPORT is not set |
| @@ -405,18 +438,9 @@ CONFIG_BLK_DEV_LOOP=y | |||
| 405 | # CONFIG_BLK_DEV_NBD is not set | 438 | # CONFIG_BLK_DEV_NBD is not set |
| 406 | # CONFIG_BLK_DEV_RAM is not set | 439 | # CONFIG_BLK_DEV_RAM is not set |
| 407 | CONFIG_BLK_DEV_RAM_COUNT=16 | 440 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 408 | # CONFIG_LBD is not set | ||
| 409 | CONFIG_CDROM_PKTCDVD=m | 441 | CONFIG_CDROM_PKTCDVD=m |
| 410 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 442 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 411 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 443 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 412 | |||
| 413 | # | ||
| 414 | # IO Schedulers | ||
| 415 | # | ||
| 416 | CONFIG_IOSCHED_NOOP=y | ||
| 417 | CONFIG_IOSCHED_AS=y | ||
| 418 | CONFIG_IOSCHED_DEADLINE=y | ||
| 419 | CONFIG_IOSCHED_CFQ=y | ||
| 420 | CONFIG_ATA_OVER_ETH=m | 444 | CONFIG_ATA_OVER_ETH=m |
| 421 | 445 | ||
| 422 | # | 446 | # |
| @@ -461,7 +485,6 @@ CONFIG_NETDEVICES=y | |||
| 461 | # PHY device support | 485 | # PHY device support |
| 462 | # | 486 | # |
| 463 | CONFIG_PHYLIB=m | 487 | CONFIG_PHYLIB=m |
| 464 | CONFIG_PHYCONTROL=y | ||
| 465 | 488 | ||
| 466 | # | 489 | # |
| 467 | # MII PHY device drivers | 490 | # MII PHY device drivers |
| @@ -478,6 +501,7 @@ CONFIG_CICADA_PHY=m | |||
| 478 | CONFIG_NET_ETHERNET=y | 501 | CONFIG_NET_ETHERNET=y |
| 479 | CONFIG_MII=m | 502 | CONFIG_MII=m |
| 480 | CONFIG_MIPS_AU1X00_ENET=y | 503 | CONFIG_MIPS_AU1X00_ENET=y |
| 504 | # CONFIG_SMC91X is not set | ||
| 481 | 505 | ||
| 482 | # | 506 | # |
| 483 | # Ethernet (1000 Mbit) | 507 | # Ethernet (1000 Mbit) |
| @@ -507,6 +531,7 @@ CONFIG_PPP_ASYNC=m | |||
| 507 | # CONFIG_PPP_SYNC_TTY is not set | 531 | # CONFIG_PPP_SYNC_TTY is not set |
| 508 | CONFIG_PPP_DEFLATE=m | 532 | CONFIG_PPP_DEFLATE=m |
| 509 | # CONFIG_PPP_BSDCOMP is not set | 533 | # CONFIG_PPP_BSDCOMP is not set |
| 534 | CONFIG_PPP_MPPE=m | ||
| 510 | CONFIG_PPPOE=m | 535 | CONFIG_PPPOE=m |
| 511 | # CONFIG_SLIP is not set | 536 | # CONFIG_SLIP is not set |
| 512 | # CONFIG_SHAPER is not set | 537 | # CONFIG_SHAPER is not set |
| @@ -573,13 +598,16 @@ CONFIG_HW_CONSOLE=y | |||
| 573 | # | 598 | # |
| 574 | # Serial drivers | 599 | # Serial drivers |
| 575 | # | 600 | # |
| 576 | # CONFIG_SERIAL_8250 is not set | 601 | CONFIG_SERIAL_8250=y |
| 602 | CONFIG_SERIAL_8250_CONSOLE=y | ||
| 603 | CONFIG_SERIAL_8250_NR_UARTS=4 | ||
| 604 | # CONFIG_SERIAL_8250_EXTENDED is not set | ||
| 605 | CONFIG_SERIAL_8250_AU1X00=y | ||
| 577 | 606 | ||
| 578 | # | 607 | # |
| 579 | # Non-8250 serial port support | 608 | # Non-8250 serial port support |
| 580 | # | 609 | # |
| 581 | CONFIG_SERIAL_AU1X00=y | 610 | # CONFIG_SERIAL_AU1X00 is not set |
| 582 | CONFIG_SERIAL_AU1X00_CONSOLE=y | ||
| 583 | CONFIG_SERIAL_CORE=y | 611 | CONFIG_SERIAL_CORE=y |
| 584 | CONFIG_SERIAL_CORE_CONSOLE=y | 612 | CONFIG_SERIAL_CORE_CONSOLE=y |
| 585 | CONFIG_UNIX98_PTYS=y | 613 | CONFIG_UNIX98_PTYS=y |
| @@ -608,6 +636,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 608 | # | 636 | # |
| 609 | # TPM devices | 637 | # TPM devices |
| 610 | # | 638 | # |
| 639 | # CONFIG_TELCLOCK is not set | ||
| 611 | 640 | ||
| 612 | # | 641 | # |
| 613 | # I2C support | 642 | # I2C support |
| @@ -650,12 +679,11 @@ CONFIG_FB=y | |||
| 650 | CONFIG_FB_CFB_FILLRECT=y | 679 | CONFIG_FB_CFB_FILLRECT=y |
| 651 | CONFIG_FB_CFB_COPYAREA=y | 680 | CONFIG_FB_CFB_COPYAREA=y |
| 652 | CONFIG_FB_CFB_IMAGEBLIT=y | 681 | CONFIG_FB_CFB_IMAGEBLIT=y |
| 653 | CONFIG_FB_SOFT_CURSOR=y | ||
| 654 | # CONFIG_FB_MACMODES is not set | 682 | # CONFIG_FB_MACMODES is not set |
| 655 | # CONFIG_FB_MODE_HELPERS is not set | 683 | # CONFIG_FB_MODE_HELPERS is not set |
| 656 | # CONFIG_FB_TILEBLITTING is not set | 684 | # CONFIG_FB_TILEBLITTING is not set |
| 657 | CONFIG_FB_AU1100=y | ||
| 658 | # CONFIG_FB_S1D13XXX is not set | 685 | # CONFIG_FB_S1D13XXX is not set |
| 686 | CONFIG_FB_AU1100=y | ||
| 659 | # CONFIG_FB_VIRTUAL is not set | 687 | # CONFIG_FB_VIRTUAL is not set |
| 660 | 688 | ||
| 661 | # | 689 | # |
| @@ -664,6 +692,7 @@ CONFIG_FB_AU1100=y | |||
| 664 | # CONFIG_VGA_CONSOLE is not set | 692 | # CONFIG_VGA_CONSOLE is not set |
| 665 | CONFIG_DUMMY_CONSOLE=y | 693 | CONFIG_DUMMY_CONSOLE=y |
| 666 | CONFIG_FRAMEBUFFER_CONSOLE=y | 694 | CONFIG_FRAMEBUFFER_CONSOLE=y |
| 695 | # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set | ||
| 667 | CONFIG_FONTS=y | 696 | CONFIG_FONTS=y |
| 668 | CONFIG_FONT_8x8=y | 697 | CONFIG_FONT_8x8=y |
| 669 | CONFIG_FONT_8x16=y | 698 | CONFIG_FONT_8x16=y |
| @@ -698,6 +727,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 698 | # CONFIG_USB is not set | 727 | # CONFIG_USB is not set |
| 699 | 728 | ||
| 700 | # | 729 | # |
| 730 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 731 | # | ||
| 732 | |||
| 733 | # | ||
| 701 | # USB Gadget Support | 734 | # USB Gadget Support |
| 702 | # | 735 | # |
| 703 | # CONFIG_USB_GADGET is not set | 736 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/db1200_defconfig b/arch/mips/configs/db1200_defconfig index 530b6c2d99f6..b6bad69398e1 100644 --- a/arch/mips/configs/db1200_defconfig +++ b/arch/mips/configs/db1200_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.15-rc1 |
| 4 | # Thu Oct 20 22:25:32 2005 | 4 | # Tue Nov 15 11:11:10 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -58,6 +58,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 58 | CONFIG_KMOD=y | 58 | CONFIG_KMOD=y |
| 59 | 59 | ||
| 60 | # | 60 | # |
| 61 | # Block layer | ||
| 62 | # | ||
| 63 | # CONFIG_LBD is not set | ||
| 64 | |||
| 65 | # | ||
| 66 | # IO Schedulers | ||
| 67 | # | ||
| 68 | CONFIG_IOSCHED_NOOP=y | ||
| 69 | CONFIG_IOSCHED_AS=y | ||
| 70 | CONFIG_IOSCHED_DEADLINE=y | ||
| 71 | CONFIG_IOSCHED_CFQ=y | ||
| 72 | CONFIG_DEFAULT_AS=y | ||
| 73 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 74 | # CONFIG_DEFAULT_CFQ is not set | ||
| 75 | # CONFIG_DEFAULT_NOOP is not set | ||
| 76 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 77 | |||
| 78 | # | ||
| 61 | # Machine selection | 79 | # Machine selection |
| 62 | # | 80 | # |
| 63 | # CONFIG_MIPS_MTX1 is not set | 81 | # CONFIG_MIPS_MTX1 is not set |
| @@ -179,6 +197,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 179 | CONFIG_FLATMEM=y | 197 | CONFIG_FLATMEM=y |
| 180 | CONFIG_FLAT_NODE_MEM_MAP=y | 198 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 181 | # CONFIG_SPARSEMEM_STATIC is not set | 199 | # CONFIG_SPARSEMEM_STATIC is not set |
| 200 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 182 | CONFIG_PREEMPT_NONE=y | 201 | CONFIG_PREEMPT_NONE=y |
| 183 | # CONFIG_PREEMPT_VOLUNTARY is not set | 202 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 184 | # CONFIG_PREEMPT is not set | 203 | # CONFIG_PREEMPT is not set |
| @@ -200,7 +219,6 @@ CONFIG_PCMCIA_IOCTL=y | |||
| 200 | # | 219 | # |
| 201 | # PC-card bridges | 220 | # PC-card bridges |
| 202 | # | 221 | # |
| 203 | # CONFIG_TCIC is not set | ||
| 204 | CONFIG_PCMCIA_AU1X00=m | 222 | CONFIG_PCMCIA_AU1X00=m |
| 205 | 223 | ||
| 206 | # | 224 | # |
| @@ -255,13 +273,17 @@ CONFIG_TCP_CONG_BIC=y | |||
| 255 | # CONFIG_IPV6 is not set | 273 | # CONFIG_IPV6 is not set |
| 256 | CONFIG_NETFILTER=y | 274 | CONFIG_NETFILTER=y |
| 257 | # CONFIG_NETFILTER_DEBUG is not set | 275 | # CONFIG_NETFILTER_DEBUG is not set |
| 276 | |||
| 277 | # | ||
| 278 | # Core Netfilter Configuration | ||
| 279 | # | ||
| 258 | # CONFIG_NETFILTER_NETLINK is not set | 280 | # CONFIG_NETFILTER_NETLINK is not set |
| 281 | # CONFIG_NF_CONNTRACK is not set | ||
| 259 | 282 | ||
| 260 | # | 283 | # |
| 261 | # IP: Netfilter Configuration | 284 | # IP: Netfilter Configuration |
| 262 | # | 285 | # |
| 263 | # CONFIG_IP_NF_CONNTRACK is not set | 286 | # CONFIG_IP_NF_CONNTRACK is not set |
| 264 | CONFIG_IP_NF_PPTP=m | ||
| 265 | # CONFIG_IP_NF_QUEUE is not set | 287 | # CONFIG_IP_NF_QUEUE is not set |
| 266 | # CONFIG_IP_NF_IPTABLES is not set | 288 | # CONFIG_IP_NF_IPTABLES is not set |
| 267 | # CONFIG_IP_NF_ARPTABLES is not set | 289 | # CONFIG_IP_NF_ARPTABLES is not set |
| @@ -287,6 +309,10 @@ CONFIG_IP_NF_PPTP=m | |||
| 287 | # CONFIG_NET_DIVERT is not set | 309 | # CONFIG_NET_DIVERT is not set |
| 288 | # CONFIG_ECONET is not set | 310 | # CONFIG_ECONET is not set |
| 289 | # CONFIG_WAN_ROUTER is not set | 311 | # CONFIG_WAN_ROUTER is not set |
| 312 | |||
| 313 | # | ||
| 314 | # QoS and/or fair queueing | ||
| 315 | # | ||
| 290 | # CONFIG_NET_SCHED is not set | 316 | # CONFIG_NET_SCHED is not set |
| 291 | # CONFIG_NET_CLS_ROUTE is not set | 317 | # CONFIG_NET_CLS_ROUTE is not set |
| 292 | 318 | ||
| @@ -333,6 +359,7 @@ CONFIG_MTD_BLOCK=y | |||
| 333 | # CONFIG_FTL is not set | 359 | # CONFIG_FTL is not set |
| 334 | # CONFIG_NFTL is not set | 360 | # CONFIG_NFTL is not set |
| 335 | # CONFIG_INFTL is not set | 361 | # CONFIG_INFTL is not set |
| 362 | # CONFIG_RFD_FTL is not set | ||
| 336 | 363 | ||
| 337 | # | 364 | # |
| 338 | # RAM/ROM/Flash chip drivers | 365 | # RAM/ROM/Flash chip drivers |
| @@ -395,6 +422,11 @@ CONFIG_MTD_NAND_IDS=y | |||
| 395 | # CONFIG_MTD_NAND_NANDSIM is not set | 422 | # CONFIG_MTD_NAND_NANDSIM is not set |
| 396 | 423 | ||
| 397 | # | 424 | # |
| 425 | # OneNAND Flash Device Drivers | ||
| 426 | # | ||
| 427 | # CONFIG_MTD_ONENAND is not set | ||
| 428 | |||
| 429 | # | ||
| 398 | # Parallel port support | 430 | # Parallel port support |
| 399 | # | 431 | # |
| 400 | # CONFIG_PARPORT is not set | 432 | # CONFIG_PARPORT is not set |
| @@ -414,16 +446,7 @@ CONFIG_BLK_DEV_RAM=y | |||
| 414 | CONFIG_BLK_DEV_RAM_COUNT=16 | 446 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 415 | CONFIG_BLK_DEV_RAM_SIZE=4096 | 447 | CONFIG_BLK_DEV_RAM_SIZE=4096 |
| 416 | # CONFIG_BLK_DEV_INITRD is not set | 448 | # CONFIG_BLK_DEV_INITRD is not set |
| 417 | # CONFIG_LBD is not set | ||
| 418 | # CONFIG_CDROM_PKTCDVD is not set | 449 | # CONFIG_CDROM_PKTCDVD is not set |
| 419 | |||
| 420 | # | ||
| 421 | # IO Schedulers | ||
| 422 | # | ||
| 423 | CONFIG_IOSCHED_NOOP=y | ||
| 424 | CONFIG_IOSCHED_AS=y | ||
| 425 | CONFIG_IOSCHED_DEADLINE=y | ||
| 426 | CONFIG_IOSCHED_CFQ=y | ||
| 427 | # CONFIG_ATA_OVER_ETH is not set | 450 | # CONFIG_ATA_OVER_ETH is not set |
| 428 | 451 | ||
| 429 | # | 452 | # |
| @@ -495,6 +518,7 @@ CONFIG_SCSI_MULTI_LUN=y | |||
| 495 | # | 518 | # |
| 496 | # SCSI low-level drivers | 519 | # SCSI low-level drivers |
| 497 | # | 520 | # |
| 521 | # CONFIG_ISCSI_TCP is not set | ||
| 498 | # CONFIG_SCSI_SATA is not set | 522 | # CONFIG_SCSI_SATA is not set |
| 499 | # CONFIG_SCSI_DEBUG is not set | 523 | # CONFIG_SCSI_DEBUG is not set |
| 500 | 524 | ||
| @@ -545,6 +569,7 @@ CONFIG_NETDEVICES=y | |||
| 545 | CONFIG_NET_ETHERNET=y | 569 | CONFIG_NET_ETHERNET=y |
| 546 | CONFIG_MII=m | 570 | CONFIG_MII=m |
| 547 | # CONFIG_MIPS_AU1X00_ENET is not set | 571 | # CONFIG_MIPS_AU1X00_ENET is not set |
| 572 | # CONFIG_SMC91X is not set | ||
| 548 | 573 | ||
| 549 | # | 574 | # |
| 550 | # Ethernet (1000 Mbit) | 575 | # Ethernet (1000 Mbit) |
| @@ -638,13 +663,17 @@ CONFIG_HW_CONSOLE=y | |||
| 638 | # | 663 | # |
| 639 | # Serial drivers | 664 | # Serial drivers |
| 640 | # | 665 | # |
| 641 | # CONFIG_SERIAL_8250 is not set | 666 | CONFIG_SERIAL_8250=y |
| 667 | CONFIG_SERIAL_8250_CONSOLE=y | ||
| 668 | # CONFIG_SERIAL_8250_CS is not set | ||
| 669 | CONFIG_SERIAL_8250_NR_UARTS=4 | ||
| 670 | # CONFIG_SERIAL_8250_EXTENDED is not set | ||
| 671 | CONFIG_SERIAL_8250_AU1X00=y | ||
| 642 | 672 | ||
| 643 | # | 673 | # |
| 644 | # Non-8250 serial port support | 674 | # Non-8250 serial port support |
| 645 | # | 675 | # |
| 646 | CONFIG_SERIAL_AU1X00=y | 676 | # CONFIG_SERIAL_AU1X00 is not set |
| 647 | CONFIG_SERIAL_AU1X00_CONSOLE=y | ||
| 648 | CONFIG_SERIAL_CORE=y | 677 | CONFIG_SERIAL_CORE=y |
| 649 | CONFIG_SERIAL_CORE_CONSOLE=y | 678 | CONFIG_SERIAL_CORE_CONSOLE=y |
| 650 | CONFIG_UNIX98_PTYS=y | 679 | CONFIG_UNIX98_PTYS=y |
| @@ -673,11 +702,14 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 673 | # PCMCIA character devices | 702 | # PCMCIA character devices |
| 674 | # | 703 | # |
| 675 | # CONFIG_SYNCLINK_CS is not set | 704 | # CONFIG_SYNCLINK_CS is not set |
| 705 | # CONFIG_CARDMAN_4000 is not set | ||
| 706 | # CONFIG_CARDMAN_4040 is not set | ||
| 676 | # CONFIG_RAW_DRIVER is not set | 707 | # CONFIG_RAW_DRIVER is not set |
| 677 | 708 | ||
| 678 | # | 709 | # |
| 679 | # TPM devices | 710 | # TPM devices |
| 680 | # | 711 | # |
| 712 | # CONFIG_TELCLOCK is not set | ||
| 681 | 713 | ||
| 682 | # | 714 | # |
| 683 | # I2C support | 715 | # I2C support |
| @@ -720,12 +752,11 @@ CONFIG_FB=y | |||
| 720 | CONFIG_FB_CFB_FILLRECT=y | 752 | CONFIG_FB_CFB_FILLRECT=y |
| 721 | CONFIG_FB_CFB_COPYAREA=y | 753 | CONFIG_FB_CFB_COPYAREA=y |
| 722 | CONFIG_FB_CFB_IMAGEBLIT=y | 754 | CONFIG_FB_CFB_IMAGEBLIT=y |
| 723 | CONFIG_FB_SOFT_CURSOR=y | ||
| 724 | # CONFIG_FB_MACMODES is not set | 755 | # CONFIG_FB_MACMODES is not set |
| 725 | # CONFIG_FB_MODE_HELPERS is not set | 756 | # CONFIG_FB_MODE_HELPERS is not set |
| 726 | # CONFIG_FB_TILEBLITTING is not set | 757 | # CONFIG_FB_TILEBLITTING is not set |
| 727 | CONFIG_FB_AU1200=y | ||
| 728 | # CONFIG_FB_S1D13XXX is not set | 758 | # CONFIG_FB_S1D13XXX is not set |
| 759 | CONFIG_FB_AU1200=y | ||
| 729 | # CONFIG_FB_VIRTUAL is not set | 760 | # CONFIG_FB_VIRTUAL is not set |
| 730 | 761 | ||
| 731 | # | 762 | # |
| @@ -757,6 +788,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 757 | # CONFIG_USB is not set | 788 | # CONFIG_USB is not set |
| 758 | 789 | ||
| 759 | # | 790 | # |
| 791 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 792 | # | ||
| 793 | |||
| 794 | # | ||
| 760 | # USB Gadget Support | 795 | # USB Gadget Support |
| 761 | # | 796 | # |
| 762 | CONFIG_USB_GADGET=m | 797 | CONFIG_USB_GADGET=m |
| @@ -862,6 +897,7 @@ CONFIG_RAMFS=y | |||
| 862 | CONFIG_JFFS2_FS=y | 897 | CONFIG_JFFS2_FS=y |
| 863 | CONFIG_JFFS2_FS_DEBUG=0 | 898 | CONFIG_JFFS2_FS_DEBUG=0 |
| 864 | CONFIG_JFFS2_FS_WRITEBUFFER=y | 899 | CONFIG_JFFS2_FS_WRITEBUFFER=y |
| 900 | # CONFIG_JFFS2_SUMMARY is not set | ||
| 865 | # CONFIG_JFFS2_COMPRESSION_OPTIONS is not set | 901 | # CONFIG_JFFS2_COMPRESSION_OPTIONS is not set |
| 866 | CONFIG_JFFS2_ZLIB=y | 902 | CONFIG_JFFS2_ZLIB=y |
| 867 | CONFIG_JFFS2_RTIME=y | 903 | CONFIG_JFFS2_RTIME=y |
diff --git a/arch/mips/configs/db1500_defconfig b/arch/mips/configs/db1500_defconfig index 1c2784dee697..dbaf189fc9c0 100644 --- a/arch/mips/configs/db1500_defconfig +++ b/arch/mips/configs/db1500_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.15-rc1 |
| 4 | # Thu Oct 20 22:25:36 2005 | 4 | # Tue Nov 15 11:11:15 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -57,6 +57,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 57 | CONFIG_KMOD=y | 57 | CONFIG_KMOD=y |
| 58 | 58 | ||
| 59 | # | 59 | # |
| 60 | # Block layer | ||
| 61 | # | ||
| 62 | # CONFIG_LBD is not set | ||
| 63 | |||
| 64 | # | ||
| 65 | # IO Schedulers | ||
| 66 | # | ||
| 67 | CONFIG_IOSCHED_NOOP=y | ||
| 68 | CONFIG_IOSCHED_AS=y | ||
| 69 | CONFIG_IOSCHED_DEADLINE=y | ||
| 70 | CONFIG_IOSCHED_CFQ=y | ||
| 71 | CONFIG_DEFAULT_AS=y | ||
| 72 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 73 | # CONFIG_DEFAULT_CFQ is not set | ||
| 74 | # CONFIG_DEFAULT_NOOP is not set | ||
| 75 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 76 | |||
| 77 | # | ||
| 60 | # Machine selection | 78 | # Machine selection |
| 61 | # | 79 | # |
| 62 | # CONFIG_MIPS_MTX1 is not set | 80 | # CONFIG_MIPS_MTX1 is not set |
| @@ -180,6 +198,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 180 | CONFIG_FLATMEM=y | 198 | CONFIG_FLATMEM=y |
| 181 | CONFIG_FLAT_NODE_MEM_MAP=y | 199 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 182 | # CONFIG_SPARSEMEM_STATIC is not set | 200 | # CONFIG_SPARSEMEM_STATIC is not set |
| 201 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 183 | CONFIG_PREEMPT_NONE=y | 202 | CONFIG_PREEMPT_NONE=y |
| 184 | # CONFIG_PREEMPT_VOLUNTARY is not set | 203 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 185 | # CONFIG_PREEMPT is not set | 204 | # CONFIG_PREEMPT is not set |
| @@ -208,7 +227,6 @@ CONFIG_CARDBUS=y | |||
| 208 | # CONFIG_YENTA is not set | 227 | # CONFIG_YENTA is not set |
| 209 | # CONFIG_PD6729 is not set | 228 | # CONFIG_PD6729 is not set |
| 210 | # CONFIG_I82092 is not set | 229 | # CONFIG_I82092 is not set |
| 211 | # CONFIG_TCIC is not set | ||
| 212 | CONFIG_PCMCIA_AU1X00=m | 230 | CONFIG_PCMCIA_AU1X00=m |
| 213 | 231 | ||
| 214 | # | 232 | # |
| @@ -267,15 +285,19 @@ CONFIG_TCP_CONG_BIC=y | |||
| 267 | # CONFIG_IPV6 is not set | 285 | # CONFIG_IPV6 is not set |
| 268 | CONFIG_NETFILTER=y | 286 | CONFIG_NETFILTER=y |
| 269 | # CONFIG_NETFILTER_DEBUG is not set | 287 | # CONFIG_NETFILTER_DEBUG is not set |
| 288 | |||
| 289 | # | ||
| 290 | # Core Netfilter Configuration | ||
| 291 | # | ||
| 270 | CONFIG_NETFILTER_NETLINK=m | 292 | CONFIG_NETFILTER_NETLINK=m |
| 271 | CONFIG_NETFILTER_NETLINK_QUEUE=m | 293 | CONFIG_NETFILTER_NETLINK_QUEUE=m |
| 272 | CONFIG_NETFILTER_NETLINK_LOG=m | 294 | CONFIG_NETFILTER_NETLINK_LOG=m |
| 295 | # CONFIG_NF_CONNTRACK is not set | ||
| 273 | 296 | ||
| 274 | # | 297 | # |
| 275 | # IP: Netfilter Configuration | 298 | # IP: Netfilter Configuration |
| 276 | # | 299 | # |
| 277 | # CONFIG_IP_NF_CONNTRACK is not set | 300 | # CONFIG_IP_NF_CONNTRACK is not set |
| 278 | CONFIG_IP_NF_PPTP=m | ||
| 279 | # CONFIG_IP_NF_QUEUE is not set | 301 | # CONFIG_IP_NF_QUEUE is not set |
| 280 | # CONFIG_IP_NF_IPTABLES is not set | 302 | # CONFIG_IP_NF_IPTABLES is not set |
| 281 | # CONFIG_IP_NF_ARPTABLES is not set | 303 | # CONFIG_IP_NF_ARPTABLES is not set |
| @@ -301,6 +323,10 @@ CONFIG_IP_NF_PPTP=m | |||
| 301 | # CONFIG_NET_DIVERT is not set | 323 | # CONFIG_NET_DIVERT is not set |
| 302 | # CONFIG_ECONET is not set | 324 | # CONFIG_ECONET is not set |
| 303 | # CONFIG_WAN_ROUTER is not set | 325 | # CONFIG_WAN_ROUTER is not set |
| 326 | |||
| 327 | # | ||
| 328 | # QoS and/or fair queueing | ||
| 329 | # | ||
| 304 | # CONFIG_NET_SCHED is not set | 330 | # CONFIG_NET_SCHED is not set |
| 305 | # CONFIG_NET_CLS_ROUTE is not set | 331 | # CONFIG_NET_CLS_ROUTE is not set |
| 306 | 332 | ||
| @@ -351,6 +377,7 @@ CONFIG_MTD_BLOCK=y | |||
| 351 | # CONFIG_FTL is not set | 377 | # CONFIG_FTL is not set |
| 352 | # CONFIG_NFTL is not set | 378 | # CONFIG_NFTL is not set |
| 353 | # CONFIG_INFTL is not set | 379 | # CONFIG_INFTL is not set |
| 380 | # CONFIG_RFD_FTL is not set | ||
| 354 | 381 | ||
| 355 | # | 382 | # |
| 356 | # RAM/ROM/Flash chip drivers | 383 | # RAM/ROM/Flash chip drivers |
| @@ -409,6 +436,11 @@ CONFIG_MTD_ALCHEMY=y | |||
| 409 | # CONFIG_MTD_NAND is not set | 436 | # CONFIG_MTD_NAND is not set |
| 410 | 437 | ||
| 411 | # | 438 | # |
| 439 | # OneNAND Flash Device Drivers | ||
| 440 | # | ||
| 441 | # CONFIG_MTD_ONENAND is not set | ||
| 442 | |||
| 443 | # | ||
| 412 | # Parallel port support | 444 | # Parallel port support |
| 413 | # | 445 | # |
| 414 | # CONFIG_PARPORT is not set | 446 | # CONFIG_PARPORT is not set |
| @@ -432,18 +464,9 @@ CONFIG_BLK_DEV_LOOP=y | |||
| 432 | # CONFIG_BLK_DEV_UB is not set | 464 | # CONFIG_BLK_DEV_UB is not set |
| 433 | # CONFIG_BLK_DEV_RAM is not set | 465 | # CONFIG_BLK_DEV_RAM is not set |
| 434 | CONFIG_BLK_DEV_RAM_COUNT=16 | 466 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 435 | # CONFIG_LBD is not set | ||
| 436 | CONFIG_CDROM_PKTCDVD=m | 467 | CONFIG_CDROM_PKTCDVD=m |
| 437 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 468 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 438 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 469 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 439 | |||
| 440 | # | ||
| 441 | # IO Schedulers | ||
| 442 | # | ||
| 443 | CONFIG_IOSCHED_NOOP=y | ||
| 444 | CONFIG_IOSCHED_AS=y | ||
| 445 | CONFIG_IOSCHED_DEADLINE=y | ||
| 446 | CONFIG_IOSCHED_CFQ=y | ||
| 447 | CONFIG_ATA_OVER_ETH=m | 470 | CONFIG_ATA_OVER_ETH=m |
| 448 | 471 | ||
| 449 | # | 472 | # |
| @@ -518,7 +541,6 @@ CONFIG_NETDEVICES=y | |||
| 518 | # PHY device support | 541 | # PHY device support |
| 519 | # | 542 | # |
| 520 | CONFIG_PHYLIB=m | 543 | CONFIG_PHYLIB=m |
| 521 | CONFIG_PHYCONTROL=y | ||
| 522 | 544 | ||
| 523 | # | 545 | # |
| 524 | # MII PHY device drivers | 546 | # MII PHY device drivers |
| @@ -537,7 +559,9 @@ CONFIG_NET_ETHERNET=y | |||
| 537 | CONFIG_MIPS_AU1X00_ENET=y | 559 | CONFIG_MIPS_AU1X00_ENET=y |
| 538 | # CONFIG_HAPPYMEAL is not set | 560 | # CONFIG_HAPPYMEAL is not set |
| 539 | # CONFIG_SUNGEM is not set | 561 | # CONFIG_SUNGEM is not set |
| 562 | # CONFIG_CASSINI is not set | ||
| 540 | # CONFIG_NET_VENDOR_3COM is not set | 563 | # CONFIG_NET_VENDOR_3COM is not set |
| 564 | # CONFIG_SMC91X is not set | ||
| 541 | 565 | ||
| 542 | # | 566 | # |
| 543 | # Tulip family network device support | 567 | # Tulip family network device support |
| @@ -599,6 +623,7 @@ CONFIG_PPP_ASYNC=m | |||
| 599 | # CONFIG_PPP_SYNC_TTY is not set | 623 | # CONFIG_PPP_SYNC_TTY is not set |
| 600 | CONFIG_PPP_DEFLATE=m | 624 | CONFIG_PPP_DEFLATE=m |
| 601 | # CONFIG_PPP_BSDCOMP is not set | 625 | # CONFIG_PPP_BSDCOMP is not set |
| 626 | CONFIG_PPP_MPPE=m | ||
| 602 | CONFIG_PPPOE=m | 627 | CONFIG_PPPOE=m |
| 603 | # CONFIG_SLIP is not set | 628 | # CONFIG_SLIP is not set |
| 604 | # CONFIG_SHAPER is not set | 629 | # CONFIG_SHAPER is not set |
| @@ -664,13 +689,17 @@ CONFIG_SERIO_RAW=m | |||
| 664 | # | 689 | # |
| 665 | # Serial drivers | 690 | # Serial drivers |
| 666 | # | 691 | # |
| 667 | # CONFIG_SERIAL_8250 is not set | 692 | CONFIG_SERIAL_8250=y |
| 693 | CONFIG_SERIAL_8250_CONSOLE=y | ||
| 694 | # CONFIG_SERIAL_8250_CS is not set | ||
| 695 | CONFIG_SERIAL_8250_NR_UARTS=4 | ||
| 696 | # CONFIG_SERIAL_8250_EXTENDED is not set | ||
| 697 | CONFIG_SERIAL_8250_AU1X00=y | ||
| 668 | 698 | ||
| 669 | # | 699 | # |
| 670 | # Non-8250 serial port support | 700 | # Non-8250 serial port support |
| 671 | # | 701 | # |
| 672 | CONFIG_SERIAL_AU1X00=y | 702 | # CONFIG_SERIAL_AU1X00 is not set |
| 673 | CONFIG_SERIAL_AU1X00_CONSOLE=y | ||
| 674 | CONFIG_SERIAL_CORE=y | 703 | CONFIG_SERIAL_CORE=y |
| 675 | CONFIG_SERIAL_CORE_CONSOLE=y | 704 | CONFIG_SERIAL_CORE_CONSOLE=y |
| 676 | # CONFIG_SERIAL_JSM is not set | 705 | # CONFIG_SERIAL_JSM is not set |
| @@ -702,12 +731,15 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 702 | # PCMCIA character devices | 731 | # PCMCIA character devices |
| 703 | # | 732 | # |
| 704 | CONFIG_SYNCLINK_CS=m | 733 | CONFIG_SYNCLINK_CS=m |
| 734 | # CONFIG_CARDMAN_4000 is not set | ||
| 735 | # CONFIG_CARDMAN_4040 is not set | ||
| 705 | # CONFIG_RAW_DRIVER is not set | 736 | # CONFIG_RAW_DRIVER is not set |
| 706 | 737 | ||
| 707 | # | 738 | # |
| 708 | # TPM devices | 739 | # TPM devices |
| 709 | # | 740 | # |
| 710 | # CONFIG_TCG_TPM is not set | 741 | # CONFIG_TCG_TPM is not set |
| 742 | # CONFIG_TELCLOCK is not set | ||
| 711 | 743 | ||
| 712 | # | 744 | # |
| 713 | # I2C support | 745 | # I2C support |
| @@ -756,12 +788,94 @@ CONFIG_SOUND=y | |||
| 756 | # | 788 | # |
| 757 | # Advanced Linux Sound Architecture | 789 | # Advanced Linux Sound Architecture |
| 758 | # | 790 | # |
| 759 | # CONFIG_SND is not set | 791 | CONFIG_SND=m |
| 792 | CONFIG_SND_AC97_CODEC=m | ||
| 793 | CONFIG_SND_AC97_BUS=m | ||
| 794 | CONFIG_SND_TIMER=m | ||
| 795 | CONFIG_SND_PCM=m | ||
| 796 | CONFIG_SND_RAWMIDI=m | ||
| 797 | CONFIG_SND_SEQUENCER=m | ||
| 798 | CONFIG_SND_SEQ_DUMMY=m | ||
| 799 | CONFIG_SND_OSSEMUL=y | ||
| 800 | CONFIG_SND_MIXER_OSS=m | ||
| 801 | CONFIG_SND_PCM_OSS=m | ||
| 802 | CONFIG_SND_SEQUENCER_OSS=y | ||
| 803 | # CONFIG_SND_VERBOSE_PRINTK is not set | ||
| 804 | # CONFIG_SND_DEBUG is not set | ||
| 805 | CONFIG_SND_GENERIC_DRIVER=y | ||
| 806 | |||
| 807 | # | ||
| 808 | # Generic devices | ||
| 809 | # | ||
| 810 | # CONFIG_SND_DUMMY is not set | ||
| 811 | CONFIG_SND_VIRMIDI=m | ||
| 812 | CONFIG_SND_MTPAV=m | ||
| 813 | # CONFIG_SND_SERIAL_U16550 is not set | ||
| 814 | # CONFIG_SND_MPU401 is not set | ||
| 815 | |||
| 816 | # | ||
| 817 | # PCI devices | ||
| 818 | # | ||
| 819 | # CONFIG_SND_ALI5451 is not set | ||
| 820 | # CONFIG_SND_ATIIXP is not set | ||
| 821 | # CONFIG_SND_ATIIXP_MODEM is not set | ||
| 822 | # CONFIG_SND_AU8810 is not set | ||
| 823 | # CONFIG_SND_AU8820 is not set | ||
| 824 | # CONFIG_SND_AU8830 is not set | ||
| 825 | # CONFIG_SND_AZT3328 is not set | ||
| 826 | # CONFIG_SND_BT87X is not set | ||
| 827 | # CONFIG_SND_CS46XX is not set | ||
| 828 | # CONFIG_SND_CS4281 is not set | ||
| 829 | # CONFIG_SND_EMU10K1 is not set | ||
| 830 | # CONFIG_SND_EMU10K1X is not set | ||
| 831 | # CONFIG_SND_CA0106 is not set | ||
| 832 | # CONFIG_SND_KORG1212 is not set | ||
| 833 | # CONFIG_SND_MIXART is not set | ||
| 834 | # CONFIG_SND_NM256 is not set | ||
| 835 | # CONFIG_SND_RME32 is not set | ||
| 836 | # CONFIG_SND_RME96 is not set | ||
| 837 | # CONFIG_SND_RME9652 is not set | ||
| 838 | # CONFIG_SND_HDSP is not set | ||
| 839 | # CONFIG_SND_HDSPM is not set | ||
| 840 | # CONFIG_SND_TRIDENT is not set | ||
| 841 | # CONFIG_SND_YMFPCI is not set | ||
| 842 | # CONFIG_SND_AD1889 is not set | ||
| 843 | # CONFIG_SND_CMIPCI is not set | ||
| 844 | # CONFIG_SND_ENS1370 is not set | ||
| 845 | # CONFIG_SND_ENS1371 is not set | ||
| 846 | # CONFIG_SND_ES1938 is not set | ||
| 847 | # CONFIG_SND_ES1968 is not set | ||
| 848 | # CONFIG_SND_MAESTRO3 is not set | ||
| 849 | # CONFIG_SND_FM801 is not set | ||
| 850 | # CONFIG_SND_ICE1712 is not set | ||
| 851 | # CONFIG_SND_ICE1724 is not set | ||
| 852 | # CONFIG_SND_INTEL8X0 is not set | ||
| 853 | # CONFIG_SND_INTEL8X0M is not set | ||
| 854 | # CONFIG_SND_SONICVIBES is not set | ||
| 855 | # CONFIG_SND_VIA82XX is not set | ||
| 856 | # CONFIG_SND_VIA82XX_MODEM is not set | ||
| 857 | # CONFIG_SND_VX222 is not set | ||
| 858 | # CONFIG_SND_HDA_INTEL is not set | ||
| 859 | |||
| 860 | # | ||
| 861 | # ALSA MIPS devices | ||
| 862 | # | ||
| 863 | CONFIG_SND_AU1X00=m | ||
| 864 | |||
| 865 | # | ||
| 866 | # USB devices | ||
| 867 | # | ||
| 868 | # CONFIG_SND_USB_AUDIO is not set | ||
| 869 | |||
| 870 | # | ||
| 871 | # PCMCIA devices | ||
| 872 | # | ||
| 760 | 873 | ||
| 761 | # | 874 | # |
| 762 | # Open Sound System | 875 | # Open Sound System |
| 763 | # | 876 | # |
| 764 | CONFIG_SOUND_PRIME=y | 877 | CONFIG_SOUND_PRIME=y |
| 878 | CONFIG_OBSOLETE_OSS_DRIVER=y | ||
| 765 | # CONFIG_SOUND_BT878 is not set | 879 | # CONFIG_SOUND_BT878 is not set |
| 766 | # CONFIG_SOUND_CMPCI is not set | 880 | # CONFIG_SOUND_CMPCI is not set |
| 767 | # CONFIG_SOUND_EMU10K1 is not set | 881 | # CONFIG_SOUND_EMU10K1 is not set |
| @@ -774,7 +888,7 @@ CONFIG_SOUND_PRIME=y | |||
| 774 | # CONFIG_SOUND_MAESTRO3 is not set | 888 | # CONFIG_SOUND_MAESTRO3 is not set |
| 775 | # CONFIG_SOUND_ICH is not set | 889 | # CONFIG_SOUND_ICH is not set |
| 776 | # CONFIG_SOUND_SONICVIBES is not set | 890 | # CONFIG_SOUND_SONICVIBES is not set |
| 777 | CONFIG_SOUND_AU1000=y | 891 | # CONFIG_SOUND_AU1000 is not set |
| 778 | # CONFIG_SOUND_TRIDENT is not set | 892 | # CONFIG_SOUND_TRIDENT is not set |
| 779 | # CONFIG_SOUND_MSNDCLAS is not set | 893 | # CONFIG_SOUND_MSNDCLAS is not set |
| 780 | # CONFIG_SOUND_MSNDPIN is not set | 894 | # CONFIG_SOUND_MSNDPIN is not set |
| @@ -815,12 +929,15 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y | |||
| 815 | # USB Device Class drivers | 929 | # USB Device Class drivers |
| 816 | # | 930 | # |
| 817 | # CONFIG_OBSOLETE_OSS_USB_DRIVER is not set | 931 | # CONFIG_OBSOLETE_OSS_USB_DRIVER is not set |
| 818 | # CONFIG_USB_BLUETOOTH_TTY is not set | ||
| 819 | # CONFIG_USB_ACM is not set | 932 | # CONFIG_USB_ACM is not set |
| 820 | # CONFIG_USB_PRINTER is not set | 933 | # CONFIG_USB_PRINTER is not set |
| 821 | 934 | ||
| 822 | # | 935 | # |
| 823 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' may also be needed; see USB_STORAGE Help for more information | 936 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' |
| 937 | # | ||
| 938 | |||
| 939 | # | ||
| 940 | # may also be needed; see USB_STORAGE Help for more information | ||
| 824 | # | 941 | # |
| 825 | # CONFIG_USB_STORAGE is not set | 942 | # CONFIG_USB_STORAGE is not set |
| 826 | 943 | ||
diff --git a/arch/mips/configs/db1550_defconfig b/arch/mips/configs/db1550_defconfig index 64248e2e924a..59c1ef214fc0 100644 --- a/arch/mips/configs/db1550_defconfig +++ b/arch/mips/configs/db1550_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.15-rc1 |
| 4 | # Thu Oct 20 22:25:39 2005 | 4 | # Tue Nov 15 11:11:18 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -57,6 +57,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 57 | CONFIG_KMOD=y | 57 | CONFIG_KMOD=y |
| 58 | 58 | ||
| 59 | # | 59 | # |
| 60 | # Block layer | ||
| 61 | # | ||
| 62 | # CONFIG_LBD is not set | ||
| 63 | |||
| 64 | # | ||
| 65 | # IO Schedulers | ||
| 66 | # | ||
| 67 | CONFIG_IOSCHED_NOOP=y | ||
| 68 | CONFIG_IOSCHED_AS=y | ||
| 69 | CONFIG_IOSCHED_DEADLINE=y | ||
| 70 | CONFIG_IOSCHED_CFQ=y | ||
| 71 | CONFIG_DEFAULT_AS=y | ||
| 72 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 73 | # CONFIG_DEFAULT_CFQ is not set | ||
| 74 | # CONFIG_DEFAULT_NOOP is not set | ||
| 75 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 76 | |||
| 77 | # | ||
| 60 | # Machine selection | 78 | # Machine selection |
| 61 | # | 79 | # |
| 62 | # CONFIG_MIPS_MTX1 is not set | 80 | # CONFIG_MIPS_MTX1 is not set |
| @@ -179,6 +197,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 179 | CONFIG_FLATMEM=y | 197 | CONFIG_FLATMEM=y |
| 180 | CONFIG_FLAT_NODE_MEM_MAP=y | 198 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 181 | # CONFIG_SPARSEMEM_STATIC is not set | 199 | # CONFIG_SPARSEMEM_STATIC is not set |
| 200 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 182 | CONFIG_PREEMPT_NONE=y | 201 | CONFIG_PREEMPT_NONE=y |
| 183 | # CONFIG_PREEMPT_VOLUNTARY is not set | 202 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 184 | # CONFIG_PREEMPT is not set | 203 | # CONFIG_PREEMPT is not set |
| @@ -207,7 +226,6 @@ CONFIG_CARDBUS=y | |||
| 207 | # CONFIG_YENTA is not set | 226 | # CONFIG_YENTA is not set |
| 208 | # CONFIG_PD6729 is not set | 227 | # CONFIG_PD6729 is not set |
| 209 | # CONFIG_I82092 is not set | 228 | # CONFIG_I82092 is not set |
| 210 | # CONFIG_TCIC is not set | ||
| 211 | CONFIG_PCMCIA_AU1X00=m | 229 | CONFIG_PCMCIA_AU1X00=m |
| 212 | 230 | ||
| 213 | # | 231 | # |
| @@ -266,15 +284,19 @@ CONFIG_TCP_CONG_BIC=y | |||
| 266 | # CONFIG_IPV6 is not set | 284 | # CONFIG_IPV6 is not set |
| 267 | CONFIG_NETFILTER=y | 285 | CONFIG_NETFILTER=y |
| 268 | # CONFIG_NETFILTER_DEBUG is not set | 286 | # CONFIG_NETFILTER_DEBUG is not set |
| 287 | |||
| 288 | # | ||
| 289 | # Core Netfilter Configuration | ||
| 290 | # | ||
| 269 | CONFIG_NETFILTER_NETLINK=m | 291 | CONFIG_NETFILTER_NETLINK=m |
| 270 | CONFIG_NETFILTER_NETLINK_QUEUE=m | 292 | CONFIG_NETFILTER_NETLINK_QUEUE=m |
| 271 | CONFIG_NETFILTER_NETLINK_LOG=m | 293 | CONFIG_NETFILTER_NETLINK_LOG=m |
| 294 | # CONFIG_NF_CONNTRACK is not set | ||
| 272 | 295 | ||
| 273 | # | 296 | # |
| 274 | # IP: Netfilter Configuration | 297 | # IP: Netfilter Configuration |
| 275 | # | 298 | # |
| 276 | # CONFIG_IP_NF_CONNTRACK is not set | 299 | # CONFIG_IP_NF_CONNTRACK is not set |
| 277 | CONFIG_IP_NF_PPTP=m | ||
| 278 | # CONFIG_IP_NF_QUEUE is not set | 300 | # CONFIG_IP_NF_QUEUE is not set |
| 279 | # CONFIG_IP_NF_IPTABLES is not set | 301 | # CONFIG_IP_NF_IPTABLES is not set |
| 280 | # CONFIG_IP_NF_ARPTABLES is not set | 302 | # CONFIG_IP_NF_ARPTABLES is not set |
| @@ -300,6 +322,10 @@ CONFIG_IP_NF_PPTP=m | |||
| 300 | # CONFIG_NET_DIVERT is not set | 322 | # CONFIG_NET_DIVERT is not set |
| 301 | # CONFIG_ECONET is not set | 323 | # CONFIG_ECONET is not set |
| 302 | # CONFIG_WAN_ROUTER is not set | 324 | # CONFIG_WAN_ROUTER is not set |
| 325 | |||
| 326 | # | ||
| 327 | # QoS and/or fair queueing | ||
| 328 | # | ||
| 303 | # CONFIG_NET_SCHED is not set | 329 | # CONFIG_NET_SCHED is not set |
| 304 | # CONFIG_NET_CLS_ROUTE is not set | 330 | # CONFIG_NET_CLS_ROUTE is not set |
| 305 | 331 | ||
| @@ -350,6 +376,7 @@ CONFIG_MTD_BLOCK=y | |||
| 350 | # CONFIG_FTL is not set | 376 | # CONFIG_FTL is not set |
| 351 | # CONFIG_NFTL is not set | 377 | # CONFIG_NFTL is not set |
| 352 | # CONFIG_INFTL is not set | 378 | # CONFIG_INFTL is not set |
| 379 | # CONFIG_RFD_FTL is not set | ||
| 353 | 380 | ||
| 354 | # | 381 | # |
| 355 | # RAM/ROM/Flash chip drivers | 382 | # RAM/ROM/Flash chip drivers |
| @@ -413,6 +440,11 @@ CONFIG_MTD_NAND_AU1550=m | |||
| 413 | # CONFIG_MTD_NAND_NANDSIM is not set | 440 | # CONFIG_MTD_NAND_NANDSIM is not set |
| 414 | 441 | ||
| 415 | # | 442 | # |
| 443 | # OneNAND Flash Device Drivers | ||
| 444 | # | ||
| 445 | # CONFIG_MTD_ONENAND is not set | ||
| 446 | |||
| 447 | # | ||
| 416 | # Parallel port support | 448 | # Parallel port support |
| 417 | # | 449 | # |
| 418 | # CONFIG_PARPORT is not set | 450 | # CONFIG_PARPORT is not set |
| @@ -435,18 +467,9 @@ CONFIG_BLK_DEV_LOOP=y | |||
| 435 | # CONFIG_BLK_DEV_SX8 is not set | 467 | # CONFIG_BLK_DEV_SX8 is not set |
| 436 | # CONFIG_BLK_DEV_RAM is not set | 468 | # CONFIG_BLK_DEV_RAM is not set |
| 437 | CONFIG_BLK_DEV_RAM_COUNT=16 | 469 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 438 | # CONFIG_LBD is not set | ||
| 439 | CONFIG_CDROM_PKTCDVD=m | 470 | CONFIG_CDROM_PKTCDVD=m |
| 440 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 471 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 441 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 472 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 442 | |||
| 443 | # | ||
| 444 | # IO Schedulers | ||
| 445 | # | ||
| 446 | CONFIG_IOSCHED_NOOP=y | ||
| 447 | CONFIG_IOSCHED_AS=y | ||
| 448 | CONFIG_IOSCHED_DEADLINE=y | ||
| 449 | CONFIG_IOSCHED_CFQ=y | ||
| 450 | CONFIG_ATA_OVER_ETH=m | 473 | CONFIG_ATA_OVER_ETH=m |
| 451 | 474 | ||
| 452 | # | 475 | # |
| @@ -550,7 +573,6 @@ CONFIG_NETDEVICES=y | |||
| 550 | # PHY device support | 573 | # PHY device support |
| 551 | # | 574 | # |
| 552 | CONFIG_PHYLIB=m | 575 | CONFIG_PHYLIB=m |
| 553 | CONFIG_PHYCONTROL=y | ||
| 554 | 576 | ||
| 555 | # | 577 | # |
| 556 | # MII PHY device drivers | 578 | # MII PHY device drivers |
| @@ -569,7 +591,9 @@ CONFIG_MII=m | |||
| 569 | CONFIG_MIPS_AU1X00_ENET=y | 591 | CONFIG_MIPS_AU1X00_ENET=y |
| 570 | # CONFIG_HAPPYMEAL is not set | 592 | # CONFIG_HAPPYMEAL is not set |
| 571 | # CONFIG_SUNGEM is not set | 593 | # CONFIG_SUNGEM is not set |
| 594 | # CONFIG_CASSINI is not set | ||
| 572 | # CONFIG_NET_VENDOR_3COM is not set | 595 | # CONFIG_NET_VENDOR_3COM is not set |
| 596 | # CONFIG_SMC91X is not set | ||
| 573 | 597 | ||
| 574 | # | 598 | # |
| 575 | # Tulip family network device support | 599 | # Tulip family network device support |
| @@ -639,6 +663,7 @@ CONFIG_PPP_ASYNC=m | |||
| 639 | # CONFIG_PPP_SYNC_TTY is not set | 663 | # CONFIG_PPP_SYNC_TTY is not set |
| 640 | CONFIG_PPP_DEFLATE=m | 664 | CONFIG_PPP_DEFLATE=m |
| 641 | # CONFIG_PPP_BSDCOMP is not set | 665 | # CONFIG_PPP_BSDCOMP is not set |
| 666 | CONFIG_PPP_MPPE=m | ||
| 642 | CONFIG_PPPOE=m | 667 | CONFIG_PPPOE=m |
| 643 | # CONFIG_SLIP is not set | 668 | # CONFIG_SLIP is not set |
| 644 | # CONFIG_SHAPER is not set | 669 | # CONFIG_SHAPER is not set |
| @@ -704,13 +729,17 @@ CONFIG_SERIO_RAW=m | |||
| 704 | # | 729 | # |
| 705 | # Serial drivers | 730 | # Serial drivers |
| 706 | # | 731 | # |
| 707 | # CONFIG_SERIAL_8250 is not set | 732 | CONFIG_SERIAL_8250=y |
| 733 | CONFIG_SERIAL_8250_CONSOLE=y | ||
| 734 | # CONFIG_SERIAL_8250_CS is not set | ||
| 735 | CONFIG_SERIAL_8250_NR_UARTS=4 | ||
| 736 | # CONFIG_SERIAL_8250_EXTENDED is not set | ||
| 737 | CONFIG_SERIAL_8250_AU1X00=y | ||
| 708 | 738 | ||
| 709 | # | 739 | # |
| 710 | # Non-8250 serial port support | 740 | # Non-8250 serial port support |
| 711 | # | 741 | # |
| 712 | CONFIG_SERIAL_AU1X00=y | 742 | # CONFIG_SERIAL_AU1X00 is not set |
| 713 | CONFIG_SERIAL_AU1X00_CONSOLE=y | ||
| 714 | CONFIG_SERIAL_CORE=y | 743 | CONFIG_SERIAL_CORE=y |
| 715 | CONFIG_SERIAL_CORE_CONSOLE=y | 744 | CONFIG_SERIAL_CORE_CONSOLE=y |
| 716 | # CONFIG_SERIAL_JSM is not set | 745 | # CONFIG_SERIAL_JSM is not set |
| @@ -742,12 +771,15 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 742 | # PCMCIA character devices | 771 | # PCMCIA character devices |
| 743 | # | 772 | # |
| 744 | CONFIG_SYNCLINK_CS=m | 773 | CONFIG_SYNCLINK_CS=m |
| 774 | # CONFIG_CARDMAN_4000 is not set | ||
| 775 | # CONFIG_CARDMAN_4040 is not set | ||
| 745 | # CONFIG_RAW_DRIVER is not set | 776 | # CONFIG_RAW_DRIVER is not set |
| 746 | 777 | ||
| 747 | # | 778 | # |
| 748 | # TPM devices | 779 | # TPM devices |
| 749 | # | 780 | # |
| 750 | # CONFIG_TCG_TPM is not set | 781 | # CONFIG_TCG_TPM is not set |
| 782 | # CONFIG_TELCLOCK is not set | ||
| 751 | 783 | ||
| 752 | # | 784 | # |
| 753 | # I2C support | 785 | # I2C support |
| @@ -801,6 +833,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 801 | # CONFIG_USB is not set | 833 | # CONFIG_USB is not set |
| 802 | 834 | ||
| 803 | # | 835 | # |
| 836 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 837 | # | ||
| 838 | |||
| 839 | # | ||
| 804 | # USB Gadget Support | 840 | # USB Gadget Support |
| 805 | # | 841 | # |
| 806 | # CONFIG_USB_GADGET is not set | 842 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/ddb5476_defconfig b/arch/mips/configs/ddb5476_defconfig index 326f3aa63741..4ba29e612bdf 100644 --- a/arch/mips/configs/ddb5476_defconfig +++ b/arch/mips/configs/ddb5476_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:25:42 2005 | 4 | # Mon Nov 7 23:05:04 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -51,6 +51,24 @@ CONFIG_BASE_SMALL=0 | |||
| 51 | # CONFIG_MODULES is not set | 51 | # CONFIG_MODULES is not set |
| 52 | 52 | ||
| 53 | # | 53 | # |
| 54 | # Block layer | ||
| 55 | # | ||
| 56 | # CONFIG_LBD is not set | ||
| 57 | |||
| 58 | # | ||
| 59 | # IO Schedulers | ||
| 60 | # | ||
| 61 | CONFIG_IOSCHED_NOOP=y | ||
| 62 | CONFIG_IOSCHED_AS=y | ||
| 63 | CONFIG_IOSCHED_DEADLINE=y | ||
| 64 | CONFIG_IOSCHED_CFQ=y | ||
| 65 | CONFIG_DEFAULT_AS=y | ||
| 66 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 67 | # CONFIG_DEFAULT_CFQ is not set | ||
| 68 | # CONFIG_DEFAULT_NOOP is not set | ||
| 69 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 70 | |||
| 71 | # | ||
| 54 | # Machine selection | 72 | # Machine selection |
| 55 | # | 73 | # |
| 56 | # CONFIG_MIPS_MTX1 is not set | 74 | # CONFIG_MIPS_MTX1 is not set |
| @@ -173,6 +191,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 173 | CONFIG_FLATMEM=y | 191 | CONFIG_FLATMEM=y |
| 174 | CONFIG_FLAT_NODE_MEM_MAP=y | 192 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 175 | # CONFIG_SPARSEMEM_STATIC is not set | 193 | # CONFIG_SPARSEMEM_STATIC is not set |
| 194 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 176 | CONFIG_PREEMPT_NONE=y | 195 | CONFIG_PREEMPT_NONE=y |
| 177 | # CONFIG_PREEMPT_VOLUNTARY is not set | 196 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 178 | # CONFIG_PREEMPT is not set | 197 | # CONFIG_PREEMPT is not set |
| @@ -261,6 +280,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 261 | # CONFIG_NET_DIVERT is not set | 280 | # CONFIG_NET_DIVERT is not set |
| 262 | # CONFIG_ECONET is not set | 281 | # CONFIG_ECONET is not set |
| 263 | # CONFIG_WAN_ROUTER is not set | 282 | # CONFIG_WAN_ROUTER is not set |
| 283 | |||
| 284 | # | ||
| 285 | # QoS and/or fair queueing | ||
| 286 | # | ||
| 264 | # CONFIG_NET_SCHED is not set | 287 | # CONFIG_NET_SCHED is not set |
| 265 | # CONFIG_NET_CLS_ROUTE is not set | 288 | # CONFIG_NET_CLS_ROUTE is not set |
| 266 | 289 | ||
| @@ -292,6 +315,7 @@ CONFIG_FW_LOADER=y | |||
| 292 | # Connector - unified userspace <-> kernelspace linker | 315 | # Connector - unified userspace <-> kernelspace linker |
| 293 | # | 316 | # |
| 294 | CONFIG_CONNECTOR=y | 317 | CONFIG_CONNECTOR=y |
| 318 | CONFIG_PROC_EVENTS=y | ||
| 295 | 319 | ||
| 296 | # | 320 | # |
| 297 | # Memory Technology Devices (MTD) | 321 | # Memory Technology Devices (MTD) |
| @@ -321,18 +345,9 @@ CONFIG_CONNECTOR=y | |||
| 321 | # CONFIG_BLK_DEV_SX8 is not set | 345 | # CONFIG_BLK_DEV_SX8 is not set |
| 322 | # CONFIG_BLK_DEV_RAM is not set | 346 | # CONFIG_BLK_DEV_RAM is not set |
| 323 | CONFIG_BLK_DEV_RAM_COUNT=16 | 347 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 324 | # CONFIG_LBD is not set | ||
| 325 | CONFIG_CDROM_PKTCDVD=y | 348 | CONFIG_CDROM_PKTCDVD=y |
| 326 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 349 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 327 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 350 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 328 | |||
| 329 | # | ||
| 330 | # IO Schedulers | ||
| 331 | # | ||
| 332 | CONFIG_IOSCHED_NOOP=y | ||
| 333 | CONFIG_IOSCHED_AS=y | ||
| 334 | CONFIG_IOSCHED_DEADLINE=y | ||
| 335 | CONFIG_IOSCHED_CFQ=y | ||
| 336 | CONFIG_ATA_OVER_ETH=y | 351 | CONFIG_ATA_OVER_ETH=y |
| 337 | 352 | ||
| 338 | # | 353 | # |
| @@ -412,7 +427,6 @@ CONFIG_NETDEVICES=y | |||
| 412 | # PHY device support | 427 | # PHY device support |
| 413 | # | 428 | # |
| 414 | CONFIG_PHYLIB=y | 429 | CONFIG_PHYLIB=y |
| 415 | CONFIG_PHYCONTROL=y | ||
| 416 | 430 | ||
| 417 | # | 431 | # |
| 418 | # MII PHY device drivers | 432 | # MII PHY device drivers |
| @@ -430,6 +444,7 @@ CONFIG_NET_ETHERNET=y | |||
| 430 | # CONFIG_MII is not set | 444 | # CONFIG_MII is not set |
| 431 | # CONFIG_HAPPYMEAL is not set | 445 | # CONFIG_HAPPYMEAL is not set |
| 432 | # CONFIG_SUNGEM is not set | 446 | # CONFIG_SUNGEM is not set |
| 447 | # CONFIG_CASSINI is not set | ||
| 433 | # CONFIG_NET_VENDOR_3COM is not set | 448 | # CONFIG_NET_VENDOR_3COM is not set |
| 434 | # CONFIG_NET_VENDOR_SMC is not set | 449 | # CONFIG_NET_VENDOR_SMC is not set |
| 435 | # CONFIG_NET_VENDOR_RACAL is not set | 450 | # CONFIG_NET_VENDOR_RACAL is not set |
| @@ -443,7 +458,6 @@ CONFIG_NET_ETHERNET=y | |||
| 443 | # CONFIG_HP100 is not set | 458 | # CONFIG_HP100 is not set |
| 444 | # CONFIG_NET_ISA is not set | 459 | # CONFIG_NET_ISA is not set |
| 445 | # CONFIG_NET_PCI is not set | 460 | # CONFIG_NET_PCI is not set |
| 446 | # CONFIG_NET_POCKET is not set | ||
| 447 | 461 | ||
| 448 | # | 462 | # |
| 449 | # Ethernet (1000 Mbit) | 463 | # Ethernet (1000 Mbit) |
| @@ -591,6 +605,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 591 | # TPM devices | 605 | # TPM devices |
| 592 | # | 606 | # |
| 593 | # CONFIG_TCG_TPM is not set | 607 | # CONFIG_TCG_TPM is not set |
| 608 | # CONFIG_TELCLOCK is not set | ||
| 594 | 609 | ||
| 595 | # | 610 | # |
| 596 | # I2C support | 611 | # I2C support |
| @@ -633,7 +648,6 @@ CONFIG_FB=y | |||
| 633 | # CONFIG_FB_CFB_FILLRECT is not set | 648 | # CONFIG_FB_CFB_FILLRECT is not set |
| 634 | # CONFIG_FB_CFB_COPYAREA is not set | 649 | # CONFIG_FB_CFB_COPYAREA is not set |
| 635 | # CONFIG_FB_CFB_IMAGEBLIT is not set | 650 | # CONFIG_FB_CFB_IMAGEBLIT is not set |
| 636 | # CONFIG_FB_SOFT_CURSOR is not set | ||
| 637 | # CONFIG_FB_MACMODES is not set | 651 | # CONFIG_FB_MACMODES is not set |
| 638 | # CONFIG_FB_MODE_HELPERS is not set | 652 | # CONFIG_FB_MODE_HELPERS is not set |
| 639 | # CONFIG_FB_TILEBLITTING is not set | 653 | # CONFIG_FB_TILEBLITTING is not set |
| @@ -642,6 +656,7 @@ CONFIG_FB=y | |||
| 642 | # CONFIG_FB_CYBER2000 is not set | 656 | # CONFIG_FB_CYBER2000 is not set |
| 643 | # CONFIG_FB_ASILIANT is not set | 657 | # CONFIG_FB_ASILIANT is not set |
| 644 | # CONFIG_FB_IMSTT is not set | 658 | # CONFIG_FB_IMSTT is not set |
| 659 | # CONFIG_FB_S1D13XXX is not set | ||
| 645 | # CONFIG_FB_NVIDIA is not set | 660 | # CONFIG_FB_NVIDIA is not set |
| 646 | # CONFIG_FB_RIVA is not set | 661 | # CONFIG_FB_RIVA is not set |
| 647 | # CONFIG_FB_MATROX is not set | 662 | # CONFIG_FB_MATROX is not set |
| @@ -658,7 +673,6 @@ CONFIG_FB=y | |||
| 658 | # CONFIG_FB_SMIVGX is not set | 673 | # CONFIG_FB_SMIVGX is not set |
| 659 | # CONFIG_FB_CYBLA is not set | 674 | # CONFIG_FB_CYBLA is not set |
| 660 | # CONFIG_FB_TRIDENT is not set | 675 | # CONFIG_FB_TRIDENT is not set |
| 661 | # CONFIG_FB_S1D13XXX is not set | ||
| 662 | # CONFIG_FB_VIRTUAL is not set | 676 | # CONFIG_FB_VIRTUAL is not set |
| 663 | 677 | ||
| 664 | # | 678 | # |
| @@ -688,6 +702,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 688 | # CONFIG_USB is not set | 702 | # CONFIG_USB is not set |
| 689 | 703 | ||
| 690 | # | 704 | # |
| 705 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 706 | # | ||
| 707 | |||
| 708 | # | ||
| 691 | # USB Gadget Support | 709 | # USB Gadget Support |
| 692 | # | 710 | # |
| 693 | # CONFIG_USB_GADGET is not set | 711 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/ddb5477_defconfig b/arch/mips/configs/ddb5477_defconfig index c2a01df3c8df..ea4e9046bbee 100644 --- a/arch/mips/configs/ddb5477_defconfig +++ b/arch/mips/configs/ddb5477_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:25:45 2005 | 4 | # Mon Nov 7 23:05:08 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -51,6 +51,24 @@ CONFIG_BASE_SMALL=0 | |||
| 51 | # CONFIG_MODULES is not set | 51 | # CONFIG_MODULES is not set |
| 52 | 52 | ||
| 53 | # | 53 | # |
| 54 | # Block layer | ||
| 55 | # | ||
| 56 | # CONFIG_LBD is not set | ||
| 57 | |||
| 58 | # | ||
| 59 | # IO Schedulers | ||
| 60 | # | ||
| 61 | CONFIG_IOSCHED_NOOP=y | ||
| 62 | CONFIG_IOSCHED_AS=y | ||
| 63 | CONFIG_IOSCHED_DEADLINE=y | ||
| 64 | CONFIG_IOSCHED_CFQ=y | ||
| 65 | CONFIG_DEFAULT_AS=y | ||
| 66 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 67 | # CONFIG_DEFAULT_CFQ is not set | ||
| 68 | # CONFIG_DEFAULT_NOOP is not set | ||
| 69 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 70 | |||
| 71 | # | ||
| 54 | # Machine selection | 72 | # Machine selection |
| 55 | # | 73 | # |
| 56 | # CONFIG_MIPS_MTX1 is not set | 74 | # CONFIG_MIPS_MTX1 is not set |
| @@ -173,6 +191,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 173 | CONFIG_FLATMEM=y | 191 | CONFIG_FLATMEM=y |
| 174 | CONFIG_FLAT_NODE_MEM_MAP=y | 192 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 175 | # CONFIG_SPARSEMEM_STATIC is not set | 193 | # CONFIG_SPARSEMEM_STATIC is not set |
| 194 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 176 | CONFIG_PREEMPT_NONE=y | 195 | CONFIG_PREEMPT_NONE=y |
| 177 | # CONFIG_PREEMPT_VOLUNTARY is not set | 196 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 178 | # CONFIG_PREEMPT is not set | 197 | # CONFIG_PREEMPT is not set |
| @@ -260,6 +279,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 260 | # CONFIG_NET_DIVERT is not set | 279 | # CONFIG_NET_DIVERT is not set |
| 261 | # CONFIG_ECONET is not set | 280 | # CONFIG_ECONET is not set |
| 262 | # CONFIG_WAN_ROUTER is not set | 281 | # CONFIG_WAN_ROUTER is not set |
| 282 | |||
| 283 | # | ||
| 284 | # QoS and/or fair queueing | ||
| 285 | # | ||
| 263 | # CONFIG_NET_SCHED is not set | 286 | # CONFIG_NET_SCHED is not set |
| 264 | # CONFIG_NET_CLS_ROUTE is not set | 287 | # CONFIG_NET_CLS_ROUTE is not set |
| 265 | 288 | ||
| @@ -291,6 +314,7 @@ CONFIG_FW_LOADER=y | |||
| 291 | # Connector - unified userspace <-> kernelspace linker | 314 | # Connector - unified userspace <-> kernelspace linker |
| 292 | # | 315 | # |
| 293 | CONFIG_CONNECTOR=y | 316 | CONFIG_CONNECTOR=y |
| 317 | CONFIG_PROC_EVENTS=y | ||
| 294 | 318 | ||
| 295 | # | 319 | # |
| 296 | # Memory Technology Devices (MTD) | 320 | # Memory Technology Devices (MTD) |
| @@ -319,18 +343,9 @@ CONFIG_CONNECTOR=y | |||
| 319 | # CONFIG_BLK_DEV_SX8 is not set | 343 | # CONFIG_BLK_DEV_SX8 is not set |
| 320 | # CONFIG_BLK_DEV_RAM is not set | 344 | # CONFIG_BLK_DEV_RAM is not set |
| 321 | CONFIG_BLK_DEV_RAM_COUNT=16 | 345 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 322 | # CONFIG_LBD is not set | ||
| 323 | CONFIG_CDROM_PKTCDVD=y | 346 | CONFIG_CDROM_PKTCDVD=y |
| 324 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 347 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 325 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 348 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 326 | |||
| 327 | # | ||
| 328 | # IO Schedulers | ||
| 329 | # | ||
| 330 | CONFIG_IOSCHED_NOOP=y | ||
| 331 | CONFIG_IOSCHED_AS=y | ||
| 332 | CONFIG_IOSCHED_DEADLINE=y | ||
| 333 | CONFIG_IOSCHED_CFQ=y | ||
| 334 | CONFIG_ATA_OVER_ETH=y | 349 | CONFIG_ATA_OVER_ETH=y |
| 335 | 350 | ||
| 336 | # | 351 | # |
| @@ -382,7 +397,6 @@ CONFIG_NETDEVICES=y | |||
| 382 | # PHY device support | 397 | # PHY device support |
| 383 | # | 398 | # |
| 384 | CONFIG_PHYLIB=y | 399 | CONFIG_PHYLIB=y |
| 385 | CONFIG_PHYCONTROL=y | ||
| 386 | 400 | ||
| 387 | # | 401 | # |
| 388 | # MII PHY device drivers | 402 | # MII PHY device drivers |
| @@ -400,6 +414,7 @@ CONFIG_NET_ETHERNET=y | |||
| 400 | CONFIG_MII=y | 414 | CONFIG_MII=y |
| 401 | # CONFIG_HAPPYMEAL is not set | 415 | # CONFIG_HAPPYMEAL is not set |
| 402 | # CONFIG_SUNGEM is not set | 416 | # CONFIG_SUNGEM is not set |
| 417 | # CONFIG_CASSINI is not set | ||
| 403 | # CONFIG_NET_VENDOR_3COM is not set | 418 | # CONFIG_NET_VENDOR_3COM is not set |
| 404 | 419 | ||
| 405 | # | 420 | # |
| @@ -575,6 +590,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 575 | # TPM devices | 590 | # TPM devices |
| 576 | # | 591 | # |
| 577 | # CONFIG_TCG_TPM is not set | 592 | # CONFIG_TCG_TPM is not set |
| 593 | # CONFIG_TELCLOCK is not set | ||
| 578 | 594 | ||
| 579 | # | 595 | # |
| 580 | # I2C support | 596 | # I2C support |
| @@ -634,6 +650,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 634 | # CONFIG_USB is not set | 650 | # CONFIG_USB is not set |
| 635 | 651 | ||
| 636 | # | 652 | # |
| 653 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 654 | # | ||
| 655 | |||
| 656 | # | ||
| 637 | # USB Gadget Support | 657 | # USB Gadget Support |
| 638 | # | 658 | # |
| 639 | # CONFIG_USB_GADGET is not set | 659 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/decstation_defconfig b/arch/mips/configs/decstation_defconfig index 5bc885b72d14..1ac6c9b7ef96 100644 --- a/arch/mips/configs/decstation_defconfig +++ b/arch/mips/configs/decstation_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:25:48 2005 | 4 | # Fri Nov 11 13:29:30 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -58,6 +58,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 58 | CONFIG_KMOD=y | 58 | CONFIG_KMOD=y |
| 59 | 59 | ||
| 60 | # | 60 | # |
| 61 | # Block layer | ||
| 62 | # | ||
| 63 | # CONFIG_LBD is not set | ||
| 64 | |||
| 65 | # | ||
| 66 | # IO Schedulers | ||
| 67 | # | ||
| 68 | CONFIG_IOSCHED_NOOP=y | ||
| 69 | CONFIG_IOSCHED_AS=y | ||
| 70 | CONFIG_IOSCHED_DEADLINE=y | ||
| 71 | CONFIG_IOSCHED_CFQ=y | ||
| 72 | CONFIG_DEFAULT_AS=y | ||
| 73 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 74 | # CONFIG_DEFAULT_CFQ is not set | ||
| 75 | # CONFIG_DEFAULT_NOOP is not set | ||
| 76 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 77 | |||
| 78 | # | ||
| 61 | # Machine selection | 79 | # Machine selection |
| 62 | # | 80 | # |
| 63 | # CONFIG_MIPS_MTX1 is not set | 81 | # CONFIG_MIPS_MTX1 is not set |
| @@ -178,6 +196,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 178 | CONFIG_FLATMEM=y | 196 | CONFIG_FLATMEM=y |
| 179 | CONFIG_FLAT_NODE_MEM_MAP=y | 197 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 180 | # CONFIG_SPARSEMEM_STATIC is not set | 198 | # CONFIG_SPARSEMEM_STATIC is not set |
| 199 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 181 | CONFIG_PREEMPT_NONE=y | 200 | CONFIG_PREEMPT_NONE=y |
| 182 | # CONFIG_PREEMPT_VOLUNTARY is not set | 201 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 183 | # CONFIG_PREEMPT is not set | 202 | # CONFIG_PREEMPT is not set |
| @@ -262,6 +281,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 262 | # CONFIG_NET_DIVERT is not set | 281 | # CONFIG_NET_DIVERT is not set |
| 263 | # CONFIG_ECONET is not set | 282 | # CONFIG_ECONET is not set |
| 264 | # CONFIG_WAN_ROUTER is not set | 283 | # CONFIG_WAN_ROUTER is not set |
| 284 | |||
| 285 | # | ||
| 286 | # QoS and/or fair queueing | ||
| 287 | # | ||
| 265 | # CONFIG_NET_SCHED is not set | 288 | # CONFIG_NET_SCHED is not set |
| 266 | # CONFIG_NET_CLS_ROUTE is not set | 289 | # CONFIG_NET_CLS_ROUTE is not set |
| 267 | 290 | ||
| @@ -318,16 +341,7 @@ CONFIG_BLK_DEV_LOOP=m | |||
| 318 | # CONFIG_BLK_DEV_NBD is not set | 341 | # CONFIG_BLK_DEV_NBD is not set |
| 319 | # CONFIG_BLK_DEV_RAM is not set | 342 | # CONFIG_BLK_DEV_RAM is not set |
| 320 | CONFIG_BLK_DEV_RAM_COUNT=16 | 343 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 321 | # CONFIG_LBD is not set | ||
| 322 | # CONFIG_CDROM_PKTCDVD is not set | 344 | # CONFIG_CDROM_PKTCDVD is not set |
| 323 | |||
| 324 | # | ||
| 325 | # IO Schedulers | ||
| 326 | # | ||
| 327 | CONFIG_IOSCHED_NOOP=y | ||
| 328 | CONFIG_IOSCHED_AS=y | ||
| 329 | CONFIG_IOSCHED_DEADLINE=y | ||
| 330 | CONFIG_IOSCHED_CFQ=y | ||
| 331 | # CONFIG_ATA_OVER_ETH is not set | 345 | # CONFIG_ATA_OVER_ETH is not set |
| 332 | 346 | ||
| 333 | # | 347 | # |
| @@ -365,12 +379,13 @@ CONFIG_SCSI_CONSTANTS=y | |||
| 365 | # | 379 | # |
| 366 | CONFIG_SCSI_SPI_ATTRS=m | 380 | CONFIG_SCSI_SPI_ATTRS=m |
| 367 | # CONFIG_SCSI_FC_ATTRS is not set | 381 | # CONFIG_SCSI_FC_ATTRS is not set |
| 368 | # CONFIG_SCSI_ISCSI_ATTRS is not set | 382 | CONFIG_SCSI_ISCSI_ATTRS=m |
| 369 | CONFIG_SCSI_SAS_ATTRS=m | 383 | CONFIG_SCSI_SAS_ATTRS=m |
| 370 | 384 | ||
| 371 | # | 385 | # |
| 372 | # SCSI low-level drivers | 386 | # SCSI low-level drivers |
| 373 | # | 387 | # |
| 388 | CONFIG_ISCSI_TCP=m | ||
| 374 | CONFIG_SCSI_DECNCR=y | 389 | CONFIG_SCSI_DECNCR=y |
| 375 | # CONFIG_SCSI_DECSII is not set | 390 | # CONFIG_SCSI_DECSII is not set |
| 376 | # CONFIG_SCSI_SATA is not set | 391 | # CONFIG_SCSI_SATA is not set |
| @@ -407,7 +422,6 @@ CONFIG_NETDEVICES=y | |||
| 407 | # PHY device support | 422 | # PHY device support |
| 408 | # | 423 | # |
| 409 | CONFIG_PHYLIB=m | 424 | CONFIG_PHYLIB=m |
| 410 | CONFIG_PHYCONTROL=y | ||
| 411 | 425 | ||
| 412 | # | 426 | # |
| 413 | # MII PHY device drivers | 427 | # MII PHY device drivers |
| @@ -491,10 +505,7 @@ CONFIG_ZS=y | |||
| 491 | # | 505 | # |
| 492 | # Non-8250 serial port support | 506 | # Non-8250 serial port support |
| 493 | # | 507 | # |
| 494 | CONFIG_SERIAL_DZ=y | 508 | # CONFIG_SERIAL_DZ is not set |
| 495 | CONFIG_SERIAL_DZ_CONSOLE=y | ||
| 496 | CONFIG_SERIAL_CORE=y | ||
| 497 | CONFIG_SERIAL_CORE_CONSOLE=y | ||
| 498 | CONFIG_UNIX98_PTYS=y | 509 | CONFIG_UNIX98_PTYS=y |
| 499 | CONFIG_LEGACY_PTYS=y | 510 | CONFIG_LEGACY_PTYS=y |
| 500 | CONFIG_LEGACY_PTY_COUNT=256 | 511 | CONFIG_LEGACY_PTY_COUNT=256 |
| @@ -520,6 +531,7 @@ CONFIG_RTC=y | |||
| 520 | # | 531 | # |
| 521 | # TPM devices | 532 | # TPM devices |
| 522 | # | 533 | # |
| 534 | # CONFIG_TELCLOCK is not set | ||
| 523 | 535 | ||
| 524 | # | 536 | # |
| 525 | # I2C support | 537 | # I2C support |
| @@ -562,15 +574,14 @@ CONFIG_FB=y | |||
| 562 | CONFIG_FB_CFB_FILLRECT=y | 574 | CONFIG_FB_CFB_FILLRECT=y |
| 563 | CONFIG_FB_CFB_COPYAREA=y | 575 | CONFIG_FB_CFB_COPYAREA=y |
| 564 | CONFIG_FB_CFB_IMAGEBLIT=y | 576 | CONFIG_FB_CFB_IMAGEBLIT=y |
| 565 | CONFIG_FB_SOFT_CURSOR=y | ||
| 566 | # CONFIG_FB_MACMODES is not set | 577 | # CONFIG_FB_MACMODES is not set |
| 567 | # CONFIG_FB_MODE_HELPERS is not set | 578 | # CONFIG_FB_MODE_HELPERS is not set |
| 568 | # CONFIG_FB_TILEBLITTING is not set | 579 | # CONFIG_FB_TILEBLITTING is not set |
| 580 | # CONFIG_FB_S1D13XXX is not set | ||
| 569 | # CONFIG_FB_PMAG_AA is not set | 581 | # CONFIG_FB_PMAG_AA is not set |
| 570 | CONFIG_FB_PMAG_BA=y | 582 | CONFIG_FB_PMAG_BA=y |
| 571 | CONFIG_FB_PMAGB_B=y | 583 | CONFIG_FB_PMAGB_B=y |
| 572 | # CONFIG_FB_MAXINE is not set | 584 | # CONFIG_FB_MAXINE is not set |
| 573 | # CONFIG_FB_S1D13XXX is not set | ||
| 574 | # CONFIG_FB_VIRTUAL is not set | 585 | # CONFIG_FB_VIRTUAL is not set |
| 575 | 586 | ||
| 576 | # | 587 | # |
| @@ -595,6 +606,10 @@ CONFIG_LOGO_DEC_CLUT224=y | |||
| 595 | # CONFIG_USB_ARCH_HAS_OHCI is not set | 606 | # CONFIG_USB_ARCH_HAS_OHCI is not set |
| 596 | 607 | ||
| 597 | # | 608 | # |
| 609 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 610 | # | ||
| 611 | |||
| 612 | # | ||
| 598 | # USB Gadget Support | 613 | # USB Gadget Support |
| 599 | # | 614 | # |
| 600 | # CONFIG_USB_GADGET is not set | 615 | # CONFIG_USB_GADGET is not set |
| @@ -746,6 +761,8 @@ CONFIG_DETECT_SOFTLOCKUP=y | |||
| 746 | # CONFIG_DEBUG_KOBJECT is not set | 761 | # CONFIG_DEBUG_KOBJECT is not set |
| 747 | # CONFIG_DEBUG_INFO is not set | 762 | # CONFIG_DEBUG_INFO is not set |
| 748 | # CONFIG_DEBUG_FS is not set | 763 | # CONFIG_DEBUG_FS is not set |
| 764 | # CONFIG_DEBUG_VM is not set | ||
| 765 | # CONFIG_RCU_TORTURE_TEST is not set | ||
| 749 | CONFIG_CROSSCOMPILE=y | 766 | CONFIG_CROSSCOMPILE=y |
| 750 | CONFIG_CMDLINE="" | 767 | CONFIG_CMDLINE="" |
| 751 | # CONFIG_DEBUG_STACK_USAGE is not set | 768 | # CONFIG_DEBUG_STACK_USAGE is not set |
diff --git a/arch/mips/configs/e55_defconfig b/arch/mips/configs/e55_defconfig index c0d06ea5566c..a89d2f66cdfa 100644 --- a/arch/mips/configs/e55_defconfig +++ b/arch/mips/configs/e55_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:25:51 2005 | 4 | # Mon Nov 7 23:05:15 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -57,6 +57,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 57 | CONFIG_KMOD=y | 57 | CONFIG_KMOD=y |
| 58 | 58 | ||
| 59 | # | 59 | # |
| 60 | # Block layer | ||
| 61 | # | ||
| 62 | # CONFIG_LBD is not set | ||
| 63 | |||
| 64 | # | ||
| 65 | # IO Schedulers | ||
| 66 | # | ||
| 67 | CONFIG_IOSCHED_NOOP=y | ||
| 68 | CONFIG_IOSCHED_AS=y | ||
| 69 | CONFIG_IOSCHED_DEADLINE=y | ||
| 70 | CONFIG_IOSCHED_CFQ=y | ||
| 71 | CONFIG_DEFAULT_AS=y | ||
| 72 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 73 | # CONFIG_DEFAULT_CFQ is not set | ||
| 74 | # CONFIG_DEFAULT_NOOP is not set | ||
| 75 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 76 | |||
| 77 | # | ||
| 60 | # Machine selection | 78 | # Machine selection |
| 61 | # | 79 | # |
| 62 | # CONFIG_MIPS_MTX1 is not set | 80 | # CONFIG_MIPS_MTX1 is not set |
| @@ -180,6 +198,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 180 | CONFIG_FLATMEM=y | 198 | CONFIG_FLATMEM=y |
| 181 | CONFIG_FLAT_NODE_MEM_MAP=y | 199 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 182 | # CONFIG_SPARSEMEM_STATIC is not set | 200 | # CONFIG_SPARSEMEM_STATIC is not set |
| 201 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 183 | CONFIG_PREEMPT_NONE=y | 202 | CONFIG_PREEMPT_NONE=y |
| 184 | # CONFIG_PREEMPT_VOLUNTARY is not set | 203 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 185 | # CONFIG_PREEMPT is not set | 204 | # CONFIG_PREEMPT is not set |
| @@ -262,6 +281,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 262 | # CONFIG_NET_DIVERT is not set | 281 | # CONFIG_NET_DIVERT is not set |
| 263 | # CONFIG_ECONET is not set | 282 | # CONFIG_ECONET is not set |
| 264 | # CONFIG_WAN_ROUTER is not set | 283 | # CONFIG_WAN_ROUTER is not set |
| 284 | |||
| 285 | # | ||
| 286 | # QoS and/or fair queueing | ||
| 287 | # | ||
| 265 | # CONFIG_NET_SCHED is not set | 288 | # CONFIG_NET_SCHED is not set |
| 266 | # CONFIG_NET_CLS_ROUTE is not set | 289 | # CONFIG_NET_CLS_ROUTE is not set |
| 267 | 290 | ||
| @@ -317,16 +340,7 @@ CONFIG_CONNECTOR=m | |||
| 317 | # CONFIG_BLK_DEV_NBD is not set | 340 | # CONFIG_BLK_DEV_NBD is not set |
| 318 | # CONFIG_BLK_DEV_RAM is not set | 341 | # CONFIG_BLK_DEV_RAM is not set |
| 319 | CONFIG_BLK_DEV_RAM_COUNT=16 | 342 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 320 | # CONFIG_LBD is not set | ||
| 321 | # CONFIG_CDROM_PKTCDVD is not set | 343 | # CONFIG_CDROM_PKTCDVD is not set |
| 322 | |||
| 323 | # | ||
| 324 | # IO Schedulers | ||
| 325 | # | ||
| 326 | CONFIG_IOSCHED_NOOP=y | ||
| 327 | CONFIG_IOSCHED_AS=y | ||
| 328 | CONFIG_IOSCHED_DEADLINE=y | ||
| 329 | CONFIG_IOSCHED_CFQ=y | ||
| 330 | # CONFIG_ATA_OVER_ETH is not set | 344 | # CONFIG_ATA_OVER_ETH is not set |
| 331 | 345 | ||
| 332 | # | 346 | # |
| @@ -403,7 +417,6 @@ CONFIG_NETDEVICES=y | |||
| 403 | # PHY device support | 417 | # PHY device support |
| 404 | # | 418 | # |
| 405 | CONFIG_PHYLIB=m | 419 | CONFIG_PHYLIB=m |
| 406 | CONFIG_PHYCONTROL=y | ||
| 407 | 420 | ||
| 408 | # | 421 | # |
| 409 | # MII PHY device drivers | 422 | # MII PHY device drivers |
| @@ -427,7 +440,6 @@ CONFIG_NET_ETHERNET=y | |||
| 427 | # CONFIG_HP100 is not set | 440 | # CONFIG_HP100 is not set |
| 428 | # CONFIG_NET_ISA is not set | 441 | # CONFIG_NET_ISA is not set |
| 429 | # CONFIG_NET_PCI is not set | 442 | # CONFIG_NET_PCI is not set |
| 430 | # CONFIG_NET_POCKET is not set | ||
| 431 | 443 | ||
| 432 | # | 444 | # |
| 433 | # Ethernet (1000 Mbit) | 445 | # Ethernet (1000 Mbit) |
| @@ -552,6 +564,7 @@ CONFIG_WATCHDOG=y | |||
| 552 | # CONFIG_WDT is not set | 564 | # CONFIG_WDT is not set |
| 553 | # CONFIG_RTC is not set | 565 | # CONFIG_RTC is not set |
| 554 | # CONFIG_GEN_RTC is not set | 566 | # CONFIG_GEN_RTC is not set |
| 567 | # CONFIG_RTC_VR41XX is not set | ||
| 555 | # CONFIG_DTLK is not set | 568 | # CONFIG_DTLK is not set |
| 556 | # CONFIG_R3964 is not set | 569 | # CONFIG_R3964 is not set |
| 557 | 570 | ||
| @@ -564,6 +577,7 @@ CONFIG_GPIO_VR41XX=y | |||
| 564 | # | 577 | # |
| 565 | # TPM devices | 578 | # TPM devices |
| 566 | # | 579 | # |
| 580 | # CONFIG_TELCLOCK is not set | ||
| 567 | 581 | ||
| 568 | # | 582 | # |
| 569 | # I2C support | 583 | # I2C support |
| @@ -623,6 +637,10 @@ CONFIG_DUMMY_CONSOLE=y | |||
| 623 | # CONFIG_USB_ARCH_HAS_OHCI is not set | 637 | # CONFIG_USB_ARCH_HAS_OHCI is not set |
| 624 | 638 | ||
| 625 | # | 639 | # |
| 640 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 641 | # | ||
| 642 | |||
| 643 | # | ||
| 626 | # USB Gadget Support | 644 | # USB Gadget Support |
| 627 | # | 645 | # |
| 628 | # CONFIG_USB_GADGET is not set | 646 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/ev64120_defconfig b/arch/mips/configs/ev64120_defconfig index f1309d84d2fe..e6c3c27f41fe 100644 --- a/arch/mips/configs/ev64120_defconfig +++ b/arch/mips/configs/ev64120_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:25:54 2005 | 4 | # Wed Nov 9 11:05:12 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -57,6 +57,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 57 | # CONFIG_KMOD is not set | 57 | # CONFIG_KMOD is not set |
| 58 | 58 | ||
| 59 | # | 59 | # |
| 60 | # Block layer | ||
| 61 | # | ||
| 62 | # CONFIG_LBD is not set | ||
| 63 | |||
| 64 | # | ||
| 65 | # IO Schedulers | ||
| 66 | # | ||
| 67 | CONFIG_IOSCHED_NOOP=y | ||
| 68 | CONFIG_IOSCHED_AS=y | ||
| 69 | CONFIG_IOSCHED_DEADLINE=y | ||
| 70 | CONFIG_IOSCHED_CFQ=y | ||
| 71 | CONFIG_DEFAULT_AS=y | ||
| 72 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 73 | # CONFIG_DEFAULT_CFQ is not set | ||
| 74 | # CONFIG_DEFAULT_NOOP is not set | ||
| 75 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 76 | |||
| 77 | # | ||
| 60 | # Machine selection | 78 | # Machine selection |
| 61 | # | 79 | # |
| 62 | # CONFIG_MIPS_MTX1 is not set | 80 | # CONFIG_MIPS_MTX1 is not set |
| @@ -181,6 +199,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 181 | CONFIG_FLATMEM=y | 199 | CONFIG_FLATMEM=y |
| 182 | CONFIG_FLAT_NODE_MEM_MAP=y | 200 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 183 | # CONFIG_SPARSEMEM_STATIC is not set | 201 | # CONFIG_SPARSEMEM_STATIC is not set |
| 202 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 184 | CONFIG_PREEMPT_NONE=y | 203 | CONFIG_PREEMPT_NONE=y |
| 185 | # CONFIG_PREEMPT_VOLUNTARY is not set | 204 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 186 | # CONFIG_PREEMPT is not set | 205 | # CONFIG_PREEMPT is not set |
| @@ -267,6 +286,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 267 | # CONFIG_NET_DIVERT is not set | 286 | # CONFIG_NET_DIVERT is not set |
| 268 | # CONFIG_ECONET is not set | 287 | # CONFIG_ECONET is not set |
| 269 | # CONFIG_WAN_ROUTER is not set | 288 | # CONFIG_WAN_ROUTER is not set |
| 289 | |||
| 290 | # | ||
| 291 | # QoS and/or fair queueing | ||
| 292 | # | ||
| 270 | # CONFIG_NET_SCHED is not set | 293 | # CONFIG_NET_SCHED is not set |
| 271 | # CONFIG_NET_CLS_ROUTE is not set | 294 | # CONFIG_NET_CLS_ROUTE is not set |
| 272 | 295 | ||
| @@ -326,18 +349,9 @@ CONFIG_CONNECTOR=m | |||
| 326 | # CONFIG_BLK_DEV_SX8 is not set | 349 | # CONFIG_BLK_DEV_SX8 is not set |
| 327 | # CONFIG_BLK_DEV_RAM is not set | 350 | # CONFIG_BLK_DEV_RAM is not set |
| 328 | CONFIG_BLK_DEV_RAM_COUNT=16 | 351 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 329 | # CONFIG_LBD is not set | ||
| 330 | CONFIG_CDROM_PKTCDVD=m | 352 | CONFIG_CDROM_PKTCDVD=m |
| 331 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 353 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 332 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 354 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 333 | |||
| 334 | # | ||
| 335 | # IO Schedulers | ||
| 336 | # | ||
| 337 | CONFIG_IOSCHED_NOOP=y | ||
| 338 | CONFIG_IOSCHED_AS=y | ||
| 339 | CONFIG_IOSCHED_DEADLINE=y | ||
| 340 | CONFIG_IOSCHED_CFQ=y | ||
| 341 | CONFIG_ATA_OVER_ETH=m | 355 | CONFIG_ATA_OVER_ETH=m |
| 342 | 356 | ||
| 343 | # | 357 | # |
| @@ -389,7 +403,6 @@ CONFIG_NETDEVICES=y | |||
| 389 | # PHY device support | 403 | # PHY device support |
| 390 | # | 404 | # |
| 391 | CONFIG_PHYLIB=m | 405 | CONFIG_PHYLIB=m |
| 392 | CONFIG_PHYCONTROL=y | ||
| 393 | 406 | ||
| 394 | # | 407 | # |
| 395 | # MII PHY device drivers | 408 | # MII PHY device drivers |
| @@ -407,6 +420,7 @@ CONFIG_NET_ETHERNET=y | |||
| 407 | # CONFIG_MII is not set | 420 | # CONFIG_MII is not set |
| 408 | # CONFIG_HAPPYMEAL is not set | 421 | # CONFIG_HAPPYMEAL is not set |
| 409 | # CONFIG_SUNGEM is not set | 422 | # CONFIG_SUNGEM is not set |
| 423 | # CONFIG_CASSINI is not set | ||
| 410 | # CONFIG_NET_VENDOR_3COM is not set | 424 | # CONFIG_NET_VENDOR_3COM is not set |
| 411 | 425 | ||
| 412 | # | 426 | # |
| @@ -464,6 +478,7 @@ CONFIG_PPP_ASYNC=y | |||
| 464 | # CONFIG_PPP_SYNC_TTY is not set | 478 | # CONFIG_PPP_SYNC_TTY is not set |
| 465 | # CONFIG_PPP_DEFLATE is not set | 479 | # CONFIG_PPP_DEFLATE is not set |
| 466 | # CONFIG_PPP_BSDCOMP is not set | 480 | # CONFIG_PPP_BSDCOMP is not set |
| 481 | CONFIG_PPP_MPPE=m | ||
| 467 | # CONFIG_PPPOE is not set | 482 | # CONFIG_PPPOE is not set |
| 468 | # CONFIG_SLIP is not set | 483 | # CONFIG_SLIP is not set |
| 469 | # CONFIG_SHAPER is not set | 484 | # CONFIG_SHAPER is not set |
| @@ -569,6 +584,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 569 | # TPM devices | 584 | # TPM devices |
| 570 | # | 585 | # |
| 571 | # CONFIG_TCG_TPM is not set | 586 | # CONFIG_TCG_TPM is not set |
| 587 | # CONFIG_TELCLOCK is not set | ||
| 572 | 588 | ||
| 573 | # | 589 | # |
| 574 | # I2C support | 590 | # I2C support |
| @@ -628,6 +644,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 628 | # CONFIG_USB is not set | 644 | # CONFIG_USB is not set |
| 629 | 645 | ||
| 630 | # | 646 | # |
| 647 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 648 | # | ||
| 649 | |||
| 650 | # | ||
| 631 | # USB Gadget Support | 651 | # USB Gadget Support |
| 632 | # | 652 | # |
| 633 | # CONFIG_USB_GADGET is not set | 653 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/ev96100_defconfig b/arch/mips/configs/ev96100_defconfig index 8ac55b7acc01..52ca6bf5be66 100644 --- a/arch/mips/configs/ev96100_defconfig +++ b/arch/mips/configs/ev96100_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:25:57 2005 | 4 | # Mon Nov 7 23:05:22 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -57,6 +57,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 57 | # CONFIG_KMOD is not set | 57 | # CONFIG_KMOD is not set |
| 58 | 58 | ||
| 59 | # | 59 | # |
| 60 | # Block layer | ||
| 61 | # | ||
| 62 | # CONFIG_LBD is not set | ||
| 63 | |||
| 64 | # | ||
| 65 | # IO Schedulers | ||
| 66 | # | ||
| 67 | CONFIG_IOSCHED_NOOP=y | ||
| 68 | CONFIG_IOSCHED_AS=y | ||
| 69 | CONFIG_IOSCHED_DEADLINE=y | ||
| 70 | CONFIG_IOSCHED_CFQ=y | ||
| 71 | CONFIG_DEFAULT_AS=y | ||
| 72 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 73 | # CONFIG_DEFAULT_CFQ is not set | ||
| 74 | # CONFIG_DEFAULT_NOOP is not set | ||
| 75 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 76 | |||
| 77 | # | ||
| 60 | # Machine selection | 78 | # Machine selection |
| 61 | # | 79 | # |
| 62 | # CONFIG_MIPS_MTX1 is not set | 80 | # CONFIG_MIPS_MTX1 is not set |
| @@ -185,6 +203,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 185 | CONFIG_FLATMEM=y | 203 | CONFIG_FLATMEM=y |
| 186 | CONFIG_FLAT_NODE_MEM_MAP=y | 204 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 187 | # CONFIG_SPARSEMEM_STATIC is not set | 205 | # CONFIG_SPARSEMEM_STATIC is not set |
| 206 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 188 | CONFIG_PREEMPT_NONE=y | 207 | CONFIG_PREEMPT_NONE=y |
| 189 | # CONFIG_PREEMPT_VOLUNTARY is not set | 208 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 190 | # CONFIG_PREEMPT is not set | 209 | # CONFIG_PREEMPT is not set |
| @@ -269,6 +288,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 269 | # CONFIG_NET_DIVERT is not set | 288 | # CONFIG_NET_DIVERT is not set |
| 270 | # CONFIG_ECONET is not set | 289 | # CONFIG_ECONET is not set |
| 271 | # CONFIG_WAN_ROUTER is not set | 290 | # CONFIG_WAN_ROUTER is not set |
| 291 | |||
| 292 | # | ||
| 293 | # QoS and/or fair queueing | ||
| 294 | # | ||
| 272 | # CONFIG_NET_SCHED is not set | 295 | # CONFIG_NET_SCHED is not set |
| 273 | # CONFIG_NET_CLS_ROUTE is not set | 296 | # CONFIG_NET_CLS_ROUTE is not set |
| 274 | 297 | ||
| @@ -323,18 +346,9 @@ CONFIG_CONNECTOR=m | |||
| 323 | # CONFIG_BLK_DEV_NBD is not set | 346 | # CONFIG_BLK_DEV_NBD is not set |
| 324 | # CONFIG_BLK_DEV_RAM is not set | 347 | # CONFIG_BLK_DEV_RAM is not set |
| 325 | CONFIG_BLK_DEV_RAM_COUNT=16 | 348 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 326 | # CONFIG_LBD is not set | ||
| 327 | CONFIG_CDROM_PKTCDVD=m | 349 | CONFIG_CDROM_PKTCDVD=m |
| 328 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 350 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 329 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 351 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 330 | |||
| 331 | # | ||
| 332 | # IO Schedulers | ||
| 333 | # | ||
| 334 | CONFIG_IOSCHED_NOOP=y | ||
| 335 | CONFIG_IOSCHED_AS=y | ||
| 336 | CONFIG_IOSCHED_DEADLINE=y | ||
| 337 | CONFIG_IOSCHED_CFQ=y | ||
| 338 | CONFIG_ATA_OVER_ETH=m | 352 | CONFIG_ATA_OVER_ETH=m |
| 339 | 353 | ||
| 340 | # | 354 | # |
| @@ -379,7 +393,6 @@ CONFIG_NETDEVICES=y | |||
| 379 | # PHY device support | 393 | # PHY device support |
| 380 | # | 394 | # |
| 381 | CONFIG_PHYLIB=m | 395 | CONFIG_PHYLIB=m |
| 382 | CONFIG_PHYCONTROL=y | ||
| 383 | 396 | ||
| 384 | # | 397 | # |
| 385 | # MII PHY device drivers | 398 | # MII PHY device drivers |
| @@ -518,6 +531,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 518 | # | 531 | # |
| 519 | # TPM devices | 532 | # TPM devices |
| 520 | # | 533 | # |
| 534 | # CONFIG_TELCLOCK is not set | ||
| 521 | 535 | ||
| 522 | # | 536 | # |
| 523 | # I2C support | 537 | # I2C support |
| @@ -576,6 +590,10 @@ CONFIG_DUMMY_CONSOLE=y | |||
| 576 | # CONFIG_USB_ARCH_HAS_OHCI is not set | 590 | # CONFIG_USB_ARCH_HAS_OHCI is not set |
| 577 | 591 | ||
| 578 | # | 592 | # |
| 593 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 594 | # | ||
| 595 | |||
| 596 | # | ||
| 579 | # USB Gadget Support | 597 | # USB Gadget Support |
| 580 | # | 598 | # |
| 581 | # CONFIG_USB_GADGET is not set | 599 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/ip22_defconfig b/arch/mips/configs/ip22_defconfig index 3ae3838f283c..79e3fe7e2d54 100644 --- a/arch/mips/configs/ip22_defconfig +++ b/arch/mips/configs/ip22_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:26:01 2005 | 4 | # Thu Nov 10 13:38:41 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -58,6 +58,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 58 | CONFIG_KMOD=y | 58 | CONFIG_KMOD=y |
| 59 | 59 | ||
| 60 | # | 60 | # |
| 61 | # Block layer | ||
| 62 | # | ||
| 63 | # CONFIG_LBD is not set | ||
| 64 | |||
| 65 | # | ||
| 66 | # IO Schedulers | ||
| 67 | # | ||
| 68 | CONFIG_IOSCHED_NOOP=y | ||
| 69 | CONFIG_IOSCHED_AS=y | ||
| 70 | CONFIG_IOSCHED_DEADLINE=y | ||
| 71 | CONFIG_IOSCHED_CFQ=y | ||
| 72 | CONFIG_DEFAULT_AS=y | ||
| 73 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 74 | # CONFIG_DEFAULT_CFQ is not set | ||
| 75 | # CONFIG_DEFAULT_NOOP is not set | ||
| 76 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 77 | |||
| 78 | # | ||
| 61 | # Machine selection | 79 | # Machine selection |
| 62 | # | 80 | # |
| 63 | # CONFIG_MIPS_MTX1 is not set | 81 | # CONFIG_MIPS_MTX1 is not set |
| @@ -187,6 +205,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 187 | CONFIG_FLATMEM=y | 205 | CONFIG_FLATMEM=y |
| 188 | CONFIG_FLAT_NODE_MEM_MAP=y | 206 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 189 | # CONFIG_SPARSEMEM_STATIC is not set | 207 | # CONFIG_SPARSEMEM_STATIC is not set |
| 208 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 190 | # CONFIG_PREEMPT_NONE is not set | 209 | # CONFIG_PREEMPT_NONE is not set |
| 191 | CONFIG_PREEMPT_VOLUNTARY=y | 210 | CONFIG_PREEMPT_VOLUNTARY=y |
| 192 | # CONFIG_PREEMPT is not set | 211 | # CONFIG_PREEMPT is not set |
| @@ -292,6 +311,10 @@ CONFIG_INET6_TUNNEL=m | |||
| 292 | CONFIG_IPV6_TUNNEL=m | 311 | CONFIG_IPV6_TUNNEL=m |
| 293 | CONFIG_NETFILTER=y | 312 | CONFIG_NETFILTER=y |
| 294 | # CONFIG_NETFILTER_DEBUG is not set | 313 | # CONFIG_NETFILTER_DEBUG is not set |
| 314 | |||
| 315 | # | ||
| 316 | # Core Netfilter Configuration | ||
| 317 | # | ||
| 295 | CONFIG_NETFILTER_NETLINK=m | 318 | CONFIG_NETFILTER_NETLINK=m |
| 296 | CONFIG_NETFILTER_NETLINK_QUEUE=m | 319 | CONFIG_NETFILTER_NETLINK_QUEUE=m |
| 297 | CONFIG_NETFILTER_NETLINK_LOG=m | 320 | CONFIG_NETFILTER_NETLINK_LOG=m |
| @@ -345,6 +368,7 @@ CONFIG_IP_NF_TARGET_REJECT=m | |||
| 345 | CONFIG_IP_NF_TARGET_LOG=m | 368 | CONFIG_IP_NF_TARGET_LOG=m |
| 346 | CONFIG_IP_NF_TARGET_ULOG=m | 369 | CONFIG_IP_NF_TARGET_ULOG=m |
| 347 | CONFIG_IP_NF_TARGET_TCPMSS=m | 370 | CONFIG_IP_NF_TARGET_TCPMSS=m |
| 371 | CONFIG_IP_NF_TARGET_NFQUEUE=m | ||
| 348 | CONFIG_IP_NF_NAT=m | 372 | CONFIG_IP_NF_NAT=m |
| 349 | CONFIG_IP_NF_NAT_NEEDED=y | 373 | CONFIG_IP_NF_NAT_NEEDED=y |
| 350 | CONFIG_IP_NF_TARGET_MASQUERADE=m | 374 | CONFIG_IP_NF_TARGET_MASQUERADE=m |
| @@ -393,6 +417,7 @@ CONFIG_IP6_NF_MATCH_EUI64=m | |||
| 393 | CONFIG_IP6_NF_FILTER=m | 417 | CONFIG_IP6_NF_FILTER=m |
| 394 | CONFIG_IP6_NF_TARGET_LOG=m | 418 | CONFIG_IP6_NF_TARGET_LOG=m |
| 395 | CONFIG_IP6_NF_TARGET_REJECT=m | 419 | CONFIG_IP6_NF_TARGET_REJECT=m |
| 420 | CONFIG_IP6_NF_TARGET_NFQUEUE=m | ||
| 396 | CONFIG_IP6_NF_MANGLE=m | 421 | CONFIG_IP6_NF_MANGLE=m |
| 397 | CONFIG_IP6_NF_TARGET_MARK=m | 422 | CONFIG_IP6_NF_TARGET_MARK=m |
| 398 | CONFIG_IP6_NF_TARGET_HL=m | 423 | CONFIG_IP6_NF_TARGET_HL=m |
| @@ -424,10 +449,18 @@ CONFIG_SCTP_HMAC_MD5=y | |||
| 424 | CONFIG_NET_DIVERT=y | 449 | CONFIG_NET_DIVERT=y |
| 425 | # CONFIG_ECONET is not set | 450 | # CONFIG_ECONET is not set |
| 426 | # CONFIG_WAN_ROUTER is not set | 451 | # CONFIG_WAN_ROUTER is not set |
| 452 | |||
| 453 | # | ||
| 454 | # QoS and/or fair queueing | ||
| 455 | # | ||
| 427 | CONFIG_NET_SCHED=y | 456 | CONFIG_NET_SCHED=y |
| 428 | # CONFIG_NET_SCH_CLK_JIFFIES is not set | 457 | # CONFIG_NET_SCH_CLK_JIFFIES is not set |
| 429 | CONFIG_NET_SCH_CLK_GETTIMEOFDAY=y | 458 | CONFIG_NET_SCH_CLK_GETTIMEOFDAY=y |
| 430 | # CONFIG_NET_SCH_CLK_CPU is not set | 459 | # CONFIG_NET_SCH_CLK_CPU is not set |
| 460 | |||
| 461 | # | ||
| 462 | # Queueing/Scheduling | ||
| 463 | # | ||
| 431 | CONFIG_NET_SCH_CBQ=m | 464 | CONFIG_NET_SCH_CBQ=m |
| 432 | CONFIG_NET_SCH_HTB=m | 465 | CONFIG_NET_SCH_HTB=m |
| 433 | CONFIG_NET_SCH_HFSC=m | 466 | CONFIG_NET_SCH_HFSC=m |
| @@ -440,8 +473,10 @@ CONFIG_NET_SCH_GRED=m | |||
| 440 | CONFIG_NET_SCH_DSMARK=m | 473 | CONFIG_NET_SCH_DSMARK=m |
| 441 | CONFIG_NET_SCH_NETEM=m | 474 | CONFIG_NET_SCH_NETEM=m |
| 442 | CONFIG_NET_SCH_INGRESS=m | 475 | CONFIG_NET_SCH_INGRESS=m |
| 443 | CONFIG_NET_QOS=y | 476 | |
| 444 | CONFIG_NET_ESTIMATOR=y | 477 | # |
| 478 | # Classification | ||
| 479 | # | ||
| 445 | CONFIG_NET_CLS=y | 480 | CONFIG_NET_CLS=y |
| 446 | CONFIG_NET_CLS_BASIC=m | 481 | CONFIG_NET_CLS_BASIC=m |
| 447 | CONFIG_NET_CLS_TCINDEX=m | 482 | CONFIG_NET_CLS_TCINDEX=m |
| @@ -450,13 +485,14 @@ CONFIG_NET_CLS_ROUTE=y | |||
| 450 | CONFIG_NET_CLS_FW=m | 485 | CONFIG_NET_CLS_FW=m |
| 451 | CONFIG_NET_CLS_U32=m | 486 | CONFIG_NET_CLS_U32=m |
| 452 | # CONFIG_CLS_U32_PERF is not set | 487 | # CONFIG_CLS_U32_PERF is not set |
| 453 | # CONFIG_NET_CLS_IND is not set | ||
| 454 | # CONFIG_CLS_U32_MARK is not set | 488 | # CONFIG_CLS_U32_MARK is not set |
| 455 | CONFIG_NET_CLS_RSVP=m | 489 | CONFIG_NET_CLS_RSVP=m |
| 456 | CONFIG_NET_CLS_RSVP6=m | 490 | CONFIG_NET_CLS_RSVP6=m |
| 457 | # CONFIG_NET_EMATCH is not set | 491 | # CONFIG_NET_EMATCH is not set |
| 458 | # CONFIG_NET_CLS_ACT is not set | 492 | # CONFIG_NET_CLS_ACT is not set |
| 459 | CONFIG_NET_CLS_POLICE=y | 493 | CONFIG_NET_CLS_POLICE=y |
| 494 | # CONFIG_NET_CLS_IND is not set | ||
| 495 | CONFIG_NET_ESTIMATOR=y | ||
| 460 | 496 | ||
| 461 | # | 497 | # |
| 462 | # Network testing | 498 | # Network testing |
| @@ -509,18 +545,9 @@ CONFIG_CONNECTOR=m | |||
| 509 | # CONFIG_BLK_DEV_NBD is not set | 545 | # CONFIG_BLK_DEV_NBD is not set |
| 510 | # CONFIG_BLK_DEV_RAM is not set | 546 | # CONFIG_BLK_DEV_RAM is not set |
| 511 | CONFIG_BLK_DEV_RAM_COUNT=16 | 547 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 512 | # CONFIG_LBD is not set | ||
| 513 | CONFIG_CDROM_PKTCDVD=m | 548 | CONFIG_CDROM_PKTCDVD=m |
| 514 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 549 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 515 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 550 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 516 | |||
| 517 | # | ||
| 518 | # IO Schedulers | ||
| 519 | # | ||
| 520 | CONFIG_IOSCHED_NOOP=y | ||
| 521 | CONFIG_IOSCHED_AS=y | ||
| 522 | CONFIG_IOSCHED_DEADLINE=y | ||
| 523 | CONFIG_IOSCHED_CFQ=y | ||
| 524 | CONFIG_ATA_OVER_ETH=m | 551 | CONFIG_ATA_OVER_ETH=m |
| 525 | 552 | ||
| 526 | # | 553 | # |
| @@ -564,6 +591,7 @@ CONFIG_SCSI_SAS_ATTRS=m | |||
| 564 | # | 591 | # |
| 565 | # SCSI low-level drivers | 592 | # SCSI low-level drivers |
| 566 | # | 593 | # |
| 594 | CONFIG_ISCSI_TCP=m | ||
| 567 | CONFIG_SGIWD93_SCSI=y | 595 | CONFIG_SGIWD93_SCSI=y |
| 568 | # CONFIG_SCSI_SATA is not set | 596 | # CONFIG_SCSI_SATA is not set |
| 569 | # CONFIG_SCSI_DEBUG is not set | 597 | # CONFIG_SCSI_DEBUG is not set |
| @@ -599,7 +627,6 @@ CONFIG_TUN=m | |||
| 599 | # PHY device support | 627 | # PHY device support |
| 600 | # | 628 | # |
| 601 | CONFIG_PHYLIB=m | 629 | CONFIG_PHYLIB=m |
| 602 | CONFIG_PHYCONTROL=y | ||
| 603 | 630 | ||
| 604 | # | 631 | # |
| 605 | # MII PHY device drivers | 632 | # MII PHY device drivers |
| @@ -752,6 +779,7 @@ CONFIG_MAX_RAW_DEVS=256 | |||
| 752 | # | 779 | # |
| 753 | # TPM devices | 780 | # TPM devices |
| 754 | # | 781 | # |
| 782 | # CONFIG_TELCLOCK is not set | ||
| 755 | 783 | ||
| 756 | # | 784 | # |
| 757 | # I2C support | 785 | # I2C support |
| @@ -821,6 +849,10 @@ CONFIG_LOGO_SGI_CLUT224=y | |||
| 821 | # CONFIG_USB_ARCH_HAS_OHCI is not set | 849 | # CONFIG_USB_ARCH_HAS_OHCI is not set |
| 822 | 850 | ||
| 823 | # | 851 | # |
| 852 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 853 | # | ||
| 854 | |||
| 855 | # | ||
| 824 | # USB Gadget Support | 856 | # USB Gadget Support |
| 825 | # | 857 | # |
| 826 | # CONFIG_USB_GADGET is not set | 858 | # CONFIG_USB_GADGET is not set |
| @@ -856,7 +888,7 @@ CONFIG_FS_MBCACHE=y | |||
| 856 | CONFIG_FS_POSIX_ACL=y | 888 | CONFIG_FS_POSIX_ACL=y |
| 857 | CONFIG_XFS_FS=m | 889 | CONFIG_XFS_FS=m |
| 858 | CONFIG_XFS_EXPORT=y | 890 | CONFIG_XFS_EXPORT=y |
| 859 | CONFIG_XFS_QUOTA=m | 891 | CONFIG_XFS_QUOTA=y |
| 860 | CONFIG_XFS_SECURITY=y | 892 | CONFIG_XFS_SECURITY=y |
| 861 | # CONFIG_XFS_POSIX_ACL is not set | 893 | # CONFIG_XFS_POSIX_ACL is not set |
| 862 | # CONFIG_XFS_RT is not set | 894 | # CONFIG_XFS_RT is not set |
diff --git a/arch/mips/configs/ip27_defconfig b/arch/mips/configs/ip27_defconfig index d962f61d5b98..72998ec35b0b 100644 --- a/arch/mips/configs/ip27_defconfig +++ b/arch/mips/configs/ip27_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.15-rc1 |
| 4 | # Thu Oct 20 22:26:04 2005 | 4 | # Sun Nov 13 23:56:52 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -60,6 +60,23 @@ CONFIG_KMOD=y | |||
| 60 | CONFIG_STOP_MACHINE=y | 60 | CONFIG_STOP_MACHINE=y |
| 61 | 61 | ||
| 62 | # | 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" | ||
| 78 | |||
| 79 | # | ||
| 63 | # Machine selection | 80 | # Machine selection |
| 64 | # | 81 | # |
| 65 | # CONFIG_MIPS_MTX1 is not set | 82 | # CONFIG_MIPS_MTX1 is not set |
| @@ -186,6 +203,7 @@ CONFIG_DISCONTIGMEM=y | |||
| 186 | CONFIG_FLAT_NODE_MEM_MAP=y | 203 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 187 | CONFIG_NEED_MULTIPLE_NODES=y | 204 | CONFIG_NEED_MULTIPLE_NODES=y |
| 188 | # CONFIG_SPARSEMEM_STATIC is not set | 205 | # CONFIG_SPARSEMEM_STATIC is not set |
| 206 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 189 | CONFIG_SMP=y | 207 | CONFIG_SMP=y |
| 190 | CONFIG_NR_CPUS=64 | 208 | CONFIG_NR_CPUS=64 |
| 191 | CONFIG_PREEMPT_NONE=y | 209 | CONFIG_PREEMPT_NONE=y |
| @@ -284,10 +302,18 @@ CONFIG_TCP_CONG_BIC=y | |||
| 284 | # CONFIG_NET_DIVERT is not set | 302 | # CONFIG_NET_DIVERT is not set |
| 285 | # CONFIG_ECONET is not set | 303 | # CONFIG_ECONET is not set |
| 286 | # CONFIG_WAN_ROUTER is not set | 304 | # CONFIG_WAN_ROUTER is not set |
| 305 | |||
| 306 | # | ||
| 307 | # QoS and/or fair queueing | ||
| 308 | # | ||
| 287 | CONFIG_NET_SCHED=y | 309 | CONFIG_NET_SCHED=y |
| 288 | # CONFIG_NET_SCH_CLK_JIFFIES is not set | 310 | # CONFIG_NET_SCH_CLK_JIFFIES is not set |
| 289 | CONFIG_NET_SCH_CLK_GETTIMEOFDAY=y | 311 | CONFIG_NET_SCH_CLK_GETTIMEOFDAY=y |
| 290 | # CONFIG_NET_SCH_CLK_CPU is not set | 312 | # CONFIG_NET_SCH_CLK_CPU is not set |
| 313 | |||
| 314 | # | ||
| 315 | # Queueing/Scheduling | ||
| 316 | # | ||
| 291 | CONFIG_NET_SCH_CBQ=m | 317 | CONFIG_NET_SCH_CBQ=m |
| 292 | CONFIG_NET_SCH_HTB=m | 318 | CONFIG_NET_SCH_HTB=m |
| 293 | CONFIG_NET_SCH_HFSC=m | 319 | CONFIG_NET_SCH_HFSC=m |
| @@ -300,8 +326,10 @@ CONFIG_NET_SCH_GRED=m | |||
| 300 | CONFIG_NET_SCH_DSMARK=m | 326 | CONFIG_NET_SCH_DSMARK=m |
| 301 | CONFIG_NET_SCH_NETEM=m | 327 | CONFIG_NET_SCH_NETEM=m |
| 302 | CONFIG_NET_SCH_INGRESS=m | 328 | CONFIG_NET_SCH_INGRESS=m |
| 303 | CONFIG_NET_QOS=y | 329 | |
| 304 | CONFIG_NET_ESTIMATOR=y | 330 | # |
| 331 | # Classification | ||
| 332 | # | ||
| 305 | CONFIG_NET_CLS=y | 333 | CONFIG_NET_CLS=y |
| 306 | CONFIG_NET_CLS_BASIC=m | 334 | CONFIG_NET_CLS_BASIC=m |
| 307 | CONFIG_NET_CLS_TCINDEX=m | 335 | CONFIG_NET_CLS_TCINDEX=m |
| @@ -310,12 +338,13 @@ CONFIG_NET_CLS_ROUTE=y | |||
| 310 | CONFIG_NET_CLS_FW=m | 338 | CONFIG_NET_CLS_FW=m |
| 311 | CONFIG_NET_CLS_U32=m | 339 | CONFIG_NET_CLS_U32=m |
| 312 | # CONFIG_CLS_U32_PERF is not set | 340 | # CONFIG_CLS_U32_PERF is not set |
| 313 | # CONFIG_NET_CLS_IND is not set | ||
| 314 | CONFIG_NET_CLS_RSVP=m | 341 | CONFIG_NET_CLS_RSVP=m |
| 315 | CONFIG_NET_CLS_RSVP6=m | 342 | CONFIG_NET_CLS_RSVP6=m |
| 316 | # CONFIG_NET_EMATCH is not set | 343 | # CONFIG_NET_EMATCH is not set |
| 317 | # CONFIG_NET_CLS_ACT is not set | 344 | # CONFIG_NET_CLS_ACT is not set |
| 318 | CONFIG_NET_CLS_POLICE=y | 345 | CONFIG_NET_CLS_POLICE=y |
| 346 | # CONFIG_NET_CLS_IND is not set | ||
| 347 | CONFIG_NET_ESTIMATOR=y | ||
| 319 | 348 | ||
| 320 | # | 349 | # |
| 321 | # Network testing | 350 | # Network testing |
| @@ -377,14 +406,6 @@ CONFIG_BLK_DEV_RAM_COUNT=16 | |||
| 377 | CONFIG_CDROM_PKTCDVD=m | 406 | CONFIG_CDROM_PKTCDVD=m |
| 378 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 407 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 379 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 408 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 380 | |||
| 381 | # | ||
| 382 | # IO Schedulers | ||
| 383 | # | ||
| 384 | CONFIG_IOSCHED_NOOP=y | ||
| 385 | CONFIG_IOSCHED_AS=y | ||
| 386 | CONFIG_IOSCHED_DEADLINE=y | ||
| 387 | CONFIG_IOSCHED_CFQ=y | ||
| 388 | CONFIG_ATA_OVER_ETH=m | 409 | CONFIG_ATA_OVER_ETH=m |
| 389 | 410 | ||
| 390 | # | 411 | # |
| @@ -428,6 +449,7 @@ CONFIG_SCSI_SAS_ATTRS=m | |||
| 428 | # | 449 | # |
| 429 | # SCSI low-level drivers | 450 | # SCSI low-level drivers |
| 430 | # | 451 | # |
| 452 | CONFIG_ISCSI_TCP=m | ||
| 431 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set | 453 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set |
| 432 | # CONFIG_SCSI_3W_9XXX is not set | 454 | # CONFIG_SCSI_3W_9XXX is not set |
| 433 | # CONFIG_SCSI_ACARD is not set | 455 | # CONFIG_SCSI_ACARD is not set |
| @@ -437,6 +459,7 @@ CONFIG_SCSI_SAS_ATTRS=m | |||
| 437 | # CONFIG_SCSI_AIC79XX is not set | 459 | # CONFIG_SCSI_AIC79XX is not set |
| 438 | # CONFIG_MEGARAID_NEWGEN is not set | 460 | # CONFIG_MEGARAID_NEWGEN is not set |
| 439 | # CONFIG_MEGARAID_LEGACY is not set | 461 | # CONFIG_MEGARAID_LEGACY is not set |
| 462 | # CONFIG_MEGARAID_SAS is not set | ||
| 440 | # CONFIG_SCSI_SATA is not set | 463 | # CONFIG_SCSI_SATA is not set |
| 441 | # CONFIG_SCSI_DMX3191D is not set | 464 | # CONFIG_SCSI_DMX3191D is not set |
| 442 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | 465 | # CONFIG_SCSI_FUTURE_DOMAIN is not set |
| @@ -447,7 +470,6 @@ CONFIG_SCSI_SAS_ATTRS=m | |||
| 447 | # CONFIG_SCSI_IPR is not set | 470 | # CONFIG_SCSI_IPR is not set |
| 448 | # CONFIG_SCSI_QLOGIC_FC is not set | 471 | # CONFIG_SCSI_QLOGIC_FC is not set |
| 449 | CONFIG_SCSI_QLOGIC_1280=y | 472 | CONFIG_SCSI_QLOGIC_1280=y |
| 450 | CONFIG_SCSI_QLOGIC_1280_1040=y | ||
| 451 | CONFIG_SCSI_QLA2XXX=y | 473 | CONFIG_SCSI_QLA2XXX=y |
| 452 | # CONFIG_SCSI_QLA21XX is not set | 474 | # CONFIG_SCSI_QLA21XX is not set |
| 453 | # CONFIG_SCSI_QLA22XX is not set | 475 | # CONFIG_SCSI_QLA22XX is not set |
| @@ -487,6 +509,7 @@ CONFIG_DM_MULTIPATH_EMC=m | |||
| 487 | # CONFIG_FUSION is not set | 509 | # CONFIG_FUSION is not set |
| 488 | # CONFIG_FUSION_SPI is not set | 510 | # CONFIG_FUSION_SPI is not set |
| 489 | # CONFIG_FUSION_FC is not set | 511 | # CONFIG_FUSION_FC is not set |
| 512 | # CONFIG_FUSION_SAS is not set | ||
| 490 | 513 | ||
| 491 | # | 514 | # |
| 492 | # IEEE 1394 (FireWire) support | 515 | # IEEE 1394 (FireWire) support |
| @@ -516,7 +539,6 @@ CONFIG_NETDEVICES=y | |||
| 516 | # PHY device support | 539 | # PHY device support |
| 517 | # | 540 | # |
| 518 | CONFIG_PHYLIB=m | 541 | CONFIG_PHYLIB=m |
| 519 | CONFIG_PHYCONTROL=y | ||
| 520 | 542 | ||
| 521 | # | 543 | # |
| 522 | # MII PHY device drivers | 544 | # MII PHY device drivers |
| @@ -532,8 +554,12 @@ CONFIG_CICADA_PHY=m | |||
| 532 | # | 554 | # |
| 533 | CONFIG_NET_ETHERNET=y | 555 | CONFIG_NET_ETHERNET=y |
| 534 | CONFIG_MII=y | 556 | CONFIG_MII=y |
| 557 | CONFIG_SGI_IOC3_ETH=y | ||
| 558 | CONFIG_SGI_IOC3_ETH_HW_RX_CSUM=y | ||
| 559 | CONFIG_SGI_IOC3_ETH_HW_TX_CSUM=y | ||
| 535 | # CONFIG_HAPPYMEAL is not set | 560 | # CONFIG_HAPPYMEAL is not set |
| 536 | # CONFIG_SUNGEM is not set | 561 | # CONFIG_SUNGEM is not set |
| 562 | # CONFIG_CASSINI is not set | ||
| 537 | # CONFIG_NET_VENDOR_3COM is not set | 563 | # CONFIG_NET_VENDOR_3COM is not set |
| 538 | 564 | ||
| 539 | # | 565 | # |
| @@ -672,6 +698,7 @@ CONFIG_SGI_IP27_RTC=y | |||
| 672 | # TPM devices | 698 | # TPM devices |
| 673 | # | 699 | # |
| 674 | # CONFIG_TCG_TPM is not set | 700 | # CONFIG_TCG_TPM is not set |
| 701 | # CONFIG_TELCLOCK is not set | ||
| 675 | 702 | ||
| 676 | # | 703 | # |
| 677 | # I2C support | 704 | # I2C support |
| @@ -725,6 +752,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 725 | # CONFIG_USB is not set | 752 | # CONFIG_USB is not set |
| 726 | 753 | ||
| 727 | # | 754 | # |
| 755 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 756 | # | ||
| 757 | |||
| 758 | # | ||
| 728 | # USB Gadget Support | 759 | # USB Gadget Support |
| 729 | # | 760 | # |
| 730 | # CONFIG_USB_GADGET is not set | 761 | # CONFIG_USB_GADGET is not set |
| @@ -762,7 +793,7 @@ CONFIG_FS_MBCACHE=y | |||
| 762 | # CONFIG_JFS_FS is not set | 793 | # CONFIG_JFS_FS is not set |
| 763 | CONFIG_FS_POSIX_ACL=y | 794 | CONFIG_FS_POSIX_ACL=y |
| 764 | CONFIG_XFS_FS=m | 795 | CONFIG_XFS_FS=m |
| 765 | CONFIG_XFS_QUOTA=m | 796 | CONFIG_XFS_QUOTA=y |
| 766 | CONFIG_XFS_SECURITY=y | 797 | CONFIG_XFS_SECURITY=y |
| 767 | CONFIG_XFS_POSIX_ACL=y | 798 | CONFIG_XFS_POSIX_ACL=y |
| 768 | # CONFIG_XFS_RT is not set | 799 | # CONFIG_XFS_RT is not set |
diff --git a/arch/mips/configs/ip32_defconfig b/arch/mips/configs/ip32_defconfig index bf8fb95b21dc..955e30f1b1ad 100644 --- a/arch/mips/configs/ip32_defconfig +++ b/arch/mips/configs/ip32_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:26:07 2005 | 4 | # Mon Nov 7 23:05:32 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -52,6 +52,23 @@ CONFIG_BASE_SMALL=0 | |||
| 52 | # CONFIG_MODULES is not set | 52 | # CONFIG_MODULES is not set |
| 53 | 53 | ||
| 54 | # | 54 | # |
| 55 | # Block layer | ||
| 56 | # | ||
| 57 | |||
| 58 | # | ||
| 59 | # IO Schedulers | ||
| 60 | # | ||
| 61 | CONFIG_IOSCHED_NOOP=y | ||
| 62 | CONFIG_IOSCHED_AS=y | ||
| 63 | CONFIG_IOSCHED_DEADLINE=y | ||
| 64 | CONFIG_IOSCHED_CFQ=y | ||
| 65 | CONFIG_DEFAULT_AS=y | ||
| 66 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 67 | # CONFIG_DEFAULT_CFQ is not set | ||
| 68 | # CONFIG_DEFAULT_NOOP is not set | ||
| 69 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 70 | |||
| 71 | # | ||
| 55 | # Machine selection | 72 | # Machine selection |
| 56 | # | 73 | # |
| 57 | # CONFIG_MIPS_MTX1 is not set | 74 | # CONFIG_MIPS_MTX1 is not set |
| @@ -179,6 +196,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 179 | CONFIG_FLATMEM=y | 196 | CONFIG_FLATMEM=y |
| 180 | CONFIG_FLAT_NODE_MEM_MAP=y | 197 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 181 | # CONFIG_SPARSEMEM_STATIC is not set | 198 | # CONFIG_SPARSEMEM_STATIC is not set |
| 199 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 182 | # CONFIG_PREEMPT_NONE is not set | 200 | # CONFIG_PREEMPT_NONE is not set |
| 183 | CONFIG_PREEMPT_VOLUNTARY=y | 201 | CONFIG_PREEMPT_VOLUNTARY=y |
| 184 | # CONFIG_PREEMPT is not set | 202 | # CONFIG_PREEMPT is not set |
| @@ -271,6 +289,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 271 | # CONFIG_NET_DIVERT is not set | 289 | # CONFIG_NET_DIVERT is not set |
| 272 | # CONFIG_ECONET is not set | 290 | # CONFIG_ECONET is not set |
| 273 | # CONFIG_WAN_ROUTER is not set | 291 | # CONFIG_WAN_ROUTER is not set |
| 292 | |||
| 293 | # | ||
| 294 | # QoS and/or fair queueing | ||
| 295 | # | ||
| 274 | # CONFIG_NET_SCHED is not set | 296 | # CONFIG_NET_SCHED is not set |
| 275 | # CONFIG_NET_CLS_ROUTE is not set | 297 | # CONFIG_NET_CLS_ROUTE is not set |
| 276 | 298 | ||
| @@ -302,6 +324,7 @@ CONFIG_FW_LOADER=y | |||
| 302 | # Connector - unified userspace <-> kernelspace linker | 324 | # Connector - unified userspace <-> kernelspace linker |
| 303 | # | 325 | # |
| 304 | CONFIG_CONNECTOR=y | 326 | CONFIG_CONNECTOR=y |
| 327 | CONFIG_PROC_EVENTS=y | ||
| 305 | 328 | ||
| 306 | # | 329 | # |
| 307 | # Memory Technology Devices (MTD) | 330 | # Memory Technology Devices (MTD) |
| @@ -334,14 +357,6 @@ CONFIG_BLK_DEV_RAM_COUNT=16 | |||
| 334 | CONFIG_CDROM_PKTCDVD=y | 357 | CONFIG_CDROM_PKTCDVD=y |
| 335 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 358 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 336 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 359 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 337 | |||
| 338 | # | ||
| 339 | # IO Schedulers | ||
| 340 | # | ||
| 341 | CONFIG_IOSCHED_NOOP=y | ||
| 342 | CONFIG_IOSCHED_AS=y | ||
| 343 | CONFIG_IOSCHED_DEADLINE=y | ||
| 344 | CONFIG_IOSCHED_CFQ=y | ||
| 345 | CONFIG_ATA_OVER_ETH=y | 360 | CONFIG_ATA_OVER_ETH=y |
| 346 | 361 | ||
| 347 | # | 362 | # |
| @@ -385,6 +400,7 @@ CONFIG_SCSI_SAS_ATTRS=y | |||
| 385 | # | 400 | # |
| 386 | # SCSI low-level drivers | 401 | # SCSI low-level drivers |
| 387 | # | 402 | # |
| 403 | # CONFIG_ISCSI_TCP is not set | ||
| 388 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set | 404 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set |
| 389 | # CONFIG_SCSI_3W_9XXX is not set | 405 | # CONFIG_SCSI_3W_9XXX is not set |
| 390 | # CONFIG_SCSI_ACARD is not set | 406 | # CONFIG_SCSI_ACARD is not set |
| @@ -399,6 +415,7 @@ CONFIG_AIC7XXX_REG_PRETTY_PRINT=y | |||
| 399 | # CONFIG_SCSI_AIC79XX is not set | 415 | # CONFIG_SCSI_AIC79XX is not set |
| 400 | # CONFIG_MEGARAID_NEWGEN is not set | 416 | # CONFIG_MEGARAID_NEWGEN is not set |
| 401 | # CONFIG_MEGARAID_LEGACY is not set | 417 | # CONFIG_MEGARAID_LEGACY is not set |
| 418 | # CONFIG_MEGARAID_SAS is not set | ||
| 402 | # CONFIG_SCSI_SATA is not set | 419 | # CONFIG_SCSI_SATA is not set |
| 403 | # CONFIG_SCSI_DMX3191D is not set | 420 | # CONFIG_SCSI_DMX3191D is not set |
| 404 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | 421 | # CONFIG_SCSI_FUTURE_DOMAIN is not set |
| @@ -432,6 +449,7 @@ CONFIG_SCSI_QLA2XXX=y | |||
| 432 | # CONFIG_FUSION is not set | 449 | # CONFIG_FUSION is not set |
| 433 | # CONFIG_FUSION_SPI is not set | 450 | # CONFIG_FUSION_SPI is not set |
| 434 | # CONFIG_FUSION_FC is not set | 451 | # CONFIG_FUSION_FC is not set |
| 452 | # CONFIG_FUSION_SAS is not set | ||
| 435 | 453 | ||
| 436 | # | 454 | # |
| 437 | # IEEE 1394 (FireWire) support | 455 | # IEEE 1394 (FireWire) support |
| @@ -461,7 +479,6 @@ CONFIG_NETDEVICES=y | |||
| 461 | # PHY device support | 479 | # PHY device support |
| 462 | # | 480 | # |
| 463 | CONFIG_PHYLIB=y | 481 | CONFIG_PHYLIB=y |
| 464 | CONFIG_PHYCONTROL=y | ||
| 465 | 482 | ||
| 466 | # | 483 | # |
| 467 | # MII PHY device drivers | 484 | # MII PHY device drivers |
| @@ -480,6 +497,7 @@ CONFIG_NET_ETHERNET=y | |||
| 480 | CONFIG_SGI_O2MACE_ETH=y | 497 | CONFIG_SGI_O2MACE_ETH=y |
| 481 | # CONFIG_HAPPYMEAL is not set | 498 | # CONFIG_HAPPYMEAL is not set |
| 482 | # CONFIG_SUNGEM is not set | 499 | # CONFIG_SUNGEM is not set |
| 500 | # CONFIG_CASSINI is not set | ||
| 483 | # CONFIG_NET_VENDOR_3COM is not set | 501 | # CONFIG_NET_VENDOR_3COM is not set |
| 484 | 502 | ||
| 485 | # | 503 | # |
| @@ -637,6 +655,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 637 | # TPM devices | 655 | # TPM devices |
| 638 | # | 656 | # |
| 639 | # CONFIG_TCG_TPM is not set | 657 | # CONFIG_TCG_TPM is not set |
| 658 | # CONFIG_TELCLOCK is not set | ||
| 640 | 659 | ||
| 641 | # | 660 | # |
| 642 | # I2C support | 661 | # I2C support |
| @@ -696,6 +715,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 696 | # CONFIG_USB is not set | 715 | # CONFIG_USB is not set |
| 697 | 716 | ||
| 698 | # | 717 | # |
| 718 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 719 | # | ||
| 720 | |||
| 721 | # | ||
| 699 | # USB Gadget Support | 722 | # USB Gadget Support |
| 700 | # | 723 | # |
| 701 | # CONFIG_USB_GADGET is not set | 724 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/it8172_defconfig b/arch/mips/configs/it8172_defconfig index 0940771bafb1..f631385217db 100644 --- a/arch/mips/configs/it8172_defconfig +++ b/arch/mips/configs/it8172_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:26:09 2005 | 4 | # Thu Nov 10 13:42:45 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -58,6 +58,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 58 | CONFIG_KMOD=y | 58 | CONFIG_KMOD=y |
| 59 | 59 | ||
| 60 | # | 60 | # |
| 61 | # Block layer | ||
| 62 | # | ||
| 63 | # CONFIG_LBD is not set | ||
| 64 | |||
| 65 | # | ||
| 66 | # IO Schedulers | ||
| 67 | # | ||
| 68 | CONFIG_IOSCHED_NOOP=y | ||
| 69 | CONFIG_IOSCHED_AS=y | ||
| 70 | CONFIG_IOSCHED_DEADLINE=y | ||
| 71 | CONFIG_IOSCHED_CFQ=y | ||
| 72 | CONFIG_DEFAULT_AS=y | ||
| 73 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 74 | # CONFIG_DEFAULT_CFQ is not set | ||
| 75 | # CONFIG_DEFAULT_NOOP is not set | ||
| 76 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 77 | |||
| 78 | # | ||
| 61 | # Machine selection | 79 | # Machine selection |
| 62 | # | 80 | # |
| 63 | # CONFIG_MIPS_MTX1 is not set | 81 | # CONFIG_MIPS_MTX1 is not set |
| @@ -181,6 +199,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 181 | CONFIG_FLATMEM=y | 199 | CONFIG_FLATMEM=y |
| 182 | CONFIG_FLAT_NODE_MEM_MAP=y | 200 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 183 | # CONFIG_SPARSEMEM_STATIC is not set | 201 | # CONFIG_SPARSEMEM_STATIC is not set |
| 202 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 184 | CONFIG_PREEMPT_NONE=y | 203 | CONFIG_PREEMPT_NONE=y |
| 185 | # CONFIG_PREEMPT_VOLUNTARY is not set | 204 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 186 | # CONFIG_PREEMPT is not set | 205 | # CONFIG_PREEMPT is not set |
| @@ -266,6 +285,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 266 | # CONFIG_NET_DIVERT is not set | 285 | # CONFIG_NET_DIVERT is not set |
| 267 | # CONFIG_ECONET is not set | 286 | # CONFIG_ECONET is not set |
| 268 | # CONFIG_WAN_ROUTER is not set | 287 | # CONFIG_WAN_ROUTER is not set |
| 288 | |||
| 289 | # | ||
| 290 | # QoS and/or fair queueing | ||
| 291 | # | ||
| 269 | # CONFIG_NET_SCHED is not set | 292 | # CONFIG_NET_SCHED is not set |
| 270 | # CONFIG_NET_CLS_ROUTE is not set | 293 | # CONFIG_NET_CLS_ROUTE is not set |
| 271 | 294 | ||
| @@ -315,6 +338,7 @@ CONFIG_MTD_CHAR=y | |||
| 315 | # CONFIG_FTL is not set | 338 | # CONFIG_FTL is not set |
| 316 | # CONFIG_NFTL is not set | 339 | # CONFIG_NFTL is not set |
| 317 | # CONFIG_INFTL is not set | 340 | # CONFIG_INFTL is not set |
| 341 | # CONFIG_RFD_FTL is not set | ||
| 318 | 342 | ||
| 319 | # | 343 | # |
| 320 | # RAM/ROM/Flash chip drivers | 344 | # RAM/ROM/Flash chip drivers |
| @@ -373,6 +397,11 @@ CONFIG_MTD_PHYSMAP_BANKWIDTH=2 | |||
| 373 | # CONFIG_MTD_NAND is not set | 397 | # CONFIG_MTD_NAND is not set |
| 374 | 398 | ||
| 375 | # | 399 | # |
| 400 | # OneNAND Flash Device Drivers | ||
| 401 | # | ||
| 402 | # CONFIG_MTD_ONENAND is not set | ||
| 403 | |||
| 404 | # | ||
| 376 | # Parallel port support | 405 | # Parallel port support |
| 377 | # | 406 | # |
| 378 | # CONFIG_PARPORT is not set | 407 | # CONFIG_PARPORT is not set |
| @@ -390,18 +419,9 @@ CONFIG_BLK_DEV_LOOP=y | |||
| 390 | # CONFIG_BLK_DEV_NBD is not set | 419 | # CONFIG_BLK_DEV_NBD is not set |
| 391 | # CONFIG_BLK_DEV_RAM is not set | 420 | # CONFIG_BLK_DEV_RAM is not set |
| 392 | CONFIG_BLK_DEV_RAM_COUNT=16 | 421 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 393 | # CONFIG_LBD is not set | ||
| 394 | CONFIG_CDROM_PKTCDVD=m | 422 | CONFIG_CDROM_PKTCDVD=m |
| 395 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 423 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 396 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 424 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 397 | |||
| 398 | # | ||
| 399 | # IO Schedulers | ||
| 400 | # | ||
| 401 | CONFIG_IOSCHED_NOOP=y | ||
| 402 | CONFIG_IOSCHED_AS=y | ||
| 403 | CONFIG_IOSCHED_DEADLINE=y | ||
| 404 | CONFIG_IOSCHED_CFQ=y | ||
| 405 | CONFIG_ATA_OVER_ETH=m | 425 | CONFIG_ATA_OVER_ETH=m |
| 406 | 426 | ||
| 407 | # | 427 | # |
| @@ -467,7 +487,6 @@ CONFIG_NETDEVICES=y | |||
| 467 | # PHY device support | 487 | # PHY device support |
| 468 | # | 488 | # |
| 469 | CONFIG_PHYLIB=m | 489 | CONFIG_PHYLIB=m |
| 470 | CONFIG_PHYCONTROL=y | ||
| 471 | 490 | ||
| 472 | # | 491 | # |
| 473 | # MII PHY device drivers | 492 | # MII PHY device drivers |
| @@ -609,6 +628,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 609 | # | 628 | # |
| 610 | # TPM devices | 629 | # TPM devices |
| 611 | # | 630 | # |
| 631 | # CONFIG_TELCLOCK is not set | ||
| 612 | 632 | ||
| 613 | # | 633 | # |
| 614 | # I2C support | 634 | # I2C support |
| @@ -669,10 +689,10 @@ CONFIG_SOUND=y | |||
| 669 | # Open Sound System | 689 | # Open Sound System |
| 670 | # | 690 | # |
| 671 | CONFIG_SOUND_PRIME=y | 691 | CONFIG_SOUND_PRIME=y |
| 692 | # CONFIG_OBSOLETE_OSS_DRIVER is not set | ||
| 672 | CONFIG_SOUND_IT8172=y | 693 | CONFIG_SOUND_IT8172=y |
| 673 | # CONFIG_SOUND_MSNDCLAS is not set | 694 | # CONFIG_SOUND_MSNDCLAS is not set |
| 674 | # CONFIG_SOUND_MSNDPIN is not set | 695 | # CONFIG_SOUND_MSNDPIN is not set |
| 675 | # CONFIG_SOUND_AD1980 is not set | ||
| 676 | 696 | ||
| 677 | # | 697 | # |
| 678 | # USB support | 698 | # USB support |
| @@ -681,6 +701,10 @@ CONFIG_SOUND_IT8172=y | |||
| 681 | # CONFIG_USB_ARCH_HAS_OHCI is not set | 701 | # CONFIG_USB_ARCH_HAS_OHCI is not set |
| 682 | 702 | ||
| 683 | # | 703 | # |
| 704 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 705 | # | ||
| 706 | |||
| 707 | # | ||
| 684 | # USB Gadget Support | 708 | # USB Gadget Support |
| 685 | # | 709 | # |
| 686 | # CONFIG_USB_GADGET is not set | 710 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/ivr_defconfig b/arch/mips/configs/ivr_defconfig index 9ba61dfc490d..8d94ac753e78 100644 --- a/arch/mips/configs/ivr_defconfig +++ b/arch/mips/configs/ivr_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:26:12 2005 | 4 | # Mon Nov 7 23:05:38 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -58,6 +58,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 58 | CONFIG_KMOD=y | 58 | CONFIG_KMOD=y |
| 59 | 59 | ||
| 60 | # | 60 | # |
| 61 | # Block layer | ||
| 62 | # | ||
| 63 | # CONFIG_LBD is not set | ||
| 64 | |||
| 65 | # | ||
| 66 | # IO Schedulers | ||
| 67 | # | ||
| 68 | CONFIG_IOSCHED_NOOP=y | ||
| 69 | CONFIG_IOSCHED_AS=y | ||
| 70 | CONFIG_IOSCHED_DEADLINE=y | ||
| 71 | CONFIG_IOSCHED_CFQ=y | ||
| 72 | CONFIG_DEFAULT_AS=y | ||
| 73 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 74 | # CONFIG_DEFAULT_CFQ is not set | ||
| 75 | # CONFIG_DEFAULT_NOOP is not set | ||
| 76 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 77 | |||
| 78 | # | ||
| 61 | # Machine selection | 79 | # Machine selection |
| 62 | # | 80 | # |
| 63 | # CONFIG_MIPS_MTX1 is not set | 81 | # CONFIG_MIPS_MTX1 is not set |
| @@ -178,6 +196,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 178 | CONFIG_FLATMEM=y | 196 | CONFIG_FLATMEM=y |
| 179 | CONFIG_FLAT_NODE_MEM_MAP=y | 197 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 180 | # CONFIG_SPARSEMEM_STATIC is not set | 198 | # CONFIG_SPARSEMEM_STATIC is not set |
| 199 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 181 | CONFIG_PREEMPT_NONE=y | 200 | CONFIG_PREEMPT_NONE=y |
| 182 | # CONFIG_PREEMPT_VOLUNTARY is not set | 201 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 183 | # CONFIG_PREEMPT is not set | 202 | # CONFIG_PREEMPT is not set |
| @@ -265,6 +284,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 265 | # CONFIG_NET_DIVERT is not set | 284 | # CONFIG_NET_DIVERT is not set |
| 266 | # CONFIG_ECONET is not set | 285 | # CONFIG_ECONET is not set |
| 267 | # CONFIG_WAN_ROUTER is not set | 286 | # CONFIG_WAN_ROUTER is not set |
| 287 | |||
| 288 | # | ||
| 289 | # QoS and/or fair queueing | ||
| 290 | # | ||
| 268 | # CONFIG_NET_SCHED is not set | 291 | # CONFIG_NET_SCHED is not set |
| 269 | # CONFIG_NET_CLS_ROUTE is not set | 292 | # CONFIG_NET_CLS_ROUTE is not set |
| 270 | 293 | ||
| @@ -324,18 +347,9 @@ CONFIG_CONNECTOR=m | |||
| 324 | # CONFIG_BLK_DEV_SX8 is not set | 347 | # CONFIG_BLK_DEV_SX8 is not set |
| 325 | # CONFIG_BLK_DEV_RAM is not set | 348 | # CONFIG_BLK_DEV_RAM is not set |
| 326 | CONFIG_BLK_DEV_RAM_COUNT=16 | 349 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 327 | # CONFIG_LBD is not set | ||
| 328 | CONFIG_CDROM_PKTCDVD=m | 350 | CONFIG_CDROM_PKTCDVD=m |
| 329 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 351 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 330 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 352 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 331 | |||
| 332 | # | ||
| 333 | # IO Schedulers | ||
| 334 | # | ||
| 335 | CONFIG_IOSCHED_NOOP=y | ||
| 336 | CONFIG_IOSCHED_AS=y | ||
| 337 | CONFIG_IOSCHED_DEADLINE=y | ||
| 338 | CONFIG_IOSCHED_CFQ=y | ||
| 339 | CONFIG_ATA_OVER_ETH=m | 353 | CONFIG_ATA_OVER_ETH=m |
| 340 | 354 | ||
| 341 | # | 355 | # |
| @@ -409,7 +423,6 @@ CONFIG_NETDEVICES=y | |||
| 409 | # PHY device support | 423 | # PHY device support |
| 410 | # | 424 | # |
| 411 | CONFIG_PHYLIB=m | 425 | CONFIG_PHYLIB=m |
| 412 | CONFIG_PHYCONTROL=y | ||
| 413 | 426 | ||
| 414 | # | 427 | # |
| 415 | # MII PHY device drivers | 428 | # MII PHY device drivers |
| @@ -427,6 +440,7 @@ CONFIG_NET_ETHERNET=y | |||
| 427 | # CONFIG_MII is not set | 440 | # CONFIG_MII is not set |
| 428 | # CONFIG_HAPPYMEAL is not set | 441 | # CONFIG_HAPPYMEAL is not set |
| 429 | # CONFIG_SUNGEM is not set | 442 | # CONFIG_SUNGEM is not set |
| 443 | # CONFIG_CASSINI is not set | ||
| 430 | # CONFIG_NET_VENDOR_3COM is not set | 444 | # CONFIG_NET_VENDOR_3COM is not set |
| 431 | 445 | ||
| 432 | # | 446 | # |
| @@ -539,7 +553,8 @@ CONFIG_VT_CONSOLE=y | |||
| 539 | CONFIG_HW_CONSOLE=y | 553 | CONFIG_HW_CONSOLE=y |
| 540 | # CONFIG_SERIAL_NONSTANDARD is not set | 554 | # CONFIG_SERIAL_NONSTANDARD is not set |
| 541 | CONFIG_QTRONIX_KEYBOARD=y | 555 | CONFIG_QTRONIX_KEYBOARD=y |
| 542 | # CONFIG_IT8172_SCR0 is not set | 556 | CONFIG_IT8172_SCR0=y |
| 557 | CONFIG_IT8172_SCR1=y | ||
| 543 | 558 | ||
| 544 | # | 559 | # |
| 545 | # Serial drivers | 560 | # Serial drivers |
| @@ -583,6 +598,7 @@ CONFIG_RTC=y | |||
| 583 | # TPM devices | 598 | # TPM devices |
| 584 | # | 599 | # |
| 585 | # CONFIG_TCG_TPM is not set | 600 | # CONFIG_TCG_TPM is not set |
| 601 | # CONFIG_TELCLOCK is not set | ||
| 586 | 602 | ||
| 587 | # | 603 | # |
| 588 | # I2C support | 604 | # I2C support |
| @@ -642,6 +658,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 642 | # CONFIG_USB is not set | 658 | # CONFIG_USB is not set |
| 643 | 659 | ||
| 644 | # | 660 | # |
| 661 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 662 | # | ||
| 663 | |||
| 664 | # | ||
| 645 | # USB Gadget Support | 665 | # USB Gadget Support |
| 646 | # | 666 | # |
| 647 | # CONFIG_USB_GADGET is not set | 667 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/jaguar-atx_defconfig b/arch/mips/configs/jaguar-atx_defconfig index 21b2b8042f91..a8b4c9a9a63b 100644 --- a/arch/mips/configs/jaguar-atx_defconfig +++ b/arch/mips/configs/jaguar-atx_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:26:14 2005 | 4 | # Mon Nov 7 23:05:41 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -55,6 +55,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 55 | CONFIG_KMOD=y | 55 | CONFIG_KMOD=y |
| 56 | 56 | ||
| 57 | # | 57 | # |
| 58 | # Block layer | ||
| 59 | # | ||
| 60 | # CONFIG_LBD is not set | ||
| 61 | |||
| 62 | # | ||
| 63 | # IO Schedulers | ||
| 64 | # | ||
| 65 | CONFIG_IOSCHED_NOOP=y | ||
| 66 | CONFIG_IOSCHED_AS=y | ||
| 67 | CONFIG_IOSCHED_DEADLINE=y | ||
| 68 | CONFIG_IOSCHED_CFQ=y | ||
| 69 | CONFIG_DEFAULT_AS=y | ||
| 70 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 71 | # CONFIG_DEFAULT_CFQ is not set | ||
| 72 | # CONFIG_DEFAULT_NOOP is not set | ||
| 73 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 74 | |||
| 75 | # | ||
| 58 | # Machine selection | 76 | # Machine selection |
| 59 | # | 77 | # |
| 60 | # CONFIG_MIPS_MTX1 is not set | 78 | # CONFIG_MIPS_MTX1 is not set |
| @@ -184,6 +202,7 @@ CONFIG_ARCH_FLATMEM_ENABLE=y | |||
| 184 | CONFIG_FLATMEM=y | 202 | CONFIG_FLATMEM=y |
| 185 | CONFIG_FLAT_NODE_MEM_MAP=y | 203 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 186 | # CONFIG_SPARSEMEM_STATIC is not set | 204 | # CONFIG_SPARSEMEM_STATIC is not set |
| 205 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 187 | # CONFIG_SMP is not set | 206 | # CONFIG_SMP is not set |
| 188 | CONFIG_PREEMPT_NONE=y | 207 | CONFIG_PREEMPT_NONE=y |
| 189 | # CONFIG_PREEMPT_VOLUNTARY is not set | 208 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| @@ -259,6 +278,10 @@ CONFIG_IPV6_TUNNEL=m | |||
| 259 | # CONFIG_LLC2 is not set | 278 | # CONFIG_LLC2 is not set |
| 260 | # CONFIG_IPX is not set | 279 | # CONFIG_IPX is not set |
| 261 | # CONFIG_ATALK is not set | 280 | # CONFIG_ATALK is not set |
| 281 | |||
| 282 | # | ||
| 283 | # QoS and/or fair queueing | ||
| 284 | # | ||
| 262 | # CONFIG_NET_SCHED is not set | 285 | # CONFIG_NET_SCHED is not set |
| 263 | # CONFIG_NET_CLS_ROUTE is not set | 286 | # CONFIG_NET_CLS_ROUTE is not set |
| 264 | 287 | ||
| @@ -317,18 +340,9 @@ CONFIG_CONNECTOR=m | |||
| 317 | # CONFIG_BLK_DEV_SX8 is not set | 340 | # CONFIG_BLK_DEV_SX8 is not set |
| 318 | # CONFIG_BLK_DEV_RAM is not set | 341 | # CONFIG_BLK_DEV_RAM is not set |
| 319 | CONFIG_BLK_DEV_RAM_COUNT=16 | 342 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 320 | # CONFIG_LBD is not set | ||
| 321 | CONFIG_CDROM_PKTCDVD=m | 343 | CONFIG_CDROM_PKTCDVD=m |
| 322 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 344 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 323 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 345 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 324 | |||
| 325 | # | ||
| 326 | # IO Schedulers | ||
| 327 | # | ||
| 328 | CONFIG_IOSCHED_NOOP=y | ||
| 329 | CONFIG_IOSCHED_AS=y | ||
| 330 | CONFIG_IOSCHED_DEADLINE=y | ||
| 331 | CONFIG_IOSCHED_CFQ=y | ||
| 332 | CONFIG_ATA_OVER_ETH=m | 346 | CONFIG_ATA_OVER_ETH=m |
| 333 | 347 | ||
| 334 | # | 348 | # |
| @@ -380,7 +394,6 @@ CONFIG_NETDEVICES=y | |||
| 380 | # PHY device support | 394 | # PHY device support |
| 381 | # | 395 | # |
| 382 | CONFIG_PHYLIB=m | 396 | CONFIG_PHYLIB=m |
| 383 | CONFIG_PHYCONTROL=y | ||
| 384 | 397 | ||
| 385 | # | 398 | # |
| 386 | # MII PHY device drivers | 399 | # MII PHY device drivers |
| @@ -398,6 +411,7 @@ CONFIG_NET_ETHERNET=y | |||
| 398 | CONFIG_MII=y | 411 | CONFIG_MII=y |
| 399 | # CONFIG_HAPPYMEAL is not set | 412 | # CONFIG_HAPPYMEAL is not set |
| 400 | # CONFIG_SUNGEM is not set | 413 | # CONFIG_SUNGEM is not set |
| 414 | # CONFIG_CASSINI is not set | ||
| 401 | # CONFIG_NET_VENDOR_3COM is not set | 415 | # CONFIG_NET_VENDOR_3COM is not set |
| 402 | 416 | ||
| 403 | # | 417 | # |
| @@ -592,6 +606,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 592 | # CONFIG_USB is not set | 606 | # CONFIG_USB is not set |
| 593 | 607 | ||
| 594 | # | 608 | # |
| 609 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 610 | # | ||
| 611 | |||
| 612 | # | ||
| 595 | # USB Gadget Support | 613 | # USB Gadget Support |
| 596 | # | 614 | # |
| 597 | # CONFIG_USB_GADGET is not set | 615 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/jmr3927_defconfig b/arch/mips/configs/jmr3927_defconfig index 6390a753e80b..c0ac5c793ec7 100644 --- a/arch/mips/configs/jmr3927_defconfig +++ b/arch/mips/configs/jmr3927_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:26:17 2005 | 4 | # Mon Nov 7 23:05:44 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -51,6 +51,24 @@ CONFIG_BASE_SMALL=0 | |||
| 51 | # CONFIG_MODULES is not set | 51 | # CONFIG_MODULES is not set |
| 52 | 52 | ||
| 53 | # | 53 | # |
| 54 | # Block layer | ||
| 55 | # | ||
| 56 | # CONFIG_LBD is not set | ||
| 57 | |||
| 58 | # | ||
| 59 | # IO Schedulers | ||
| 60 | # | ||
| 61 | CONFIG_IOSCHED_NOOP=y | ||
| 62 | CONFIG_IOSCHED_AS=y | ||
| 63 | CONFIG_IOSCHED_DEADLINE=y | ||
| 64 | CONFIG_IOSCHED_CFQ=y | ||
| 65 | CONFIG_DEFAULT_AS=y | ||
| 66 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 67 | # CONFIG_DEFAULT_CFQ is not set | ||
| 68 | # CONFIG_DEFAULT_NOOP is not set | ||
| 69 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 70 | |||
| 71 | # | ||
| 54 | # Machine selection | 72 | # Machine selection |
| 55 | # | 73 | # |
| 56 | # CONFIG_MIPS_MTX1 is not set | 74 | # CONFIG_MIPS_MTX1 is not set |
| @@ -168,6 +186,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 168 | CONFIG_FLATMEM=y | 186 | CONFIG_FLATMEM=y |
| 169 | CONFIG_FLAT_NODE_MEM_MAP=y | 187 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 170 | # CONFIG_SPARSEMEM_STATIC is not set | 188 | # CONFIG_SPARSEMEM_STATIC is not set |
| 189 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 171 | CONFIG_PREEMPT_NONE=y | 190 | CONFIG_PREEMPT_NONE=y |
| 172 | # CONFIG_PREEMPT_VOLUNTARY is not set | 191 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 173 | # CONFIG_PREEMPT is not set | 192 | # CONFIG_PREEMPT is not set |
| @@ -256,6 +275,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 256 | # CONFIG_NET_DIVERT is not set | 275 | # CONFIG_NET_DIVERT is not set |
| 257 | # CONFIG_ECONET is not set | 276 | # CONFIG_ECONET is not set |
| 258 | # CONFIG_WAN_ROUTER is not set | 277 | # CONFIG_WAN_ROUTER is not set |
| 278 | |||
| 279 | # | ||
| 280 | # QoS and/or fair queueing | ||
| 281 | # | ||
| 259 | # CONFIG_NET_SCHED is not set | 282 | # CONFIG_NET_SCHED is not set |
| 260 | # CONFIG_NET_CLS_ROUTE is not set | 283 | # CONFIG_NET_CLS_ROUTE is not set |
| 261 | 284 | ||
| @@ -287,6 +310,7 @@ CONFIG_FW_LOADER=y | |||
| 287 | # Connector - unified userspace <-> kernelspace linker | 310 | # Connector - unified userspace <-> kernelspace linker |
| 288 | # | 311 | # |
| 289 | CONFIG_CONNECTOR=y | 312 | CONFIG_CONNECTOR=y |
| 313 | CONFIG_PROC_EVENTS=y | ||
| 290 | 314 | ||
| 291 | # | 315 | # |
| 292 | # Memory Technology Devices (MTD) | 316 | # Memory Technology Devices (MTD) |
| @@ -315,18 +339,9 @@ CONFIG_CONNECTOR=y | |||
| 315 | # CONFIG_BLK_DEV_SX8 is not set | 339 | # CONFIG_BLK_DEV_SX8 is not set |
| 316 | # CONFIG_BLK_DEV_RAM is not set | 340 | # CONFIG_BLK_DEV_RAM is not set |
| 317 | CONFIG_BLK_DEV_RAM_COUNT=16 | 341 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 318 | # CONFIG_LBD is not set | ||
| 319 | CONFIG_CDROM_PKTCDVD=y | 342 | CONFIG_CDROM_PKTCDVD=y |
| 320 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 343 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 321 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 344 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 322 | |||
| 323 | # | ||
| 324 | # IO Schedulers | ||
| 325 | # | ||
| 326 | CONFIG_IOSCHED_NOOP=y | ||
| 327 | CONFIG_IOSCHED_AS=y | ||
| 328 | CONFIG_IOSCHED_DEADLINE=y | ||
| 329 | CONFIG_IOSCHED_CFQ=y | ||
| 330 | CONFIG_ATA_OVER_ETH=y | 345 | CONFIG_ATA_OVER_ETH=y |
| 331 | 346 | ||
| 332 | # | 347 | # |
| @@ -378,7 +393,6 @@ CONFIG_NETDEVICES=y | |||
| 378 | # PHY device support | 393 | # PHY device support |
| 379 | # | 394 | # |
| 380 | CONFIG_PHYLIB=y | 395 | CONFIG_PHYLIB=y |
| 381 | CONFIG_PHYCONTROL=y | ||
| 382 | 396 | ||
| 383 | # | 397 | # |
| 384 | # MII PHY device drivers | 398 | # MII PHY device drivers |
| @@ -396,6 +410,7 @@ CONFIG_NET_ETHERNET=y | |||
| 396 | # CONFIG_MII is not set | 410 | # CONFIG_MII is not set |
| 397 | # CONFIG_HAPPYMEAL is not set | 411 | # CONFIG_HAPPYMEAL is not set |
| 398 | # CONFIG_SUNGEM is not set | 412 | # CONFIG_SUNGEM is not set |
| 413 | # CONFIG_CASSINI is not set | ||
| 399 | # CONFIG_NET_VENDOR_3COM is not set | 414 | # CONFIG_NET_VENDOR_3COM is not set |
| 400 | 415 | ||
| 401 | # | 416 | # |
| @@ -561,6 +576,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 561 | # TPM devices | 576 | # TPM devices |
| 562 | # | 577 | # |
| 563 | # CONFIG_TCG_TPM is not set | 578 | # CONFIG_TCG_TPM is not set |
| 579 | # CONFIG_TELCLOCK is not set | ||
| 564 | 580 | ||
| 565 | # | 581 | # |
| 566 | # I2C support | 582 | # I2C support |
| @@ -603,7 +619,6 @@ CONFIG_FB=y | |||
| 603 | # CONFIG_FB_CFB_FILLRECT is not set | 619 | # CONFIG_FB_CFB_FILLRECT is not set |
| 604 | # CONFIG_FB_CFB_COPYAREA is not set | 620 | # CONFIG_FB_CFB_COPYAREA is not set |
| 605 | # CONFIG_FB_CFB_IMAGEBLIT is not set | 621 | # CONFIG_FB_CFB_IMAGEBLIT is not set |
| 606 | # CONFIG_FB_SOFT_CURSOR is not set | ||
| 607 | # CONFIG_FB_MACMODES is not set | 622 | # CONFIG_FB_MACMODES is not set |
| 608 | # CONFIG_FB_MODE_HELPERS is not set | 623 | # CONFIG_FB_MODE_HELPERS is not set |
| 609 | # CONFIG_FB_TILEBLITTING is not set | 624 | # CONFIG_FB_TILEBLITTING is not set |
| @@ -612,6 +627,7 @@ CONFIG_FB=y | |||
| 612 | # CONFIG_FB_CYBER2000 is not set | 627 | # CONFIG_FB_CYBER2000 is not set |
| 613 | # CONFIG_FB_ASILIANT is not set | 628 | # CONFIG_FB_ASILIANT is not set |
| 614 | # CONFIG_FB_IMSTT is not set | 629 | # CONFIG_FB_IMSTT is not set |
| 630 | # CONFIG_FB_S1D13XXX is not set | ||
| 615 | # CONFIG_FB_NVIDIA is not set | 631 | # CONFIG_FB_NVIDIA is not set |
| 616 | # CONFIG_FB_RIVA is not set | 632 | # CONFIG_FB_RIVA is not set |
| 617 | # CONFIG_FB_MATROX is not set | 633 | # CONFIG_FB_MATROX is not set |
| @@ -628,7 +644,6 @@ CONFIG_FB=y | |||
| 628 | # CONFIG_FB_SMIVGX is not set | 644 | # CONFIG_FB_SMIVGX is not set |
| 629 | # CONFIG_FB_CYBLA is not set | 645 | # CONFIG_FB_CYBLA is not set |
| 630 | # CONFIG_FB_TRIDENT is not set | 646 | # CONFIG_FB_TRIDENT is not set |
| 631 | # CONFIG_FB_S1D13XXX is not set | ||
| 632 | # CONFIG_FB_VIRTUAL is not set | 647 | # CONFIG_FB_VIRTUAL is not set |
| 633 | 648 | ||
| 634 | # | 649 | # |
| @@ -657,6 +672,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 657 | # CONFIG_USB is not set | 672 | # CONFIG_USB is not set |
| 658 | 673 | ||
| 659 | # | 674 | # |
| 675 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 676 | # | ||
| 677 | |||
| 678 | # | ||
| 660 | # USB Gadget Support | 679 | # USB Gadget Support |
| 661 | # | 680 | # |
| 662 | # CONFIG_USB_GADGET is not set | 681 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/lasat200_defconfig b/arch/mips/configs/lasat200_defconfig index 03cd0ca6e639..f2bd620ff0fa 100644 --- a/arch/mips/configs/lasat200_defconfig +++ b/arch/mips/configs/lasat200_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:26:19 2005 | 4 | # Mon Nov 7 23:05:47 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -57,6 +57,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 57 | CONFIG_KMOD=y | 57 | CONFIG_KMOD=y |
| 58 | 58 | ||
| 59 | # | 59 | # |
| 60 | # Block layer | ||
| 61 | # | ||
| 62 | # CONFIG_LBD is not set | ||
| 63 | |||
| 64 | # | ||
| 65 | # IO Schedulers | ||
| 66 | # | ||
| 67 | CONFIG_IOSCHED_NOOP=y | ||
| 68 | CONFIG_IOSCHED_AS=y | ||
| 69 | CONFIG_IOSCHED_DEADLINE=y | ||
| 70 | CONFIG_IOSCHED_CFQ=y | ||
| 71 | CONFIG_DEFAULT_AS=y | ||
| 72 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 73 | # CONFIG_DEFAULT_CFQ is not set | ||
| 74 | # CONFIG_DEFAULT_NOOP is not set | ||
| 75 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 76 | |||
| 77 | # | ||
| 60 | # Machine selection | 78 | # Machine selection |
| 61 | # | 79 | # |
| 62 | # CONFIG_MIPS_MTX1 is not set | 80 | # CONFIG_MIPS_MTX1 is not set |
| @@ -184,6 +202,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 184 | CONFIG_FLATMEM=y | 202 | CONFIG_FLATMEM=y |
| 185 | CONFIG_FLAT_NODE_MEM_MAP=y | 203 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 186 | # CONFIG_SPARSEMEM_STATIC is not set | 204 | # CONFIG_SPARSEMEM_STATIC is not set |
| 205 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 187 | CONFIG_PREEMPT_NONE=y | 206 | CONFIG_PREEMPT_NONE=y |
| 188 | # CONFIG_PREEMPT_VOLUNTARY is not set | 207 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 189 | # CONFIG_PREEMPT is not set | 208 | # CONFIG_PREEMPT is not set |
| @@ -267,6 +286,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 267 | # CONFIG_NET_DIVERT is not set | 286 | # CONFIG_NET_DIVERT is not set |
| 268 | # CONFIG_ECONET is not set | 287 | # CONFIG_ECONET is not set |
| 269 | # CONFIG_WAN_ROUTER is not set | 288 | # CONFIG_WAN_ROUTER is not set |
| 289 | |||
| 290 | # | ||
| 291 | # QoS and/or fair queueing | ||
| 292 | # | ||
| 270 | # CONFIG_NET_SCHED is not set | 293 | # CONFIG_NET_SCHED is not set |
| 271 | # CONFIG_NET_CLS_ROUTE is not set | 294 | # CONFIG_NET_CLS_ROUTE is not set |
| 272 | 295 | ||
| @@ -317,6 +340,7 @@ CONFIG_MTD_BLOCK=y | |||
| 317 | # CONFIG_FTL is not set | 340 | # CONFIG_FTL is not set |
| 318 | # CONFIG_NFTL is not set | 341 | # CONFIG_NFTL is not set |
| 319 | # CONFIG_INFTL is not set | 342 | # CONFIG_INFTL is not set |
| 343 | # CONFIG_RFD_FTL is not set | ||
| 320 | 344 | ||
| 321 | # | 345 | # |
| 322 | # RAM/ROM/Flash chip drivers | 346 | # RAM/ROM/Flash chip drivers |
| @@ -375,6 +399,11 @@ CONFIG_MTD_LASAT=y | |||
| 375 | # CONFIG_MTD_NAND is not set | 399 | # CONFIG_MTD_NAND is not set |
| 376 | 400 | ||
| 377 | # | 401 | # |
| 402 | # OneNAND Flash Device Drivers | ||
| 403 | # | ||
| 404 | # CONFIG_MTD_ONENAND is not set | ||
| 405 | |||
| 406 | # | ||
| 378 | # Parallel port support | 407 | # Parallel port support |
| 379 | # | 408 | # |
| 380 | # CONFIG_PARPORT is not set | 409 | # CONFIG_PARPORT is not set |
| @@ -396,18 +425,9 @@ CONFIG_MTD_LASAT=y | |||
| 396 | # CONFIG_BLK_DEV_SX8 is not set | 425 | # CONFIG_BLK_DEV_SX8 is not set |
| 397 | # CONFIG_BLK_DEV_RAM is not set | 426 | # CONFIG_BLK_DEV_RAM is not set |
| 398 | CONFIG_BLK_DEV_RAM_COUNT=16 | 427 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 399 | # CONFIG_LBD is not set | ||
| 400 | CONFIG_CDROM_PKTCDVD=m | 428 | CONFIG_CDROM_PKTCDVD=m |
| 401 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 429 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 402 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 430 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 403 | |||
| 404 | # | ||
| 405 | # IO Schedulers | ||
| 406 | # | ||
| 407 | CONFIG_IOSCHED_NOOP=y | ||
| 408 | CONFIG_IOSCHED_AS=y | ||
| 409 | CONFIG_IOSCHED_DEADLINE=y | ||
| 410 | CONFIG_IOSCHED_CFQ=y | ||
| 411 | CONFIG_ATA_OVER_ETH=m | 431 | CONFIG_ATA_OVER_ETH=m |
| 412 | 432 | ||
| 413 | # | 433 | # |
| @@ -511,7 +531,6 @@ CONFIG_NETDEVICES=y | |||
| 511 | # PHY device support | 531 | # PHY device support |
| 512 | # | 532 | # |
| 513 | CONFIG_PHYLIB=m | 533 | CONFIG_PHYLIB=m |
| 514 | CONFIG_PHYCONTROL=y | ||
| 515 | 534 | ||
| 516 | # | 535 | # |
| 517 | # MII PHY device drivers | 536 | # MII PHY device drivers |
| @@ -529,6 +548,7 @@ CONFIG_NET_ETHERNET=y | |||
| 529 | # CONFIG_MII is not set | 548 | # CONFIG_MII is not set |
| 530 | # CONFIG_HAPPYMEAL is not set | 549 | # CONFIG_HAPPYMEAL is not set |
| 531 | # CONFIG_SUNGEM is not set | 550 | # CONFIG_SUNGEM is not set |
| 551 | # CONFIG_CASSINI is not set | ||
| 532 | # CONFIG_NET_VENDOR_3COM is not set | 552 | # CONFIG_NET_VENDOR_3COM is not set |
| 533 | 553 | ||
| 534 | # | 554 | # |
| @@ -684,6 +704,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 684 | # TPM devices | 704 | # TPM devices |
| 685 | # | 705 | # |
| 686 | # CONFIG_TCG_TPM is not set | 706 | # CONFIG_TCG_TPM is not set |
| 707 | # CONFIG_TELCLOCK is not set | ||
| 687 | 708 | ||
| 688 | # | 709 | # |
| 689 | # I2C support | 710 | # I2C support |
| @@ -743,6 +764,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 743 | # CONFIG_USB is not set | 764 | # CONFIG_USB is not set |
| 744 | 765 | ||
| 745 | # | 766 | # |
| 767 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 768 | # | ||
| 769 | |||
| 770 | # | ||
| 746 | # USB Gadget Support | 771 | # USB Gadget Support |
| 747 | # | 772 | # |
| 748 | # CONFIG_USB_GADGET is not set | 773 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/malta_defconfig b/arch/mips/configs/malta_defconfig index 2acdec959dd0..e48e1de442b4 100644 --- a/arch/mips/configs/malta_defconfig +++ b/arch/mips/configs/malta_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:26:22 2005 | 4 | # Thu Nov 10 13:42:55 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -57,6 +57,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 57 | CONFIG_KMOD=y | 57 | CONFIG_KMOD=y |
| 58 | 58 | ||
| 59 | # | 59 | # |
| 60 | # Block layer | ||
| 61 | # | ||
| 62 | # CONFIG_LBD is not set | ||
| 63 | |||
| 64 | # | ||
| 65 | # IO Schedulers | ||
| 66 | # | ||
| 67 | CONFIG_IOSCHED_NOOP=y | ||
| 68 | CONFIG_IOSCHED_AS=y | ||
| 69 | CONFIG_IOSCHED_DEADLINE=y | ||
| 70 | CONFIG_IOSCHED_CFQ=y | ||
| 71 | CONFIG_DEFAULT_AS=y | ||
| 72 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 73 | # CONFIG_DEFAULT_CFQ is not set | ||
| 74 | # CONFIG_DEFAULT_NOOP is not set | ||
| 75 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 76 | |||
| 77 | # | ||
| 60 | # Machine selection | 78 | # Machine selection |
| 61 | # | 79 | # |
| 62 | # CONFIG_MIPS_MTX1 is not set | 80 | # CONFIG_MIPS_MTX1 is not set |
| @@ -197,6 +215,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 197 | CONFIG_FLATMEM=y | 215 | CONFIG_FLATMEM=y |
| 198 | CONFIG_FLAT_NODE_MEM_MAP=y | 216 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 199 | # CONFIG_SPARSEMEM_STATIC is not set | 217 | # CONFIG_SPARSEMEM_STATIC is not set |
| 218 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 200 | CONFIG_PREEMPT_NONE=y | 219 | CONFIG_PREEMPT_NONE=y |
| 201 | # CONFIG_PREEMPT_VOLUNTARY is not set | 220 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 202 | # CONFIG_PREEMPT is not set | 221 | # CONFIG_PREEMPT is not set |
| @@ -315,6 +334,10 @@ CONFIG_IPV6_TUNNEL=m | |||
| 315 | CONFIG_NETFILTER=y | 334 | CONFIG_NETFILTER=y |
| 316 | # CONFIG_NETFILTER_DEBUG is not set | 335 | # CONFIG_NETFILTER_DEBUG is not set |
| 317 | CONFIG_BRIDGE_NETFILTER=y | 336 | CONFIG_BRIDGE_NETFILTER=y |
| 337 | |||
| 338 | # | ||
| 339 | # Core Netfilter Configuration | ||
| 340 | # | ||
| 318 | CONFIG_NETFILTER_NETLINK=m | 341 | CONFIG_NETFILTER_NETLINK=m |
| 319 | CONFIG_NETFILTER_NETLINK_QUEUE=m | 342 | CONFIG_NETFILTER_NETLINK_QUEUE=m |
| 320 | CONFIG_NETFILTER_NETLINK_LOG=m | 343 | CONFIG_NETFILTER_NETLINK_LOG=m |
| @@ -369,6 +392,7 @@ CONFIG_IP_NF_TARGET_REJECT=m | |||
| 369 | CONFIG_IP_NF_TARGET_LOG=m | 392 | CONFIG_IP_NF_TARGET_LOG=m |
| 370 | CONFIG_IP_NF_TARGET_ULOG=m | 393 | CONFIG_IP_NF_TARGET_ULOG=m |
| 371 | CONFIG_IP_NF_TARGET_TCPMSS=m | 394 | CONFIG_IP_NF_TARGET_TCPMSS=m |
| 395 | CONFIG_IP_NF_TARGET_NFQUEUE=m | ||
| 372 | CONFIG_IP_NF_NAT=m | 396 | CONFIG_IP_NF_NAT=m |
| 373 | CONFIG_IP_NF_NAT_NEEDED=y | 397 | CONFIG_IP_NF_NAT_NEEDED=y |
| 374 | CONFIG_IP_NF_TARGET_MASQUERADE=m | 398 | CONFIG_IP_NF_TARGET_MASQUERADE=m |
| @@ -418,6 +442,7 @@ CONFIG_IP6_NF_MATCH_PHYSDEV=m | |||
| 418 | CONFIG_IP6_NF_FILTER=m | 442 | CONFIG_IP6_NF_FILTER=m |
| 419 | CONFIG_IP6_NF_TARGET_LOG=m | 443 | CONFIG_IP6_NF_TARGET_LOG=m |
| 420 | CONFIG_IP6_NF_TARGET_REJECT=m | 444 | CONFIG_IP6_NF_TARGET_REJECT=m |
| 445 | CONFIG_IP6_NF_TARGET_NFQUEUE=m | ||
| 421 | CONFIG_IP6_NF_MANGLE=m | 446 | CONFIG_IP6_NF_MANGLE=m |
| 422 | CONFIG_IP6_NF_TARGET_MARK=m | 447 | CONFIG_IP6_NF_TARGET_MARK=m |
| 423 | CONFIG_IP6_NF_TARGET_HL=m | 448 | CONFIG_IP6_NF_TARGET_HL=m |
| @@ -478,10 +503,18 @@ CONFIG_IPDDP_DECAP=y | |||
| 478 | CONFIG_NET_DIVERT=y | 503 | CONFIG_NET_DIVERT=y |
| 479 | # CONFIG_ECONET is not set | 504 | # CONFIG_ECONET is not set |
| 480 | # CONFIG_WAN_ROUTER is not set | 505 | # CONFIG_WAN_ROUTER is not set |
| 506 | |||
| 507 | # | ||
| 508 | # QoS and/or fair queueing | ||
| 509 | # | ||
| 481 | CONFIG_NET_SCHED=y | 510 | CONFIG_NET_SCHED=y |
| 482 | CONFIG_NET_SCH_CLK_JIFFIES=y | 511 | CONFIG_NET_SCH_CLK_JIFFIES=y |
| 483 | # CONFIG_NET_SCH_CLK_GETTIMEOFDAY is not set | 512 | # CONFIG_NET_SCH_CLK_GETTIMEOFDAY is not set |
| 484 | # CONFIG_NET_SCH_CLK_CPU is not set | 513 | # CONFIG_NET_SCH_CLK_CPU is not set |
| 514 | |||
| 515 | # | ||
| 516 | # Queueing/Scheduling | ||
| 517 | # | ||
| 485 | CONFIG_NET_SCH_CBQ=m | 518 | CONFIG_NET_SCH_CBQ=m |
| 486 | CONFIG_NET_SCH_HTB=m | 519 | CONFIG_NET_SCH_HTB=m |
| 487 | CONFIG_NET_SCH_HFSC=m | 520 | CONFIG_NET_SCH_HFSC=m |
| @@ -494,8 +527,10 @@ CONFIG_NET_SCH_GRED=m | |||
| 494 | CONFIG_NET_SCH_DSMARK=m | 527 | CONFIG_NET_SCH_DSMARK=m |
| 495 | CONFIG_NET_SCH_NETEM=m | 528 | CONFIG_NET_SCH_NETEM=m |
| 496 | CONFIG_NET_SCH_INGRESS=m | 529 | CONFIG_NET_SCH_INGRESS=m |
| 497 | CONFIG_NET_QOS=y | 530 | |
| 498 | CONFIG_NET_ESTIMATOR=y | 531 | # |
| 532 | # Classification | ||
| 533 | # | ||
| 499 | CONFIG_NET_CLS=y | 534 | CONFIG_NET_CLS=y |
| 500 | CONFIG_NET_CLS_BASIC=m | 535 | CONFIG_NET_CLS_BASIC=m |
| 501 | CONFIG_NET_CLS_TCINDEX=m | 536 | CONFIG_NET_CLS_TCINDEX=m |
| @@ -504,13 +539,14 @@ CONFIG_NET_CLS_ROUTE=y | |||
| 504 | CONFIG_NET_CLS_FW=m | 539 | CONFIG_NET_CLS_FW=m |
| 505 | CONFIG_NET_CLS_U32=m | 540 | CONFIG_NET_CLS_U32=m |
| 506 | # CONFIG_CLS_U32_PERF is not set | 541 | # CONFIG_CLS_U32_PERF is not set |
| 507 | CONFIG_NET_CLS_IND=y | ||
| 508 | # CONFIG_CLS_U32_MARK is not set | 542 | # CONFIG_CLS_U32_MARK is not set |
| 509 | CONFIG_NET_CLS_RSVP=m | 543 | CONFIG_NET_CLS_RSVP=m |
| 510 | CONFIG_NET_CLS_RSVP6=m | 544 | CONFIG_NET_CLS_RSVP6=m |
| 511 | # CONFIG_NET_EMATCH is not set | 545 | # CONFIG_NET_EMATCH is not set |
| 512 | # CONFIG_NET_CLS_ACT is not set | 546 | # CONFIG_NET_CLS_ACT is not set |
| 513 | CONFIG_NET_CLS_POLICE=y | 547 | CONFIG_NET_CLS_POLICE=y |
| 548 | CONFIG_NET_CLS_IND=y | ||
| 549 | CONFIG_NET_ESTIMATOR=y | ||
| 514 | 550 | ||
| 515 | # | 551 | # |
| 516 | # Network testing | 552 | # Network testing |
| @@ -572,18 +608,9 @@ CONFIG_BLK_DEV_RAM=y | |||
| 572 | CONFIG_BLK_DEV_RAM_COUNT=16 | 608 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 573 | CONFIG_BLK_DEV_RAM_SIZE=4096 | 609 | CONFIG_BLK_DEV_RAM_SIZE=4096 |
| 574 | # CONFIG_BLK_DEV_INITRD is not set | 610 | # CONFIG_BLK_DEV_INITRD is not set |
| 575 | # CONFIG_LBD is not set | ||
| 576 | CONFIG_CDROM_PKTCDVD=m | 611 | CONFIG_CDROM_PKTCDVD=m |
| 577 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 612 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 578 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 613 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 579 | |||
| 580 | # | ||
| 581 | # IO Schedulers | ||
| 582 | # | ||
| 583 | CONFIG_IOSCHED_NOOP=y | ||
| 584 | CONFIG_IOSCHED_AS=y | ||
| 585 | CONFIG_IOSCHED_DEADLINE=y | ||
| 586 | CONFIG_IOSCHED_CFQ=y | ||
| 587 | CONFIG_ATA_OVER_ETH=m | 614 | CONFIG_ATA_OVER_ETH=m |
| 588 | 615 | ||
| 589 | # | 616 | # |
| @@ -680,6 +707,7 @@ CONFIG_SCSI_SAS_ATTRS=m | |||
| 680 | # | 707 | # |
| 681 | # SCSI low-level drivers | 708 | # SCSI low-level drivers |
| 682 | # | 709 | # |
| 710 | CONFIG_ISCSI_TCP=m | ||
| 683 | CONFIG_BLK_DEV_3W_XXXX_RAID=m | 711 | CONFIG_BLK_DEV_3W_XXXX_RAID=m |
| 684 | CONFIG_SCSI_3W_9XXX=m | 712 | CONFIG_SCSI_3W_9XXX=m |
| 685 | CONFIG_SCSI_ACARD=m | 713 | CONFIG_SCSI_ACARD=m |
| @@ -695,6 +723,7 @@ CONFIG_AIC7XXX_REG_PRETTY_PRINT=y | |||
| 695 | # CONFIG_SCSI_DPT_I2O is not set | 723 | # CONFIG_SCSI_DPT_I2O is not set |
| 696 | # CONFIG_MEGARAID_NEWGEN is not set | 724 | # CONFIG_MEGARAID_NEWGEN is not set |
| 697 | # CONFIG_MEGARAID_LEGACY is not set | 725 | # CONFIG_MEGARAID_LEGACY is not set |
| 726 | # CONFIG_MEGARAID_SAS is not set | ||
| 698 | # CONFIG_SCSI_SATA is not set | 727 | # CONFIG_SCSI_SATA is not set |
| 699 | # CONFIG_SCSI_DMX3191D is not set | 728 | # CONFIG_SCSI_DMX3191D is not set |
| 700 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | 729 | # CONFIG_SCSI_FUTURE_DOMAIN is not set |
| @@ -745,6 +774,7 @@ CONFIG_DM_MULTIPATH_EMC=m | |||
| 745 | # CONFIG_FUSION is not set | 774 | # CONFIG_FUSION is not set |
| 746 | # CONFIG_FUSION_SPI is not set | 775 | # CONFIG_FUSION_SPI is not set |
| 747 | # CONFIG_FUSION_FC is not set | 776 | # CONFIG_FUSION_FC is not set |
| 777 | # CONFIG_FUSION_SAS is not set | ||
| 748 | 778 | ||
| 749 | # | 779 | # |
| 750 | # IEEE 1394 (FireWire) support | 780 | # IEEE 1394 (FireWire) support |
| @@ -774,7 +804,6 @@ CONFIG_TUN=m | |||
| 774 | # PHY device support | 804 | # PHY device support |
| 775 | # | 805 | # |
| 776 | CONFIG_PHYLIB=m | 806 | CONFIG_PHYLIB=m |
| 777 | CONFIG_PHYCONTROL=y | ||
| 778 | 807 | ||
| 779 | # | 808 | # |
| 780 | # MII PHY device drivers | 809 | # MII PHY device drivers |
| @@ -792,6 +821,7 @@ CONFIG_NET_ETHERNET=y | |||
| 792 | CONFIG_MII=y | 821 | CONFIG_MII=y |
| 793 | # CONFIG_HAPPYMEAL is not set | 822 | # CONFIG_HAPPYMEAL is not set |
| 794 | # CONFIG_SUNGEM is not set | 823 | # CONFIG_SUNGEM is not set |
| 824 | # CONFIG_CASSINI is not set | ||
| 795 | # CONFIG_NET_VENDOR_3COM is not set | 825 | # CONFIG_NET_VENDOR_3COM is not set |
| 796 | 826 | ||
| 797 | # | 827 | # |
| @@ -967,6 +997,7 @@ CONFIG_RTC=y | |||
| 967 | # TPM devices | 997 | # TPM devices |
| 968 | # | 998 | # |
| 969 | # CONFIG_TCG_TPM is not set | 999 | # CONFIG_TCG_TPM is not set |
| 1000 | # CONFIG_TELCLOCK is not set | ||
| 970 | 1001 | ||
| 971 | # | 1002 | # |
| 972 | # I2C support | 1003 | # I2C support |
| @@ -1026,6 +1057,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 1026 | # CONFIG_USB is not set | 1057 | # CONFIG_USB is not set |
| 1027 | 1058 | ||
| 1028 | # | 1059 | # |
| 1060 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 1061 | # | ||
| 1062 | |||
| 1063 | # | ||
| 1029 | # USB Gadget Support | 1064 | # USB Gadget Support |
| 1030 | # | 1065 | # |
| 1031 | # CONFIG_USB_GADGET is not set | 1066 | # CONFIG_USB_GADGET is not set |
| @@ -1071,7 +1106,7 @@ CONFIG_JFS_SECURITY=y | |||
| 1071 | CONFIG_FS_POSIX_ACL=y | 1106 | CONFIG_FS_POSIX_ACL=y |
| 1072 | CONFIG_XFS_FS=m | 1107 | CONFIG_XFS_FS=m |
| 1073 | CONFIG_XFS_EXPORT=y | 1108 | CONFIG_XFS_EXPORT=y |
| 1074 | CONFIG_XFS_QUOTA=m | 1109 | CONFIG_XFS_QUOTA=y |
| 1075 | CONFIG_XFS_SECURITY=y | 1110 | CONFIG_XFS_SECURITY=y |
| 1076 | CONFIG_XFS_POSIX_ACL=y | 1111 | CONFIG_XFS_POSIX_ACL=y |
| 1077 | # CONFIG_XFS_RT is not set | 1112 | # CONFIG_XFS_RT is not set |
diff --git a/arch/mips/configs/mipssim_defconfig b/arch/mips/configs/mipssim_defconfig index fb9bdd9e3151..04abd1b3202b 100644 --- a/arch/mips/configs/mipssim_defconfig +++ b/arch/mips/configs/mipssim_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:26:25 2005 | 4 | # Mon Nov 7 23:05:55 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -58,6 +58,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 58 | CONFIG_KMOD=y | 58 | CONFIG_KMOD=y |
| 59 | 59 | ||
| 60 | # | 60 | # |
| 61 | # Block layer | ||
| 62 | # | ||
| 63 | # CONFIG_LBD is not set | ||
| 64 | |||
| 65 | # | ||
| 66 | # IO Schedulers | ||
| 67 | # | ||
| 68 | CONFIG_IOSCHED_NOOP=y | ||
| 69 | CONFIG_IOSCHED_AS=y | ||
| 70 | CONFIG_IOSCHED_DEADLINE=y | ||
| 71 | CONFIG_IOSCHED_CFQ=y | ||
| 72 | CONFIG_DEFAULT_AS=y | ||
| 73 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 74 | # CONFIG_DEFAULT_CFQ is not set | ||
| 75 | # CONFIG_DEFAULT_NOOP is not set | ||
| 76 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 77 | |||
| 78 | # | ||
| 61 | # Machine selection | 79 | # Machine selection |
| 62 | # | 80 | # |
| 63 | # CONFIG_MIPS_MTX1 is not set | 81 | # CONFIG_MIPS_MTX1 is not set |
| @@ -184,6 +202,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 184 | CONFIG_FLATMEM=y | 202 | CONFIG_FLATMEM=y |
| 185 | CONFIG_FLAT_NODE_MEM_MAP=y | 203 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 186 | # CONFIG_SPARSEMEM_STATIC is not set | 204 | # CONFIG_SPARSEMEM_STATIC is not set |
| 205 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 187 | CONFIG_PREEMPT_NONE=y | 206 | CONFIG_PREEMPT_NONE=y |
| 188 | # CONFIG_PREEMPT_VOLUNTARY is not set | 207 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 189 | # CONFIG_PREEMPT is not set | 208 | # CONFIG_PREEMPT is not set |
| @@ -281,10 +300,18 @@ CONFIG_SCTP_HMAC_MD5=y | |||
| 281 | CONFIG_NET_DIVERT=y | 300 | CONFIG_NET_DIVERT=y |
| 282 | # CONFIG_ECONET is not set | 301 | # CONFIG_ECONET is not set |
| 283 | # CONFIG_WAN_ROUTER is not set | 302 | # CONFIG_WAN_ROUTER is not set |
| 303 | |||
| 304 | # | ||
| 305 | # QoS and/or fair queueing | ||
| 306 | # | ||
| 284 | CONFIG_NET_SCHED=y | 307 | CONFIG_NET_SCHED=y |
| 285 | CONFIG_NET_SCH_CLK_JIFFIES=y | 308 | CONFIG_NET_SCH_CLK_JIFFIES=y |
| 286 | # CONFIG_NET_SCH_CLK_GETTIMEOFDAY is not set | 309 | # CONFIG_NET_SCH_CLK_GETTIMEOFDAY is not set |
| 287 | # CONFIG_NET_SCH_CLK_CPU is not set | 310 | # CONFIG_NET_SCH_CLK_CPU is not set |
| 311 | |||
| 312 | # | ||
| 313 | # Queueing/Scheduling | ||
| 314 | # | ||
| 288 | CONFIG_NET_SCH_CBQ=m | 315 | CONFIG_NET_SCH_CBQ=m |
| 289 | CONFIG_NET_SCH_HTB=m | 316 | CONFIG_NET_SCH_HTB=m |
| 290 | CONFIG_NET_SCH_HFSC=m | 317 | CONFIG_NET_SCH_HFSC=m |
| @@ -297,8 +324,10 @@ CONFIG_NET_SCH_GRED=m | |||
| 297 | CONFIG_NET_SCH_DSMARK=m | 324 | CONFIG_NET_SCH_DSMARK=m |
| 298 | CONFIG_NET_SCH_NETEM=m | 325 | CONFIG_NET_SCH_NETEM=m |
| 299 | CONFIG_NET_SCH_INGRESS=m | 326 | CONFIG_NET_SCH_INGRESS=m |
| 300 | CONFIG_NET_QOS=y | 327 | |
| 301 | CONFIG_NET_ESTIMATOR=y | 328 | # |
| 329 | # Classification | ||
| 330 | # | ||
| 302 | CONFIG_NET_CLS=y | 331 | CONFIG_NET_CLS=y |
| 303 | CONFIG_NET_CLS_BASIC=m | 332 | CONFIG_NET_CLS_BASIC=m |
| 304 | CONFIG_NET_CLS_TCINDEX=m | 333 | CONFIG_NET_CLS_TCINDEX=m |
| @@ -311,6 +340,7 @@ CONFIG_NET_CLS_ROUTE=y | |||
| 311 | # CONFIG_NET_EMATCH is not set | 340 | # CONFIG_NET_EMATCH is not set |
| 312 | # CONFIG_NET_CLS_ACT is not set | 341 | # CONFIG_NET_CLS_ACT is not set |
| 313 | # CONFIG_NET_CLS_POLICE is not set | 342 | # CONFIG_NET_CLS_POLICE is not set |
| 343 | CONFIG_NET_ESTIMATOR=y | ||
| 314 | 344 | ||
| 315 | # | 345 | # |
| 316 | # Network testing | 346 | # Network testing |
| @@ -361,16 +391,7 @@ CONFIG_BLK_DEV_LOOP=y | |||
| 361 | CONFIG_BLK_DEV_NBD=y | 391 | CONFIG_BLK_DEV_NBD=y |
| 362 | # CONFIG_BLK_DEV_RAM is not set | 392 | # CONFIG_BLK_DEV_RAM is not set |
| 363 | CONFIG_BLK_DEV_RAM_COUNT=16 | 393 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 364 | # CONFIG_LBD is not set | ||
| 365 | # CONFIG_CDROM_PKTCDVD is not set | 394 | # CONFIG_CDROM_PKTCDVD is not set |
| 366 | |||
| 367 | # | ||
| 368 | # IO Schedulers | ||
| 369 | # | ||
| 370 | CONFIG_IOSCHED_NOOP=y | ||
| 371 | CONFIG_IOSCHED_AS=y | ||
| 372 | CONFIG_IOSCHED_DEADLINE=y | ||
| 373 | CONFIG_IOSCHED_CFQ=y | ||
| 374 | # CONFIG_ATA_OVER_ETH is not set | 395 | # CONFIG_ATA_OVER_ETH is not set |
| 375 | 396 | ||
| 376 | # | 397 | # |
| @@ -537,6 +558,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 537 | # | 558 | # |
| 538 | # TPM devices | 559 | # TPM devices |
| 539 | # | 560 | # |
| 561 | # CONFIG_TELCLOCK is not set | ||
| 540 | 562 | ||
| 541 | # | 563 | # |
| 542 | # I2C support | 564 | # I2C support |
| @@ -589,6 +611,10 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 589 | # CONFIG_USB_ARCH_HAS_OHCI is not set | 611 | # CONFIG_USB_ARCH_HAS_OHCI is not set |
| 590 | 612 | ||
| 591 | # | 613 | # |
| 614 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 615 | # | ||
| 616 | |||
| 617 | # | ||
| 592 | # USB Gadget Support | 618 | # USB Gadget Support |
| 593 | # | 619 | # |
| 594 | # CONFIG_USB_GADGET is not set | 620 | # CONFIG_USB_GADGET is not set |
| @@ -721,6 +747,8 @@ CONFIG_LOG_BUF_SHIFT=14 | |||
| 721 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | 747 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set |
| 722 | # CONFIG_DEBUG_KOBJECT is not set | 748 | # CONFIG_DEBUG_KOBJECT is not set |
| 723 | CONFIG_DEBUG_INFO=y | 749 | CONFIG_DEBUG_INFO=y |
| 750 | # CONFIG_DEBUG_VM is not set | ||
| 751 | # CONFIG_RCU_TORTURE_TEST is not set | ||
| 724 | CONFIG_CROSSCOMPILE=y | 752 | CONFIG_CROSSCOMPILE=y |
| 725 | CONFIG_CMDLINE="nfsroot=192.168.192.169:/u1/mipsel,timeo=20 ip=dhcp" | 753 | CONFIG_CMDLINE="nfsroot=192.168.192.169:/u1/mipsel,timeo=20 ip=dhcp" |
| 726 | # CONFIG_DEBUG_STACK_USAGE is not set | 754 | # CONFIG_DEBUG_STACK_USAGE is not set |
diff --git a/arch/mips/configs/mpc30x_defconfig b/arch/mips/configs/mpc30x_defconfig index e2c082128532..46814be0ac38 100644 --- a/arch/mips/configs/mpc30x_defconfig +++ b/arch/mips/configs/mpc30x_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.15-rc1 |
| 4 | # Thu Oct 20 22:26:28 2005 | 4 | # Tue Nov 15 11:12:01 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -57,6 +57,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 57 | CONFIG_KMOD=y | 57 | CONFIG_KMOD=y |
| 58 | 58 | ||
| 59 | # | 59 | # |
| 60 | # Block layer | ||
| 61 | # | ||
| 62 | # CONFIG_LBD is not set | ||
| 63 | |||
| 64 | # | ||
| 65 | # IO Schedulers | ||
| 66 | # | ||
| 67 | CONFIG_IOSCHED_NOOP=y | ||
| 68 | CONFIG_IOSCHED_AS=y | ||
| 69 | CONFIG_IOSCHED_DEADLINE=y | ||
| 70 | CONFIG_IOSCHED_CFQ=y | ||
| 71 | CONFIG_DEFAULT_AS=y | ||
| 72 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 73 | # CONFIG_DEFAULT_CFQ is not set | ||
| 74 | # CONFIG_DEFAULT_NOOP is not set | ||
| 75 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 76 | |||
| 77 | # | ||
| 60 | # Machine selection | 78 | # Machine selection |
| 61 | # | 79 | # |
| 62 | # CONFIG_MIPS_MTX1 is not set | 80 | # CONFIG_MIPS_MTX1 is not set |
| @@ -182,6 +200,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 182 | CONFIG_FLATMEM=y | 200 | CONFIG_FLATMEM=y |
| 183 | CONFIG_FLAT_NODE_MEM_MAP=y | 201 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 184 | # CONFIG_SPARSEMEM_STATIC is not set | 202 | # CONFIG_SPARSEMEM_STATIC is not set |
| 203 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 185 | CONFIG_PREEMPT_NONE=y | 204 | CONFIG_PREEMPT_NONE=y |
| 186 | # CONFIG_PREEMPT_VOLUNTARY is not set | 205 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 187 | # CONFIG_PREEMPT is not set | 206 | # CONFIG_PREEMPT is not set |
| @@ -210,7 +229,6 @@ CONFIG_PCMCIA_IOCTL=y | |||
| 210 | # CONFIG_YENTA is not set | 229 | # CONFIG_YENTA is not set |
| 211 | # CONFIG_PD6729 is not set | 230 | # CONFIG_PD6729 is not set |
| 212 | # CONFIG_I82092 is not set | 231 | # CONFIG_I82092 is not set |
| 213 | # CONFIG_TCIC is not set | ||
| 214 | CONFIG_PCMCIA_VRC4173=y | 232 | CONFIG_PCMCIA_VRC4173=y |
| 215 | 233 | ||
| 216 | # | 234 | # |
| @@ -281,6 +299,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 281 | # CONFIG_NET_DIVERT is not set | 299 | # CONFIG_NET_DIVERT is not set |
| 282 | # CONFIG_ECONET is not set | 300 | # CONFIG_ECONET is not set |
| 283 | # CONFIG_WAN_ROUTER is not set | 301 | # CONFIG_WAN_ROUTER is not set |
| 302 | |||
| 303 | # | ||
| 304 | # QoS and/or fair queueing | ||
| 305 | # | ||
| 284 | # CONFIG_NET_SCHED is not set | 306 | # CONFIG_NET_SCHED is not set |
| 285 | # CONFIG_NET_CLS_ROUTE is not set | 307 | # CONFIG_NET_CLS_ROUTE is not set |
| 286 | 308 | ||
| @@ -341,16 +363,7 @@ CONFIG_CONNECTOR=m | |||
| 341 | # CONFIG_BLK_DEV_UB is not set | 363 | # CONFIG_BLK_DEV_UB is not set |
| 342 | # CONFIG_BLK_DEV_RAM is not set | 364 | # CONFIG_BLK_DEV_RAM is not set |
| 343 | CONFIG_BLK_DEV_RAM_COUNT=16 | 365 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 344 | # CONFIG_LBD is not set | ||
| 345 | # CONFIG_CDROM_PKTCDVD is not set | 366 | # CONFIG_CDROM_PKTCDVD is not set |
| 346 | |||
| 347 | # | ||
| 348 | # IO Schedulers | ||
| 349 | # | ||
| 350 | CONFIG_IOSCHED_NOOP=y | ||
| 351 | CONFIG_IOSCHED_AS=y | ||
| 352 | CONFIG_IOSCHED_DEADLINE=y | ||
| 353 | CONFIG_IOSCHED_CFQ=y | ||
| 354 | CONFIG_ATA_OVER_ETH=m | 367 | CONFIG_ATA_OVER_ETH=m |
| 355 | 368 | ||
| 356 | # | 369 | # |
| @@ -612,6 +625,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 612 | # CONFIG_WATCHDOG is not set | 625 | # CONFIG_WATCHDOG is not set |
| 613 | # CONFIG_RTC is not set | 626 | # CONFIG_RTC is not set |
| 614 | # CONFIG_GEN_RTC is not set | 627 | # CONFIG_GEN_RTC is not set |
| 628 | # CONFIG_RTC_VR41XX is not set | ||
| 615 | # CONFIG_DTLK is not set | 629 | # CONFIG_DTLK is not set |
| 616 | # CONFIG_R3964 is not set | 630 | # CONFIG_R3964 is not set |
| 617 | # CONFIG_APPLICOM is not set | 631 | # CONFIG_APPLICOM is not set |
| @@ -625,6 +639,8 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 625 | # PCMCIA character devices | 639 | # PCMCIA character devices |
| 626 | # | 640 | # |
| 627 | # CONFIG_SYNCLINK_CS is not set | 641 | # CONFIG_SYNCLINK_CS is not set |
| 642 | # CONFIG_CARDMAN_4000 is not set | ||
| 643 | # CONFIG_CARDMAN_4040 is not set | ||
| 628 | CONFIG_GPIO_VR41XX=y | 644 | CONFIG_GPIO_VR41XX=y |
| 629 | # CONFIG_RAW_DRIVER is not set | 645 | # CONFIG_RAW_DRIVER is not set |
| 630 | 646 | ||
| @@ -632,6 +648,7 @@ CONFIG_GPIO_VR41XX=y | |||
| 632 | # TPM devices | 648 | # TPM devices |
| 633 | # | 649 | # |
| 634 | # CONFIG_TCG_TPM is not set | 650 | # CONFIG_TCG_TPM is not set |
| 651 | # CONFIG_TELCLOCK is not set | ||
| 635 | 652 | ||
| 636 | # | 653 | # |
| 637 | # I2C support | 654 | # I2C support |
| @@ -713,12 +730,15 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y | |||
| 713 | # | 730 | # |
| 714 | # USB Device Class drivers | 731 | # USB Device Class drivers |
| 715 | # | 732 | # |
| 716 | # CONFIG_USB_BLUETOOTH_TTY is not set | ||
| 717 | # CONFIG_USB_ACM is not set | 733 | # CONFIG_USB_ACM is not set |
| 718 | # CONFIG_USB_PRINTER is not set | 734 | # CONFIG_USB_PRINTER is not set |
| 719 | 735 | ||
| 720 | # | 736 | # |
| 721 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' may also be needed; see USB_STORAGE Help for more information | 737 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' |
| 738 | # | ||
| 739 | |||
| 740 | # | ||
| 741 | # may also be needed; see USB_STORAGE Help for more information | ||
| 722 | # | 742 | # |
| 723 | # CONFIG_USB_STORAGE is not set | 743 | # CONFIG_USB_STORAGE is not set |
| 724 | 744 | ||
diff --git a/arch/mips/configs/ocelot_3_defconfig b/arch/mips/configs/ocelot_3_defconfig index f18d05c2ca77..e12118c30db4 100644 --- a/arch/mips/configs/ocelot_3_defconfig +++ b/arch/mips/configs/ocelot_3_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:26:30 2005 | 4 | # Thu Nov 10 14:01:36 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -58,6 +58,24 @@ CONFIG_MODVERSIONS=y | |||
| 58 | CONFIG_KMOD=y | 58 | CONFIG_KMOD=y |
| 59 | 59 | ||
| 60 | # | 60 | # |
| 61 | # Block layer | ||
| 62 | # | ||
| 63 | # CONFIG_LBD is not set | ||
| 64 | |||
| 65 | # | ||
| 66 | # IO Schedulers | ||
| 67 | # | ||
| 68 | CONFIG_IOSCHED_NOOP=y | ||
| 69 | CONFIG_IOSCHED_AS=y | ||
| 70 | CONFIG_IOSCHED_DEADLINE=y | ||
| 71 | CONFIG_IOSCHED_CFQ=y | ||
| 72 | CONFIG_DEFAULT_AS=y | ||
| 73 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 74 | # CONFIG_DEFAULT_CFQ is not set | ||
| 75 | # CONFIG_DEFAULT_NOOP is not set | ||
| 76 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 77 | |||
| 78 | # | ||
| 61 | # Machine selection | 79 | # Machine selection |
| 62 | # | 80 | # |
| 63 | # CONFIG_MIPS_MTX1 is not set | 81 | # CONFIG_MIPS_MTX1 is not set |
| @@ -187,6 +205,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 187 | CONFIG_FLATMEM=y | 205 | CONFIG_FLATMEM=y |
| 188 | CONFIG_FLAT_NODE_MEM_MAP=y | 206 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 189 | # CONFIG_SPARSEMEM_STATIC is not set | 207 | # CONFIG_SPARSEMEM_STATIC is not set |
| 208 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 190 | # CONFIG_SMP is not set | 209 | # CONFIG_SMP is not set |
| 191 | CONFIG_PREEMPT_NONE=y | 210 | CONFIG_PREEMPT_NONE=y |
| 192 | # CONFIG_PREEMPT_VOLUNTARY is not set | 211 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| @@ -265,15 +284,19 @@ CONFIG_IPV6=m | |||
| 265 | # CONFIG_IPV6_TUNNEL is not set | 284 | # CONFIG_IPV6_TUNNEL is not set |
| 266 | CONFIG_NETFILTER=y | 285 | CONFIG_NETFILTER=y |
| 267 | # CONFIG_NETFILTER_DEBUG is not set | 286 | # CONFIG_NETFILTER_DEBUG is not set |
| 287 | |||
| 288 | # | ||
| 289 | # Core Netfilter Configuration | ||
| 290 | # | ||
| 268 | CONFIG_NETFILTER_NETLINK=m | 291 | CONFIG_NETFILTER_NETLINK=m |
| 269 | CONFIG_NETFILTER_NETLINK_QUEUE=m | 292 | CONFIG_NETFILTER_NETLINK_QUEUE=m |
| 270 | CONFIG_NETFILTER_NETLINK_LOG=m | 293 | CONFIG_NETFILTER_NETLINK_LOG=m |
| 294 | # CONFIG_NF_CONNTRACK is not set | ||
| 271 | 295 | ||
| 272 | # | 296 | # |
| 273 | # IP: Netfilter Configuration | 297 | # IP: Netfilter Configuration |
| 274 | # | 298 | # |
| 275 | # CONFIG_IP_NF_CONNTRACK is not set | 299 | # CONFIG_IP_NF_CONNTRACK is not set |
| 276 | CONFIG_IP_NF_PPTP=m | ||
| 277 | # CONFIG_IP_NF_QUEUE is not set | 300 | # CONFIG_IP_NF_QUEUE is not set |
| 278 | # CONFIG_IP_NF_IPTABLES is not set | 301 | # CONFIG_IP_NF_IPTABLES is not set |
| 279 | # CONFIG_IP_NF_ARPTABLES is not set | 302 | # CONFIG_IP_NF_ARPTABLES is not set |
| @@ -305,6 +328,10 @@ CONFIG_IP_NF_PPTP=m | |||
| 305 | # CONFIG_NET_DIVERT is not set | 328 | # CONFIG_NET_DIVERT is not set |
| 306 | # CONFIG_ECONET is not set | 329 | # CONFIG_ECONET is not set |
| 307 | # CONFIG_WAN_ROUTER is not set | 330 | # CONFIG_WAN_ROUTER is not set |
| 331 | |||
| 332 | # | ||
| 333 | # QoS and/or fair queueing | ||
| 334 | # | ||
| 308 | # CONFIG_NET_SCHED is not set | 335 | # CONFIG_NET_SCHED is not set |
| 309 | # CONFIG_NET_CLS_ROUTE is not set | 336 | # CONFIG_NET_CLS_ROUTE is not set |
| 310 | 337 | ||
| @@ -365,16 +392,7 @@ CONFIG_BLK_DEV_LOOP=y | |||
| 365 | # CONFIG_BLK_DEV_SX8 is not set | 392 | # CONFIG_BLK_DEV_SX8 is not set |
| 366 | # CONFIG_BLK_DEV_RAM is not set | 393 | # CONFIG_BLK_DEV_RAM is not set |
| 367 | CONFIG_BLK_DEV_RAM_COUNT=16 | 394 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 368 | # CONFIG_LBD is not set | ||
| 369 | # CONFIG_CDROM_PKTCDVD is not set | 395 | # CONFIG_CDROM_PKTCDVD is not set |
| 370 | |||
| 371 | # | ||
| 372 | # IO Schedulers | ||
| 373 | # | ||
| 374 | CONFIG_IOSCHED_NOOP=y | ||
| 375 | CONFIG_IOSCHED_AS=y | ||
| 376 | CONFIG_IOSCHED_DEADLINE=y | ||
| 377 | CONFIG_IOSCHED_CFQ=y | ||
| 378 | CONFIG_ATA_OVER_ETH=m | 396 | CONFIG_ATA_OVER_ETH=m |
| 379 | 397 | ||
| 380 | # | 398 | # |
| @@ -411,12 +429,13 @@ CONFIG_SCSI_PROC_FS=y | |||
| 411 | # | 429 | # |
| 412 | # CONFIG_SCSI_SPI_ATTRS is not set | 430 | # CONFIG_SCSI_SPI_ATTRS is not set |
| 413 | # CONFIG_SCSI_FC_ATTRS is not set | 431 | # CONFIG_SCSI_FC_ATTRS is not set |
| 414 | # CONFIG_SCSI_ISCSI_ATTRS is not set | 432 | CONFIG_SCSI_ISCSI_ATTRS=m |
| 415 | CONFIG_SCSI_SAS_ATTRS=m | 433 | CONFIG_SCSI_SAS_ATTRS=m |
| 416 | 434 | ||
| 417 | # | 435 | # |
| 418 | # SCSI low-level drivers | 436 | # SCSI low-level drivers |
| 419 | # | 437 | # |
| 438 | CONFIG_ISCSI_TCP=m | ||
| 420 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set | 439 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set |
| 421 | # CONFIG_SCSI_3W_9XXX is not set | 440 | # CONFIG_SCSI_3W_9XXX is not set |
| 422 | # CONFIG_SCSI_ACARD is not set | 441 | # CONFIG_SCSI_ACARD is not set |
| @@ -427,6 +446,7 @@ CONFIG_SCSI_SAS_ATTRS=m | |||
| 427 | # CONFIG_SCSI_DPT_I2O is not set | 446 | # CONFIG_SCSI_DPT_I2O is not set |
| 428 | # CONFIG_MEGARAID_NEWGEN is not set | 447 | # CONFIG_MEGARAID_NEWGEN is not set |
| 429 | # CONFIG_MEGARAID_LEGACY is not set | 448 | # CONFIG_MEGARAID_LEGACY is not set |
| 449 | # CONFIG_MEGARAID_SAS is not set | ||
| 430 | # CONFIG_SCSI_SATA is not set | 450 | # CONFIG_SCSI_SATA is not set |
| 431 | # CONFIG_SCSI_DMX3191D is not set | 451 | # CONFIG_SCSI_DMX3191D is not set |
| 432 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | 452 | # CONFIG_SCSI_FUTURE_DOMAIN is not set |
| @@ -461,6 +481,7 @@ CONFIG_SCSI_QLA2XXX=m | |||
| 461 | # CONFIG_FUSION is not set | 481 | # CONFIG_FUSION is not set |
| 462 | # CONFIG_FUSION_SPI is not set | 482 | # CONFIG_FUSION_SPI is not set |
| 463 | # CONFIG_FUSION_FC is not set | 483 | # CONFIG_FUSION_FC is not set |
| 484 | # CONFIG_FUSION_SAS is not set | ||
| 464 | 485 | ||
| 465 | # | 486 | # |
| 466 | # IEEE 1394 (FireWire) support | 487 | # IEEE 1394 (FireWire) support |
| @@ -490,7 +511,6 @@ CONFIG_TUN=m | |||
| 490 | # PHY device support | 511 | # PHY device support |
| 491 | # | 512 | # |
| 492 | CONFIG_PHYLIB=m | 513 | CONFIG_PHYLIB=m |
| 493 | CONFIG_PHYCONTROL=y | ||
| 494 | 514 | ||
| 495 | # | 515 | # |
| 496 | # MII PHY device drivers | 516 | # MII PHY device drivers |
| @@ -508,6 +528,7 @@ CONFIG_NET_ETHERNET=y | |||
| 508 | CONFIG_MII=y | 528 | CONFIG_MII=y |
| 509 | # CONFIG_HAPPYMEAL is not set | 529 | # CONFIG_HAPPYMEAL is not set |
| 510 | # CONFIG_SUNGEM is not set | 530 | # CONFIG_SUNGEM is not set |
| 531 | # CONFIG_CASSINI is not set | ||
| 511 | # CONFIG_NET_VENDOR_3COM is not set | 532 | # CONFIG_NET_VENDOR_3COM is not set |
| 512 | 533 | ||
| 513 | # | 534 | # |
| @@ -589,6 +610,7 @@ CONFIG_PPP_ASYNC=m | |||
| 589 | CONFIG_PPP_SYNC_TTY=m | 610 | CONFIG_PPP_SYNC_TTY=m |
| 590 | CONFIG_PPP_DEFLATE=m | 611 | CONFIG_PPP_DEFLATE=m |
| 591 | # CONFIG_PPP_BSDCOMP is not set | 612 | # CONFIG_PPP_BSDCOMP is not set |
| 613 | CONFIG_PPP_MPPE=m | ||
| 592 | CONFIG_PPPOE=m | 614 | CONFIG_PPPOE=m |
| 593 | # CONFIG_SLIP is not set | 615 | # CONFIG_SLIP is not set |
| 594 | # CONFIG_NET_FC is not set | 616 | # CONFIG_NET_FC is not set |
| @@ -691,6 +713,7 @@ CONFIG_RTC=y | |||
| 691 | # TPM devices | 713 | # TPM devices |
| 692 | # | 714 | # |
| 693 | # CONFIG_TCG_TPM is not set | 715 | # CONFIG_TCG_TPM is not set |
| 716 | # CONFIG_TELCLOCK is not set | ||
| 694 | 717 | ||
| 695 | # | 718 | # |
| 696 | # I2C support | 719 | # I2C support |
| @@ -733,7 +756,6 @@ CONFIG_FB=y | |||
| 733 | # CONFIG_FB_CFB_FILLRECT is not set | 756 | # CONFIG_FB_CFB_FILLRECT is not set |
| 734 | # CONFIG_FB_CFB_COPYAREA is not set | 757 | # CONFIG_FB_CFB_COPYAREA is not set |
| 735 | # CONFIG_FB_CFB_IMAGEBLIT is not set | 758 | # CONFIG_FB_CFB_IMAGEBLIT is not set |
| 736 | # CONFIG_FB_SOFT_CURSOR is not set | ||
| 737 | # CONFIG_FB_MACMODES is not set | 759 | # CONFIG_FB_MACMODES is not set |
| 738 | CONFIG_FB_MODE_HELPERS=y | 760 | CONFIG_FB_MODE_HELPERS=y |
| 739 | # CONFIG_FB_TILEBLITTING is not set | 761 | # CONFIG_FB_TILEBLITTING is not set |
| @@ -742,6 +764,7 @@ CONFIG_FB_MODE_HELPERS=y | |||
| 742 | # CONFIG_FB_CYBER2000 is not set | 764 | # CONFIG_FB_CYBER2000 is not set |
| 743 | # CONFIG_FB_ASILIANT is not set | 765 | # CONFIG_FB_ASILIANT is not set |
| 744 | # CONFIG_FB_IMSTT is not set | 766 | # CONFIG_FB_IMSTT is not set |
| 767 | # CONFIG_FB_S1D13XXX is not set | ||
| 745 | # CONFIG_FB_NVIDIA is not set | 768 | # CONFIG_FB_NVIDIA is not set |
| 746 | # CONFIG_FB_RIVA is not set | 769 | # CONFIG_FB_RIVA is not set |
| 747 | # CONFIG_FB_MATROX is not set | 770 | # CONFIG_FB_MATROX is not set |
| @@ -758,7 +781,6 @@ CONFIG_FB_MODE_HELPERS=y | |||
| 758 | # CONFIG_FB_SMIVGX is not set | 781 | # CONFIG_FB_SMIVGX is not set |
| 759 | # CONFIG_FB_CYBLA is not set | 782 | # CONFIG_FB_CYBLA is not set |
| 760 | # CONFIG_FB_TRIDENT is not set | 783 | # CONFIG_FB_TRIDENT is not set |
| 761 | # CONFIG_FB_S1D13XXX is not set | ||
| 762 | # CONFIG_FB_VIRTUAL is not set | 784 | # CONFIG_FB_VIRTUAL is not set |
| 763 | 785 | ||
| 764 | # | 786 | # |
| @@ -767,6 +789,7 @@ CONFIG_FB_MODE_HELPERS=y | |||
| 767 | # CONFIG_VGA_CONSOLE is not set | 789 | # CONFIG_VGA_CONSOLE is not set |
| 768 | CONFIG_DUMMY_CONSOLE=y | 790 | CONFIG_DUMMY_CONSOLE=y |
| 769 | CONFIG_FRAMEBUFFER_CONSOLE=y | 791 | CONFIG_FRAMEBUFFER_CONSOLE=y |
| 792 | # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set | ||
| 770 | # CONFIG_FONTS is not set | 793 | # CONFIG_FONTS is not set |
| 771 | CONFIG_FONT_8x8=y | 794 | CONFIG_FONT_8x8=y |
| 772 | CONFIG_FONT_8x16=y | 795 | CONFIG_FONT_8x16=y |
| @@ -793,6 +816,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 793 | # CONFIG_USB is not set | 816 | # CONFIG_USB is not set |
| 794 | 817 | ||
| 795 | # | 818 | # |
| 819 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 820 | # | ||
| 821 | |||
| 822 | # | ||
| 796 | # USB Gadget Support | 823 | # USB Gadget Support |
| 797 | # | 824 | # |
| 798 | # CONFIG_USB_GADGET is not set | 825 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/ocelot_c_defconfig b/arch/mips/configs/ocelot_c_defconfig index d3a5fee02b79..99f0c980aee7 100644 --- a/arch/mips/configs/ocelot_c_defconfig +++ b/arch/mips/configs/ocelot_c_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:26:33 2005 | 4 | # Mon Nov 7 23:06:05 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -51,6 +51,23 @@ CONFIG_BASE_SMALL=0 | |||
| 51 | # CONFIG_MODULES is not set | 51 | # CONFIG_MODULES is not set |
| 52 | 52 | ||
| 53 | # | 53 | # |
| 54 | # Block layer | ||
| 55 | # | ||
| 56 | |||
| 57 | # | ||
| 58 | # IO Schedulers | ||
| 59 | # | ||
| 60 | CONFIG_IOSCHED_NOOP=y | ||
| 61 | CONFIG_IOSCHED_AS=y | ||
| 62 | CONFIG_IOSCHED_DEADLINE=y | ||
| 63 | CONFIG_IOSCHED_CFQ=y | ||
| 64 | CONFIG_DEFAULT_AS=y | ||
| 65 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 66 | # CONFIG_DEFAULT_CFQ is not set | ||
| 67 | # CONFIG_DEFAULT_NOOP is not set | ||
| 68 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 69 | |||
| 70 | # | ||
| 54 | # Machine selection | 71 | # Machine selection |
| 55 | # | 72 | # |
| 56 | # CONFIG_MIPS_MTX1 is not set | 73 | # CONFIG_MIPS_MTX1 is not set |
| @@ -176,6 +193,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 176 | CONFIG_FLATMEM=y | 193 | CONFIG_FLATMEM=y |
| 177 | CONFIG_FLAT_NODE_MEM_MAP=y | 194 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 178 | # CONFIG_SPARSEMEM_STATIC is not set | 195 | # CONFIG_SPARSEMEM_STATIC is not set |
| 196 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 179 | CONFIG_PREEMPT_NONE=y | 197 | CONFIG_PREEMPT_NONE=y |
| 180 | # CONFIG_PREEMPT_VOLUNTARY is not set | 198 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 181 | # CONFIG_PREEMPT is not set | 199 | # CONFIG_PREEMPT is not set |
| @@ -267,6 +285,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 267 | # CONFIG_NET_DIVERT is not set | 285 | # CONFIG_NET_DIVERT is not set |
| 268 | # CONFIG_ECONET is not set | 286 | # CONFIG_ECONET is not set |
| 269 | # CONFIG_WAN_ROUTER is not set | 287 | # CONFIG_WAN_ROUTER is not set |
| 288 | |||
| 289 | # | ||
| 290 | # QoS and/or fair queueing | ||
| 291 | # | ||
| 270 | # CONFIG_NET_SCHED is not set | 292 | # CONFIG_NET_SCHED is not set |
| 271 | # CONFIG_NET_CLS_ROUTE is not set | 293 | # CONFIG_NET_CLS_ROUTE is not set |
| 272 | 294 | ||
| @@ -298,6 +320,7 @@ CONFIG_FW_LOADER=y | |||
| 298 | # Connector - unified userspace <-> kernelspace linker | 320 | # Connector - unified userspace <-> kernelspace linker |
| 299 | # | 321 | # |
| 300 | CONFIG_CONNECTOR=y | 322 | CONFIG_CONNECTOR=y |
| 323 | CONFIG_PROC_EVENTS=y | ||
| 301 | 324 | ||
| 302 | # | 325 | # |
| 303 | # Memory Technology Devices (MTD) | 326 | # Memory Technology Devices (MTD) |
| @@ -329,14 +352,6 @@ CONFIG_BLK_DEV_RAM_COUNT=16 | |||
| 329 | CONFIG_CDROM_PKTCDVD=y | 352 | CONFIG_CDROM_PKTCDVD=y |
| 330 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 353 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 331 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 354 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 332 | |||
| 333 | # | ||
| 334 | # IO Schedulers | ||
| 335 | # | ||
| 336 | CONFIG_IOSCHED_NOOP=y | ||
| 337 | CONFIG_IOSCHED_AS=y | ||
| 338 | CONFIG_IOSCHED_DEADLINE=y | ||
| 339 | CONFIG_IOSCHED_CFQ=y | ||
| 340 | CONFIG_ATA_OVER_ETH=y | 355 | CONFIG_ATA_OVER_ETH=y |
| 341 | 356 | ||
| 342 | # | 357 | # |
| @@ -388,7 +403,6 @@ CONFIG_NETDEVICES=y | |||
| 388 | # PHY device support | 403 | # PHY device support |
| 389 | # | 404 | # |
| 390 | CONFIG_PHYLIB=y | 405 | CONFIG_PHYLIB=y |
| 391 | CONFIG_PHYCONTROL=y | ||
| 392 | 406 | ||
| 393 | # | 407 | # |
| 394 | # MII PHY device drivers | 408 | # MII PHY device drivers |
| @@ -406,6 +420,7 @@ CONFIG_NET_ETHERNET=y | |||
| 406 | # CONFIG_MII is not set | 420 | # CONFIG_MII is not set |
| 407 | # CONFIG_HAPPYMEAL is not set | 421 | # CONFIG_HAPPYMEAL is not set |
| 408 | # CONFIG_SUNGEM is not set | 422 | # CONFIG_SUNGEM is not set |
| 423 | # CONFIG_CASSINI is not set | ||
| 409 | # CONFIG_NET_VENDOR_3COM is not set | 424 | # CONFIG_NET_VENDOR_3COM is not set |
| 410 | 425 | ||
| 411 | # | 426 | # |
| @@ -562,6 +577,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 562 | # TPM devices | 577 | # TPM devices |
| 563 | # | 578 | # |
| 564 | # CONFIG_TCG_TPM is not set | 579 | # CONFIG_TCG_TPM is not set |
| 580 | # CONFIG_TELCLOCK is not set | ||
| 565 | 581 | ||
| 566 | # | 582 | # |
| 567 | # I2C support | 583 | # I2C support |
| @@ -621,6 +637,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 621 | # CONFIG_USB is not set | 637 | # CONFIG_USB is not set |
| 622 | 638 | ||
| 623 | # | 639 | # |
| 640 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 641 | # | ||
| 642 | |||
| 643 | # | ||
| 624 | # USB Gadget Support | 644 | # USB Gadget Support |
| 625 | # | 645 | # |
| 626 | # CONFIG_USB_GADGET is not set | 646 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/ocelot_defconfig b/arch/mips/configs/ocelot_defconfig index 1edde12ebff9..11c7d74ee1e5 100644 --- a/arch/mips/configs/ocelot_defconfig +++ b/arch/mips/configs/ocelot_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:26:35 2005 | 4 | # Mon Nov 7 23:06:08 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -51,6 +51,24 @@ CONFIG_BASE_SMALL=0 | |||
| 51 | # CONFIG_MODULES is not set | 51 | # CONFIG_MODULES is not set |
| 52 | 52 | ||
| 53 | # | 53 | # |
| 54 | # Block layer | ||
| 55 | # | ||
| 56 | # CONFIG_LBD is not set | ||
| 57 | |||
| 58 | # | ||
| 59 | # IO Schedulers | ||
| 60 | # | ||
| 61 | CONFIG_IOSCHED_NOOP=y | ||
| 62 | CONFIG_IOSCHED_AS=y | ||
| 63 | CONFIG_IOSCHED_DEADLINE=y | ||
| 64 | CONFIG_IOSCHED_CFQ=y | ||
| 65 | CONFIG_DEFAULT_AS=y | ||
| 66 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 67 | # CONFIG_DEFAULT_CFQ is not set | ||
| 68 | # CONFIG_DEFAULT_NOOP is not set | ||
| 69 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 70 | |||
| 71 | # | ||
| 54 | # Machine selection | 72 | # Machine selection |
| 55 | # | 73 | # |
| 56 | # CONFIG_MIPS_MTX1 is not set | 74 | # CONFIG_MIPS_MTX1 is not set |
| @@ -181,6 +199,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 181 | CONFIG_FLATMEM=y | 199 | CONFIG_FLATMEM=y |
| 182 | CONFIG_FLAT_NODE_MEM_MAP=y | 200 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 183 | # CONFIG_SPARSEMEM_STATIC is not set | 201 | # CONFIG_SPARSEMEM_STATIC is not set |
| 202 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 184 | CONFIG_PREEMPT_NONE=y | 203 | CONFIG_PREEMPT_NONE=y |
| 185 | # CONFIG_PREEMPT_VOLUNTARY is not set | 204 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 186 | # CONFIG_PREEMPT is not set | 205 | # CONFIG_PREEMPT is not set |
| @@ -265,6 +284,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 265 | # CONFIG_NET_DIVERT is not set | 284 | # CONFIG_NET_DIVERT is not set |
| 266 | # CONFIG_ECONET is not set | 285 | # CONFIG_ECONET is not set |
| 267 | # CONFIG_WAN_ROUTER is not set | 286 | # CONFIG_WAN_ROUTER is not set |
| 287 | |||
| 288 | # | ||
| 289 | # QoS and/or fair queueing | ||
| 290 | # | ||
| 268 | # CONFIG_NET_SCHED is not set | 291 | # CONFIG_NET_SCHED is not set |
| 269 | # CONFIG_NET_CLS_ROUTE is not set | 292 | # CONFIG_NET_CLS_ROUTE is not set |
| 270 | 293 | ||
| @@ -296,6 +319,7 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y | |||
| 296 | # Connector - unified userspace <-> kernelspace linker | 319 | # Connector - unified userspace <-> kernelspace linker |
| 297 | # | 320 | # |
| 298 | CONFIG_CONNECTOR=y | 321 | CONFIG_CONNECTOR=y |
| 322 | CONFIG_PROC_EVENTS=y | ||
| 299 | 323 | ||
| 300 | # | 324 | # |
| 301 | # Memory Technology Devices (MTD) | 325 | # Memory Technology Devices (MTD) |
| @@ -319,18 +343,9 @@ CONFIG_CONNECTOR=y | |||
| 319 | # CONFIG_BLK_DEV_NBD is not set | 343 | # CONFIG_BLK_DEV_NBD is not set |
| 320 | # CONFIG_BLK_DEV_RAM is not set | 344 | # CONFIG_BLK_DEV_RAM is not set |
| 321 | CONFIG_BLK_DEV_RAM_COUNT=16 | 345 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 322 | # CONFIG_LBD is not set | ||
| 323 | CONFIG_CDROM_PKTCDVD=y | 346 | CONFIG_CDROM_PKTCDVD=y |
| 324 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 347 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 325 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 348 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 326 | |||
| 327 | # | ||
| 328 | # IO Schedulers | ||
| 329 | # | ||
| 330 | CONFIG_IOSCHED_NOOP=y | ||
| 331 | CONFIG_IOSCHED_AS=y | ||
| 332 | CONFIG_IOSCHED_DEADLINE=y | ||
| 333 | CONFIG_IOSCHED_CFQ=y | ||
| 334 | CONFIG_ATA_OVER_ETH=y | 349 | CONFIG_ATA_OVER_ETH=y |
| 335 | 350 | ||
| 336 | # | 351 | # |
| @@ -375,7 +390,6 @@ CONFIG_NETDEVICES=y | |||
| 375 | # PHY device support | 390 | # PHY device support |
| 376 | # | 391 | # |
| 377 | CONFIG_PHYLIB=y | 392 | CONFIG_PHYLIB=y |
| 378 | CONFIG_PHYCONTROL=y | ||
| 379 | 393 | ||
| 380 | # | 394 | # |
| 381 | # MII PHY device drivers | 395 | # MII PHY device drivers |
| @@ -513,6 +527,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 513 | # | 527 | # |
| 514 | # TPM devices | 528 | # TPM devices |
| 515 | # | 529 | # |
| 530 | # CONFIG_TELCLOCK is not set | ||
| 516 | 531 | ||
| 517 | # | 532 | # |
| 518 | # I2C support | 533 | # I2C support |
| @@ -571,6 +586,10 @@ CONFIG_DUMMY_CONSOLE=y | |||
| 571 | # CONFIG_USB_ARCH_HAS_OHCI is not set | 586 | # CONFIG_USB_ARCH_HAS_OHCI is not set |
| 572 | 587 | ||
| 573 | # | 588 | # |
| 589 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 590 | # | ||
| 591 | |||
| 592 | # | ||
| 574 | # USB Gadget Support | 593 | # USB Gadget Support |
| 575 | # | 594 | # |
| 576 | # CONFIG_USB_GADGET is not set | 595 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/ocelot_g_defconfig b/arch/mips/configs/ocelot_g_defconfig index e2d5188cdc15..9ced1a9029d4 100644 --- a/arch/mips/configs/ocelot_g_defconfig +++ b/arch/mips/configs/ocelot_g_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:26:38 2005 | 4 | # Mon Nov 7 23:06:11 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -51,6 +51,23 @@ CONFIG_BASE_SMALL=0 | |||
| 51 | # CONFIG_MODULES is not set | 51 | # CONFIG_MODULES is not set |
| 52 | 52 | ||
| 53 | # | 53 | # |
| 54 | # Block layer | ||
| 55 | # | ||
| 56 | |||
| 57 | # | ||
| 58 | # IO Schedulers | ||
| 59 | # | ||
| 60 | CONFIG_IOSCHED_NOOP=y | ||
| 61 | CONFIG_IOSCHED_AS=y | ||
| 62 | CONFIG_IOSCHED_DEADLINE=y | ||
| 63 | CONFIG_IOSCHED_CFQ=y | ||
| 64 | CONFIG_DEFAULT_AS=y | ||
| 65 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 66 | # CONFIG_DEFAULT_CFQ is not set | ||
| 67 | # CONFIG_DEFAULT_NOOP is not set | ||
| 68 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 69 | |||
| 70 | # | ||
| 54 | # Machine selection | 71 | # Machine selection |
| 55 | # | 72 | # |
| 56 | # CONFIG_MIPS_MTX1 is not set | 73 | # CONFIG_MIPS_MTX1 is not set |
| @@ -179,6 +196,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 179 | CONFIG_FLATMEM=y | 196 | CONFIG_FLATMEM=y |
| 180 | CONFIG_FLAT_NODE_MEM_MAP=y | 197 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 181 | # CONFIG_SPARSEMEM_STATIC is not set | 198 | # CONFIG_SPARSEMEM_STATIC is not set |
| 199 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 182 | CONFIG_PREEMPT_NONE=y | 200 | CONFIG_PREEMPT_NONE=y |
| 183 | # CONFIG_PREEMPT_VOLUNTARY is not set | 201 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 184 | # CONFIG_PREEMPT is not set | 202 | # CONFIG_PREEMPT is not set |
| @@ -270,6 +288,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 270 | # CONFIG_NET_DIVERT is not set | 288 | # CONFIG_NET_DIVERT is not set |
| 271 | # CONFIG_ECONET is not set | 289 | # CONFIG_ECONET is not set |
| 272 | # CONFIG_WAN_ROUTER is not set | 290 | # CONFIG_WAN_ROUTER is not set |
| 291 | |||
| 292 | # | ||
| 293 | # QoS and/or fair queueing | ||
| 294 | # | ||
| 273 | # CONFIG_NET_SCHED is not set | 295 | # CONFIG_NET_SCHED is not set |
| 274 | # CONFIG_NET_CLS_ROUTE is not set | 296 | # CONFIG_NET_CLS_ROUTE is not set |
| 275 | 297 | ||
| @@ -301,6 +323,7 @@ CONFIG_FW_LOADER=y | |||
| 301 | # Connector - unified userspace <-> kernelspace linker | 323 | # Connector - unified userspace <-> kernelspace linker |
| 302 | # | 324 | # |
| 303 | CONFIG_CONNECTOR=y | 325 | CONFIG_CONNECTOR=y |
| 326 | CONFIG_PROC_EVENTS=y | ||
| 304 | 327 | ||
| 305 | # | 328 | # |
| 306 | # Memory Technology Devices (MTD) | 329 | # Memory Technology Devices (MTD) |
| @@ -332,14 +355,6 @@ CONFIG_BLK_DEV_RAM_COUNT=16 | |||
| 332 | CONFIG_CDROM_PKTCDVD=y | 355 | CONFIG_CDROM_PKTCDVD=y |
| 333 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 356 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 334 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 357 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 335 | |||
| 336 | # | ||
| 337 | # IO Schedulers | ||
| 338 | # | ||
| 339 | CONFIG_IOSCHED_NOOP=y | ||
| 340 | CONFIG_IOSCHED_AS=y | ||
| 341 | CONFIG_IOSCHED_DEADLINE=y | ||
| 342 | CONFIG_IOSCHED_CFQ=y | ||
| 343 | CONFIG_ATA_OVER_ETH=y | 358 | CONFIG_ATA_OVER_ETH=y |
| 344 | 359 | ||
| 345 | # | 360 | # |
| @@ -391,7 +406,6 @@ CONFIG_NETDEVICES=y | |||
| 391 | # PHY device support | 406 | # PHY device support |
| 392 | # | 407 | # |
| 393 | CONFIG_PHYLIB=y | 408 | CONFIG_PHYLIB=y |
| 394 | CONFIG_PHYCONTROL=y | ||
| 395 | 409 | ||
| 396 | # | 410 | # |
| 397 | # MII PHY device drivers | 411 | # MII PHY device drivers |
| @@ -410,6 +424,7 @@ CONFIG_MII=y | |||
| 410 | CONFIG_GALILEO_64240_ETH=y | 424 | CONFIG_GALILEO_64240_ETH=y |
| 411 | # CONFIG_HAPPYMEAL is not set | 425 | # CONFIG_HAPPYMEAL is not set |
| 412 | # CONFIG_SUNGEM is not set | 426 | # CONFIG_SUNGEM is not set |
| 427 | # CONFIG_CASSINI is not set | ||
| 413 | # CONFIG_NET_VENDOR_3COM is not set | 428 | # CONFIG_NET_VENDOR_3COM is not set |
| 414 | 429 | ||
| 415 | # | 430 | # |
| @@ -565,6 +580,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 565 | # TPM devices | 580 | # TPM devices |
| 566 | # | 581 | # |
| 567 | # CONFIG_TCG_TPM is not set | 582 | # CONFIG_TCG_TPM is not set |
| 583 | # CONFIG_TELCLOCK is not set | ||
| 568 | 584 | ||
| 569 | # | 585 | # |
| 570 | # I2C support | 586 | # I2C support |
| @@ -624,6 +640,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 624 | # CONFIG_USB is not set | 640 | # CONFIG_USB is not set |
| 625 | 641 | ||
| 626 | # | 642 | # |
| 643 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 644 | # | ||
| 645 | |||
| 646 | # | ||
| 627 | # USB Gadget Support | 647 | # USB Gadget Support |
| 628 | # | 648 | # |
| 629 | # CONFIG_USB_GADGET is not set | 649 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/pb1100_defconfig b/arch/mips/configs/pb1100_defconfig index 47247addee1b..dbcaa77add7c 100644 --- a/arch/mips/configs/pb1100_defconfig +++ b/arch/mips/configs/pb1100_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.15-rc1 |
| 4 | # Thu Oct 20 22:26:41 2005 | 4 | # Tue Nov 15 11:12:31 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -57,6 +57,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 57 | CONFIG_KMOD=y | 57 | CONFIG_KMOD=y |
| 58 | 58 | ||
| 59 | # | 59 | # |
| 60 | # Block layer | ||
| 61 | # | ||
| 62 | # CONFIG_LBD is not set | ||
| 63 | |||
| 64 | # | ||
| 65 | # IO Schedulers | ||
| 66 | # | ||
| 67 | CONFIG_IOSCHED_NOOP=y | ||
| 68 | CONFIG_IOSCHED_AS=y | ||
| 69 | CONFIG_IOSCHED_DEADLINE=y | ||
| 70 | CONFIG_IOSCHED_CFQ=y | ||
| 71 | CONFIG_DEFAULT_AS=y | ||
| 72 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 73 | # CONFIG_DEFAULT_CFQ is not set | ||
| 74 | # CONFIG_DEFAULT_NOOP is not set | ||
| 75 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 76 | |||
| 77 | # | ||
| 60 | # Machine selection | 78 | # Machine selection |
| 61 | # | 79 | # |
| 62 | # CONFIG_MIPS_MTX1 is not set | 80 | # CONFIG_MIPS_MTX1 is not set |
| @@ -180,6 +198,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 180 | CONFIG_FLATMEM=y | 198 | CONFIG_FLATMEM=y |
| 181 | CONFIG_FLAT_NODE_MEM_MAP=y | 199 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 182 | # CONFIG_SPARSEMEM_STATIC is not set | 200 | # CONFIG_SPARSEMEM_STATIC is not set |
| 201 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 183 | CONFIG_PREEMPT_NONE=y | 202 | CONFIG_PREEMPT_NONE=y |
| 184 | # CONFIG_PREEMPT_VOLUNTARY is not set | 203 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 185 | # CONFIG_PREEMPT is not set | 204 | # CONFIG_PREEMPT is not set |
| @@ -203,7 +222,6 @@ CONFIG_PCMCIA_IOCTL=y | |||
| 203 | # | 222 | # |
| 204 | # PC-card bridges | 223 | # PC-card bridges |
| 205 | # | 224 | # |
| 206 | # CONFIG_TCIC is not set | ||
| 207 | # CONFIG_PCMCIA_AU1X00 is not set | 225 | # CONFIG_PCMCIA_AU1X00 is not set |
| 208 | 226 | ||
| 209 | # | 227 | # |
| @@ -261,15 +279,19 @@ CONFIG_TCP_CONG_BIC=y | |||
| 261 | # CONFIG_IPV6 is not set | 279 | # CONFIG_IPV6 is not set |
| 262 | CONFIG_NETFILTER=y | 280 | CONFIG_NETFILTER=y |
| 263 | # CONFIG_NETFILTER_DEBUG is not set | 281 | # CONFIG_NETFILTER_DEBUG is not set |
| 282 | |||
| 283 | # | ||
| 284 | # Core Netfilter Configuration | ||
| 285 | # | ||
| 264 | CONFIG_NETFILTER_NETLINK=m | 286 | CONFIG_NETFILTER_NETLINK=m |
| 265 | CONFIG_NETFILTER_NETLINK_QUEUE=m | 287 | CONFIG_NETFILTER_NETLINK_QUEUE=m |
| 266 | CONFIG_NETFILTER_NETLINK_LOG=m | 288 | CONFIG_NETFILTER_NETLINK_LOG=m |
| 289 | # CONFIG_NF_CONNTRACK is not set | ||
| 267 | 290 | ||
| 268 | # | 291 | # |
| 269 | # IP: Netfilter Configuration | 292 | # IP: Netfilter Configuration |
| 270 | # | 293 | # |
| 271 | # CONFIG_IP_NF_CONNTRACK is not set | 294 | # CONFIG_IP_NF_CONNTRACK is not set |
| 272 | CONFIG_IP_NF_PPTP=m | ||
| 273 | # CONFIG_IP_NF_QUEUE is not set | 295 | # CONFIG_IP_NF_QUEUE is not set |
| 274 | # CONFIG_IP_NF_IPTABLES is not set | 296 | # CONFIG_IP_NF_IPTABLES is not set |
| 275 | # CONFIG_IP_NF_ARPTABLES is not set | 297 | # CONFIG_IP_NF_ARPTABLES is not set |
| @@ -295,6 +317,10 @@ CONFIG_IP_NF_PPTP=m | |||
| 295 | # CONFIG_NET_DIVERT is not set | 317 | # CONFIG_NET_DIVERT is not set |
| 296 | # CONFIG_ECONET is not set | 318 | # CONFIG_ECONET is not set |
| 297 | # CONFIG_WAN_ROUTER is not set | 319 | # CONFIG_WAN_ROUTER is not set |
| 320 | |||
| 321 | # | ||
| 322 | # QoS and/or fair queueing | ||
| 323 | # | ||
| 298 | # CONFIG_NET_SCHED is not set | 324 | # CONFIG_NET_SCHED is not set |
| 299 | # CONFIG_NET_CLS_ROUTE is not set | 325 | # CONFIG_NET_CLS_ROUTE is not set |
| 300 | 326 | ||
| @@ -345,6 +371,7 @@ CONFIG_MTD_BLOCK=y | |||
| 345 | # CONFIG_FTL is not set | 371 | # CONFIG_FTL is not set |
| 346 | # CONFIG_NFTL is not set | 372 | # CONFIG_NFTL is not set |
| 347 | # CONFIG_INFTL is not set | 373 | # CONFIG_INFTL is not set |
| 374 | # CONFIG_RFD_FTL is not set | ||
| 348 | 375 | ||
| 349 | # | 376 | # |
| 350 | # RAM/ROM/Flash chip drivers | 377 | # RAM/ROM/Flash chip drivers |
| @@ -402,6 +429,11 @@ CONFIG_MTD_ALCHEMY=y | |||
| 402 | # CONFIG_MTD_NAND is not set | 429 | # CONFIG_MTD_NAND is not set |
| 403 | 430 | ||
| 404 | # | 431 | # |
| 432 | # OneNAND Flash Device Drivers | ||
| 433 | # | ||
| 434 | # CONFIG_MTD_ONENAND is not set | ||
| 435 | |||
| 436 | # | ||
| 405 | # Parallel port support | 437 | # Parallel port support |
| 406 | # | 438 | # |
| 407 | # CONFIG_PARPORT is not set | 439 | # CONFIG_PARPORT is not set |
| @@ -419,18 +451,9 @@ CONFIG_BLK_DEV_LOOP=y | |||
| 419 | # CONFIG_BLK_DEV_NBD is not set | 451 | # CONFIG_BLK_DEV_NBD is not set |
| 420 | # CONFIG_BLK_DEV_RAM is not set | 452 | # CONFIG_BLK_DEV_RAM is not set |
| 421 | CONFIG_BLK_DEV_RAM_COUNT=16 | 453 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 422 | # CONFIG_LBD is not set | ||
| 423 | CONFIG_CDROM_PKTCDVD=m | 454 | CONFIG_CDROM_PKTCDVD=m |
| 424 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 455 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 425 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 456 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 426 | |||
| 427 | # | ||
| 428 | # IO Schedulers | ||
| 429 | # | ||
| 430 | CONFIG_IOSCHED_NOOP=y | ||
| 431 | CONFIG_IOSCHED_AS=y | ||
| 432 | CONFIG_IOSCHED_DEADLINE=y | ||
| 433 | CONFIG_IOSCHED_CFQ=y | ||
| 434 | CONFIG_ATA_OVER_ETH=m | 457 | CONFIG_ATA_OVER_ETH=m |
| 435 | 458 | ||
| 436 | # | 459 | # |
| @@ -475,7 +498,6 @@ CONFIG_NETDEVICES=y | |||
| 475 | # PHY device support | 498 | # PHY device support |
| 476 | # | 499 | # |
| 477 | CONFIG_PHYLIB=m | 500 | CONFIG_PHYLIB=m |
| 478 | CONFIG_PHYCONTROL=y | ||
| 479 | 501 | ||
| 480 | # | 502 | # |
| 481 | # MII PHY device drivers | 503 | # MII PHY device drivers |
| @@ -492,6 +514,7 @@ CONFIG_CICADA_PHY=m | |||
| 492 | CONFIG_NET_ETHERNET=y | 514 | CONFIG_NET_ETHERNET=y |
| 493 | # CONFIG_MII is not set | 515 | # CONFIG_MII is not set |
| 494 | # CONFIG_MIPS_AU1X00_ENET is not set | 516 | # CONFIG_MIPS_AU1X00_ENET is not set |
| 517 | # CONFIG_SMC91X is not set | ||
| 495 | 518 | ||
| 496 | # | 519 | # |
| 497 | # Ethernet (1000 Mbit) | 520 | # Ethernet (1000 Mbit) |
| @@ -526,6 +549,7 @@ CONFIG_PPP_ASYNC=m | |||
| 526 | # CONFIG_PPP_SYNC_TTY is not set | 549 | # CONFIG_PPP_SYNC_TTY is not set |
| 527 | CONFIG_PPP_DEFLATE=m | 550 | CONFIG_PPP_DEFLATE=m |
| 528 | # CONFIG_PPP_BSDCOMP is not set | 551 | # CONFIG_PPP_BSDCOMP is not set |
| 552 | CONFIG_PPP_MPPE=m | ||
| 529 | CONFIG_PPPOE=m | 553 | CONFIG_PPPOE=m |
| 530 | # CONFIG_SLIP is not set | 554 | # CONFIG_SLIP is not set |
| 531 | # CONFIG_SHAPER is not set | 555 | # CONFIG_SHAPER is not set |
| @@ -592,12 +616,19 @@ CONFIG_HW_CONSOLE=y | |||
| 592 | # | 616 | # |
| 593 | # Serial drivers | 617 | # Serial drivers |
| 594 | # | 618 | # |
| 595 | # CONFIG_SERIAL_8250 is not set | 619 | CONFIG_SERIAL_8250=y |
| 620 | CONFIG_SERIAL_8250_CONSOLE=y | ||
| 621 | # CONFIG_SERIAL_8250_CS is not set | ||
| 622 | CONFIG_SERIAL_8250_NR_UARTS=4 | ||
| 623 | # CONFIG_SERIAL_8250_EXTENDED is not set | ||
| 624 | CONFIG_SERIAL_8250_AU1X00=y | ||
| 596 | 625 | ||
| 597 | # | 626 | # |
| 598 | # Non-8250 serial port support | 627 | # Non-8250 serial port support |
| 599 | # | 628 | # |
| 600 | # CONFIG_SERIAL_AU1X00 is not set | 629 | # CONFIG_SERIAL_AU1X00 is not set |
| 630 | CONFIG_SERIAL_CORE=y | ||
| 631 | CONFIG_SERIAL_CORE_CONSOLE=y | ||
| 601 | CONFIG_UNIX98_PTYS=y | 632 | CONFIG_UNIX98_PTYS=y |
| 602 | CONFIG_LEGACY_PTYS=y | 633 | CONFIG_LEGACY_PTYS=y |
| 603 | CONFIG_LEGACY_PTY_COUNT=256 | 634 | CONFIG_LEGACY_PTY_COUNT=256 |
| @@ -624,11 +655,14 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 624 | # PCMCIA character devices | 655 | # PCMCIA character devices |
| 625 | # | 656 | # |
| 626 | CONFIG_SYNCLINK_CS=m | 657 | CONFIG_SYNCLINK_CS=m |
| 658 | # CONFIG_CARDMAN_4000 is not set | ||
| 659 | # CONFIG_CARDMAN_4040 is not set | ||
| 627 | # CONFIG_RAW_DRIVER is not set | 660 | # CONFIG_RAW_DRIVER is not set |
| 628 | 661 | ||
| 629 | # | 662 | # |
| 630 | # TPM devices | 663 | # TPM devices |
| 631 | # | 664 | # |
| 665 | # CONFIG_TELCLOCK is not set | ||
| 632 | 666 | ||
| 633 | # | 667 | # |
| 634 | # I2C support | 668 | # I2C support |
| @@ -688,6 +722,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 688 | # CONFIG_USB is not set | 722 | # CONFIG_USB is not set |
| 689 | 723 | ||
| 690 | # | 724 | # |
| 725 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 726 | # | ||
| 727 | |||
| 728 | # | ||
| 691 | # USB Gadget Support | 729 | # USB Gadget Support |
| 692 | # | 730 | # |
| 693 | # CONFIG_USB_GADGET is not set | 731 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/pb1500_defconfig b/arch/mips/configs/pb1500_defconfig index f91a4eaae51a..5b685ceb6fde 100644 --- a/arch/mips/configs/pb1500_defconfig +++ b/arch/mips/configs/pb1500_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.15-rc1 |
| 4 | # Thu Oct 20 22:26:44 2005 | 4 | # Tue Nov 15 11:14:25 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -57,6 +57,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 57 | CONFIG_KMOD=y | 57 | CONFIG_KMOD=y |
| 58 | 58 | ||
| 59 | # | 59 | # |
| 60 | # Block layer | ||
| 61 | # | ||
| 62 | # CONFIG_LBD is not set | ||
| 63 | |||
| 64 | # | ||
| 65 | # IO Schedulers | ||
| 66 | # | ||
| 67 | CONFIG_IOSCHED_NOOP=y | ||
| 68 | CONFIG_IOSCHED_AS=y | ||
| 69 | CONFIG_IOSCHED_DEADLINE=y | ||
| 70 | CONFIG_IOSCHED_CFQ=y | ||
| 71 | CONFIG_DEFAULT_AS=y | ||
| 72 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 73 | # CONFIG_DEFAULT_CFQ is not set | ||
| 74 | # CONFIG_DEFAULT_NOOP is not set | ||
| 75 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 76 | |||
| 77 | # | ||
| 60 | # Machine selection | 78 | # Machine selection |
| 61 | # | 79 | # |
| 62 | # CONFIG_MIPS_MTX1 is not set | 80 | # CONFIG_MIPS_MTX1 is not set |
| @@ -179,6 +197,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 179 | CONFIG_FLATMEM=y | 197 | CONFIG_FLATMEM=y |
| 180 | CONFIG_FLAT_NODE_MEM_MAP=y | 198 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 181 | # CONFIG_SPARSEMEM_STATIC is not set | 199 | # CONFIG_SPARSEMEM_STATIC is not set |
| 200 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 182 | CONFIG_PREEMPT_NONE=y | 201 | CONFIG_PREEMPT_NONE=y |
| 183 | # CONFIG_PREEMPT_VOLUNTARY is not set | 202 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 184 | # CONFIG_PREEMPT is not set | 203 | # CONFIG_PREEMPT is not set |
| @@ -207,7 +226,6 @@ CONFIG_CARDBUS=y | |||
| 207 | # CONFIG_YENTA is not set | 226 | # CONFIG_YENTA is not set |
| 208 | CONFIG_PD6729=m | 227 | CONFIG_PD6729=m |
| 209 | # CONFIG_I82092 is not set | 228 | # CONFIG_I82092 is not set |
| 210 | # CONFIG_TCIC is not set | ||
| 211 | # CONFIG_PCMCIA_AU1X00 is not set | 229 | # CONFIG_PCMCIA_AU1X00 is not set |
| 212 | CONFIG_PCCARD_NONSTATIC=m | 230 | CONFIG_PCCARD_NONSTATIC=m |
| 213 | 231 | ||
| @@ -267,15 +285,19 @@ CONFIG_TCP_CONG_BIC=y | |||
| 267 | # CONFIG_IPV6 is not set | 285 | # CONFIG_IPV6 is not set |
| 268 | CONFIG_NETFILTER=y | 286 | CONFIG_NETFILTER=y |
| 269 | # CONFIG_NETFILTER_DEBUG is not set | 287 | # CONFIG_NETFILTER_DEBUG is not set |
| 288 | |||
| 289 | # | ||
| 290 | # Core Netfilter Configuration | ||
| 291 | # | ||
| 270 | CONFIG_NETFILTER_NETLINK=m | 292 | CONFIG_NETFILTER_NETLINK=m |
| 271 | CONFIG_NETFILTER_NETLINK_QUEUE=m | 293 | CONFIG_NETFILTER_NETLINK_QUEUE=m |
| 272 | CONFIG_NETFILTER_NETLINK_LOG=m | 294 | CONFIG_NETFILTER_NETLINK_LOG=m |
| 295 | # CONFIG_NF_CONNTRACK is not set | ||
| 273 | 296 | ||
| 274 | # | 297 | # |
| 275 | # IP: Netfilter Configuration | 298 | # IP: Netfilter Configuration |
| 276 | # | 299 | # |
| 277 | # CONFIG_IP_NF_CONNTRACK is not set | 300 | # CONFIG_IP_NF_CONNTRACK is not set |
| 278 | CONFIG_IP_NF_PPTP=m | ||
| 279 | # CONFIG_IP_NF_QUEUE is not set | 301 | # CONFIG_IP_NF_QUEUE is not set |
| 280 | # CONFIG_IP_NF_IPTABLES is not set | 302 | # CONFIG_IP_NF_IPTABLES is not set |
| 281 | # CONFIG_IP_NF_ARPTABLES is not set | 303 | # CONFIG_IP_NF_ARPTABLES is not set |
| @@ -301,6 +323,10 @@ CONFIG_IP_NF_PPTP=m | |||
| 301 | # CONFIG_NET_DIVERT is not set | 323 | # CONFIG_NET_DIVERT is not set |
| 302 | # CONFIG_ECONET is not set | 324 | # CONFIG_ECONET is not set |
| 303 | # CONFIG_WAN_ROUTER is not set | 325 | # CONFIG_WAN_ROUTER is not set |
| 326 | |||
| 327 | # | ||
| 328 | # QoS and/or fair queueing | ||
| 329 | # | ||
| 304 | # CONFIG_NET_SCHED is not set | 330 | # CONFIG_NET_SCHED is not set |
| 305 | # CONFIG_NET_CLS_ROUTE is not set | 331 | # CONFIG_NET_CLS_ROUTE is not set |
| 306 | 332 | ||
| @@ -351,6 +377,7 @@ CONFIG_MTD_BLOCK=y | |||
| 351 | # CONFIG_FTL is not set | 377 | # CONFIG_FTL is not set |
| 352 | # CONFIG_NFTL is not set | 378 | # CONFIG_NFTL is not set |
| 353 | # CONFIG_INFTL is not set | 379 | # CONFIG_INFTL is not set |
| 380 | # CONFIG_RFD_FTL is not set | ||
| 354 | 381 | ||
| 355 | # | 382 | # |
| 356 | # RAM/ROM/Flash chip drivers | 383 | # RAM/ROM/Flash chip drivers |
| @@ -409,6 +436,11 @@ CONFIG_MTD_ALCHEMY=y | |||
| 409 | # CONFIG_MTD_NAND is not set | 436 | # CONFIG_MTD_NAND is not set |
| 410 | 437 | ||
| 411 | # | 438 | # |
| 439 | # OneNAND Flash Device Drivers | ||
| 440 | # | ||
| 441 | # CONFIG_MTD_ONENAND is not set | ||
| 442 | |||
| 443 | # | ||
| 412 | # Parallel port support | 444 | # Parallel port support |
| 413 | # | 445 | # |
| 414 | # CONFIG_PARPORT is not set | 446 | # CONFIG_PARPORT is not set |
| @@ -431,18 +463,9 @@ CONFIG_BLK_DEV_LOOP=y | |||
| 431 | # CONFIG_BLK_DEV_SX8 is not set | 463 | # CONFIG_BLK_DEV_SX8 is not set |
| 432 | # CONFIG_BLK_DEV_RAM is not set | 464 | # CONFIG_BLK_DEV_RAM is not set |
| 433 | CONFIG_BLK_DEV_RAM_COUNT=16 | 465 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 434 | # CONFIG_LBD is not set | ||
| 435 | CONFIG_CDROM_PKTCDVD=m | 466 | CONFIG_CDROM_PKTCDVD=m |
| 436 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 467 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 437 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 468 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 438 | |||
| 439 | # | ||
| 440 | # IO Schedulers | ||
| 441 | # | ||
| 442 | CONFIG_IOSCHED_NOOP=y | ||
| 443 | CONFIG_IOSCHED_AS=y | ||
| 444 | CONFIG_IOSCHED_DEADLINE=y | ||
| 445 | CONFIG_IOSCHED_CFQ=y | ||
| 446 | CONFIG_ATA_OVER_ETH=m | 469 | CONFIG_ATA_OVER_ETH=m |
| 447 | 470 | ||
| 448 | # | 471 | # |
| @@ -546,7 +569,6 @@ CONFIG_NETDEVICES=y | |||
| 546 | # PHY device support | 569 | # PHY device support |
| 547 | # | 570 | # |
| 548 | CONFIG_PHYLIB=m | 571 | CONFIG_PHYLIB=m |
| 549 | CONFIG_PHYCONTROL=y | ||
| 550 | 572 | ||
| 551 | # | 573 | # |
| 552 | # MII PHY device drivers | 574 | # MII PHY device drivers |
| @@ -565,7 +587,9 @@ CONFIG_MII=m | |||
| 565 | CONFIG_MIPS_AU1X00_ENET=y | 587 | CONFIG_MIPS_AU1X00_ENET=y |
| 566 | # CONFIG_HAPPYMEAL is not set | 588 | # CONFIG_HAPPYMEAL is not set |
| 567 | # CONFIG_SUNGEM is not set | 589 | # CONFIG_SUNGEM is not set |
| 590 | # CONFIG_CASSINI is not set | ||
| 568 | # CONFIG_NET_VENDOR_3COM is not set | 591 | # CONFIG_NET_VENDOR_3COM is not set |
| 592 | # CONFIG_SMC91X is not set | ||
| 569 | 593 | ||
| 570 | # | 594 | # |
| 571 | # Tulip family network device support | 595 | # Tulip family network device support |
| @@ -635,6 +659,7 @@ CONFIG_PPP_ASYNC=m | |||
| 635 | # CONFIG_PPP_SYNC_TTY is not set | 659 | # CONFIG_PPP_SYNC_TTY is not set |
| 636 | CONFIG_PPP_DEFLATE=m | 660 | CONFIG_PPP_DEFLATE=m |
| 637 | # CONFIG_PPP_BSDCOMP is not set | 661 | # CONFIG_PPP_BSDCOMP is not set |
| 662 | CONFIG_PPP_MPPE=m | ||
| 638 | CONFIG_PPPOE=m | 663 | CONFIG_PPPOE=m |
| 639 | # CONFIG_SLIP is not set | 664 | # CONFIG_SLIP is not set |
| 640 | # CONFIG_SHAPER is not set | 665 | # CONFIG_SHAPER is not set |
| @@ -700,13 +725,17 @@ CONFIG_SERIO_RAW=m | |||
| 700 | # | 725 | # |
| 701 | # Serial drivers | 726 | # Serial drivers |
| 702 | # | 727 | # |
| 703 | # CONFIG_SERIAL_8250 is not set | 728 | CONFIG_SERIAL_8250=y |
| 729 | CONFIG_SERIAL_8250_CONSOLE=y | ||
| 730 | # CONFIG_SERIAL_8250_CS is not set | ||
| 731 | CONFIG_SERIAL_8250_NR_UARTS=4 | ||
| 732 | # CONFIG_SERIAL_8250_EXTENDED is not set | ||
| 733 | CONFIG_SERIAL_8250_AU1X00=y | ||
| 704 | 734 | ||
| 705 | # | 735 | # |
| 706 | # Non-8250 serial port support | 736 | # Non-8250 serial port support |
| 707 | # | 737 | # |
| 708 | CONFIG_SERIAL_AU1X00=y | 738 | # CONFIG_SERIAL_AU1X00 is not set |
| 709 | CONFIG_SERIAL_AU1X00_CONSOLE=y | ||
| 710 | CONFIG_SERIAL_CORE=y | 739 | CONFIG_SERIAL_CORE=y |
| 711 | CONFIG_SERIAL_CORE_CONSOLE=y | 740 | CONFIG_SERIAL_CORE_CONSOLE=y |
| 712 | # CONFIG_SERIAL_JSM is not set | 741 | # CONFIG_SERIAL_JSM is not set |
| @@ -738,12 +767,15 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 738 | # PCMCIA character devices | 767 | # PCMCIA character devices |
| 739 | # | 768 | # |
| 740 | CONFIG_SYNCLINK_CS=m | 769 | CONFIG_SYNCLINK_CS=m |
| 770 | # CONFIG_CARDMAN_4000 is not set | ||
| 771 | # CONFIG_CARDMAN_4040 is not set | ||
| 741 | # CONFIG_RAW_DRIVER is not set | 772 | # CONFIG_RAW_DRIVER is not set |
| 742 | 773 | ||
| 743 | # | 774 | # |
| 744 | # TPM devices | 775 | # TPM devices |
| 745 | # | 776 | # |
| 746 | # CONFIG_TCG_TPM is not set | 777 | # CONFIG_TCG_TPM is not set |
| 778 | # CONFIG_TELCLOCK is not set | ||
| 747 | 779 | ||
| 748 | # | 780 | # |
| 749 | # I2C support | 781 | # I2C support |
| @@ -797,6 +829,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 797 | # CONFIG_USB is not set | 829 | # CONFIG_USB is not set |
| 798 | 830 | ||
| 799 | # | 831 | # |
| 832 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 833 | # | ||
| 834 | |||
| 835 | # | ||
| 800 | # USB Gadget Support | 836 | # USB Gadget Support |
| 801 | # | 837 | # |
| 802 | # CONFIG_USB_GADGET is not set | 838 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/pb1550_defconfig b/arch/mips/configs/pb1550_defconfig index bbad27cb40a2..f8f32e99f72d 100644 --- a/arch/mips/configs/pb1550_defconfig +++ b/arch/mips/configs/pb1550_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.15-rc1 |
| 4 | # Thu Oct 20 22:26:47 2005 | 4 | # Tue Nov 15 11:15:34 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -57,6 +57,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 57 | CONFIG_KMOD=y | 57 | CONFIG_KMOD=y |
| 58 | 58 | ||
| 59 | # | 59 | # |
| 60 | # Block layer | ||
| 61 | # | ||
| 62 | # CONFIG_LBD is not set | ||
| 63 | |||
| 64 | # | ||
| 65 | # IO Schedulers | ||
| 66 | # | ||
| 67 | CONFIG_IOSCHED_NOOP=y | ||
| 68 | CONFIG_IOSCHED_AS=y | ||
| 69 | CONFIG_IOSCHED_DEADLINE=y | ||
| 70 | CONFIG_IOSCHED_CFQ=y | ||
| 71 | CONFIG_DEFAULT_AS=y | ||
| 72 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 73 | # CONFIG_DEFAULT_CFQ is not set | ||
| 74 | # CONFIG_DEFAULT_NOOP is not set | ||
| 75 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 76 | |||
| 77 | # | ||
| 60 | # Machine selection | 78 | # Machine selection |
| 61 | # | 79 | # |
| 62 | # CONFIG_MIPS_MTX1 is not set | 80 | # CONFIG_MIPS_MTX1 is not set |
| @@ -179,6 +197,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 179 | CONFIG_FLATMEM=y | 197 | CONFIG_FLATMEM=y |
| 180 | CONFIG_FLAT_NODE_MEM_MAP=y | 198 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 181 | # CONFIG_SPARSEMEM_STATIC is not set | 199 | # CONFIG_SPARSEMEM_STATIC is not set |
| 200 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 182 | CONFIG_PREEMPT_NONE=y | 201 | CONFIG_PREEMPT_NONE=y |
| 183 | # CONFIG_PREEMPT_VOLUNTARY is not set | 202 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 184 | # CONFIG_PREEMPT is not set | 203 | # CONFIG_PREEMPT is not set |
| @@ -207,7 +226,6 @@ CONFIG_CARDBUS=y | |||
| 207 | # CONFIG_YENTA is not set | 226 | # CONFIG_YENTA is not set |
| 208 | CONFIG_PD6729=m | 227 | CONFIG_PD6729=m |
| 209 | # CONFIG_I82092 is not set | 228 | # CONFIG_I82092 is not set |
| 210 | # CONFIG_TCIC is not set | ||
| 211 | # CONFIG_PCMCIA_AU1X00 is not set | 229 | # CONFIG_PCMCIA_AU1X00 is not set |
| 212 | CONFIG_PCCARD_NONSTATIC=m | 230 | CONFIG_PCCARD_NONSTATIC=m |
| 213 | 231 | ||
| @@ -267,15 +285,19 @@ CONFIG_TCP_CONG_BIC=y | |||
| 267 | # CONFIG_IPV6 is not set | 285 | # CONFIG_IPV6 is not set |
| 268 | CONFIG_NETFILTER=y | 286 | CONFIG_NETFILTER=y |
| 269 | # CONFIG_NETFILTER_DEBUG is not set | 287 | # CONFIG_NETFILTER_DEBUG is not set |
| 288 | |||
| 289 | # | ||
| 290 | # Core Netfilter Configuration | ||
| 291 | # | ||
| 270 | CONFIG_NETFILTER_NETLINK=m | 292 | CONFIG_NETFILTER_NETLINK=m |
| 271 | CONFIG_NETFILTER_NETLINK_QUEUE=m | 293 | CONFIG_NETFILTER_NETLINK_QUEUE=m |
| 272 | CONFIG_NETFILTER_NETLINK_LOG=m | 294 | CONFIG_NETFILTER_NETLINK_LOG=m |
| 295 | # CONFIG_NF_CONNTRACK is not set | ||
| 273 | 296 | ||
| 274 | # | 297 | # |
| 275 | # IP: Netfilter Configuration | 298 | # IP: Netfilter Configuration |
| 276 | # | 299 | # |
| 277 | # CONFIG_IP_NF_CONNTRACK is not set | 300 | # CONFIG_IP_NF_CONNTRACK is not set |
| 278 | CONFIG_IP_NF_PPTP=m | ||
| 279 | # CONFIG_IP_NF_QUEUE is not set | 301 | # CONFIG_IP_NF_QUEUE is not set |
| 280 | # CONFIG_IP_NF_IPTABLES is not set | 302 | # CONFIG_IP_NF_IPTABLES is not set |
| 281 | # CONFIG_IP_NF_ARPTABLES is not set | 303 | # CONFIG_IP_NF_ARPTABLES is not set |
| @@ -301,6 +323,10 @@ CONFIG_IP_NF_PPTP=m | |||
| 301 | # CONFIG_NET_DIVERT is not set | 323 | # CONFIG_NET_DIVERT is not set |
| 302 | # CONFIG_ECONET is not set | 324 | # CONFIG_ECONET is not set |
| 303 | # CONFIG_WAN_ROUTER is not set | 325 | # CONFIG_WAN_ROUTER is not set |
| 326 | |||
| 327 | # | ||
| 328 | # QoS and/or fair queueing | ||
| 329 | # | ||
| 304 | # CONFIG_NET_SCHED is not set | 330 | # CONFIG_NET_SCHED is not set |
| 305 | # CONFIG_NET_CLS_ROUTE is not set | 331 | # CONFIG_NET_CLS_ROUTE is not set |
| 306 | 332 | ||
| @@ -351,6 +377,7 @@ CONFIG_MTD_BLOCK=y | |||
| 351 | # CONFIG_FTL is not set | 377 | # CONFIG_FTL is not set |
| 352 | # CONFIG_NFTL is not set | 378 | # CONFIG_NFTL is not set |
| 353 | # CONFIG_INFTL is not set | 379 | # CONFIG_INFTL is not set |
| 380 | # CONFIG_RFD_FTL is not set | ||
| 354 | 381 | ||
| 355 | # | 382 | # |
| 356 | # RAM/ROM/Flash chip drivers | 383 | # RAM/ROM/Flash chip drivers |
| @@ -409,6 +436,11 @@ CONFIG_MTD_ALCHEMY=y | |||
| 409 | # CONFIG_MTD_NAND is not set | 436 | # CONFIG_MTD_NAND is not set |
| 410 | 437 | ||
| 411 | # | 438 | # |
| 439 | # OneNAND Flash Device Drivers | ||
| 440 | # | ||
| 441 | # CONFIG_MTD_ONENAND is not set | ||
| 442 | |||
| 443 | # | ||
| 412 | # Parallel port support | 444 | # Parallel port support |
| 413 | # | 445 | # |
| 414 | # CONFIG_PARPORT is not set | 446 | # CONFIG_PARPORT is not set |
| @@ -431,18 +463,9 @@ CONFIG_BLK_DEV_LOOP=y | |||
| 431 | # CONFIG_BLK_DEV_SX8 is not set | 463 | # CONFIG_BLK_DEV_SX8 is not set |
| 432 | # CONFIG_BLK_DEV_RAM is not set | 464 | # CONFIG_BLK_DEV_RAM is not set |
| 433 | CONFIG_BLK_DEV_RAM_COUNT=16 | 465 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 434 | # CONFIG_LBD is not set | ||
| 435 | CONFIG_CDROM_PKTCDVD=m | 466 | CONFIG_CDROM_PKTCDVD=m |
| 436 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 467 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 437 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 468 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 438 | |||
| 439 | # | ||
| 440 | # IO Schedulers | ||
| 441 | # | ||
| 442 | CONFIG_IOSCHED_NOOP=y | ||
| 443 | CONFIG_IOSCHED_AS=y | ||
| 444 | CONFIG_IOSCHED_DEADLINE=y | ||
| 445 | CONFIG_IOSCHED_CFQ=y | ||
| 446 | CONFIG_ATA_OVER_ETH=m | 469 | CONFIG_ATA_OVER_ETH=m |
| 447 | 470 | ||
| 448 | # | 471 | # |
| @@ -546,7 +569,6 @@ CONFIG_NETDEVICES=y | |||
| 546 | # PHY device support | 569 | # PHY device support |
| 547 | # | 570 | # |
| 548 | CONFIG_PHYLIB=m | 571 | CONFIG_PHYLIB=m |
| 549 | CONFIG_PHYCONTROL=y | ||
| 550 | 572 | ||
| 551 | # | 573 | # |
| 552 | # MII PHY device drivers | 574 | # MII PHY device drivers |
| @@ -565,7 +587,9 @@ CONFIG_NET_ETHERNET=y | |||
| 565 | CONFIG_MIPS_AU1X00_ENET=y | 587 | CONFIG_MIPS_AU1X00_ENET=y |
| 566 | # CONFIG_HAPPYMEAL is not set | 588 | # CONFIG_HAPPYMEAL is not set |
| 567 | # CONFIG_SUNGEM is not set | 589 | # CONFIG_SUNGEM is not set |
| 590 | # CONFIG_CASSINI is not set | ||
| 568 | # CONFIG_NET_VENDOR_3COM is not set | 591 | # CONFIG_NET_VENDOR_3COM is not set |
| 592 | # CONFIG_SMC91X is not set | ||
| 569 | 593 | ||
| 570 | # | 594 | # |
| 571 | # Tulip family network device support | 595 | # Tulip family network device support |
| @@ -627,6 +651,7 @@ CONFIG_PPP_ASYNC=m | |||
| 627 | # CONFIG_PPP_SYNC_TTY is not set | 651 | # CONFIG_PPP_SYNC_TTY is not set |
| 628 | CONFIG_PPP_DEFLATE=m | 652 | CONFIG_PPP_DEFLATE=m |
| 629 | # CONFIG_PPP_BSDCOMP is not set | 653 | # CONFIG_PPP_BSDCOMP is not set |
| 654 | CONFIG_PPP_MPPE=m | ||
| 630 | CONFIG_PPPOE=m | 655 | CONFIG_PPPOE=m |
| 631 | # CONFIG_SLIP is not set | 656 | # CONFIG_SLIP is not set |
| 632 | # CONFIG_SHAPER is not set | 657 | # CONFIG_SHAPER is not set |
| @@ -692,13 +717,17 @@ CONFIG_SERIO_RAW=m | |||
| 692 | # | 717 | # |
| 693 | # Serial drivers | 718 | # Serial drivers |
| 694 | # | 719 | # |
| 695 | # CONFIG_SERIAL_8250 is not set | 720 | CONFIG_SERIAL_8250=y |
| 721 | CONFIG_SERIAL_8250_CONSOLE=y | ||
| 722 | # CONFIG_SERIAL_8250_CS is not set | ||
| 723 | CONFIG_SERIAL_8250_NR_UARTS=4 | ||
| 724 | # CONFIG_SERIAL_8250_EXTENDED is not set | ||
| 725 | CONFIG_SERIAL_8250_AU1X00=y | ||
| 696 | 726 | ||
| 697 | # | 727 | # |
| 698 | # Non-8250 serial port support | 728 | # Non-8250 serial port support |
| 699 | # | 729 | # |
| 700 | CONFIG_SERIAL_AU1X00=y | 730 | # CONFIG_SERIAL_AU1X00 is not set |
| 701 | CONFIG_SERIAL_AU1X00_CONSOLE=y | ||
| 702 | CONFIG_SERIAL_CORE=y | 731 | CONFIG_SERIAL_CORE=y |
| 703 | CONFIG_SERIAL_CORE_CONSOLE=y | 732 | CONFIG_SERIAL_CORE_CONSOLE=y |
| 704 | # CONFIG_SERIAL_JSM is not set | 733 | # CONFIG_SERIAL_JSM is not set |
| @@ -730,12 +759,15 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 730 | # PCMCIA character devices | 759 | # PCMCIA character devices |
| 731 | # | 760 | # |
| 732 | CONFIG_SYNCLINK_CS=m | 761 | CONFIG_SYNCLINK_CS=m |
| 762 | # CONFIG_CARDMAN_4000 is not set | ||
| 763 | # CONFIG_CARDMAN_4040 is not set | ||
| 733 | # CONFIG_RAW_DRIVER is not set | 764 | # CONFIG_RAW_DRIVER is not set |
| 734 | 765 | ||
| 735 | # | 766 | # |
| 736 | # TPM devices | 767 | # TPM devices |
| 737 | # | 768 | # |
| 738 | # CONFIG_TCG_TPM is not set | 769 | # CONFIG_TCG_TPM is not set |
| 770 | # CONFIG_TELCLOCK is not set | ||
| 739 | 771 | ||
| 740 | # | 772 | # |
| 741 | # I2C support | 773 | # I2C support |
| @@ -789,6 +821,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 789 | # CONFIG_USB is not set | 821 | # CONFIG_USB is not set |
| 790 | 822 | ||
| 791 | # | 823 | # |
| 824 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 825 | # | ||
| 826 | |||
| 827 | # | ||
| 792 | # USB Gadget Support | 828 | # USB Gadget Support |
| 793 | # | 829 | # |
| 794 | # CONFIG_USB_GADGET is not set | 830 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/pnx8550-jbs_defconfig b/arch/mips/configs/pnx8550-jbs_defconfig index 555837e4c06f..5820e5f2295e 100644 --- a/arch/mips/configs/pnx8550-jbs_defconfig +++ b/arch/mips/configs/pnx8550-jbs_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:26:50 2005 | 4 | # Mon Nov 7 23:06:25 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -58,6 +58,24 @@ CONFIG_OBSOLETE_MODPARM=y | |||
| 58 | CONFIG_KMOD=y | 58 | CONFIG_KMOD=y |
| 59 | 59 | ||
| 60 | # | 60 | # |
| 61 | # Block layer | ||
| 62 | # | ||
| 63 | # CONFIG_LBD is not set | ||
| 64 | |||
| 65 | # | ||
| 66 | # IO Schedulers | ||
| 67 | # | ||
| 68 | CONFIG_IOSCHED_NOOP=y | ||
| 69 | CONFIG_IOSCHED_AS=y | ||
| 70 | CONFIG_IOSCHED_DEADLINE=y | ||
| 71 | CONFIG_IOSCHED_CFQ=y | ||
| 72 | CONFIG_DEFAULT_AS=y | ||
| 73 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 74 | # CONFIG_DEFAULT_CFQ is not set | ||
| 75 | # CONFIG_DEFAULT_NOOP is not set | ||
| 76 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 77 | |||
| 78 | # | ||
| 61 | # Machine selection | 79 | # Machine selection |
| 62 | # | 80 | # |
| 63 | # CONFIG_MIPS_MTX1 is not set | 81 | # CONFIG_MIPS_MTX1 is not set |
| @@ -179,6 +197,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 179 | CONFIG_FLATMEM=y | 197 | CONFIG_FLATMEM=y |
| 180 | CONFIG_FLAT_NODE_MEM_MAP=y | 198 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 181 | # CONFIG_SPARSEMEM_STATIC is not set | 199 | # CONFIG_SPARSEMEM_STATIC is not set |
| 200 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 182 | CONFIG_PREEMPT_NONE=y | 201 | CONFIG_PREEMPT_NONE=y |
| 183 | # CONFIG_PREEMPT_VOLUNTARY is not set | 202 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 184 | # CONFIG_PREEMPT is not set | 203 | # CONFIG_PREEMPT is not set |
| @@ -265,6 +284,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 265 | # CONFIG_NET_DIVERT is not set | 284 | # CONFIG_NET_DIVERT is not set |
| 266 | # CONFIG_ECONET is not set | 285 | # CONFIG_ECONET is not set |
| 267 | # CONFIG_WAN_ROUTER is not set | 286 | # CONFIG_WAN_ROUTER is not set |
| 287 | |||
| 288 | # | ||
| 289 | # QoS and/or fair queueing | ||
| 290 | # | ||
| 268 | # CONFIG_NET_SCHED is not set | 291 | # CONFIG_NET_SCHED is not set |
| 269 | # CONFIG_NET_CLS_ROUTE is not set | 292 | # CONFIG_NET_CLS_ROUTE is not set |
| 270 | 293 | ||
| @@ -325,16 +348,7 @@ CONFIG_BLK_DEV_RAM=y | |||
| 325 | CONFIG_BLK_DEV_RAM_COUNT=16 | 348 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 326 | CONFIG_BLK_DEV_RAM_SIZE=8192 | 349 | CONFIG_BLK_DEV_RAM_SIZE=8192 |
| 327 | CONFIG_BLK_DEV_INITRD=y | 350 | CONFIG_BLK_DEV_INITRD=y |
| 328 | # CONFIG_LBD is not set | ||
| 329 | # CONFIG_CDROM_PKTCDVD is not set | 351 | # CONFIG_CDROM_PKTCDVD is not set |
| 330 | |||
| 331 | # | ||
| 332 | # IO Schedulers | ||
| 333 | # | ||
| 334 | CONFIG_IOSCHED_NOOP=y | ||
| 335 | CONFIG_IOSCHED_AS=y | ||
| 336 | CONFIG_IOSCHED_DEADLINE=y | ||
| 337 | CONFIG_IOSCHED_CFQ=y | ||
| 338 | # CONFIG_ATA_OVER_ETH is not set | 352 | # CONFIG_ATA_OVER_ETH is not set |
| 339 | 353 | ||
| 340 | # | 354 | # |
| @@ -423,12 +437,13 @@ CONFIG_SCSI_CONSTANTS=y | |||
| 423 | # | 437 | # |
| 424 | # CONFIG_SCSI_SPI_ATTRS is not set | 438 | # CONFIG_SCSI_SPI_ATTRS is not set |
| 425 | # CONFIG_SCSI_FC_ATTRS is not set | 439 | # CONFIG_SCSI_FC_ATTRS is not set |
| 426 | # CONFIG_SCSI_ISCSI_ATTRS is not set | 440 | CONFIG_SCSI_ISCSI_ATTRS=m |
| 427 | # CONFIG_SCSI_SAS_ATTRS is not set | 441 | # CONFIG_SCSI_SAS_ATTRS is not set |
| 428 | 442 | ||
| 429 | # | 443 | # |
| 430 | # SCSI low-level drivers | 444 | # SCSI low-level drivers |
| 431 | # | 445 | # |
| 446 | CONFIG_ISCSI_TCP=m | ||
| 432 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set | 447 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set |
| 433 | # CONFIG_SCSI_3W_9XXX is not set | 448 | # CONFIG_SCSI_3W_9XXX is not set |
| 434 | # CONFIG_SCSI_ACARD is not set | 449 | # CONFIG_SCSI_ACARD is not set |
| @@ -439,6 +454,7 @@ CONFIG_SCSI_CONSTANTS=y | |||
| 439 | # CONFIG_SCSI_DPT_I2O is not set | 454 | # CONFIG_SCSI_DPT_I2O is not set |
| 440 | # CONFIG_MEGARAID_NEWGEN is not set | 455 | # CONFIG_MEGARAID_NEWGEN is not set |
| 441 | # CONFIG_MEGARAID_LEGACY is not set | 456 | # CONFIG_MEGARAID_LEGACY is not set |
| 457 | # CONFIG_MEGARAID_SAS is not set | ||
| 442 | # CONFIG_SCSI_SATA is not set | 458 | # CONFIG_SCSI_SATA is not set |
| 443 | # CONFIG_SCSI_DMX3191D is not set | 459 | # CONFIG_SCSI_DMX3191D is not set |
| 444 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | 460 | # CONFIG_SCSI_FUTURE_DOMAIN is not set |
| @@ -473,6 +489,7 @@ CONFIG_SCSI_QLA2XXX=y | |||
| 473 | # CONFIG_FUSION is not set | 489 | # CONFIG_FUSION is not set |
| 474 | # CONFIG_FUSION_SPI is not set | 490 | # CONFIG_FUSION_SPI is not set |
| 475 | # CONFIG_FUSION_FC is not set | 491 | # CONFIG_FUSION_FC is not set |
| 492 | # CONFIG_FUSION_SAS is not set | ||
| 476 | 493 | ||
| 477 | # | 494 | # |
| 478 | # IEEE 1394 (FireWire) support | 495 | # IEEE 1394 (FireWire) support |
| @@ -510,6 +527,7 @@ CONFIG_NET_ETHERNET=y | |||
| 510 | CONFIG_MII=y | 527 | CONFIG_MII=y |
| 511 | # CONFIG_HAPPYMEAL is not set | 528 | # CONFIG_HAPPYMEAL is not set |
| 512 | # CONFIG_SUNGEM is not set | 529 | # CONFIG_SUNGEM is not set |
| 530 | # CONFIG_CASSINI is not set | ||
| 513 | # CONFIG_NET_VENDOR_3COM is not set | 531 | # CONFIG_NET_VENDOR_3COM is not set |
| 514 | 532 | ||
| 515 | # | 533 | # |
| @@ -681,6 +699,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 681 | # TPM devices | 699 | # TPM devices |
| 682 | # | 700 | # |
| 683 | # CONFIG_TCG_TPM is not set | 701 | # CONFIG_TCG_TPM is not set |
| 702 | # CONFIG_TELCLOCK is not set | ||
| 684 | 703 | ||
| 685 | # | 704 | # |
| 686 | # I2C support | 705 | # I2C support |
| @@ -763,12 +782,15 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y | |||
| 763 | # | 782 | # |
| 764 | # USB Device Class drivers | 783 | # USB Device Class drivers |
| 765 | # | 784 | # |
| 766 | # CONFIG_USB_BLUETOOTH_TTY is not set | ||
| 767 | # CONFIG_USB_ACM is not set | 785 | # CONFIG_USB_ACM is not set |
| 768 | # CONFIG_USB_PRINTER is not set | 786 | # CONFIG_USB_PRINTER is not set |
| 769 | 787 | ||
| 770 | # | 788 | # |
| 771 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' may also be needed; see USB_STORAGE Help for more information | 789 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' |
| 790 | # | ||
| 791 | |||
| 792 | # | ||
| 793 | # may also be needed; see USB_STORAGE Help for more information | ||
| 772 | # | 794 | # |
| 773 | CONFIG_USB_STORAGE=y | 795 | CONFIG_USB_STORAGE=y |
| 774 | # CONFIG_USB_STORAGE_DEBUG is not set | 796 | # CONFIG_USB_STORAGE_DEBUG is not set |
| @@ -1039,6 +1061,8 @@ CONFIG_DEBUG_SLAB=y | |||
| 1039 | # CONFIG_DEBUG_KOBJECT is not set | 1061 | # CONFIG_DEBUG_KOBJECT is not set |
| 1040 | # CONFIG_DEBUG_INFO is not set | 1062 | # CONFIG_DEBUG_INFO is not set |
| 1041 | # CONFIG_DEBUG_FS is not set | 1063 | # CONFIG_DEBUG_FS is not set |
| 1064 | # CONFIG_DEBUG_VM is not set | ||
| 1065 | # CONFIG_RCU_TORTURE_TEST is not set | ||
| 1042 | CONFIG_CROSSCOMPILE=y | 1066 | CONFIG_CROSSCOMPILE=y |
| 1043 | CONFIG_CMDLINE="console=ttyS1,38400n8 kgdb=ttyS0 root=/dev/nfs ip=bootp" | 1067 | CONFIG_CMDLINE="console=ttyS1,38400n8 kgdb=ttyS0 root=/dev/nfs ip=bootp" |
| 1044 | # CONFIG_DEBUG_STACK_USAGE is not set | 1068 | # CONFIG_DEBUG_STACK_USAGE is not set |
| @@ -1055,7 +1079,31 @@ CONFIG_CMDLINE="console=ttyS1,38400n8 kgdb=ttyS0 root=/dev/nfs ip=bootp" | |||
| 1055 | # | 1079 | # |
| 1056 | # Cryptographic options | 1080 | # Cryptographic options |
| 1057 | # | 1081 | # |
| 1058 | # CONFIG_CRYPTO is not set | 1082 | CONFIG_CRYPTO=y |
| 1083 | # CONFIG_CRYPTO_HMAC is not set | ||
| 1084 | # CONFIG_CRYPTO_NULL is not set | ||
| 1085 | # CONFIG_CRYPTO_MD4 is not set | ||
| 1086 | CONFIG_CRYPTO_MD5=m | ||
| 1087 | # CONFIG_CRYPTO_SHA1 is not set | ||
| 1088 | # CONFIG_CRYPTO_SHA256 is not set | ||
| 1089 | # CONFIG_CRYPTO_SHA512 is not set | ||
| 1090 | # CONFIG_CRYPTO_WP512 is not set | ||
| 1091 | # CONFIG_CRYPTO_TGR192 is not set | ||
| 1092 | # CONFIG_CRYPTO_DES is not set | ||
| 1093 | # CONFIG_CRYPTO_BLOWFISH is not set | ||
| 1094 | # CONFIG_CRYPTO_TWOFISH is not set | ||
| 1095 | # CONFIG_CRYPTO_SERPENT is not set | ||
| 1096 | # CONFIG_CRYPTO_AES is not set | ||
| 1097 | # CONFIG_CRYPTO_CAST5 is not set | ||
| 1098 | # CONFIG_CRYPTO_CAST6 is not set | ||
| 1099 | # CONFIG_CRYPTO_TEA is not set | ||
| 1100 | # CONFIG_CRYPTO_ARC4 is not set | ||
| 1101 | # CONFIG_CRYPTO_KHAZAD is not set | ||
| 1102 | # CONFIG_CRYPTO_ANUBIS is not set | ||
| 1103 | # CONFIG_CRYPTO_DEFLATE is not set | ||
| 1104 | # CONFIG_CRYPTO_MICHAEL_MIC is not set | ||
| 1105 | CONFIG_CRYPTO_CRC32C=m | ||
| 1106 | # CONFIG_CRYPTO_TEST is not set | ||
| 1059 | 1107 | ||
| 1060 | # | 1108 | # |
| 1061 | # Hardware crypto devices | 1109 | # Hardware crypto devices |
| @@ -1067,4 +1115,4 @@ CONFIG_CMDLINE="console=ttyS1,38400n8 kgdb=ttyS0 root=/dev/nfs ip=bootp" | |||
| 1067 | CONFIG_CRC_CCITT=m | 1115 | CONFIG_CRC_CCITT=m |
| 1068 | # CONFIG_CRC16 is not set | 1116 | # CONFIG_CRC16 is not set |
| 1069 | CONFIG_CRC32=y | 1117 | CONFIG_CRC32=y |
| 1070 | # CONFIG_LIBCRC32C is not set | 1118 | CONFIG_LIBCRC32C=m |
diff --git a/arch/mips/configs/pnx8550-v2pci_defconfig b/arch/mips/configs/pnx8550-v2pci_defconfig index 37bd8d5c865d..a4ebb538e15c 100644 --- a/arch/mips/configs/pnx8550-v2pci_defconfig +++ b/arch/mips/configs/pnx8550-v2pci_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:26:53 2005 | 4 | # Thu Nov 10 14:02:38 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -57,6 +57,24 @@ CONFIG_OBSOLETE_MODPARM=y | |||
| 57 | CONFIG_KMOD=y | 57 | CONFIG_KMOD=y |
| 58 | 58 | ||
| 59 | # | 59 | # |
| 60 | # Block layer | ||
| 61 | # | ||
| 62 | # CONFIG_LBD is not set | ||
| 63 | |||
| 64 | # | ||
| 65 | # IO Schedulers | ||
| 66 | # | ||
| 67 | CONFIG_IOSCHED_NOOP=y | ||
| 68 | CONFIG_IOSCHED_AS=y | ||
| 69 | CONFIG_IOSCHED_DEADLINE=y | ||
| 70 | CONFIG_IOSCHED_CFQ=y | ||
| 71 | CONFIG_DEFAULT_AS=y | ||
| 72 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 73 | # CONFIG_DEFAULT_CFQ is not set | ||
| 74 | # CONFIG_DEFAULT_NOOP is not set | ||
| 75 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 76 | |||
| 77 | # | ||
| 60 | # Machine selection | 78 | # Machine selection |
| 61 | # | 79 | # |
| 62 | # CONFIG_MIPS_MTX1 is not set | 80 | # CONFIG_MIPS_MTX1 is not set |
| @@ -180,6 +198,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 180 | CONFIG_FLATMEM=y | 198 | CONFIG_FLATMEM=y |
| 181 | CONFIG_FLAT_NODE_MEM_MAP=y | 199 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 182 | # CONFIG_SPARSEMEM_STATIC is not set | 200 | # CONFIG_SPARSEMEM_STATIC is not set |
| 201 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 183 | CONFIG_PREEMPT_NONE=y | 202 | CONFIG_PREEMPT_NONE=y |
| 184 | # CONFIG_PREEMPT_VOLUNTARY is not set | 203 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 185 | # CONFIG_PREEMPT is not set | 204 | # CONFIG_PREEMPT is not set |
| @@ -255,13 +274,17 @@ CONFIG_IPV6=m | |||
| 255 | # CONFIG_IPV6_TUNNEL is not set | 274 | # CONFIG_IPV6_TUNNEL is not set |
| 256 | CONFIG_NETFILTER=y | 275 | CONFIG_NETFILTER=y |
| 257 | # CONFIG_NETFILTER_DEBUG is not set | 276 | # CONFIG_NETFILTER_DEBUG is not set |
| 277 | |||
| 278 | # | ||
| 279 | # Core Netfilter Configuration | ||
| 280 | # | ||
| 258 | # CONFIG_NETFILTER_NETLINK is not set | 281 | # CONFIG_NETFILTER_NETLINK is not set |
| 282 | # CONFIG_NF_CONNTRACK is not set | ||
| 259 | 283 | ||
| 260 | # | 284 | # |
| 261 | # IP: Netfilter Configuration | 285 | # IP: Netfilter Configuration |
| 262 | # | 286 | # |
| 263 | # CONFIG_IP_NF_CONNTRACK is not set | 287 | # CONFIG_IP_NF_CONNTRACK is not set |
| 264 | CONFIG_IP_NF_PPTP=m | ||
| 265 | # CONFIG_IP_NF_QUEUE is not set | 288 | # CONFIG_IP_NF_QUEUE is not set |
| 266 | # CONFIG_IP_NF_IPTABLES is not set | 289 | # CONFIG_IP_NF_IPTABLES is not set |
| 267 | # CONFIG_IP_NF_ARPTABLES is not set | 290 | # CONFIG_IP_NF_ARPTABLES is not set |
| @@ -293,6 +316,10 @@ CONFIG_IP_NF_PPTP=m | |||
| 293 | # CONFIG_NET_DIVERT is not set | 316 | # CONFIG_NET_DIVERT is not set |
| 294 | # CONFIG_ECONET is not set | 317 | # CONFIG_ECONET is not set |
| 295 | # CONFIG_WAN_ROUTER is not set | 318 | # CONFIG_WAN_ROUTER is not set |
| 319 | |||
| 320 | # | ||
| 321 | # QoS and/or fair queueing | ||
| 322 | # | ||
| 296 | # CONFIG_NET_SCHED is not set | 323 | # CONFIG_NET_SCHED is not set |
| 297 | # CONFIG_NET_CLS_ROUTE is not set | 324 | # CONFIG_NET_CLS_ROUTE is not set |
| 298 | 325 | ||
| @@ -352,16 +379,7 @@ CONFIG_BLK_DEV_RAM=y | |||
| 352 | CONFIG_BLK_DEV_RAM_COUNT=16 | 379 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 353 | CONFIG_BLK_DEV_RAM_SIZE=8192 | 380 | CONFIG_BLK_DEV_RAM_SIZE=8192 |
| 354 | CONFIG_BLK_DEV_INITRD=y | 381 | CONFIG_BLK_DEV_INITRD=y |
| 355 | # CONFIG_LBD is not set | ||
| 356 | # CONFIG_CDROM_PKTCDVD is not set | 382 | # CONFIG_CDROM_PKTCDVD is not set |
| 357 | |||
| 358 | # | ||
| 359 | # IO Schedulers | ||
| 360 | # | ||
| 361 | CONFIG_IOSCHED_NOOP=y | ||
| 362 | CONFIG_IOSCHED_AS=y | ||
| 363 | CONFIG_IOSCHED_DEADLINE=y | ||
| 364 | CONFIG_IOSCHED_CFQ=y | ||
| 365 | # CONFIG_ATA_OVER_ETH is not set | 383 | # CONFIG_ATA_OVER_ETH is not set |
| 366 | 384 | ||
| 367 | # | 385 | # |
| @@ -451,12 +469,13 @@ CONFIG_BLK_DEV_SD=y | |||
| 451 | # | 469 | # |
| 452 | CONFIG_SCSI_SPI_ATTRS=m | 470 | CONFIG_SCSI_SPI_ATTRS=m |
| 453 | # CONFIG_SCSI_FC_ATTRS is not set | 471 | # CONFIG_SCSI_FC_ATTRS is not set |
| 454 | # CONFIG_SCSI_ISCSI_ATTRS is not set | 472 | CONFIG_SCSI_ISCSI_ATTRS=m |
| 455 | # CONFIG_SCSI_SAS_ATTRS is not set | 473 | # CONFIG_SCSI_SAS_ATTRS is not set |
| 456 | 474 | ||
| 457 | # | 475 | # |
| 458 | # SCSI low-level drivers | 476 | # SCSI low-level drivers |
| 459 | # | 477 | # |
| 478 | CONFIG_ISCSI_TCP=m | ||
| 460 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set | 479 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set |
| 461 | # CONFIG_SCSI_3W_9XXX is not set | 480 | # CONFIG_SCSI_3W_9XXX is not set |
| 462 | # CONFIG_SCSI_ACARD is not set | 481 | # CONFIG_SCSI_ACARD is not set |
| @@ -472,6 +491,7 @@ CONFIG_AIC7XXX_DEBUG_MASK=0 | |||
| 472 | # CONFIG_SCSI_DPT_I2O is not set | 491 | # CONFIG_SCSI_DPT_I2O is not set |
| 473 | # CONFIG_MEGARAID_NEWGEN is not set | 492 | # CONFIG_MEGARAID_NEWGEN is not set |
| 474 | # CONFIG_MEGARAID_LEGACY is not set | 493 | # CONFIG_MEGARAID_LEGACY is not set |
| 494 | # CONFIG_MEGARAID_SAS is not set | ||
| 475 | # CONFIG_SCSI_SATA is not set | 495 | # CONFIG_SCSI_SATA is not set |
| 476 | # CONFIG_SCSI_DMX3191D is not set | 496 | # CONFIG_SCSI_DMX3191D is not set |
| 477 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | 497 | # CONFIG_SCSI_FUTURE_DOMAIN is not set |
| @@ -506,6 +526,7 @@ CONFIG_SCSI_QLA2XXX=y | |||
| 506 | # CONFIG_FUSION is not set | 526 | # CONFIG_FUSION is not set |
| 507 | # CONFIG_FUSION_SPI is not set | 527 | # CONFIG_FUSION_SPI is not set |
| 508 | # CONFIG_FUSION_FC is not set | 528 | # CONFIG_FUSION_FC is not set |
| 529 | # CONFIG_FUSION_SAS is not set | ||
| 509 | 530 | ||
| 510 | # | 531 | # |
| 511 | # IEEE 1394 (FireWire) support | 532 | # IEEE 1394 (FireWire) support |
| @@ -543,6 +564,7 @@ CONFIG_NET_ETHERNET=y | |||
| 543 | CONFIG_MII=y | 564 | CONFIG_MII=y |
| 544 | # CONFIG_HAPPYMEAL is not set | 565 | # CONFIG_HAPPYMEAL is not set |
| 545 | # CONFIG_SUNGEM is not set | 566 | # CONFIG_SUNGEM is not set |
| 567 | # CONFIG_CASSINI is not set | ||
| 546 | # CONFIG_NET_VENDOR_3COM is not set | 568 | # CONFIG_NET_VENDOR_3COM is not set |
| 547 | 569 | ||
| 548 | # | 570 | # |
| @@ -622,6 +644,7 @@ CONFIG_PPP_ASYNC=m | |||
| 622 | CONFIG_PPP_SYNC_TTY=m | 644 | CONFIG_PPP_SYNC_TTY=m |
| 623 | CONFIG_PPP_DEFLATE=m | 645 | CONFIG_PPP_DEFLATE=m |
| 624 | # CONFIG_PPP_BSDCOMP is not set | 646 | # CONFIG_PPP_BSDCOMP is not set |
| 647 | CONFIG_PPP_MPPE=m | ||
| 625 | # CONFIG_PPPOE is not set | 648 | # CONFIG_PPPOE is not set |
| 626 | # CONFIG_SLIP is not set | 649 | # CONFIG_SLIP is not set |
| 627 | # CONFIG_NET_FC is not set | 650 | # CONFIG_NET_FC is not set |
| @@ -746,6 +769,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 746 | # TPM devices | 769 | # TPM devices |
| 747 | # | 770 | # |
| 748 | # CONFIG_TCG_TPM is not set | 771 | # CONFIG_TCG_TPM is not set |
| 772 | # CONFIG_TELCLOCK is not set | ||
| 749 | 773 | ||
| 750 | # | 774 | # |
| 751 | # I2C support | 775 | # I2C support |
| @@ -796,6 +820,7 @@ CONFIG_I2C_ALGOBIT=m | |||
| 796 | # CONFIG_SENSORS_PCF8591 is not set | 820 | # CONFIG_SENSORS_PCF8591 is not set |
| 797 | # CONFIG_SENSORS_RTC8564 is not set | 821 | # CONFIG_SENSORS_RTC8564 is not set |
| 798 | # CONFIG_SENSORS_MAX6875 is not set | 822 | # CONFIG_SENSORS_MAX6875 is not set |
| 823 | # CONFIG_RTC_X1205_I2C is not set | ||
| 799 | # CONFIG_I2C_DEBUG_CORE is not set | 824 | # CONFIG_I2C_DEBUG_CORE is not set |
| 800 | # CONFIG_I2C_DEBUG_ALGO is not set | 825 | # CONFIG_I2C_DEBUG_ALGO is not set |
| 801 | # CONFIG_I2C_DEBUG_BUS is not set | 826 | # CONFIG_I2C_DEBUG_BUS is not set |
| @@ -872,7 +897,6 @@ CONFIG_FB=y | |||
| 872 | # CONFIG_FB_CFB_FILLRECT is not set | 897 | # CONFIG_FB_CFB_FILLRECT is not set |
| 873 | # CONFIG_FB_CFB_COPYAREA is not set | 898 | # CONFIG_FB_CFB_COPYAREA is not set |
| 874 | # CONFIG_FB_CFB_IMAGEBLIT is not set | 899 | # CONFIG_FB_CFB_IMAGEBLIT is not set |
| 875 | # CONFIG_FB_SOFT_CURSOR is not set | ||
| 876 | # CONFIG_FB_MACMODES is not set | 900 | # CONFIG_FB_MACMODES is not set |
| 877 | # CONFIG_FB_MODE_HELPERS is not set | 901 | # CONFIG_FB_MODE_HELPERS is not set |
| 878 | # CONFIG_FB_TILEBLITTING is not set | 902 | # CONFIG_FB_TILEBLITTING is not set |
| @@ -881,6 +905,7 @@ CONFIG_FB=y | |||
| 881 | # CONFIG_FB_CYBER2000 is not set | 905 | # CONFIG_FB_CYBER2000 is not set |
| 882 | # CONFIG_FB_ASILIANT is not set | 906 | # CONFIG_FB_ASILIANT is not set |
| 883 | # CONFIG_FB_IMSTT is not set | 907 | # CONFIG_FB_IMSTT is not set |
| 908 | # CONFIG_FB_S1D13XXX is not set | ||
| 884 | # CONFIG_FB_NVIDIA is not set | 909 | # CONFIG_FB_NVIDIA is not set |
| 885 | # CONFIG_FB_RIVA is not set | 910 | # CONFIG_FB_RIVA is not set |
| 886 | # CONFIG_FB_MATROX is not set | 911 | # CONFIG_FB_MATROX is not set |
| @@ -897,7 +922,6 @@ CONFIG_FB=y | |||
| 897 | # CONFIG_FB_SMIVGX is not set | 922 | # CONFIG_FB_SMIVGX is not set |
| 898 | # CONFIG_FB_CYBLA is not set | 923 | # CONFIG_FB_CYBLA is not set |
| 899 | # CONFIG_FB_TRIDENT is not set | 924 | # CONFIG_FB_TRIDENT is not set |
| 900 | # CONFIG_FB_S1D13XXX is not set | ||
| 901 | # CONFIG_FB_VIRTUAL is not set | 925 | # CONFIG_FB_VIRTUAL is not set |
| 902 | 926 | ||
| 903 | # | 927 | # |
| @@ -946,12 +970,15 @@ CONFIG_USB_DEVICEFS=y | |||
| 946 | # | 970 | # |
| 947 | # USB Device Class drivers | 971 | # USB Device Class drivers |
| 948 | # | 972 | # |
| 949 | # CONFIG_USB_BLUETOOTH_TTY is not set | ||
| 950 | # CONFIG_USB_ACM is not set | 973 | # CONFIG_USB_ACM is not set |
| 951 | # CONFIG_USB_PRINTER is not set | 974 | # CONFIG_USB_PRINTER is not set |
| 952 | 975 | ||
| 953 | # | 976 | # |
| 954 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' may also be needed; see USB_STORAGE Help for more information | 977 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' |
| 978 | # | ||
| 979 | |||
| 980 | # | ||
| 981 | # may also be needed; see USB_STORAGE Help for more information | ||
| 955 | # | 982 | # |
| 956 | CONFIG_USB_STORAGE=y | 983 | CONFIG_USB_STORAGE=y |
| 957 | # CONFIG_USB_STORAGE_DEBUG is not set | 984 | # CONFIG_USB_STORAGE_DEBUG is not set |
| @@ -1235,7 +1262,31 @@ CONFIG_CMDLINE="" | |||
| 1235 | # | 1262 | # |
| 1236 | # Cryptographic options | 1263 | # Cryptographic options |
| 1237 | # | 1264 | # |
| 1238 | # CONFIG_CRYPTO is not set | 1265 | CONFIG_CRYPTO=y |
| 1266 | # CONFIG_CRYPTO_HMAC is not set | ||
| 1267 | # CONFIG_CRYPTO_NULL is not set | ||
| 1268 | # CONFIG_CRYPTO_MD4 is not set | ||
| 1269 | CONFIG_CRYPTO_MD5=m | ||
| 1270 | CONFIG_CRYPTO_SHA1=m | ||
| 1271 | # CONFIG_CRYPTO_SHA256 is not set | ||
| 1272 | # CONFIG_CRYPTO_SHA512 is not set | ||
| 1273 | # CONFIG_CRYPTO_WP512 is not set | ||
| 1274 | # CONFIG_CRYPTO_TGR192 is not set | ||
| 1275 | # CONFIG_CRYPTO_DES is not set | ||
| 1276 | # CONFIG_CRYPTO_BLOWFISH is not set | ||
| 1277 | # CONFIG_CRYPTO_TWOFISH is not set | ||
| 1278 | # CONFIG_CRYPTO_SERPENT is not set | ||
| 1279 | # CONFIG_CRYPTO_AES is not set | ||
| 1280 | # CONFIG_CRYPTO_CAST5 is not set | ||
| 1281 | # CONFIG_CRYPTO_CAST6 is not set | ||
| 1282 | # CONFIG_CRYPTO_TEA is not set | ||
| 1283 | CONFIG_CRYPTO_ARC4=m | ||
| 1284 | # CONFIG_CRYPTO_KHAZAD is not set | ||
| 1285 | # CONFIG_CRYPTO_ANUBIS is not set | ||
| 1286 | # CONFIG_CRYPTO_DEFLATE is not set | ||
| 1287 | # CONFIG_CRYPTO_MICHAEL_MIC is not set | ||
| 1288 | CONFIG_CRYPTO_CRC32C=m | ||
| 1289 | # CONFIG_CRYPTO_TEST is not set | ||
| 1239 | 1290 | ||
| 1240 | # | 1291 | # |
| 1241 | # Hardware crypto devices | 1292 | # Hardware crypto devices |
| @@ -1247,6 +1298,6 @@ CONFIG_CMDLINE="" | |||
| 1247 | CONFIG_CRC_CCITT=m | 1298 | CONFIG_CRC_CCITT=m |
| 1248 | # CONFIG_CRC16 is not set | 1299 | # CONFIG_CRC16 is not set |
| 1249 | CONFIG_CRC32=y | 1300 | CONFIG_CRC32=y |
| 1250 | # CONFIG_LIBCRC32C is not set | 1301 | CONFIG_LIBCRC32C=m |
| 1251 | CONFIG_ZLIB_INFLATE=y | 1302 | CONFIG_ZLIB_INFLATE=y |
| 1252 | CONFIG_ZLIB_DEFLATE=m | 1303 | CONFIG_ZLIB_DEFLATE=m |
diff --git a/arch/mips/configs/qemu_defconfig b/arch/mips/configs/qemu_defconfig index 741a9a971367..5d39162077f4 100644 --- a/arch/mips/configs/qemu_defconfig +++ b/arch/mips/configs/qemu_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:26:56 2005 | 4 | # Mon Nov 7 23:06:31 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -50,6 +50,24 @@ CONFIG_BASE_SMALL=1 | |||
| 50 | # CONFIG_MODULES is not set | 50 | # CONFIG_MODULES is not set |
| 51 | 51 | ||
| 52 | # | 52 | # |
| 53 | # Block layer | ||
| 54 | # | ||
| 55 | # CONFIG_LBD is not set | ||
| 56 | |||
| 57 | # | ||
| 58 | # IO Schedulers | ||
| 59 | # | ||
| 60 | CONFIG_IOSCHED_NOOP=y | ||
| 61 | # CONFIG_IOSCHED_AS is not set | ||
| 62 | # CONFIG_IOSCHED_DEADLINE is not set | ||
| 63 | # CONFIG_IOSCHED_CFQ is not set | ||
| 64 | # CONFIG_DEFAULT_AS is not set | ||
| 65 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 66 | # CONFIG_DEFAULT_CFQ is not set | ||
| 67 | CONFIG_DEFAULT_NOOP=y | ||
| 68 | CONFIG_DEFAULT_IOSCHED="noop" | ||
| 69 | |||
| 70 | # | ||
| 53 | # Machine selection | 71 | # Machine selection |
| 54 | # | 72 | # |
| 55 | # CONFIG_MIPS_MTX1 is not set | 73 | # CONFIG_MIPS_MTX1 is not set |
| @@ -168,6 +186,7 @@ CONFIG_ARCH_FLATMEM_ENABLE=y | |||
| 168 | CONFIG_FLATMEM=y | 186 | CONFIG_FLATMEM=y |
| 169 | CONFIG_FLAT_NODE_MEM_MAP=y | 187 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 170 | # CONFIG_SPARSEMEM_STATIC is not set | 188 | # CONFIG_SPARSEMEM_STATIC is not set |
| 189 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 171 | CONFIG_PREEMPT_NONE=y | 190 | CONFIG_PREEMPT_NONE=y |
| 172 | # CONFIG_PREEMPT_VOLUNTARY is not set | 191 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 173 | # CONFIG_PREEMPT is not set | 192 | # CONFIG_PREEMPT is not set |
| @@ -234,6 +253,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 234 | # CONFIG_LLC2 is not set | 253 | # CONFIG_LLC2 is not set |
| 235 | # CONFIG_IPX is not set | 254 | # CONFIG_IPX is not set |
| 236 | # CONFIG_ATALK is not set | 255 | # CONFIG_ATALK is not set |
| 256 | |||
| 257 | # | ||
| 258 | # QoS and/or fair queueing | ||
| 259 | # | ||
| 237 | # CONFIG_NET_SCHED is not set | 260 | # CONFIG_NET_SCHED is not set |
| 238 | # CONFIG_NET_CLS_ROUTE is not set | 261 | # CONFIG_NET_CLS_ROUTE is not set |
| 239 | 262 | ||
| @@ -265,6 +288,7 @@ CONFIG_STANDALONE=y | |||
| 265 | # Connector - unified userspace <-> kernelspace linker | 288 | # Connector - unified userspace <-> kernelspace linker |
| 266 | # | 289 | # |
| 267 | CONFIG_CONNECTOR=y | 290 | CONFIG_CONNECTOR=y |
| 291 | CONFIG_PROC_EVENTS=y | ||
| 268 | 292 | ||
| 269 | # | 293 | # |
| 270 | # Memory Technology Devices (MTD) | 294 | # Memory Technology Devices (MTD) |
| @@ -289,16 +313,7 @@ CONFIG_CONNECTOR=y | |||
| 289 | # CONFIG_BLK_DEV_NBD is not set | 313 | # CONFIG_BLK_DEV_NBD is not set |
| 290 | # CONFIG_BLK_DEV_RAM is not set | 314 | # CONFIG_BLK_DEV_RAM is not set |
| 291 | CONFIG_BLK_DEV_RAM_COUNT=16 | 315 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 292 | # CONFIG_LBD is not set | ||
| 293 | # CONFIG_CDROM_PKTCDVD is not set | 316 | # CONFIG_CDROM_PKTCDVD is not set |
| 294 | |||
| 295 | # | ||
| 296 | # IO Schedulers | ||
| 297 | # | ||
| 298 | CONFIG_IOSCHED_NOOP=y | ||
| 299 | # CONFIG_IOSCHED_AS is not set | ||
| 300 | # CONFIG_IOSCHED_DEADLINE is not set | ||
| 301 | # CONFIG_IOSCHED_CFQ is not set | ||
| 302 | # CONFIG_ATA_OVER_ETH is not set | 317 | # CONFIG_ATA_OVER_ETH is not set |
| 303 | 318 | ||
| 304 | # | 319 | # |
| @@ -353,7 +368,6 @@ CONFIG_NETDEVICES=y | |||
| 353 | # PHY device support | 368 | # PHY device support |
| 354 | # | 369 | # |
| 355 | CONFIG_PHYLIB=y | 370 | CONFIG_PHYLIB=y |
| 356 | CONFIG_PHYCONTROL=y | ||
| 357 | 371 | ||
| 358 | # | 372 | # |
| 359 | # MII PHY device drivers | 373 | # MII PHY device drivers |
| @@ -385,7 +399,6 @@ CONFIG_NET_ISA=y | |||
| 385 | # CONFIG_ETH16I is not set | 399 | # CONFIG_ETH16I is not set |
| 386 | CONFIG_NE2000=y | 400 | CONFIG_NE2000=y |
| 387 | # CONFIG_NET_PCI is not set | 401 | # CONFIG_NET_PCI is not set |
| 388 | # CONFIG_NET_POCKET is not set | ||
| 389 | 402 | ||
| 390 | # | 403 | # |
| 391 | # Ethernet (1000 Mbit) | 404 | # Ethernet (1000 Mbit) |
| @@ -558,6 +571,10 @@ CONFIG_DUMMY_CONSOLE=y | |||
| 558 | # CONFIG_USB_ARCH_HAS_OHCI is not set | 571 | # CONFIG_USB_ARCH_HAS_OHCI is not set |
| 559 | 572 | ||
| 560 | # | 573 | # |
| 574 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 575 | # | ||
| 576 | |||
| 577 | # | ||
| 561 | # USB Gadget Support | 578 | # USB Gadget Support |
| 562 | # | 579 | # |
| 563 | # CONFIG_USB_GADGET is not set | 580 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/rbhma4500_defconfig b/arch/mips/configs/rbhma4500_defconfig index 897420d39053..047e0b4236f8 100644 --- a/arch/mips/configs/rbhma4500_defconfig +++ b/arch/mips/configs/rbhma4500_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:26:59 2005 | 4 | # Thu Nov 10 14:02:45 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -57,6 +57,24 @@ CONFIG_OBSOLETE_MODPARM=y | |||
| 57 | CONFIG_KMOD=y | 57 | CONFIG_KMOD=y |
| 58 | 58 | ||
| 59 | # | 59 | # |
| 60 | # Block layer | ||
| 61 | # | ||
| 62 | # CONFIG_LBD is not set | ||
| 63 | |||
| 64 | # | ||
| 65 | # IO Schedulers | ||
| 66 | # | ||
| 67 | CONFIG_IOSCHED_NOOP=y | ||
| 68 | CONFIG_IOSCHED_AS=y | ||
| 69 | CONFIG_IOSCHED_DEADLINE=y | ||
| 70 | CONFIG_IOSCHED_CFQ=y | ||
| 71 | CONFIG_DEFAULT_AS=y | ||
| 72 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 73 | # CONFIG_DEFAULT_CFQ is not set | ||
| 74 | # CONFIG_DEFAULT_NOOP is not set | ||
| 75 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 76 | |||
| 77 | # | ||
| 60 | # Machine selection | 78 | # Machine selection |
| 61 | # | 79 | # |
| 62 | # CONFIG_MIPS_MTX1 is not set | 80 | # CONFIG_MIPS_MTX1 is not set |
| @@ -188,6 +206,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 188 | CONFIG_FLATMEM=y | 206 | CONFIG_FLATMEM=y |
| 189 | CONFIG_FLAT_NODE_MEM_MAP=y | 207 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 190 | # CONFIG_SPARSEMEM_STATIC is not set | 208 | # CONFIG_SPARSEMEM_STATIC is not set |
| 209 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 191 | CONFIG_PREEMPT_NONE=y | 210 | CONFIG_PREEMPT_NONE=y |
| 192 | # CONFIG_PREEMPT_VOLUNTARY is not set | 211 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 193 | # CONFIG_PREEMPT is not set | 212 | # CONFIG_PREEMPT is not set |
| @@ -265,15 +284,19 @@ CONFIG_IPV6=m | |||
| 265 | # CONFIG_IPV6_TUNNEL is not set | 284 | # CONFIG_IPV6_TUNNEL is not set |
| 266 | CONFIG_NETFILTER=y | 285 | CONFIG_NETFILTER=y |
| 267 | # CONFIG_NETFILTER_DEBUG is not set | 286 | # CONFIG_NETFILTER_DEBUG is not set |
| 287 | |||
| 288 | # | ||
| 289 | # Core Netfilter Configuration | ||
| 290 | # | ||
| 268 | CONFIG_NETFILTER_NETLINK=m | 291 | CONFIG_NETFILTER_NETLINK=m |
| 269 | CONFIG_NETFILTER_NETLINK_QUEUE=m | 292 | CONFIG_NETFILTER_NETLINK_QUEUE=m |
| 270 | CONFIG_NETFILTER_NETLINK_LOG=m | 293 | CONFIG_NETFILTER_NETLINK_LOG=m |
| 294 | # CONFIG_NF_CONNTRACK is not set | ||
| 271 | 295 | ||
| 272 | # | 296 | # |
| 273 | # IP: Netfilter Configuration | 297 | # IP: Netfilter Configuration |
| 274 | # | 298 | # |
| 275 | # CONFIG_IP_NF_CONNTRACK is not set | 299 | # CONFIG_IP_NF_CONNTRACK is not set |
| 276 | CONFIG_IP_NF_PPTP=m | ||
| 277 | # CONFIG_IP_NF_QUEUE is not set | 300 | # CONFIG_IP_NF_QUEUE is not set |
| 278 | # CONFIG_IP_NF_IPTABLES is not set | 301 | # CONFIG_IP_NF_IPTABLES is not set |
| 279 | # CONFIG_IP_NF_ARPTABLES is not set | 302 | # CONFIG_IP_NF_ARPTABLES is not set |
| @@ -305,6 +328,10 @@ CONFIG_IP_NF_PPTP=m | |||
| 305 | # CONFIG_NET_DIVERT is not set | 328 | # CONFIG_NET_DIVERT is not set |
| 306 | # CONFIG_ECONET is not set | 329 | # CONFIG_ECONET is not set |
| 307 | # CONFIG_WAN_ROUTER is not set | 330 | # CONFIG_WAN_ROUTER is not set |
| 331 | |||
| 332 | # | ||
| 333 | # QoS and/or fair queueing | ||
| 334 | # | ||
| 308 | # CONFIG_NET_SCHED is not set | 335 | # CONFIG_NET_SCHED is not set |
| 309 | # CONFIG_NET_CLS_ROUTE is not set | 336 | # CONFIG_NET_CLS_ROUTE is not set |
| 310 | 337 | ||
| @@ -355,6 +382,7 @@ CONFIG_MTD_BLOCK=y | |||
| 355 | # CONFIG_FTL is not set | 382 | # CONFIG_FTL is not set |
| 356 | # CONFIG_NFTL is not set | 383 | # CONFIG_NFTL is not set |
| 357 | # CONFIG_INFTL is not set | 384 | # CONFIG_INFTL is not set |
| 385 | # CONFIG_RFD_FTL is not set | ||
| 358 | 386 | ||
| 359 | # | 387 | # |
| 360 | # RAM/ROM/Flash chip drivers | 388 | # RAM/ROM/Flash chip drivers |
| @@ -412,6 +440,11 @@ CONFIG_MTD_CFI_UTIL=y | |||
| 412 | # CONFIG_MTD_NAND is not set | 440 | # CONFIG_MTD_NAND is not set |
| 413 | 441 | ||
| 414 | # | 442 | # |
| 443 | # OneNAND Flash Device Drivers | ||
| 444 | # | ||
| 445 | # CONFIG_MTD_ONENAND is not set | ||
| 446 | |||
| 447 | # | ||
| 415 | # Parallel port support | 448 | # Parallel port support |
| 416 | # | 449 | # |
| 417 | # CONFIG_PARPORT is not set | 450 | # CONFIG_PARPORT is not set |
| @@ -438,16 +471,7 @@ CONFIG_BLK_DEV_RAM=y | |||
| 438 | CONFIG_BLK_DEV_RAM_COUNT=16 | 471 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 439 | CONFIG_BLK_DEV_RAM_SIZE=8192 | 472 | CONFIG_BLK_DEV_RAM_SIZE=8192 |
| 440 | CONFIG_BLK_DEV_INITRD=y | 473 | CONFIG_BLK_DEV_INITRD=y |
| 441 | # CONFIG_LBD is not set | ||
| 442 | # CONFIG_CDROM_PKTCDVD is not set | 474 | # CONFIG_CDROM_PKTCDVD is not set |
| 443 | |||
| 444 | # | ||
| 445 | # IO Schedulers | ||
| 446 | # | ||
| 447 | CONFIG_IOSCHED_NOOP=y | ||
| 448 | CONFIG_IOSCHED_AS=y | ||
| 449 | CONFIG_IOSCHED_DEADLINE=y | ||
| 450 | CONFIG_IOSCHED_CFQ=y | ||
| 451 | # CONFIG_ATA_OVER_ETH is not set | 475 | # CONFIG_ATA_OVER_ETH is not set |
| 452 | 476 | ||
| 453 | # | 477 | # |
| @@ -556,7 +580,6 @@ CONFIG_TUN=m | |||
| 556 | # PHY device support | 580 | # PHY device support |
| 557 | # | 581 | # |
| 558 | CONFIG_PHYLIB=m | 582 | CONFIG_PHYLIB=m |
| 559 | CONFIG_PHYCONTROL=y | ||
| 560 | 583 | ||
| 561 | # | 584 | # |
| 562 | # MII PHY device drivers | 585 | # MII PHY device drivers |
| @@ -574,6 +597,7 @@ CONFIG_NET_ETHERNET=y | |||
| 574 | # CONFIG_MII is not set | 597 | # CONFIG_MII is not set |
| 575 | # CONFIG_HAPPYMEAL is not set | 598 | # CONFIG_HAPPYMEAL is not set |
| 576 | # CONFIG_SUNGEM is not set | 599 | # CONFIG_SUNGEM is not set |
| 600 | # CONFIG_CASSINI is not set | ||
| 577 | # CONFIG_NET_VENDOR_3COM is not set | 601 | # CONFIG_NET_VENDOR_3COM is not set |
| 578 | # CONFIG_NET_VENDOR_SMC is not set | 602 | # CONFIG_NET_VENDOR_SMC is not set |
| 579 | # CONFIG_NET_VENDOR_RACAL is not set | 603 | # CONFIG_NET_VENDOR_RACAL is not set |
| @@ -619,7 +643,6 @@ CONFIG_NET_PCI=y | |||
| 619 | # CONFIG_TLAN is not set | 643 | # CONFIG_TLAN is not set |
| 620 | # CONFIG_VIA_RHINE is not set | 644 | # CONFIG_VIA_RHINE is not set |
| 621 | # CONFIG_LAN_SAA9730 is not set | 645 | # CONFIG_LAN_SAA9730 is not set |
| 622 | # CONFIG_NET_POCKET is not set | ||
| 623 | 646 | ||
| 624 | # | 647 | # |
| 625 | # Ethernet (1000 Mbit) | 648 | # Ethernet (1000 Mbit) |
| @@ -668,7 +691,6 @@ CONFIG_NET_RADIO=y | |||
| 668 | # CONFIG_IPW2100 is not set | 691 | # CONFIG_IPW2100 is not set |
| 669 | # CONFIG_IPW_DEBUG is not set | 692 | # CONFIG_IPW_DEBUG is not set |
| 670 | CONFIG_IPW2200=m | 693 | CONFIG_IPW2200=m |
| 671 | # CONFIG_AIRO is not set | ||
| 672 | # CONFIG_HERMES is not set | 694 | # CONFIG_HERMES is not set |
| 673 | # CONFIG_ATMEL is not set | 695 | # CONFIG_ATMEL is not set |
| 674 | 696 | ||
| @@ -692,6 +714,7 @@ CONFIG_PPP_ASYNC=m | |||
| 692 | CONFIG_PPP_SYNC_TTY=m | 714 | CONFIG_PPP_SYNC_TTY=m |
| 693 | CONFIG_PPP_DEFLATE=m | 715 | CONFIG_PPP_DEFLATE=m |
| 694 | # CONFIG_PPP_BSDCOMP is not set | 716 | # CONFIG_PPP_BSDCOMP is not set |
| 717 | CONFIG_PPP_MPPE=m | ||
| 695 | CONFIG_PPPOE=m | 718 | CONFIG_PPPOE=m |
| 696 | # CONFIG_SLIP is not set | 719 | # CONFIG_SLIP is not set |
| 697 | # CONFIG_SHAPER is not set | 720 | # CONFIG_SHAPER is not set |
| @@ -804,6 +827,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 804 | # TPM devices | 827 | # TPM devices |
| 805 | # | 828 | # |
| 806 | # CONFIG_TCG_TPM is not set | 829 | # CONFIG_TCG_TPM is not set |
| 830 | # CONFIG_TELCLOCK is not set | ||
| 807 | 831 | ||
| 808 | # | 832 | # |
| 809 | # I2C support | 833 | # I2C support |
| @@ -847,7 +871,6 @@ CONFIG_FB=y | |||
| 847 | CONFIG_FB_CFB_FILLRECT=y | 871 | CONFIG_FB_CFB_FILLRECT=y |
| 848 | CONFIG_FB_CFB_COPYAREA=y | 872 | CONFIG_FB_CFB_COPYAREA=y |
| 849 | CONFIG_FB_CFB_IMAGEBLIT=y | 873 | CONFIG_FB_CFB_IMAGEBLIT=y |
| 850 | CONFIG_FB_SOFT_CURSOR=y | ||
| 851 | # CONFIG_FB_MACMODES is not set | 874 | # CONFIG_FB_MACMODES is not set |
| 852 | # CONFIG_FB_MODE_HELPERS is not set | 875 | # CONFIG_FB_MODE_HELPERS is not set |
| 853 | # CONFIG_FB_TILEBLITTING is not set | 876 | # CONFIG_FB_TILEBLITTING is not set |
| @@ -856,6 +879,7 @@ CONFIG_FB_SOFT_CURSOR=y | |||
| 856 | # CONFIG_FB_CYBER2000 is not set | 879 | # CONFIG_FB_CYBER2000 is not set |
| 857 | # CONFIG_FB_ASILIANT is not set | 880 | # CONFIG_FB_ASILIANT is not set |
| 858 | # CONFIG_FB_IMSTT is not set | 881 | # CONFIG_FB_IMSTT is not set |
| 882 | # CONFIG_FB_S1D13XXX is not set | ||
| 859 | # CONFIG_FB_NVIDIA is not set | 883 | # CONFIG_FB_NVIDIA is not set |
| 860 | # CONFIG_FB_RIVA is not set | 884 | # CONFIG_FB_RIVA is not set |
| 861 | # CONFIG_FB_MATROX is not set | 885 | # CONFIG_FB_MATROX is not set |
| @@ -876,7 +900,6 @@ CONFIG_FB_ATY_CT=y | |||
| 876 | # CONFIG_FB_SMIVGX is not set | 900 | # CONFIG_FB_SMIVGX is not set |
| 877 | # CONFIG_FB_CYBLA is not set | 901 | # CONFIG_FB_CYBLA is not set |
| 878 | # CONFIG_FB_TRIDENT is not set | 902 | # CONFIG_FB_TRIDENT is not set |
| 879 | # CONFIG_FB_S1D13XXX is not set | ||
| 880 | # CONFIG_FB_VIRTUAL is not set | 903 | # CONFIG_FB_VIRTUAL is not set |
| 881 | 904 | ||
| 882 | # | 905 | # |
| @@ -926,12 +949,15 @@ CONFIG_USB=y | |||
| 926 | # | 949 | # |
| 927 | # USB Device Class drivers | 950 | # USB Device Class drivers |
| 928 | # | 951 | # |
| 929 | # CONFIG_USB_BLUETOOTH_TTY is not set | ||
| 930 | # CONFIG_USB_ACM is not set | 952 | # CONFIG_USB_ACM is not set |
| 931 | # CONFIG_USB_PRINTER is not set | 953 | # CONFIG_USB_PRINTER is not set |
| 932 | 954 | ||
| 933 | # | 955 | # |
| 934 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' may also be needed; see USB_STORAGE Help for more information | 956 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' |
| 957 | # | ||
| 958 | |||
| 959 | # | ||
| 960 | # may also be needed; see USB_STORAGE Help for more information | ||
| 935 | # | 961 | # |
| 936 | # CONFIG_USB_STORAGE is not set | 962 | # CONFIG_USB_STORAGE is not set |
| 937 | 963 | ||
| @@ -1106,6 +1132,7 @@ CONFIG_RELAYFS_FS=m | |||
| 1106 | CONFIG_JFFS2_FS=y | 1132 | CONFIG_JFFS2_FS=y |
| 1107 | CONFIG_JFFS2_FS_DEBUG=0 | 1133 | CONFIG_JFFS2_FS_DEBUG=0 |
| 1108 | CONFIG_JFFS2_FS_WRITEBUFFER=y | 1134 | CONFIG_JFFS2_FS_WRITEBUFFER=y |
| 1135 | # CONFIG_JFFS2_SUMMARY is not set | ||
| 1109 | # CONFIG_JFFS2_COMPRESSION_OPTIONS is not set | 1136 | # CONFIG_JFFS2_COMPRESSION_OPTIONS is not set |
| 1110 | CONFIG_JFFS2_ZLIB=y | 1137 | CONFIG_JFFS2_ZLIB=y |
| 1111 | CONFIG_JFFS2_RTIME=y | 1138 | CONFIG_JFFS2_RTIME=y |
diff --git a/arch/mips/configs/rm200_defconfig b/arch/mips/configs/rm200_defconfig index 988a05824f01..55458062352e 100644 --- a/arch/mips/configs/rm200_defconfig +++ b/arch/mips/configs/rm200_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:27:03 2005 | 4 | # Thu Nov 10 14:02:50 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -59,6 +59,24 @@ CONFIG_MODVERSIONS=y | |||
| 59 | CONFIG_KMOD=y | 59 | CONFIG_KMOD=y |
| 60 | 60 | ||
| 61 | # | 61 | # |
| 62 | # Block layer | ||
| 63 | # | ||
| 64 | # CONFIG_LBD is not set | ||
| 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" | ||
| 78 | |||
| 79 | # | ||
| 62 | # Machine selection | 80 | # Machine selection |
| 63 | # | 81 | # |
| 64 | # CONFIG_MIPS_MTX1 is not set | 82 | # CONFIG_MIPS_MTX1 is not set |
| @@ -190,6 +208,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 190 | CONFIG_FLATMEM=y | 208 | CONFIG_FLATMEM=y |
| 191 | CONFIG_FLAT_NODE_MEM_MAP=y | 209 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 192 | # CONFIG_SPARSEMEM_STATIC is not set | 210 | # CONFIG_SPARSEMEM_STATIC is not set |
| 211 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 193 | # CONFIG_PREEMPT_NONE is not set | 212 | # CONFIG_PREEMPT_NONE is not set |
| 194 | CONFIG_PREEMPT_VOLUNTARY=y | 213 | CONFIG_PREEMPT_VOLUNTARY=y |
| 195 | # CONFIG_PREEMPT is not set | 214 | # CONFIG_PREEMPT is not set |
| @@ -272,6 +291,10 @@ CONFIG_IPV6_TUNNEL=m | |||
| 272 | CONFIG_NETFILTER=y | 291 | CONFIG_NETFILTER=y |
| 273 | # CONFIG_NETFILTER_DEBUG is not set | 292 | # CONFIG_NETFILTER_DEBUG is not set |
| 274 | CONFIG_BRIDGE_NETFILTER=y | 293 | CONFIG_BRIDGE_NETFILTER=y |
| 294 | |||
| 295 | # | ||
| 296 | # Core Netfilter Configuration | ||
| 297 | # | ||
| 275 | CONFIG_NETFILTER_NETLINK=m | 298 | CONFIG_NETFILTER_NETLINK=m |
| 276 | CONFIG_NETFILTER_NETLINK_QUEUE=m | 299 | CONFIG_NETFILTER_NETLINK_QUEUE=m |
| 277 | CONFIG_NETFILTER_NETLINK_LOG=m | 300 | CONFIG_NETFILTER_NETLINK_LOG=m |
| @@ -325,6 +348,7 @@ CONFIG_IP_NF_TARGET_REJECT=m | |||
| 325 | CONFIG_IP_NF_TARGET_LOG=m | 348 | CONFIG_IP_NF_TARGET_LOG=m |
| 326 | CONFIG_IP_NF_TARGET_ULOG=m | 349 | CONFIG_IP_NF_TARGET_ULOG=m |
| 327 | CONFIG_IP_NF_TARGET_TCPMSS=m | 350 | CONFIG_IP_NF_TARGET_TCPMSS=m |
| 351 | CONFIG_IP_NF_TARGET_NFQUEUE=m | ||
| 328 | CONFIG_IP_NF_NAT=m | 352 | CONFIG_IP_NF_NAT=m |
| 329 | CONFIG_IP_NF_NAT_NEEDED=y | 353 | CONFIG_IP_NF_NAT_NEEDED=y |
| 330 | CONFIG_IP_NF_TARGET_MASQUERADE=m | 354 | CONFIG_IP_NF_TARGET_MASQUERADE=m |
| @@ -374,6 +398,7 @@ CONFIG_IP6_NF_MATCH_PHYSDEV=m | |||
| 374 | CONFIG_IP6_NF_FILTER=m | 398 | CONFIG_IP6_NF_FILTER=m |
| 375 | CONFIG_IP6_NF_TARGET_LOG=m | 399 | CONFIG_IP6_NF_TARGET_LOG=m |
| 376 | CONFIG_IP6_NF_TARGET_REJECT=m | 400 | CONFIG_IP6_NF_TARGET_REJECT=m |
| 401 | CONFIG_IP6_NF_TARGET_NFQUEUE=m | ||
| 377 | CONFIG_IP6_NF_MANGLE=m | 402 | CONFIG_IP6_NF_MANGLE=m |
| 378 | CONFIG_IP6_NF_TARGET_MARK=m | 403 | CONFIG_IP6_NF_TARGET_MARK=m |
| 379 | CONFIG_IP6_NF_TARGET_HL=m | 404 | CONFIG_IP6_NF_TARGET_HL=m |
| @@ -430,10 +455,18 @@ CONFIG_DECNET=m | |||
| 430 | # CONFIG_NET_DIVERT is not set | 455 | # CONFIG_NET_DIVERT is not set |
| 431 | # CONFIG_ECONET is not set | 456 | # CONFIG_ECONET is not set |
| 432 | # CONFIG_WAN_ROUTER is not set | 457 | # CONFIG_WAN_ROUTER is not set |
| 458 | |||
| 459 | # | ||
| 460 | # QoS and/or fair queueing | ||
| 461 | # | ||
| 433 | CONFIG_NET_SCHED=y | 462 | CONFIG_NET_SCHED=y |
| 434 | CONFIG_NET_SCH_CLK_JIFFIES=y | 463 | CONFIG_NET_SCH_CLK_JIFFIES=y |
| 435 | # CONFIG_NET_SCH_CLK_GETTIMEOFDAY is not set | 464 | # CONFIG_NET_SCH_CLK_GETTIMEOFDAY is not set |
| 436 | # CONFIG_NET_SCH_CLK_CPU is not set | 465 | # CONFIG_NET_SCH_CLK_CPU is not set |
| 466 | |||
| 467 | # | ||
| 468 | # Queueing/Scheduling | ||
| 469 | # | ||
| 437 | CONFIG_NET_SCH_CBQ=m | 470 | CONFIG_NET_SCH_CBQ=m |
| 438 | CONFIG_NET_SCH_HTB=m | 471 | CONFIG_NET_SCH_HTB=m |
| 439 | CONFIG_NET_SCH_HFSC=m | 472 | CONFIG_NET_SCH_HFSC=m |
| @@ -446,8 +479,10 @@ CONFIG_NET_SCH_GRED=m | |||
| 446 | CONFIG_NET_SCH_DSMARK=m | 479 | CONFIG_NET_SCH_DSMARK=m |
| 447 | CONFIG_NET_SCH_NETEM=m | 480 | CONFIG_NET_SCH_NETEM=m |
| 448 | CONFIG_NET_SCH_INGRESS=m | 481 | CONFIG_NET_SCH_INGRESS=m |
| 449 | CONFIG_NET_QOS=y | 482 | |
| 450 | CONFIG_NET_ESTIMATOR=y | 483 | # |
| 484 | # Classification | ||
| 485 | # | ||
| 451 | CONFIG_NET_CLS=y | 486 | CONFIG_NET_CLS=y |
| 452 | CONFIG_NET_CLS_BASIC=m | 487 | CONFIG_NET_CLS_BASIC=m |
| 453 | CONFIG_NET_CLS_TCINDEX=m | 488 | CONFIG_NET_CLS_TCINDEX=m |
| @@ -456,13 +491,14 @@ CONFIG_NET_CLS_ROUTE=y | |||
| 456 | CONFIG_NET_CLS_FW=m | 491 | CONFIG_NET_CLS_FW=m |
| 457 | CONFIG_NET_CLS_U32=m | 492 | CONFIG_NET_CLS_U32=m |
| 458 | # CONFIG_CLS_U32_PERF is not set | 493 | # CONFIG_CLS_U32_PERF is not set |
| 459 | # CONFIG_NET_CLS_IND is not set | ||
| 460 | # CONFIG_CLS_U32_MARK is not set | 494 | # CONFIG_CLS_U32_MARK is not set |
| 461 | CONFIG_NET_CLS_RSVP=m | 495 | CONFIG_NET_CLS_RSVP=m |
| 462 | CONFIG_NET_CLS_RSVP6=m | 496 | CONFIG_NET_CLS_RSVP6=m |
| 463 | # CONFIG_NET_EMATCH is not set | 497 | # CONFIG_NET_EMATCH is not set |
| 464 | # CONFIG_NET_CLS_ACT is not set | 498 | # CONFIG_NET_CLS_ACT is not set |
| 465 | CONFIG_NET_CLS_POLICE=y | 499 | CONFIG_NET_CLS_POLICE=y |
| 500 | # CONFIG_NET_CLS_IND is not set | ||
| 501 | CONFIG_NET_ESTIMATOR=y | ||
| 466 | 502 | ||
| 467 | # | 503 | # |
| 468 | # Network testing | 504 | # Network testing |
| @@ -583,18 +619,9 @@ CONFIG_BLK_DEV_UB=m | |||
| 583 | CONFIG_BLK_DEV_RAM=m | 619 | CONFIG_BLK_DEV_RAM=m |
| 584 | CONFIG_BLK_DEV_RAM_COUNT=16 | 620 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 585 | CONFIG_BLK_DEV_RAM_SIZE=4096 | 621 | CONFIG_BLK_DEV_RAM_SIZE=4096 |
| 586 | # CONFIG_LBD is not set | ||
| 587 | CONFIG_CDROM_PKTCDVD=m | 622 | CONFIG_CDROM_PKTCDVD=m |
| 588 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 623 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 589 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 624 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 590 | |||
| 591 | # | ||
| 592 | # IO Schedulers | ||
| 593 | # | ||
| 594 | CONFIG_IOSCHED_NOOP=y | ||
| 595 | CONFIG_IOSCHED_AS=y | ||
| 596 | CONFIG_IOSCHED_DEADLINE=y | ||
| 597 | CONFIG_IOSCHED_CFQ=y | ||
| 598 | CONFIG_ATA_OVER_ETH=m | 625 | CONFIG_ATA_OVER_ETH=m |
| 599 | 626 | ||
| 600 | # | 627 | # |
| @@ -638,6 +665,7 @@ CONFIG_SCSI_SAS_ATTRS=m | |||
| 638 | # | 665 | # |
| 639 | # SCSI low-level drivers | 666 | # SCSI low-level drivers |
| 640 | # | 667 | # |
| 668 | CONFIG_ISCSI_TCP=m | ||
| 641 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set | 669 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set |
| 642 | # CONFIG_SCSI_3W_9XXX is not set | 670 | # CONFIG_SCSI_3W_9XXX is not set |
| 643 | # CONFIG_SCSI_ACARD is not set | 671 | # CONFIG_SCSI_ACARD is not set |
| @@ -651,6 +679,7 @@ CONFIG_SCSI_SAS_ATTRS=m | |||
| 651 | CONFIG_MEGARAID_NEWGEN=y | 679 | CONFIG_MEGARAID_NEWGEN=y |
| 652 | CONFIG_MEGARAID_MM=m | 680 | CONFIG_MEGARAID_MM=m |
| 653 | CONFIG_MEGARAID_MAILBOX=m | 681 | CONFIG_MEGARAID_MAILBOX=m |
| 682 | # CONFIG_MEGARAID_SAS is not set | ||
| 654 | # CONFIG_SCSI_SATA is not set | 683 | # CONFIG_SCSI_SATA is not set |
| 655 | # CONFIG_SCSI_DMX3191D is not set | 684 | # CONFIG_SCSI_DMX3191D is not set |
| 656 | # CONFIG_SCSI_DTC3280 is not set | 685 | # CONFIG_SCSI_DTC3280 is not set |
| @@ -723,6 +752,7 @@ CONFIG_DM_MULTIPATH_EMC=m | |||
| 723 | # CONFIG_FUSION is not set | 752 | # CONFIG_FUSION is not set |
| 724 | # CONFIG_FUSION_SPI is not set | 753 | # CONFIG_FUSION_SPI is not set |
| 725 | # CONFIG_FUSION_FC is not set | 754 | # CONFIG_FUSION_FC is not set |
| 755 | # CONFIG_FUSION_SAS is not set | ||
| 726 | 756 | ||
| 727 | # | 757 | # |
| 728 | # IEEE 1394 (FireWire) support | 758 | # IEEE 1394 (FireWire) support |
| @@ -752,7 +782,6 @@ CONFIG_TUN=m | |||
| 752 | # PHY device support | 782 | # PHY device support |
| 753 | # | 783 | # |
| 754 | CONFIG_PHYLIB=m | 784 | CONFIG_PHYLIB=m |
| 755 | CONFIG_PHYCONTROL=y | ||
| 756 | 785 | ||
| 757 | # | 786 | # |
| 758 | # MII PHY device drivers | 787 | # MII PHY device drivers |
| @@ -770,6 +799,7 @@ CONFIG_NET_ETHERNET=y | |||
| 770 | CONFIG_MII=y | 799 | CONFIG_MII=y |
| 771 | # CONFIG_HAPPYMEAL is not set | 800 | # CONFIG_HAPPYMEAL is not set |
| 772 | # CONFIG_SUNGEM is not set | 801 | # CONFIG_SUNGEM is not set |
| 802 | # CONFIG_CASSINI is not set | ||
| 773 | # CONFIG_NET_VENDOR_3COM is not set | 803 | # CONFIG_NET_VENDOR_3COM is not set |
| 774 | # CONFIG_NET_VENDOR_SMC is not set | 804 | # CONFIG_NET_VENDOR_SMC is not set |
| 775 | # CONFIG_NET_VENDOR_RACAL is not set | 805 | # CONFIG_NET_VENDOR_RACAL is not set |
| @@ -984,6 +1014,7 @@ CONFIG_RTC=m | |||
| 984 | # TPM devices | 1014 | # TPM devices |
| 985 | # | 1015 | # |
| 986 | # CONFIG_TCG_TPM is not set | 1016 | # CONFIG_TCG_TPM is not set |
| 1017 | # CONFIG_TELCLOCK is not set | ||
| 987 | 1018 | ||
| 988 | # | 1019 | # |
| 989 | # I2C support | 1020 | # I2C support |
| @@ -1074,12 +1105,15 @@ CONFIG_USB_UHCI_HCD=m | |||
| 1074 | # | 1105 | # |
| 1075 | # USB Device Class drivers | 1106 | # USB Device Class drivers |
| 1076 | # | 1107 | # |
| 1077 | CONFIG_USB_BLUETOOTH_TTY=m | ||
| 1078 | CONFIG_USB_ACM=m | 1108 | CONFIG_USB_ACM=m |
| 1079 | CONFIG_USB_PRINTER=m | 1109 | CONFIG_USB_PRINTER=m |
| 1080 | 1110 | ||
| 1081 | # | 1111 | # |
| 1082 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' may also be needed; see USB_STORAGE Help for more information | 1112 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' |
| 1113 | # | ||
| 1114 | |||
| 1115 | # | ||
| 1116 | # may also be needed; see USB_STORAGE Help for more information | ||
| 1083 | # | 1117 | # |
| 1084 | CONFIG_USB_STORAGE=m | 1118 | CONFIG_USB_STORAGE=m |
| 1085 | # CONFIG_USB_STORAGE_DEBUG is not set | 1119 | # CONFIG_USB_STORAGE_DEBUG is not set |
| @@ -1196,6 +1230,7 @@ CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y | |||
| 1196 | CONFIG_USB_SERIAL_KLSI=m | 1230 | CONFIG_USB_SERIAL_KLSI=m |
| 1197 | CONFIG_USB_SERIAL_KOBIL_SCT=m | 1231 | CONFIG_USB_SERIAL_KOBIL_SCT=m |
| 1198 | CONFIG_USB_SERIAL_MCT_U232=m | 1232 | CONFIG_USB_SERIAL_MCT_U232=m |
| 1233 | # CONFIG_USB_SERIAL_NOKIA_DKU2 is not set | ||
| 1199 | CONFIG_USB_SERIAL_PL2303=m | 1234 | CONFIG_USB_SERIAL_PL2303=m |
| 1200 | CONFIG_USB_SERIAL_HP4X=m | 1235 | CONFIG_USB_SERIAL_HP4X=m |
| 1201 | CONFIG_USB_SERIAL_SAFE=m | 1236 | CONFIG_USB_SERIAL_SAFE=m |
| @@ -1271,7 +1306,7 @@ CONFIG_REISERFS_FS_SECURITY=y | |||
| 1271 | CONFIG_FS_POSIX_ACL=y | 1306 | CONFIG_FS_POSIX_ACL=y |
| 1272 | CONFIG_XFS_FS=m | 1307 | CONFIG_XFS_FS=m |
| 1273 | CONFIG_XFS_EXPORT=y | 1308 | CONFIG_XFS_EXPORT=y |
| 1274 | CONFIG_XFS_QUOTA=m | 1309 | CONFIG_XFS_QUOTA=y |
| 1275 | CONFIG_XFS_SECURITY=y | 1310 | CONFIG_XFS_SECURITY=y |
| 1276 | # CONFIG_XFS_POSIX_ACL is not set | 1311 | # CONFIG_XFS_POSIX_ACL is not set |
| 1277 | # CONFIG_XFS_RT is not set | 1312 | # CONFIG_XFS_RT is not set |
diff --git a/arch/mips/configs/sb1250-swarm_defconfig b/arch/mips/configs/sb1250-swarm_defconfig index 4365d9c8c42e..dc453a1e4806 100644 --- a/arch/mips/configs/sb1250-swarm_defconfig +++ b/arch/mips/configs/sb1250-swarm_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:27:05 2005 | 4 | # Mon Nov 7 23:06:43 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -59,6 +59,23 @@ CONFIG_KMOD=y | |||
| 59 | CONFIG_STOP_MACHINE=y | 59 | CONFIG_STOP_MACHINE=y |
| 60 | 60 | ||
| 61 | # | 61 | # |
| 62 | # Block layer | ||
| 63 | # | ||
| 64 | |||
| 65 | # | ||
| 66 | # IO Schedulers | ||
| 67 | # | ||
| 68 | CONFIG_IOSCHED_NOOP=y | ||
| 69 | CONFIG_IOSCHED_AS=y | ||
| 70 | CONFIG_IOSCHED_DEADLINE=y | ||
| 71 | CONFIG_IOSCHED_CFQ=y | ||
| 72 | CONFIG_DEFAULT_AS=y | ||
| 73 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 74 | # CONFIG_DEFAULT_CFQ is not set | ||
| 75 | # CONFIG_DEFAULT_NOOP is not set | ||
| 76 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 77 | |||
| 78 | # | ||
| 62 | # Machine selection | 79 | # Machine selection |
| 63 | # | 80 | # |
| 64 | # CONFIG_MIPS_MTX1 is not set | 81 | # CONFIG_MIPS_MTX1 is not set |
| @@ -126,8 +143,8 @@ CONFIG_CPU_SB1_PASS_1=y | |||
| 126 | # CONFIG_CPU_SB1_PASS_3 is not set | 143 | # CONFIG_CPU_SB1_PASS_3 is not set |
| 127 | CONFIG_SIBYTE_HAS_LDT=y | 144 | CONFIG_SIBYTE_HAS_LDT=y |
| 128 | # CONFIG_SIMULATION is not set | 145 | # CONFIG_SIMULATION is not set |
| 129 | # CONFIG_CONFIG_SB1_CEX_ALWAYS_FATAL is not set | 146 | # CONFIG_SB1_CEX_ALWAYS_FATAL is not set |
| 130 | # CONFIG_CONFIG_SB1_CERR_STALL is not set | 147 | # CONFIG_SB1_CERR_STALL is not set |
| 131 | CONFIG_SIBYTE_CFE=y | 148 | CONFIG_SIBYTE_CFE=y |
| 132 | # CONFIG_SIBYTE_CFE_CONSOLE is not set | 149 | # CONFIG_SIBYTE_CFE_CONSOLE is not set |
| 133 | # CONFIG_SIBYTE_BUS_WATCHER is not set | 150 | # CONFIG_SIBYTE_BUS_WATCHER is not set |
| @@ -200,6 +217,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 200 | CONFIG_FLATMEM=y | 217 | CONFIG_FLATMEM=y |
| 201 | CONFIG_FLAT_NODE_MEM_MAP=y | 218 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 202 | # CONFIG_SPARSEMEM_STATIC is not set | 219 | # CONFIG_SPARSEMEM_STATIC is not set |
| 220 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 203 | CONFIG_SMP=y | 221 | CONFIG_SMP=y |
| 204 | CONFIG_NR_CPUS=2 | 222 | CONFIG_NR_CPUS=2 |
| 205 | CONFIG_PREEMPT_NONE=y | 223 | CONFIG_PREEMPT_NONE=y |
| @@ -295,6 +313,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 295 | # CONFIG_NET_DIVERT is not set | 313 | # CONFIG_NET_DIVERT is not set |
| 296 | # CONFIG_ECONET is not set | 314 | # CONFIG_ECONET is not set |
| 297 | # CONFIG_WAN_ROUTER is not set | 315 | # CONFIG_WAN_ROUTER is not set |
| 316 | |||
| 317 | # | ||
| 318 | # QoS and/or fair queueing | ||
| 319 | # | ||
| 298 | # CONFIG_NET_SCHED is not set | 320 | # CONFIG_NET_SCHED is not set |
| 299 | # CONFIG_NET_CLS_ROUTE is not set | 321 | # CONFIG_NET_CLS_ROUTE is not set |
| 300 | 322 | ||
| @@ -359,14 +381,6 @@ CONFIG_BLK_DEV_INITRD=y | |||
| 359 | CONFIG_CDROM_PKTCDVD=m | 381 | CONFIG_CDROM_PKTCDVD=m |
| 360 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 382 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 361 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 383 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 362 | |||
| 363 | # | ||
| 364 | # IO Schedulers | ||
| 365 | # | ||
| 366 | CONFIG_IOSCHED_NOOP=y | ||
| 367 | CONFIG_IOSCHED_AS=y | ||
| 368 | CONFIG_IOSCHED_DEADLINE=y | ||
| 369 | CONFIG_IOSCHED_CFQ=y | ||
| 370 | CONFIG_ATA_OVER_ETH=m | 384 | CONFIG_ATA_OVER_ETH=m |
| 371 | 385 | ||
| 372 | # | 386 | # |
| @@ -441,7 +455,6 @@ CONFIG_NETDEVICES=y | |||
| 441 | # PHY device support | 455 | # PHY device support |
| 442 | # | 456 | # |
| 443 | CONFIG_PHYLIB=m | 457 | CONFIG_PHYLIB=m |
| 444 | CONFIG_PHYCONTROL=y | ||
| 445 | 458 | ||
| 446 | # | 459 | # |
| 447 | # MII PHY device drivers | 460 | # MII PHY device drivers |
| @@ -459,6 +472,7 @@ CONFIG_NET_ETHERNET=y | |||
| 459 | CONFIG_MII=y | 472 | CONFIG_MII=y |
| 460 | # CONFIG_HAPPYMEAL is not set | 473 | # CONFIG_HAPPYMEAL is not set |
| 461 | # CONFIG_SUNGEM is not set | 474 | # CONFIG_SUNGEM is not set |
| 475 | # CONFIG_CASSINI is not set | ||
| 462 | # CONFIG_NET_VENDOR_3COM is not set | 476 | # CONFIG_NET_VENDOR_3COM is not set |
| 463 | 477 | ||
| 464 | # | 478 | # |
| @@ -599,6 +613,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 599 | # TPM devices | 613 | # TPM devices |
| 600 | # | 614 | # |
| 601 | # CONFIG_TCG_TPM is not set | 615 | # CONFIG_TCG_TPM is not set |
| 616 | # CONFIG_TELCLOCK is not set | ||
| 602 | 617 | ||
| 603 | # | 618 | # |
| 604 | # I2C support | 619 | # I2C support |
| @@ -652,6 +667,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 652 | # CONFIG_USB is not set | 667 | # CONFIG_USB is not set |
| 653 | 668 | ||
| 654 | # | 669 | # |
| 670 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 671 | # | ||
| 672 | |||
| 673 | # | ||
| 655 | # USB Gadget Support | 674 | # USB Gadget Support |
| 656 | # | 675 | # |
| 657 | # CONFIG_USB_GADGET is not set | 676 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/sead_defconfig b/arch/mips/configs/sead_defconfig index d835f6db1f41..aa27d583162d 100644 --- a/arch/mips/configs/sead_defconfig +++ b/arch/mips/configs/sead_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:27:07 2005 | 4 | # Mon Nov 7 23:06:45 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -48,6 +48,24 @@ CONFIG_BASE_SMALL=0 | |||
| 48 | # CONFIG_MODULES is not set | 48 | # CONFIG_MODULES is not set |
| 49 | 49 | ||
| 50 | # | 50 | # |
| 51 | # Block layer | ||
| 52 | # | ||
| 53 | # CONFIG_LBD is not set | ||
| 54 | |||
| 55 | # | ||
| 56 | # IO Schedulers | ||
| 57 | # | ||
| 58 | CONFIG_IOSCHED_NOOP=y | ||
| 59 | CONFIG_IOSCHED_AS=y | ||
| 60 | CONFIG_IOSCHED_DEADLINE=y | ||
| 61 | CONFIG_IOSCHED_CFQ=y | ||
| 62 | CONFIG_DEFAULT_AS=y | ||
| 63 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 64 | # CONFIG_DEFAULT_CFQ is not set | ||
| 65 | # CONFIG_DEFAULT_NOOP is not set | ||
| 66 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 67 | |||
| 68 | # | ||
| 51 | # Machine selection | 69 | # Machine selection |
| 52 | # | 70 | # |
| 53 | # CONFIG_MIPS_MTX1 is not set | 71 | # CONFIG_MIPS_MTX1 is not set |
| @@ -173,6 +191,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 173 | CONFIG_FLATMEM=y | 191 | CONFIG_FLATMEM=y |
| 174 | CONFIG_FLAT_NODE_MEM_MAP=y | 192 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 175 | # CONFIG_SPARSEMEM_STATIC is not set | 193 | # CONFIG_SPARSEMEM_STATIC is not set |
| 194 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 176 | CONFIG_PREEMPT_NONE=y | 195 | CONFIG_PREEMPT_NONE=y |
| 177 | # CONFIG_PREEMPT_VOLUNTARY is not set | 196 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 178 | # CONFIG_PREEMPT is not set | 197 | # CONFIG_PREEMPT is not set |
| @@ -242,18 +261,9 @@ CONFIG_BLK_DEV_RAM=y | |||
| 242 | CONFIG_BLK_DEV_RAM_COUNT=16 | 261 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 243 | CONFIG_BLK_DEV_RAM_SIZE=18432 | 262 | CONFIG_BLK_DEV_RAM_SIZE=18432 |
| 244 | CONFIG_BLK_DEV_INITRD=y | 263 | CONFIG_BLK_DEV_INITRD=y |
| 245 | # CONFIG_LBD is not set | ||
| 246 | # CONFIG_CDROM_PKTCDVD is not set | 264 | # CONFIG_CDROM_PKTCDVD is not set |
| 247 | 265 | ||
| 248 | # | 266 | # |
| 249 | # IO Schedulers | ||
| 250 | # | ||
| 251 | CONFIG_IOSCHED_NOOP=y | ||
| 252 | CONFIG_IOSCHED_AS=y | ||
| 253 | CONFIG_IOSCHED_DEADLINE=y | ||
| 254 | CONFIG_IOSCHED_CFQ=y | ||
| 255 | |||
| 256 | # | ||
| 257 | # ATA/ATAPI/MFM/RLL support | 267 | # ATA/ATAPI/MFM/RLL support |
| 258 | # | 268 | # |
| 259 | # CONFIG_IDE is not set | 269 | # CONFIG_IDE is not set |
| @@ -353,6 +363,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 353 | # | 363 | # |
| 354 | # TPM devices | 364 | # TPM devices |
| 355 | # | 365 | # |
| 366 | # CONFIG_TELCLOCK is not set | ||
| 356 | 367 | ||
| 357 | # | 368 | # |
| 358 | # I2C support | 369 | # I2C support |
| @@ -404,6 +415,10 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 404 | # CONFIG_USB_ARCH_HAS_OHCI is not set | 415 | # CONFIG_USB_ARCH_HAS_OHCI is not set |
| 405 | 416 | ||
| 406 | # | 417 | # |
| 418 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 419 | # | ||
| 420 | |||
| 421 | # | ||
| 407 | # USB Gadget Support | 422 | # USB Gadget Support |
| 408 | # | 423 | # |
| 409 | # CONFIG_USB_GADGET is not set | 424 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/tb0226_defconfig b/arch/mips/configs/tb0226_defconfig index bf60a17de2b0..ddc7e45996f2 100644 --- a/arch/mips/configs/tb0226_defconfig +++ b/arch/mips/configs/tb0226_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:27:10 2005 | 4 | # Mon Nov 7 23:06:49 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -57,6 +57,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 57 | CONFIG_KMOD=y | 57 | CONFIG_KMOD=y |
| 58 | 58 | ||
| 59 | # | 59 | # |
| 60 | # Block layer | ||
| 61 | # | ||
| 62 | # CONFIG_LBD is not set | ||
| 63 | |||
| 64 | # | ||
| 65 | # IO Schedulers | ||
| 66 | # | ||
| 67 | CONFIG_IOSCHED_NOOP=y | ||
| 68 | CONFIG_IOSCHED_AS=y | ||
| 69 | CONFIG_IOSCHED_DEADLINE=y | ||
| 70 | CONFIG_IOSCHED_CFQ=y | ||
| 71 | CONFIG_DEFAULT_AS=y | ||
| 72 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 73 | # CONFIG_DEFAULT_CFQ is not set | ||
| 74 | # CONFIG_DEFAULT_NOOP is not set | ||
| 75 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 76 | |||
| 77 | # | ||
| 60 | # Machine selection | 78 | # Machine selection |
| 61 | # | 79 | # |
| 62 | # CONFIG_MIPS_MTX1 is not set | 80 | # CONFIG_MIPS_MTX1 is not set |
| @@ -183,6 +201,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 183 | CONFIG_FLATMEM=y | 201 | CONFIG_FLATMEM=y |
| 184 | CONFIG_FLAT_NODE_MEM_MAP=y | 202 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 185 | # CONFIG_SPARSEMEM_STATIC is not set | 203 | # CONFIG_SPARSEMEM_STATIC is not set |
| 204 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 186 | CONFIG_PREEMPT_NONE=y | 205 | CONFIG_PREEMPT_NONE=y |
| 187 | # CONFIG_PREEMPT_VOLUNTARY is not set | 206 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 188 | # CONFIG_PREEMPT is not set | 207 | # CONFIG_PREEMPT is not set |
| @@ -277,6 +296,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 277 | # CONFIG_NET_DIVERT is not set | 296 | # CONFIG_NET_DIVERT is not set |
| 278 | # CONFIG_ECONET is not set | 297 | # CONFIG_ECONET is not set |
| 279 | # CONFIG_WAN_ROUTER is not set | 298 | # CONFIG_WAN_ROUTER is not set |
| 299 | |||
| 300 | # | ||
| 301 | # QoS and/or fair queueing | ||
| 302 | # | ||
| 280 | # CONFIG_NET_SCHED is not set | 303 | # CONFIG_NET_SCHED is not set |
| 281 | # CONFIG_NET_CLS_ROUTE is not set | 304 | # CONFIG_NET_CLS_ROUTE is not set |
| 282 | 305 | ||
| @@ -339,16 +362,7 @@ CONFIG_BLK_DEV_NBD=m | |||
| 339 | CONFIG_BLK_DEV_RAM=m | 362 | CONFIG_BLK_DEV_RAM=m |
| 340 | CONFIG_BLK_DEV_RAM_COUNT=16 | 363 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 341 | CONFIG_BLK_DEV_RAM_SIZE=4096 | 364 | CONFIG_BLK_DEV_RAM_SIZE=4096 |
| 342 | # CONFIG_LBD is not set | ||
| 343 | # CONFIG_CDROM_PKTCDVD is not set | 365 | # CONFIG_CDROM_PKTCDVD is not set |
| 344 | |||
| 345 | # | ||
| 346 | # IO Schedulers | ||
| 347 | # | ||
| 348 | CONFIG_IOSCHED_NOOP=y | ||
| 349 | CONFIG_IOSCHED_AS=y | ||
| 350 | CONFIG_IOSCHED_DEADLINE=y | ||
| 351 | CONFIG_IOSCHED_CFQ=y | ||
| 352 | CONFIG_ATA_OVER_ETH=m | 366 | CONFIG_ATA_OVER_ETH=m |
| 353 | 367 | ||
| 354 | # | 368 | # |
| @@ -385,12 +399,13 @@ CONFIG_SCSI_MULTI_LUN=y | |||
| 385 | # | 399 | # |
| 386 | # CONFIG_SCSI_SPI_ATTRS is not set | 400 | # CONFIG_SCSI_SPI_ATTRS is not set |
| 387 | # CONFIG_SCSI_FC_ATTRS is not set | 401 | # CONFIG_SCSI_FC_ATTRS is not set |
| 388 | # CONFIG_SCSI_ISCSI_ATTRS is not set | 402 | CONFIG_SCSI_ISCSI_ATTRS=m |
| 389 | # CONFIG_SCSI_SAS_ATTRS is not set | 403 | # CONFIG_SCSI_SAS_ATTRS is not set |
| 390 | 404 | ||
| 391 | # | 405 | # |
| 392 | # SCSI low-level drivers | 406 | # SCSI low-level drivers |
| 393 | # | 407 | # |
| 408 | CONFIG_ISCSI_TCP=m | ||
| 394 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set | 409 | # CONFIG_BLK_DEV_3W_XXXX_RAID is not set |
| 395 | # CONFIG_SCSI_3W_9XXX is not set | 410 | # CONFIG_SCSI_3W_9XXX is not set |
| 396 | # CONFIG_SCSI_ACARD is not set | 411 | # CONFIG_SCSI_ACARD is not set |
| @@ -401,6 +416,7 @@ CONFIG_SCSI_MULTI_LUN=y | |||
| 401 | # CONFIG_SCSI_DPT_I2O is not set | 416 | # CONFIG_SCSI_DPT_I2O is not set |
| 402 | # CONFIG_MEGARAID_NEWGEN is not set | 417 | # CONFIG_MEGARAID_NEWGEN is not set |
| 403 | # CONFIG_MEGARAID_LEGACY is not set | 418 | # CONFIG_MEGARAID_LEGACY is not set |
| 419 | # CONFIG_MEGARAID_SAS is not set | ||
| 404 | # CONFIG_SCSI_SATA is not set | 420 | # CONFIG_SCSI_SATA is not set |
| 405 | # CONFIG_SCSI_DMX3191D is not set | 421 | # CONFIG_SCSI_DMX3191D is not set |
| 406 | # CONFIG_SCSI_FUTURE_DOMAIN is not set | 422 | # CONFIG_SCSI_FUTURE_DOMAIN is not set |
| @@ -435,6 +451,7 @@ CONFIG_SCSI_QLA2XXX=y | |||
| 435 | # CONFIG_FUSION is not set | 451 | # CONFIG_FUSION is not set |
| 436 | # CONFIG_FUSION_SPI is not set | 452 | # CONFIG_FUSION_SPI is not set |
| 437 | # CONFIG_FUSION_FC is not set | 453 | # CONFIG_FUSION_FC is not set |
| 454 | # CONFIG_FUSION_SAS is not set | ||
| 438 | 455 | ||
| 439 | # | 456 | # |
| 440 | # IEEE 1394 (FireWire) support | 457 | # IEEE 1394 (FireWire) support |
| @@ -464,7 +481,6 @@ CONFIG_NETDEVICES=y | |||
| 464 | # PHY device support | 481 | # PHY device support |
| 465 | # | 482 | # |
| 466 | CONFIG_PHYLIB=m | 483 | CONFIG_PHYLIB=m |
| 467 | CONFIG_PHYCONTROL=y | ||
| 468 | 484 | ||
| 469 | # | 485 | # |
| 470 | # MII PHY device drivers | 486 | # MII PHY device drivers |
| @@ -482,6 +498,7 @@ CONFIG_NET_ETHERNET=y | |||
| 482 | CONFIG_MII=y | 498 | CONFIG_MII=y |
| 483 | # CONFIG_HAPPYMEAL is not set | 499 | # CONFIG_HAPPYMEAL is not set |
| 484 | # CONFIG_SUNGEM is not set | 500 | # CONFIG_SUNGEM is not set |
| 501 | # CONFIG_CASSINI is not set | ||
| 485 | # CONFIG_NET_VENDOR_3COM is not set | 502 | # CONFIG_NET_VENDOR_3COM is not set |
| 486 | 503 | ||
| 487 | # | 504 | # |
| @@ -634,6 +651,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 634 | # CONFIG_WATCHDOG is not set | 651 | # CONFIG_WATCHDOG is not set |
| 635 | # CONFIG_RTC is not set | 652 | # CONFIG_RTC is not set |
| 636 | # CONFIG_GEN_RTC is not set | 653 | # CONFIG_GEN_RTC is not set |
| 654 | # CONFIG_RTC_VR41XX is not set | ||
| 637 | # CONFIG_DTLK is not set | 655 | # CONFIG_DTLK is not set |
| 638 | # CONFIG_R3964 is not set | 656 | # CONFIG_R3964 is not set |
| 639 | # CONFIG_APPLICOM is not set | 657 | # CONFIG_APPLICOM is not set |
| @@ -650,6 +668,7 @@ CONFIG_GPIO_VR41XX=y | |||
| 650 | # TPM devices | 668 | # TPM devices |
| 651 | # | 669 | # |
| 652 | # CONFIG_TCG_TPM is not set | 670 | # CONFIG_TCG_TPM is not set |
| 671 | # CONFIG_TELCLOCK is not set | ||
| 653 | 672 | ||
| 654 | # | 673 | # |
| 655 | # I2C support | 674 | # I2C support |
| @@ -733,12 +752,15 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y | |||
| 733 | # | 752 | # |
| 734 | # USB Device Class drivers | 753 | # USB Device Class drivers |
| 735 | # | 754 | # |
| 736 | # CONFIG_USB_BLUETOOTH_TTY is not set | ||
| 737 | # CONFIG_USB_ACM is not set | 755 | # CONFIG_USB_ACM is not set |
| 738 | # CONFIG_USB_PRINTER is not set | 756 | # CONFIG_USB_PRINTER is not set |
| 739 | 757 | ||
| 740 | # | 758 | # |
| 741 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' may also be needed; see USB_STORAGE Help for more information | 759 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' |
| 760 | # | ||
| 761 | |||
| 762 | # | ||
| 763 | # may also be needed; see USB_STORAGE Help for more information | ||
| 742 | # | 764 | # |
| 743 | CONFIG_USB_STORAGE=m | 765 | CONFIG_USB_STORAGE=m |
| 744 | # CONFIG_USB_STORAGE_DEBUG is not set | 766 | # CONFIG_USB_STORAGE_DEBUG is not set |
diff --git a/arch/mips/configs/tb0229_defconfig b/arch/mips/configs/tb0229_defconfig index ac8b64e87b8a..e8c82f011e98 100644 --- a/arch/mips/configs/tb0229_defconfig +++ b/arch/mips/configs/tb0229_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:27:13 2005 | 4 | # Wed Nov 9 11:11:47 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -57,6 +57,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 57 | CONFIG_KMOD=y | 57 | CONFIG_KMOD=y |
| 58 | 58 | ||
| 59 | # | 59 | # |
| 60 | # Block layer | ||
| 61 | # | ||
| 62 | # CONFIG_LBD is not set | ||
| 63 | |||
| 64 | # | ||
| 65 | # IO Schedulers | ||
| 66 | # | ||
| 67 | CONFIG_IOSCHED_NOOP=y | ||
| 68 | CONFIG_IOSCHED_AS=y | ||
| 69 | CONFIG_IOSCHED_DEADLINE=y | ||
| 70 | CONFIG_IOSCHED_CFQ=y | ||
| 71 | CONFIG_DEFAULT_AS=y | ||
| 72 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 73 | # CONFIG_DEFAULT_CFQ is not set | ||
| 74 | # CONFIG_DEFAULT_NOOP is not set | ||
| 75 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 76 | |||
| 77 | # | ||
| 60 | # Machine selection | 78 | # Machine selection |
| 61 | # | 79 | # |
| 62 | # CONFIG_MIPS_MTX1 is not set | 80 | # CONFIG_MIPS_MTX1 is not set |
| @@ -183,6 +201,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 183 | CONFIG_FLATMEM=y | 201 | CONFIG_FLATMEM=y |
| 184 | CONFIG_FLAT_NODE_MEM_MAP=y | 202 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 185 | # CONFIG_SPARSEMEM_STATIC is not set | 203 | # CONFIG_SPARSEMEM_STATIC is not set |
| 204 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 186 | CONFIG_PREEMPT_NONE=y | 205 | CONFIG_PREEMPT_NONE=y |
| 187 | # CONFIG_PREEMPT_VOLUNTARY is not set | 206 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 188 | # CONFIG_PREEMPT is not set | 207 | # CONFIG_PREEMPT is not set |
| @@ -278,6 +297,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 278 | # CONFIG_NET_DIVERT is not set | 297 | # CONFIG_NET_DIVERT is not set |
| 279 | # CONFIG_ECONET is not set | 298 | # CONFIG_ECONET is not set |
| 280 | # CONFIG_WAN_ROUTER is not set | 299 | # CONFIG_WAN_ROUTER is not set |
| 300 | |||
| 301 | # | ||
| 302 | # QoS and/or fair queueing | ||
| 303 | # | ||
| 281 | # CONFIG_NET_SCHED is not set | 304 | # CONFIG_NET_SCHED is not set |
| 282 | # CONFIG_NET_CLS_ROUTE is not set | 305 | # CONFIG_NET_CLS_ROUTE is not set |
| 283 | 306 | ||
| @@ -341,18 +364,9 @@ CONFIG_BLK_DEV_RAM=y | |||
| 341 | CONFIG_BLK_DEV_RAM_COUNT=16 | 364 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 342 | CONFIG_BLK_DEV_RAM_SIZE=4096 | 365 | CONFIG_BLK_DEV_RAM_SIZE=4096 |
| 343 | # CONFIG_BLK_DEV_INITRD is not set | 366 | # CONFIG_BLK_DEV_INITRD is not set |
| 344 | # CONFIG_LBD is not set | ||
| 345 | CONFIG_CDROM_PKTCDVD=m | 367 | CONFIG_CDROM_PKTCDVD=m |
| 346 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 368 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 347 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 369 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 348 | |||
| 349 | # | ||
| 350 | # IO Schedulers | ||
| 351 | # | ||
| 352 | CONFIG_IOSCHED_NOOP=y | ||
| 353 | CONFIG_IOSCHED_AS=y | ||
| 354 | CONFIG_IOSCHED_DEADLINE=y | ||
| 355 | CONFIG_IOSCHED_CFQ=y | ||
| 356 | CONFIG_ATA_OVER_ETH=m | 370 | CONFIG_ATA_OVER_ETH=m |
| 357 | 371 | ||
| 358 | # | 372 | # |
| @@ -404,7 +418,6 @@ CONFIG_DUMMY=m | |||
| 404 | # PHY device support | 418 | # PHY device support |
| 405 | # | 419 | # |
| 406 | CONFIG_PHYLIB=m | 420 | CONFIG_PHYLIB=m |
| 407 | CONFIG_PHYCONTROL=y | ||
| 408 | 421 | ||
| 409 | # | 422 | # |
| 410 | # MII PHY device drivers | 423 | # MII PHY device drivers |
| @@ -422,6 +435,7 @@ CONFIG_NET_ETHERNET=y | |||
| 422 | CONFIG_MII=y | 435 | CONFIG_MII=y |
| 423 | # CONFIG_HAPPYMEAL is not set | 436 | # CONFIG_HAPPYMEAL is not set |
| 424 | # CONFIG_SUNGEM is not set | 437 | # CONFIG_SUNGEM is not set |
| 438 | # CONFIG_CASSINI is not set | ||
| 425 | # CONFIG_NET_VENDOR_3COM is not set | 439 | # CONFIG_NET_VENDOR_3COM is not set |
| 426 | 440 | ||
| 427 | # | 441 | # |
| @@ -504,6 +518,7 @@ CONFIG_PPP_ASYNC=m | |||
| 504 | CONFIG_PPP_SYNC_TTY=m | 518 | CONFIG_PPP_SYNC_TTY=m |
| 505 | CONFIG_PPP_DEFLATE=m | 519 | CONFIG_PPP_DEFLATE=m |
| 506 | CONFIG_PPP_BSDCOMP=m | 520 | CONFIG_PPP_BSDCOMP=m |
| 521 | CONFIG_PPP_MPPE=m | ||
| 507 | CONFIG_PPPOE=m | 522 | CONFIG_PPPOE=m |
| 508 | CONFIG_SLIP=m | 523 | CONFIG_SLIP=m |
| 509 | CONFIG_SLIP_COMPRESSED=y | 524 | CONFIG_SLIP_COMPRESSED=y |
| @@ -589,6 +604,7 @@ CONFIG_LEGACY_PTY_COUNT=256 | |||
| 589 | # CONFIG_WATCHDOG is not set | 604 | # CONFIG_WATCHDOG is not set |
| 590 | # CONFIG_RTC is not set | 605 | # CONFIG_RTC is not set |
| 591 | # CONFIG_GEN_RTC is not set | 606 | # CONFIG_GEN_RTC is not set |
| 607 | # CONFIG_RTC_VR41XX is not set | ||
| 592 | # CONFIG_DTLK is not set | 608 | # CONFIG_DTLK is not set |
| 593 | # CONFIG_R3964 is not set | 609 | # CONFIG_R3964 is not set |
| 594 | # CONFIG_APPLICOM is not set | 610 | # CONFIG_APPLICOM is not set |
| @@ -605,6 +621,7 @@ CONFIG_GPIO_VR41XX=y | |||
| 605 | # TPM devices | 621 | # TPM devices |
| 606 | # | 622 | # |
| 607 | # CONFIG_TCG_TPM is not set | 623 | # CONFIG_TCG_TPM is not set |
| 624 | # CONFIG_TELCLOCK is not set | ||
| 608 | 625 | ||
| 609 | # | 626 | # |
| 610 | # I2C support | 627 | # I2C support |
| @@ -688,12 +705,15 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y | |||
| 688 | # | 705 | # |
| 689 | # USB Device Class drivers | 706 | # USB Device Class drivers |
| 690 | # | 707 | # |
| 691 | # CONFIG_USB_BLUETOOTH_TTY is not set | ||
| 692 | # CONFIG_USB_ACM is not set | 708 | # CONFIG_USB_ACM is not set |
| 693 | # CONFIG_USB_PRINTER is not set | 709 | # CONFIG_USB_PRINTER is not set |
| 694 | 710 | ||
| 695 | # | 711 | # |
| 696 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' may also be needed; see USB_STORAGE Help for more information | 712 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' |
| 713 | # | ||
| 714 | |||
| 715 | # | ||
| 716 | # may also be needed; see USB_STORAGE Help for more information | ||
| 697 | # | 717 | # |
| 698 | # CONFIG_USB_STORAGE is not set | 718 | # CONFIG_USB_STORAGE is not set |
| 699 | 719 | ||
diff --git a/arch/mips/configs/workpad_defconfig b/arch/mips/configs/workpad_defconfig index ab13621ef3b9..125b2997abfe 100644 --- a/arch/mips/configs/workpad_defconfig +++ b/arch/mips/configs/workpad_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.15-rc1 |
| 4 | # Thu Oct 20 22:27:16 2005 | 4 | # Tue Nov 15 11:17:02 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -57,6 +57,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 57 | CONFIG_KMOD=y | 57 | CONFIG_KMOD=y |
| 58 | 58 | ||
| 59 | # | 59 | # |
| 60 | # Block layer | ||
| 61 | # | ||
| 62 | # CONFIG_LBD is not set | ||
| 63 | |||
| 64 | # | ||
| 65 | # IO Schedulers | ||
| 66 | # | ||
| 67 | CONFIG_IOSCHED_NOOP=y | ||
| 68 | CONFIG_IOSCHED_AS=y | ||
| 69 | CONFIG_IOSCHED_DEADLINE=y | ||
| 70 | CONFIG_IOSCHED_CFQ=y | ||
| 71 | CONFIG_DEFAULT_AS=y | ||
| 72 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 73 | # CONFIG_DEFAULT_CFQ is not set | ||
| 74 | # CONFIG_DEFAULT_NOOP is not set | ||
| 75 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 76 | |||
| 77 | # | ||
| 60 | # Machine selection | 78 | # Machine selection |
| 61 | # | 79 | # |
| 62 | # CONFIG_MIPS_MTX1 is not set | 80 | # CONFIG_MIPS_MTX1 is not set |
| @@ -180,6 +198,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 180 | CONFIG_FLATMEM=y | 198 | CONFIG_FLATMEM=y |
| 181 | CONFIG_FLAT_NODE_MEM_MAP=y | 199 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 182 | # CONFIG_SPARSEMEM_STATIC is not set | 200 | # CONFIG_SPARSEMEM_STATIC is not set |
| 201 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 183 | CONFIG_PREEMPT_NONE=y | 202 | CONFIG_PREEMPT_NONE=y |
| 184 | # CONFIG_PREEMPT_VOLUNTARY is not set | 203 | # CONFIG_PREEMPT_VOLUNTARY is not set |
| 185 | # CONFIG_PREEMPT is not set | 204 | # CONFIG_PREEMPT is not set |
| @@ -273,6 +292,10 @@ CONFIG_TCP_CONG_BIC=y | |||
| 273 | # CONFIG_NET_DIVERT is not set | 292 | # CONFIG_NET_DIVERT is not set |
| 274 | # CONFIG_ECONET is not set | 293 | # CONFIG_ECONET is not set |
| 275 | # CONFIG_WAN_ROUTER is not set | 294 | # CONFIG_WAN_ROUTER is not set |
| 295 | |||
| 296 | # | ||
| 297 | # QoS and/or fair queueing | ||
| 298 | # | ||
| 276 | # CONFIG_NET_SCHED is not set | 299 | # CONFIG_NET_SCHED is not set |
| 277 | # CONFIG_NET_CLS_ROUTE is not set | 300 | # CONFIG_NET_CLS_ROUTE is not set |
| 278 | 301 | ||
| @@ -328,16 +351,7 @@ CONFIG_CONNECTOR=m | |||
| 328 | # CONFIG_BLK_DEV_NBD is not set | 351 | # CONFIG_BLK_DEV_NBD is not set |
| 329 | # CONFIG_BLK_DEV_RAM is not set | 352 | # CONFIG_BLK_DEV_RAM is not set |
| 330 | CONFIG_BLK_DEV_RAM_COUNT=16 | 353 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 331 | # CONFIG_LBD is not set | ||
| 332 | # CONFIG_CDROM_PKTCDVD is not set | 354 | # CONFIG_CDROM_PKTCDVD is not set |
| 333 | |||
| 334 | # | ||
| 335 | # IO Schedulers | ||
| 336 | # | ||
| 337 | CONFIG_IOSCHED_NOOP=y | ||
| 338 | CONFIG_IOSCHED_AS=y | ||
| 339 | CONFIG_IOSCHED_DEADLINE=y | ||
| 340 | CONFIG_IOSCHED_CFQ=y | ||
| 341 | CONFIG_ATA_OVER_ETH=m | 355 | CONFIG_ATA_OVER_ETH=m |
| 342 | 356 | ||
| 343 | # | 357 | # |
| @@ -415,7 +429,6 @@ CONFIG_NETDEVICES=y | |||
| 415 | # PHY device support | 429 | # PHY device support |
| 416 | # | 430 | # |
| 417 | CONFIG_PHYLIB=m | 431 | CONFIG_PHYLIB=m |
| 418 | CONFIG_PHYCONTROL=y | ||
| 419 | 432 | ||
| 420 | # | 433 | # |
| 421 | # MII PHY device drivers | 434 | # MII PHY device drivers |
| @@ -439,7 +452,6 @@ CONFIG_MII=m | |||
| 439 | # CONFIG_HP100 is not set | 452 | # CONFIG_HP100 is not set |
| 440 | # CONFIG_NET_ISA is not set | 453 | # CONFIG_NET_ISA is not set |
| 441 | # CONFIG_NET_PCI is not set | 454 | # CONFIG_NET_PCI is not set |
| 442 | # CONFIG_NET_POCKET is not set | ||
| 443 | 455 | ||
| 444 | # | 456 | # |
| 445 | # Ethernet (1000 Mbit) | 457 | # Ethernet (1000 Mbit) |
| @@ -577,6 +589,7 @@ CONFIG_WATCHDOG=y | |||
| 577 | # CONFIG_WDT is not set | 589 | # CONFIG_WDT is not set |
| 578 | # CONFIG_RTC is not set | 590 | # CONFIG_RTC is not set |
| 579 | # CONFIG_GEN_RTC is not set | 591 | # CONFIG_GEN_RTC is not set |
| 592 | # CONFIG_RTC_VR41XX is not set | ||
| 580 | # CONFIG_DTLK is not set | 593 | # CONFIG_DTLK is not set |
| 581 | # CONFIG_R3964 is not set | 594 | # CONFIG_R3964 is not set |
| 582 | 595 | ||
| @@ -588,12 +601,15 @@ CONFIG_WATCHDOG=y | |||
| 588 | # PCMCIA character devices | 601 | # PCMCIA character devices |
| 589 | # | 602 | # |
| 590 | # CONFIG_SYNCLINK_CS is not set | 603 | # CONFIG_SYNCLINK_CS is not set |
| 604 | # CONFIG_CARDMAN_4000 is not set | ||
| 605 | # CONFIG_CARDMAN_4040 is not set | ||
| 591 | # CONFIG_GPIO_VR41XX is not set | 606 | # CONFIG_GPIO_VR41XX is not set |
| 592 | # CONFIG_RAW_DRIVER is not set | 607 | # CONFIG_RAW_DRIVER is not set |
| 593 | 608 | ||
| 594 | # | 609 | # |
| 595 | # TPM devices | 610 | # TPM devices |
| 596 | # | 611 | # |
| 612 | # CONFIG_TELCLOCK is not set | ||
| 597 | 613 | ||
| 598 | # | 614 | # |
| 599 | # I2C support | 615 | # I2C support |
| @@ -653,6 +669,10 @@ CONFIG_DUMMY_CONSOLE=y | |||
| 653 | # CONFIG_USB_ARCH_HAS_OHCI is not set | 669 | # CONFIG_USB_ARCH_HAS_OHCI is not set |
| 654 | 670 | ||
| 655 | # | 671 | # |
| 672 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 673 | # | ||
| 674 | |||
| 675 | # | ||
| 656 | # USB Gadget Support | 676 | # USB Gadget Support |
| 657 | # | 677 | # |
| 658 | # CONFIG_USB_GADGET is not set | 678 | # CONFIG_USB_GADGET is not set |
diff --git a/arch/mips/configs/yosemite_defconfig b/arch/mips/configs/yosemite_defconfig index 5b0b7f30e205..d90790b2ab30 100644 --- a/arch/mips/configs/yosemite_defconfig +++ b/arch/mips/configs/yosemite_defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:27:18 2005 | 4 | # Mon Nov 7 23:06:59 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -58,6 +58,24 @@ CONFIG_KMOD=y | |||
| 58 | CONFIG_STOP_MACHINE=y | 58 | CONFIG_STOP_MACHINE=y |
| 59 | 59 | ||
| 60 | # | 60 | # |
| 61 | # Block layer | ||
| 62 | # | ||
| 63 | # CONFIG_LBD is not set | ||
| 64 | |||
| 65 | # | ||
| 66 | # IO Schedulers | ||
| 67 | # | ||
| 68 | CONFIG_IOSCHED_NOOP=y | ||
| 69 | CONFIG_IOSCHED_AS=y | ||
| 70 | CONFIG_IOSCHED_DEADLINE=y | ||
| 71 | CONFIG_IOSCHED_CFQ=y | ||
| 72 | CONFIG_DEFAULT_AS=y | ||
| 73 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 74 | # CONFIG_DEFAULT_CFQ is not set | ||
| 75 | # CONFIG_DEFAULT_NOOP is not set | ||
| 76 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 77 | |||
| 78 | # | ||
| 61 | # Machine selection | 79 | # Machine selection |
| 62 | # | 80 | # |
| 63 | # CONFIG_MIPS_MTX1 is not set | 81 | # CONFIG_MIPS_MTX1 is not set |
| @@ -181,6 +199,7 @@ CONFIG_ARCH_FLATMEM_ENABLE=y | |||
| 181 | CONFIG_FLATMEM=y | 199 | CONFIG_FLATMEM=y |
| 182 | CONFIG_FLAT_NODE_MEM_MAP=y | 200 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 183 | # CONFIG_SPARSEMEM_STATIC is not set | 201 | # CONFIG_SPARSEMEM_STATIC is not set |
| 202 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 184 | CONFIG_SMP=y | 203 | CONFIG_SMP=y |
| 185 | CONFIG_NR_CPUS=2 | 204 | CONFIG_NR_CPUS=2 |
| 186 | CONFIG_PREEMPT_NONE=y | 205 | CONFIG_PREEMPT_NONE=y |
| @@ -260,6 +279,10 @@ CONFIG_IPV6_TUNNEL=m | |||
| 260 | # CONFIG_LLC2 is not set | 279 | # CONFIG_LLC2 is not set |
| 261 | # CONFIG_IPX is not set | 280 | # CONFIG_IPX is not set |
| 262 | # CONFIG_ATALK is not set | 281 | # CONFIG_ATALK is not set |
| 282 | |||
| 283 | # | ||
| 284 | # QoS and/or fair queueing | ||
| 285 | # | ||
| 263 | # CONFIG_NET_SCHED is not set | 286 | # CONFIG_NET_SCHED is not set |
| 264 | # CONFIG_NET_CLS_ROUTE is not set | 287 | # CONFIG_NET_CLS_ROUTE is not set |
| 265 | 288 | ||
| @@ -319,18 +342,9 @@ CONFIG_CONNECTOR=m | |||
| 319 | # CONFIG_BLK_DEV_SX8 is not set | 342 | # CONFIG_BLK_DEV_SX8 is not set |
| 320 | # CONFIG_BLK_DEV_RAM is not set | 343 | # CONFIG_BLK_DEV_RAM is not set |
| 321 | CONFIG_BLK_DEV_RAM_COUNT=16 | 344 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 322 | # CONFIG_LBD is not set | ||
| 323 | CONFIG_CDROM_PKTCDVD=m | 345 | CONFIG_CDROM_PKTCDVD=m |
| 324 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 346 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 325 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 347 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 326 | |||
| 327 | # | ||
| 328 | # IO Schedulers | ||
| 329 | # | ||
| 330 | CONFIG_IOSCHED_NOOP=y | ||
| 331 | CONFIG_IOSCHED_AS=y | ||
| 332 | CONFIG_IOSCHED_DEADLINE=y | ||
| 333 | CONFIG_IOSCHED_CFQ=y | ||
| 334 | CONFIG_ATA_OVER_ETH=m | 348 | CONFIG_ATA_OVER_ETH=m |
| 335 | 349 | ||
| 336 | # | 350 | # |
| @@ -382,7 +396,6 @@ CONFIG_NETDEVICES=y | |||
| 382 | # PHY device support | 396 | # PHY device support |
| 383 | # | 397 | # |
| 384 | CONFIG_PHYLIB=m | 398 | CONFIG_PHYLIB=m |
| 385 | CONFIG_PHYCONTROL=y | ||
| 386 | 399 | ||
| 387 | # | 400 | # |
| 388 | # MII PHY device drivers | 401 | # MII PHY device drivers |
| @@ -400,6 +413,7 @@ CONFIG_NET_ETHERNET=y | |||
| 400 | CONFIG_MII=y | 413 | CONFIG_MII=y |
| 401 | # CONFIG_HAPPYMEAL is not set | 414 | # CONFIG_HAPPYMEAL is not set |
| 402 | # CONFIG_SUNGEM is not set | 415 | # CONFIG_SUNGEM is not set |
| 416 | # CONFIG_CASSINI is not set | ||
| 403 | # CONFIG_NET_VENDOR_3COM is not set | 417 | # CONFIG_NET_VENDOR_3COM is not set |
| 404 | 418 | ||
| 405 | # | 419 | # |
| @@ -576,6 +590,10 @@ CONFIG_USB_ARCH_HAS_OHCI=y | |||
| 576 | # CONFIG_USB is not set | 590 | # CONFIG_USB is not set |
| 577 | 591 | ||
| 578 | # | 592 | # |
| 593 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 594 | # | ||
| 595 | |||
| 596 | # | ||
| 579 | # USB Gadget Support | 597 | # USB Gadget Support |
| 580 | # | 598 | # |
| 581 | # CONFIG_USB_GADGET is not set | 599 | # CONFIG_USB_GADGET is not set |
| @@ -690,6 +708,8 @@ CONFIG_DETECT_SOFTLOCKUP=y | |||
| 690 | # CONFIG_DEBUG_HIGHMEM is not set | 708 | # CONFIG_DEBUG_HIGHMEM is not set |
| 691 | # CONFIG_DEBUG_INFO is not set | 709 | # CONFIG_DEBUG_INFO is not set |
| 692 | # CONFIG_DEBUG_FS is not set | 710 | # CONFIG_DEBUG_FS is not set |
| 711 | # CONFIG_DEBUG_VM is not set | ||
| 712 | # CONFIG_RCU_TORTURE_TEST is not set | ||
| 693 | CONFIG_CROSSCOMPILE=y | 713 | CONFIG_CROSSCOMPILE=y |
| 694 | CONFIG_CMDLINE="" | 714 | CONFIG_CMDLINE="" |
| 695 | # CONFIG_DEBUG_STACK_USAGE is not set | 715 | # CONFIG_DEBUG_STACK_USAGE is not set |
diff --git a/arch/mips/ddb5xxx/ddb5477/lcd44780.c b/arch/mips/ddb5xxx/ddb5477/lcd44780.c index 35c6c22610c5..9510b9ae6453 100644 --- a/arch/mips/ddb5xxx/ddb5477/lcd44780.c +++ b/arch/mips/ddb5xxx/ddb5477/lcd44780.c | |||
| @@ -55,7 +55,7 @@ void lcd44780_data(unsigned char c) | |||
| 55 | 55 | ||
| 56 | void lcd44780_puts(const char* s) | 56 | void lcd44780_puts(const char* s) |
| 57 | { | 57 | { |
| 58 | int i,j; | 58 | int j; |
| 59 | int pos = 0; | 59 | int pos = 0; |
| 60 | 60 | ||
| 61 | lcd44780_command(LCD44780_CLEAR); | 61 | lcd44780_command(LCD44780_CLEAR); |
| @@ -76,8 +76,12 @@ void lcd44780_puts(const char* s) | |||
| 76 | } | 76 | } |
| 77 | } | 77 | } |
| 78 | #ifdef LCD44780_PUTS_PAUSE | 78 | #ifdef LCD44780_PUTS_PAUSE |
| 79 | for(i = 1; i < 2000; i++) | 79 | { |
| 80 | lcd44780_wait(); | 80 | int i; |
| 81 | |||
| 82 | for(i = 1; i < 2000; i++) | ||
| 83 | lcd44780_wait(); | ||
| 84 | } | ||
| 81 | #endif | 85 | #endif |
| 82 | } | 86 | } |
| 83 | 87 | ||
diff --git a/arch/mips/defconfig b/arch/mips/defconfig index 4b585e642c2a..e9086da02e48 100644 --- a/arch/mips/defconfig +++ b/arch/mips/defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.14-rc2 | 3 | # Linux kernel version: 2.6.14 |
| 4 | # Thu Oct 20 22:25:09 2005 | 4 | # Thu Nov 10 12:13:58 2005 |
| 5 | # | 5 | # |
| 6 | CONFIG_MIPS=y | 6 | CONFIG_MIPS=y |
| 7 | 7 | ||
| @@ -58,6 +58,24 @@ CONFIG_MODULE_SRCVERSION_ALL=y | |||
| 58 | CONFIG_KMOD=y | 58 | CONFIG_KMOD=y |
| 59 | 59 | ||
| 60 | # | 60 | # |
| 61 | # Block layer | ||
| 62 | # | ||
| 63 | # CONFIG_LBD is not set | ||
| 64 | |||
| 65 | # | ||
| 66 | # IO Schedulers | ||
| 67 | # | ||
| 68 | CONFIG_IOSCHED_NOOP=y | ||
| 69 | CONFIG_IOSCHED_AS=y | ||
| 70 | CONFIG_IOSCHED_DEADLINE=y | ||
| 71 | CONFIG_IOSCHED_CFQ=y | ||
| 72 | CONFIG_DEFAULT_AS=y | ||
| 73 | # CONFIG_DEFAULT_DEADLINE is not set | ||
| 74 | # CONFIG_DEFAULT_CFQ is not set | ||
| 75 | # CONFIG_DEFAULT_NOOP is not set | ||
| 76 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
| 77 | |||
| 78 | # | ||
| 61 | # Machine selection | 79 | # Machine selection |
| 62 | # | 80 | # |
| 63 | # CONFIG_MIPS_MTX1 is not set | 81 | # CONFIG_MIPS_MTX1 is not set |
| @@ -187,6 +205,7 @@ CONFIG_FLATMEM_MANUAL=y | |||
| 187 | CONFIG_FLATMEM=y | 205 | CONFIG_FLATMEM=y |
| 188 | CONFIG_FLAT_NODE_MEM_MAP=y | 206 | CONFIG_FLAT_NODE_MEM_MAP=y |
| 189 | # CONFIG_SPARSEMEM_STATIC is not set | 207 | # CONFIG_SPARSEMEM_STATIC is not set |
| 208 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
| 190 | # CONFIG_PREEMPT_NONE is not set | 209 | # CONFIG_PREEMPT_NONE is not set |
| 191 | CONFIG_PREEMPT_VOLUNTARY=y | 210 | CONFIG_PREEMPT_VOLUNTARY=y |
| 192 | # CONFIG_PREEMPT is not set | 211 | # CONFIG_PREEMPT is not set |
| @@ -292,6 +311,10 @@ CONFIG_INET6_TUNNEL=m | |||
| 292 | CONFIG_IPV6_TUNNEL=m | 311 | CONFIG_IPV6_TUNNEL=m |
| 293 | CONFIG_NETFILTER=y | 312 | CONFIG_NETFILTER=y |
| 294 | # CONFIG_NETFILTER_DEBUG is not set | 313 | # CONFIG_NETFILTER_DEBUG is not set |
| 314 | |||
| 315 | # | ||
| 316 | # Core Netfilter Configuration | ||
| 317 | # | ||
| 295 | CONFIG_NETFILTER_NETLINK=m | 318 | CONFIG_NETFILTER_NETLINK=m |
| 296 | CONFIG_NETFILTER_NETLINK_QUEUE=m | 319 | CONFIG_NETFILTER_NETLINK_QUEUE=m |
| 297 | CONFIG_NETFILTER_NETLINK_LOG=m | 320 | CONFIG_NETFILTER_NETLINK_LOG=m |
| @@ -345,6 +368,7 @@ CONFIG_IP_NF_TARGET_REJECT=m | |||
| 345 | CONFIG_IP_NF_TARGET_LOG=m | 368 | CONFIG_IP_NF_TARGET_LOG=m |
| 346 | CONFIG_IP_NF_TARGET_ULOG=m | 369 | CONFIG_IP_NF_TARGET_ULOG=m |
| 347 | CONFIG_IP_NF_TARGET_TCPMSS=m | 370 | CONFIG_IP_NF_TARGET_TCPMSS=m |
| 371 | CONFIG_IP_NF_TARGET_NFQUEUE=m | ||
| 348 | CONFIG_IP_NF_NAT=m | 372 | CONFIG_IP_NF_NAT=m |
| 349 | CONFIG_IP_NF_NAT_NEEDED=y | 373 | CONFIG_IP_NF_NAT_NEEDED=y |
| 350 | CONFIG_IP_NF_TARGET_MASQUERADE=m | 374 | CONFIG_IP_NF_TARGET_MASQUERADE=m |
| @@ -393,6 +417,7 @@ CONFIG_IP6_NF_MATCH_EUI64=m | |||
| 393 | CONFIG_IP6_NF_FILTER=m | 417 | CONFIG_IP6_NF_FILTER=m |
| 394 | CONFIG_IP6_NF_TARGET_LOG=m | 418 | CONFIG_IP6_NF_TARGET_LOG=m |
| 395 | CONFIG_IP6_NF_TARGET_REJECT=m | 419 | CONFIG_IP6_NF_TARGET_REJECT=m |
| 420 | CONFIG_IP6_NF_TARGET_NFQUEUE=m | ||
| 396 | CONFIG_IP6_NF_MANGLE=m | 421 | CONFIG_IP6_NF_MANGLE=m |
| 397 | CONFIG_IP6_NF_TARGET_MARK=m | 422 | CONFIG_IP6_NF_TARGET_MARK=m |
| 398 | CONFIG_IP6_NF_TARGET_HL=m | 423 | CONFIG_IP6_NF_TARGET_HL=m |
| @@ -424,10 +449,18 @@ CONFIG_SCTP_HMAC_MD5=y | |||
| 424 | CONFIG_NET_DIVERT=y | 449 | CONFIG_NET_DIVERT=y |
| 425 | # CONFIG_ECONET is not set | 450 | # CONFIG_ECONET is not set |
| 426 | # CONFIG_WAN_ROUTER is not set | 451 | # CONFIG_WAN_ROUTER is not set |
| 452 | |||
| 453 | # | ||
| 454 | # QoS and/or fair queueing | ||
| 455 | # | ||
| 427 | CONFIG_NET_SCHED=y | 456 | CONFIG_NET_SCHED=y |
| 428 | # CONFIG_NET_SCH_CLK_JIFFIES is not set | 457 | # CONFIG_NET_SCH_CLK_JIFFIES is not set |
| 429 | CONFIG_NET_SCH_CLK_GETTIMEOFDAY=y | 458 | CONFIG_NET_SCH_CLK_GETTIMEOFDAY=y |
| 430 | # CONFIG_NET_SCH_CLK_CPU is not set | 459 | # CONFIG_NET_SCH_CLK_CPU is not set |
| 460 | |||
| 461 | # | ||
| 462 | # Queueing/Scheduling | ||
| 463 | # | ||
| 431 | CONFIG_NET_SCH_CBQ=m | 464 | CONFIG_NET_SCH_CBQ=m |
| 432 | CONFIG_NET_SCH_HTB=m | 465 | CONFIG_NET_SCH_HTB=m |
| 433 | CONFIG_NET_SCH_HFSC=m | 466 | CONFIG_NET_SCH_HFSC=m |
| @@ -440,8 +473,10 @@ CONFIG_NET_SCH_GRED=m | |||
| 440 | CONFIG_NET_SCH_DSMARK=m | 473 | CONFIG_NET_SCH_DSMARK=m |
| 441 | CONFIG_NET_SCH_NETEM=m | 474 | CONFIG_NET_SCH_NETEM=m |
| 442 | CONFIG_NET_SCH_INGRESS=m | 475 | CONFIG_NET_SCH_INGRESS=m |
| 443 | CONFIG_NET_QOS=y | 476 | |
| 444 | CONFIG_NET_ESTIMATOR=y | 477 | # |
| 478 | # Classification | ||
| 479 | # | ||
| 445 | CONFIG_NET_CLS=y | 480 | CONFIG_NET_CLS=y |
| 446 | CONFIG_NET_CLS_BASIC=m | 481 | CONFIG_NET_CLS_BASIC=m |
| 447 | CONFIG_NET_CLS_TCINDEX=m | 482 | CONFIG_NET_CLS_TCINDEX=m |
| @@ -450,13 +485,14 @@ CONFIG_NET_CLS_ROUTE=y | |||
| 450 | CONFIG_NET_CLS_FW=m | 485 | CONFIG_NET_CLS_FW=m |
| 451 | CONFIG_NET_CLS_U32=m | 486 | CONFIG_NET_CLS_U32=m |
| 452 | # CONFIG_CLS_U32_PERF is not set | 487 | # CONFIG_CLS_U32_PERF is not set |
| 453 | # CONFIG_NET_CLS_IND is not set | ||
| 454 | # CONFIG_CLS_U32_MARK is not set | 488 | # CONFIG_CLS_U32_MARK is not set |
| 455 | CONFIG_NET_CLS_RSVP=m | 489 | CONFIG_NET_CLS_RSVP=m |
| 456 | CONFIG_NET_CLS_RSVP6=m | 490 | CONFIG_NET_CLS_RSVP6=m |
| 457 | # CONFIG_NET_EMATCH is not set | 491 | # CONFIG_NET_EMATCH is not set |
| 458 | # CONFIG_NET_CLS_ACT is not set | 492 | # CONFIG_NET_CLS_ACT is not set |
| 459 | CONFIG_NET_CLS_POLICE=y | 493 | CONFIG_NET_CLS_POLICE=y |
| 494 | # CONFIG_NET_CLS_IND is not set | ||
| 495 | CONFIG_NET_ESTIMATOR=y | ||
| 460 | 496 | ||
| 461 | # | 497 | # |
| 462 | # Network testing | 498 | # Network testing |
| @@ -509,18 +545,9 @@ CONFIG_CONNECTOR=m | |||
| 509 | # CONFIG_BLK_DEV_NBD is not set | 545 | # CONFIG_BLK_DEV_NBD is not set |
| 510 | # CONFIG_BLK_DEV_RAM is not set | 546 | # CONFIG_BLK_DEV_RAM is not set |
| 511 | CONFIG_BLK_DEV_RAM_COUNT=16 | 547 | CONFIG_BLK_DEV_RAM_COUNT=16 |
| 512 | # CONFIG_LBD is not set | ||
| 513 | CONFIG_CDROM_PKTCDVD=m | 548 | CONFIG_CDROM_PKTCDVD=m |
| 514 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 | 549 | CONFIG_CDROM_PKTCDVD_BUFFERS=8 |
| 515 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set | 550 | # CONFIG_CDROM_PKTCDVD_WCACHE is not set |
| 516 | |||
| 517 | # | ||
| 518 | # IO Schedulers | ||
| 519 | # | ||
| 520 | CONFIG_IOSCHED_NOOP=y | ||
| 521 | CONFIG_IOSCHED_AS=y | ||
| 522 | CONFIG_IOSCHED_DEADLINE=y | ||
| 523 | CONFIG_IOSCHED_CFQ=y | ||
| 524 | CONFIG_ATA_OVER_ETH=m | 551 | CONFIG_ATA_OVER_ETH=m |
| 525 | 552 | ||
| 526 | # | 553 | # |
| @@ -564,6 +591,7 @@ CONFIG_SCSI_SAS_ATTRS=m | |||
| 564 | # | 591 | # |
| 565 | # SCSI low-level drivers | 592 | # SCSI low-level drivers |
| 566 | # | 593 | # |
| 594 | CONFIG_ISCSI_TCP=m | ||
| 567 | CONFIG_SGIWD93_SCSI=y | 595 | CONFIG_SGIWD93_SCSI=y |
| 568 | # CONFIG_SCSI_SATA is not set | 596 | # CONFIG_SCSI_SATA is not set |
| 569 | # CONFIG_SCSI_DEBUG is not set | 597 | # CONFIG_SCSI_DEBUG is not set |
| @@ -599,7 +627,6 @@ CONFIG_TUN=m | |||
| 599 | # PHY device support | 627 | # PHY device support |
| 600 | # | 628 | # |
| 601 | CONFIG_PHYLIB=m | 629 | CONFIG_PHYLIB=m |
| 602 | CONFIG_PHYCONTROL=y | ||
| 603 | 630 | ||
| 604 | # | 631 | # |
| 605 | # MII PHY device drivers | 632 | # MII PHY device drivers |
| @@ -752,6 +779,7 @@ CONFIG_MAX_RAW_DEVS=256 | |||
| 752 | # | 779 | # |
| 753 | # TPM devices | 780 | # TPM devices |
| 754 | # | 781 | # |
| 782 | # CONFIG_TELCLOCK is not set | ||
| 755 | 783 | ||
| 756 | # | 784 | # |
| 757 | # I2C support | 785 | # I2C support |
| @@ -821,6 +849,10 @@ CONFIG_LOGO_SGI_CLUT224=y | |||
| 821 | # CONFIG_USB_ARCH_HAS_OHCI is not set | 849 | # CONFIG_USB_ARCH_HAS_OHCI is not set |
| 822 | 850 | ||
| 823 | # | 851 | # |
| 852 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
| 853 | # | ||
| 854 | |||
| 855 | # | ||
| 824 | # USB Gadget Support | 856 | # USB Gadget Support |
| 825 | # | 857 | # |
| 826 | # CONFIG_USB_GADGET is not set | 858 | # CONFIG_USB_GADGET is not set |
| @@ -856,7 +888,7 @@ CONFIG_FS_MBCACHE=y | |||
| 856 | CONFIG_FS_POSIX_ACL=y | 888 | CONFIG_FS_POSIX_ACL=y |
| 857 | CONFIG_XFS_FS=m | 889 | CONFIG_XFS_FS=m |
| 858 | CONFIG_XFS_EXPORT=y | 890 | CONFIG_XFS_EXPORT=y |
| 859 | CONFIG_XFS_QUOTA=m | 891 | CONFIG_XFS_QUOTA=y |
| 860 | CONFIG_XFS_SECURITY=y | 892 | CONFIG_XFS_SECURITY=y |
| 861 | # CONFIG_XFS_POSIX_ACL is not set | 893 | # CONFIG_XFS_POSIX_ACL is not set |
| 862 | # CONFIG_XFS_RT is not set | 894 | # CONFIG_XFS_RT is not set |
diff --git a/arch/mips/jmr3927/common/rtc_ds1742.c b/arch/mips/jmr3927/common/rtc_ds1742.c index 8b407d7dc460..9a8bff153d80 100644 --- a/arch/mips/jmr3927/common/rtc_ds1742.c +++ b/arch/mips/jmr3927/common/rtc_ds1742.c | |||
| @@ -41,11 +41,11 @@ | |||
| 41 | #include <linux/types.h> | 41 | #include <linux/types.h> |
| 42 | #include <linux/time.h> | 42 | #include <linux/time.h> |
| 43 | #include <linux/rtc.h> | 43 | #include <linux/rtc.h> |
| 44 | #include <linux/ds1742rtc.h> | ||
| 44 | 45 | ||
| 45 | #include <asm/time.h> | 46 | #include <asm/time.h> |
| 46 | #include <asm/addrspace.h> | 47 | #include <asm/addrspace.h> |
| 47 | 48 | ||
| 48 | #include <asm/jmr3927/ds1742rtc.h> | ||
| 49 | #include <asm/debug.h> | 49 | #include <asm/debug.h> |
| 50 | 50 | ||
| 51 | #define EPOCH 2000 | 51 | #define EPOCH 2000 |
diff --git a/arch/mips/jmr3927/rbhma3100/setup.c b/arch/mips/jmr3927/rbhma3100/setup.c index 3e2fbdc66097..55ad0a578794 100644 --- a/arch/mips/jmr3927/rbhma3100/setup.c +++ b/arch/mips/jmr3927/rbhma3100/setup.c | |||
| @@ -357,7 +357,7 @@ static void __init jmr3927_board_init(void) | |||
| 357 | jmr3927_io_dipsw()); | 357 | jmr3927_io_dipsw()); |
| 358 | } | 358 | } |
| 359 | 359 | ||
| 360 | void __init plat_setup(void) | 360 | void __init tx3927_setup(void) |
| 361 | { | 361 | { |
| 362 | int i; | 362 | int i; |
| 363 | 363 | ||
diff --git a/arch/mips/mips-boards/sead/sead_int.c b/arch/mips/mips-boards/sead/sead_int.c index e1dd7e009750..90fda0d9915f 100644 --- a/arch/mips/mips-boards/sead/sead_int.c +++ b/arch/mips/mips-boards/sead/sead_int.c | |||
| @@ -30,19 +30,9 @@ | |||
| 30 | 30 | ||
| 31 | extern asmlinkage void mipsIRQ(void); | 31 | extern asmlinkage void mipsIRQ(void); |
| 32 | 32 | ||
| 33 | asmlinkage void sead_hw0_irqdispatch(struct pt_regs *regs) | ||
| 34 | { | ||
| 35 | do_IRQ(SEADINT_UART0, regs); | ||
| 36 | } | ||
| 37 | |||
| 38 | asmlinkage void sead_hw1_irqdispatch(struct pt_regs *regs) | ||
| 39 | { | ||
| 40 | do_IRQ(SEADINT_UART1, regs); | ||
| 41 | } | ||
| 42 | |||
| 43 | void __init arch_init_irq(void) | 33 | void __init arch_init_irq(void) |
| 44 | { | 34 | { |
| 45 | mips_cpu_irq_init(0); | 35 | mips_cpu_irq_init(MIPSCPU_INT_BASE); |
| 46 | 36 | ||
| 47 | /* Now safe to set the exception vector. */ | 37 | /* Now safe to set the exception vector. */ |
| 48 | set_except_vector(0, mipsIRQ); | 38 | set_except_vector(0, mipsIRQ); |
diff --git a/arch/mips/mips-boards/sead/sead_setup.c b/arch/mips/mips-boards/sead/sead_setup.c index de90bec5505e..f966bc161dfa 100644 --- a/arch/mips/mips-boards/sead/sead_setup.c +++ b/arch/mips/mips-boards/sead/sead_setup.c | |||
| @@ -45,7 +45,7 @@ const char *get_system_type(void) | |||
| 45 | return "MIPS SEAD"; | 45 | return "MIPS SEAD"; |
| 46 | } | 46 | } |
| 47 | 47 | ||
| 48 | static void __init sead_setup(void) | 48 | void __init plat_setup(void) |
| 49 | { | 49 | { |
| 50 | ioport_resource.end = 0x7fffffff; | 50 | ioport_resource.end = 0x7fffffff; |
| 51 | 51 | ||
| @@ -69,7 +69,7 @@ static void __init serial_init(void) | |||
| 69 | #else | 69 | #else |
| 70 | s.iobase = SEAD_UART0_REGS_BASE+3; | 70 | s.iobase = SEAD_UART0_REGS_BASE+3; |
| 71 | #endif | 71 | #endif |
| 72 | s.irq = SEADINT_UART0; | 72 | s.irq = MIPSCPU_INT_BASE + MIPSCPU_INT_UART0; |
| 73 | s.uartclk = SEAD_BASE_BAUD * 16; | 73 | s.uartclk = SEAD_BASE_BAUD * 16; |
| 74 | s.flags = ASYNC_BOOT_AUTOCONF | ASYNC_SKIP_TEST | ASYNC_AUTO_IRQ; | 74 | s.flags = ASYNC_BOOT_AUTOCONF | ASYNC_SKIP_TEST | ASYNC_AUTO_IRQ; |
| 75 | s.iotype = 0; | 75 | s.iotype = 0; |
diff --git a/arch/mips/momentum/ocelot_g/gt-irq.c b/arch/mips/momentum/ocelot_g/gt-irq.c index d0b5c9dd0ea4..e5eceed1beff 100644 --- a/arch/mips/momentum/ocelot_g/gt-irq.c +++ b/arch/mips/momentum/ocelot_g/gt-irq.c | |||
| @@ -178,7 +178,7 @@ void gt64240_time_init(void) | |||
| 178 | timer.name = "timer"; | 178 | timer.name = "timer"; |
| 179 | timer.dev_id = NULL; | 179 | timer.dev_id = NULL; |
| 180 | timer.next = NULL; | 180 | timer.next = NULL; |
| 181 | timer.mask = 0; | 181 | timer.mask = CPU_MASK_NONE; |
| 182 | irq_desc[6].action = &timer; | 182 | irq_desc[6].action = &timer; |
| 183 | 183 | ||
| 184 | enable_irq(6); | 184 | enable_irq(6); |
diff --git a/arch/mips/pci/Makefile b/arch/mips/pci/Makefile index 7b7468304022..741e67c9195a 100644 --- a/arch/mips/pci/Makefile +++ b/arch/mips/pci/Makefile | |||
| @@ -15,7 +15,7 @@ obj-$(CONFIG_MIPS_GT96100) += ops-gt96100.o | |||
| 15 | obj-$(CONFIG_PCI_MARVELL) += ops-marvell.o | 15 | obj-$(CONFIG_PCI_MARVELL) += ops-marvell.o |
| 16 | obj-$(CONFIG_MIPS_MSC) += ops-msc.o | 16 | obj-$(CONFIG_MIPS_MSC) += ops-msc.o |
| 17 | obj-$(CONFIG_MIPS_NILE4) += ops-nile4.o | 17 | obj-$(CONFIG_MIPS_NILE4) += ops-nile4.o |
| 18 | obj-$(CONFIG_MIPS_TX3927) += ops-jmr3927.o | 18 | obj-$(CONFIG_MIPS_TX3927) += ops-tx3927.o |
| 19 | obj-$(CONFIG_PCI_VR41XX) += ops-vr41xx.o pci-vr41xx.o | 19 | obj-$(CONFIG_PCI_VR41XX) += ops-vr41xx.o pci-vr41xx.o |
| 20 | obj-$(CONFIG_NEC_CMBVR4133) += fixup-vr4133.o | 20 | obj-$(CONFIG_NEC_CMBVR4133) += fixup-vr4133.o |
| 21 | 21 | ||
diff --git a/arch/mips/pci/ops-tx3927.c b/arch/mips/pci/ops-tx3927.c index 0e0daadc303d..42530a0b84b3 100644 --- a/arch/mips/pci/ops-tx3927.c +++ b/arch/mips/pci/ops-tx3927.c | |||
| @@ -72,13 +72,9 @@ static inline int check_abort(void) | |||
| 72 | static int jmr3927_pci_read_config(struct pci_bus *bus, unsigned int devfn, | 72 | static int jmr3927_pci_read_config(struct pci_bus *bus, unsigned int devfn, |
| 73 | int where, int size, u32 * val) | 73 | int where, int size, u32 * val) |
| 74 | { | 74 | { |
| 75 | int ret, busno; | 75 | int ret; |
| 76 | 76 | ||
| 77 | /* check if the bus is top-level */ | 77 | ret = mkaddr(bus->number, devfn, where); |
| 78 | if (bus->parent != NULL) | ||
| 79 | busno = bus->number; | ||
| 80 | |||
| 81 | ret = mkaddr(busno, devfn, where); | ||
| 82 | if (ret) | 78 | if (ret) |
| 83 | return ret; | 79 | return ret; |
| 84 | 80 | ||
| @@ -102,15 +98,9 @@ static int jmr3927_pci_read_config(struct pci_bus *bus, unsigned int devfn, | |||
| 102 | static int jmr3927_pci_write_config(struct pci_bus *bus, unsigned int devfn, | 98 | static int jmr3927_pci_write_config(struct pci_bus *bus, unsigned int devfn, |
| 103 | int where, int size, u32 val) | 99 | int where, int size, u32 val) |
| 104 | { | 100 | { |
| 105 | int ret, busno; | 101 | int ret; |
| 106 | |||
| 107 | /* check if the bus is top-level */ | ||
| 108 | if (bus->parent != NULL) | ||
| 109 | bus = bus->number; | ||
| 110 | else | ||
| 111 | bus = 0; | ||
| 112 | 102 | ||
| 113 | ret = mkaddr(busno, devfn, where); | 103 | ret = mkaddr(bus->number, devfn, where); |
| 114 | if (ret) | 104 | if (ret) |
| 115 | return ret; | 105 | return ret; |
| 116 | 106 | ||
| @@ -120,7 +110,7 @@ static int jmr3927_pci_write_config(struct pci_bus *bus, unsigned int devfn, | |||
| 120 | break; | 110 | break; |
| 121 | 111 | ||
| 122 | case 2: | 112 | case 2: |
| 123 | *(volatile u16 *) (unsigned longulong) & tx3927_pcicptr->icd | (where & 2)) = | 113 | *(volatile u16 *) ((unsigned long) & tx3927_pcicptr->icd | (where & 2)) = |
| 124 | cpu_to_le16(val); | 114 | cpu_to_le16(val); |
| 125 | break; | 115 | break; |
| 126 | 116 | ||
| @@ -137,8 +127,8 @@ static int jmr3927_pci_write_config(struct pci_bus *bus, unsigned int devfn, | |||
| 137 | } | 127 | } |
| 138 | 128 | ||
| 139 | struct pci_ops jmr3927_pci_ops = { | 129 | struct pci_ops jmr3927_pci_ops = { |
| 140 | jmr3927_pcibios_read_config, | 130 | jmr3927_pci_read_config, |
| 141 | jmr3927_pcibios_write_config, | 131 | jmr3927_pci_write_config, |
| 142 | }; | 132 | }; |
| 143 | 133 | ||
| 144 | 134 | ||
| @@ -159,15 +149,14 @@ unsigned long tc_readl(volatile __u32 * addr) | |||
| 159 | { | 149 | { |
| 160 | unsigned long val; | 150 | unsigned long val; |
| 161 | 151 | ||
| 162 | addr = PHYSADDR(addr); | 152 | *(volatile u32 *) (unsigned long) & tx3927_pcicptr->ipciaddr = |
| 163 | *(volatile u32 *) (ulong) & tx3927_pcicptr->ipciaddr = | 153 | (unsigned long) CPHYSADDR(addr); |
| 164 | (unsigned long) addr; | 154 | *(volatile u32 *) (unsigned long) & tx3927_pcicptr->ipcibe = |
| 165 | *(volatile u32 *) (ulong) & tx3927_pcicptr->ipcibe = | ||
| 166 | (PCI_IPCIBE_ICMD_MEMREAD << PCI_IPCIBE_ICMD_SHIFT) | | 155 | (PCI_IPCIBE_ICMD_MEMREAD << PCI_IPCIBE_ICMD_SHIFT) | |
| 167 | PCI_IPCIBE_IBE_LONG; | 156 | PCI_IPCIBE_IBE_LONG; |
| 168 | while (!(tx3927_pcicptr->istat & PCI_ISTAT_IDICC)); | 157 | while (!(tx3927_pcicptr->istat & PCI_ISTAT_IDICC)); |
| 169 | val = | 158 | val = |
| 170 | le32_to_cpu(*(volatile u32 *) (ulong) & tx3927_pcicptr-> | 159 | le32_to_cpu(*(volatile u32 *) (unsigned long) & tx3927_pcicptr-> |
| 171 | ipcidata); | 160 | ipcidata); |
| 172 | /* clear by setting */ | 161 | /* clear by setting */ |
| 173 | tx3927_pcicptr->istat |= PCI_ISTAT_IDICC; | 162 | tx3927_pcicptr->istat |= PCI_ISTAT_IDICC; |
| @@ -176,12 +165,11 @@ unsigned long tc_readl(volatile __u32 * addr) | |||
| 176 | 165 | ||
| 177 | void tc_writel(unsigned long data, volatile __u32 * addr) | 166 | void tc_writel(unsigned long data, volatile __u32 * addr) |
| 178 | { | 167 | { |
| 179 | addr = PHYSADDR(addr); | 168 | *(volatile u32 *) (unsigned long) & tx3927_pcicptr->ipcidata = |
| 180 | *(volatile u32 *) (ulong) & tx3927_pcicptr->ipcidata = | ||
| 181 | cpu_to_le32(data); | 169 | cpu_to_le32(data); |
| 182 | *(volatile u32 *) (ulong) & tx3927_pcicptr->ipciaddr = | 170 | *(volatile u32 *) (unsigned long) & tx3927_pcicptr->ipciaddr = |
| 183 | (unsigned long) addr; | 171 | (unsigned long) CPHYSADDR(addr); |
| 184 | *(volatile u32 *) (ulong) & tx3927_pcicptr->ipcibe = | 172 | *(volatile u32 *) (unsigned long) & tx3927_pcicptr->ipcibe = |
| 185 | (PCI_IPCIBE_ICMD_MEMWRITE << PCI_IPCIBE_ICMD_SHIFT) | | 173 | (PCI_IPCIBE_ICMD_MEMWRITE << PCI_IPCIBE_ICMD_SHIFT) | |
| 186 | PCI_IPCIBE_IBE_LONG; | 174 | PCI_IPCIBE_IBE_LONG; |
| 187 | while (!(tx3927_pcicptr->istat & PCI_ISTAT_IDICC)); | 175 | while (!(tx3927_pcicptr->istat & PCI_ISTAT_IDICC)); |
| @@ -198,21 +186,15 @@ unsigned char tx_ioinb(unsigned char *addr) | |||
| 198 | 186 | ||
| 199 | ioaddr = (unsigned long) addr; | 187 | ioaddr = (unsigned long) addr; |
| 200 | offset = ioaddr & 0x3; | 188 | offset = ioaddr & 0x3; |
| 201 | if (offset == 0) | 189 | byte = 0xf & ~(8 >> offset); |
| 202 | byte = 0x7; | 190 | |
| 203 | else if (offset == 1) | 191 | *(volatile u32 *) (unsigned long) & tx3927_pcicptr->ipciaddr = |
| 204 | byte = 0xb; | ||
| 205 | else if (offset == 2) | ||
| 206 | byte = 0xd; | ||
| 207 | else if (offset == 3) | ||
| 208 | byte = 0xe; | ||
| 209 | *(volatile u32 *) (ulong) & tx3927_pcicptr->ipciaddr = | ||
| 210 | (unsigned long) ioaddr; | 192 | (unsigned long) ioaddr; |
| 211 | *(volatile u32 *) (ulong) & tx3927_pcicptr->ipcibe = | 193 | *(volatile u32 *) (unsigned long) & tx3927_pcicptr->ipcibe = |
| 212 | (PCI_IPCIBE_ICMD_IOREAD << PCI_IPCIBE_ICMD_SHIFT) | byte; | 194 | (PCI_IPCIBE_ICMD_IOREAD << PCI_IPCIBE_ICMD_SHIFT) | byte; |
| 213 | while (!(tx3927_pcicptr->istat & PCI_ISTAT_IDICC)); | 195 | while (!(tx3927_pcicptr->istat & PCI_ISTAT_IDICC)); |
| 214 | val = | 196 | val = |
| 215 | le32_to_cpu(*(volatile u32 *) (ulong) & tx3927_pcicptr-> | 197 | le32_to_cpu(*(volatile u32 *) (unsigned long) & tx3927_pcicptr-> |
| 216 | ipcidata); | 198 | ipcidata); |
| 217 | val = val & 0xff; | 199 | val = val & 0xff; |
| 218 | /* clear by setting */ | 200 | /* clear by setting */ |
| @@ -229,18 +211,12 @@ void tx_iooutb(unsigned long data, unsigned char *addr) | |||
| 229 | data = data | (data << 8) | (data << 16) | (data << 24); | 211 | data = data | (data << 8) | (data << 16) | (data << 24); |
| 230 | ioaddr = (unsigned long) addr; | 212 | ioaddr = (unsigned long) addr; |
| 231 | offset = ioaddr & 0x3; | 213 | offset = ioaddr & 0x3; |
| 232 | if (offset == 0) | 214 | byte = 0xf & ~(8 >> offset); |
| 233 | byte = 0x7; | 215 | |
| 234 | else if (offset == 1) | 216 | *(volatile u32 *) (unsigned long) & tx3927_pcicptr->ipcidata = data; |
| 235 | byte = 0xb; | 217 | *(volatile u32 *) (unsigned long) & tx3927_pcicptr->ipciaddr = |
| 236 | else if (offset == 2) | ||
| 237 | byte = 0xd; | ||
| 238 | else if (offset == 3) | ||
| 239 | byte = 0xe; | ||
| 240 | *(volatile u32 *) (ulong) & tx3927_pcicptr->ipcidata = data; | ||
| 241 | *(volatile u32 *) (ulong) & tx3927_pcicptr->ipciaddr = | ||
| 242 | (unsigned long) ioaddr; | 218 | (unsigned long) ioaddr; |
| 243 | *(volatile u32 *) (ulong) & tx3927_pcicptr->ipcibe = | 219 | *(volatile u32 *) (unsigned long) & tx3927_pcicptr->ipcibe = |
| 244 | (PCI_IPCIBE_ICMD_IOWRITE << PCI_IPCIBE_ICMD_SHIFT) | byte; | 220 | (PCI_IPCIBE_ICMD_IOWRITE << PCI_IPCIBE_ICMD_SHIFT) | byte; |
| 245 | while (!(tx3927_pcicptr->istat & PCI_ISTAT_IDICC)); | 221 | while (!(tx3927_pcicptr->istat & PCI_ISTAT_IDICC)); |
| 246 | /* clear by setting */ | 222 | /* clear by setting */ |
| @@ -255,18 +231,16 @@ unsigned short tx_ioinw(unsigned short *addr) | |||
| 255 | int byte; | 231 | int byte; |
| 256 | 232 | ||
| 257 | ioaddr = (unsigned long) addr; | 233 | ioaddr = (unsigned long) addr; |
| 258 | offset = ioaddr & 0x3; | 234 | offset = ioaddr & 0x2; |
| 259 | if (offset == 0) | 235 | byte = 3 << offset; |
| 260 | byte = 0x3; | 236 | |
| 261 | else if (offset == 2) | 237 | *(volatile u32 *) (unsigned long) & tx3927_pcicptr->ipciaddr = |
| 262 | byte = 0xc; | ||
| 263 | *(volatile u32 *) (ulong) & tx3927_pcicptr->ipciaddr = | ||
| 264 | (unsigned long) ioaddr; | 238 | (unsigned long) ioaddr; |
| 265 | *(volatile u32 *) (ulong) & tx3927_pcicptr->ipcibe = | 239 | *(volatile u32 *) (unsigned long) & tx3927_pcicptr->ipcibe = |
| 266 | (PCI_IPCIBE_ICMD_IOREAD << PCI_IPCIBE_ICMD_SHIFT) | byte; | 240 | (PCI_IPCIBE_ICMD_IOREAD << PCI_IPCIBE_ICMD_SHIFT) | byte; |
| 267 | while (!(tx3927_pcicptr->istat & PCI_ISTAT_IDICC)); | 241 | while (!(tx3927_pcicptr->istat & PCI_ISTAT_IDICC)); |
| 268 | val = | 242 | val = |
| 269 | le32_to_cpu(*(volatile u32 *) (ulong) & tx3927_pcicptr-> | 243 | le32_to_cpu(*(volatile u32 *) (unsigned long) & tx3927_pcicptr-> |
| 270 | ipcidata); | 244 | ipcidata); |
| 271 | val = val & 0xffff; | 245 | val = val & 0xffff; |
| 272 | /* clear by setting */ | 246 | /* clear by setting */ |
| @@ -283,15 +257,13 @@ void tx_iooutw(unsigned long data, unsigned short *addr) | |||
| 283 | 257 | ||
| 284 | data = data | (data << 16); | 258 | data = data | (data << 16); |
| 285 | ioaddr = (unsigned long) addr; | 259 | ioaddr = (unsigned long) addr; |
| 286 | offset = ioaddr & 0x3; | 260 | offset = ioaddr & 0x2; |
| 287 | if (offset == 0) | 261 | byte = 3 << offset; |
| 288 | byte = 0x3; | 262 | |
| 289 | else if (offset == 2) | 263 | *(volatile u32 *) (unsigned long) & tx3927_pcicptr->ipcidata = data; |
| 290 | byte = 0xc; | 264 | *(volatile u32 *) (unsigned long) & tx3927_pcicptr->ipciaddr = |
| 291 | *(volatile u32 *) (ulong) & tx3927_pcicptr->ipcidata = data; | ||
| 292 | *(volatile u32 *) (ulong) & tx3927_pcicptr->ipciaddr = | ||
| 293 | (unsigned long) ioaddr; | 265 | (unsigned long) ioaddr; |
| 294 | *(volatile u32 *) (ulong) & tx3927_pcicptr->ipcibe = | 266 | *(volatile u32 *) (unsigned long) & tx3927_pcicptr->ipcibe = |
| 295 | (PCI_IPCIBE_ICMD_IOWRITE << PCI_IPCIBE_ICMD_SHIFT) | byte; | 267 | (PCI_IPCIBE_ICMD_IOWRITE << PCI_IPCIBE_ICMD_SHIFT) | byte; |
| 296 | while (!(tx3927_pcicptr->istat & PCI_ISTAT_IDICC)); | 268 | while (!(tx3927_pcicptr->istat & PCI_ISTAT_IDICC)); |
| 297 | /* clear by setting */ | 269 | /* clear by setting */ |
| @@ -304,14 +276,14 @@ unsigned long tx_ioinl(unsigned int *addr) | |||
| 304 | __u32 ioaddr; | 276 | __u32 ioaddr; |
| 305 | 277 | ||
| 306 | ioaddr = (unsigned long) addr; | 278 | ioaddr = (unsigned long) addr; |
| 307 | *(volatile u32 *) (ulong) & tx3927_pcicptr->ipciaddr = | 279 | *(volatile u32 *) (unsigned long) & tx3927_pcicptr->ipciaddr = |
| 308 | (unsigned long) ioaddr; | 280 | (unsigned long) ioaddr; |
| 309 | *(volatile u32 *) (ulong) & tx3927_pcicptr->ipcibe = | 281 | *(volatile u32 *) (unsigned long) & tx3927_pcicptr->ipcibe = |
| 310 | (PCI_IPCIBE_ICMD_IOREAD << PCI_IPCIBE_ICMD_SHIFT) | | 282 | (PCI_IPCIBE_ICMD_IOREAD << PCI_IPCIBE_ICMD_SHIFT) | |
| 311 | PCI_IPCIBE_IBE_LONG; | 283 | PCI_IPCIBE_IBE_LONG; |
| 312 | while (!(tx3927_pcicptr->istat & PCI_ISTAT_IDICC)); | 284 | while (!(tx3927_pcicptr->istat & PCI_ISTAT_IDICC)); |
| 313 | val = | 285 | val = |
| 314 | le32_to_cpu(*(volatile u32 *) (ulong) & tx3927_pcicptr-> | 286 | le32_to_cpu(*(volatile u32 *) (unsigned long) & tx3927_pcicptr-> |
| 315 | ipcidata); | 287 | ipcidata); |
| 316 | /* clear by setting */ | 288 | /* clear by setting */ |
| 317 | tx3927_pcicptr->istat |= PCI_ISTAT_IDICC; | 289 | tx3927_pcicptr->istat |= PCI_ISTAT_IDICC; |
| @@ -323,11 +295,11 @@ void tx_iooutl(unsigned long data, unsigned int *addr) | |||
| 323 | __u32 ioaddr; | 295 | __u32 ioaddr; |
| 324 | 296 | ||
| 325 | ioaddr = (unsigned long) addr; | 297 | ioaddr = (unsigned long) addr; |
| 326 | *(volatile u32 *) (ulong) & tx3927_pcicptr->ipcidata = | 298 | *(volatile u32 *) (unsigned long) & tx3927_pcicptr->ipcidata = |
| 327 | cpu_to_le32(data); | 299 | cpu_to_le32(data); |
| 328 | *(volatile u32 *) (ulong) & tx3927_pcicptr->ipciaddr = | 300 | *(volatile u32 *) (unsigned long) & tx3927_pcicptr->ipciaddr = |
| 329 | (unsigned long) ioaddr; | 301 | (unsigned long) ioaddr; |
| 330 | *(volatile u32 *) (ulong) & tx3927_pcicptr->ipcibe = | 302 | *(volatile u32 *) (unsigned long) & tx3927_pcicptr->ipcibe = |
| 331 | (PCI_IPCIBE_ICMD_IOWRITE << PCI_IPCIBE_ICMD_SHIFT) | | 303 | (PCI_IPCIBE_ICMD_IOWRITE << PCI_IPCIBE_ICMD_SHIFT) | |
| 332 | PCI_IPCIBE_IBE_LONG; | 304 | PCI_IPCIBE_IBE_LONG; |
| 333 | while (!(tx3927_pcicptr->istat & PCI_ISTAT_IDICC)); | 305 | while (!(tx3927_pcicptr->istat & PCI_ISTAT_IDICC)); |
diff --git a/arch/mips/pci/pci-jmr3927.c b/arch/mips/pci/pci-jmr3927.c index 95a028769e56..f02ef6e36b02 100644 --- a/arch/mips/pci/pci-jmr3927.c +++ b/arch/mips/pci/pci-jmr3927.c | |||
| @@ -54,5 +54,5 @@ struct pci_controller jmr3927_controller = { | |||
| 54 | .pci_ops = &jmr3927_pci_ops, | 54 | .pci_ops = &jmr3927_pci_ops, |
| 55 | .io_resource = &pci_io_resource, | 55 | .io_resource = &pci_io_resource, |
| 56 | .mem_resource = &pci_mem_resource, | 56 | .mem_resource = &pci_mem_resource, |
| 57 | .mem_offset = JMR3927_PCIMEM; | 57 | .mem_offset = JMR3927_PCIMEM |
| 58 | }; | 58 | }; |
diff --git a/arch/mips/sgi-ip32/crime.c b/arch/mips/sgi-ip32/crime.c index eb3a16a04fee..41b5eca1148c 100644 --- a/arch/mips/sgi-ip32/crime.c +++ b/arch/mips/sgi-ip32/crime.c | |||
| @@ -10,6 +10,7 @@ | |||
| 10 | #include <linux/init.h> | 10 | #include <linux/init.h> |
| 11 | #include <linux/kernel.h> | 11 | #include <linux/kernel.h> |
| 12 | #include <linux/interrupt.h> | 12 | #include <linux/interrupt.h> |
| 13 | #include <linux/module.h> | ||
| 13 | #include <asm/bootinfo.h> | 14 | #include <asm/bootinfo.h> |
| 14 | #include <asm/io.h> | 15 | #include <asm/io.h> |
| 15 | #include <asm/mipsregs.h> | 16 | #include <asm/mipsregs.h> |
| @@ -18,8 +19,10 @@ | |||
| 18 | #include <asm/ip32/crime.h> | 19 | #include <asm/ip32/crime.h> |
| 19 | #include <asm/ip32/mace.h> | 20 | #include <asm/ip32/mace.h> |
| 20 | 21 | ||
| 21 | struct sgi_crime *crime; | 22 | struct sgi_crime __iomem *crime; |
| 22 | struct sgi_mace *mace; | 23 | struct sgi_mace __iomem *mace; |
| 24 | |||
| 25 | EXPORT_SYMBOL_GPL(mace); | ||
| 23 | 26 | ||
| 24 | void __init crime_init(void) | 27 | void __init crime_init(void) |
| 25 | { | 28 | { |
diff --git a/arch/parisc/kernel/drivers.c b/arch/parisc/kernel/drivers.c index 988844a169e6..d016d672ec2b 100644 --- a/arch/parisc/kernel/drivers.c +++ b/arch/parisc/kernel/drivers.c | |||
| @@ -499,8 +499,12 @@ alloc_pa_dev(unsigned long hpa, struct hardware_path *mod_path) | |||
| 499 | 499 | ||
| 500 | dev = create_parisc_device(mod_path); | 500 | dev = create_parisc_device(mod_path); |
| 501 | if (dev->id.hw_type != HPHW_FAULTY) { | 501 | if (dev->id.hw_type != HPHW_FAULTY) { |
| 502 | printk("Two devices have hardware path %s. Please file a bug with HP.\n" | 502 | printk(KERN_ERR "Two devices have hardware path [%s]. " |
| 503 | "In the meantime, you could try rearranging your cards.\n", parisc_pathname(dev)); | 503 | "IODC data for second device: " |
| 504 | "%02x%02x%02x%02x%02x%02x\n" | ||
| 505 | "Rearranging GSC cards sometimes helps\n", | ||
| 506 | parisc_pathname(dev), iodc_data[0], iodc_data[1], | ||
| 507 | iodc_data[3], iodc_data[4], iodc_data[5], iodc_data[6]); | ||
| 504 | return NULL; | 508 | return NULL; |
| 505 | } | 509 | } |
| 506 | 510 | ||
diff --git a/arch/parisc/kernel/entry.S b/arch/parisc/kernel/entry.S index c7e66ee5b083..9af4b22a6d77 100644 --- a/arch/parisc/kernel/entry.S +++ b/arch/parisc/kernel/entry.S | |||
| @@ -1846,6 +1846,7 @@ sys_clone_wrapper: | |||
| 1846 | ldo -16(%r30),%r29 /* Reference param save area */ | 1846 | ldo -16(%r30),%r29 /* Reference param save area */ |
| 1847 | #endif | 1847 | #endif |
| 1848 | 1848 | ||
| 1849 | /* WARNING - Clobbers r19 and r21, userspace must save these! */ | ||
| 1849 | STREG %r2,PT_GR19(%r1) /* save for child */ | 1850 | STREG %r2,PT_GR19(%r1) /* save for child */ |
| 1850 | STREG %r30,PT_GR21(%r1) | 1851 | STREG %r30,PT_GR21(%r1) |
| 1851 | BL sys_clone,%r2 | 1852 | BL sys_clone,%r2 |
diff --git a/arch/parisc/kernel/inventory.c b/arch/parisc/kernel/inventory.c index 1a1c66422736..8f563871e83c 100644 --- a/arch/parisc/kernel/inventory.c +++ b/arch/parisc/kernel/inventory.c | |||
| @@ -188,7 +188,7 @@ pat_query_module(ulong pcell_loc, ulong mod_index) | |||
| 188 | temp = pa_pdc_cell.cba; | 188 | temp = pa_pdc_cell.cba; |
| 189 | dev = alloc_pa_dev(PAT_GET_CBA(temp), &pa_pdc_cell.mod_path); | 189 | dev = alloc_pa_dev(PAT_GET_CBA(temp), &pa_pdc_cell.mod_path); |
| 190 | if (!dev) { | 190 | if (!dev) { |
| 191 | return PDC_NE_MOD; | 191 | return PDC_OK; |
| 192 | } | 192 | } |
| 193 | 193 | ||
| 194 | /* alloc_pa_dev sets dev->hpa */ | 194 | /* alloc_pa_dev sets dev->hpa */ |
diff --git a/arch/parisc/kernel/ioctl32.c b/arch/parisc/kernel/ioctl32.c index 0a331104ad56..4eada1bb27f0 100644 --- a/arch/parisc/kernel/ioctl32.c +++ b/arch/parisc/kernel/ioctl32.c | |||
| @@ -19,536 +19,6 @@ | |||
| 19 | #define CODE | 19 | #define CODE |
| 20 | #include "compat_ioctl.c" | 20 | #include "compat_ioctl.c" |
| 21 | 21 | ||
| 22 | /* Use this to get at 32-bit user passed pointers. | ||
| 23 | See sys_sparc32.c for description about these. */ | ||
| 24 | #define A(__x) ((unsigned long)(__x)) | ||
| 25 | /* The same for use with copy_from_user() and copy_to_user(). */ | ||
| 26 | #define B(__x) ((void *)(unsigned long)(__x)) | ||
| 27 | |||
| 28 | #if defined(CONFIG_DRM) || defined(CONFIG_DRM_MODULE) | ||
| 29 | /* This really belongs in include/linux/drm.h -DaveM */ | ||
| 30 | #include "../../../drivers/char/drm/drm.h" | ||
| 31 | |||
| 32 | typedef struct drm32_version { | ||
| 33 | int version_major; /* Major version */ | ||
| 34 | int version_minor; /* Minor version */ | ||
| 35 | int version_patchlevel;/* Patch level */ | ||
| 36 | int name_len; /* Length of name buffer */ | ||
| 37 | u32 name; /* Name of driver */ | ||
| 38 | int date_len; /* Length of date buffer */ | ||
| 39 | u32 date; /* User-space buffer to hold date */ | ||
| 40 | int desc_len; /* Length of desc buffer */ | ||
| 41 | u32 desc; /* User-space buffer to hold desc */ | ||
| 42 | } drm32_version_t; | ||
| 43 | #define DRM32_IOCTL_VERSION DRM_IOWR(0x00, drm32_version_t) | ||
| 44 | |||
| 45 | static int drm32_version(unsigned int fd, unsigned int cmd, unsigned long arg) | ||
| 46 | { | ||
| 47 | drm32_version_t *uversion = (drm32_version_t *)arg; | ||
| 48 | char *name_ptr, *date_ptr, *desc_ptr; | ||
| 49 | u32 tmp1, tmp2, tmp3; | ||
| 50 | drm_version_t kversion; | ||
| 51 | mm_segment_t old_fs; | ||
| 52 | int ret; | ||
| 53 | |||
| 54 | memset(&kversion, 0, sizeof(kversion)); | ||
| 55 | if (get_user(kversion.name_len, &uversion->name_len) || | ||
| 56 | get_user(kversion.date_len, &uversion->date_len) || | ||
| 57 | get_user(kversion.desc_len, &uversion->desc_len) || | ||
| 58 | get_user(tmp1, &uversion->name) || | ||
| 59 | get_user(tmp2, &uversion->date) || | ||
| 60 | get_user(tmp3, &uversion->desc)) | ||
| 61 | return -EFAULT; | ||
| 62 | |||
| 63 | name_ptr = (char *) A(tmp1); | ||
| 64 | date_ptr = (char *) A(tmp2); | ||
| 65 | desc_ptr = (char *) A(tmp3); | ||
| 66 | |||
| 67 | ret = -ENOMEM; | ||
| 68 | if (kversion.name_len && name_ptr) { | ||
| 69 | kversion.name = kmalloc(kversion.name_len, GFP_KERNEL); | ||
| 70 | if (!kversion.name) | ||
| 71 | goto out; | ||
| 72 | } | ||
| 73 | if (kversion.date_len && date_ptr) { | ||
| 74 | kversion.date = kmalloc(kversion.date_len, GFP_KERNEL); | ||
| 75 | if (!kversion.date) | ||
| 76 | goto out; | ||
| 77 | } | ||
| 78 | if (kversion.desc_len && desc_ptr) { | ||
| 79 | kversion.desc = kmalloc(kversion.desc_len, GFP_KERNEL); | ||
| 80 | if (!kversion.desc) | ||
| 81 | goto out; | ||
| 82 | } | ||
| 83 | |||
| 84 | old_fs = get_fs(); | ||
| 85 | set_fs(KERNEL_DS); | ||
| 86 | ret = sys_ioctl (fd, DRM_IOCTL_VERSION, (unsigned long)&kversion); | ||
| 87 | set_fs(old_fs); | ||
| 88 | |||
| 89 | if (!ret) { | ||
| 90 | if ((kversion.name && | ||
| 91 | copy_to_user(name_ptr, kversion.name, kversion.name_len)) || | ||
| 92 | (kversion.date && | ||
| 93 | copy_to_user(date_ptr, kversion.date, kversion.date_len)) || | ||
| 94 | (kversion.desc && | ||
| 95 | copy_to_user(desc_ptr, kversion.desc, kversion.desc_len))) | ||
| 96 | ret = -EFAULT; | ||
| 97 | if (put_user(kversion.version_major, &uversion->version_major) || | ||
| 98 | put_user(kversion.version_minor, &uversion->version_minor) || | ||
| 99 | put_user(kversion.version_patchlevel, &uversion->version_patchlevel) || | ||
| 100 | put_user(kversion.name_len, &uversion->name_len) || | ||
| 101 | put_user(kversion.date_len, &uversion->date_len) || | ||
| 102 | put_user(kversion.desc_len, &uversion->desc_len)) | ||
| 103 | ret = -EFAULT; | ||
| 104 | } | ||
| 105 | |||
| 106 | out: | ||
| 107 | kfree(kversion.name); | ||
| 108 | kfree(kversion.date); | ||
| 109 | kfree(kversion.desc); | ||
| 110 | return ret; | ||
| 111 | } | ||
| 112 | |||
| 113 | typedef struct drm32_unique { | ||
| 114 | int unique_len; /* Length of unique */ | ||
| 115 | u32 unique; /* Unique name for driver instantiation */ | ||
| 116 | } drm32_unique_t; | ||
| 117 | #define DRM32_IOCTL_GET_UNIQUE DRM_IOWR(0x01, drm32_unique_t) | ||
| 118 | #define DRM32_IOCTL_SET_UNIQUE DRM_IOW( 0x10, drm32_unique_t) | ||
| 119 | |||
| 120 | static int drm32_getsetunique(unsigned int fd, unsigned int cmd, unsigned long arg) | ||
| 121 | { | ||
| 122 | drm32_unique_t *uarg = (drm32_unique_t *)arg; | ||
| 123 | drm_unique_t karg; | ||
| 124 | mm_segment_t old_fs; | ||
| 125 | char *uptr; | ||
| 126 | u32 tmp; | ||
| 127 | int ret; | ||
| 128 | |||
| 129 | if (get_user(karg.unique_len, &uarg->unique_len)) | ||
| 130 | return -EFAULT; | ||
| 131 | karg.unique = NULL; | ||
| 132 | |||
| 133 | if (get_user(tmp, &uarg->unique)) | ||
| 134 | return -EFAULT; | ||
| 135 | |||
| 136 | uptr = (char *) A(tmp); | ||
| 137 | |||
| 138 | if (uptr) { | ||
| 139 | karg.unique = kmalloc(karg.unique_len, GFP_KERNEL); | ||
| 140 | if (!karg.unique) | ||
| 141 | return -ENOMEM; | ||
| 142 | if (cmd == DRM32_IOCTL_SET_UNIQUE && | ||
| 143 | copy_from_user(karg.unique, uptr, karg.unique_len)) { | ||
| 144 | kfree(karg.unique); | ||
| 145 | return -EFAULT; | ||
| 146 | } | ||
| 147 | } | ||
| 148 | |||
| 149 | old_fs = get_fs(); | ||
| 150 | set_fs(KERNEL_DS); | ||
| 151 | if (cmd == DRM32_IOCTL_GET_UNIQUE) | ||
| 152 | ret = sys_ioctl (fd, DRM_IOCTL_GET_UNIQUE, (unsigned long)&karg); | ||
| 153 | else | ||
| 154 | ret = sys_ioctl (fd, DRM_IOCTL_SET_UNIQUE, (unsigned long)&karg); | ||
| 155 | set_fs(old_fs); | ||
| 156 | |||
| 157 | if (!ret) { | ||
| 158 | if (cmd == DRM32_IOCTL_GET_UNIQUE && | ||
| 159 | uptr != NULL && | ||
| 160 | copy_to_user(uptr, karg.unique, karg.unique_len)) | ||
| 161 | ret = -EFAULT; | ||
| 162 | if (put_user(karg.unique_len, &uarg->unique_len)) | ||
| 163 | ret = -EFAULT; | ||
| 164 | } | ||
| 165 | |||
| 166 | kfree(karg.unique); | ||
| 167 | return ret; | ||
| 168 | } | ||
| 169 | |||
| 170 | typedef struct drm32_map { | ||
| 171 | u32 offset; /* Requested physical address (0 for SAREA)*/ | ||
| 172 | u32 size; /* Requested physical size (bytes) */ | ||
| 173 | drm_map_type_t type; /* Type of memory to map */ | ||
| 174 | drm_map_flags_t flags; /* Flags */ | ||
| 175 | u32 handle; /* User-space: "Handle" to pass to mmap */ | ||
| 176 | /* Kernel-space: kernel-virtual address */ | ||
| 177 | int mtrr; /* MTRR slot used */ | ||
| 178 | /* Private data */ | ||
| 179 | } drm32_map_t; | ||
| 180 | #define DRM32_IOCTL_ADD_MAP DRM_IOWR(0x15, drm32_map_t) | ||
| 181 | |||
| 182 | static int drm32_addmap(unsigned int fd, unsigned int cmd, unsigned long arg) | ||
| 183 | { | ||
| 184 | drm32_map_t *uarg = (drm32_map_t *) arg; | ||
| 185 | drm_map_t karg; | ||
| 186 | mm_segment_t old_fs; | ||
| 187 | u32 tmp; | ||
| 188 | int ret; | ||
| 189 | |||
| 190 | ret = get_user(karg.offset, &uarg->offset); | ||
| 191 | ret |= get_user(karg.size, &uarg->size); | ||
| 192 | ret |= get_user(karg.type, &uarg->type); | ||
| 193 | ret |= get_user(karg.flags, &uarg->flags); | ||
| 194 | ret |= get_user(tmp, &uarg->handle); | ||
| 195 | ret |= get_user(karg.mtrr, &uarg->mtrr); | ||
| 196 | if (ret) | ||
| 197 | return -EFAULT; | ||
| 198 | |||
| 199 | karg.handle = (void *) A(tmp); | ||
| 200 | |||
| 201 | old_fs = get_fs(); | ||
| 202 | set_fs(KERNEL_DS); | ||
| 203 | ret = sys_ioctl(fd, DRM_IOCTL_ADD_MAP, (unsigned long) &karg); | ||
| 204 | set_fs(old_fs); | ||
| 205 | |||
| 206 | if (!ret) { | ||
| 207 | ret = put_user(karg.offset, &uarg->offset); | ||
| 208 | ret |= put_user(karg.size, &uarg->size); | ||
| 209 | ret |= put_user(karg.type, &uarg->type); | ||
| 210 | ret |= put_user(karg.flags, &uarg->flags); | ||
| 211 | tmp = (u32) (long)karg.handle; | ||
| 212 | ret |= put_user(tmp, &uarg->handle); | ||
| 213 | ret |= put_user(karg.mtrr, &uarg->mtrr); | ||
| 214 | if (ret) | ||
| 215 | ret = -EFAULT; | ||
| 216 | } | ||
| 217 | |||
| 218 | return ret; | ||
| 219 | } | ||
| 220 | |||
| 221 | typedef struct drm32_buf_info { | ||
| 222 | int count; /* Entries in list */ | ||
| 223 | u32 list; /* (drm_buf_desc_t *) */ | ||
| 224 | } drm32_buf_info_t; | ||
| 225 | #define DRM32_IOCTL_INFO_BUFS DRM_IOWR(0x18, drm32_buf_info_t) | ||
| 226 | |||
| 227 | static int drm32_info_bufs(unsigned int fd, unsigned int cmd, unsigned long arg) | ||
| 228 | { | ||
| 229 | drm32_buf_info_t *uarg = (drm32_buf_info_t *)arg; | ||
| 230 | drm_buf_desc_t *ulist; | ||
| 231 | drm_buf_info_t karg; | ||
| 232 | mm_segment_t old_fs; | ||
| 233 | int orig_count, ret; | ||
| 234 | u32 tmp; | ||
| 235 | |||
| 236 | if (get_user(karg.count, &uarg->count) || | ||
| 237 | get_user(tmp, &uarg->list)) | ||
| 238 | return -EFAULT; | ||
| 239 | |||
| 240 | ulist = (drm_buf_desc_t *) A(tmp); | ||
| 241 | |||
| 242 | orig_count = karg.count; | ||
| 243 | |||
| 244 | karg.list = kmalloc(karg.count * sizeof(drm_buf_desc_t), GFP_KERNEL); | ||
| 245 | if (!karg.list) | ||
| 246 | return -EFAULT; | ||
| 247 | |||
| 248 | old_fs = get_fs(); | ||
| 249 | set_fs(KERNEL_DS); | ||
| 250 | ret = sys_ioctl(fd, DRM_IOCTL_INFO_BUFS, (unsigned long) &karg); | ||
| 251 | set_fs(old_fs); | ||
| 252 | |||
| 253 | if (!ret) { | ||
| 254 | if (karg.count <= orig_count && | ||
| 255 | (copy_to_user(ulist, karg.list, | ||
| 256 | karg.count * sizeof(drm_buf_desc_t)))) | ||
| 257 | ret = -EFAULT; | ||
| 258 | if (put_user(karg.count, &uarg->count)) | ||
| 259 | ret = -EFAULT; | ||
| 260 | } | ||
| 261 | |||
| 262 | kfree(karg.list); | ||
| 263 | return ret; | ||
| 264 | } | ||
| 265 | |||
| 266 | typedef struct drm32_buf_free { | ||
| 267 | int count; | ||
| 268 | u32 list; /* (int *) */ | ||
| 269 | } drm32_buf_free_t; | ||
| 270 | #define DRM32_IOCTL_FREE_BUFS DRM_IOW( 0x1a, drm32_buf_free_t) | ||
| 271 | |||
| 272 | static int drm32_free_bufs(unsigned int fd, unsigned int cmd, unsigned long arg) | ||
| 273 | { | ||
| 274 | drm32_buf_free_t *uarg = (drm32_buf_free_t *)arg; | ||
| 275 | drm_buf_free_t karg; | ||
| 276 | mm_segment_t old_fs; | ||
| 277 | int *ulist; | ||
| 278 | int ret; | ||
| 279 | u32 tmp; | ||
| 280 | |||
| 281 | if (get_user(karg.count, &uarg->count) || | ||
| 282 | get_user(tmp, &uarg->list)) | ||
| 283 | return -EFAULT; | ||
| 284 | |||
| 285 | ulist = (int *) A(tmp); | ||
| 286 | |||
| 287 | karg.list = kmalloc(karg.count * sizeof(int), GFP_KERNEL); | ||
| 288 | if (!karg.list) | ||
| 289 | return -ENOMEM; | ||
| 290 | |||
| 291 | ret = -EFAULT; | ||
| 292 | if (copy_from_user(karg.list, ulist, (karg.count * sizeof(int)))) | ||
| 293 | goto out; | ||
| 294 | |||
| 295 | old_fs = get_fs(); | ||
| 296 | set_fs(KERNEL_DS); | ||
| 297 | ret = sys_ioctl(fd, DRM_IOCTL_FREE_BUFS, (unsigned long) &karg); | ||
| 298 | set_fs(old_fs); | ||
| 299 | |||
| 300 | out: | ||
| 301 | kfree(karg.list); | ||
| 302 | return ret; | ||
| 303 | } | ||
| 304 | |||
| 305 | typedef struct drm32_buf_pub { | ||
| 306 | int idx; /* Index into master buflist */ | ||
| 307 | int total; /* Buffer size */ | ||
| 308 | int used; /* Amount of buffer in use (for DMA) */ | ||
| 309 | u32 address; /* Address of buffer (void *) */ | ||
| 310 | } drm32_buf_pub_t; | ||
| 311 | |||
| 312 | typedef struct drm32_buf_map { | ||
| 313 | int count; /* Length of buflist */ | ||
| 314 | u32 virtual; /* Mmaped area in user-virtual (void *) */ | ||
| 315 | u32 list; /* Buffer information (drm_buf_pub_t *) */ | ||
| 316 | } drm32_buf_map_t; | ||
| 317 | #define DRM32_IOCTL_MAP_BUFS DRM_IOWR(0x19, drm32_buf_map_t) | ||
| 318 | |||
| 319 | static int drm32_map_bufs(unsigned int fd, unsigned int cmd, unsigned long arg) | ||
| 320 | { | ||
| 321 | drm32_buf_map_t *uarg = (drm32_buf_map_t *)arg; | ||
| 322 | drm32_buf_pub_t *ulist; | ||
| 323 | drm_buf_map_t karg; | ||
| 324 | mm_segment_t old_fs; | ||
| 325 | int orig_count, ret, i; | ||
| 326 | u32 tmp1, tmp2; | ||
| 327 | |||
| 328 | if (get_user(karg.count, &uarg->count) || | ||
| 329 | get_user(tmp1, &uarg->virtual) || | ||
| 330 | get_user(tmp2, &uarg->list)) | ||
| 331 | return -EFAULT; | ||
| 332 | |||
| 333 | karg.virtual = (void *) A(tmp1); | ||
| 334 | ulist = (drm32_buf_pub_t *) A(tmp2); | ||
| 335 | |||
| 336 | orig_count = karg.count; | ||
| 337 | |||
| 338 | karg.list = kmalloc(karg.count * sizeof(drm_buf_pub_t), GFP_KERNEL); | ||
| 339 | if (!karg.list) | ||
| 340 | return -ENOMEM; | ||
| 341 | |||
| 342 | ret = -EFAULT; | ||
| 343 | for (i = 0; i < karg.count; i++) { | ||
| 344 | if (get_user(karg.list[i].idx, &ulist[i].idx) || | ||
| 345 | get_user(karg.list[i].total, &ulist[i].total) || | ||
| 346 | get_user(karg.list[i].used, &ulist[i].used) || | ||
| 347 | get_user(tmp1, &ulist[i].address)) | ||
| 348 | goto out; | ||
| 349 | |||
| 350 | karg.list[i].address = (void *) A(tmp1); | ||
| 351 | } | ||
| 352 | |||
| 353 | old_fs = get_fs(); | ||
| 354 | set_fs(KERNEL_DS); | ||
| 355 | ret = sys_ioctl(fd, DRM_IOCTL_MAP_BUFS, (unsigned long) &karg); | ||
| 356 | set_fs(old_fs); | ||
| 357 | |||
| 358 | if (!ret) { | ||
| 359 | for (i = 0; i < orig_count; i++) { | ||
| 360 | tmp1 = (u32) (long) karg.list[i].address; | ||
| 361 | if (put_user(karg.list[i].idx, &ulist[i].idx) || | ||
| 362 | put_user(karg.list[i].total, &ulist[i].total) || | ||
| 363 | put_user(karg.list[i].used, &ulist[i].used) || | ||
| 364 | put_user(tmp1, &ulist[i].address)) { | ||
| 365 | ret = -EFAULT; | ||
| 366 | goto out; | ||
| 367 | } | ||
| 368 | } | ||
| 369 | if (put_user(karg.count, &uarg->count)) | ||
| 370 | ret = -EFAULT; | ||
| 371 | } | ||
| 372 | |||
| 373 | out: | ||
| 374 | kfree(karg.list); | ||
| 375 | return ret; | ||
| 376 | } | ||
| 377 | |||
| 378 | typedef struct drm32_dma { | ||
| 379 | /* Indices here refer to the offset into | ||
| 380 | buflist in drm_buf_get_t. */ | ||
| 381 | int context; /* Context handle */ | ||
| 382 | int send_count; /* Number of buffers to send */ | ||
| 383 | u32 send_indices; /* List of handles to buffers (int *) */ | ||
| 384 | u32 send_sizes; /* Lengths of data to send (int *) */ | ||
| 385 | drm_dma_flags_t flags; /* Flags */ | ||
| 386 | int request_count; /* Number of buffers requested */ | ||
| 387 | int request_size; /* Desired size for buffers */ | ||
| 388 | u32 request_indices; /* Buffer information (int *) */ | ||
| 389 | u32 request_sizes; /* (int *) */ | ||
| 390 | int granted_count; /* Number of buffers granted */ | ||
| 391 | } drm32_dma_t; | ||
| 392 | #define DRM32_IOCTL_DMA DRM_IOWR(0x29, drm32_dma_t) | ||
| 393 | |||
| 394 | /* RED PEN The DRM layer blindly dereferences the send/request | ||
| 395 | * indice/size arrays even though they are userland | ||
| 396 | * pointers. -DaveM | ||
| 397 | */ | ||
| 398 | static int drm32_dma(unsigned int fd, unsigned int cmd, unsigned long arg) | ||
| 399 | { | ||
| 400 | drm32_dma_t *uarg = (drm32_dma_t *) arg; | ||
| 401 | int *u_si, *u_ss, *u_ri, *u_rs; | ||
| 402 | drm_dma_t karg; | ||
| 403 | mm_segment_t old_fs; | ||
| 404 | int ret; | ||
| 405 | u32 tmp1, tmp2, tmp3, tmp4; | ||
| 406 | |||
| 407 | karg.send_indices = karg.send_sizes = NULL; | ||
| 408 | karg.request_indices = karg.request_sizes = NULL; | ||
| 409 | |||
| 410 | if (get_user(karg.context, &uarg->context) || | ||
| 411 | get_user(karg.send_count, &uarg->send_count) || | ||
| 412 | get_user(tmp1, &uarg->send_indices) || | ||
| 413 | get_user(tmp2, &uarg->send_sizes) || | ||
| 414 | get_user(karg.flags, &uarg->flags) || | ||
| 415 | get_user(karg.request_count, &uarg->request_count) || | ||
| 416 | get_user(karg.request_size, &uarg->request_size) || | ||
| 417 | get_user(tmp3, &uarg->request_indices) || | ||
| 418 | get_user(tmp4, &uarg->request_sizes) || | ||
| 419 | get_user(karg.granted_count, &uarg->granted_count)) | ||
| 420 | return -EFAULT; | ||
| 421 | |||
| 422 | u_si = (int *) A(tmp1); | ||
| 423 | u_ss = (int *) A(tmp2); | ||
| 424 | u_ri = (int *) A(tmp3); | ||
| 425 | u_rs = (int *) A(tmp4); | ||
| 426 | |||
| 427 | if (karg.send_count) { | ||
| 428 | karg.send_indices = kmalloc(karg.send_count * sizeof(int), GFP_KERNEL); | ||
| 429 | karg.send_sizes = kmalloc(karg.send_count * sizeof(int), GFP_KERNEL); | ||
| 430 | |||
| 431 | ret = -ENOMEM; | ||
| 432 | if (!karg.send_indices || !karg.send_sizes) | ||
| 433 | goto out; | ||
| 434 | |||
| 435 | ret = -EFAULT; | ||
| 436 | if (copy_from_user(karg.send_indices, u_si, | ||
| 437 | (karg.send_count * sizeof(int))) || | ||
| 438 | copy_from_user(karg.send_sizes, u_ss, | ||
| 439 | (karg.send_count * sizeof(int)))) | ||
| 440 | goto out; | ||
| 441 | } | ||
| 442 | |||
| 443 | if (karg.request_count) { | ||
| 444 | karg.request_indices = kmalloc(karg.request_count * sizeof(int), GFP_KERNEL); | ||
| 445 | karg.request_sizes = kmalloc(karg.request_count * sizeof(int), GFP_KERNEL); | ||
| 446 | |||
| 447 | ret = -ENOMEM; | ||
| 448 | if (!karg.request_indices || !karg.request_sizes) | ||
| 449 | goto out; | ||
| 450 | |||
| 451 | ret = -EFAULT; | ||
| 452 | if (copy_from_user(karg.request_indices, u_ri, | ||
| 453 | (karg.request_count * sizeof(int))) || | ||
| 454 | copy_from_user(karg.request_sizes, u_rs, | ||
| 455 | (karg.request_count * sizeof(int)))) | ||
| 456 | goto out; | ||
| 457 | } | ||
| 458 | |||
| 459 | old_fs = get_fs(); | ||
| 460 | set_fs(KERNEL_DS); | ||
| 461 | ret = sys_ioctl(fd, DRM_IOCTL_DMA, (unsigned long) &karg); | ||
| 462 | set_fs(old_fs); | ||
| 463 | |||
| 464 | if (!ret) { | ||
| 465 | if (put_user(karg.context, &uarg->context) || | ||
| 466 | put_user(karg.send_count, &uarg->send_count) || | ||
| 467 | put_user(karg.flags, &uarg->flags) || | ||
| 468 | put_user(karg.request_count, &uarg->request_count) || | ||
| 469 | put_user(karg.request_size, &uarg->request_size) || | ||
| 470 | put_user(karg.granted_count, &uarg->granted_count)) | ||
| 471 | ret = -EFAULT; | ||
| 472 | |||
| 473 | if (karg.send_count) { | ||
| 474 | if (copy_to_user(u_si, karg.send_indices, | ||
| 475 | (karg.send_count * sizeof(int))) || | ||
| 476 | copy_to_user(u_ss, karg.send_sizes, | ||
| 477 | (karg.send_count * sizeof(int)))) | ||
| 478 | ret = -EFAULT; | ||
| 479 | } | ||
| 480 | if (karg.request_count) { | ||
| 481 | if (copy_to_user(u_ri, karg.request_indices, | ||
| 482 | (karg.request_count * sizeof(int))) || | ||
| 483 | copy_to_user(u_rs, karg.request_sizes, | ||
| 484 | (karg.request_count * sizeof(int)))) | ||
| 485 | ret = -EFAULT; | ||
| 486 | } | ||
| 487 | } | ||
| 488 | |||
| 489 | out: | ||
| 490 | kfree(karg.send_indices); | ||
| 491 | kfree(karg.send_sizes); | ||
| 492 | kfree(karg.request_indices); | ||
| 493 | kfree(karg.request_sizes); | ||
| 494 | return ret; | ||
| 495 | } | ||
| 496 | |||
| 497 | typedef struct drm32_ctx_res { | ||
| 498 | int count; | ||
| 499 | u32 contexts; /* (drm_ctx_t *) */ | ||
| 500 | } drm32_ctx_res_t; | ||
| 501 | #define DRM32_IOCTL_RES_CTX DRM_IOWR(0x26, drm32_ctx_res_t) | ||
| 502 | |||
| 503 | static int drm32_res_ctx(unsigned int fd, unsigned int cmd, unsigned long arg) | ||
| 504 | { | ||
| 505 | drm32_ctx_res_t *uarg = (drm32_ctx_res_t *) arg; | ||
| 506 | drm_ctx_t *ulist; | ||
| 507 | drm_ctx_res_t karg; | ||
| 508 | mm_segment_t old_fs; | ||
| 509 | int orig_count, ret; | ||
| 510 | u32 tmp; | ||
| 511 | |||
| 512 | karg.contexts = NULL; | ||
| 513 | if (get_user(karg.count, &uarg->count) || | ||
| 514 | get_user(tmp, &uarg->contexts)) | ||
| 515 | return -EFAULT; | ||
| 516 | |||
| 517 | ulist = (drm_ctx_t *) A(tmp); | ||
| 518 | |||
| 519 | orig_count = karg.count; | ||
| 520 | if (karg.count && ulist) { | ||
| 521 | karg.contexts = kmalloc((karg.count * sizeof(drm_ctx_t)), GFP_KERNEL); | ||
| 522 | if (!karg.contexts) | ||
| 523 | return -ENOMEM; | ||
| 524 | if (copy_from_user(karg.contexts, ulist, | ||
| 525 | (karg.count * sizeof(drm_ctx_t)))) { | ||
| 526 | kfree(karg.contexts); | ||
| 527 | return -EFAULT; | ||
| 528 | } | ||
| 529 | } | ||
| 530 | |||
| 531 | old_fs = get_fs(); | ||
| 532 | set_fs(KERNEL_DS); | ||
| 533 | ret = sys_ioctl(fd, DRM_IOCTL_RES_CTX, (unsigned long) &karg); | ||
| 534 | set_fs(old_fs); | ||
| 535 | |||
| 536 | if (!ret) { | ||
| 537 | if (orig_count) { | ||
| 538 | if (copy_to_user(ulist, karg.contexts, | ||
| 539 | (orig_count * sizeof(drm_ctx_t)))) | ||
| 540 | ret = -EFAULT; | ||
| 541 | } | ||
| 542 | if (put_user(karg.count, &uarg->count)) | ||
| 543 | ret = -EFAULT; | ||
| 544 | } | ||
| 545 | |||
| 546 | kfree(karg.contexts); | ||
| 547 | return ret; | ||
| 548 | } | ||
| 549 | |||
| 550 | #endif | ||
| 551 | |||
| 552 | #define HANDLE_IOCTL(cmd, handler) { cmd, (ioctl_trans_handler_t)handler, NULL }, | 22 | #define HANDLE_IOCTL(cmd, handler) { cmd, (ioctl_trans_handler_t)handler, NULL }, |
| 553 | #define COMPATIBLE_IOCTL(cmd) HANDLE_IOCTL(cmd, sys_ioctl) | 23 | #define COMPATIBLE_IOCTL(cmd) HANDLE_IOCTL(cmd, sys_ioctl) |
| 554 | 24 | ||
| @@ -561,11 +31,6 @@ IOCTL_TABLE_START | |||
| 561 | #define DECLARES | 31 | #define DECLARES |
| 562 | #include "compat_ioctl.c" | 32 | #include "compat_ioctl.c" |
| 563 | 33 | ||
| 564 | /* PA-specific ioctls */ | ||
| 565 | COMPATIBLE_IOCTL(PA_PERF_ON) | ||
| 566 | COMPATIBLE_IOCTL(PA_PERF_OFF) | ||
| 567 | COMPATIBLE_IOCTL(PA_PERF_VERSION) | ||
| 568 | |||
| 569 | /* And these ioctls need translation */ | 34 | /* And these ioctls need translation */ |
| 570 | HANDLE_IOCTL(SIOCGPPPSTATS, dev_ifsioc) | 35 | HANDLE_IOCTL(SIOCGPPPSTATS, dev_ifsioc) |
| 571 | HANDLE_IOCTL(SIOCGPPPCSTATS, dev_ifsioc) | 36 | HANDLE_IOCTL(SIOCGPPPCSTATS, dev_ifsioc) |
| @@ -590,17 +55,6 @@ HANDLE_IOCTL(RTC_EPOCH_READ, w_long) | |||
| 590 | COMPATIBLE_IOCTL(RTC_EPOCH_SET) | 55 | COMPATIBLE_IOCTL(RTC_EPOCH_SET) |
| 591 | #endif | 56 | #endif |
| 592 | 57 | ||
| 593 | #if defined(CONFIG_DRM) || defined(CONFIG_DRM_MODULE) | ||
| 594 | HANDLE_IOCTL(DRM32_IOCTL_VERSION, drm32_version); | ||
| 595 | HANDLE_IOCTL(DRM32_IOCTL_GET_UNIQUE, drm32_getsetunique); | ||
| 596 | HANDLE_IOCTL(DRM32_IOCTL_SET_UNIQUE, drm32_getsetunique); | ||
| 597 | HANDLE_IOCTL(DRM32_IOCTL_ADD_MAP, drm32_addmap); | ||
| 598 | HANDLE_IOCTL(DRM32_IOCTL_INFO_BUFS, drm32_info_bufs); | ||
| 599 | HANDLE_IOCTL(DRM32_IOCTL_FREE_BUFS, drm32_free_bufs); | ||
| 600 | HANDLE_IOCTL(DRM32_IOCTL_MAP_BUFS, drm32_map_bufs); | ||
| 601 | HANDLE_IOCTL(DRM32_IOCTL_DMA, drm32_dma); | ||
| 602 | HANDLE_IOCTL(DRM32_IOCTL_RES_CTX, drm32_res_ctx); | ||
| 603 | #endif /* DRM */ | ||
| 604 | IOCTL_TABLE_END | 58 | IOCTL_TABLE_END |
| 605 | 59 | ||
| 606 | int ioctl_table_size = ARRAY_SIZE(ioctl_start); | 60 | int ioctl_table_size = ARRAY_SIZE(ioctl_start); |
diff --git a/arch/parisc/kernel/irq.c b/arch/parisc/kernel/irq.c index 006385dbee66..197936d9359a 100644 --- a/arch/parisc/kernel/irq.c +++ b/arch/parisc/kernel/irq.c | |||
| @@ -30,6 +30,9 @@ | |||
| 30 | #include <linux/seq_file.h> | 30 | #include <linux/seq_file.h> |
| 31 | #include <linux/spinlock.h> | 31 | #include <linux/spinlock.h> |
| 32 | #include <linux/types.h> | 32 | #include <linux/types.h> |
| 33 | #include <asm/io.h> | ||
| 34 | |||
| 35 | #include <asm/smp.h> | ||
| 33 | 36 | ||
| 34 | #undef PARISC_IRQ_CR16_COUNTS | 37 | #undef PARISC_IRQ_CR16_COUNTS |
| 35 | 38 | ||
| @@ -43,26 +46,34 @@ extern irqreturn_t ipi_interrupt(int, void *, struct pt_regs *); | |||
| 43 | */ | 46 | */ |
| 44 | static volatile unsigned long cpu_eiem = 0; | 47 | static volatile unsigned long cpu_eiem = 0; |
| 45 | 48 | ||
| 46 | static void cpu_set_eiem(void *info) | 49 | static void cpu_disable_irq(unsigned int irq) |
| 47 | { | ||
| 48 | set_eiem((unsigned long) info); | ||
| 49 | } | ||
| 50 | |||
| 51 | static inline void cpu_disable_irq(unsigned int irq) | ||
| 52 | { | 50 | { |
| 53 | unsigned long eirr_bit = EIEM_MASK(irq); | 51 | unsigned long eirr_bit = EIEM_MASK(irq); |
| 54 | 52 | ||
| 55 | cpu_eiem &= ~eirr_bit; | 53 | cpu_eiem &= ~eirr_bit; |
| 56 | on_each_cpu(cpu_set_eiem, (void *) cpu_eiem, 1, 1); | 54 | /* Do nothing on the other CPUs. If they get this interrupt, |
| 55 | * The & cpu_eiem in the do_cpu_irq_mask() ensures they won't | ||
| 56 | * handle it, and the set_eiem() at the bottom will ensure it | ||
| 57 | * then gets disabled */ | ||
| 57 | } | 58 | } |
| 58 | 59 | ||
| 59 | static void cpu_enable_irq(unsigned int irq) | 60 | static void cpu_enable_irq(unsigned int irq) |
| 60 | { | 61 | { |
| 61 | unsigned long eirr_bit = EIEM_MASK(irq); | 62 | unsigned long eirr_bit = EIEM_MASK(irq); |
| 62 | 63 | ||
| 63 | mtctl(eirr_bit, 23); /* clear EIRR bit before unmasking */ | ||
| 64 | cpu_eiem |= eirr_bit; | 64 | cpu_eiem |= eirr_bit; |
| 65 | on_each_cpu(cpu_set_eiem, (void *) cpu_eiem, 1, 1); | 65 | |
| 66 | /* FIXME: while our interrupts aren't nested, we cannot reset | ||
| 67 | * the eiem mask if we're already in an interrupt. Once we | ||
| 68 | * implement nested interrupts, this can go away | ||
| 69 | */ | ||
| 70 | if (!in_interrupt()) | ||
| 71 | set_eiem(cpu_eiem); | ||
| 72 | |||
| 73 | /* This is just a simple NOP IPI. But what it does is cause | ||
| 74 | * all the other CPUs to do a set_eiem(cpu_eiem) at the end | ||
| 75 | * of the interrupt handler */ | ||
| 76 | smp_send_all_nop(); | ||
| 66 | } | 77 | } |
| 67 | 78 | ||
| 68 | static unsigned int cpu_startup_irq(unsigned int irq) | 79 | static unsigned int cpu_startup_irq(unsigned int irq) |
| @@ -74,6 +85,35 @@ static unsigned int cpu_startup_irq(unsigned int irq) | |||
| 74 | void no_ack_irq(unsigned int irq) { } | 85 | void no_ack_irq(unsigned int irq) { } |
| 75 | void no_end_irq(unsigned int irq) { } | 86 | void no_end_irq(unsigned int irq) { } |
| 76 | 87 | ||
| 88 | #ifdef CONFIG_SMP | ||
| 89 | int cpu_check_affinity(unsigned int irq, cpumask_t *dest) | ||
| 90 | { | ||
| 91 | int cpu_dest; | ||
| 92 | |||
| 93 | /* timer and ipi have to always be received on all CPUs */ | ||
| 94 | if (irq == TIMER_IRQ || irq == IPI_IRQ) { | ||
| 95 | /* Bad linux design decision. The mask has already | ||
| 96 | * been set; we must reset it */ | ||
| 97 | irq_affinity[irq] = CPU_MASK_ALL; | ||
| 98 | return -EINVAL; | ||
| 99 | } | ||
| 100 | |||
| 101 | /* whatever mask they set, we just allow one CPU */ | ||
| 102 | cpu_dest = first_cpu(*dest); | ||
| 103 | *dest = cpumask_of_cpu(cpu_dest); | ||
| 104 | |||
| 105 | return 0; | ||
| 106 | } | ||
| 107 | |||
| 108 | static void cpu_set_affinity_irq(unsigned int irq, cpumask_t dest) | ||
| 109 | { | ||
| 110 | if (cpu_check_affinity(irq, &dest)) | ||
| 111 | return; | ||
| 112 | |||
| 113 | irq_affinity[irq] = dest; | ||
| 114 | } | ||
| 115 | #endif | ||
| 116 | |||
| 77 | static struct hw_interrupt_type cpu_interrupt_type = { | 117 | static struct hw_interrupt_type cpu_interrupt_type = { |
| 78 | .typename = "CPU", | 118 | .typename = "CPU", |
| 79 | .startup = cpu_startup_irq, | 119 | .startup = cpu_startup_irq, |
| @@ -82,7 +122,9 @@ static struct hw_interrupt_type cpu_interrupt_type = { | |||
| 82 | .disable = cpu_disable_irq, | 122 | .disable = cpu_disable_irq, |
| 83 | .ack = no_ack_irq, | 123 | .ack = no_ack_irq, |
| 84 | .end = no_end_irq, | 124 | .end = no_end_irq, |
| 85 | // .set_affinity = cpu_set_affinity_irq, | 125 | #ifdef CONFIG_SMP |
| 126 | .set_affinity = cpu_set_affinity_irq, | ||
| 127 | #endif | ||
| 86 | }; | 128 | }; |
| 87 | 129 | ||
| 88 | int show_interrupts(struct seq_file *p, void *v) | 130 | int show_interrupts(struct seq_file *p, void *v) |
| @@ -219,6 +261,17 @@ int txn_alloc_irq(unsigned int bits_wide) | |||
| 219 | return -1; | 261 | return -1; |
| 220 | } | 262 | } |
| 221 | 263 | ||
| 264 | |||
| 265 | unsigned long txn_affinity_addr(unsigned int irq, int cpu) | ||
| 266 | { | ||
| 267 | #ifdef CONFIG_SMP | ||
| 268 | irq_affinity[irq] = cpumask_of_cpu(cpu); | ||
| 269 | #endif | ||
| 270 | |||
| 271 | return cpu_data[cpu].txn_addr; | ||
| 272 | } | ||
| 273 | |||
| 274 | |||
| 222 | unsigned long txn_alloc_addr(unsigned int virt_irq) | 275 | unsigned long txn_alloc_addr(unsigned int virt_irq) |
| 223 | { | 276 | { |
| 224 | static int next_cpu = -1; | 277 | static int next_cpu = -1; |
| @@ -233,7 +286,7 @@ unsigned long txn_alloc_addr(unsigned int virt_irq) | |||
| 233 | if (next_cpu >= NR_CPUS) | 286 | if (next_cpu >= NR_CPUS) |
| 234 | next_cpu = 0; /* nothing else, assign monarch */ | 287 | next_cpu = 0; /* nothing else, assign monarch */ |
| 235 | 288 | ||
| 236 | return cpu_data[next_cpu].txn_addr; | 289 | return txn_affinity_addr(virt_irq, next_cpu); |
| 237 | } | 290 | } |
| 238 | 291 | ||
| 239 | 292 | ||
| @@ -250,10 +303,11 @@ void do_cpu_irq_mask(struct pt_regs *regs) | |||
| 250 | irq_enter(); | 303 | irq_enter(); |
| 251 | 304 | ||
| 252 | /* | 305 | /* |
| 253 | * Only allow interrupt processing to be interrupted by the | 306 | * Don't allow TIMER or IPI nested interrupts. |
| 254 | * timer tick | 307 | * Allowing any single interrupt to nest can lead to that CPU |
| 308 | * handling interrupts with all enabled interrupts unmasked. | ||
| 255 | */ | 309 | */ |
| 256 | set_eiem(EIEM_MASK(TIMER_IRQ)); | 310 | set_eiem(0UL); |
| 257 | 311 | ||
| 258 | /* 1) only process IRQs that are enabled/unmasked (cpu_eiem) | 312 | /* 1) only process IRQs that are enabled/unmasked (cpu_eiem) |
| 259 | * 2) We loop here on EIRR contents in order to avoid | 313 | * 2) We loop here on EIRR contents in order to avoid |
| @@ -267,23 +321,41 @@ void do_cpu_irq_mask(struct pt_regs *regs) | |||
| 267 | if (!eirr_val) | 321 | if (!eirr_val) |
| 268 | break; | 322 | break; |
| 269 | 323 | ||
| 270 | if (eirr_val & EIEM_MASK(TIMER_IRQ)) | ||
| 271 | set_eiem(0); | ||
| 272 | |||
| 273 | mtctl(eirr_val, 23); /* reset bits we are going to process */ | 324 | mtctl(eirr_val, 23); /* reset bits we are going to process */ |
| 274 | 325 | ||
| 275 | /* Work our way from MSb to LSb...same order we alloc EIRs */ | 326 | /* Work our way from MSb to LSb...same order we alloc EIRs */ |
| 276 | for (irq = TIMER_IRQ; eirr_val && bit; bit>>=1, irq++) { | 327 | for (irq = TIMER_IRQ; eirr_val && bit; bit>>=1, irq++) { |
| 328 | #ifdef CONFIG_SMP | ||
| 329 | cpumask_t dest = irq_affinity[irq]; | ||
| 330 | #endif | ||
| 277 | if (!(bit & eirr_val)) | 331 | if (!(bit & eirr_val)) |
| 278 | continue; | 332 | continue; |
| 279 | 333 | ||
| 280 | /* clear bit in mask - can exit loop sooner */ | 334 | /* clear bit in mask - can exit loop sooner */ |
| 281 | eirr_val &= ~bit; | 335 | eirr_val &= ~bit; |
| 282 | 336 | ||
| 337 | #ifdef CONFIG_SMP | ||
| 338 | /* FIXME: because generic set affinity mucks | ||
| 339 | * with the affinity before sending it to us | ||
| 340 | * we can get the situation where the affinity is | ||
| 341 | * wrong for our CPU type interrupts */ | ||
| 342 | if (irq != TIMER_IRQ && irq != IPI_IRQ && | ||
| 343 | !cpu_isset(smp_processor_id(), dest)) { | ||
| 344 | int cpu = first_cpu(dest); | ||
| 345 | |||
| 346 | printk(KERN_DEBUG "redirecting irq %d from CPU %d to %d\n", | ||
| 347 | irq, smp_processor_id(), cpu); | ||
| 348 | gsc_writel(irq + CPU_IRQ_BASE, | ||
| 349 | cpu_data[cpu].hpa); | ||
| 350 | continue; | ||
| 351 | } | ||
| 352 | #endif | ||
| 353 | |||
| 283 | __do_IRQ(irq, regs); | 354 | __do_IRQ(irq, regs); |
| 284 | } | 355 | } |
| 285 | } | 356 | } |
| 286 | set_eiem(cpu_eiem); | 357 | |
| 358 | set_eiem(cpu_eiem); /* restore original mask */ | ||
| 287 | irq_exit(); | 359 | irq_exit(); |
| 288 | } | 360 | } |
| 289 | 361 | ||
| @@ -291,12 +363,14 @@ void do_cpu_irq_mask(struct pt_regs *regs) | |||
| 291 | static struct irqaction timer_action = { | 363 | static struct irqaction timer_action = { |
| 292 | .handler = timer_interrupt, | 364 | .handler = timer_interrupt, |
| 293 | .name = "timer", | 365 | .name = "timer", |
| 366 | .flags = SA_INTERRUPT, | ||
| 294 | }; | 367 | }; |
| 295 | 368 | ||
| 296 | #ifdef CONFIG_SMP | 369 | #ifdef CONFIG_SMP |
| 297 | static struct irqaction ipi_action = { | 370 | static struct irqaction ipi_action = { |
| 298 | .handler = ipi_interrupt, | 371 | .handler = ipi_interrupt, |
| 299 | .name = "IPI", | 372 | .name = "IPI", |
| 373 | .flags = SA_INTERRUPT, | ||
| 300 | }; | 374 | }; |
| 301 | #endif | 375 | #endif |
| 302 | 376 | ||
diff --git a/arch/parisc/kernel/perf.c b/arch/parisc/kernel/perf.c index 44670d6e06f4..f6fec62b6a2f 100644 --- a/arch/parisc/kernel/perf.c +++ b/arch/parisc/kernel/perf.c | |||
| @@ -196,8 +196,7 @@ static int perf_open(struct inode *inode, struct file *file); | |||
| 196 | static ssize_t perf_read(struct file *file, char __user *buf, size_t cnt, loff_t *ppos); | 196 | static ssize_t perf_read(struct file *file, char __user *buf, size_t cnt, loff_t *ppos); |
| 197 | static ssize_t perf_write(struct file *file, const char __user *buf, size_t count, | 197 | static ssize_t perf_write(struct file *file, const char __user *buf, size_t count, |
| 198 | loff_t *ppos); | 198 | loff_t *ppos); |
| 199 | static int perf_ioctl(struct inode *inode, struct file *file, unsigned int cmd, | 199 | static long perf_ioctl(struct file *file, unsigned int cmd, unsigned long arg); |
| 200 | unsigned long arg); | ||
| 201 | static void perf_start_counters(void); | 200 | static void perf_start_counters(void); |
| 202 | static int perf_stop_counters(uint32_t *raddr); | 201 | static int perf_stop_counters(uint32_t *raddr); |
| 203 | static struct rdr_tbl_ent * perf_rdr_get_entry(uint32_t rdr_num); | 202 | static struct rdr_tbl_ent * perf_rdr_get_entry(uint32_t rdr_num); |
| @@ -438,48 +437,56 @@ static void perf_patch_images(void) | |||
| 438 | * must be running on the processor that you wish to change. | 437 | * must be running on the processor that you wish to change. |
| 439 | */ | 438 | */ |
| 440 | 439 | ||
| 441 | static int perf_ioctl(struct inode *inode, struct file *file, unsigned int cmd, | 440 | static long perf_ioctl(struct file *file, unsigned int cmd, unsigned long arg) |
| 442 | unsigned long arg) | ||
| 443 | { | 441 | { |
| 444 | long error_start; | 442 | long error_start; |
| 445 | uint32_t raddr[4]; | 443 | uint32_t raddr[4]; |
| 444 | int error = 0; | ||
| 446 | 445 | ||
| 446 | lock_kernel(); | ||
| 447 | switch (cmd) { | 447 | switch (cmd) { |
| 448 | 448 | ||
| 449 | case PA_PERF_ON: | 449 | case PA_PERF_ON: |
| 450 | /* Start the counters */ | 450 | /* Start the counters */ |
| 451 | perf_start_counters(); | 451 | perf_start_counters(); |
| 452 | return 0; | 452 | break; |
| 453 | 453 | ||
| 454 | case PA_PERF_OFF: | 454 | case PA_PERF_OFF: |
| 455 | error_start = perf_stop_counters(raddr); | 455 | error_start = perf_stop_counters(raddr); |
| 456 | if (error_start != 0) { | 456 | if (error_start != 0) { |
| 457 | printk(KERN_ERR "perf_off: perf_stop_counters = %ld\n", error_start); | 457 | printk(KERN_ERR "perf_off: perf_stop_counters = %ld\n", error_start); |
| 458 | return -EFAULT; | 458 | error = -EFAULT; |
| 459 | break; | ||
| 459 | } | 460 | } |
| 460 | 461 | ||
| 461 | /* copy out the Counters */ | 462 | /* copy out the Counters */ |
| 462 | if (copy_to_user((void __user *)arg, raddr, | 463 | if (copy_to_user((void __user *)arg, raddr, |
| 463 | sizeof (raddr)) != 0) { | 464 | sizeof (raddr)) != 0) { |
| 464 | return -EFAULT; | 465 | error = -EFAULT; |
| 466 | break; | ||
| 465 | } | 467 | } |
| 466 | return 0; | 468 | break; |
| 467 | 469 | ||
| 468 | case PA_PERF_VERSION: | 470 | case PA_PERF_VERSION: |
| 469 | /* Return the version # */ | 471 | /* Return the version # */ |
| 470 | return put_user(PERF_VERSION, (int *)arg); | 472 | error = put_user(PERF_VERSION, (int *)arg); |
| 473 | break; | ||
| 471 | 474 | ||
| 472 | default: | 475 | default: |
| 473 | break; | 476 | error = -ENOTTY; |
| 474 | } | 477 | } |
| 475 | return -ENOTTY; | 478 | |
| 479 | unlock_kernel(); | ||
| 480 | |||
| 481 | return error; | ||
| 476 | } | 482 | } |
| 477 | 483 | ||
| 478 | static struct file_operations perf_fops = { | 484 | static struct file_operations perf_fops = { |
| 479 | .llseek = no_llseek, | 485 | .llseek = no_llseek, |
| 480 | .read = perf_read, | 486 | .read = perf_read, |
| 481 | .write = perf_write, | 487 | .write = perf_write, |
| 482 | .ioctl = perf_ioctl, | 488 | .unlocked_ioctl = perf_ioctl, |
| 489 | .compat_ioctl = perf_ioctl, | ||
| 483 | .open = perf_open, | 490 | .open = perf_open, |
| 484 | .release = perf_release | 491 | .release = perf_release |
| 485 | }; | 492 | }; |
diff --git a/arch/parisc/kernel/ptrace.c b/arch/parisc/kernel/ptrace.c index b6fe202a620d..27160e8bf15b 100644 --- a/arch/parisc/kernel/ptrace.c +++ b/arch/parisc/kernel/ptrace.c | |||
| @@ -264,6 +264,7 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) | |||
| 264 | * sigkill. perhaps it should be put in the status | 264 | * sigkill. perhaps it should be put in the status |
| 265 | * that it wants to exit. | 265 | * that it wants to exit. |
| 266 | */ | 266 | */ |
| 267 | ret = 0; | ||
| 267 | DBG("sys_ptrace(KILL)\n"); | 268 | DBG("sys_ptrace(KILL)\n"); |
| 268 | if (child->exit_state == EXIT_ZOMBIE) /* already dead */ | 269 | if (child->exit_state == EXIT_ZOMBIE) /* already dead */ |
| 269 | goto out_tsk; | 270 | goto out_tsk; |
| @@ -344,11 +345,11 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) | |||
| 344 | 345 | ||
| 345 | case PTRACE_GETEVENTMSG: | 346 | case PTRACE_GETEVENTMSG: |
| 346 | ret = put_user(child->ptrace_message, (unsigned int __user *) data); | 347 | ret = put_user(child->ptrace_message, (unsigned int __user *) data); |
| 347 | goto out; | 348 | goto out_tsk; |
| 348 | 349 | ||
| 349 | default: | 350 | default: |
| 350 | ret = ptrace_request(child, request, addr, data); | 351 | ret = ptrace_request(child, request, addr, data); |
| 351 | goto out; | 352 | goto out_tsk; |
| 352 | } | 353 | } |
| 353 | 354 | ||
| 354 | out_wake_notrap: | 355 | out_wake_notrap: |
diff --git a/arch/parisc/kernel/signal.c b/arch/parisc/kernel/signal.c index 82c24e62ab63..3a25a7bd673e 100644 --- a/arch/parisc/kernel/signal.c +++ b/arch/parisc/kernel/signal.c | |||
| @@ -296,7 +296,6 @@ setup_rt_frame(int sig, struct k_sigaction *ka, siginfo_t *info, | |||
| 296 | struct rt_sigframe __user *frame; | 296 | struct rt_sigframe __user *frame; |
| 297 | unsigned long rp, usp; | 297 | unsigned long rp, usp; |
| 298 | unsigned long haddr, sigframe_size; | 298 | unsigned long haddr, sigframe_size; |
| 299 | struct siginfo si; | ||
| 300 | int err = 0; | 299 | int err = 0; |
| 301 | #ifdef __LP64__ | 300 | #ifdef __LP64__ |
| 302 | compat_int_t compat_val; | 301 | compat_int_t compat_val; |
diff --git a/arch/parisc/kernel/smp.c b/arch/parisc/kernel/smp.c index a9ecf6465784..ce89da0f654d 100644 --- a/arch/parisc/kernel/smp.c +++ b/arch/parisc/kernel/smp.c | |||
| @@ -181,12 +181,19 @@ ipi_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
| 181 | while (ops) { | 181 | while (ops) { |
| 182 | unsigned long which = ffz(~ops); | 182 | unsigned long which = ffz(~ops); |
| 183 | 183 | ||
| 184 | ops &= ~(1 << which); | ||
| 185 | |||
| 184 | switch (which) { | 186 | switch (which) { |
| 187 | case IPI_NOP: | ||
| 188 | #if (kDEBUG>=100) | ||
| 189 | printk(KERN_DEBUG "CPU%d IPI_NOP\n",this_cpu); | ||
| 190 | #endif /* kDEBUG */ | ||
| 191 | break; | ||
| 192 | |||
| 185 | case IPI_RESCHEDULE: | 193 | case IPI_RESCHEDULE: |
| 186 | #if (kDEBUG>=100) | 194 | #if (kDEBUG>=100) |
| 187 | printk(KERN_DEBUG "CPU%d IPI_RESCHEDULE\n",this_cpu); | 195 | printk(KERN_DEBUG "CPU%d IPI_RESCHEDULE\n",this_cpu); |
| 188 | #endif /* kDEBUG */ | 196 | #endif /* kDEBUG */ |
| 189 | ops &= ~(1 << IPI_RESCHEDULE); | ||
| 190 | /* | 197 | /* |
| 191 | * Reschedule callback. Everything to be | 198 | * Reschedule callback. Everything to be |
| 192 | * done is done by the interrupt return path. | 199 | * done is done by the interrupt return path. |
| @@ -197,7 +204,6 @@ ipi_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
| 197 | #if (kDEBUG>=100) | 204 | #if (kDEBUG>=100) |
| 198 | printk(KERN_DEBUG "CPU%d IPI_CALL_FUNC\n",this_cpu); | 205 | printk(KERN_DEBUG "CPU%d IPI_CALL_FUNC\n",this_cpu); |
| 199 | #endif /* kDEBUG */ | 206 | #endif /* kDEBUG */ |
| 200 | ops &= ~(1 << IPI_CALL_FUNC); | ||
| 201 | { | 207 | { |
| 202 | volatile struct smp_call_struct *data; | 208 | volatile struct smp_call_struct *data; |
| 203 | void (*func)(void *info); | 209 | void (*func)(void *info); |
| @@ -231,7 +237,6 @@ ipi_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
| 231 | #if (kDEBUG>=100) | 237 | #if (kDEBUG>=100) |
| 232 | printk(KERN_DEBUG "CPU%d IPI_CPU_START\n",this_cpu); | 238 | printk(KERN_DEBUG "CPU%d IPI_CPU_START\n",this_cpu); |
| 233 | #endif /* kDEBUG */ | 239 | #endif /* kDEBUG */ |
| 234 | ops &= ~(1 << IPI_CPU_START); | ||
| 235 | #ifdef ENTRY_SYS_CPUS | 240 | #ifdef ENTRY_SYS_CPUS |
| 236 | p->state = STATE_RUNNING; | 241 | p->state = STATE_RUNNING; |
| 237 | #endif | 242 | #endif |
| @@ -241,7 +246,6 @@ ipi_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
| 241 | #if (kDEBUG>=100) | 246 | #if (kDEBUG>=100) |
| 242 | printk(KERN_DEBUG "CPU%d IPI_CPU_STOP\n",this_cpu); | 247 | printk(KERN_DEBUG "CPU%d IPI_CPU_STOP\n",this_cpu); |
| 243 | #endif /* kDEBUG */ | 248 | #endif /* kDEBUG */ |
| 244 | ops &= ~(1 << IPI_CPU_STOP); | ||
| 245 | #ifdef ENTRY_SYS_CPUS | 249 | #ifdef ENTRY_SYS_CPUS |
| 246 | #else | 250 | #else |
| 247 | halt_processor(); | 251 | halt_processor(); |
| @@ -252,13 +256,11 @@ ipi_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
| 252 | #if (kDEBUG>=100) | 256 | #if (kDEBUG>=100) |
| 253 | printk(KERN_DEBUG "CPU%d is alive!\n",this_cpu); | 257 | printk(KERN_DEBUG "CPU%d is alive!\n",this_cpu); |
| 254 | #endif /* kDEBUG */ | 258 | #endif /* kDEBUG */ |
| 255 | ops &= ~(1 << IPI_CPU_TEST); | ||
| 256 | break; | 259 | break; |
| 257 | 260 | ||
| 258 | default: | 261 | default: |
| 259 | printk(KERN_CRIT "Unknown IPI num on CPU%d: %lu\n", | 262 | printk(KERN_CRIT "Unknown IPI num on CPU%d: %lu\n", |
| 260 | this_cpu, which); | 263 | this_cpu, which); |
| 261 | ops &= ~(1 << which); | ||
| 262 | return IRQ_NONE; | 264 | return IRQ_NONE; |
| 263 | } /* Switch */ | 265 | } /* Switch */ |
| 264 | } /* while (ops) */ | 266 | } /* while (ops) */ |
| @@ -312,6 +314,12 @@ smp_send_start(void) { send_IPI_allbutself(IPI_CPU_START); } | |||
| 312 | void | 314 | void |
| 313 | smp_send_reschedule(int cpu) { send_IPI_single(cpu, IPI_RESCHEDULE); } | 315 | smp_send_reschedule(int cpu) { send_IPI_single(cpu, IPI_RESCHEDULE); } |
| 314 | 316 | ||
| 317 | void | ||
| 318 | smp_send_all_nop(void) | ||
| 319 | { | ||
| 320 | send_IPI_allbutself(IPI_NOP); | ||
| 321 | } | ||
| 322 | |||
| 315 | 323 | ||
| 316 | /** | 324 | /** |
| 317 | * Run a function on all other CPUs. | 325 | * Run a function on all other CPUs. |
| @@ -338,6 +346,10 @@ smp_call_function (void (*func) (void *info), void *info, int retry, int wait) | |||
| 338 | 346 | ||
| 339 | /* Can deadlock when called with interrupts disabled */ | 347 | /* Can deadlock when called with interrupts disabled */ |
| 340 | WARN_ON(irqs_disabled()); | 348 | WARN_ON(irqs_disabled()); |
| 349 | |||
| 350 | /* can also deadlock if IPIs are disabled */ | ||
| 351 | WARN_ON((get_eiem() & (1UL<<(CPU_IRQ_MAX - IPI_IRQ))) == 0); | ||
| 352 | |||
| 341 | 353 | ||
| 342 | data.func = func; | 354 | data.func = func; |
| 343 | data.info = info; | 355 | data.info = info; |
diff --git a/arch/parisc/kernel/syscall.S b/arch/parisc/kernel/syscall.S index b29b76b42bb7..d66163492890 100644 --- a/arch/parisc/kernel/syscall.S +++ b/arch/parisc/kernel/syscall.S | |||
| @@ -164,7 +164,7 @@ linux_gateway_entry: | |||
| 164 | #endif | 164 | #endif |
| 165 | STREG %r2, TASK_PT_GR30(%r1) /* ... and save it */ | 165 | STREG %r2, TASK_PT_GR30(%r1) /* ... and save it */ |
| 166 | 166 | ||
| 167 | STREG %r20, TASK_PT_GR20(%r1) | 167 | STREG %r20, TASK_PT_GR20(%r1) /* Syscall number */ |
| 168 | STREG %r21, TASK_PT_GR21(%r1) | 168 | STREG %r21, TASK_PT_GR21(%r1) |
| 169 | STREG %r22, TASK_PT_GR22(%r1) | 169 | STREG %r22, TASK_PT_GR22(%r1) |
| 170 | STREG %r23, TASK_PT_GR23(%r1) /* 4th argument */ | 170 | STREG %r23, TASK_PT_GR23(%r1) /* 4th argument */ |
| @@ -527,6 +527,7 @@ lws_compare_and_swap: | |||
| 527 | We *must* giveup this call and fail. | 527 | We *must* giveup this call and fail. |
| 528 | */ | 528 | */ |
| 529 | ldw 4(%sr2,%r20), %r28 /* Load thread register */ | 529 | ldw 4(%sr2,%r20), %r28 /* Load thread register */ |
| 530 | /* WARNING: If cr27 cycles to the same value we have problems */ | ||
| 530 | mfctl %cr27, %r21 /* Get current thread register */ | 531 | mfctl %cr27, %r21 /* Get current thread register */ |
| 531 | cmpb,<>,n %r21, %r28, cas_lock /* Called recursive? */ | 532 | cmpb,<>,n %r21, %r28, cas_lock /* Called recursive? */ |
| 532 | b lws_exit /* Return error! */ | 533 | b lws_exit /* Return error! */ |
diff --git a/arch/powerpc/sysdev/mpic.c b/arch/powerpc/sysdev/mpic.c index 105f05341a41..58d1cc2023c8 100644 --- a/arch/powerpc/sysdev/mpic.c +++ b/arch/powerpc/sysdev/mpic.c | |||
| @@ -361,7 +361,8 @@ static void mpic_enable_irq(unsigned int irq) | |||
| 361 | DBG("%p: %s: enable_irq: %d (src %d)\n", mpic, mpic->name, irq, src); | 361 | DBG("%p: %s: enable_irq: %d (src %d)\n", mpic, mpic->name, irq, src); |
| 362 | 362 | ||
| 363 | mpic_irq_write(src, MPIC_IRQ_VECTOR_PRI, | 363 | mpic_irq_write(src, MPIC_IRQ_VECTOR_PRI, |
| 364 | mpic_irq_read(src, MPIC_IRQ_VECTOR_PRI) & ~MPIC_VECPRI_MASK); | 364 | mpic_irq_read(src, MPIC_IRQ_VECTOR_PRI) & |
| 365 | ~MPIC_VECPRI_MASK); | ||
| 365 | 366 | ||
| 366 | /* make sure mask gets to controller before we return to user */ | 367 | /* make sure mask gets to controller before we return to user */ |
| 367 | do { | 368 | do { |
| @@ -381,7 +382,8 @@ static void mpic_disable_irq(unsigned int irq) | |||
| 381 | DBG("%s: disable_irq: %d (src %d)\n", mpic->name, irq, src); | 382 | DBG("%s: disable_irq: %d (src %d)\n", mpic->name, irq, src); |
| 382 | 383 | ||
| 383 | mpic_irq_write(src, MPIC_IRQ_VECTOR_PRI, | 384 | mpic_irq_write(src, MPIC_IRQ_VECTOR_PRI, |
| 384 | mpic_irq_read(src, MPIC_IRQ_VECTOR_PRI) | MPIC_VECPRI_MASK); | 385 | mpic_irq_read(src, MPIC_IRQ_VECTOR_PRI) | |
| 386 | MPIC_VECPRI_MASK); | ||
| 385 | 387 | ||
| 386 | /* make sure mask gets to controller before we return to user */ | 388 | /* make sure mask gets to controller before we return to user */ |
| 387 | do { | 389 | do { |
| @@ -735,12 +737,13 @@ void mpic_irq_set_priority(unsigned int irq, unsigned int pri) | |||
| 735 | 737 | ||
| 736 | spin_lock_irqsave(&mpic_lock, flags); | 738 | spin_lock_irqsave(&mpic_lock, flags); |
| 737 | if (is_ipi) { | 739 | if (is_ipi) { |
| 738 | reg = mpic_ipi_read(irq - mpic->ipi_offset) & MPIC_VECPRI_PRIORITY_MASK; | 740 | reg = mpic_ipi_read(irq - mpic->ipi_offset) & |
| 741 | ~MPIC_VECPRI_PRIORITY_MASK; | ||
| 739 | mpic_ipi_write(irq - mpic->ipi_offset, | 742 | mpic_ipi_write(irq - mpic->ipi_offset, |
| 740 | reg | (pri << MPIC_VECPRI_PRIORITY_SHIFT)); | 743 | reg | (pri << MPIC_VECPRI_PRIORITY_SHIFT)); |
| 741 | } else { | 744 | } else { |
| 742 | reg = mpic_irq_read(irq - mpic->irq_offset, MPIC_IRQ_VECTOR_PRI) | 745 | reg = mpic_irq_read(irq - mpic->irq_offset,MPIC_IRQ_VECTOR_PRI) |
| 743 | & MPIC_VECPRI_PRIORITY_MASK; | 746 | & ~MPIC_VECPRI_PRIORITY_MASK; |
| 744 | mpic_irq_write(irq - mpic->irq_offset, MPIC_IRQ_VECTOR_PRI, | 747 | mpic_irq_write(irq - mpic->irq_offset, MPIC_IRQ_VECTOR_PRI, |
| 745 | reg | (pri << MPIC_VECPRI_PRIORITY_SHIFT)); | 748 | reg | (pri << MPIC_VECPRI_PRIORITY_SHIFT)); |
| 746 | } | 749 | } |
diff --git a/block/as-iosched.c b/block/as-iosched.c index a78e160b59a3..fbe050124ec5 100644 --- a/block/as-iosched.c +++ b/block/as-iosched.c | |||
| @@ -1,6 +1,4 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/drivers/block/as-iosched.c | ||
| 3 | * | ||
| 4 | * Anticipatory & deadline i/o scheduler. | 2 | * Anticipatory & deadline i/o scheduler. |
| 5 | * | 3 | * |
| 6 | * Copyright (C) 2002 Jens Axboe <axboe@suse.de> | 4 | * Copyright (C) 2002 Jens Axboe <axboe@suse.de> |
diff --git a/block/cfq-iosched.c b/block/cfq-iosched.c index 2b64f5852bfd..ee0bb41694b0 100644 --- a/block/cfq-iosched.c +++ b/block/cfq-iosched.c | |||
| @@ -1,6 +1,4 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/drivers/block/cfq-iosched.c | ||
| 3 | * | ||
| 4 | * CFQ, or complete fairness queueing, disk scheduler. | 2 | * CFQ, or complete fairness queueing, disk scheduler. |
| 5 | * | 3 | * |
| 6 | * Based on ideas from a previously unfinished io | 4 | * Based on ideas from a previously unfinished io |
diff --git a/block/deadline-iosched.c b/block/deadline-iosched.c index 7929471d7df7..9cbec09e8415 100644 --- a/block/deadline-iosched.c +++ b/block/deadline-iosched.c | |||
| @@ -1,6 +1,4 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/drivers/block/deadline-iosched.c | ||
| 3 | * | ||
| 4 | * Deadline i/o scheduler. | 2 | * Deadline i/o scheduler. |
| 5 | * | 3 | * |
| 6 | * Copyright (C) 2002 Jens Axboe <axboe@suse.de> | 4 | * Copyright (C) 2002 Jens Axboe <axboe@suse.de> |
diff --git a/block/elevator.c b/block/elevator.c index e4c58827bb46..6c3fc8a10bf2 100644 --- a/block/elevator.c +++ b/block/elevator.c | |||
| @@ -1,6 +1,4 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/drivers/block/elevator.c | ||
| 3 | * | ||
| 4 | * Block device elevator/IO-scheduler. | 2 | * Block device elevator/IO-scheduler. |
| 5 | * | 3 | * |
| 6 | * Copyright (C) 2000 Andrea Arcangeli <andrea@suse.de> SuSE | 4 | * Copyright (C) 2000 Andrea Arcangeli <andrea@suse.de> SuSE |
diff --git a/block/ll_rw_blk.c b/block/ll_rw_blk.c index 5f52e30b43f8..99c9ca6d5992 100644 --- a/block/ll_rw_blk.c +++ b/block/ll_rw_blk.c | |||
| @@ -1,6 +1,4 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/drivers/block/ll_rw_blk.c | ||
| 3 | * | ||
| 4 | * Copyright (C) 1991, 1992 Linus Torvalds | 2 | * Copyright (C) 1991, 1992 Linus Torvalds |
| 5 | * Copyright (C) 1994, Karl Keyte: Added support for disk statistics | 3 | * Copyright (C) 1994, Karl Keyte: Added support for disk statistics |
| 6 | * Elevator latency, (C) 2000 Andrea Arcangeli <andrea@suse.de> SuSE | 4 | * Elevator latency, (C) 2000 Andrea Arcangeli <andrea@suse.de> SuSE |
diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c index 573b6a97bb1f..70d8a6ec0920 100644 --- a/drivers/acpi/processor_idle.c +++ b/drivers/acpi/processor_idle.c | |||
| @@ -514,8 +514,6 @@ static int acpi_processor_set_power_policy(struct acpi_processor *pr) | |||
| 514 | 514 | ||
| 515 | static int acpi_processor_get_power_info_fadt(struct acpi_processor *pr) | 515 | static int acpi_processor_get_power_info_fadt(struct acpi_processor *pr) |
| 516 | { | 516 | { |
| 517 | int i; | ||
| 518 | |||
| 519 | ACPI_FUNCTION_TRACE("acpi_processor_get_power_info_fadt"); | 517 | ACPI_FUNCTION_TRACE("acpi_processor_get_power_info_fadt"); |
| 520 | 518 | ||
| 521 | if (!pr) | 519 | if (!pr) |
| @@ -524,8 +522,7 @@ static int acpi_processor_get_power_info_fadt(struct acpi_processor *pr) | |||
| 524 | if (!pr->pblk) | 522 | if (!pr->pblk) |
| 525 | return_VALUE(-ENODEV); | 523 | return_VALUE(-ENODEV); |
| 526 | 524 | ||
| 527 | for (i = 0; i < ACPI_PROCESSOR_MAX_POWER; i++) | 525 | memset(pr->power.states, 0, sizeof(pr->power.states)); |
| 528 | memset(pr->power.states, 0, sizeof(struct acpi_processor_cx)); | ||
| 529 | 526 | ||
| 530 | /* if info is obtained from pblk/fadt, type equals state */ | 527 | /* if info is obtained from pblk/fadt, type equals state */ |
| 531 | pr->power.states[ACPI_STATE_C1].type = ACPI_STATE_C1; | 528 | pr->power.states[ACPI_STATE_C1].type = ACPI_STATE_C1; |
| @@ -555,13 +552,9 @@ static int acpi_processor_get_power_info_fadt(struct acpi_processor *pr) | |||
| 555 | 552 | ||
| 556 | static int acpi_processor_get_power_info_default_c1(struct acpi_processor *pr) | 553 | static int acpi_processor_get_power_info_default_c1(struct acpi_processor *pr) |
| 557 | { | 554 | { |
| 558 | int i; | ||
| 559 | |||
| 560 | ACPI_FUNCTION_TRACE("acpi_processor_get_power_info_default_c1"); | 555 | ACPI_FUNCTION_TRACE("acpi_processor_get_power_info_default_c1"); |
| 561 | 556 | ||
| 562 | for (i = 0; i < ACPI_PROCESSOR_MAX_POWER; i++) | 557 | memset(pr->power.states, 0, sizeof(pr->power.states)); |
| 563 | memset(&(pr->power.states[i]), 0, | ||
| 564 | sizeof(struct acpi_processor_cx)); | ||
| 565 | 558 | ||
| 566 | /* if info is obtained from pblk/fadt, type equals state */ | 559 | /* if info is obtained from pblk/fadt, type equals state */ |
| 567 | pr->power.states[ACPI_STATE_C1].type = ACPI_STATE_C1; | 560 | pr->power.states[ACPI_STATE_C1].type = ACPI_STATE_C1; |
| @@ -873,7 +866,8 @@ static int acpi_processor_get_power_info(struct acpi_processor *pr) | |||
| 873 | for (i = 1; i < ACPI_PROCESSOR_MAX_POWER; i++) { | 866 | for (i = 1; i < ACPI_PROCESSOR_MAX_POWER; i++) { |
| 874 | if (pr->power.states[i].valid) { | 867 | if (pr->power.states[i].valid) { |
| 875 | pr->power.count = i; | 868 | pr->power.count = i; |
| 876 | pr->flags.power = 1; | 869 | if (pr->power.states[i].type >= ACPI_STATE_C2) |
| 870 | pr->flags.power = 1; | ||
| 877 | } | 871 | } |
| 878 | } | 872 | } |
| 879 | 873 | ||
diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c index e239a6c29230..a9e33db46e68 100644 --- a/drivers/block/cciss.c +++ b/drivers/block/cciss.c | |||
| @@ -1017,10 +1017,11 @@ static int cciss_ioctl(struct inode *inode, struct file *filep, | |||
| 1017 | status = -ENOMEM; | 1017 | status = -ENOMEM; |
| 1018 | goto cleanup1; | 1018 | goto cleanup1; |
| 1019 | } | 1019 | } |
| 1020 | if (ioc->Request.Type.Direction == XFER_WRITE && | 1020 | if (ioc->Request.Type.Direction == XFER_WRITE) { |
| 1021 | copy_from_user(buff[sg_used], data_ptr, sz)) { | 1021 | if (copy_from_user(buff[sg_used], data_ptr, sz)) { |
| 1022 | status = -ENOMEM; | 1022 | status = -ENOMEM; |
| 1023 | goto cleanup1; | 1023 | goto cleanup1; |
| 1024 | } | ||
| 1024 | } else { | 1025 | } else { |
| 1025 | memset(buff[sg_used], 0, sz); | 1026 | memset(buff[sg_used], 0, sz); |
| 1026 | } | 1027 | } |
| @@ -1138,8 +1139,15 @@ static int revalidate_allvol(ctlr_info_t *host) | |||
| 1138 | 1139 | ||
| 1139 | for(i=0; i< NWD; i++) { | 1140 | for(i=0; i< NWD; i++) { |
| 1140 | struct gendisk *disk = host->gendisk[i]; | 1141 | struct gendisk *disk = host->gendisk[i]; |
| 1141 | if (disk->flags & GENHD_FL_UP) | 1142 | if (disk) { |
| 1142 | del_gendisk(disk); | 1143 | request_queue_t *q = disk->queue; |
| 1144 | |||
| 1145 | if (disk->flags & GENHD_FL_UP) | ||
| 1146 | del_gendisk(disk); | ||
| 1147 | if (q) | ||
| 1148 | blk_cleanup_queue(q); | ||
| 1149 | put_disk(disk); | ||
| 1150 | } | ||
| 1143 | } | 1151 | } |
| 1144 | 1152 | ||
| 1145 | /* | 1153 | /* |
| @@ -1453,10 +1461,13 @@ static int deregister_disk(struct gendisk *disk, drive_info_struct *drv, | |||
| 1453 | * allows us to delete disk zero but keep the controller registered. | 1461 | * allows us to delete disk zero but keep the controller registered. |
| 1454 | */ | 1462 | */ |
| 1455 | if (h->gendisk[0] != disk){ | 1463 | if (h->gendisk[0] != disk){ |
| 1456 | if (disk->flags & GENHD_FL_UP){ | 1464 | if (disk) { |
| 1457 | blk_cleanup_queue(disk->queue); | 1465 | request_queue_t *q = disk->queue; |
| 1458 | del_gendisk(disk); | 1466 | if (disk->flags & GENHD_FL_UP) |
| 1459 | drv->queue = NULL; | 1467 | del_gendisk(disk); |
| 1468 | if (q) | ||
| 1469 | blk_cleanup_queue(q); | ||
| 1470 | put_disk(disk); | ||
| 1460 | } | 1471 | } |
| 1461 | } | 1472 | } |
| 1462 | 1473 | ||
| @@ -3225,9 +3236,14 @@ static void __devexit cciss_remove_one (struct pci_dev *pdev) | |||
| 3225 | /* remove it from the disk list */ | 3236 | /* remove it from the disk list */ |
| 3226 | for (j = 0; j < NWD; j++) { | 3237 | for (j = 0; j < NWD; j++) { |
| 3227 | struct gendisk *disk = hba[i]->gendisk[j]; | 3238 | struct gendisk *disk = hba[i]->gendisk[j]; |
| 3228 | if (disk->flags & GENHD_FL_UP) { | 3239 | if (disk) { |
| 3229 | del_gendisk(disk); | 3240 | request_queue_t *q = disk->queue; |
| 3230 | blk_cleanup_queue(disk->queue); | 3241 | |
| 3242 | if (disk->flags & GENHD_FL_UP) | ||
| 3243 | del_gendisk(disk); | ||
| 3244 | if (q) | ||
| 3245 | blk_cleanup_queue(q); | ||
| 3246 | put_disk(disk); | ||
| 3231 | } | 3247 | } |
| 3232 | } | 3248 | } |
| 3233 | 3249 | ||
diff --git a/drivers/char/ipmi/ipmi_si_intf.c b/drivers/char/ipmi/ipmi_si_intf.c index ea89dca3dbb5..01a1f6badb53 100644 --- a/drivers/char/ipmi/ipmi_si_intf.c +++ b/drivers/char/ipmi/ipmi_si_intf.c | |||
| @@ -2203,7 +2203,7 @@ static void setup_xaction_handlers(struct smi_info *smi_info) | |||
| 2203 | 2203 | ||
| 2204 | static inline void wait_for_timer_and_thread(struct smi_info *smi_info) | 2204 | static inline void wait_for_timer_and_thread(struct smi_info *smi_info) |
| 2205 | { | 2205 | { |
| 2206 | if (smi_info->thread != ERR_PTR(-ENOMEM)) | 2206 | if (smi_info->thread != NULL && smi_info->thread != ERR_PTR(-ENOMEM)) |
| 2207 | kthread_stop(smi_info->thread); | 2207 | kthread_stop(smi_info->thread); |
| 2208 | del_timer_sync(&smi_info->si_timer); | 2208 | del_timer_sync(&smi_info->si_timer); |
| 2209 | } | 2209 | } |
diff --git a/drivers/char/tpm/Kconfig b/drivers/char/tpm/Kconfig index b58adfe3ed19..a6873bf89ffa 100644 --- a/drivers/char/tpm/Kconfig +++ b/drivers/char/tpm/Kconfig | |||
| @@ -6,7 +6,7 @@ menu "TPM devices" | |||
| 6 | 6 | ||
| 7 | config TCG_TPM | 7 | config TCG_TPM |
| 8 | tristate "TPM Hardware Support" | 8 | tristate "TPM Hardware Support" |
| 9 | depends on EXPERIMENTAL && PCI | 9 | depends on EXPERIMENTAL |
| 10 | ---help--- | 10 | ---help--- |
| 11 | If you have a TPM security chip in your system, which | 11 | If you have a TPM security chip in your system, which |
| 12 | implements the Trusted Computing Group's specification, | 12 | implements the Trusted Computing Group's specification, |
diff --git a/drivers/char/tpm/tpm.c b/drivers/char/tpm/tpm.c index 0b283d246730..a9be0e8eaea5 100644 --- a/drivers/char/tpm/tpm.c +++ b/drivers/char/tpm/tpm.c | |||
| @@ -377,6 +377,7 @@ int tpm_release(struct inode *inode, struct file *file) | |||
| 377 | file->private_data = NULL; | 377 | file->private_data = NULL; |
| 378 | chip->num_opens--; | 378 | chip->num_opens--; |
| 379 | del_singleshot_timer_sync(&chip->user_read_timer); | 379 | del_singleshot_timer_sync(&chip->user_read_timer); |
| 380 | flush_scheduled_work(); | ||
| 380 | atomic_set(&chip->data_pending, 0); | 381 | atomic_set(&chip->data_pending, 0); |
| 381 | put_device(chip->dev); | 382 | put_device(chip->dev); |
| 382 | kfree(chip->data_buffer); | 383 | kfree(chip->data_buffer); |
| @@ -428,6 +429,7 @@ ssize_t tpm_read(struct file * file, char __user *buf, | |||
| 428 | int ret_size; | 429 | int ret_size; |
| 429 | 430 | ||
| 430 | del_singleshot_timer_sync(&chip->user_read_timer); | 431 | del_singleshot_timer_sync(&chip->user_read_timer); |
| 432 | flush_scheduled_work(); | ||
| 431 | ret_size = atomic_read(&chip->data_pending); | 433 | ret_size = atomic_read(&chip->data_pending); |
| 432 | atomic_set(&chip->data_pending, 0); | 434 | atomic_set(&chip->data_pending, 0); |
| 433 | if (ret_size > 0) { /* relay data */ | 435 | if (ret_size > 0) { /* relay data */ |
diff --git a/drivers/char/tpm/tpm_atmel.c b/drivers/char/tpm/tpm_atmel.c index deb4b5c80914..ff3654964fe3 100644 --- a/drivers/char/tpm/tpm_atmel.c +++ b/drivers/char/tpm/tpm_atmel.c | |||
| @@ -47,13 +47,12 @@ static int tpm_atml_recv(struct tpm_chip *chip, u8 *buf, size_t count) | |||
| 47 | return -EIO; | 47 | return -EIO; |
| 48 | 48 | ||
| 49 | for (i = 0; i < 6; i++) { | 49 | for (i = 0; i < 6; i++) { |
| 50 | status = atmel_getb(chip, 1); | 50 | status = ioread8(chip->vendor->iobase + 1); |
| 51 | if ((status & ATML_STATUS_DATA_AVAIL) == 0) { | 51 | if ((status & ATML_STATUS_DATA_AVAIL) == 0) { |
| 52 | dev_err(chip->dev, | 52 | dev_err(chip->dev, "error reading header\n"); |
| 53 | "error reading header\n"); | ||
| 54 | return -EIO; | 53 | return -EIO; |
| 55 | } | 54 | } |
| 56 | *buf++ = atmel_getb(chip, 0); | 55 | *buf++ = ioread8(chip->vendor->iobase); |
| 57 | } | 56 | } |
| 58 | 57 | ||
| 59 | /* size of the data received */ | 58 | /* size of the data received */ |
| @@ -64,10 +63,9 @@ static int tpm_atml_recv(struct tpm_chip *chip, u8 *buf, size_t count) | |||
| 64 | dev_err(chip->dev, | 63 | dev_err(chip->dev, |
| 65 | "Recv size(%d) less than available space\n", size); | 64 | "Recv size(%d) less than available space\n", size); |
| 66 | for (; i < size; i++) { /* clear the waiting data anyway */ | 65 | for (; i < size; i++) { /* clear the waiting data anyway */ |
| 67 | status = atmel_getb(chip, 1); | 66 | status = ioread8(chip->vendor->iobase + 1); |
| 68 | if ((status & ATML_STATUS_DATA_AVAIL) == 0) { | 67 | if ((status & ATML_STATUS_DATA_AVAIL) == 0) { |
| 69 | dev_err(chip->dev, | 68 | dev_err(chip->dev, "error reading data\n"); |
| 70 | "error reading data\n"); | ||
| 71 | return -EIO; | 69 | return -EIO; |
| 72 | } | 70 | } |
| 73 | } | 71 | } |
| @@ -76,17 +74,17 @@ static int tpm_atml_recv(struct tpm_chip *chip, u8 *buf, size_t count) | |||
| 76 | 74 | ||
| 77 | /* read all the data available */ | 75 | /* read all the data available */ |
| 78 | for (; i < size; i++) { | 76 | for (; i < size; i++) { |
| 79 | status = atmel_getb(chip, 1); | 77 | status = ioread8(chip->vendor->iobase + 1); |
| 80 | if ((status & ATML_STATUS_DATA_AVAIL) == 0) { | 78 | if ((status & ATML_STATUS_DATA_AVAIL) == 0) { |
| 81 | dev_err(chip->dev, | 79 | dev_err(chip->dev, "error reading data\n"); |
| 82 | "error reading data\n"); | ||
| 83 | return -EIO; | 80 | return -EIO; |
| 84 | } | 81 | } |
| 85 | *buf++ = atmel_getb(chip, 0); | 82 | *buf++ = ioread8(chip->vendor->iobase); |
| 86 | } | 83 | } |
| 87 | 84 | ||
| 88 | /* make sure data available is gone */ | 85 | /* make sure data available is gone */ |
| 89 | status = atmel_getb(chip, 1); | 86 | status = ioread8(chip->vendor->iobase + 1); |
| 87 | |||
| 90 | if (status & ATML_STATUS_DATA_AVAIL) { | 88 | if (status & ATML_STATUS_DATA_AVAIL) { |
| 91 | dev_err(chip->dev, "data available is stuck\n"); | 89 | dev_err(chip->dev, "data available is stuck\n"); |
| 92 | return -EIO; | 90 | return -EIO; |
| @@ -102,7 +100,7 @@ static int tpm_atml_send(struct tpm_chip *chip, u8 *buf, size_t count) | |||
| 102 | dev_dbg(chip->dev, "tpm_atml_send:\n"); | 100 | dev_dbg(chip->dev, "tpm_atml_send:\n"); |
| 103 | for (i = 0; i < count; i++) { | 101 | for (i = 0; i < count; i++) { |
| 104 | dev_dbg(chip->dev, "%d 0x%x(%d)\n", i, buf[i], buf[i]); | 102 | dev_dbg(chip->dev, "%d 0x%x(%d)\n", i, buf[i], buf[i]); |
| 105 | atmel_putb(buf[i], chip, 0); | 103 | iowrite8(buf[i], chip->vendor->iobase); |
| 106 | } | 104 | } |
| 107 | 105 | ||
| 108 | return count; | 106 | return count; |
| @@ -110,12 +108,12 @@ static int tpm_atml_send(struct tpm_chip *chip, u8 *buf, size_t count) | |||
| 110 | 108 | ||
| 111 | static void tpm_atml_cancel(struct tpm_chip *chip) | 109 | static void tpm_atml_cancel(struct tpm_chip *chip) |
| 112 | { | 110 | { |
| 113 | atmel_putb(ATML_STATUS_ABORT, chip, 1); | 111 | iowrite8(ATML_STATUS_ABORT, chip->vendor->iobase + 1); |
| 114 | } | 112 | } |
| 115 | 113 | ||
| 116 | static u8 tpm_atml_status(struct tpm_chip *chip) | 114 | static u8 tpm_atml_status(struct tpm_chip *chip) |
| 117 | { | 115 | { |
| 118 | return atmel_getb(chip, 1); | 116 | return ioread8(chip->vendor->iobase + 1); |
| 119 | } | 117 | } |
| 120 | 118 | ||
| 121 | static struct file_operations atmel_ops = { | 119 | static struct file_operations atmel_ops = { |
| @@ -162,7 +160,8 @@ static void atml_plat_remove(void) | |||
| 162 | 160 | ||
| 163 | if (chip) { | 161 | if (chip) { |
| 164 | if (chip->vendor->have_region) | 162 | if (chip->vendor->have_region) |
| 165 | atmel_release_region(chip->vendor->base, chip->vendor->region_size); | 163 | atmel_release_region(chip->vendor->base, |
| 164 | chip->vendor->region_size); | ||
| 166 | atmel_put_base_addr(chip->vendor); | 165 | atmel_put_base_addr(chip->vendor); |
| 167 | tpm_remove_hardware(chip->dev); | 166 | tpm_remove_hardware(chip->dev); |
| 168 | platform_device_unregister(pdev); | 167 | platform_device_unregister(pdev); |
| @@ -183,14 +182,19 @@ static int __init init_atmel(void) | |||
| 183 | 182 | ||
| 184 | driver_register(&atml_drv); | 183 | driver_register(&atml_drv); |
| 185 | 184 | ||
| 186 | if (atmel_get_base_addr(&tpm_atmel) != 0) { | 185 | if ((tpm_atmel.iobase = atmel_get_base_addr(&tpm_atmel)) == NULL) { |
| 187 | rc = -ENODEV; | 186 | rc = -ENODEV; |
| 188 | goto err_unreg_drv; | 187 | goto err_unreg_drv; |
| 189 | } | 188 | } |
| 190 | 189 | ||
| 191 | tpm_atmel.have_region = (atmel_request_region( tpm_atmel.base, tpm_atmel.region_size, "tpm_atmel0") == NULL) ? 0 : 1; | 190 | tpm_atmel.have_region = |
| 191 | (atmel_request_region | ||
| 192 | (tpm_atmel.base, tpm_atmel.region_size, | ||
| 193 | "tpm_atmel0") == NULL) ? 0 : 1; | ||
| 192 | 194 | ||
| 193 | if (IS_ERR(pdev = platform_device_register_simple("tpm_atmel", -1, NULL, 0 ))) { | 195 | if (IS_ERR |
| 196 | (pdev = | ||
| 197 | platform_device_register_simple("tpm_atmel", -1, NULL, 0))) { | ||
| 194 | rc = PTR_ERR(pdev); | 198 | rc = PTR_ERR(pdev); |
| 195 | goto err_rel_reg; | 199 | goto err_rel_reg; |
| 196 | } | 200 | } |
| @@ -202,9 +206,10 @@ static int __init init_atmel(void) | |||
| 202 | err_unreg_dev: | 206 | err_unreg_dev: |
| 203 | platform_device_unregister(pdev); | 207 | platform_device_unregister(pdev); |
| 204 | err_rel_reg: | 208 | err_rel_reg: |
| 205 | if (tpm_atmel.have_region) | ||
| 206 | atmel_release_region(tpm_atmel.base, tpm_atmel.region_size); | ||
| 207 | atmel_put_base_addr(&tpm_atmel); | 209 | atmel_put_base_addr(&tpm_atmel); |
| 210 | if (tpm_atmel.have_region) | ||
| 211 | atmel_release_region(tpm_atmel.base, | ||
| 212 | tpm_atmel.region_size); | ||
| 208 | err_unreg_drv: | 213 | err_unreg_drv: |
| 209 | driver_unregister(&atml_drv); | 214 | driver_unregister(&atml_drv); |
| 210 | return rc; | 215 | return rc; |
diff --git a/drivers/char/tpm/tpm_atmel.h b/drivers/char/tpm/tpm_atmel.h index 3c5b9a8d1c49..d3478aaadd77 100644 --- a/drivers/char/tpm/tpm_atmel.h +++ b/drivers/char/tpm/tpm_atmel.h | |||
| @@ -27,12 +27,14 @@ | |||
| 27 | #define atmel_putb(val, chip, offset) writeb(val, chip->vendor->iobase + offset) | 27 | #define atmel_putb(val, chip, offset) writeb(val, chip->vendor->iobase + offset) |
| 28 | #define atmel_request_region request_mem_region | 28 | #define atmel_request_region request_mem_region |
| 29 | #define atmel_release_region release_mem_region | 29 | #define atmel_release_region release_mem_region |
| 30 | static inline void atmel_put_base_addr(struct tpm_vendor_specific *vendor) | 30 | |
| 31 | static inline void atmel_put_base_addr(struct tpm_vendor_specific | ||
| 32 | *vendor) | ||
| 31 | { | 33 | { |
| 32 | iounmap(vendor->iobase); | 34 | iounmap(vendor->iobase); |
| 33 | } | 35 | } |
| 34 | 36 | ||
| 35 | static int atmel_get_base_addr(struct tpm_vendor_specific *vendor) | 37 | static void __iomem * atmel_get_base_addr(struct tpm_vendor_specific *vendor) |
| 36 | { | 38 | { |
| 37 | struct device_node *dn; | 39 | struct device_node *dn; |
| 38 | unsigned long address, size; | 40 | unsigned long address, size; |
| @@ -44,11 +46,11 @@ static int atmel_get_base_addr(struct tpm_vendor_specific *vendor) | |||
| 44 | dn = of_find_node_by_name(NULL, "tpm"); | 46 | dn = of_find_node_by_name(NULL, "tpm"); |
| 45 | 47 | ||
| 46 | if (!dn) | 48 | if (!dn) |
| 47 | return 1; | 49 | return NULL; |
| 48 | 50 | ||
| 49 | if (!device_is_compatible(dn, "AT97SC3201")) { | 51 | if (!device_is_compatible(dn, "AT97SC3201")) { |
| 50 | of_node_put(dn); | 52 | of_node_put(dn); |
| 51 | return 1; | 53 | return NULL; |
| 52 | } | 54 | } |
| 53 | 55 | ||
| 54 | reg = (unsigned int *) get_property(dn, "reg", ®len); | 56 | reg = (unsigned int *) get_property(dn, "reg", ®len); |
| @@ -71,8 +73,7 @@ static int atmel_get_base_addr(struct tpm_vendor_specific *vendor) | |||
| 71 | 73 | ||
| 72 | vendor->base = address; | 74 | vendor->base = address; |
| 73 | vendor->region_size = size; | 75 | vendor->region_size = size; |
| 74 | vendor->iobase = ioremap(address, size); | 76 | return ioremap(vendor->base, vendor->region_size); |
| 75 | return 0; | ||
| 76 | } | 77 | } |
| 77 | #else | 78 | #else |
| 78 | #define atmel_getb(chip, offset) inb(chip->vendor->base + offset) | 79 | #define atmel_getb(chip, offset) inb(chip->vendor->base + offset) |
| @@ -105,18 +106,19 @@ static int atmel_verify_tpm11(void) | |||
| 105 | return 0; | 106 | return 0; |
| 106 | } | 107 | } |
| 107 | 108 | ||
| 108 | static inline void atmel_put_base_addr(struct tpm_vendor_specific *vendor) | 109 | static inline void atmel_put_base_addr(struct tpm_vendor_specific |
| 110 | *vendor) | ||
| 109 | { | 111 | { |
| 110 | } | 112 | } |
| 111 | 113 | ||
| 112 | /* Determine where to talk to device */ | 114 | /* Determine where to talk to device */ |
| 113 | static unsigned long atmel_get_base_addr(struct tpm_vendor_specific | 115 | static void __iomem * atmel_get_base_addr(struct tpm_vendor_specific |
| 114 | *vendor) | 116 | *vendor) |
| 115 | { | 117 | { |
| 116 | int lo, hi; | 118 | int lo, hi; |
| 117 | 119 | ||
| 118 | if (atmel_verify_tpm11() != 0) | 120 | if (atmel_verify_tpm11() != 0) |
| 119 | return 1; | 121 | return NULL; |
| 120 | 122 | ||
| 121 | lo = tpm_read_index(TPM_ADDR, TPM_ATMEL_BASE_ADDR_LO); | 123 | lo = tpm_read_index(TPM_ADDR, TPM_ATMEL_BASE_ADDR_LO); |
| 122 | hi = tpm_read_index(TPM_ADDR, TPM_ATMEL_BASE_ADDR_HI); | 124 | hi = tpm_read_index(TPM_ADDR, TPM_ATMEL_BASE_ADDR_HI); |
| @@ -124,6 +126,6 @@ static unsigned long atmel_get_base_addr(struct tpm_vendor_specific | |||
| 124 | vendor->base = (hi << 8) | lo; | 126 | vendor->base = (hi << 8) | lo; |
| 125 | vendor->region_size = 2; | 127 | vendor->region_size = 2; |
| 126 | 128 | ||
| 127 | return 0; | 129 | return ioport_map(vendor->base, vendor->region_size); |
| 128 | } | 130 | } |
| 129 | #endif | 131 | #endif |
diff --git a/drivers/i2c/busses/i2c-ixp4xx.c b/drivers/i2c/busses/i2c-ixp4xx.c index aa36855fa995..f87220be3c87 100644 --- a/drivers/i2c/busses/i2c-ixp4xx.c +++ b/drivers/i2c/busses/i2c-ixp4xx.c | |||
| @@ -35,7 +35,7 @@ | |||
| 35 | 35 | ||
| 36 | #include <asm/hardware.h> /* Pick up IXP4xx-specific bits */ | 36 | #include <asm/hardware.h> /* Pick up IXP4xx-specific bits */ |
| 37 | 37 | ||
| 38 | static struct device_driver ixp4xx_i2c_driver; | 38 | static struct platform_driver ixp4xx_i2c_driver; |
| 39 | 39 | ||
| 40 | static inline int ixp4xx_scl_pin(void *data) | 40 | static inline int ixp4xx_scl_pin(void *data) |
| 41 | { | 41 | { |
| @@ -128,7 +128,7 @@ static int ixp4xx_i2c_probe(struct platform_device *plat_dev) | |||
| 128 | drv_data->algo_data.timeout = 100; | 128 | drv_data->algo_data.timeout = 100; |
| 129 | 129 | ||
| 130 | drv_data->adapter.id = I2C_HW_B_IXP4XX; | 130 | drv_data->adapter.id = I2C_HW_B_IXP4XX; |
| 131 | strlcpy(drv_data->adapter.name, ixp4xx_i2c_driver.name, | 131 | strlcpy(drv_data->adapter.name, ixp4xx_i2c_driver.driver.name, |
| 132 | I2C_NAME_SIZE); | 132 | I2C_NAME_SIZE); |
| 133 | drv_data->adapter.algo_data = &drv_data->algo_data; | 133 | drv_data->adapter.algo_data = &drv_data->algo_data; |
| 134 | 134 | ||
| @@ -140,7 +140,8 @@ static int ixp4xx_i2c_probe(struct platform_device *plat_dev) | |||
| 140 | gpio_line_set(gpio->sda_pin, 0); | 140 | gpio_line_set(gpio->sda_pin, 0); |
| 141 | 141 | ||
| 142 | if ((err = i2c_bit_add_bus(&drv_data->adapter) != 0)) { | 142 | if ((err = i2c_bit_add_bus(&drv_data->adapter) != 0)) { |
| 143 | printk(KERN_ERR "ERROR: Could not install %s\n", dev->bus_id); | 143 | printk(KERN_ERR "ERROR: Could not install %s\n", |
| 144 | plat_dev->dev.bus_id); | ||
| 144 | 145 | ||
| 145 | kfree(drv_data); | 146 | kfree(drv_data); |
| 146 | return err; | 147 | return err; |
diff --git a/drivers/ide/Kconfig b/drivers/ide/Kconfig index 42e5b8175cbf..31e649a9ff71 100644 --- a/drivers/ide/Kconfig +++ b/drivers/ide/Kconfig | |||
| @@ -625,7 +625,7 @@ config BLK_DEV_NS87415 | |||
| 625 | tristate "NS87415 chipset support" | 625 | tristate "NS87415 chipset support" |
| 626 | help | 626 | help |
| 627 | This driver adds detection and support for the NS87415 chip | 627 | This driver adds detection and support for the NS87415 chip |
| 628 | (used in SPARC64, among others). | 628 | (used mainly on SPARC64 and PA-RISC machines). |
| 629 | 629 | ||
| 630 | Please read the comments at the top of <file:drivers/ide/pci/ns87415.c>. | 630 | Please read the comments at the top of <file:drivers/ide/pci/ns87415.c>. |
| 631 | 631 | ||
| @@ -787,6 +787,10 @@ config BLK_DEV_IDE_PMAC_BLINK | |||
| 787 | This option enables the use of the sleep LED as a hard drive | 787 | This option enables the use of the sleep LED as a hard drive |
| 788 | activity LED. | 788 | activity LED. |
| 789 | 789 | ||
| 790 | config BLK_DEV_IDE_SWARM | ||
| 791 | tristate "IDE for Sibyte evaluation boards" | ||
| 792 | depends on SIBYTE_SB1xxx_SOC | ||
| 793 | |||
| 790 | config BLK_DEV_IDE_AU1XXX | 794 | config BLK_DEV_IDE_AU1XXX |
| 791 | bool "IDE for AMD Alchemy Au1200" | 795 | bool "IDE for AMD Alchemy Au1200" |
| 792 | depends on SOC_AU1200 | 796 | depends on SOC_AU1200 |
diff --git a/drivers/ide/Makefile b/drivers/ide/Makefile index cca9c075966d..569fae717503 100644 --- a/drivers/ide/Makefile +++ b/drivers/ide/Makefile | |||
| @@ -48,6 +48,6 @@ obj-$(CONFIG_BLK_DEV_IDECD) += ide-cd.o | |||
| 48 | obj-$(CONFIG_BLK_DEV_IDETAPE) += ide-tape.o | 48 | obj-$(CONFIG_BLK_DEV_IDETAPE) += ide-tape.o |
| 49 | obj-$(CONFIG_BLK_DEV_IDEFLOPPY) += ide-floppy.o | 49 | obj-$(CONFIG_BLK_DEV_IDEFLOPPY) += ide-floppy.o |
| 50 | 50 | ||
| 51 | obj-$(CONFIG_BLK_DEV_IDE) += legacy/ arm/ | 51 | obj-$(CONFIG_BLK_DEV_IDE) += legacy/ arm/ mips/ |
| 52 | obj-$(CONFIG_BLK_DEV_HD) += legacy/ | 52 | obj-$(CONFIG_BLK_DEV_HD) += legacy/ |
| 53 | obj-$(CONFIG_ETRAX_IDE) += cris/ | 53 | obj-$(CONFIG_ETRAX_IDE) += cris/ |
diff --git a/drivers/ide/ide-cd.c b/drivers/ide/ide-cd.c index c2f47923d174..421b62d900af 100644 --- a/drivers/ide/ide-cd.c +++ b/drivers/ide/ide-cd.c | |||
| @@ -3328,8 +3328,8 @@ static ide_proc_entry_t idecd_proc[] = { | |||
| 3328 | #endif | 3328 | #endif |
| 3329 | 3329 | ||
| 3330 | static ide_driver_t ide_cdrom_driver = { | 3330 | static ide_driver_t ide_cdrom_driver = { |
| 3331 | .owner = THIS_MODULE, | ||
| 3332 | .gen_driver = { | 3331 | .gen_driver = { |
| 3332 | .owner = THIS_MODULE, | ||
| 3333 | .name = "ide-cdrom", | 3333 | .name = "ide-cdrom", |
| 3334 | .bus = &ide_bus_type, | 3334 | .bus = &ide_bus_type, |
| 3335 | .probe = ide_cd_probe, | 3335 | .probe = ide_cd_probe, |
diff --git a/drivers/ide/ide-disk.c b/drivers/ide/ide-disk.c index e827b39e4b3c..1a45f75dc9b2 100644 --- a/drivers/ide/ide-disk.c +++ b/drivers/ide/ide-disk.c | |||
| @@ -1089,8 +1089,8 @@ static void ide_device_shutdown(struct device *dev) | |||
| 1089 | } | 1089 | } |
| 1090 | 1090 | ||
| 1091 | static ide_driver_t idedisk_driver = { | 1091 | static ide_driver_t idedisk_driver = { |
| 1092 | .owner = THIS_MODULE, | ||
| 1093 | .gen_driver = { | 1092 | .gen_driver = { |
| 1093 | .owner = THIS_MODULE, | ||
| 1094 | .name = "ide-disk", | 1094 | .name = "ide-disk", |
| 1095 | .bus = &ide_bus_type, | 1095 | .bus = &ide_bus_type, |
| 1096 | .probe = ide_disk_probe, | 1096 | .probe = ide_disk_probe, |
diff --git a/drivers/ide/ide-floppy.c b/drivers/ide/ide-floppy.c index f615ab759962..94c147b79a49 100644 --- a/drivers/ide/ide-floppy.c +++ b/drivers/ide/ide-floppy.c | |||
| @@ -1925,8 +1925,8 @@ static ide_proc_entry_t idefloppy_proc[] = { | |||
| 1925 | static int ide_floppy_probe(struct device *); | 1925 | static int ide_floppy_probe(struct device *); |
| 1926 | 1926 | ||
| 1927 | static ide_driver_t idefloppy_driver = { | 1927 | static ide_driver_t idefloppy_driver = { |
| 1928 | .owner = THIS_MODULE, | ||
| 1929 | .gen_driver = { | 1928 | .gen_driver = { |
| 1929 | .owner = THIS_MODULE, | ||
| 1930 | .name = "ide-floppy", | 1930 | .name = "ide-floppy", |
| 1931 | .bus = &ide_bus_type, | 1931 | .bus = &ide_bus_type, |
| 1932 | .probe = ide_floppy_probe, | 1932 | .probe = ide_floppy_probe, |
diff --git a/drivers/ide/ide-lib.c b/drivers/ide/ide-lib.c index b09a6537c7a8..41d46dbe6c24 100644 --- a/drivers/ide/ide-lib.c +++ b/drivers/ide/ide-lib.c | |||
| @@ -410,10 +410,10 @@ void ide_toggle_bounce(ide_drive_t *drive, int on) | |||
| 410 | { | 410 | { |
| 411 | u64 addr = BLK_BOUNCE_HIGH; /* dma64_addr_t */ | 411 | u64 addr = BLK_BOUNCE_HIGH; /* dma64_addr_t */ |
| 412 | 412 | ||
| 413 | if (on && drive->media == ide_disk) { | 413 | if (!PCI_DMA_BUS_IS_PHYS) { |
| 414 | if (!PCI_DMA_BUS_IS_PHYS) | 414 | addr = BLK_BOUNCE_ANY; |
| 415 | addr = BLK_BOUNCE_ANY; | 415 | } else if (on && drive->media == ide_disk) { |
| 416 | else if (HWIF(drive)->pci_dev) | 416 | if (HWIF(drive)->pci_dev) |
| 417 | addr = HWIF(drive)->pci_dev->dma_mask; | 417 | addr = HWIF(drive)->pci_dev->dma_mask; |
| 418 | } | 418 | } |
| 419 | 419 | ||
diff --git a/drivers/ide/ide-tape.c b/drivers/ide/ide-tape.c index 0ac7eb8f40d5..2069dd693c9f 100644 --- a/drivers/ide/ide-tape.c +++ b/drivers/ide/ide-tape.c | |||
| @@ -4748,8 +4748,8 @@ static ide_proc_entry_t idetape_proc[] = { | |||
| 4748 | static int ide_tape_probe(struct device *); | 4748 | static int ide_tape_probe(struct device *); |
| 4749 | 4749 | ||
| 4750 | static ide_driver_t idetape_driver = { | 4750 | static ide_driver_t idetape_driver = { |
| 4751 | .owner = THIS_MODULE, | ||
| 4752 | .gen_driver = { | 4751 | .gen_driver = { |
| 4752 | .owner = THIS_MODULE, | ||
| 4753 | .name = "ide-tape", | 4753 | .name = "ide-tape", |
| 4754 | .bus = &ide_bus_type, | 4754 | .bus = &ide_bus_type, |
| 4755 | .probe = ide_tape_probe, | 4755 | .probe = ide_tape_probe, |
diff --git a/drivers/ide/mips/Makefile b/drivers/ide/mips/Makefile new file mode 100644 index 000000000000..578e52a59588 --- /dev/null +++ b/drivers/ide/mips/Makefile | |||
| @@ -0,0 +1 @@ | |||
| obj-$(CONFIG_BLK_DEV_IDE_SWARM) += swarm.o | |||
diff --git a/drivers/ide/mips/swarm.c b/drivers/ide/mips/swarm.c new file mode 100644 index 000000000000..66f6064f4640 --- /dev/null +++ b/drivers/ide/mips/swarm.c | |||
| @@ -0,0 +1,201 @@ | |||
| 1 | /* | ||
| 2 | * Copyright (C) 2001, 2002, 2003 Broadcom Corporation | ||
| 3 | * Copyright (C) 2004 MontaVista Software Inc. | ||
| 4 | * Author: Manish Lachwani, mlachwani@mvista.com | ||
| 5 | * Copyright (C) 2004 MIPS Technologies, Inc. All rights reserved. | ||
| 6 | * Author: Maciej W. Rozycki <macro@mips.com> | ||
| 7 | * | ||
| 8 | * This program is free software; you can redistribute it and/or | ||
| 9 | * modify it under the terms of the GNU General Public License | ||
| 10 | * as published by the Free Software Foundation; either version 2 | ||
| 11 | * of the License, or (at your option) any later version. | ||
| 12 | * | ||
| 13 | * This program is distributed in the hope that it will be useful, | ||
| 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 16 | * GNU General Public License for more details. | ||
| 17 | * | ||
| 18 | * You should have received a copy of the GNU General Public License | ||
| 19 | * along with this program; if not, write to the Free Software | ||
| 20 | * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | ||
| 21 | */ | ||
| 22 | |||
| 23 | /* | ||
| 24 | * Derived loosely from ide-pmac.c, so: | ||
| 25 | * Copyright (C) 1998 Paul Mackerras. | ||
| 26 | * Copyright (C) 1995-1998 Mark Lord | ||
| 27 | */ | ||
| 28 | |||
| 29 | /* | ||
| 30 | * Boards with SiByte processors so far have supported IDE devices via | ||
| 31 | * the Generic Bus, PCI bus, and built-in PCMCIA interface. In all | ||
| 32 | * cases, byte-swapping must be avoided for these devices (whereas | ||
| 33 | * other PCI devices, for example, will require swapping). Any | ||
| 34 | * SiByte-targetted kernel including IDE support will include this | ||
| 35 | * file. Probing of a Generic Bus for an IDE device is controlled by | ||
| 36 | * the definition of "SIBYTE_HAVE_IDE", which is provided by | ||
| 37 | * <asm/sibyte/board.h> for Broadcom boards. | ||
| 38 | */ | ||
| 39 | |||
| 40 | #include <linux/ide.h> | ||
| 41 | #include <linux/ioport.h> | ||
| 42 | #include <linux/kernel.h> | ||
| 43 | #include <linux/types.h> | ||
| 44 | #include <linux/platform_device.h> | ||
| 45 | |||
| 46 | #include <asm/io.h> | ||
| 47 | |||
| 48 | #include <asm/sibyte/board.h> | ||
| 49 | #include <asm/sibyte/sb1250_genbus.h> | ||
| 50 | #include <asm/sibyte/sb1250_regs.h> | ||
| 51 | |||
| 52 | #define DRV_NAME "ide-swarm" | ||
| 53 | |||
| 54 | static char swarm_ide_string[] = DRV_NAME; | ||
| 55 | |||
| 56 | static struct resource swarm_ide_resource = { | ||
| 57 | .name = "SWARM GenBus IDE", | ||
| 58 | .flags = IORESOURCE_MEM, | ||
| 59 | }; | ||
| 60 | |||
| 61 | static struct platform_device *swarm_ide_dev; | ||
| 62 | |||
| 63 | /* | ||
| 64 | * swarm_ide_probe - if the board header indicates the existence of | ||
| 65 | * Generic Bus IDE, allocate a HWIF for it. | ||
| 66 | */ | ||
| 67 | static int __devinit swarm_ide_probe(struct device *dev) | ||
| 68 | { | ||
| 69 | ide_hwif_t *hwif; | ||
| 70 | u8 __iomem *base; | ||
| 71 | phys_t offset, size; | ||
| 72 | int i; | ||
| 73 | |||
| 74 | if (!SIBYTE_HAVE_IDE) | ||
| 75 | return -ENODEV; | ||
| 76 | |||
| 77 | /* Find an empty slot. */ | ||
| 78 | for (i = 0; i < MAX_HWIFS; i++) | ||
| 79 | if (!ide_hwifs[i].io_ports[IDE_DATA_OFFSET]) | ||
| 80 | break; | ||
| 81 | if (i >= MAX_HWIFS) { | ||
| 82 | printk(KERN_ERR DRV_NAME ": no free slot for interface\n"); | ||
| 83 | return -ENOMEM; | ||
| 84 | } | ||
| 85 | |||
| 86 | hwif = ide_hwifs + i; | ||
| 87 | |||
| 88 | base = ioremap(A_IO_EXT_BASE, 0x800); | ||
| 89 | offset = __raw_readq(base + R_IO_EXT_REG(R_IO_EXT_START_ADDR, IDE_CS)); | ||
| 90 | size = __raw_readq(base + R_IO_EXT_REG(R_IO_EXT_MULT_SIZE, IDE_CS)); | ||
| 91 | iounmap(base); | ||
| 92 | |||
| 93 | offset = G_IO_START_ADDR(offset) << S_IO_ADDRBASE; | ||
| 94 | size = (G_IO_MULT_SIZE(size) + 1) << S_IO_REGSIZE; | ||
| 95 | if (offset < A_PHYS_GENBUS || offset >= A_PHYS_GENBUS_END) { | ||
| 96 | printk(KERN_INFO DRV_NAME | ||
| 97 | ": IDE interface at GenBus disabled\n"); | ||
| 98 | return -EBUSY; | ||
| 99 | } | ||
| 100 | |||
| 101 | printk(KERN_INFO DRV_NAME ": IDE interface at GenBus slot %i\n", | ||
| 102 | IDE_CS); | ||
| 103 | |||
| 104 | swarm_ide_resource.start = offset; | ||
| 105 | swarm_ide_resource.end = offset + size - 1; | ||
| 106 | if (request_resource(&iomem_resource, &swarm_ide_resource)) { | ||
| 107 | printk(KERN_ERR DRV_NAME | ||
| 108 | ": can't request I/O memory resource\n"); | ||
| 109 | return -EBUSY; | ||
| 110 | } | ||
| 111 | |||
| 112 | base = ioremap(offset, size); | ||
| 113 | |||
| 114 | /* Setup MMIO ops. */ | ||
| 115 | default_hwif_mmiops(hwif); | ||
| 116 | /* Prevent resource map manipulation. */ | ||
| 117 | hwif->mmio = 2; | ||
| 118 | hwif->noprobe = 0; | ||
| 119 | |||
| 120 | for (i = IDE_DATA_OFFSET; i <= IDE_STATUS_OFFSET; i++) | ||
| 121 | hwif->hw.io_ports[i] = | ||
| 122 | (unsigned long)(base + ((0x1f0 + i) << 5)); | ||
| 123 | hwif->hw.io_ports[IDE_CONTROL_OFFSET] = | ||
| 124 | (unsigned long)(base + (0x3f6 << 5)); | ||
| 125 | hwif->hw.irq = K_INT_GB_IDE; | ||
| 126 | |||
| 127 | memcpy(hwif->io_ports, hwif->hw.io_ports, sizeof(hwif->io_ports)); | ||
| 128 | hwif->irq = hwif->hw.irq; | ||
| 129 | |||
| 130 | dev_set_drvdata(dev, hwif); | ||
| 131 | |||
| 132 | return 0; | ||
| 133 | } | ||
| 134 | |||
| 135 | static struct device_driver swarm_ide_driver = { | ||
| 136 | .name = swarm_ide_string, | ||
| 137 | .bus = &platform_bus_type, | ||
| 138 | .probe = swarm_ide_probe, | ||
| 139 | }; | ||
| 140 | |||
| 141 | static void swarm_ide_platform_release(struct device *device) | ||
| 142 | { | ||
| 143 | struct platform_device *pldev; | ||
| 144 | |||
| 145 | /* free device */ | ||
| 146 | pldev = to_platform_device(device); | ||
| 147 | kfree(pldev); | ||
| 148 | } | ||
| 149 | |||
| 150 | static int __devinit swarm_ide_init_module(void) | ||
| 151 | { | ||
| 152 | struct platform_device *pldev; | ||
| 153 | int err; | ||
| 154 | |||
| 155 | printk(KERN_INFO "SWARM IDE driver\n"); | ||
| 156 | |||
| 157 | if (driver_register(&swarm_ide_driver)) { | ||
| 158 | printk(KERN_ERR "Driver registration failed\n"); | ||
| 159 | err = -ENODEV; | ||
| 160 | goto out; | ||
| 161 | } | ||
| 162 | |||
| 163 | if (!(pldev = kmalloc(sizeof (*pldev), GFP_KERNEL))) { | ||
| 164 | err = -ENOMEM; | ||
| 165 | goto out_unregister_driver; | ||
| 166 | } | ||
| 167 | |||
| 168 | memset (pldev, 0, sizeof (*pldev)); | ||
| 169 | pldev->name = swarm_ide_string; | ||
| 170 | pldev->id = 0; | ||
| 171 | pldev->dev.release = swarm_ide_platform_release; | ||
| 172 | |||
| 173 | if (platform_device_register(pldev)) { | ||
| 174 | err = -ENODEV; | ||
| 175 | goto out_free_pldev; | ||
| 176 | } | ||
| 177 | |||
| 178 | if (!pldev->dev.driver) { | ||
| 179 | /* | ||
| 180 | * The driver was not bound to this device, there was | ||
| 181 | * no hardware at this address. Unregister it, as the | ||
| 182 | * release fuction will take care of freeing the | ||
| 183 | * allocated structure | ||
| 184 | */ | ||
| 185 | platform_device_unregister (pldev); | ||
| 186 | } | ||
| 187 | |||
| 188 | swarm_ide_dev = pldev; | ||
| 189 | |||
| 190 | return 0; | ||
| 191 | |||
| 192 | out_free_pldev: | ||
| 193 | kfree(pldev); | ||
| 194 | |||
| 195 | out_unregister_driver: | ||
| 196 | driver_unregister(&swarm_ide_driver); | ||
| 197 | out: | ||
| 198 | return err; | ||
| 199 | } | ||
| 200 | |||
| 201 | module_init(swarm_ide_init_module); | ||
diff --git a/drivers/ide/pci/aec62xx.c b/drivers/ide/pci/aec62xx.c index 52cadc005d72..a21b1e11eef4 100644 --- a/drivers/ide/pci/aec62xx.c +++ b/drivers/ide/pci/aec62xx.c | |||
| @@ -65,23 +65,6 @@ static struct chipset_bus_clock_list_entry aec6xxx_34_base [] = { | |||
| 65 | #define BUSCLOCK(D) \ | 65 | #define BUSCLOCK(D) \ |
| 66 | ((struct chipset_bus_clock_list_entry *) pci_get_drvdata((D))) | 66 | ((struct chipset_bus_clock_list_entry *) pci_get_drvdata((D))) |
| 67 | 67 | ||
| 68 | #if 0 | ||
| 69 | if (dev->device == PCI_DEVICE_ID_ARTOP_ATP850UF) { | ||
| 70 | (void) pci_read_config_byte(dev, 0x54, &art); | ||
| 71 | p += sprintf(p, "DMA Mode: %s(%s)", | ||
| 72 | (c0&0x20)?((art&0x03)?"UDMA":" DMA"):" PIO", | ||
| 73 | (art&0x02)?"2":(art&0x01)?"1":"0"); | ||
| 74 | p += sprintf(p, " %s(%s)", | ||
| 75 | (c0&0x40)?((art&0x0c)?"UDMA":" DMA"):" PIO", | ||
| 76 | (art&0x08)?"2":(art&0x04)?"1":"0"); | ||
| 77 | p += sprintf(p, " %s(%s)", | ||
| 78 | (c1&0x20)?((art&0x30)?"UDMA":" DMA"):" PIO", | ||
| 79 | (art&0x20)?"2":(art&0x10)?"1":"0"); | ||
| 80 | p += sprintf(p, " %s(%s)\n", | ||
| 81 | (c1&0x40)?((art&0xc0)?"UDMA":" DMA"):" PIO", | ||
| 82 | (art&0x80)?"2":(art&0x40)?"1":"0"); | ||
| 83 | } else { | ||
| 84 | #endif | ||
| 85 | 68 | ||
| 86 | /* | 69 | /* |
| 87 | * TO DO: active tuning and correction of cards without a bios. | 70 | * TO DO: active tuning and correction of cards without a bios. |
| @@ -112,13 +95,9 @@ static u8 aec62xx_ratemask (ide_drive_t *drive) | |||
| 112 | switch(hwif->pci_dev->device) { | 95 | switch(hwif->pci_dev->device) { |
| 113 | case PCI_DEVICE_ID_ARTOP_ATP865: | 96 | case PCI_DEVICE_ID_ARTOP_ATP865: |
| 114 | case PCI_DEVICE_ID_ARTOP_ATP865R: | 97 | case PCI_DEVICE_ID_ARTOP_ATP865R: |
| 115 | #if 0 | ||
| 116 | mode = (hwif->INB(hwif->dma_master) & 0x10) ? 4 : 3; | ||
| 117 | #else | ||
| 118 | mode = (hwif->INB(((hwif->channel) ? | 98 | mode = (hwif->INB(((hwif->channel) ? |
| 119 | hwif->mate->dma_status : | 99 | hwif->mate->dma_status : |
| 120 | hwif->dma_status)) & 0x10) ? 4 : 3; | 100 | hwif->dma_status)) & 0x10) ? 4 : 3; |
| 121 | #endif | ||
| 122 | break; | 101 | break; |
| 123 | case PCI_DEVICE_ID_ARTOP_ATP860: | 102 | case PCI_DEVICE_ID_ARTOP_ATP860: |
| 124 | case PCI_DEVICE_ID_ARTOP_ATP860R: | 103 | case PCI_DEVICE_ID_ARTOP_ATP860R: |
| @@ -263,35 +242,9 @@ static int aec62xx_irq_timeout (ide_drive_t *drive) | |||
| 263 | case PCI_DEVICE_ID_ARTOP_ATP865: | 242 | case PCI_DEVICE_ID_ARTOP_ATP865: |
| 264 | case PCI_DEVICE_ID_ARTOP_ATP865R: | 243 | case PCI_DEVICE_ID_ARTOP_ATP865R: |
| 265 | printk(" AEC62XX time out "); | 244 | printk(" AEC62XX time out "); |
| 266 | #if 0 | ||
| 267 | { | ||
| 268 | int i = 0; | ||
| 269 | u8 reg49h = 0; | ||
| 270 | pci_read_config_byte(HWIF(drive)->pci_dev, 0x49, ®49h); | ||
| 271 | for (i=0;i<256;i++) | ||
| 272 | pci_write_config_byte(HWIF(drive)->pci_dev, 0x49, reg49h|0x10); | ||
| 273 | pci_write_config_byte(HWIF(drive)->pci_dev, 0x49, reg49h & ~0x10); | ||
| 274 | } | ||
| 275 | return 0; | ||
| 276 | #endif | ||
| 277 | default: | 245 | default: |
| 278 | break; | 246 | break; |
| 279 | } | 247 | } |
| 280 | #if 0 | ||
| 281 | { | ||
| 282 | ide_hwif_t *hwif = HWIF(drive); | ||
| 283 | struct pci_dev *dev = hwif->pci_dev; | ||
| 284 | u8 tmp1 = 0, tmp2 = 0, mode6 = 0; | ||
| 285 | |||
| 286 | pci_read_config_byte(dev, 0x44, &tmp1); | ||
| 287 | pci_read_config_byte(dev, 0x45, &tmp2); | ||
| 288 | printk(" AEC6280 r44=%x r45=%x ",tmp1,tmp2); | ||
| 289 | mode6 = HWIF(drive)->INB(((hwif->channel) ? | ||
| 290 | hwif->mate->dma_status : | ||
| 291 | hwif->dma_status)); | ||
| 292 | printk(" AEC6280 133=%x ", (mode6 & 0x10)); | ||
| 293 | } | ||
| 294 | #endif | ||
| 295 | return 0; | 248 | return 0; |
| 296 | } | 249 | } |
| 297 | 250 | ||
diff --git a/drivers/ide/pci/alim15x3.c b/drivers/ide/pci/alim15x3.c index 6cf49394a80f..cf84350efc55 100644 --- a/drivers/ide/pci/alim15x3.c +++ b/drivers/ide/pci/alim15x3.c | |||
| @@ -876,10 +876,15 @@ static ide_pci_device_t ali15x3_chipset __devinitdata = { | |||
| 876 | 876 | ||
| 877 | static int __devinit alim15x3_init_one(struct pci_dev *dev, const struct pci_device_id *id) | 877 | static int __devinit alim15x3_init_one(struct pci_dev *dev, const struct pci_device_id *id) |
| 878 | { | 878 | { |
| 879 | static struct pci_device_id ati_rs100[] = { | ||
| 880 | { PCI_DEVICE(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_RS100) }, | ||
| 881 | { }, | ||
| 882 | }; | ||
| 883 | |||
| 879 | ide_pci_device_t *d = &ali15x3_chipset; | 884 | ide_pci_device_t *d = &ali15x3_chipset; |
| 880 | 885 | ||
| 881 | if(pci_find_device(PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_RS100, NULL)) | 886 | if (pci_dev_present(ati_rs100)) |
| 882 | printk(KERN_ERR "Warning: ATI Radeon IGP Northbridge is not yet fully tested.\n"); | 887 | printk(KERN_WARNING "alim15x3: ATI Radeon IGP Northbridge is not yet fully tested.\n"); |
| 883 | 888 | ||
| 884 | #if defined(CONFIG_SPARC64) | 889 | #if defined(CONFIG_SPARC64) |
| 885 | d->init_hwif = init_hwif_common_ali15x3; | 890 | d->init_hwif = init_hwif_common_ali15x3; |
diff --git a/drivers/ide/pci/cs5520.c b/drivers/ide/pci/cs5520.c index 7dc24682d197..ea3c52cc8ac1 100644 --- a/drivers/ide/pci/cs5520.c +++ b/drivers/ide/pci/cs5520.c | |||
| @@ -222,10 +222,9 @@ static int __devinit cs5520_init_one(struct pci_dev *dev, const struct pci_devic | |||
| 222 | 222 | ||
| 223 | /* We must not grab the entire device, it has 'ISA' space in its | 223 | /* We must not grab the entire device, it has 'ISA' space in its |
| 224 | BARS too and we will freak out other bits of the kernel */ | 224 | BARS too and we will freak out other bits of the kernel */ |
| 225 | if(pci_enable_device_bars(dev, 1<<2)) | 225 | if (pci_enable_device_bars(dev, 1<<2)) { |
| 226 | { | ||
| 227 | printk(KERN_WARNING "%s: Unable to enable 55x0.\n", d->name); | 226 | printk(KERN_WARNING "%s: Unable to enable 55x0.\n", d->name); |
| 228 | return 1; | 227 | return -ENODEV; |
| 229 | } | 228 | } |
| 230 | pci_set_master(dev); | 229 | pci_set_master(dev); |
| 231 | if (pci_set_dma_mask(dev, DMA_32BIT_MASK)) { | 230 | if (pci_set_dma_mask(dev, DMA_32BIT_MASK)) { |
diff --git a/drivers/ide/pci/siimage.c b/drivers/ide/pci/siimage.c index 022d244f2eb0..f1ca154dd52c 100644 --- a/drivers/ide/pci/siimage.c +++ b/drivers/ide/pci/siimage.c | |||
| @@ -6,7 +6,13 @@ | |||
| 6 | * | 6 | * |
| 7 | * May be copied or modified under the terms of the GNU General Public License | 7 | * May be copied or modified under the terms of the GNU General Public License |
| 8 | * | 8 | * |
| 9 | * Documentation available under NDA only | 9 | * Documentation for CMD680: |
| 10 | * http://gkernel.sourceforge.net/specs/sii/sii-0680a-v1.31.pdf.bz2 | ||
| 11 | * | ||
| 12 | * Documentation for SiI 3112: | ||
| 13 | * http://gkernel.sourceforge.net/specs/sii/3112A_SiI-DS-0095-B2.pdf.bz2 | ||
| 14 | * | ||
| 15 | * Errata and other documentation only available under NDA. | ||
| 10 | * | 16 | * |
| 11 | * | 17 | * |
| 12 | * FAQ Items: | 18 | * FAQ Items: |
diff --git a/drivers/ide/pci/via82cxxx.c b/drivers/ide/pci/via82cxxx.c index a4d099c937ff..cee2c374cd2f 100644 --- a/drivers/ide/pci/via82cxxx.c +++ b/drivers/ide/pci/via82cxxx.c | |||
| @@ -100,185 +100,14 @@ static struct via_isa_bridge { | |||
| 100 | { NULL } | 100 | { NULL } |
| 101 | }; | 101 | }; |
| 102 | 102 | ||
| 103 | static struct via_isa_bridge *via_config; | ||
| 104 | static unsigned int via_80w; | ||
| 105 | static unsigned int via_clock; | 103 | static unsigned int via_clock; |
| 106 | static char *via_dma[] = { "MWDMA16", "UDMA33", "UDMA66", "UDMA100", "UDMA133" }; | 104 | static char *via_dma[] = { "MWDMA16", "UDMA33", "UDMA66", "UDMA100", "UDMA133" }; |
| 107 | 105 | ||
| 108 | /* | 106 | struct via82cxxx_dev |
| 109 | * VIA /proc entry. | ||
| 110 | */ | ||
| 111 | |||
| 112 | #if defined(DISPLAY_VIA_TIMINGS) && defined(CONFIG_PROC_FS) | ||
| 113 | |||
| 114 | #include <linux/stat.h> | ||
| 115 | #include <linux/proc_fs.h> | ||
| 116 | |||
| 117 | static u8 via_proc = 0; | ||
| 118 | static unsigned long via_base; | ||
| 119 | static struct pci_dev *bmide_dev, *isa_dev; | ||
| 120 | |||
| 121 | static char *via_control3[] = { "No limit", "64", "128", "192" }; | ||
| 122 | |||
| 123 | #define via_print(format, arg...) p += sprintf(p, format "\n" , ## arg) | ||
| 124 | #define via_print_drive(name, format, arg...)\ | ||
| 125 | p += sprintf(p, name); for (i = 0; i < 4; i++) p += sprintf(p, format, ## arg); p += sprintf(p, "\n"); | ||
| 126 | |||
| 127 | |||
| 128 | /** | ||
| 129 | * via_get_info - generate via /proc file | ||
| 130 | * @buffer: buffer for data | ||
| 131 | * @addr: set to start of data to use | ||
| 132 | * @offset: current file offset | ||
| 133 | * @count: size of read | ||
| 134 | * | ||
| 135 | * Fills in buffer with the debugging/configuration information for | ||
| 136 | * the VIA chipset tuning and attached drives | ||
| 137 | */ | ||
| 138 | |||
| 139 | static int via_get_info(char *buffer, char **addr, off_t offset, int count) | ||
| 140 | { | 107 | { |
| 141 | int speed[4], cycle[4], setup[4], active[4], recover[4], den[4], | 108 | struct via_isa_bridge *via_config; |
| 142 | uen[4], udma[4], umul[4], active8b[4], recover8b[4]; | 109 | unsigned int via_80w; |
| 143 | struct pci_dev *dev = bmide_dev; | 110 | }; |
| 144 | unsigned int v, u, i; | ||
| 145 | int len; | ||
| 146 | u16 c, w; | ||
| 147 | u8 t, x; | ||
| 148 | char *p = buffer; | ||
| 149 | |||
| 150 | via_print("----------VIA BusMastering IDE Configuration" | ||
| 151 | "----------------"); | ||
| 152 | |||
| 153 | via_print("Driver Version: 3.38"); | ||
| 154 | via_print("South Bridge: VIA %s", | ||
| 155 | via_config->name); | ||
| 156 | |||
| 157 | pci_read_config_byte(isa_dev, PCI_REVISION_ID, &t); | ||
| 158 | pci_read_config_byte(dev, PCI_REVISION_ID, &x); | ||
| 159 | via_print("Revision: ISA %#x IDE %#x", t, x); | ||
| 160 | via_print("Highest DMA rate: %s", | ||
| 161 | via_dma[via_config->flags & VIA_UDMA]); | ||
| 162 | |||
| 163 | via_print("BM-DMA base: %#lx", via_base); | ||
| 164 | via_print("PCI clock: %d.%dMHz", | ||
| 165 | via_clock / 1000, via_clock / 100 % 10); | ||
| 166 | |||
| 167 | pci_read_config_byte(dev, VIA_MISC_1, &t); | ||
| 168 | via_print("Master Read Cycle IRDY: %dws", | ||
| 169 | (t & 64) >> 6); | ||
| 170 | via_print("Master Write Cycle IRDY: %dws", | ||
| 171 | (t & 32) >> 5); | ||
| 172 | via_print("BM IDE Status Register Read Retry: %s", | ||
| 173 | (t & 8) ? "yes" : "no"); | ||
| 174 | |||
| 175 | pci_read_config_byte(dev, VIA_MISC_3, &t); | ||
| 176 | via_print("Max DRDY Pulse Width: %s%s", | ||
| 177 | via_control3[(t & 0x03)], (t & 0x03) ? " PCI clocks" : ""); | ||
| 178 | |||
| 179 | via_print("-----------------------Primary IDE" | ||
| 180 | "-------Secondary IDE------"); | ||
| 181 | via_print("Read DMA FIFO flush: %10s%20s", | ||
| 182 | (t & 0x80) ? "yes" : "no", (t & 0x40) ? "yes" : "no"); | ||
| 183 | via_print("End Sector FIFO flush: %10s%20s", | ||
| 184 | (t & 0x20) ? "yes" : "no", (t & 0x10) ? "yes" : "no"); | ||
| 185 | |||
| 186 | pci_read_config_byte(dev, VIA_IDE_CONFIG, &t); | ||
| 187 | via_print("Prefetch Buffer: %10s%20s", | ||
| 188 | (t & 0x80) ? "yes" : "no", (t & 0x20) ? "yes" : "no"); | ||
| 189 | via_print("Post Write Buffer: %10s%20s", | ||
| 190 | (t & 0x40) ? "yes" : "no", (t & 0x10) ? "yes" : "no"); | ||
| 191 | |||
| 192 | pci_read_config_byte(dev, VIA_IDE_ENABLE, &t); | ||
| 193 | via_print("Enabled: %10s%20s", | ||
| 194 | (t & 0x02) ? "yes" : "no", (t & 0x01) ? "yes" : "no"); | ||
| 195 | |||
| 196 | c = inb(via_base + 0x02) | (inb(via_base + 0x0a) << 8); | ||
| 197 | via_print("Simplex only: %10s%20s", | ||
| 198 | (c & 0x80) ? "yes" : "no", (c & 0x8000) ? "yes" : "no"); | ||
| 199 | |||
| 200 | via_print("Cable Type: %10s%20s", | ||
| 201 | (via_80w & 1) ? "80w" : "40w", (via_80w & 2) ? "80w" : "40w"); | ||
| 202 | |||
| 203 | via_print("-------------------drive0----drive1" | ||
| 204 | "----drive2----drive3-----"); | ||
| 205 | |||
| 206 | pci_read_config_byte(dev, VIA_ADDRESS_SETUP, &t); | ||
| 207 | pci_read_config_dword(dev, VIA_DRIVE_TIMING, &v); | ||
| 208 | pci_read_config_word(dev, VIA_8BIT_TIMING, &w); | ||
| 209 | |||
| 210 | if (via_config->flags & VIA_UDMA) | ||
| 211 | pci_read_config_dword(dev, VIA_UDMA_TIMING, &u); | ||
| 212 | else u = 0; | ||
| 213 | |||
| 214 | for (i = 0; i < 4; i++) { | ||
| 215 | |||
| 216 | setup[i] = ((t >> ((3 - i) << 1)) & 0x3) + 1; | ||
| 217 | recover8b[i] = ((w >> ((1 - (i >> 1)) << 3)) & 0xf) + 1; | ||
| 218 | active8b[i] = ((w >> (((1 - (i >> 1)) << 3) + 4)) & 0xf) + 1; | ||
| 219 | active[i] = ((v >> (((3 - i) << 3) + 4)) & 0xf) + 1; | ||
| 220 | recover[i] = ((v >> ((3 - i) << 3)) & 0xf) + 1; | ||
| 221 | udma[i] = ((u >> ((3 - i) << 3)) & 0x7) + 2; | ||
| 222 | umul[i] = ((u >> (((3 - i) & 2) << 3)) & 0x8) ? 1 : 2; | ||
| 223 | uen[i] = ((u >> ((3 - i) << 3)) & 0x20); | ||
| 224 | den[i] = (c & ((i & 1) ? 0x40 : 0x20) << ((i & 2) << 2)); | ||
| 225 | |||
| 226 | speed[i] = 2 * via_clock / (active[i] + recover[i]); | ||
| 227 | cycle[i] = 1000000 * (active[i] + recover[i]) / via_clock; | ||
| 228 | |||
| 229 | if (!uen[i] || !den[i]) | ||
| 230 | continue; | ||
| 231 | |||
| 232 | switch (via_config->flags & VIA_UDMA) { | ||
| 233 | |||
| 234 | case VIA_UDMA_33: | ||
| 235 | speed[i] = 2 * via_clock / udma[i]; | ||
| 236 | cycle[i] = 1000000 * udma[i] / via_clock; | ||
| 237 | break; | ||
| 238 | |||
| 239 | case VIA_UDMA_66: | ||
| 240 | speed[i] = 4 * via_clock / (udma[i] * umul[i]); | ||
| 241 | cycle[i] = 500000 * (udma[i] * umul[i]) / via_clock; | ||
| 242 | break; | ||
| 243 | |||
| 244 | case VIA_UDMA_100: | ||
| 245 | speed[i] = 6 * via_clock / udma[i]; | ||
| 246 | cycle[i] = 333333 * udma[i] / via_clock; | ||
| 247 | break; | ||
| 248 | |||
| 249 | case VIA_UDMA_133: | ||
| 250 | speed[i] = 8 * via_clock / udma[i]; | ||
| 251 | cycle[i] = 250000 * udma[i] / via_clock; | ||
| 252 | break; | ||
| 253 | } | ||
| 254 | } | ||
| 255 | |||
| 256 | via_print_drive("Transfer Mode: ", "%10s", | ||
| 257 | den[i] ? (uen[i] ? "UDMA" : "DMA") : "PIO"); | ||
| 258 | |||
| 259 | via_print_drive("Address Setup: ", "%8dns", | ||
| 260 | 1000000 * setup[i] / via_clock); | ||
| 261 | via_print_drive("Cmd Active: ", "%8dns", | ||
| 262 | 1000000 * active8b[i] / via_clock); | ||
| 263 | via_print_drive("Cmd Recovery: ", "%8dns", | ||
| 264 | 1000000 * recover8b[i] / via_clock); | ||
| 265 | via_print_drive("Data Active: ", "%8dns", | ||
| 266 | 1000000 * active[i] / via_clock); | ||
| 267 | via_print_drive("Data Recovery: ", "%8dns", | ||
| 268 | 1000000 * recover[i] / via_clock); | ||
| 269 | via_print_drive("Cycle Time: ", "%8dns", | ||
| 270 | cycle[i]); | ||
| 271 | via_print_drive("Transfer Rate: ", "%4d.%dMB/s", | ||
| 272 | speed[i] / 1000, speed[i] / 100 % 10); | ||
| 273 | |||
| 274 | /* hoping it is less than 4K... */ | ||
| 275 | len = (p - buffer) - offset; | ||
| 276 | *addr = buffer + offset; | ||
| 277 | |||
| 278 | return len > count ? count : len; | ||
| 279 | } | ||
| 280 | |||
| 281 | #endif /* DISPLAY_VIA_TIMINGS && CONFIG_PROC_FS */ | ||
| 282 | 111 | ||
| 283 | /** | 112 | /** |
| 284 | * via_set_speed - write timing registers | 113 | * via_set_speed - write timing registers |
| @@ -289,11 +118,13 @@ static int via_get_info(char *buffer, char **addr, off_t offset, int count) | |||
| 289 | * via_set_speed writes timing values to the chipset registers | 118 | * via_set_speed writes timing values to the chipset registers |
| 290 | */ | 119 | */ |
| 291 | 120 | ||
| 292 | static void via_set_speed(struct pci_dev *dev, u8 dn, struct ide_timing *timing) | 121 | static void via_set_speed(ide_hwif_t *hwif, u8 dn, struct ide_timing *timing) |
| 293 | { | 122 | { |
| 123 | struct pci_dev *dev = hwif->pci_dev; | ||
| 124 | struct via82cxxx_dev *vdev = ide_get_hwifdata(hwif); | ||
| 294 | u8 t; | 125 | u8 t; |
| 295 | 126 | ||
| 296 | if (~via_config->flags & VIA_BAD_AST) { | 127 | if (~vdev->via_config->flags & VIA_BAD_AST) { |
| 297 | pci_read_config_byte(dev, VIA_ADDRESS_SETUP, &t); | 128 | pci_read_config_byte(dev, VIA_ADDRESS_SETUP, &t); |
| 298 | t = (t & ~(3 << ((3 - dn) << 1))) | ((FIT(timing->setup, 1, 4) - 1) << ((3 - dn) << 1)); | 129 | t = (t & ~(3 << ((3 - dn) << 1))) | ((FIT(timing->setup, 1, 4) - 1) << ((3 - dn) << 1)); |
| 299 | pci_write_config_byte(dev, VIA_ADDRESS_SETUP, t); | 130 | pci_write_config_byte(dev, VIA_ADDRESS_SETUP, t); |
| @@ -305,7 +136,7 @@ static void via_set_speed(struct pci_dev *dev, u8 dn, struct ide_timing *timing) | |||
| 305 | pci_write_config_byte(dev, VIA_DRIVE_TIMING + (3 - dn), | 136 | pci_write_config_byte(dev, VIA_DRIVE_TIMING + (3 - dn), |
| 306 | ((FIT(timing->active, 1, 16) - 1) << 4) | (FIT(timing->recover, 1, 16) - 1)); | 137 | ((FIT(timing->active, 1, 16) - 1) << 4) | (FIT(timing->recover, 1, 16) - 1)); |
| 307 | 138 | ||
| 308 | switch (via_config->flags & VIA_UDMA) { | 139 | switch (vdev->via_config->flags & VIA_UDMA) { |
| 309 | case VIA_UDMA_33: t = timing->udma ? (0xe0 | (FIT(timing->udma, 2, 5) - 2)) : 0x03; break; | 140 | case VIA_UDMA_33: t = timing->udma ? (0xe0 | (FIT(timing->udma, 2, 5) - 2)) : 0x03; break; |
| 310 | case VIA_UDMA_66: t = timing->udma ? (0xe8 | (FIT(timing->udma, 2, 9) - 2)) : 0x0f; break; | 141 | case VIA_UDMA_66: t = timing->udma ? (0xe8 | (FIT(timing->udma, 2, 9) - 2)) : 0x0f; break; |
| 311 | case VIA_UDMA_100: t = timing->udma ? (0xe0 | (FIT(timing->udma, 2, 9) - 2)) : 0x07; break; | 142 | case VIA_UDMA_100: t = timing->udma ? (0xe0 | (FIT(timing->udma, 2, 9) - 2)) : 0x07; break; |
| @@ -329,6 +160,7 @@ static void via_set_speed(struct pci_dev *dev, u8 dn, struct ide_timing *timing) | |||
| 329 | static int via_set_drive(ide_drive_t *drive, u8 speed) | 160 | static int via_set_drive(ide_drive_t *drive, u8 speed) |
| 330 | { | 161 | { |
| 331 | ide_drive_t *peer = HWIF(drive)->drives + (~drive->dn & 1); | 162 | ide_drive_t *peer = HWIF(drive)->drives + (~drive->dn & 1); |
| 163 | struct via82cxxx_dev *vdev = ide_get_hwifdata(drive->hwif); | ||
| 332 | struct ide_timing t, p; | 164 | struct ide_timing t, p; |
| 333 | unsigned int T, UT; | 165 | unsigned int T, UT; |
| 334 | 166 | ||
| @@ -337,7 +169,7 @@ static int via_set_drive(ide_drive_t *drive, u8 speed) | |||
| 337 | 169 | ||
| 338 | T = 1000000000 / via_clock; | 170 | T = 1000000000 / via_clock; |
| 339 | 171 | ||
| 340 | switch (via_config->flags & VIA_UDMA) { | 172 | switch (vdev->via_config->flags & VIA_UDMA) { |
| 341 | case VIA_UDMA_33: UT = T; break; | 173 | case VIA_UDMA_33: UT = T; break; |
| 342 | case VIA_UDMA_66: UT = T/2; break; | 174 | case VIA_UDMA_66: UT = T/2; break; |
| 343 | case VIA_UDMA_100: UT = T/3; break; | 175 | case VIA_UDMA_100: UT = T/3; break; |
| @@ -352,7 +184,7 @@ static int via_set_drive(ide_drive_t *drive, u8 speed) | |||
| 352 | ide_timing_merge(&p, &t, &t, IDE_TIMING_8BIT); | 184 | ide_timing_merge(&p, &t, &t, IDE_TIMING_8BIT); |
| 353 | } | 185 | } |
| 354 | 186 | ||
| 355 | via_set_speed(HWIF(drive)->pci_dev, drive->dn, &t); | 187 | via_set_speed(HWIF(drive), drive->dn, &t); |
| 356 | 188 | ||
| 357 | if (!drive->init_speed) | 189 | if (!drive->init_speed) |
| 358 | drive->init_speed = speed; | 190 | drive->init_speed = speed; |
| @@ -390,20 +222,41 @@ static void via82cxxx_tune_drive(ide_drive_t *drive, u8 pio) | |||
| 390 | 222 | ||
| 391 | static int via82cxxx_ide_dma_check (ide_drive_t *drive) | 223 | static int via82cxxx_ide_dma_check (ide_drive_t *drive) |
| 392 | { | 224 | { |
| 393 | u16 w80 = HWIF(drive)->udma_four; | 225 | ide_hwif_t *hwif = HWIF(drive); |
| 226 | struct via82cxxx_dev *vdev = ide_get_hwifdata(hwif); | ||
| 227 | u16 w80 = hwif->udma_four; | ||
| 394 | 228 | ||
| 395 | u16 speed = ide_find_best_mode(drive, | 229 | u16 speed = ide_find_best_mode(drive, |
| 396 | XFER_PIO | XFER_EPIO | XFER_SWDMA | XFER_MWDMA | | 230 | XFER_PIO | XFER_EPIO | XFER_SWDMA | XFER_MWDMA | |
| 397 | (via_config->flags & VIA_UDMA ? XFER_UDMA : 0) | | 231 | (vdev->via_config->flags & VIA_UDMA ? XFER_UDMA : 0) | |
| 398 | (w80 && (via_config->flags & VIA_UDMA) >= VIA_UDMA_66 ? XFER_UDMA_66 : 0) | | 232 | (w80 && (vdev->via_config->flags & VIA_UDMA) >= VIA_UDMA_66 ? XFER_UDMA_66 : 0) | |
| 399 | (w80 && (via_config->flags & VIA_UDMA) >= VIA_UDMA_100 ? XFER_UDMA_100 : 0) | | 233 | (w80 && (vdev->via_config->flags & VIA_UDMA) >= VIA_UDMA_100 ? XFER_UDMA_100 : 0) | |
| 400 | (w80 && (via_config->flags & VIA_UDMA) >= VIA_UDMA_133 ? XFER_UDMA_133 : 0)); | 234 | (w80 && (vdev->via_config->flags & VIA_UDMA) >= VIA_UDMA_133 ? XFER_UDMA_133 : 0)); |
| 401 | 235 | ||
| 402 | via_set_drive(drive, speed); | 236 | via_set_drive(drive, speed); |
| 403 | 237 | ||
| 404 | if (drive->autodma && (speed & XFER_MODE) != XFER_PIO) | 238 | if (drive->autodma && (speed & XFER_MODE) != XFER_PIO) |
| 405 | return HWIF(drive)->ide_dma_on(drive); | 239 | return hwif->ide_dma_on(drive); |
| 406 | return HWIF(drive)->ide_dma_off_quietly(drive); | 240 | return hwif->ide_dma_off_quietly(drive); |
| 241 | } | ||
| 242 | |||
| 243 | static struct via_isa_bridge *via_config_find(struct pci_dev **isa) | ||
| 244 | { | ||
| 245 | struct via_isa_bridge *via_config; | ||
| 246 | u8 t; | ||
| 247 | |||
| 248 | for (via_config = via_isa_bridges; via_config->id; via_config++) | ||
| 249 | if ((*isa = pci_find_device(PCI_VENDOR_ID_VIA + | ||
| 250 | !!(via_config->flags & VIA_BAD_ID), | ||
| 251 | via_config->id, NULL))) { | ||
| 252 | |||
| 253 | pci_read_config_byte(*isa, PCI_REVISION_ID, &t); | ||
| 254 | if (t >= via_config->rev_min && | ||
| 255 | t <= via_config->rev_max) | ||
| 256 | break; | ||
| 257 | } | ||
| 258 | |||
| 259 | return via_config; | ||
| 407 | } | 260 | } |
| 408 | 261 | ||
| 409 | /** | 262 | /** |
| @@ -418,82 +271,28 @@ static int via82cxxx_ide_dma_check (ide_drive_t *drive) | |||
| 418 | static unsigned int __devinit init_chipset_via82cxxx(struct pci_dev *dev, const char *name) | 271 | static unsigned int __devinit init_chipset_via82cxxx(struct pci_dev *dev, const char *name) |
| 419 | { | 272 | { |
| 420 | struct pci_dev *isa = NULL; | 273 | struct pci_dev *isa = NULL; |
| 274 | struct via_isa_bridge *via_config; | ||
| 421 | u8 t, v; | 275 | u8 t, v; |
| 422 | unsigned int u; | 276 | unsigned int u; |
| 423 | int i; | ||
| 424 | 277 | ||
| 425 | /* | 278 | /* |
| 426 | * Find the ISA bridge to see how good the IDE is. | 279 | * Find the ISA bridge to see how good the IDE is. |
| 427 | */ | 280 | */ |
| 428 | 281 | via_config = via_config_find(&isa); | |
| 429 | for (via_config = via_isa_bridges; via_config->id; via_config++) | ||
| 430 | if ((isa = pci_find_device(PCI_VENDOR_ID_VIA + | ||
| 431 | !!(via_config->flags & VIA_BAD_ID), | ||
| 432 | via_config->id, NULL))) { | ||
| 433 | |||
| 434 | pci_read_config_byte(isa, PCI_REVISION_ID, &t); | ||
| 435 | if (t >= via_config->rev_min && | ||
| 436 | t <= via_config->rev_max) | ||
| 437 | break; | ||
| 438 | } | ||
| 439 | |||
| 440 | if (!via_config->id) { | 282 | if (!via_config->id) { |
| 441 | printk(KERN_WARNING "VP_IDE: Unknown VIA SouthBridge, disabling DMA.\n"); | 283 | printk(KERN_WARNING "VP_IDE: Unknown VIA SouthBridge, disabling DMA.\n"); |
| 442 | return -ENODEV; | 284 | return -ENODEV; |
| 443 | } | 285 | } |
| 444 | 286 | ||
| 445 | /* | 287 | /* |
| 446 | * Check 80-wire cable presence and setup Clk66. | 288 | * Setup or disable Clk66 if appropriate |
| 447 | */ | 289 | */ |
| 448 | 290 | ||
| 449 | switch (via_config->flags & VIA_UDMA) { | 291 | if ((via_config->flags & VIA_UDMA) == VIA_UDMA_66) { |
| 450 | 292 | /* Enable Clk66 */ | |
| 451 | case VIA_UDMA_66: | 293 | pci_read_config_dword(dev, VIA_UDMA_TIMING, &u); |
| 452 | /* Enable Clk66 */ | 294 | pci_write_config_dword(dev, VIA_UDMA_TIMING, u|0x80008); |
| 453 | pci_read_config_dword(dev, VIA_UDMA_TIMING, &u); | 295 | } else if (via_config->flags & VIA_BAD_CLK66) { |
| 454 | pci_write_config_dword(dev, VIA_UDMA_TIMING, u|0x80008); | ||
| 455 | for (i = 24; i >= 0; i -= 8) | ||
| 456 | if (((u >> (i & 16)) & 8) && | ||
| 457 | ((u >> i) & 0x20) && | ||
| 458 | (((u >> i) & 7) < 2)) { | ||
| 459 | /* | ||
| 460 | * 2x PCI clock and | ||
| 461 | * UDMA w/ < 3T/cycle | ||
| 462 | */ | ||
| 463 | via_80w |= (1 << (1 - (i >> 4))); | ||
| 464 | } | ||
| 465 | break; | ||
| 466 | |||
| 467 | case VIA_UDMA_100: | ||
| 468 | pci_read_config_dword(dev, VIA_UDMA_TIMING, &u); | ||
| 469 | for (i = 24; i >= 0; i -= 8) | ||
| 470 | if (((u >> i) & 0x10) || | ||
| 471 | (((u >> i) & 0x20) && | ||
| 472 | (((u >> i) & 7) < 4))) { | ||
| 473 | /* BIOS 80-wire bit or | ||
| 474 | * UDMA w/ < 60ns/cycle | ||
| 475 | */ | ||
| 476 | via_80w |= (1 << (1 - (i >> 4))); | ||
| 477 | } | ||
| 478 | break; | ||
| 479 | |||
| 480 | case VIA_UDMA_133: | ||
| 481 | pci_read_config_dword(dev, VIA_UDMA_TIMING, &u); | ||
| 482 | for (i = 24; i >= 0; i -= 8) | ||
| 483 | if (((u >> i) & 0x10) || | ||
| 484 | (((u >> i) & 0x20) && | ||
| 485 | (((u >> i) & 7) < 6))) { | ||
| 486 | /* BIOS 80-wire bit or | ||
| 487 | * UDMA w/ < 60ns/cycle | ||
| 488 | */ | ||
| 489 | via_80w |= (1 << (1 - (i >> 4))); | ||
| 490 | } | ||
| 491 | break; | ||
| 492 | |||
| 493 | } | ||
| 494 | |||
| 495 | /* Disable Clk66 */ | ||
| 496 | if (via_config->flags & VIA_BAD_CLK66) { | ||
| 497 | /* Would cause trouble on 596a and 686 */ | 296 | /* Would cause trouble on 596a and 686 */ |
| 498 | pci_read_config_dword(dev, VIA_UDMA_TIMING, &u); | 297 | pci_read_config_dword(dev, VIA_UDMA_TIMING, &u); |
| 499 | pci_write_config_dword(dev, VIA_UDMA_TIMING, u & ~0x80008); | 298 | pci_write_config_dword(dev, VIA_UDMA_TIMING, u & ~0x80008); |
| @@ -560,26 +359,78 @@ static unsigned int __devinit init_chipset_via82cxxx(struct pci_dev *dev, const | |||
| 560 | via_dma[via_config->flags & VIA_UDMA], | 359 | via_dma[via_config->flags & VIA_UDMA], |
| 561 | pci_name(dev)); | 360 | pci_name(dev)); |
| 562 | 361 | ||
| 563 | /* | 362 | return 0; |
| 564 | * Setup /proc/ide/via entry. | 363 | } |
| 565 | */ | 364 | |
| 365 | /* | ||
| 366 | * Check and handle 80-wire cable presence | ||
| 367 | */ | ||
| 368 | static void __devinit via_cable_detect(struct pci_dev *dev, struct via82cxxx_dev *vdev) | ||
| 369 | { | ||
| 370 | unsigned int u; | ||
| 371 | int i; | ||
| 372 | pci_read_config_dword(dev, VIA_UDMA_TIMING, &u); | ||
| 373 | |||
| 374 | switch (vdev->via_config->flags & VIA_UDMA) { | ||
| 375 | |||
| 376 | case VIA_UDMA_66: | ||
| 377 | for (i = 24; i >= 0; i -= 8) | ||
| 378 | if (((u >> (i & 16)) & 8) && | ||
| 379 | ((u >> i) & 0x20) && | ||
| 380 | (((u >> i) & 7) < 2)) { | ||
| 381 | /* | ||
| 382 | * 2x PCI clock and | ||
| 383 | * UDMA w/ < 3T/cycle | ||
| 384 | */ | ||
| 385 | vdev->via_80w |= (1 << (1 - (i >> 4))); | ||
| 386 | } | ||
| 387 | break; | ||
| 388 | |||
| 389 | case VIA_UDMA_100: | ||
| 390 | for (i = 24; i >= 0; i -= 8) | ||
| 391 | if (((u >> i) & 0x10) || | ||
| 392 | (((u >> i) & 0x20) && | ||
| 393 | (((u >> i) & 7) < 4))) { | ||
| 394 | /* BIOS 80-wire bit or | ||
| 395 | * UDMA w/ < 60ns/cycle | ||
| 396 | */ | ||
| 397 | vdev->via_80w |= (1 << (1 - (i >> 4))); | ||
| 398 | } | ||
| 399 | break; | ||
| 400 | |||
| 401 | case VIA_UDMA_133: | ||
| 402 | for (i = 24; i >= 0; i -= 8) | ||
| 403 | if (((u >> i) & 0x10) || | ||
| 404 | (((u >> i) & 0x20) && | ||
| 405 | (((u >> i) & 7) < 6))) { | ||
| 406 | /* BIOS 80-wire bit or | ||
| 407 | * UDMA w/ < 60ns/cycle | ||
| 408 | */ | ||
| 409 | vdev->via_80w |= (1 << (1 - (i >> 4))); | ||
| 410 | } | ||
| 411 | break; | ||
| 566 | 412 | ||
| 567 | #if defined(DISPLAY_VIA_TIMINGS) && defined(CONFIG_PROC_FS) | ||
| 568 | if (!via_proc) { | ||
| 569 | via_base = pci_resource_start(dev, 4); | ||
| 570 | bmide_dev = dev; | ||
| 571 | isa_dev = isa; | ||
| 572 | ide_pci_create_host_proc("via", via_get_info); | ||
| 573 | via_proc = 1; | ||
| 574 | } | 413 | } |
| 575 | #endif /* DISPLAY_VIA_TIMINGS && CONFIG_PROC_FS */ | ||
| 576 | return 0; | ||
| 577 | } | 414 | } |
| 578 | 415 | ||
| 579 | static void __devinit init_hwif_via82cxxx(ide_hwif_t *hwif) | 416 | static void __devinit init_hwif_via82cxxx(ide_hwif_t *hwif) |
| 580 | { | 417 | { |
| 418 | struct via82cxxx_dev *vdev = kmalloc(sizeof(struct via82cxxx_dev), | ||
| 419 | GFP_KERNEL); | ||
| 420 | struct pci_dev *isa = NULL; | ||
| 581 | int i; | 421 | int i; |
| 582 | 422 | ||
| 423 | if (vdev == NULL) { | ||
| 424 | printk(KERN_ERR "VP_IDE: out of memory :(\n"); | ||
| 425 | return; | ||
| 426 | } | ||
| 427 | |||
| 428 | memset(vdev, 0, sizeof(struct via82cxxx_dev)); | ||
| 429 | ide_set_hwifdata(hwif, vdev); | ||
| 430 | |||
| 431 | vdev->via_config = via_config_find(&isa); | ||
| 432 | via_cable_detect(hwif->pci_dev, vdev); | ||
| 433 | |||
| 583 | hwif->autodma = 0; | 434 | hwif->autodma = 0; |
| 584 | 435 | ||
| 585 | hwif->tuneproc = &via82cxxx_tune_drive; | 436 | hwif->tuneproc = &via82cxxx_tune_drive; |
| @@ -594,7 +445,7 @@ static void __devinit init_hwif_via82cxxx(ide_hwif_t *hwif) | |||
| 594 | 445 | ||
| 595 | for (i = 0; i < 2; i++) { | 446 | for (i = 0; i < 2; i++) { |
| 596 | hwif->drives[i].io_32bit = 1; | 447 | hwif->drives[i].io_32bit = 1; |
| 597 | hwif->drives[i].unmask = (via_config->flags & VIA_NO_UNMASK) ? 0 : 1; | 448 | hwif->drives[i].unmask = (vdev->via_config->flags & VIA_NO_UNMASK) ? 0 : 1; |
| 598 | hwif->drives[i].autotune = 1; | 449 | hwif->drives[i].autotune = 1; |
| 599 | hwif->drives[i].dn = hwif->channel * 2 + i; | 450 | hwif->drives[i].dn = hwif->channel * 2 + i; |
| 600 | } | 451 | } |
| @@ -608,7 +459,7 @@ static void __devinit init_hwif_via82cxxx(ide_hwif_t *hwif) | |||
| 608 | hwif->swdma_mask = 0x07; | 459 | hwif->swdma_mask = 0x07; |
| 609 | 460 | ||
| 610 | if (!hwif->udma_four) | 461 | if (!hwif->udma_four) |
| 611 | hwif->udma_four = (via_80w >> hwif->channel) & 1; | 462 | hwif->udma_four = (vdev->via_80w >> hwif->channel) & 1; |
| 612 | hwif->ide_dma_check = &via82cxxx_ide_dma_check; | 463 | hwif->ide_dma_check = &via82cxxx_ide_dma_check; |
| 613 | if (!noautodma) | 464 | if (!noautodma) |
| 614 | hwif->autodma = 1; | 465 | hwif->autodma = 1; |
diff --git a/drivers/ide/ppc/pmac.c b/drivers/ide/ppc/pmac.c index 136911a86e84..16b28357885b 100644 --- a/drivers/ide/ppc/pmac.c +++ b/drivers/ide/ppc/pmac.c | |||
| @@ -1401,20 +1401,6 @@ pmac_ide_setup_device(pmac_ide_hwif_t *pmif, ide_hwif_t *hwif) | |||
| 1401 | /* We probe the hwif now */ | 1401 | /* We probe the hwif now */ |
| 1402 | probe_hwif_init(hwif); | 1402 | probe_hwif_init(hwif); |
| 1403 | 1403 | ||
| 1404 | /* The code IDE code will have set hwif->present if we have devices attached, | ||
| 1405 | * if we don't, the discard the interface except if we are on a media bay slot | ||
| 1406 | */ | ||
| 1407 | if (!hwif->present && !pmif->mediabay) { | ||
| 1408 | printk(KERN_INFO "ide%d: Bus empty, interface released.\n", | ||
| 1409 | hwif->index); | ||
| 1410 | default_hwif_iops(hwif); | ||
| 1411 | for (i = IDE_DATA_OFFSET; i <= IDE_CONTROL_OFFSET; ++i) | ||
| 1412 | hwif->io_ports[i] = 0; | ||
| 1413 | hwif->chipset = ide_unknown; | ||
| 1414 | hwif->noprobe = 1; | ||
| 1415 | return -ENODEV; | ||
| 1416 | } | ||
| 1417 | |||
| 1418 | return 0; | 1404 | return 0; |
| 1419 | } | 1405 | } |
| 1420 | 1406 | ||
diff --git a/drivers/ide/setup-pci.c b/drivers/ide/setup-pci.c index d4f2111d4364..7ebf992e8c2f 100644 --- a/drivers/ide/setup-pci.c +++ b/drivers/ide/setup-pci.c | |||
| @@ -787,7 +787,7 @@ static int pre_init = 1; /* Before first ordered IDE scan */ | |||
| 787 | static LIST_HEAD(ide_pci_drivers); | 787 | static LIST_HEAD(ide_pci_drivers); |
| 788 | 788 | ||
| 789 | /* | 789 | /* |
| 790 | * __ide_register_pci_driver - attach IDE driver | 790 | * __ide_pci_register_driver - attach IDE driver |
| 791 | * @driver: pci driver | 791 | * @driver: pci driver |
| 792 | * @module: owner module of the driver | 792 | * @module: owner module of the driver |
| 793 | * | 793 | * |
diff --git a/drivers/infiniband/core/user_mad.c b/drivers/infiniband/core/user_mad.c index 5ea741f47fc8..e73f81c22381 100644 --- a/drivers/infiniband/core/user_mad.c +++ b/drivers/infiniband/core/user_mad.c | |||
| @@ -312,7 +312,7 @@ static ssize_t ib_umad_write(struct file *filp, const char __user *buf, | |||
| 312 | int ret, length, hdr_len, copy_offset; | 312 | int ret, length, hdr_len, copy_offset; |
| 313 | int rmpp_active = 0; | 313 | int rmpp_active = 0; |
| 314 | 314 | ||
| 315 | if (count < sizeof (struct ib_user_mad)) | 315 | if (count < sizeof (struct ib_user_mad) + IB_MGMT_RMPP_HDR) |
| 316 | return -EINVAL; | 316 | return -EINVAL; |
| 317 | 317 | ||
| 318 | length = count - sizeof (struct ib_user_mad); | 318 | length = count - sizeof (struct ib_user_mad); |
diff --git a/drivers/infiniband/hw/mthca/mthca_qp.c b/drivers/infiniband/hw/mthca/mthca_qp.c index 760c418d5bc9..dd4e13303e96 100644 --- a/drivers/infiniband/hw/mthca/mthca_qp.c +++ b/drivers/infiniband/hw/mthca/mthca_qp.c | |||
| @@ -730,15 +730,16 @@ int mthca_modify_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr, int attr_mask) | |||
| 730 | } | 730 | } |
| 731 | 731 | ||
| 732 | if (attr_mask & IB_QP_ACCESS_FLAGS) { | 732 | if (attr_mask & IB_QP_ACCESS_FLAGS) { |
| 733 | qp_context->params2 |= | ||
| 734 | cpu_to_be32(attr->qp_access_flags & IB_ACCESS_REMOTE_WRITE ? | ||
| 735 | MTHCA_QP_BIT_RWE : 0); | ||
| 736 | |||
| 733 | /* | 737 | /* |
| 734 | * Only enable RDMA/atomics if we have responder | 738 | * Only enable RDMA reads and atomics if we have |
| 735 | * resources set to a non-zero value. | 739 | * responder resources set to a non-zero value. |
| 736 | */ | 740 | */ |
| 737 | if (qp->resp_depth) { | 741 | if (qp->resp_depth) { |
| 738 | qp_context->params2 |= | 742 | qp_context->params2 |= |
| 739 | cpu_to_be32(attr->qp_access_flags & IB_ACCESS_REMOTE_WRITE ? | ||
| 740 | MTHCA_QP_BIT_RWE : 0); | ||
| 741 | qp_context->params2 |= | ||
| 742 | cpu_to_be32(attr->qp_access_flags & IB_ACCESS_REMOTE_READ ? | 743 | cpu_to_be32(attr->qp_access_flags & IB_ACCESS_REMOTE_READ ? |
| 743 | MTHCA_QP_BIT_RRE : 0); | 744 | MTHCA_QP_BIT_RRE : 0); |
| 744 | qp_context->params2 |= | 745 | qp_context->params2 |= |
| @@ -759,31 +760,27 @@ int mthca_modify_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr, int attr_mask) | |||
| 759 | if (qp->resp_depth && !attr->max_dest_rd_atomic) { | 760 | if (qp->resp_depth && !attr->max_dest_rd_atomic) { |
| 760 | /* | 761 | /* |
| 761 | * Lowering our responder resources to zero. | 762 | * Lowering our responder resources to zero. |
| 762 | * Turn off RDMA/atomics as responder. | 763 | * Turn off reads RDMA and atomics as responder. |
| 763 | * (RWE/RRE/RAE in params2 already zero) | 764 | * (RRE/RAE in params2 already zero) |
| 764 | */ | 765 | */ |
| 765 | qp_param->opt_param_mask |= cpu_to_be32(MTHCA_QP_OPTPAR_RWE | | 766 | qp_param->opt_param_mask |= cpu_to_be32(MTHCA_QP_OPTPAR_RRE | |
| 766 | MTHCA_QP_OPTPAR_RRE | | ||
| 767 | MTHCA_QP_OPTPAR_RAE); | 767 | MTHCA_QP_OPTPAR_RAE); |
| 768 | } | 768 | } |
| 769 | 769 | ||
| 770 | if (!qp->resp_depth && attr->max_dest_rd_atomic) { | 770 | if (!qp->resp_depth && attr->max_dest_rd_atomic) { |
| 771 | /* | 771 | /* |
| 772 | * Increasing our responder resources from | 772 | * Increasing our responder resources from |
| 773 | * zero. Turn on RDMA/atomics as appropriate. | 773 | * zero. Turn on RDMA reads and atomics as |
| 774 | * appropriate. | ||
| 774 | */ | 775 | */ |
| 775 | qp_context->params2 |= | 776 | qp_context->params2 |= |
| 776 | cpu_to_be32(qp->atomic_rd_en & IB_ACCESS_REMOTE_WRITE ? | ||
| 777 | MTHCA_QP_BIT_RWE : 0); | ||
| 778 | qp_context->params2 |= | ||
| 779 | cpu_to_be32(qp->atomic_rd_en & IB_ACCESS_REMOTE_READ ? | 777 | cpu_to_be32(qp->atomic_rd_en & IB_ACCESS_REMOTE_READ ? |
| 780 | MTHCA_QP_BIT_RRE : 0); | 778 | MTHCA_QP_BIT_RRE : 0); |
| 781 | qp_context->params2 |= | 779 | qp_context->params2 |= |
| 782 | cpu_to_be32(qp->atomic_rd_en & IB_ACCESS_REMOTE_ATOMIC ? | 780 | cpu_to_be32(qp->atomic_rd_en & IB_ACCESS_REMOTE_ATOMIC ? |
| 783 | MTHCA_QP_BIT_RAE : 0); | 781 | MTHCA_QP_BIT_RAE : 0); |
| 784 | 782 | ||
| 785 | qp_param->opt_param_mask |= cpu_to_be32(MTHCA_QP_OPTPAR_RWE | | 783 | qp_param->opt_param_mask |= cpu_to_be32(MTHCA_QP_OPTPAR_RRE | |
| 786 | MTHCA_QP_OPTPAR_RRE | | ||
| 787 | MTHCA_QP_OPTPAR_RAE); | 784 | MTHCA_QP_OPTPAR_RAE); |
| 788 | } | 785 | } |
| 789 | 786 | ||
| @@ -921,10 +918,12 @@ static void mthca_adjust_qp_caps(struct mthca_dev *dev, | |||
| 921 | else | 918 | else |
| 922 | qp->max_inline_data = max_data_size - MTHCA_INLINE_HEADER_SIZE; | 919 | qp->max_inline_data = max_data_size - MTHCA_INLINE_HEADER_SIZE; |
| 923 | 920 | ||
| 924 | qp->sq.max_gs = max_data_size / sizeof (struct mthca_data_seg); | 921 | qp->sq.max_gs = min_t(int, dev->limits.max_sg, |
| 925 | qp->rq.max_gs = (min(dev->limits.max_desc_sz, 1 << qp->rq.wqe_shift) - | 922 | max_data_size / sizeof (struct mthca_data_seg)); |
| 926 | sizeof (struct mthca_next_seg)) / | 923 | qp->rq.max_gs = min_t(int, dev->limits.max_sg, |
| 927 | sizeof (struct mthca_data_seg); | 924 | (min(dev->limits.max_desc_sz, 1 << qp->rq.wqe_shift) - |
| 925 | sizeof (struct mthca_next_seg)) / | ||
| 926 | sizeof (struct mthca_data_seg)); | ||
| 928 | } | 927 | } |
| 929 | 928 | ||
| 930 | /* | 929 | /* |
diff --git a/drivers/infiniband/ulp/srp/ib_srp.c b/drivers/infiniband/ulp/srp/ib_srp.c index 321a3a10e69b..ee9fe226ae99 100644 --- a/drivers/infiniband/ulp/srp/ib_srp.c +++ b/drivers/infiniband/ulp/srp/ib_srp.c | |||
| @@ -802,13 +802,21 @@ static int srp_post_recv(struct srp_target_port *target) | |||
| 802 | 802 | ||
| 803 | /* | 803 | /* |
| 804 | * Must be called with target->scsi_host->host_lock held to protect | 804 | * Must be called with target->scsi_host->host_lock held to protect |
| 805 | * req_lim and tx_head. | 805 | * req_lim and tx_head. Lock cannot be dropped between call here and |
| 806 | * call to __srp_post_send(). | ||
| 806 | */ | 807 | */ |
| 807 | static struct srp_iu *__srp_get_tx_iu(struct srp_target_port *target) | 808 | static struct srp_iu *__srp_get_tx_iu(struct srp_target_port *target) |
| 808 | { | 809 | { |
| 809 | if (target->tx_head - target->tx_tail >= SRP_SQ_SIZE) | 810 | if (target->tx_head - target->tx_tail >= SRP_SQ_SIZE) |
| 810 | return NULL; | 811 | return NULL; |
| 811 | 812 | ||
| 813 | if (unlikely(target->req_lim < 1)) { | ||
| 814 | if (printk_ratelimit()) | ||
| 815 | printk(KERN_DEBUG PFX "Target has req_lim %d\n", | ||
| 816 | target->req_lim); | ||
| 817 | return NULL; | ||
| 818 | } | ||
| 819 | |||
| 812 | return target->tx_ring[target->tx_head & SRP_SQ_SIZE]; | 820 | return target->tx_ring[target->tx_head & SRP_SQ_SIZE]; |
| 813 | } | 821 | } |
| 814 | 822 | ||
| @@ -823,11 +831,6 @@ static int __srp_post_send(struct srp_target_port *target, | |||
| 823 | struct ib_send_wr wr, *bad_wr; | 831 | struct ib_send_wr wr, *bad_wr; |
| 824 | int ret = 0; | 832 | int ret = 0; |
| 825 | 833 | ||
| 826 | if (target->req_lim < 1) { | ||
| 827 | printk(KERN_ERR PFX "Target has req_lim %d\n", target->req_lim); | ||
| 828 | return -EAGAIN; | ||
| 829 | } | ||
| 830 | |||
| 831 | list.addr = iu->dma; | 834 | list.addr = iu->dma; |
| 832 | list.length = len; | 835 | list.length = len; |
| 833 | list.lkey = target->srp_host->mr->lkey; | 836 | list.lkey = target->srp_host->mr->lkey; |
| @@ -1417,6 +1420,8 @@ static ssize_t srp_create_target(struct class_device *class_dev, | |||
| 1417 | if (!target_host) | 1420 | if (!target_host) |
| 1418 | return -ENOMEM; | 1421 | return -ENOMEM; |
| 1419 | 1422 | ||
| 1423 | target_host->max_lun = SRP_MAX_LUN; | ||
| 1424 | |||
| 1420 | target = host_to_target(target_host); | 1425 | target = host_to_target(target_host); |
| 1421 | memset(target, 0, sizeof *target); | 1426 | memset(target, 0, sizeof *target); |
| 1422 | 1427 | ||
diff --git a/drivers/infiniband/ulp/srp/ib_srp.h b/drivers/infiniband/ulp/srp/ib_srp.h index 4fec28a71367..b564f18caf78 100644 --- a/drivers/infiniband/ulp/srp/ib_srp.h +++ b/drivers/infiniband/ulp/srp/ib_srp.h | |||
| @@ -54,6 +54,7 @@ enum { | |||
| 54 | SRP_PORT_REDIRECT = 1, | 54 | SRP_PORT_REDIRECT = 1, |
| 55 | SRP_DLID_REDIRECT = 2, | 55 | SRP_DLID_REDIRECT = 2, |
| 56 | 56 | ||
| 57 | SRP_MAX_LUN = 512, | ||
| 57 | SRP_MAX_IU_LEN = 256, | 58 | SRP_MAX_IU_LEN = 256, |
| 58 | 59 | ||
| 59 | SRP_RQ_SHIFT = 6, | 60 | SRP_RQ_SHIFT = 6, |
diff --git a/drivers/isdn/hisax/Kconfig b/drivers/isdn/hisax/Kconfig index 801c98f30e5c..c82105920d71 100644 --- a/drivers/isdn/hisax/Kconfig +++ b/drivers/isdn/hisax/Kconfig | |||
| @@ -110,7 +110,7 @@ config HISAX_16_3 | |||
| 110 | 110 | ||
| 111 | config HISAX_TELESPCI | 111 | config HISAX_TELESPCI |
| 112 | bool "Teles PCI" | 112 | bool "Teles PCI" |
| 113 | depends on PCI && (BROKEN || !(SPARC64 || PPC)) | 113 | depends on PCI && (BROKEN || !(SPARC || PPC || PARISC || M68K)) |
| 114 | help | 114 | help |
| 115 | This enables HiSax support for the Teles PCI. | 115 | This enables HiSax support for the Teles PCI. |
| 116 | See <file:Documentation/isdn/README.HiSax> on how to configure it. | 116 | See <file:Documentation/isdn/README.HiSax> on how to configure it. |
| @@ -238,7 +238,7 @@ config HISAX_MIC | |||
| 238 | 238 | ||
| 239 | config HISAX_NETJET | 239 | config HISAX_NETJET |
| 240 | bool "NETjet card" | 240 | bool "NETjet card" |
| 241 | depends on PCI && (BROKEN || !(SPARC64 || PPC)) | 241 | depends on PCI && (BROKEN || !(SPARC || PPC || PARISC || M68K)) |
| 242 | help | 242 | help |
| 243 | This enables HiSax support for the NetJet from Traverse | 243 | This enables HiSax support for the NetJet from Traverse |
| 244 | Technologies. | 244 | Technologies. |
| @@ -249,7 +249,7 @@ config HISAX_NETJET | |||
| 249 | 249 | ||
| 250 | config HISAX_NETJET_U | 250 | config HISAX_NETJET_U |
| 251 | bool "NETspider U card" | 251 | bool "NETspider U card" |
| 252 | depends on PCI && (BROKEN || !(SPARC64 || PPC)) | 252 | depends on PCI && (BROKEN || !(SPARC || PPC || PARISC || M68K)) |
| 253 | help | 253 | help |
| 254 | This enables HiSax support for the Netspider U interface ISDN card | 254 | This enables HiSax support for the Netspider U interface ISDN card |
| 255 | from Traverse Technologies. | 255 | from Traverse Technologies. |
| @@ -317,7 +317,7 @@ config HISAX_GAZEL | |||
| 317 | 317 | ||
| 318 | config HISAX_HFC_PCI | 318 | config HISAX_HFC_PCI |
| 319 | bool "HFC PCI-Bus cards" | 319 | bool "HFC PCI-Bus cards" |
| 320 | depends on PCI && (BROKEN || !(SPARC64 || PPC)) | 320 | depends on PCI && (BROKEN || !(SPARC || PPC || PARISC || M68K)) |
| 321 | help | 321 | help |
| 322 | This enables HiSax support for the HFC-S PCI 2BDS0 based cards. | 322 | This enables HiSax support for the HFC-S PCI 2BDS0 based cards. |
| 323 | 323 | ||
| @@ -344,14 +344,14 @@ config HISAX_HFC_SX | |||
| 344 | 344 | ||
| 345 | config HISAX_ENTERNOW_PCI | 345 | config HISAX_ENTERNOW_PCI |
| 346 | bool "Formula-n enter:now PCI card" | 346 | bool "Formula-n enter:now PCI card" |
| 347 | depends on PCI && (BROKEN || !(SPARC64 || PPC)) | 347 | depends on PCI && (BROKEN || !(SPARC || PPC || PARISC || M68K)) |
| 348 | help | 348 | help |
| 349 | This enables HiSax support for the Formula-n enter:now PCI | 349 | This enables HiSax support for the Formula-n enter:now PCI |
| 350 | ISDN card. | 350 | ISDN card. |
| 351 | 351 | ||
| 352 | config HISAX_AMD7930 | 352 | config HISAX_AMD7930 |
| 353 | bool "Am7930 (EXPERIMENTAL)" | 353 | bool "Am7930 (EXPERIMENTAL)" |
| 354 | depends on EXPERIMENTAL && (SPARC32 || SPARC64) | 354 | depends on EXPERIMENTAL && SPARC |
| 355 | help | 355 | help |
| 356 | This enables HiSax support for the AMD7930 chips on some SPARCs. | 356 | This enables HiSax support for the AMD7930 chips on some SPARCs. |
| 357 | This code is not finished yet. | 357 | This code is not finished yet. |
diff --git a/drivers/isdn/pcbit/Kconfig b/drivers/isdn/pcbit/Kconfig index f06997faef16..0933881ab0c2 100644 --- a/drivers/isdn/pcbit/Kconfig +++ b/drivers/isdn/pcbit/Kconfig | |||
| @@ -3,7 +3,7 @@ | |||
| 3 | # | 3 | # |
| 4 | config ISDN_DRV_PCBIT | 4 | config ISDN_DRV_PCBIT |
| 5 | tristate "PCBIT-D support" | 5 | tristate "PCBIT-D support" |
| 6 | depends on ISDN_I4L && ISA && (BROKEN || !PPC) | 6 | depends on ISDN_I4L && ISA && (BROKEN || X86) |
| 7 | help | 7 | help |
| 8 | This enables support for the PCBIT ISDN-card. This card is | 8 | This enables support for the PCBIT ISDN-card. This card is |
| 9 | manufactured in Portugal by Octal. For running this card, | 9 | manufactured in Portugal by Octal. For running this card, |
diff --git a/drivers/md/bitmap.c b/drivers/md/bitmap.c index 51315302a85e..252d55df9642 100644 --- a/drivers/md/bitmap.c +++ b/drivers/md/bitmap.c | |||
| @@ -326,9 +326,9 @@ static int write_page(struct bitmap *bitmap, struct page *page, int wait) | |||
| 326 | } | 326 | } |
| 327 | } | 327 | } |
| 328 | 328 | ||
| 329 | ret = page->mapping->a_ops->prepare_write(NULL, page, 0, PAGE_SIZE); | 329 | ret = page->mapping->a_ops->prepare_write(bitmap->file, page, 0, PAGE_SIZE); |
| 330 | if (!ret) | 330 | if (!ret) |
| 331 | ret = page->mapping->a_ops->commit_write(NULL, page, 0, | 331 | ret = page->mapping->a_ops->commit_write(bitmap->file, page, 0, |
| 332 | PAGE_SIZE); | 332 | PAGE_SIZE); |
| 333 | if (ret) { | 333 | if (ret) { |
| 334 | unlock_page(page); | 334 | unlock_page(page); |
diff --git a/drivers/md/md.c b/drivers/md/md.c index f3fed662f32e..78c7418478d6 100644 --- a/drivers/md/md.c +++ b/drivers/md/md.c | |||
| @@ -3846,11 +3846,20 @@ static int is_mddev_idle(mddev_t *mddev) | |||
| 3846 | curr_events = disk_stat_read(disk, sectors[0]) + | 3846 | curr_events = disk_stat_read(disk, sectors[0]) + |
| 3847 | disk_stat_read(disk, sectors[1]) - | 3847 | disk_stat_read(disk, sectors[1]) - |
| 3848 | atomic_read(&disk->sync_io); | 3848 | atomic_read(&disk->sync_io); |
| 3849 | /* Allow some slack between valud of curr_events and last_events, | 3849 | /* The difference between curr_events and last_events |
| 3850 | * as there are some uninteresting races. | 3850 | * will be affected by any new non-sync IO (making |
| 3851 | * curr_events bigger) and any difference in the amount of | ||
| 3852 | * in-flight syncio (making current_events bigger or smaller) | ||
| 3853 | * The amount in-flight is currently limited to | ||
| 3854 | * 32*64K in raid1/10 and 256*PAGE_SIZE in raid5/6 | ||
| 3855 | * which is at most 4096 sectors. | ||
| 3856 | * These numbers are fairly fragile and should be made | ||
| 3857 | * more robust, probably by enforcing the | ||
| 3858 | * 'window size' that md_do_sync sort-of uses. | ||
| 3859 | * | ||
| 3851 | * Note: the following is an unsigned comparison. | 3860 | * Note: the following is an unsigned comparison. |
| 3852 | */ | 3861 | */ |
| 3853 | if ((curr_events - rdev->last_events + 32) > 64) { | 3862 | if ((curr_events - rdev->last_events + 4096) > 8192) { |
| 3854 | rdev->last_events = curr_events; | 3863 | rdev->last_events = curr_events; |
| 3855 | idle = 0; | 3864 | idle = 0; |
| 3856 | } | 3865 | } |
| @@ -4109,7 +4118,7 @@ static void md_do_sync(mddev_t *mddev) | |||
| 4109 | if (currspeed > sysctl_speed_limit_min) { | 4118 | if (currspeed > sysctl_speed_limit_min) { |
| 4110 | if ((currspeed > sysctl_speed_limit_max) || | 4119 | if ((currspeed > sysctl_speed_limit_max) || |
| 4111 | !is_mddev_idle(mddev)) { | 4120 | !is_mddev_idle(mddev)) { |
| 4112 | msleep(250); | 4121 | msleep(500); |
| 4113 | goto repeat; | 4122 | goto repeat; |
| 4114 | } | 4123 | } |
| 4115 | } | 4124 | } |
diff --git a/drivers/net/au1000_eth.c b/drivers/net/au1000_eth.c index 332e9953c55c..cd0b1dccfb61 100644 --- a/drivers/net/au1000_eth.c +++ b/drivers/net/au1000_eth.c | |||
| @@ -32,6 +32,7 @@ | |||
| 32 | * | 32 | * |
| 33 | */ | 33 | */ |
| 34 | 34 | ||
| 35 | #include <linux/config.h> | ||
| 35 | #include <linux/module.h> | 36 | #include <linux/module.h> |
| 36 | #include <linux/kernel.h> | 37 | #include <linux/kernel.h> |
| 37 | #include <linux/sched.h> | 38 | #include <linux/sched.h> |
diff --git a/drivers/net/e100.c b/drivers/net/e100.c index 7a6aeae2c9fa..22cd04556707 100644 --- a/drivers/net/e100.c +++ b/drivers/net/e100.c | |||
| @@ -156,7 +156,7 @@ | |||
| 156 | 156 | ||
| 157 | #define DRV_NAME "e100" | 157 | #define DRV_NAME "e100" |
| 158 | #define DRV_EXT "-NAPI" | 158 | #define DRV_EXT "-NAPI" |
| 159 | #define DRV_VERSION "3.4.14-k2"DRV_EXT | 159 | #define DRV_VERSION "3.4.14-k4"DRV_EXT |
| 160 | #define DRV_DESCRIPTION "Intel(R) PRO/100 Network Driver" | 160 | #define DRV_DESCRIPTION "Intel(R) PRO/100 Network Driver" |
| 161 | #define DRV_COPYRIGHT "Copyright(c) 1999-2005 Intel Corporation" | 161 | #define DRV_COPYRIGHT "Copyright(c) 1999-2005 Intel Corporation" |
| 162 | #define PFX DRV_NAME ": " | 162 | #define PFX DRV_NAME ": " |
| @@ -903,8 +903,8 @@ static void mdio_write(struct net_device *netdev, int addr, int reg, int data) | |||
| 903 | 903 | ||
| 904 | static void e100_get_defaults(struct nic *nic) | 904 | static void e100_get_defaults(struct nic *nic) |
| 905 | { | 905 | { |
| 906 | struct param_range rfds = { .min = 16, .max = 256, .count = 64 }; | 906 | struct param_range rfds = { .min = 16, .max = 256, .count = 256 }; |
| 907 | struct param_range cbs = { .min = 64, .max = 256, .count = 64 }; | 907 | struct param_range cbs = { .min = 64, .max = 256, .count = 128 }; |
| 908 | 908 | ||
| 909 | pci_read_config_byte(nic->pdev, PCI_REVISION_ID, &nic->rev_id); | 909 | pci_read_config_byte(nic->pdev, PCI_REVISION_ID, &nic->rev_id); |
| 910 | /* MAC type is encoded as rev ID; exception: ICH is treated as 82559 */ | 910 | /* MAC type is encoded as rev ID; exception: ICH is treated as 82559 */ |
| @@ -1007,25 +1007,264 @@ static void e100_configure(struct nic *nic, struct cb *cb, struct sk_buff *skb) | |||
| 1007 | c[16], c[17], c[18], c[19], c[20], c[21], c[22], c[23]); | 1007 | c[16], c[17], c[18], c[19], c[20], c[21], c[22], c[23]); |
| 1008 | } | 1008 | } |
| 1009 | 1009 | ||
| 1010 | /********************************************************/ | ||
| 1011 | /* Micro code for 8086:1229 Rev 8 */ | ||
| 1012 | /********************************************************/ | ||
| 1013 | |||
| 1014 | /* Parameter values for the D101M B-step */ | ||
| 1015 | #define D101M_CPUSAVER_TIMER_DWORD 78 | ||
| 1016 | #define D101M_CPUSAVER_BUNDLE_DWORD 65 | ||
| 1017 | #define D101M_CPUSAVER_MIN_SIZE_DWORD 126 | ||
| 1018 | |||
| 1019 | #define D101M_B_RCVBUNDLE_UCODE \ | ||
| 1020 | {\ | ||
| 1021 | 0x00550215, 0xFFFF0437, 0xFFFFFFFF, 0x06A70789, 0xFFFFFFFF, 0x0558FFFF, \ | ||
| 1022 | 0x000C0001, 0x00101312, 0x000C0008, 0x00380216, \ | ||
| 1023 | 0x0010009C, 0x00204056, 0x002380CC, 0x00380056, \ | ||
| 1024 | 0x0010009C, 0x00244C0B, 0x00000800, 0x00124818, \ | ||
| 1025 | 0x00380438, 0x00000000, 0x00140000, 0x00380555, \ | ||
| 1026 | 0x00308000, 0x00100662, 0x00100561, 0x000E0408, \ | ||
| 1027 | 0x00134861, 0x000C0002, 0x00103093, 0x00308000, \ | ||
| 1028 | 0x00100624, 0x00100561, 0x000E0408, 0x00100861, \ | ||
| 1029 | 0x000C007E, 0x00222C21, 0x000C0002, 0x00103093, \ | ||
| 1030 | 0x00380C7A, 0x00080000, 0x00103090, 0x00380C7A, \ | ||
| 1031 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1032 | 0x0010009C, 0x00244C2D, 0x00010004, 0x00041000, \ | ||
| 1033 | 0x003A0437, 0x00044010, 0x0038078A, 0x00000000, \ | ||
| 1034 | 0x00100099, 0x00206C7A, 0x0010009C, 0x00244C48, \ | ||
| 1035 | 0x00130824, 0x000C0001, 0x00101213, 0x00260C75, \ | ||
| 1036 | 0x00041000, 0x00010004, 0x00130826, 0x000C0006, \ | ||
| 1037 | 0x002206A8, 0x0013C926, 0x00101313, 0x003806A8, \ | ||
| 1038 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1039 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1040 | 0x00080600, 0x00101B10, 0x00050004, 0x00100826, \ | ||
| 1041 | 0x00101210, 0x00380C34, 0x00000000, 0x00000000, \ | ||
| 1042 | 0x0021155B, 0x00100099, 0x00206559, 0x0010009C, \ | ||
| 1043 | 0x00244559, 0x00130836, 0x000C0000, 0x00220C62, \ | ||
| 1044 | 0x000C0001, 0x00101B13, 0x00229C0E, 0x00210C0E, \ | ||
| 1045 | 0x00226C0E, 0x00216C0E, 0x0022FC0E, 0x00215C0E, \ | ||
| 1046 | 0x00214C0E, 0x00380555, 0x00010004, 0x00041000, \ | ||
| 1047 | 0x00278C67, 0x00040800, 0x00018100, 0x003A0437, \ | ||
| 1048 | 0x00130826, 0x000C0001, 0x00220559, 0x00101313, \ | ||
| 1049 | 0x00380559, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1050 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1051 | 0x00000000, 0x00130831, 0x0010090B, 0x00124813, \ | ||
| 1052 | 0x000CFF80, 0x002606AB, 0x00041000, 0x00010004, \ | ||
| 1053 | 0x003806A8, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1054 | } | ||
| 1055 | |||
| 1056 | /********************************************************/ | ||
| 1057 | /* Micro code for 8086:1229 Rev 9 */ | ||
| 1058 | /********************************************************/ | ||
| 1059 | |||
| 1060 | /* Parameter values for the D101S */ | ||
| 1061 | #define D101S_CPUSAVER_TIMER_DWORD 78 | ||
| 1062 | #define D101S_CPUSAVER_BUNDLE_DWORD 67 | ||
| 1063 | #define D101S_CPUSAVER_MIN_SIZE_DWORD 128 | ||
| 1064 | |||
| 1065 | #define D101S_RCVBUNDLE_UCODE \ | ||
| 1066 | {\ | ||
| 1067 | 0x00550242, 0xFFFF047E, 0xFFFFFFFF, 0x06FF0818, 0xFFFFFFFF, 0x05A6FFFF, \ | ||
| 1068 | 0x000C0001, 0x00101312, 0x000C0008, 0x00380243, \ | ||
| 1069 | 0x0010009C, 0x00204056, 0x002380D0, 0x00380056, \ | ||
| 1070 | 0x0010009C, 0x00244F8B, 0x00000800, 0x00124818, \ | ||
| 1071 | 0x0038047F, 0x00000000, 0x00140000, 0x003805A3, \ | ||
| 1072 | 0x00308000, 0x00100610, 0x00100561, 0x000E0408, \ | ||
| 1073 | 0x00134861, 0x000C0002, 0x00103093, 0x00308000, \ | ||
| 1074 | 0x00100624, 0x00100561, 0x000E0408, 0x00100861, \ | ||
| 1075 | 0x000C007E, 0x00222FA1, 0x000C0002, 0x00103093, \ | ||
| 1076 | 0x00380F90, 0x00080000, 0x00103090, 0x00380F90, \ | ||
| 1077 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1078 | 0x0010009C, 0x00244FAD, 0x00010004, 0x00041000, \ | ||
| 1079 | 0x003A047E, 0x00044010, 0x00380819, 0x00000000, \ | ||
| 1080 | 0x00100099, 0x00206FFD, 0x0010009A, 0x0020AFFD, \ | ||
| 1081 | 0x0010009C, 0x00244FC8, 0x00130824, 0x000C0001, \ | ||
| 1082 | 0x00101213, 0x00260FF7, 0x00041000, 0x00010004, \ | ||
| 1083 | 0x00130826, 0x000C0006, 0x00220700, 0x0013C926, \ | ||
| 1084 | 0x00101313, 0x00380700, 0x00000000, 0x00000000, \ | ||
| 1085 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1086 | 0x00080600, 0x00101B10, 0x00050004, 0x00100826, \ | ||
| 1087 | 0x00101210, 0x00380FB6, 0x00000000, 0x00000000, \ | ||
| 1088 | 0x002115A9, 0x00100099, 0x002065A7, 0x0010009A, \ | ||
| 1089 | 0x0020A5A7, 0x0010009C, 0x002445A7, 0x00130836, \ | ||
| 1090 | 0x000C0000, 0x00220FE4, 0x000C0001, 0x00101B13, \ | ||
| 1091 | 0x00229F8E, 0x00210F8E, 0x00226F8E, 0x00216F8E, \ | ||
| 1092 | 0x0022FF8E, 0x00215F8E, 0x00214F8E, 0x003805A3, \ | ||
| 1093 | 0x00010004, 0x00041000, 0x00278FE9, 0x00040800, \ | ||
| 1094 | 0x00018100, 0x003A047E, 0x00130826, 0x000C0001, \ | ||
| 1095 | 0x002205A7, 0x00101313, 0x003805A7, 0x00000000, \ | ||
| 1096 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1097 | 0x00000000, 0x00000000, 0x00000000, 0x00130831, \ | ||
| 1098 | 0x0010090B, 0x00124813, 0x000CFF80, 0x00260703, \ | ||
| 1099 | 0x00041000, 0x00010004, 0x00380700 \ | ||
| 1100 | } | ||
| 1101 | |||
| 1102 | /********************************************************/ | ||
| 1103 | /* Micro code for the 8086:1229 Rev F/10 */ | ||
| 1104 | /********************************************************/ | ||
| 1105 | |||
| 1106 | /* Parameter values for the D102 E-step */ | ||
| 1107 | #define D102_E_CPUSAVER_TIMER_DWORD 42 | ||
| 1108 | #define D102_E_CPUSAVER_BUNDLE_DWORD 54 | ||
| 1109 | #define D102_E_CPUSAVER_MIN_SIZE_DWORD 46 | ||
| 1110 | |||
| 1111 | #define D102_E_RCVBUNDLE_UCODE \ | ||
| 1112 | {\ | ||
| 1113 | 0x007D028F, 0x0E4204F9, 0x14ED0C85, 0x14FA14E9, 0x0EF70E36, 0x1FFF1FFF, \ | ||
| 1114 | 0x00E014B9, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1115 | 0x00E014BD, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1116 | 0x00E014D5, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1117 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1118 | 0x00E014C1, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1119 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1120 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1121 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1122 | 0x00E014C8, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1123 | 0x00200600, 0x00E014EE, 0x00000000, 0x00000000, \ | ||
| 1124 | 0x0030FF80, 0x00940E46, 0x00038200, 0x00102000, \ | ||
| 1125 | 0x00E00E43, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1126 | 0x00300006, 0x00E014FB, 0x00000000, 0x00000000, \ | ||
| 1127 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1128 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1129 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1130 | 0x00906E41, 0x00800E3C, 0x00E00E39, 0x00000000, \ | ||
| 1131 | 0x00906EFD, 0x00900EFD, 0x00E00EF8, 0x00000000, \ | ||
| 1132 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1133 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1134 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1135 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1136 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1137 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1138 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1139 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1140 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1141 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1142 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1143 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1144 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1145 | 0x00000000, 0x00000000, 0x00000000, 0x00000000, \ | ||
| 1146 | } | ||
| 1147 | |||
| 1010 | static void e100_load_ucode(struct nic *nic, struct cb *cb, struct sk_buff *skb) | 1148 | static void e100_load_ucode(struct nic *nic, struct cb *cb, struct sk_buff *skb) |
| 1011 | { | 1149 | { |
| 1012 | int i; | 1150 | /* *INDENT-OFF* */ |
| 1013 | static const u32 ucode[UCODE_SIZE] = { | 1151 | static struct { |
| 1014 | /* NFS packets are misinterpreted as TCO packets and | 1152 | u32 ucode[UCODE_SIZE + 1]; |
| 1015 | * incorrectly routed to the BMC over SMBus. This | 1153 | u8 mac; |
| 1016 | * microcode patch checks the fragmented IP bit in the | 1154 | u8 timer_dword; |
| 1017 | * NFS/UDP header to distinguish between NFS and TCO. */ | 1155 | u8 bundle_dword; |
| 1018 | 0x0EF70E36, 0x1FFF1FFF, 0x1FFF1FFF, 0x1FFF1FFF, 0x1FFF1FFF, | 1156 | u8 min_size_dword; |
| 1019 | 0x1FFF1FFF, 0x00906E41, 0x00800E3C, 0x00E00E39, 0x00000000, | 1157 | } ucode_opts[] = { |
| 1020 | 0x00906EFD, 0x00900EFD, 0x00E00EF8, | 1158 | { D101M_B_RCVBUNDLE_UCODE, |
| 1021 | }; | 1159 | mac_82559_D101M, |
| 1022 | 1160 | D101M_CPUSAVER_TIMER_DWORD, | |
| 1023 | if(nic->mac == mac_82551_F || nic->mac == mac_82551_10) { | 1161 | D101M_CPUSAVER_BUNDLE_DWORD, |
| 1024 | for(i = 0; i < UCODE_SIZE; i++) | 1162 | D101M_CPUSAVER_MIN_SIZE_DWORD }, |
| 1163 | { D101S_RCVBUNDLE_UCODE, | ||
| 1164 | mac_82559_D101S, | ||
| 1165 | D101S_CPUSAVER_TIMER_DWORD, | ||
| 1166 | D101S_CPUSAVER_BUNDLE_DWORD, | ||
| 1167 | D101S_CPUSAVER_MIN_SIZE_DWORD }, | ||
| 1168 | { D102_E_RCVBUNDLE_UCODE, | ||
| 1169 | mac_82551_F, | ||
| 1170 | D102_E_CPUSAVER_TIMER_DWORD, | ||
| 1171 | D102_E_CPUSAVER_BUNDLE_DWORD, | ||
| 1172 | D102_E_CPUSAVER_MIN_SIZE_DWORD }, | ||
| 1173 | { D102_E_RCVBUNDLE_UCODE, | ||
| 1174 | mac_82551_10, | ||
| 1175 | D102_E_CPUSAVER_TIMER_DWORD, | ||
| 1176 | D102_E_CPUSAVER_BUNDLE_DWORD, | ||
| 1177 | D102_E_CPUSAVER_MIN_SIZE_DWORD }, | ||
| 1178 | { {0}, 0, 0, 0, 0} | ||
| 1179 | }, *opts; | ||
| 1180 | /* *INDENT-ON* */ | ||
| 1181 | |||
| 1182 | /************************************************************************* | ||
| 1183 | * CPUSaver parameters | ||
| 1184 | * | ||
| 1185 | * All CPUSaver parameters are 16-bit literals that are part of a | ||
| 1186 | * "move immediate value" instruction. By changing the value of | ||
| 1187 | * the literal in the instruction before the code is loaded, the | ||
| 1188 | * driver can change the algorithm. | ||
| 1189 | * | ||
| 1190 | * INTDELAY - This loads the dead-man timer with its inital value. | ||
| 1191 | * When this timer expires the interrupt is asserted, and the | ||
| 1192 | * timer is reset each time a new packet is received. (see | ||
| 1193 | * BUNDLEMAX below to set the limit on number of chained packets) | ||
| 1194 | * The current default is 0x600 or 1536. Experiments show that | ||
| 1195 | * the value should probably stay within the 0x200 - 0x1000. | ||
| 1196 | * | ||
| 1197 | * BUNDLEMAX - | ||
| 1198 | * This sets the maximum number of frames that will be bundled. In | ||
| 1199 | * some situations, such as the TCP windowing algorithm, it may be | ||
| 1200 | * better to limit the growth of the bundle size than let it go as | ||
| 1201 | * high as it can, because that could cause too much added latency. | ||
| 1202 | * The default is six, because this is the number of packets in the | ||
| 1203 | * default TCP window size. A value of 1 would make CPUSaver indicate | ||
| 1204 | * an interrupt for every frame received. If you do not want to put | ||
| 1205 | * a limit on the bundle size, set this value to xFFFF. | ||
| 1206 | * | ||
| 1207 | * BUNDLESMALL - | ||
| 1208 | * This contains a bit-mask describing the minimum size frame that | ||
| 1209 | * will be bundled. The default masks the lower 7 bits, which means | ||
| 1210 | * that any frame less than 128 bytes in length will not be bundled, | ||
| 1211 | * but will instead immediately generate an interrupt. This does | ||
| 1212 | * not affect the current bundle in any way. Any frame that is 128 | ||
| 1213 | * bytes or large will be bundled normally. This feature is meant | ||
| 1214 | * to provide immediate indication of ACK frames in a TCP environment. | ||
| 1215 | * Customers were seeing poor performance when a machine with CPUSaver | ||
| 1216 | * enabled was sending but not receiving. The delay introduced when | ||
| 1217 | * the ACKs were received was enough to reduce total throughput, because | ||
| 1218 | * the sender would sit idle until the ACK was finally seen. | ||
| 1219 | * | ||
| 1220 | * The current default is 0xFF80, which masks out the lower 7 bits. | ||
| 1221 | * This means that any frame which is x7F (127) bytes or smaller | ||
| 1222 | * will cause an immediate interrupt. Because this value must be a | ||
| 1223 | * bit mask, there are only a few valid values that can be used. To | ||
| 1224 | * turn this feature off, the driver can write the value xFFFF to the | ||
| 1225 | * lower word of this instruction (in the same way that the other | ||
| 1226 | * parameters are used). Likewise, a value of 0xF800 (2047) would | ||
| 1227 | * cause an interrupt to be generated for every frame, because all | ||
| 1228 | * standard Ethernet frames are <= 2047 bytes in length. | ||
| 1229 | *************************************************************************/ | ||
| 1230 | |||
| 1231 | /* if you wish to disable the ucode functionality, while maintaining the | ||
| 1232 | * workarounds it provides, set the following defines to: | ||
| 1233 | * BUNDLESMALL 0 | ||
| 1234 | * BUNDLEMAX 1 | ||
| 1235 | * INTDELAY 1 | ||
| 1236 | */ | ||
| 1237 | #define BUNDLESMALL 1 | ||
| 1238 | #define BUNDLEMAX (u16)6 | ||
| 1239 | #define INTDELAY (u16)1536 /* 0x600 */ | ||
| 1240 | |||
| 1241 | /* do not load u-code for ICH devices */ | ||
| 1242 | if (nic->flags & ich) | ||
| 1243 | goto noloaducode; | ||
| 1244 | |||
| 1245 | /* Search for ucode match against h/w rev_id */ | ||
| 1246 | for (opts = ucode_opts; opts->mac; opts++) { | ||
| 1247 | int i; | ||
| 1248 | u32 *ucode = opts->ucode; | ||
| 1249 | if (nic->mac != opts->mac) | ||
| 1250 | continue; | ||
| 1251 | |||
| 1252 | /* Insert user-tunable settings */ | ||
| 1253 | ucode[opts->timer_dword] &= 0xFFFF0000; | ||
| 1254 | ucode[opts->timer_dword] |= INTDELAY; | ||
| 1255 | ucode[opts->bundle_dword] &= 0xFFFF0000; | ||
| 1256 | ucode[opts->bundle_dword] |= BUNDLEMAX; | ||
| 1257 | ucode[opts->min_size_dword] &= 0xFFFF0000; | ||
| 1258 | ucode[opts->min_size_dword] |= (BUNDLESMALL) ? 0xFFFF : 0xFF80; | ||
| 1259 | |||
| 1260 | for (i = 0; i < UCODE_SIZE; i++) | ||
| 1025 | cb->u.ucode[i] = cpu_to_le32(ucode[i]); | 1261 | cb->u.ucode[i] = cpu_to_le32(ucode[i]); |
| 1026 | cb->command = cpu_to_le16(cb_ucode); | 1262 | cb->command = cpu_to_le16(cb_ucode); |
| 1027 | } else | 1263 | return; |
| 1028 | cb->command = cpu_to_le16(cb_nop); | 1264 | } |
| 1265 | |||
| 1266 | noloaducode: | ||
| 1267 | cb->command = cpu_to_le16(cb_nop); | ||
| 1029 | } | 1268 | } |
| 1030 | 1269 | ||
| 1031 | static void e100_setup_iaaddr(struct nic *nic, struct cb *cb, | 1270 | static void e100_setup_iaaddr(struct nic *nic, struct cb *cb, |
diff --git a/drivers/net/fec_8xx/Kconfig b/drivers/net/fec_8xx/Kconfig index 94e7a9af8705..a84c232395e3 100644 --- a/drivers/net/fec_8xx/Kconfig +++ b/drivers/net/fec_8xx/Kconfig | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | config FEC_8XX | 1 | config FEC_8XX |
| 2 | tristate "Motorola 8xx FEC driver" | 2 | tristate "Motorola 8xx FEC driver" |
| 3 | depends on NET_ETHERNET && FEC | 3 | depends on NET_ETHERNET && 8xx |
| 4 | select MII | 4 | select MII |
| 5 | 5 | ||
| 6 | config FEC_8XX_GENERIC_PHY | 6 | config FEC_8XX_GENERIC_PHY |
diff --git a/drivers/net/ioc3-eth.c b/drivers/net/ioc3-eth.c index 6a3129bc15a6..9b8295ee06ef 100644 --- a/drivers/net/ioc3-eth.c +++ b/drivers/net/ioc3-eth.c | |||
| @@ -1360,7 +1360,7 @@ static struct pci_driver ioc3_driver = { | |||
| 1360 | 1360 | ||
| 1361 | static int __init ioc3_init_module(void) | 1361 | static int __init ioc3_init_module(void) |
| 1362 | { | 1362 | { |
| 1363 | return pci_module_init(&ioc3_driver); | 1363 | return pci_register_driver(&ioc3_driver); |
| 1364 | } | 1364 | } |
| 1365 | 1365 | ||
| 1366 | static void __exit ioc3_cleanup_module(void) | 1366 | static void __exit ioc3_cleanup_module(void) |
diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c index 159b56a56ef4..14a76f7cf900 100644 --- a/drivers/net/r8169.c +++ b/drivers/net/r8169.c | |||
| @@ -1346,10 +1346,8 @@ rtl8169_init_board(struct pci_dev *pdev, struct net_device **dev_out, | |||
| 1346 | } else { | 1346 | } else { |
| 1347 | if (netif_msg_probe(tp)) { | 1347 | if (netif_msg_probe(tp)) { |
| 1348 | printk(KERN_ERR PFX | 1348 | printk(KERN_ERR PFX |
| 1349 | "Cannot find PowerManagement capability. " | 1349 | "PowerManagement capability not found.\n"); |
| 1350 | "Aborting.\n"); | ||
| 1351 | } | 1350 | } |
| 1352 | goto err_out_mwi; | ||
| 1353 | } | 1351 | } |
| 1354 | 1352 | ||
| 1355 | /* make sure PCI base addr 1 is MMIO */ | 1353 | /* make sure PCI base addr 1 is MMIO */ |
| @@ -2516,7 +2514,7 @@ rtl8169_interrupt(int irq, void *dev_instance, struct pt_regs *regs) | |||
| 2516 | } while (boguscnt > 0); | 2514 | } while (boguscnt > 0); |
| 2517 | 2515 | ||
| 2518 | if (boguscnt <= 0) { | 2516 | if (boguscnt <= 0) { |
| 2519 | if (net_ratelimit() && netif_msg_intr(tp)) { | 2517 | if (netif_msg_intr(tp) && net_ratelimit() ) { |
| 2520 | printk(KERN_WARNING | 2518 | printk(KERN_WARNING |
| 2521 | "%s: Too much work at interrupt!\n", dev->name); | 2519 | "%s: Too much work at interrupt!\n", dev->name); |
| 2522 | } | 2520 | } |
diff --git a/drivers/net/saa9730.h b/drivers/net/saa9730.h index 9e9da6b4080f..a7e9d29a86a7 100644 --- a/drivers/net/saa9730.h +++ b/drivers/net/saa9730.h | |||
| @@ -1,6 +1,7 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * Carsten Langgaard, carstenl@mips.com | 2 | * Copyright (C) 2000, 2005 MIPS Technologies, Inc. All rights reserved. |
| 3 | * Copyright (C) 2000 MIPS Technologies, Inc. All rights reserved. | 3 | * Authors: Carsten Langgaard <carstenl@mips.com> |
| 4 | * Maciej W. Rozycki <macro@mips.com> | ||
| 4 | * | 5 | * |
| 5 | * ######################################################################## | 6 | * ######################################################################## |
| 6 | * | 7 | * |
| @@ -265,6 +266,7 @@ | |||
| 265 | 266 | ||
| 266 | /* The SAA9730 (LAN) controller register map, as seen via the PCI-bus. */ | 267 | /* The SAA9730 (LAN) controller register map, as seen via the PCI-bus. */ |
| 267 | #define SAA9730_LAN_REGS_ADDR 0x20400 | 268 | #define SAA9730_LAN_REGS_ADDR 0x20400 |
| 269 | #define SAA9730_LAN_REGS_SIZE 0x00400 | ||
| 268 | 270 | ||
| 269 | struct lan_saa9730_regmap { | 271 | struct lan_saa9730_regmap { |
| 270 | volatile unsigned int TxBuffA; /* 0x20400 */ | 272 | volatile unsigned int TxBuffA; /* 0x20400 */ |
| @@ -309,6 +311,7 @@ typedef volatile struct lan_saa9730_regmap t_lan_saa9730_regmap; | |||
| 309 | 311 | ||
| 310 | /* The SAA9730 (EVM) controller register map, as seen via the PCI-bus. */ | 312 | /* The SAA9730 (EVM) controller register map, as seen via the PCI-bus. */ |
| 311 | #define SAA9730_EVM_REGS_ADDR 0x02000 | 313 | #define SAA9730_EVM_REGS_ADDR 0x02000 |
| 314 | #define SAA9730_EVM_REGS_SIZE 0x00400 | ||
| 312 | 315 | ||
| 313 | struct evm_saa9730_regmap { | 316 | struct evm_saa9730_regmap { |
| 314 | volatile unsigned int InterruptStatus1; /* 0x2000 */ | 317 | volatile unsigned int InterruptStatus1; /* 0x2000 */ |
| @@ -329,16 +332,32 @@ typedef volatile struct evm_saa9730_regmap t_evm_saa9730_regmap; | |||
| 329 | 332 | ||
| 330 | 333 | ||
| 331 | struct lan_saa9730_private { | 334 | struct lan_saa9730_private { |
| 335 | /* | ||
| 336 | * Rx/Tx packet buffers. | ||
| 337 | * The Rx and Tx packets must be PACKET_SIZE aligned. | ||
| 338 | */ | ||
| 339 | void *buffer_start; | ||
| 340 | unsigned int buffer_size; | ||
| 341 | |||
| 342 | /* | ||
| 343 | * DMA address of beginning of this object, returned | ||
| 344 | * by pci_alloc_consistent(). | ||
| 345 | */ | ||
| 346 | dma_addr_t dma_addr; | ||
| 347 | |||
| 348 | /* Pointer to the associated pci device structure */ | ||
| 349 | struct pci_dev *pci_dev; | ||
| 350 | |||
| 332 | /* Pointer for the SAA9730 LAN controller register set. */ | 351 | /* Pointer for the SAA9730 LAN controller register set. */ |
| 333 | t_lan_saa9730_regmap *lan_saa9730_regs; | 352 | t_lan_saa9730_regmap *lan_saa9730_regs; |
| 334 | 353 | ||
| 335 | /* Pointer to the SAA9730 EVM register. */ | 354 | /* Pointer to the SAA9730 EVM register. */ |
| 336 | t_evm_saa9730_regmap *evm_saa9730_regs; | 355 | t_evm_saa9730_regmap *evm_saa9730_regs; |
| 337 | 356 | ||
| 338 | /* TRUE if the next buffer to write is RxBuffA, FALSE if RxBuffB. */ | ||
| 339 | unsigned char NextRcvToUseIsA; | ||
| 340 | /* Rcv buffer Index. */ | 357 | /* Rcv buffer Index. */ |
| 341 | unsigned char NextRcvPacketIndex; | 358 | unsigned char NextRcvPacketIndex; |
| 359 | /* Next buffer index. */ | ||
| 360 | unsigned char NextRcvBufferIndex; | ||
| 342 | 361 | ||
| 343 | /* Index of next packet to use in that buffer. */ | 362 | /* Index of next packet to use in that buffer. */ |
| 344 | unsigned char NextTxmPacketIndex; | 363 | unsigned char NextTxmPacketIndex; |
| @@ -353,13 +372,8 @@ struct lan_saa9730_private { | |||
| 353 | unsigned char DmaRcvPackets; | 372 | unsigned char DmaRcvPackets; |
| 354 | unsigned char DmaTxmPackets; | 373 | unsigned char DmaTxmPackets; |
| 355 | 374 | ||
| 356 | unsigned char RcvAIndex; /* index into RcvBufferSpace[] for Blk A */ | 375 | void *TxmBuffer[LAN_SAA9730_BUFFERS][LAN_SAA9730_TXM_Q_SIZE]; |
| 357 | unsigned char RcvBIndex; /* index into RcvBufferSpace[] for Blk B */ | 376 | void *RcvBuffer[LAN_SAA9730_BUFFERS][LAN_SAA9730_RCV_Q_SIZE]; |
| 358 | |||
| 359 | unsigned int | ||
| 360 | TxmBuffer[LAN_SAA9730_BUFFERS][LAN_SAA9730_TXM_Q_SIZE]; | ||
| 361 | unsigned int | ||
| 362 | RcvBuffer[LAN_SAA9730_BUFFERS][LAN_SAA9730_RCV_Q_SIZE]; | ||
| 363 | unsigned int TxBufferFree[LAN_SAA9730_BUFFERS]; | 377 | unsigned int TxBufferFree[LAN_SAA9730_BUFFERS]; |
| 364 | 378 | ||
| 365 | unsigned char PhysicalAddress[LAN_SAA9730_CAM_ENTRIES][6]; | 379 | unsigned char PhysicalAddress[LAN_SAA9730_CAM_ENTRIES][6]; |
diff --git a/drivers/net/smc91x.c b/drivers/net/smc91x.c index c91e2e81f131..28bf2e69eb5e 100644 --- a/drivers/net/smc91x.c +++ b/drivers/net/smc91x.c | |||
| @@ -155,6 +155,12 @@ MODULE_LICENSE("GPL"); | |||
| 155 | #define MEMORY_WAIT_TIME 16 | 155 | #define MEMORY_WAIT_TIME 16 |
| 156 | 156 | ||
| 157 | /* | 157 | /* |
| 158 | * The maximum number of processing loops allowed for each call to the | ||
| 159 | * IRQ handler. | ||
| 160 | */ | ||
| 161 | #define MAX_IRQ_LOOPS 8 | ||
| 162 | |||
| 163 | /* | ||
| 158 | * This selects whether TX packets are sent one by one to the SMC91x internal | 164 | * This selects whether TX packets are sent one by one to the SMC91x internal |
| 159 | * memory and throttled until transmission completes. This may prevent | 165 | * memory and throttled until transmission completes. This may prevent |
| 160 | * RX overruns a litle by keeping much of the memory free for RX packets | 166 | * RX overruns a litle by keeping much of the memory free for RX packets |
| @@ -684,7 +690,6 @@ static void smc_hardware_send_pkt(unsigned long data) | |||
| 684 | 690 | ||
| 685 | /* queue the packet for TX */ | 691 | /* queue the packet for TX */ |
| 686 | SMC_SET_MMU_CMD(MC_ENQUEUE); | 692 | SMC_SET_MMU_CMD(MC_ENQUEUE); |
| 687 | SMC_ACK_INT(IM_TX_EMPTY_INT); | ||
| 688 | smc_special_unlock(&lp->lock); | 693 | smc_special_unlock(&lp->lock); |
| 689 | 694 | ||
| 690 | dev->trans_start = jiffies; | 695 | dev->trans_start = jiffies; |
| @@ -1207,6 +1212,7 @@ static void smc_phy_configure(void *data) | |||
| 1207 | smc_phy_check_media(dev, 1); | 1212 | smc_phy_check_media(dev, 1); |
| 1208 | 1213 | ||
| 1209 | smc_phy_configure_exit: | 1214 | smc_phy_configure_exit: |
| 1215 | SMC_SELECT_BANK(2); | ||
| 1210 | spin_unlock_irq(&lp->lock); | 1216 | spin_unlock_irq(&lp->lock); |
| 1211 | lp->work_pending = 0; | 1217 | lp->work_pending = 0; |
| 1212 | } | 1218 | } |
| @@ -1305,7 +1311,7 @@ static irqreturn_t smc_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
| 1305 | SMC_SET_INT_MASK(0); | 1311 | SMC_SET_INT_MASK(0); |
| 1306 | 1312 | ||
| 1307 | /* set a timeout value, so I don't stay here forever */ | 1313 | /* set a timeout value, so I don't stay here forever */ |
| 1308 | timeout = 8; | 1314 | timeout = MAX_IRQ_LOOPS; |
| 1309 | 1315 | ||
| 1310 | do { | 1316 | do { |
| 1311 | status = SMC_GET_INT(); | 1317 | status = SMC_GET_INT(); |
| @@ -1372,10 +1378,13 @@ static irqreturn_t smc_interrupt(int irq, void *dev_id, struct pt_regs *regs) | |||
| 1372 | /* restore register states */ | 1378 | /* restore register states */ |
| 1373 | SMC_SET_PTR(saved_pointer); | 1379 | SMC_SET_PTR(saved_pointer); |
| 1374 | SMC_SET_INT_MASK(mask); | 1380 | SMC_SET_INT_MASK(mask); |
| 1375 | |||
| 1376 | spin_unlock(&lp->lock); | 1381 | spin_unlock(&lp->lock); |
| 1377 | 1382 | ||
| 1378 | DBG(3, "%s: Interrupt done (%d loops)\n", dev->name, 8-timeout); | 1383 | if (timeout == MAX_IRQ_LOOPS) |
| 1384 | PRINTK("%s: spurious interrupt (mask = 0x%02x)\n", | ||
| 1385 | dev->name, mask); | ||
| 1386 | DBG(3, "%s: Interrupt done (%d loops)\n", | ||
| 1387 | dev->name, MAX_IRQ_LOOPS - timeout); | ||
| 1379 | 1388 | ||
| 1380 | /* | 1389 | /* |
| 1381 | * We return IRQ_HANDLED unconditionally here even if there was | 1390 | * We return IRQ_HANDLED unconditionally here even if there was |
diff --git a/drivers/net/wan/hdlc_cisco.c b/drivers/net/wan/hdlc_cisco.c index a01efa6d5c62..1fd04662c4fc 100644 --- a/drivers/net/wan/hdlc_cisco.c +++ b/drivers/net/wan/hdlc_cisco.c | |||
| @@ -192,7 +192,9 @@ static int cisco_rx(struct sk_buff *skb) | |||
| 192 | "uptime %ud%uh%um%us)\n", | 192 | "uptime %ud%uh%um%us)\n", |
| 193 | dev->name, days, hrs, | 193 | dev->name, days, hrs, |
| 194 | min, sec); | 194 | min, sec); |
| 195 | #if 0 | ||
| 195 | netif_carrier_on(dev); | 196 | netif_carrier_on(dev); |
| 197 | #endif | ||
| 196 | hdlc->state.cisco.up = 1; | 198 | hdlc->state.cisco.up = 1; |
| 197 | } | 199 | } |
| 198 | } | 200 | } |
| @@ -225,7 +227,9 @@ static void cisco_timer(unsigned long arg) | |||
| 225 | hdlc->state.cisco.settings.timeout * HZ)) { | 227 | hdlc->state.cisco.settings.timeout * HZ)) { |
| 226 | hdlc->state.cisco.up = 0; | 228 | hdlc->state.cisco.up = 0; |
| 227 | printk(KERN_INFO "%s: Link down\n", dev->name); | 229 | printk(KERN_INFO "%s: Link down\n", dev->name); |
| 230 | #if 0 | ||
| 228 | netif_carrier_off(dev); | 231 | netif_carrier_off(dev); |
| 232 | #endif | ||
| 229 | } | 233 | } |
| 230 | 234 | ||
| 231 | cisco_keepalive_send(dev, CISCO_KEEPALIVE_REQ, | 235 | cisco_keepalive_send(dev, CISCO_KEEPALIVE_REQ, |
| @@ -261,8 +265,10 @@ static void cisco_stop(struct net_device *dev) | |||
| 261 | { | 265 | { |
| 262 | hdlc_device *hdlc = dev_to_hdlc(dev); | 266 | hdlc_device *hdlc = dev_to_hdlc(dev); |
| 263 | del_timer_sync(&hdlc->state.cisco.timer); | 267 | del_timer_sync(&hdlc->state.cisco.timer); |
| 268 | #if 0 | ||
| 264 | if (netif_carrier_ok(dev)) | 269 | if (netif_carrier_ok(dev)) |
| 265 | netif_carrier_off(dev); | 270 | netif_carrier_off(dev); |
| 271 | #endif | ||
| 266 | hdlc->state.cisco.up = 0; | 272 | hdlc->state.cisco.up = 0; |
| 267 | hdlc->state.cisco.request_sent = 0; | 273 | hdlc->state.cisco.request_sent = 0; |
| 268 | } | 274 | } |
diff --git a/drivers/net/wan/hdlc_fr.c b/drivers/net/wan/hdlc_fr.c index e1601d35dced..523afe17564e 100644 --- a/drivers/net/wan/hdlc_fr.c +++ b/drivers/net/wan/hdlc_fr.c | |||
| @@ -545,8 +545,10 @@ static void fr_set_link_state(int reliable, struct net_device *dev) | |||
| 545 | 545 | ||
| 546 | hdlc->state.fr.reliable = reliable; | 546 | hdlc->state.fr.reliable = reliable; |
| 547 | if (reliable) { | 547 | if (reliable) { |
| 548 | #if 0 | ||
| 548 | if (!netif_carrier_ok(dev)) | 549 | if (!netif_carrier_ok(dev)) |
| 549 | netif_carrier_on(dev); | 550 | netif_carrier_on(dev); |
| 551 | #endif | ||
| 550 | 552 | ||
| 551 | hdlc->state.fr.n391cnt = 0; /* Request full status */ | 553 | hdlc->state.fr.n391cnt = 0; /* Request full status */ |
| 552 | hdlc->state.fr.dce_changed = 1; | 554 | hdlc->state.fr.dce_changed = 1; |
| @@ -560,8 +562,10 @@ static void fr_set_link_state(int reliable, struct net_device *dev) | |||
| 560 | } | 562 | } |
| 561 | } | 563 | } |
| 562 | } else { | 564 | } else { |
| 565 | #if 0 | ||
| 563 | if (netif_carrier_ok(dev)) | 566 | if (netif_carrier_ok(dev)) |
| 564 | netif_carrier_off(dev); | 567 | netif_carrier_off(dev); |
| 568 | #endif | ||
| 565 | 569 | ||
| 566 | while (pvc) { /* Deactivate all PVCs */ | 570 | while (pvc) { /* Deactivate all PVCs */ |
| 567 | pvc_carrier(0, pvc); | 571 | pvc_carrier(0, pvc); |
diff --git a/drivers/net/wan/hdlc_generic.c b/drivers/net/wan/hdlc_generic.c index cdd4c09c2d90..46cef8f92133 100644 --- a/drivers/net/wan/hdlc_generic.c +++ b/drivers/net/wan/hdlc_generic.c | |||
| @@ -79,11 +79,13 @@ static void __hdlc_set_carrier_on(struct net_device *dev) | |||
| 79 | hdlc_device *hdlc = dev_to_hdlc(dev); | 79 | hdlc_device *hdlc = dev_to_hdlc(dev); |
| 80 | if (hdlc->proto.start) | 80 | if (hdlc->proto.start) |
| 81 | return hdlc->proto.start(dev); | 81 | return hdlc->proto.start(dev); |
| 82 | #if 0 | ||
| 82 | #ifdef DEBUG_LINK | 83 | #ifdef DEBUG_LINK |
| 83 | if (netif_carrier_ok(dev)) | 84 | if (netif_carrier_ok(dev)) |
| 84 | printk(KERN_ERR "hdlc_set_carrier_on(): already on\n"); | 85 | printk(KERN_ERR "hdlc_set_carrier_on(): already on\n"); |
| 85 | #endif | 86 | #endif |
| 86 | netif_carrier_on(dev); | 87 | netif_carrier_on(dev); |
| 88 | #endif | ||
| 87 | } | 89 | } |
| 88 | 90 | ||
| 89 | 91 | ||
| @@ -94,11 +96,13 @@ static void __hdlc_set_carrier_off(struct net_device *dev) | |||
| 94 | if (hdlc->proto.stop) | 96 | if (hdlc->proto.stop) |
| 95 | return hdlc->proto.stop(dev); | 97 | return hdlc->proto.stop(dev); |
| 96 | 98 | ||
| 99 | #if 0 | ||
| 97 | #ifdef DEBUG_LINK | 100 | #ifdef DEBUG_LINK |
| 98 | if (!netif_carrier_ok(dev)) | 101 | if (!netif_carrier_ok(dev)) |
| 99 | printk(KERN_ERR "hdlc_set_carrier_off(): already off\n"); | 102 | printk(KERN_ERR "hdlc_set_carrier_off(): already off\n"); |
| 100 | #endif | 103 | #endif |
| 101 | netif_carrier_off(dev); | 104 | netif_carrier_off(dev); |
| 105 | #endif | ||
| 102 | } | 106 | } |
| 103 | 107 | ||
| 104 | 108 | ||
| @@ -294,8 +298,10 @@ int register_hdlc_device(struct net_device *dev) | |||
| 294 | if (result != 0) | 298 | if (result != 0) |
| 295 | return -EIO; | 299 | return -EIO; |
| 296 | 300 | ||
| 301 | #if 0 | ||
| 297 | if (netif_carrier_ok(dev)) | 302 | if (netif_carrier_ok(dev)) |
| 298 | netif_carrier_off(dev); /* no carrier until DCD goes up */ | 303 | netif_carrier_off(dev); /* no carrier until DCD goes up */ |
| 304 | #endif | ||
| 299 | 305 | ||
| 300 | return 0; | 306 | return 0; |
| 301 | } | 307 | } |
diff --git a/drivers/net/wireless/hermes.c b/drivers/net/wireless/hermes.c index 579480dad374..346c6febb033 100644 --- a/drivers/net/wireless/hermes.c +++ b/drivers/net/wireless/hermes.c | |||
| @@ -398,7 +398,7 @@ static int hermes_bap_seek(hermes_t *hw, int bap, u16 id, u16 offset) | |||
| 398 | * | 398 | * |
| 399 | * Returns: < 0 on internal failure (errno), 0 on success, > 0 on error from firmware | 399 | * Returns: < 0 on internal failure (errno), 0 on success, > 0 on error from firmware |
| 400 | */ | 400 | */ |
| 401 | int hermes_bap_pread(hermes_t *hw, int bap, void *buf, unsigned len, | 401 | int hermes_bap_pread(hermes_t *hw, int bap, void *buf, int len, |
| 402 | u16 id, u16 offset) | 402 | u16 id, u16 offset) |
| 403 | { | 403 | { |
| 404 | int dreg = bap ? HERMES_DATA1 : HERMES_DATA0; | 404 | int dreg = bap ? HERMES_DATA1 : HERMES_DATA0; |
| @@ -424,7 +424,7 @@ int hermes_bap_pread(hermes_t *hw, int bap, void *buf, unsigned len, | |||
| 424 | * | 424 | * |
| 425 | * Returns: < 0 on internal failure (errno), 0 on success, > 0 on error from firmware | 425 | * Returns: < 0 on internal failure (errno), 0 on success, > 0 on error from firmware |
| 426 | */ | 426 | */ |
| 427 | int hermes_bap_pwrite(hermes_t *hw, int bap, const void *buf, unsigned len, | 427 | int hermes_bap_pwrite(hermes_t *hw, int bap, const void *buf, int len, |
| 428 | u16 id, u16 offset) | 428 | u16 id, u16 offset) |
| 429 | { | 429 | { |
| 430 | int dreg = bap ? HERMES_DATA1 : HERMES_DATA0; | 430 | int dreg = bap ? HERMES_DATA1 : HERMES_DATA0; |
| @@ -450,7 +450,7 @@ int hermes_bap_pwrite(hermes_t *hw, int bap, const void *buf, unsigned len, | |||
| 450 | * | 450 | * |
| 451 | * Returns: < 0 on internal failure (errno), 0 on success, > 0 on error from firmware | 451 | * Returns: < 0 on internal failure (errno), 0 on success, > 0 on error from firmware |
| 452 | */ | 452 | */ |
| 453 | int hermes_bap_pwrite_pad(hermes_t *hw, int bap, const void *buf, unsigned data_len, unsigned len, | 453 | int hermes_bap_pwrite_pad(hermes_t *hw, int bap, const void *buf, unsigned data_len, int len, |
| 454 | u16 id, u16 offset) | 454 | u16 id, u16 offset) |
| 455 | { | 455 | { |
| 456 | int dreg = bap ? HERMES_DATA1 : HERMES_DATA0; | 456 | int dreg = bap ? HERMES_DATA1 : HERMES_DATA0; |
diff --git a/drivers/net/wireless/hermes.h b/drivers/net/wireless/hermes.h index a6bd472d75d4..7644f72a9f4e 100644 --- a/drivers/net/wireless/hermes.h +++ b/drivers/net/wireless/hermes.h | |||
| @@ -372,12 +372,12 @@ int hermes_docmd_wait(hermes_t *hw, u16 cmd, u16 parm0, | |||
| 372 | struct hermes_response *resp); | 372 | struct hermes_response *resp); |
| 373 | int hermes_allocate(hermes_t *hw, u16 size, u16 *fid); | 373 | int hermes_allocate(hermes_t *hw, u16 size, u16 *fid); |
| 374 | 374 | ||
| 375 | int hermes_bap_pread(hermes_t *hw, int bap, void *buf, unsigned len, | 375 | int hermes_bap_pread(hermes_t *hw, int bap, void *buf, int len, |
| 376 | u16 id, u16 offset); | 376 | u16 id, u16 offset); |
| 377 | int hermes_bap_pwrite(hermes_t *hw, int bap, const void *buf, unsigned len, | 377 | int hermes_bap_pwrite(hermes_t *hw, int bap, const void *buf, int len, |
| 378 | u16 id, u16 offset); | 378 | u16 id, u16 offset); |
| 379 | int hermes_bap_pwrite_pad(hermes_t *hw, int bap, const void *buf, | 379 | int hermes_bap_pwrite_pad(hermes_t *hw, int bap, const void *buf, |
| 380 | unsigned data_len, unsigned len, u16 id, u16 offset); | 380 | unsigned data_len, int len, u16 id, u16 offset); |
| 381 | int hermes_read_ltv(hermes_t *hw, int bap, u16 rid, unsigned buflen, | 381 | int hermes_read_ltv(hermes_t *hw, int bap, u16 rid, unsigned buflen, |
| 382 | u16 *length, void *buf); | 382 | u16 *length, void *buf); |
| 383 | int hermes_write_ltv(hermes_t *hw, int bap, u16 rid, | 383 | int hermes_write_ltv(hermes_t *hw, int bap, u16 rid, |
diff --git a/drivers/net/wireless/i82593.h b/drivers/net/wireless/i82593.h index 33acb8add4d6..afac5c7a323d 100644 --- a/drivers/net/wireless/i82593.h +++ b/drivers/net/wireless/i82593.h | |||
| @@ -7,11 +7,16 @@ | |||
| 7 | * | 7 | * |
| 8 | * Copyright 1994, Anders Klemets <klemets@it.kth.se> | 8 | * Copyright 1994, Anders Klemets <klemets@it.kth.se> |
| 9 | * | 9 | * |
| 10 | * This software may be freely distributed for noncommercial purposes | ||
| 11 | * as long as this notice is retained. | ||
| 12 | * | ||
| 13 | * HISTORY | 10 | * HISTORY |
| 14 | * i82593.h,v | 11 | * i82593.h,v |
| 12 | * Revision 1.4 2005/11/4 09:15:00 baroniunas | ||
| 13 | * Modified copyright with permission of author as follows: | ||
| 14 | * | ||
| 15 | * "If I82539.H is the only file with my copyright statement | ||
| 16 | * that is included in the Source Forge project, then you have | ||
| 17 | * my approval to change the copyright statement to be a GPL | ||
| 18 | * license, in the way you proposed on October 10." | ||
| 19 | * | ||
| 15 | * Revision 1.1 1996/07/17 15:23:12 root | 20 | * Revision 1.1 1996/07/17 15:23:12 root |
| 16 | * Initial revision | 21 | * Initial revision |
| 17 | * | 22 | * |
diff --git a/drivers/net/wireless/ipw2100.c b/drivers/net/wireless/ipw2100.c index a2e6214169e9..77d2a21d4cd0 100644 --- a/drivers/net/wireless/ipw2100.c +++ b/drivers/net/wireless/ipw2100.c | |||
| @@ -6344,7 +6344,8 @@ static struct net_device *ipw2100_alloc_device(struct pci_dev *pci_dev, | |||
| 6344 | dev->ethtool_ops = &ipw2100_ethtool_ops; | 6344 | dev->ethtool_ops = &ipw2100_ethtool_ops; |
| 6345 | dev->tx_timeout = ipw2100_tx_timeout; | 6345 | dev->tx_timeout = ipw2100_tx_timeout; |
| 6346 | dev->wireless_handlers = &ipw2100_wx_handler_def; | 6346 | dev->wireless_handlers = &ipw2100_wx_handler_def; |
| 6347 | dev->get_wireless_stats = ipw2100_wx_wireless_stats; | 6347 | priv->wireless_data.ieee80211 = priv->ieee; |
| 6348 | dev->wireless_data = &priv->wireless_data; | ||
| 6348 | dev->set_mac_address = ipw2100_set_address; | 6349 | dev->set_mac_address = ipw2100_set_address; |
| 6349 | dev->watchdog_timeo = 3 * HZ; | 6350 | dev->watchdog_timeo = 3 * HZ; |
| 6350 | dev->irq = 0; | 6351 | dev->irq = 0; |
| @@ -7178,6 +7179,11 @@ static int ipw2100_wx_get_range(struct net_device *dev, | |||
| 7178 | } | 7179 | } |
| 7179 | range->num_frequency = val; | 7180 | range->num_frequency = val; |
| 7180 | 7181 | ||
| 7182 | /* Event capability (kernel + driver) */ | ||
| 7183 | range->event_capa[0] = (IW_EVENT_CAPA_K_0 | | ||
| 7184 | IW_EVENT_CAPA_MASK(SIOCGIWAP)); | ||
| 7185 | range->event_capa[1] = IW_EVENT_CAPA_K_1; | ||
| 7186 | |||
| 7181 | IPW_DEBUG_WX("GET Range\n"); | 7187 | IPW_DEBUG_WX("GET Range\n"); |
| 7182 | 7188 | ||
| 7183 | return 0; | 7189 | return 0; |
| @@ -8446,16 +8452,6 @@ static iw_handler ipw2100_private_handler[] = { | |||
| 8446 | #endif /* CONFIG_IPW2100_MONITOR */ | 8452 | #endif /* CONFIG_IPW2100_MONITOR */ |
| 8447 | }; | 8453 | }; |
| 8448 | 8454 | ||
| 8449 | static struct iw_handler_def ipw2100_wx_handler_def = { | ||
| 8450 | .standard = ipw2100_wx_handlers, | ||
| 8451 | .num_standard = sizeof(ipw2100_wx_handlers) / sizeof(iw_handler), | ||
| 8452 | .num_private = sizeof(ipw2100_private_handler) / sizeof(iw_handler), | ||
| 8453 | .num_private_args = sizeof(ipw2100_private_args) / | ||
| 8454 | sizeof(struct iw_priv_args), | ||
| 8455 | .private = (iw_handler *) ipw2100_private_handler, | ||
| 8456 | .private_args = (struct iw_priv_args *)ipw2100_private_args, | ||
| 8457 | }; | ||
| 8458 | |||
| 8459 | /* | 8455 | /* |
| 8460 | * Get wireless statistics. | 8456 | * Get wireless statistics. |
| 8461 | * Called by /proc/net/wireless | 8457 | * Called by /proc/net/wireless |
| @@ -8597,6 +8593,17 @@ static struct iw_statistics *ipw2100_wx_wireless_stats(struct net_device *dev) | |||
| 8597 | return (struct iw_statistics *)NULL; | 8593 | return (struct iw_statistics *)NULL; |
| 8598 | } | 8594 | } |
| 8599 | 8595 | ||
| 8596 | static struct iw_handler_def ipw2100_wx_handler_def = { | ||
| 8597 | .standard = ipw2100_wx_handlers, | ||
| 8598 | .num_standard = sizeof(ipw2100_wx_handlers) / sizeof(iw_handler), | ||
| 8599 | .num_private = sizeof(ipw2100_private_handler) / sizeof(iw_handler), | ||
| 8600 | .num_private_args = sizeof(ipw2100_private_args) / | ||
| 8601 | sizeof(struct iw_priv_args), | ||
| 8602 | .private = (iw_handler *) ipw2100_private_handler, | ||
| 8603 | .private_args = (struct iw_priv_args *)ipw2100_private_args, | ||
| 8604 | .get_wireless_stats = ipw2100_wx_wireless_stats, | ||
| 8605 | }; | ||
| 8606 | |||
| 8600 | static void ipw2100_wx_event_work(struct ipw2100_priv *priv) | 8607 | static void ipw2100_wx_event_work(struct ipw2100_priv *priv) |
| 8601 | { | 8608 | { |
| 8602 | union iwreq_data wrqu; | 8609 | union iwreq_data wrqu; |
diff --git a/drivers/net/wireless/ipw2100.h b/drivers/net/wireless/ipw2100.h index 140fdf2a0a09..7c65b10bb164 100644 --- a/drivers/net/wireless/ipw2100.h +++ b/drivers/net/wireless/ipw2100.h | |||
| @@ -571,6 +571,8 @@ struct ipw2100_priv { | |||
| 571 | struct net_device *net_dev; | 571 | struct net_device *net_dev; |
| 572 | struct iw_statistics wstats; | 572 | struct iw_statistics wstats; |
| 573 | 573 | ||
| 574 | struct iw_public_data wireless_data; | ||
| 575 | |||
| 574 | struct tasklet_struct irq_tasklet; | 576 | struct tasklet_struct irq_tasklet; |
| 575 | 577 | ||
| 576 | struct workqueue_struct *workqueue; | 578 | struct workqueue_struct *workqueue; |
diff --git a/drivers/net/wireless/ipw2200.c b/drivers/net/wireless/ipw2200.c index b0d195d1721a..5e7c7e944c9d 100644 --- a/drivers/net/wireless/ipw2200.c +++ b/drivers/net/wireless/ipw2200.c | |||
| @@ -1110,8 +1110,7 @@ static struct ipw_fw_error *ipw_alloc_error_log(struct ipw_priv *priv) | |||
| 1110 | error->elem_len = elem_len; | 1110 | error->elem_len = elem_len; |
| 1111 | error->log_len = log_len; | 1111 | error->log_len = log_len; |
| 1112 | error->elem = (struct ipw_error_elem *)error->payload; | 1112 | error->elem = (struct ipw_error_elem *)error->payload; |
| 1113 | error->log = (struct ipw_event *)(error->elem + | 1113 | error->log = (struct ipw_event *)(error->elem + elem_len); |
| 1114 | (sizeof(*error->elem) * elem_len)); | ||
| 1115 | 1114 | ||
| 1116 | ipw_capture_event_log(priv, log_len, error->log); | 1115 | ipw_capture_event_log(priv, log_len, error->log); |
| 1117 | 1116 | ||
| @@ -8926,6 +8925,10 @@ static int ipw_request_direct_scan(struct ipw_priv *priv, char *essid, | |||
| 8926 | struct ipw_scan_request_ext scan; | 8925 | struct ipw_scan_request_ext scan; |
| 8927 | int err = 0, scan_type; | 8926 | int err = 0, scan_type; |
| 8928 | 8927 | ||
| 8928 | if (!(priv->status & STATUS_INIT) || | ||
| 8929 | (priv->status & STATUS_EXIT_PENDING)) | ||
| 8930 | return 0; | ||
| 8931 | |||
| 8929 | down(&priv->sem); | 8932 | down(&priv->sem); |
| 8930 | 8933 | ||
| 8931 | if (priv->status & STATUS_RF_KILL_MASK) { | 8934 | if (priv->status & STATUS_RF_KILL_MASK) { |
diff --git a/drivers/net/wireless/prism54/isl_38xx.c b/drivers/net/wireless/prism54/isl_38xx.c index 109a96d90007..23deee69974b 100644 --- a/drivers/net/wireless/prism54/isl_38xx.c +++ b/drivers/net/wireless/prism54/isl_38xx.c | |||
| @@ -164,12 +164,12 @@ isl38xx_trigger_device(int asleep, void __iomem *device_base) | |||
| 164 | /* assert the Wakeup interrupt in the Device Interrupt Register */ | 164 | /* assert the Wakeup interrupt in the Device Interrupt Register */ |
| 165 | isl38xx_w32_flush(device_base, ISL38XX_DEV_INT_WAKEUP, | 165 | isl38xx_w32_flush(device_base, ISL38XX_DEV_INT_WAKEUP, |
| 166 | ISL38XX_DEV_INT_REG); | 166 | ISL38XX_DEV_INT_REG); |
| 167 | |||
| 168 | #if VERBOSE > SHOW_ERROR_MESSAGES | ||
| 167 | udelay(ISL38XX_WRITEIO_DELAY); | 169 | udelay(ISL38XX_WRITEIO_DELAY); |
| 168 | 170 | ||
| 169 | /* perform another read on the Device Status Register */ | 171 | /* perform another read on the Device Status Register */ |
| 170 | reg = readl(device_base + ISL38XX_CTRL_STAT_REG); | 172 | reg = readl(device_base + ISL38XX_CTRL_STAT_REG); |
| 171 | |||
| 172 | #if VERBOSE > SHOW_ERROR_MESSAGES | ||
| 173 | do_gettimeofday(¤t_time); | 173 | do_gettimeofday(¤t_time); |
| 174 | DEBUG(SHOW_TRACING, "%08li.%08li Device register read %08x\n", | 174 | DEBUG(SHOW_TRACING, "%08li.%08li Device register read %08x\n", |
| 175 | current_time.tv_sec, (long)current_time.tv_usec, reg); | 175 | current_time.tv_sec, (long)current_time.tv_usec, reg); |
diff --git a/drivers/parisc/iosapic.c b/drivers/parisc/iosapic.c index a39fbfef789a..19657efa8dc3 100644 --- a/drivers/parisc/iosapic.c +++ b/drivers/parisc/iosapic.c | |||
| @@ -700,6 +700,28 @@ static unsigned int iosapic_startup_irq(unsigned int irq) | |||
| 700 | return 0; | 700 | return 0; |
| 701 | } | 701 | } |
| 702 | 702 | ||
| 703 | #ifdef CONFIG_SMP | ||
| 704 | static void iosapic_set_affinity_irq(unsigned int irq, cpumask_t dest) | ||
| 705 | { | ||
| 706 | struct vector_info *vi = iosapic_get_vector(irq); | ||
| 707 | u32 d0, d1, dummy_d0; | ||
| 708 | unsigned long flags; | ||
| 709 | |||
| 710 | if (cpu_check_affinity(irq, &dest)) | ||
| 711 | return; | ||
| 712 | |||
| 713 | vi->txn_addr = txn_affinity_addr(irq, first_cpu(dest)); | ||
| 714 | |||
| 715 | spin_lock_irqsave(&iosapic_lock, flags); | ||
| 716 | /* d1 contains the destination CPU, so only want to set that | ||
| 717 | * entry */ | ||
| 718 | iosapic_rd_irt_entry(vi, &d0, &d1); | ||
| 719 | iosapic_set_irt_data(vi, &dummy_d0, &d1); | ||
| 720 | iosapic_wr_irt_entry(vi, d0, d1); | ||
| 721 | spin_unlock_irqrestore(&iosapic_lock, flags); | ||
| 722 | } | ||
| 723 | #endif | ||
| 724 | |||
| 703 | static struct hw_interrupt_type iosapic_interrupt_type = { | 725 | static struct hw_interrupt_type iosapic_interrupt_type = { |
| 704 | .typename = "IO-SAPIC-level", | 726 | .typename = "IO-SAPIC-level", |
| 705 | .startup = iosapic_startup_irq, | 727 | .startup = iosapic_startup_irq, |
| @@ -708,7 +730,9 @@ static struct hw_interrupt_type iosapic_interrupt_type = { | |||
| 708 | .disable = iosapic_disable_irq, | 730 | .disable = iosapic_disable_irq, |
| 709 | .ack = no_ack_irq, | 731 | .ack = no_ack_irq, |
| 710 | .end = iosapic_end_irq, | 732 | .end = iosapic_end_irq, |
| 711 | // .set_affinity = iosapic_set_affinity_irq, | 733 | #ifdef CONFIG_SMP |
| 734 | .set_affinity = iosapic_set_affinity_irq, | ||
| 735 | #endif | ||
| 712 | }; | 736 | }; |
| 713 | 737 | ||
| 714 | int iosapic_fixup_irq(void *isi_obj, struct pci_dev *pcidev) | 738 | int iosapic_fixup_irq(void *isi_obj, struct pci_dev *pcidev) |
diff --git a/drivers/parisc/superio.c b/drivers/parisc/superio.c index bab3bcabcb6e..d14888e149bb 100644 --- a/drivers/parisc/superio.c +++ b/drivers/parisc/superio.c | |||
| @@ -24,6 +24,9 @@ | |||
| 24 | * Major changes to get basic interrupt infrastructure working to | 24 | * Major changes to get basic interrupt infrastructure working to |
| 25 | * hopefully be able to support all SuperIO devices. Currently | 25 | * hopefully be able to support all SuperIO devices. Currently |
| 26 | * works with serial. -- John Marvin <jsm@fc.hp.com> | 26 | * works with serial. -- John Marvin <jsm@fc.hp.com> |
| 27 | * | ||
| 28 | * Converted superio_init() to be a PCI_FIXUP_FINAL callee. | ||
| 29 | * -- Kyle McMartin <kyle@parisc-linux.org> | ||
| 27 | */ | 30 | */ |
| 28 | 31 | ||
| 29 | 32 | ||
| @@ -141,10 +144,10 @@ superio_interrupt(int parent_irq, void *devp, struct pt_regs *regs) | |||
| 141 | } | 144 | } |
| 142 | 145 | ||
| 143 | /* Initialize Super I/O device */ | 146 | /* Initialize Super I/O device */ |
| 144 | 147 | static void | |
| 145 | static void __devinit | 148 | superio_init(struct pci_dev *pcidev) |
| 146 | superio_init(struct superio_device *sio) | ||
| 147 | { | 149 | { |
| 150 | struct superio_device *sio = &sio_dev; | ||
| 148 | struct pci_dev *pdev = sio->lio_pdev; | 151 | struct pci_dev *pdev = sio->lio_pdev; |
| 149 | u16 word; | 152 | u16 word; |
| 150 | 153 | ||
| @@ -160,8 +163,8 @@ superio_init(struct superio_device *sio) | |||
| 160 | /* ...then properly fixup the USB to point at suckyio PIC */ | 163 | /* ...then properly fixup the USB to point at suckyio PIC */ |
| 161 | sio->usb_pdev->irq = superio_fixup_irq(sio->usb_pdev); | 164 | sio->usb_pdev->irq = superio_fixup_irq(sio->usb_pdev); |
| 162 | 165 | ||
| 163 | printk (KERN_INFO "SuperIO: Found NS87560 Legacy I/O device at %s (IRQ %i) \n", | 166 | printk(KERN_INFO "SuperIO: Found NS87560 Legacy I/O device at %s (IRQ %i) \n", |
| 164 | pci_name(pdev),pdev->irq); | 167 | pci_name(pdev), pdev->irq); |
| 165 | 168 | ||
| 166 | pci_read_config_dword (pdev, SIO_SP1BAR, &sio->sp1_base); | 169 | pci_read_config_dword (pdev, SIO_SP1BAR, &sio->sp1_base); |
| 167 | sio->sp1_base &= ~1; | 170 | sio->sp1_base &= ~1; |
| @@ -274,7 +277,7 @@ superio_init(struct superio_device *sio) | |||
| 274 | 277 | ||
| 275 | sio->suckyio_irq_enabled = 1; | 278 | sio->suckyio_irq_enabled = 1; |
| 276 | } | 279 | } |
| 277 | 280 | DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NS, PCI_DEVICE_ID_NS_87560_LIO, superio_init); | |
| 278 | 281 | ||
| 279 | static void superio_disable_irq(unsigned int irq) | 282 | static void superio_disable_irq(unsigned int irq) |
| 280 | { | 283 | { |
| @@ -452,8 +455,10 @@ static void superio_fixup_pci(struct pci_dev *pdev) | |||
| 452 | DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_NS, PCI_DEVICE_ID_NS_87415, superio_fixup_pci); | 455 | DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_NS, PCI_DEVICE_ID_NS_87415, superio_fixup_pci); |
| 453 | 456 | ||
| 454 | 457 | ||
| 455 | static int __devinit superio_probe(struct pci_dev *dev, const struct pci_device_id *id) | 458 | static int __devinit |
| 459 | superio_probe(struct pci_dev *dev, const struct pci_device_id *id) | ||
| 456 | { | 460 | { |
| 461 | struct superio_device *sio = &sio_dev; | ||
| 457 | 462 | ||
| 458 | /* | 463 | /* |
| 459 | ** superio_probe(00:0e.0) ven 0x100b dev 0x2 sv 0x0 sd 0x0 class 0x1018a | 464 | ** superio_probe(00:0e.0) ven 0x100b dev 0x2 sv 0x0 sd 0x0 class 0x1018a |
| @@ -466,7 +471,8 @@ static int __devinit superio_probe(struct pci_dev *dev, const struct pci_device_ | |||
| 466 | dev->subsystem_vendor, dev->subsystem_device, | 471 | dev->subsystem_vendor, dev->subsystem_device, |
| 467 | dev->class); | 472 | dev->class); |
| 468 | 473 | ||
| 469 | superio_init(&sio_dev); | 474 | if (!sio->suckyio_irq_enabled) |
| 475 | BUG(); /* Enabled by PCI_FIXUP_FINAL */ | ||
| 470 | 476 | ||
| 471 | if (dev->device == PCI_DEVICE_ID_NS_87560_LIO) { /* Function 1 */ | 477 | if (dev->device == PCI_DEVICE_ID_NS_87560_LIO) { /* Function 1 */ |
| 472 | superio_parport_init(); | 478 | superio_parport_init(); |
| @@ -481,19 +487,21 @@ static int __devinit superio_probe(struct pci_dev *dev, const struct pci_device_ | |||
| 481 | DBG_INIT("superio_probe: WTF? Fire Extinguisher?\n"); | 487 | DBG_INIT("superio_probe: WTF? Fire Extinguisher?\n"); |
| 482 | } | 488 | } |
| 483 | 489 | ||
| 484 | /* Let appropriate other driver claim this device. */ | 490 | /* Let appropriate other driver claim this device. */ |
| 485 | return -ENODEV; | 491 | return -ENODEV; |
| 486 | } | 492 | } |
| 487 | 493 | ||
| 488 | static struct pci_device_id superio_tbl[] = { | 494 | static struct pci_device_id superio_tbl[] = { |
| 489 | { PCI_VENDOR_ID_NS, PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, | 495 | { PCI_DEVICE(PCI_VENDOR_ID_NS, PCI_DEVICE_ID_NS_87560_LIO) }, |
| 496 | { PCI_DEVICE(PCI_VENDOR_ID_NS, PCI_DEVICE_ID_NS_87560_USB) }, | ||
| 497 | { PCI_DEVICE(PCI_VENDOR_ID_NS, PCI_DEVICE_ID_NS_87415) }, | ||
| 490 | { 0, } | 498 | { 0, } |
| 491 | }; | 499 | }; |
| 492 | 500 | ||
| 493 | static struct pci_driver superio_driver = { | 501 | static struct pci_driver superio_driver = { |
| 494 | .name = "SuperIO", | 502 | .name = "SuperIO", |
| 495 | .id_table = superio_tbl, | 503 | .id_table = superio_tbl, |
| 496 | .probe = superio_probe, | 504 | .probe = superio_probe, |
| 497 | }; | 505 | }; |
| 498 | 506 | ||
| 499 | static int __init superio_modinit(void) | 507 | static int __init superio_modinit(void) |
| @@ -506,6 +514,5 @@ static void __exit superio_exit(void) | |||
| 506 | pci_unregister_driver(&superio_driver); | 514 | pci_unregister_driver(&superio_driver); |
| 507 | } | 515 | } |
| 508 | 516 | ||
| 509 | |||
| 510 | module_init(superio_modinit); | 517 | module_init(superio_modinit); |
| 511 | module_exit(superio_exit); | 518 | module_exit(superio_exit); |
diff --git a/drivers/s390/char/raw3270.c b/drivers/s390/char/raw3270.c index f5b7d360fc10..1026f2bc3185 100644 --- a/drivers/s390/char/raw3270.c +++ b/drivers/s390/char/raw3270.c | |||
| @@ -1179,12 +1179,12 @@ raw3270_create_attributes(struct raw3270 *rp) | |||
| 1179 | //FIXME: check return code | 1179 | //FIXME: check return code |
| 1180 | sysfs_create_group(&rp->cdev->dev.kobj, &raw3270_attr_group); | 1180 | sysfs_create_group(&rp->cdev->dev.kobj, &raw3270_attr_group); |
| 1181 | rp->clttydev = | 1181 | rp->clttydev = |
| 1182 | class_device_create(class3270, | 1182 | class_device_create(class3270, NULL, |
| 1183 | MKDEV(IBM_TTY3270_MAJOR, rp->minor), | 1183 | MKDEV(IBM_TTY3270_MAJOR, rp->minor), |
| 1184 | &rp->cdev->dev, "tty%s", | 1184 | &rp->cdev->dev, "tty%s", |
| 1185 | rp->cdev->dev.bus_id); | 1185 | rp->cdev->dev.bus_id); |
| 1186 | rp->cltubdev = | 1186 | rp->cltubdev = |
| 1187 | class_device_create(class3270, | 1187 | class_device_create(class3270, NULL, |
| 1188 | MKDEV(IBM_FS3270_MAJOR, rp->minor), | 1188 | MKDEV(IBM_FS3270_MAJOR, rp->minor), |
| 1189 | &rp->cdev->dev, "tub%s", | 1189 | &rp->cdev->dev, "tub%s", |
| 1190 | rp->cdev->dev.bus_id); | 1190 | rp->cdev->dev.bus_id); |
diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig index 84c42c44e04d..20dd85a77813 100644 --- a/drivers/scsi/Kconfig +++ b/drivers/scsi/Kconfig | |||
| @@ -497,7 +497,7 @@ config SCSI_ATA_PIIX | |||
| 497 | If unsure, say N. | 497 | If unsure, say N. |
| 498 | 498 | ||
| 499 | config SCSI_SATA_MV | 499 | config SCSI_SATA_MV |
| 500 | tristate "Marvell SATA support" | 500 | tristate "Marvell SATA support (HIGHLY EXPERIMENTAL)" |
| 501 | depends on SCSI_SATA && PCI && EXPERIMENTAL | 501 | depends on SCSI_SATA && PCI && EXPERIMENTAL |
| 502 | help | 502 | help |
| 503 | This option enables support for the Marvell Serial ATA family. | 503 | This option enables support for the Marvell Serial ATA family. |
diff --git a/drivers/scsi/ahci.c b/drivers/scsi/ahci.c index 894e7113e0b3..83467a05dc8e 100644 --- a/drivers/scsi/ahci.c +++ b/drivers/scsi/ahci.c | |||
| @@ -48,7 +48,7 @@ | |||
| 48 | #include <asm/io.h> | 48 | #include <asm/io.h> |
| 49 | 49 | ||
| 50 | #define DRV_NAME "ahci" | 50 | #define DRV_NAME "ahci" |
| 51 | #define DRV_VERSION "1.01" | 51 | #define DRV_VERSION "1.2" |
| 52 | 52 | ||
| 53 | 53 | ||
| 54 | enum { | 54 | enum { |
| @@ -558,23 +558,25 @@ static void ahci_qc_prep(struct ata_queued_cmd *qc) | |||
| 558 | pp->cmd_slot[0].opts |= cpu_to_le32(n_elem << 16); | 558 | pp->cmd_slot[0].opts |= cpu_to_le32(n_elem << 16); |
| 559 | } | 559 | } |
| 560 | 560 | ||
| 561 | static void ahci_intr_error(struct ata_port *ap, u32 irq_stat) | 561 | static void ahci_restart_port(struct ata_port *ap, u32 irq_stat) |
| 562 | { | 562 | { |
| 563 | void __iomem *mmio = ap->host_set->mmio_base; | 563 | void __iomem *mmio = ap->host_set->mmio_base; |
| 564 | void __iomem *port_mmio = ahci_port_base(mmio, ap->port_no); | 564 | void __iomem *port_mmio = ahci_port_base(mmio, ap->port_no); |
| 565 | u32 tmp; | 565 | u32 tmp; |
| 566 | int work; | 566 | int work; |
| 567 | 567 | ||
| 568 | printk(KERN_WARNING "ata%u: port reset, " | 568 | if ((ap->device[0].class != ATA_DEV_ATAPI) || |
| 569 | "p_is %x is %x pis %x cmd %x tf %x ss %x se %x\n", | 569 | ((irq_stat & PORT_IRQ_TF_ERR) == 0)) |
| 570 | ap->id, | 570 | printk(KERN_WARNING "ata%u: port reset, " |
| 571 | irq_stat, | 571 | "p_is %x is %x pis %x cmd %x tf %x ss %x se %x\n", |
| 572 | readl(mmio + HOST_IRQ_STAT), | 572 | ap->id, |
| 573 | readl(port_mmio + PORT_IRQ_STAT), | 573 | irq_stat, |
| 574 | readl(port_mmio + PORT_CMD), | 574 | readl(mmio + HOST_IRQ_STAT), |
| 575 | readl(port_mmio + PORT_TFDATA), | 575 | readl(port_mmio + PORT_IRQ_STAT), |
| 576 | readl(port_mmio + PORT_SCR_STAT), | 576 | readl(port_mmio + PORT_CMD), |
| 577 | readl(port_mmio + PORT_SCR_ERR)); | 577 | readl(port_mmio + PORT_TFDATA), |
| 578 | readl(port_mmio + PORT_SCR_STAT), | ||
| 579 | readl(port_mmio + PORT_SCR_ERR)); | ||
| 578 | 580 | ||
| 579 | /* stop DMA */ | 581 | /* stop DMA */ |
| 580 | tmp = readl(port_mmio + PORT_CMD); | 582 | tmp = readl(port_mmio + PORT_CMD); |
| @@ -632,7 +634,7 @@ static void ahci_eng_timeout(struct ata_port *ap) | |||
| 632 | printk(KERN_ERR "ata%u: BUG: timeout without command\n", | 634 | printk(KERN_ERR "ata%u: BUG: timeout without command\n", |
| 633 | ap->id); | 635 | ap->id); |
| 634 | } else { | 636 | } else { |
| 635 | ahci_intr_error(ap, readl(port_mmio + PORT_IRQ_STAT)); | 637 | ahci_restart_port(ap, readl(port_mmio + PORT_IRQ_STAT)); |
| 636 | 638 | ||
| 637 | /* hack alert! We cannot use the supplied completion | 639 | /* hack alert! We cannot use the supplied completion |
| 638 | * function from inside the ->eh_strategy_handler() thread. | 640 | * function from inside the ->eh_strategy_handler() thread. |
| @@ -677,7 +679,7 @@ static inline int ahci_host_intr(struct ata_port *ap, struct ata_queued_cmd *qc) | |||
| 677 | err_mask = AC_ERR_HOST_BUS; | 679 | err_mask = AC_ERR_HOST_BUS; |
| 678 | 680 | ||
| 679 | /* command processing has stopped due to error; restart */ | 681 | /* command processing has stopped due to error; restart */ |
| 680 | ahci_intr_error(ap, status); | 682 | ahci_restart_port(ap, status); |
| 681 | 683 | ||
| 682 | if (qc) | 684 | if (qc) |
| 683 | ata_qc_complete(qc, err_mask); | 685 | ata_qc_complete(qc, err_mask); |
diff --git a/drivers/scsi/ata_piix.c b/drivers/scsi/ata_piix.c index 855428ff37e9..333d69dd84ef 100644 --- a/drivers/scsi/ata_piix.c +++ b/drivers/scsi/ata_piix.c | |||
| @@ -50,7 +50,7 @@ | |||
| 50 | #include <linux/libata.h> | 50 | #include <linux/libata.h> |
| 51 | 51 | ||
| 52 | #define DRV_NAME "ata_piix" | 52 | #define DRV_NAME "ata_piix" |
| 53 | #define DRV_VERSION "1.04" | 53 | #define DRV_VERSION "1.05" |
| 54 | 54 | ||
| 55 | enum { | 55 | enum { |
| 56 | PIIX_IOCFG = 0x54, /* IDE I/O configuration register */ | 56 | PIIX_IOCFG = 0x54, /* IDE I/O configuration register */ |
diff --git a/drivers/scsi/ide-scsi.c b/drivers/scsi/ide-scsi.c index e1960d69fb90..4cb1f3ed9100 100644 --- a/drivers/scsi/ide-scsi.c +++ b/drivers/scsi/ide-scsi.c | |||
| @@ -784,8 +784,8 @@ static ide_proc_entry_t idescsi_proc[] = { | |||
| 784 | #endif | 784 | #endif |
| 785 | 785 | ||
| 786 | static ide_driver_t idescsi_driver = { | 786 | static ide_driver_t idescsi_driver = { |
| 787 | .owner = THIS_MODULE, | ||
| 788 | .gen_driver = { | 787 | .gen_driver = { |
| 788 | .owner = THIS_MODULE, | ||
| 789 | .name = "ide-scsi", | 789 | .name = "ide-scsi", |
| 790 | .bus = &ide_bus_type, | 790 | .bus = &ide_bus_type, |
| 791 | .probe = ide_scsi_probe, | 791 | .probe = ide_scsi_probe, |
diff --git a/drivers/scsi/libata-core.c b/drivers/scsi/libata-core.c index ba1eb8b38e00..665ae79e1fd6 100644 --- a/drivers/scsi/libata-core.c +++ b/drivers/scsi/libata-core.c | |||
| @@ -1046,6 +1046,30 @@ static unsigned int ata_pio_modes(const struct ata_device *adev) | |||
| 1046 | return modes; | 1046 | return modes; |
| 1047 | } | 1047 | } |
| 1048 | 1048 | ||
| 1049 | static int ata_qc_wait_err(struct ata_queued_cmd *qc, | ||
| 1050 | struct completion *wait) | ||
| 1051 | { | ||
| 1052 | int rc = 0; | ||
| 1053 | |||
| 1054 | if (wait_for_completion_timeout(wait, 30 * HZ) < 1) { | ||
| 1055 | /* timeout handling */ | ||
| 1056 | unsigned int err_mask = ac_err_mask(ata_chk_status(qc->ap)); | ||
| 1057 | |||
| 1058 | if (!err_mask) { | ||
| 1059 | printk(KERN_WARNING "ata%u: slow completion (cmd %x)\n", | ||
| 1060 | qc->ap->id, qc->tf.command); | ||
| 1061 | } else { | ||
| 1062 | printk(KERN_WARNING "ata%u: qc timeout (cmd %x)\n", | ||
| 1063 | qc->ap->id, qc->tf.command); | ||
| 1064 | rc = -EIO; | ||
| 1065 | } | ||
| 1066 | |||
| 1067 | ata_qc_complete(qc, err_mask); | ||
| 1068 | } | ||
| 1069 | |||
| 1070 | return rc; | ||
| 1071 | } | ||
| 1072 | |||
| 1049 | /** | 1073 | /** |
| 1050 | * ata_dev_identify - obtain IDENTIFY x DEVICE page | 1074 | * ata_dev_identify - obtain IDENTIFY x DEVICE page |
| 1051 | * @ap: port on which device we wish to probe resides | 1075 | * @ap: port on which device we wish to probe resides |
| @@ -1125,7 +1149,7 @@ retry: | |||
| 1125 | if (rc) | 1149 | if (rc) |
| 1126 | goto err_out; | 1150 | goto err_out; |
| 1127 | else | 1151 | else |
| 1128 | wait_for_completion(&wait); | 1152 | ata_qc_wait_err(qc, &wait); |
| 1129 | 1153 | ||
| 1130 | spin_lock_irqsave(&ap->host_set->lock, flags); | 1154 | spin_lock_irqsave(&ap->host_set->lock, flags); |
| 1131 | ap->ops->tf_read(ap, &qc->tf); | 1155 | ap->ops->tf_read(ap, &qc->tf); |
| @@ -1570,11 +1594,13 @@ int ata_timing_compute(struct ata_device *adev, unsigned short speed, | |||
| 1570 | 1594 | ||
| 1571 | /* | 1595 | /* |
| 1572 | * Find the mode. | 1596 | * Find the mode. |
| 1573 | */ | 1597 | */ |
| 1574 | 1598 | ||
| 1575 | if (!(s = ata_timing_find_mode(speed))) | 1599 | if (!(s = ata_timing_find_mode(speed))) |
| 1576 | return -EINVAL; | 1600 | return -EINVAL; |
| 1577 | 1601 | ||
| 1602 | memcpy(t, s, sizeof(*s)); | ||
| 1603 | |||
| 1578 | /* | 1604 | /* |
| 1579 | * If the drive is an EIDE drive, it can tell us it needs extended | 1605 | * If the drive is an EIDE drive, it can tell us it needs extended |
| 1580 | * PIO/MW_DMA cycle timing. | 1606 | * PIO/MW_DMA cycle timing. |
| @@ -1595,7 +1621,7 @@ int ata_timing_compute(struct ata_device *adev, unsigned short speed, | |||
| 1595 | * Convert the timing to bus clock counts. | 1621 | * Convert the timing to bus clock counts. |
| 1596 | */ | 1622 | */ |
| 1597 | 1623 | ||
| 1598 | ata_timing_quantize(s, t, T, UT); | 1624 | ata_timing_quantize(t, t, T, UT); |
| 1599 | 1625 | ||
| 1600 | /* | 1626 | /* |
| 1601 | * Even in DMA/UDMA modes we still use PIO access for IDENTIFY, S.M.A.R.T | 1627 | * Even in DMA/UDMA modes we still use PIO access for IDENTIFY, S.M.A.R.T |
| @@ -2267,7 +2293,7 @@ static void ata_dev_set_xfermode(struct ata_port *ap, struct ata_device *dev) | |||
| 2267 | if (rc) | 2293 | if (rc) |
| 2268 | ata_port_disable(ap); | 2294 | ata_port_disable(ap); |
| 2269 | else | 2295 | else |
| 2270 | wait_for_completion(&wait); | 2296 | ata_qc_wait_err(qc, &wait); |
| 2271 | 2297 | ||
| 2272 | DPRINTK("EXIT\n"); | 2298 | DPRINTK("EXIT\n"); |
| 2273 | } | 2299 | } |
| @@ -2315,7 +2341,7 @@ static void ata_dev_reread_id(struct ata_port *ap, struct ata_device *dev) | |||
| 2315 | if (rc) | 2341 | if (rc) |
| 2316 | goto err_out; | 2342 | goto err_out; |
| 2317 | 2343 | ||
| 2318 | wait_for_completion(&wait); | 2344 | ata_qc_wait_err(qc, &wait); |
| 2319 | 2345 | ||
| 2320 | swap_buf_le16(dev->id, ATA_ID_WORDS); | 2346 | swap_buf_le16(dev->id, ATA_ID_WORDS); |
| 2321 | 2347 | ||
| @@ -2371,7 +2397,7 @@ static void ata_dev_init_params(struct ata_port *ap, struct ata_device *dev) | |||
| 2371 | if (rc) | 2397 | if (rc) |
| 2372 | ata_port_disable(ap); | 2398 | ata_port_disable(ap); |
| 2373 | else | 2399 | else |
| 2374 | wait_for_completion(&wait); | 2400 | ata_qc_wait_err(qc, &wait); |
| 2375 | 2401 | ||
| 2376 | DPRINTK("EXIT\n"); | 2402 | DPRINTK("EXIT\n"); |
| 2377 | } | 2403 | } |
diff --git a/drivers/scsi/libata.h b/drivers/scsi/libata.h index 74a84e0ec0a4..8ebaa694d18e 100644 --- a/drivers/scsi/libata.h +++ b/drivers/scsi/libata.h | |||
| @@ -29,7 +29,7 @@ | |||
| 29 | #define __LIBATA_H__ | 29 | #define __LIBATA_H__ |
| 30 | 30 | ||
| 31 | #define DRV_NAME "libata" | 31 | #define DRV_NAME "libata" |
| 32 | #define DRV_VERSION "1.12" /* must be exactly four chars */ | 32 | #define DRV_VERSION "1.20" /* must be exactly four chars */ |
| 33 | 33 | ||
| 34 | struct ata_scsi_args { | 34 | struct ata_scsi_args { |
| 35 | u16 *id; | 35 | u16 *id; |
diff --git a/drivers/scsi/sata_mv.c b/drivers/scsi/sata_mv.c index 257c128f4aaa..ab7432a5778e 100644 --- a/drivers/scsi/sata_mv.c +++ b/drivers/scsi/sata_mv.c | |||
| @@ -1,7 +1,8 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * sata_mv.c - Marvell SATA support | 2 | * sata_mv.c - Marvell SATA support |
| 3 | * | 3 | * |
| 4 | * Copyright 2005: EMC Corporation, all rights reserved. | 4 | * Copyright 2005: EMC Corporation, all rights reserved. |
| 5 | * Copyright 2005 Red Hat, Inc. All rights reserved. | ||
| 5 | * | 6 | * |
| 6 | * Please ALWAYS copy linux-ide@vger.kernel.org on emails. | 7 | * Please ALWAYS copy linux-ide@vger.kernel.org on emails. |
| 7 | * | 8 | * |
| @@ -36,7 +37,7 @@ | |||
| 36 | #include <asm/io.h> | 37 | #include <asm/io.h> |
| 37 | 38 | ||
| 38 | #define DRV_NAME "sata_mv" | 39 | #define DRV_NAME "sata_mv" |
| 39 | #define DRV_VERSION "0.25" | 40 | #define DRV_VERSION "0.5" |
| 40 | 41 | ||
| 41 | enum { | 42 | enum { |
| 42 | /* BAR's are enumerated in terms of pci_resource_start() terms */ | 43 | /* BAR's are enumerated in terms of pci_resource_start() terms */ |
| @@ -50,6 +51,9 @@ enum { | |||
| 50 | MV_PCI_REG_BASE = 0, | 51 | MV_PCI_REG_BASE = 0, |
| 51 | MV_IRQ_COAL_REG_BASE = 0x18000, /* 6xxx part only */ | 52 | MV_IRQ_COAL_REG_BASE = 0x18000, /* 6xxx part only */ |
| 52 | MV_SATAHC0_REG_BASE = 0x20000, | 53 | MV_SATAHC0_REG_BASE = 0x20000, |
| 54 | MV_FLASH_CTL = 0x1046c, | ||
| 55 | MV_GPIO_PORT_CTL = 0x104f0, | ||
| 56 | MV_RESET_CFG = 0x180d8, | ||
| 53 | 57 | ||
| 54 | MV_PCI_REG_SZ = MV_MAJOR_REG_AREA_SZ, | 58 | MV_PCI_REG_SZ = MV_MAJOR_REG_AREA_SZ, |
| 55 | MV_SATAHC_REG_SZ = MV_MAJOR_REG_AREA_SZ, | 59 | MV_SATAHC_REG_SZ = MV_MAJOR_REG_AREA_SZ, |
| @@ -72,11 +76,6 @@ enum { | |||
| 72 | MV_SG_TBL_SZ = (16 * MV_MAX_SG_CT), | 76 | MV_SG_TBL_SZ = (16 * MV_MAX_SG_CT), |
| 73 | MV_PORT_PRIV_DMA_SZ = (MV_CRQB_Q_SZ + MV_CRPB_Q_SZ + MV_SG_TBL_SZ), | 77 | MV_PORT_PRIV_DMA_SZ = (MV_CRQB_Q_SZ + MV_CRPB_Q_SZ + MV_SG_TBL_SZ), |
| 74 | 78 | ||
| 75 | /* Our DMA boundary is determined by an ePRD being unable to handle | ||
| 76 | * anything larger than 64KB | ||
| 77 | */ | ||
| 78 | MV_DMA_BOUNDARY = 0xffffU, | ||
| 79 | |||
| 80 | MV_PORTS_PER_HC = 4, | 79 | MV_PORTS_PER_HC = 4, |
| 81 | /* == (port / MV_PORTS_PER_HC) to determine HC from 0-7 port */ | 80 | /* == (port / MV_PORTS_PER_HC) to determine HC from 0-7 port */ |
| 82 | MV_PORT_HC_SHIFT = 2, | 81 | MV_PORT_HC_SHIFT = 2, |
| @@ -86,16 +85,9 @@ enum { | |||
| 86 | /* Host Flags */ | 85 | /* Host Flags */ |
| 87 | MV_FLAG_DUAL_HC = (1 << 30), /* two SATA Host Controllers */ | 86 | MV_FLAG_DUAL_HC = (1 << 30), /* two SATA Host Controllers */ |
| 88 | MV_FLAG_IRQ_COALESCE = (1 << 29), /* IRQ coalescing capability */ | 87 | MV_FLAG_IRQ_COALESCE = (1 << 29), /* IRQ coalescing capability */ |
| 89 | MV_FLAG_GLBL_SFT_RST = (1 << 28), /* Global Soft Reset support */ | ||
| 90 | MV_COMMON_FLAGS = (ATA_FLAG_SATA | ATA_FLAG_NO_LEGACY | | 88 | MV_COMMON_FLAGS = (ATA_FLAG_SATA | ATA_FLAG_NO_LEGACY | |
| 91 | ATA_FLAG_SATA_RESET | ATA_FLAG_MMIO), | 89 | ATA_FLAG_SATA_RESET | ATA_FLAG_MMIO), |
| 92 | MV_6XXX_FLAGS = (MV_FLAG_IRQ_COALESCE | | 90 | MV_6XXX_FLAGS = MV_FLAG_IRQ_COALESCE, |
| 93 | MV_FLAG_GLBL_SFT_RST), | ||
| 94 | |||
| 95 | chip_504x = 0, | ||
| 96 | chip_508x = 1, | ||
| 97 | chip_604x = 2, | ||
| 98 | chip_608x = 3, | ||
| 99 | 91 | ||
| 100 | CRQB_FLAG_READ = (1 << 0), | 92 | CRQB_FLAG_READ = (1 << 0), |
| 101 | CRQB_TAG_SHIFT = 1, | 93 | CRQB_TAG_SHIFT = 1, |
| @@ -116,8 +108,19 @@ enum { | |||
| 116 | PCI_MASTER_EMPTY = (1 << 3), | 108 | PCI_MASTER_EMPTY = (1 << 3), |
| 117 | GLOB_SFT_RST = (1 << 4), | 109 | GLOB_SFT_RST = (1 << 4), |
| 118 | 110 | ||
| 119 | PCI_IRQ_CAUSE_OFS = 0x1d58, | 111 | MV_PCI_MODE = 0xd00, |
| 120 | PCI_IRQ_MASK_OFS = 0x1d5c, | 112 | MV_PCI_EXP_ROM_BAR_CTL = 0xd2c, |
| 113 | MV_PCI_DISC_TIMER = 0xd04, | ||
| 114 | MV_PCI_MSI_TRIGGER = 0xc38, | ||
| 115 | MV_PCI_SERR_MASK = 0xc28, | ||
| 116 | MV_PCI_XBAR_TMOUT = 0x1d04, | ||
| 117 | MV_PCI_ERR_LOW_ADDRESS = 0x1d40, | ||
| 118 | MV_PCI_ERR_HIGH_ADDRESS = 0x1d44, | ||
| 119 | MV_PCI_ERR_ATTRIBUTE = 0x1d48, | ||
| 120 | MV_PCI_ERR_COMMAND = 0x1d50, | ||
| 121 | |||
| 122 | PCI_IRQ_CAUSE_OFS = 0x1d58, | ||
| 123 | PCI_IRQ_MASK_OFS = 0x1d5c, | ||
| 121 | PCI_UNMASK_ALL_IRQS = 0x7fffff, /* bits 22-0 */ | 124 | PCI_UNMASK_ALL_IRQS = 0x7fffff, /* bits 22-0 */ |
| 122 | 125 | ||
| 123 | HC_MAIN_IRQ_CAUSE_OFS = 0x1d60, | 126 | HC_MAIN_IRQ_CAUSE_OFS = 0x1d60, |
| @@ -134,7 +137,7 @@ enum { | |||
| 134 | SELF_INT = (1 << 23), | 137 | SELF_INT = (1 << 23), |
| 135 | TWSI_INT = (1 << 24), | 138 | TWSI_INT = (1 << 24), |
| 136 | HC_MAIN_RSVD = (0x7f << 25), /* bits 31-25 */ | 139 | HC_MAIN_RSVD = (0x7f << 25), /* bits 31-25 */ |
| 137 | HC_MAIN_MASKED_IRQS = (TRAN_LO_DONE | TRAN_HI_DONE | | 140 | HC_MAIN_MASKED_IRQS = (TRAN_LO_DONE | TRAN_HI_DONE | |
| 138 | PORTS_0_7_COAL_DONE | GPIO_INT | TWSI_INT | | 141 | PORTS_0_7_COAL_DONE | GPIO_INT | TWSI_INT | |
| 139 | HC_MAIN_RSVD), | 142 | HC_MAIN_RSVD), |
| 140 | 143 | ||
| @@ -153,6 +156,15 @@ enum { | |||
| 153 | /* SATA registers */ | 156 | /* SATA registers */ |
| 154 | SATA_STATUS_OFS = 0x300, /* ctrl, err regs follow status */ | 157 | SATA_STATUS_OFS = 0x300, /* ctrl, err regs follow status */ |
| 155 | SATA_ACTIVE_OFS = 0x350, | 158 | SATA_ACTIVE_OFS = 0x350, |
| 159 | PHY_MODE3 = 0x310, | ||
| 160 | PHY_MODE4 = 0x314, | ||
| 161 | PHY_MODE2 = 0x330, | ||
| 162 | MV5_PHY_MODE = 0x74, | ||
| 163 | MV5_LT_MODE = 0x30, | ||
| 164 | MV5_PHY_CTL = 0x0C, | ||
| 165 | SATA_INTERFACE_CTL = 0x050, | ||
| 166 | |||
| 167 | MV_M2_PREAMP_MASK = 0x7e0, | ||
| 156 | 168 | ||
| 157 | /* Port registers */ | 169 | /* Port registers */ |
| 158 | EDMA_CFG_OFS = 0, | 170 | EDMA_CFG_OFS = 0, |
| @@ -182,17 +194,16 @@ enum { | |||
| 182 | EDMA_ERR_LNK_CTRL_TX = (0x1f << 21), | 194 | EDMA_ERR_LNK_CTRL_TX = (0x1f << 21), |
| 183 | EDMA_ERR_LNK_DATA_TX = (0x1f << 26), | 195 | EDMA_ERR_LNK_DATA_TX = (0x1f << 26), |
| 184 | EDMA_ERR_TRANS_PROTO = (1 << 31), | 196 | EDMA_ERR_TRANS_PROTO = (1 << 31), |
| 185 | EDMA_ERR_FATAL = (EDMA_ERR_D_PAR | EDMA_ERR_PRD_PAR | | 197 | EDMA_ERR_FATAL = (EDMA_ERR_D_PAR | EDMA_ERR_PRD_PAR | |
| 186 | EDMA_ERR_DEV_DCON | EDMA_ERR_CRBQ_PAR | | 198 | EDMA_ERR_DEV_DCON | EDMA_ERR_CRBQ_PAR | |
| 187 | EDMA_ERR_CRPB_PAR | EDMA_ERR_INTRL_PAR | | 199 | EDMA_ERR_CRPB_PAR | EDMA_ERR_INTRL_PAR | |
| 188 | EDMA_ERR_IORDY | EDMA_ERR_LNK_CTRL_RX_2 | | 200 | EDMA_ERR_IORDY | EDMA_ERR_LNK_CTRL_RX_2 | |
| 189 | EDMA_ERR_LNK_DATA_RX | | 201 | EDMA_ERR_LNK_DATA_RX | |
| 190 | EDMA_ERR_LNK_DATA_TX | | 202 | EDMA_ERR_LNK_DATA_TX | |
| 191 | EDMA_ERR_TRANS_PROTO), | 203 | EDMA_ERR_TRANS_PROTO), |
| 192 | 204 | ||
| 193 | EDMA_REQ_Q_BASE_HI_OFS = 0x10, | 205 | EDMA_REQ_Q_BASE_HI_OFS = 0x10, |
| 194 | EDMA_REQ_Q_IN_PTR_OFS = 0x14, /* also contains BASE_LO */ | 206 | EDMA_REQ_Q_IN_PTR_OFS = 0x14, /* also contains BASE_LO */ |
| 195 | EDMA_REQ_Q_BASE_LO_MASK = 0xfffffc00U, | ||
| 196 | 207 | ||
| 197 | EDMA_REQ_Q_OUT_PTR_OFS = 0x18, | 208 | EDMA_REQ_Q_OUT_PTR_OFS = 0x18, |
| 198 | EDMA_REQ_Q_PTR_SHIFT = 5, | 209 | EDMA_REQ_Q_PTR_SHIFT = 5, |
| @@ -200,7 +211,6 @@ enum { | |||
| 200 | EDMA_RSP_Q_BASE_HI_OFS = 0x1c, | 211 | EDMA_RSP_Q_BASE_HI_OFS = 0x1c, |
| 201 | EDMA_RSP_Q_IN_PTR_OFS = 0x20, | 212 | EDMA_RSP_Q_IN_PTR_OFS = 0x20, |
| 202 | EDMA_RSP_Q_OUT_PTR_OFS = 0x24, /* also contains BASE_LO */ | 213 | EDMA_RSP_Q_OUT_PTR_OFS = 0x24, /* also contains BASE_LO */ |
| 203 | EDMA_RSP_Q_BASE_LO_MASK = 0xffffff00U, | ||
| 204 | EDMA_RSP_Q_PTR_SHIFT = 3, | 214 | EDMA_RSP_Q_PTR_SHIFT = 3, |
| 205 | 215 | ||
| 206 | EDMA_CMD_OFS = 0x28, | 216 | EDMA_CMD_OFS = 0x28, |
| @@ -208,14 +218,44 @@ enum { | |||
| 208 | EDMA_DS = (1 << 1), | 218 | EDMA_DS = (1 << 1), |
| 209 | ATA_RST = (1 << 2), | 219 | ATA_RST = (1 << 2), |
| 210 | 220 | ||
| 221 | EDMA_IORDY_TMOUT = 0x34, | ||
| 222 | EDMA_ARB_CFG = 0x38, | ||
| 223 | |||
| 211 | /* Host private flags (hp_flags) */ | 224 | /* Host private flags (hp_flags) */ |
| 212 | MV_HP_FLAG_MSI = (1 << 0), | 225 | MV_HP_FLAG_MSI = (1 << 0), |
| 226 | MV_HP_ERRATA_50XXB0 = (1 << 1), | ||
| 227 | MV_HP_ERRATA_50XXB2 = (1 << 2), | ||
| 228 | MV_HP_ERRATA_60X1B2 = (1 << 3), | ||
| 229 | MV_HP_ERRATA_60X1C0 = (1 << 4), | ||
| 230 | MV_HP_50XX = (1 << 5), | ||
| 213 | 231 | ||
| 214 | /* Port private flags (pp_flags) */ | 232 | /* Port private flags (pp_flags) */ |
| 215 | MV_PP_FLAG_EDMA_EN = (1 << 0), | 233 | MV_PP_FLAG_EDMA_EN = (1 << 0), |
| 216 | MV_PP_FLAG_EDMA_DS_ACT = (1 << 1), | 234 | MV_PP_FLAG_EDMA_DS_ACT = (1 << 1), |
| 217 | }; | 235 | }; |
| 218 | 236 | ||
| 237 | #define IS_50XX(hpriv) ((hpriv)->hp_flags & MV_HP_50XX) | ||
| 238 | #define IS_60XX(hpriv) (((hpriv)->hp_flags & MV_HP_50XX) == 0) | ||
| 239 | |||
| 240 | enum { | ||
| 241 | /* Our DMA boundary is determined by an ePRD being unable to handle | ||
| 242 | * anything larger than 64KB | ||
| 243 | */ | ||
| 244 | MV_DMA_BOUNDARY = 0xffffU, | ||
| 245 | |||
| 246 | EDMA_REQ_Q_BASE_LO_MASK = 0xfffffc00U, | ||
| 247 | |||
| 248 | EDMA_RSP_Q_BASE_LO_MASK = 0xffffff00U, | ||
| 249 | }; | ||
| 250 | |||
| 251 | enum chip_type { | ||
| 252 | chip_504x, | ||
| 253 | chip_508x, | ||
| 254 | chip_5080, | ||
| 255 | chip_604x, | ||
| 256 | chip_608x, | ||
| 257 | }; | ||
| 258 | |||
| 219 | /* Command ReQuest Block: 32B */ | 259 | /* Command ReQuest Block: 32B */ |
| 220 | struct mv_crqb { | 260 | struct mv_crqb { |
| 221 | u32 sg_addr; | 261 | u32 sg_addr; |
| @@ -252,14 +292,37 @@ struct mv_port_priv { | |||
| 252 | u32 pp_flags; | 292 | u32 pp_flags; |
| 253 | }; | 293 | }; |
| 254 | 294 | ||
| 295 | struct mv_port_signal { | ||
| 296 | u32 amps; | ||
| 297 | u32 pre; | ||
| 298 | }; | ||
| 299 | |||
| 300 | struct mv_host_priv; | ||
| 301 | struct mv_hw_ops { | ||
| 302 | void (*phy_errata)(struct mv_host_priv *hpriv, void __iomem *mmio, | ||
| 303 | unsigned int port); | ||
| 304 | void (*enable_leds)(struct mv_host_priv *hpriv, void __iomem *mmio); | ||
| 305 | void (*read_preamp)(struct mv_host_priv *hpriv, int idx, | ||
| 306 | void __iomem *mmio); | ||
| 307 | int (*reset_hc)(struct mv_host_priv *hpriv, void __iomem *mmio, | ||
| 308 | unsigned int n_hc); | ||
| 309 | void (*reset_flash)(struct mv_host_priv *hpriv, void __iomem *mmio); | ||
| 310 | void (*reset_bus)(struct pci_dev *pdev, void __iomem *mmio); | ||
| 311 | }; | ||
| 312 | |||
| 255 | struct mv_host_priv { | 313 | struct mv_host_priv { |
| 256 | u32 hp_flags; | 314 | u32 hp_flags; |
| 315 | struct mv_port_signal signal[8]; | ||
| 316 | const struct mv_hw_ops *ops; | ||
| 257 | }; | 317 | }; |
| 258 | 318 | ||
| 259 | static void mv_irq_clear(struct ata_port *ap); | 319 | static void mv_irq_clear(struct ata_port *ap); |
| 260 | static u32 mv_scr_read(struct ata_port *ap, unsigned int sc_reg_in); | 320 | static u32 mv_scr_read(struct ata_port *ap, unsigned int sc_reg_in); |
| 261 | static void mv_scr_write(struct ata_port *ap, unsigned int sc_reg_in, u32 val); | 321 | static void mv_scr_write(struct ata_port *ap, unsigned int sc_reg_in, u32 val); |
| 322 | static u32 mv5_scr_read(struct ata_port *ap, unsigned int sc_reg_in); | ||
| 323 | static void mv5_scr_write(struct ata_port *ap, unsigned int sc_reg_in, u32 val); | ||
| 262 | static void mv_phy_reset(struct ata_port *ap); | 324 | static void mv_phy_reset(struct ata_port *ap); |
| 325 | static void __mv_phy_reset(struct ata_port *ap, int can_sleep); | ||
| 263 | static void mv_host_stop(struct ata_host_set *host_set); | 326 | static void mv_host_stop(struct ata_host_set *host_set); |
| 264 | static int mv_port_start(struct ata_port *ap); | 327 | static int mv_port_start(struct ata_port *ap); |
| 265 | static void mv_port_stop(struct ata_port *ap); | 328 | static void mv_port_stop(struct ata_port *ap); |
| @@ -270,6 +333,29 @@ static irqreturn_t mv_interrupt(int irq, void *dev_instance, | |||
| 270 | static void mv_eng_timeout(struct ata_port *ap); | 333 | static void mv_eng_timeout(struct ata_port *ap); |
| 271 | static int mv_init_one(struct pci_dev *pdev, const struct pci_device_id *ent); | 334 | static int mv_init_one(struct pci_dev *pdev, const struct pci_device_id *ent); |
| 272 | 335 | ||
| 336 | static void mv5_phy_errata(struct mv_host_priv *hpriv, void __iomem *mmio, | ||
| 337 | unsigned int port); | ||
| 338 | static void mv5_enable_leds(struct mv_host_priv *hpriv, void __iomem *mmio); | ||
| 339 | static void mv5_read_preamp(struct mv_host_priv *hpriv, int idx, | ||
| 340 | void __iomem *mmio); | ||
| 341 | static int mv5_reset_hc(struct mv_host_priv *hpriv, void __iomem *mmio, | ||
| 342 | unsigned int n_hc); | ||
| 343 | static void mv5_reset_flash(struct mv_host_priv *hpriv, void __iomem *mmio); | ||
| 344 | static void mv5_reset_bus(struct pci_dev *pdev, void __iomem *mmio); | ||
| 345 | |||
| 346 | static void mv6_phy_errata(struct mv_host_priv *hpriv, void __iomem *mmio, | ||
| 347 | unsigned int port); | ||
| 348 | static void mv6_enable_leds(struct mv_host_priv *hpriv, void __iomem *mmio); | ||
| 349 | static void mv6_read_preamp(struct mv_host_priv *hpriv, int idx, | ||
| 350 | void __iomem *mmio); | ||
| 351 | static int mv6_reset_hc(struct mv_host_priv *hpriv, void __iomem *mmio, | ||
| 352 | unsigned int n_hc); | ||
| 353 | static void mv6_reset_flash(struct mv_host_priv *hpriv, void __iomem *mmio); | ||
| 354 | static void mv_reset_pci_bus(struct pci_dev *pdev, void __iomem *mmio); | ||
| 355 | static void mv_channel_reset(struct mv_host_priv *hpriv, void __iomem *mmio, | ||
| 356 | unsigned int port_no); | ||
| 357 | static void mv_stop_and_reset(struct ata_port *ap); | ||
| 358 | |||
| 273 | static struct scsi_host_template mv_sht = { | 359 | static struct scsi_host_template mv_sht = { |
| 274 | .module = THIS_MODULE, | 360 | .module = THIS_MODULE, |
| 275 | .name = DRV_NAME, | 361 | .name = DRV_NAME, |
| @@ -278,7 +364,7 @@ static struct scsi_host_template mv_sht = { | |||
| 278 | .eh_strategy_handler = ata_scsi_error, | 364 | .eh_strategy_handler = ata_scsi_error, |
| 279 | .can_queue = MV_USE_Q_DEPTH, | 365 | .can_queue = MV_USE_Q_DEPTH, |
| 280 | .this_id = ATA_SHT_THIS_ID, | 366 | .this_id = ATA_SHT_THIS_ID, |
| 281 | .sg_tablesize = MV_MAX_SG_CT, | 367 | .sg_tablesize = MV_MAX_SG_CT / 2, |
| 282 | .max_sectors = ATA_MAX_SECTORS, | 368 | .max_sectors = ATA_MAX_SECTORS, |
| 283 | .cmd_per_lun = ATA_SHT_CMD_PER_LUN, | 369 | .cmd_per_lun = ATA_SHT_CMD_PER_LUN, |
| 284 | .emulated = ATA_SHT_EMULATED, | 370 | .emulated = ATA_SHT_EMULATED, |
| @@ -290,7 +376,34 @@ static struct scsi_host_template mv_sht = { | |||
| 290 | .ordered_flush = 1, | 376 | .ordered_flush = 1, |
| 291 | }; | 377 | }; |
| 292 | 378 | ||
| 293 | static const struct ata_port_operations mv_ops = { | 379 | static const struct ata_port_operations mv5_ops = { |
| 380 | .port_disable = ata_port_disable, | ||
| 381 | |||
| 382 | .tf_load = ata_tf_load, | ||
| 383 | .tf_read = ata_tf_read, | ||
| 384 | .check_status = ata_check_status, | ||
| 385 | .exec_command = ata_exec_command, | ||
| 386 | .dev_select = ata_std_dev_select, | ||
| 387 | |||
| 388 | .phy_reset = mv_phy_reset, | ||
| 389 | |||
| 390 | .qc_prep = mv_qc_prep, | ||
| 391 | .qc_issue = mv_qc_issue, | ||
| 392 | |||
| 393 | .eng_timeout = mv_eng_timeout, | ||
| 394 | |||
| 395 | .irq_handler = mv_interrupt, | ||
| 396 | .irq_clear = mv_irq_clear, | ||
| 397 | |||
| 398 | .scr_read = mv5_scr_read, | ||
| 399 | .scr_write = mv5_scr_write, | ||
| 400 | |||
| 401 | .port_start = mv_port_start, | ||
| 402 | .port_stop = mv_port_stop, | ||
| 403 | .host_stop = mv_host_stop, | ||
| 404 | }; | ||
| 405 | |||
| 406 | static const struct ata_port_operations mv6_ops = { | ||
| 294 | .port_disable = ata_port_disable, | 407 | .port_disable = ata_port_disable, |
| 295 | 408 | ||
| 296 | .tf_load = ata_tf_load, | 409 | .tf_load = ata_tf_load, |
| @@ -322,37 +435,44 @@ static struct ata_port_info mv_port_info[] = { | |||
| 322 | .sht = &mv_sht, | 435 | .sht = &mv_sht, |
| 323 | .host_flags = MV_COMMON_FLAGS, | 436 | .host_flags = MV_COMMON_FLAGS, |
| 324 | .pio_mask = 0x1f, /* pio0-4 */ | 437 | .pio_mask = 0x1f, /* pio0-4 */ |
| 325 | .udma_mask = 0, /* 0x7f (udma0-6 disabled for now) */ | 438 | .udma_mask = 0x7f, /* udma0-6 */ |
| 326 | .port_ops = &mv_ops, | 439 | .port_ops = &mv5_ops, |
| 327 | }, | 440 | }, |
| 328 | { /* chip_508x */ | 441 | { /* chip_508x */ |
| 329 | .sht = &mv_sht, | 442 | .sht = &mv_sht, |
| 330 | .host_flags = (MV_COMMON_FLAGS | MV_FLAG_DUAL_HC), | 443 | .host_flags = (MV_COMMON_FLAGS | MV_FLAG_DUAL_HC), |
| 331 | .pio_mask = 0x1f, /* pio0-4 */ | 444 | .pio_mask = 0x1f, /* pio0-4 */ |
| 332 | .udma_mask = 0, /* 0x7f (udma0-6 disabled for now) */ | 445 | .udma_mask = 0x7f, /* udma0-6 */ |
| 333 | .port_ops = &mv_ops, | 446 | .port_ops = &mv5_ops, |
| 447 | }, | ||
| 448 | { /* chip_5080 */ | ||
| 449 | .sht = &mv_sht, | ||
| 450 | .host_flags = (MV_COMMON_FLAGS | MV_FLAG_DUAL_HC), | ||
| 451 | .pio_mask = 0x1f, /* pio0-4 */ | ||
| 452 | .udma_mask = 0x7f, /* udma0-6 */ | ||
| 453 | .port_ops = &mv5_ops, | ||
| 334 | }, | 454 | }, |
| 335 | { /* chip_604x */ | 455 | { /* chip_604x */ |
| 336 | .sht = &mv_sht, | 456 | .sht = &mv_sht, |
| 337 | .host_flags = (MV_COMMON_FLAGS | MV_6XXX_FLAGS), | 457 | .host_flags = (MV_COMMON_FLAGS | MV_6XXX_FLAGS), |
| 338 | .pio_mask = 0x1f, /* pio0-4 */ | 458 | .pio_mask = 0x1f, /* pio0-4 */ |
| 339 | .udma_mask = 0x7f, /* udma0-6 */ | 459 | .udma_mask = 0x7f, /* udma0-6 */ |
| 340 | .port_ops = &mv_ops, | 460 | .port_ops = &mv6_ops, |
| 341 | }, | 461 | }, |
| 342 | { /* chip_608x */ | 462 | { /* chip_608x */ |
| 343 | .sht = &mv_sht, | 463 | .sht = &mv_sht, |
| 344 | .host_flags = (MV_COMMON_FLAGS | MV_6XXX_FLAGS | | 464 | .host_flags = (MV_COMMON_FLAGS | MV_6XXX_FLAGS | |
| 345 | MV_FLAG_DUAL_HC), | 465 | MV_FLAG_DUAL_HC), |
| 346 | .pio_mask = 0x1f, /* pio0-4 */ | 466 | .pio_mask = 0x1f, /* pio0-4 */ |
| 347 | .udma_mask = 0x7f, /* udma0-6 */ | 467 | .udma_mask = 0x7f, /* udma0-6 */ |
| 348 | .port_ops = &mv_ops, | 468 | .port_ops = &mv6_ops, |
| 349 | }, | 469 | }, |
| 350 | }; | 470 | }; |
| 351 | 471 | ||
| 352 | static const struct pci_device_id mv_pci_tbl[] = { | 472 | static const struct pci_device_id mv_pci_tbl[] = { |
| 353 | {PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x5040), 0, 0, chip_504x}, | 473 | {PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x5040), 0, 0, chip_504x}, |
| 354 | {PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x5041), 0, 0, chip_504x}, | 474 | {PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x5041), 0, 0, chip_504x}, |
| 355 | {PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x5080), 0, 0, chip_508x}, | 475 | {PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x5080), 0, 0, chip_5080}, |
| 356 | {PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x5081), 0, 0, chip_508x}, | 476 | {PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x5081), 0, 0, chip_508x}, |
| 357 | 477 | ||
| 358 | {PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x6040), 0, 0, chip_604x}, | 478 | {PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x6040), 0, 0, chip_604x}, |
| @@ -371,6 +491,24 @@ static struct pci_driver mv_pci_driver = { | |||
| 371 | .remove = ata_pci_remove_one, | 491 | .remove = ata_pci_remove_one, |
| 372 | }; | 492 | }; |
| 373 | 493 | ||
| 494 | static const struct mv_hw_ops mv5xxx_ops = { | ||
| 495 | .phy_errata = mv5_phy_errata, | ||
| 496 | .enable_leds = mv5_enable_leds, | ||
| 497 | .read_preamp = mv5_read_preamp, | ||
| 498 | .reset_hc = mv5_reset_hc, | ||
| 499 | .reset_flash = mv5_reset_flash, | ||
| 500 | .reset_bus = mv5_reset_bus, | ||
| 501 | }; | ||
| 502 | |||
| 503 | static const struct mv_hw_ops mv6xxx_ops = { | ||
| 504 | .phy_errata = mv6_phy_errata, | ||
| 505 | .enable_leds = mv6_enable_leds, | ||
| 506 | .read_preamp = mv6_read_preamp, | ||
| 507 | .reset_hc = mv6_reset_hc, | ||
| 508 | .reset_flash = mv6_reset_flash, | ||
| 509 | .reset_bus = mv_reset_pci_bus, | ||
| 510 | }; | ||
| 511 | |||
| 374 | /* | 512 | /* |
| 375 | * Functions | 513 | * Functions |
| 376 | */ | 514 | */ |
| @@ -386,11 +524,27 @@ static inline void __iomem *mv_hc_base(void __iomem *base, unsigned int hc) | |||
| 386 | return (base + MV_SATAHC0_REG_BASE + (hc * MV_SATAHC_REG_SZ)); | 524 | return (base + MV_SATAHC0_REG_BASE + (hc * MV_SATAHC_REG_SZ)); |
| 387 | } | 525 | } |
| 388 | 526 | ||
| 527 | static inline unsigned int mv_hc_from_port(unsigned int port) | ||
| 528 | { | ||
| 529 | return port >> MV_PORT_HC_SHIFT; | ||
| 530 | } | ||
| 531 | |||
| 532 | static inline unsigned int mv_hardport_from_port(unsigned int port) | ||
| 533 | { | ||
| 534 | return port & MV_PORT_MASK; | ||
| 535 | } | ||
| 536 | |||
| 537 | static inline void __iomem *mv_hc_base_from_port(void __iomem *base, | ||
| 538 | unsigned int port) | ||
| 539 | { | ||
| 540 | return mv_hc_base(base, mv_hc_from_port(port)); | ||
| 541 | } | ||
| 542 | |||
| 389 | static inline void __iomem *mv_port_base(void __iomem *base, unsigned int port) | 543 | static inline void __iomem *mv_port_base(void __iomem *base, unsigned int port) |
| 390 | { | 544 | { |
| 391 | return (mv_hc_base(base, port >> MV_PORT_HC_SHIFT) + | 545 | return mv_hc_base_from_port(base, port) + |
| 392 | MV_SATAHC_ARBTR_REG_SZ + | 546 | MV_SATAHC_ARBTR_REG_SZ + |
| 393 | ((port & MV_PORT_MASK) * MV_PORT_REG_SZ)); | 547 | (mv_hardport_from_port(port) * MV_PORT_REG_SZ); |
| 394 | } | 548 | } |
| 395 | 549 | ||
| 396 | static inline void __iomem *mv_ap_base(struct ata_port *ap) | 550 | static inline void __iomem *mv_ap_base(struct ata_port *ap) |
| @@ -398,9 +552,9 @@ static inline void __iomem *mv_ap_base(struct ata_port *ap) | |||
| 398 | return mv_port_base(ap->host_set->mmio_base, ap->port_no); | 552 | return mv_port_base(ap->host_set->mmio_base, ap->port_no); |
| 399 | } | 553 | } |
| 400 | 554 | ||
| 401 | static inline int mv_get_hc_count(unsigned long hp_flags) | 555 | static inline int mv_get_hc_count(unsigned long host_flags) |
| 402 | { | 556 | { |
| 403 | return ((hp_flags & MV_FLAG_DUAL_HC) ? 2 : 1); | 557 | return ((host_flags & MV_FLAG_DUAL_HC) ? 2 : 1); |
| 404 | } | 558 | } |
| 405 | 559 | ||
| 406 | static void mv_irq_clear(struct ata_port *ap) | 560 | static void mv_irq_clear(struct ata_port *ap) |
| @@ -452,7 +606,7 @@ static void mv_stop_dma(struct ata_port *ap) | |||
| 452 | } else { | 606 | } else { |
| 453 | assert(!(EDMA_EN & readl(port_mmio + EDMA_CMD_OFS))); | 607 | assert(!(EDMA_EN & readl(port_mmio + EDMA_CMD_OFS))); |
| 454 | } | 608 | } |
| 455 | 609 | ||
| 456 | /* now properly wait for the eDMA to stop */ | 610 | /* now properly wait for the eDMA to stop */ |
| 457 | for (i = 1000; i > 0; i--) { | 611 | for (i = 1000; i > 0; i--) { |
| 458 | reg = readl(port_mmio + EDMA_CMD_OFS); | 612 | reg = readl(port_mmio + EDMA_CMD_OFS); |
| @@ -503,7 +657,7 @@ static void mv_dump_all_regs(void __iomem *mmio_base, int port, | |||
| 503 | struct pci_dev *pdev) | 657 | struct pci_dev *pdev) |
| 504 | { | 658 | { |
| 505 | #ifdef ATA_DEBUG | 659 | #ifdef ATA_DEBUG |
| 506 | void __iomem *hc_base = mv_hc_base(mmio_base, | 660 | void __iomem *hc_base = mv_hc_base(mmio_base, |
| 507 | port >> MV_PORT_HC_SHIFT); | 661 | port >> MV_PORT_HC_SHIFT); |
| 508 | void __iomem *port_base; | 662 | void __iomem *port_base; |
| 509 | int start_port, num_ports, p, start_hc, num_hcs, hc; | 663 | int start_port, num_ports, p, start_hc, num_hcs, hc; |
| @@ -517,7 +671,7 @@ static void mv_dump_all_regs(void __iomem *mmio_base, int port, | |||
| 517 | start_port = port; | 671 | start_port = port; |
| 518 | num_ports = num_hcs = 1; | 672 | num_ports = num_hcs = 1; |
| 519 | } | 673 | } |
| 520 | DPRINTK("All registers for port(s) %u-%u:\n", start_port, | 674 | DPRINTK("All registers for port(s) %u-%u:\n", start_port, |
| 521 | num_ports > 1 ? num_ports - 1 : start_port); | 675 | num_ports > 1 ? num_ports - 1 : start_port); |
| 522 | 676 | ||
| 523 | if (NULL != pdev) { | 677 | if (NULL != pdev) { |
| @@ -585,70 +739,6 @@ static void mv_scr_write(struct ata_port *ap, unsigned int sc_reg_in, u32 val) | |||
| 585 | } | 739 | } |
| 586 | 740 | ||
| 587 | /** | 741 | /** |
| 588 | * mv_global_soft_reset - Perform the 6xxx global soft reset | ||
| 589 | * @mmio_base: base address of the HBA | ||
| 590 | * | ||
| 591 | * This routine only applies to 6xxx parts. | ||
| 592 | * | ||
| 593 | * LOCKING: | ||
| 594 | * Inherited from caller. | ||
| 595 | */ | ||
| 596 | static int mv_global_soft_reset(void __iomem *mmio_base) | ||
| 597 | { | ||
| 598 | void __iomem *reg = mmio_base + PCI_MAIN_CMD_STS_OFS; | ||
| 599 | int i, rc = 0; | ||
| 600 | u32 t; | ||
| 601 | |||
| 602 | /* Following procedure defined in PCI "main command and status | ||
| 603 | * register" table. | ||
| 604 | */ | ||
| 605 | t = readl(reg); | ||
| 606 | writel(t | STOP_PCI_MASTER, reg); | ||
| 607 | |||
| 608 | for (i = 0; i < 1000; i++) { | ||
| 609 | udelay(1); | ||
| 610 | t = readl(reg); | ||
| 611 | if (PCI_MASTER_EMPTY & t) { | ||
| 612 | break; | ||
| 613 | } | ||
| 614 | } | ||
| 615 | if (!(PCI_MASTER_EMPTY & t)) { | ||
| 616 | printk(KERN_ERR DRV_NAME ": PCI master won't flush\n"); | ||
| 617 | rc = 1; | ||
| 618 | goto done; | ||
| 619 | } | ||
| 620 | |||
| 621 | /* set reset */ | ||
| 622 | i = 5; | ||
| 623 | do { | ||
| 624 | writel(t | GLOB_SFT_RST, reg); | ||
| 625 | t = readl(reg); | ||
| 626 | udelay(1); | ||
| 627 | } while (!(GLOB_SFT_RST & t) && (i-- > 0)); | ||
| 628 | |||
| 629 | if (!(GLOB_SFT_RST & t)) { | ||
| 630 | printk(KERN_ERR DRV_NAME ": can't set global reset\n"); | ||
| 631 | rc = 1; | ||
| 632 | goto done; | ||
| 633 | } | ||
| 634 | |||
| 635 | /* clear reset and *reenable the PCI master* (not mentioned in spec) */ | ||
| 636 | i = 5; | ||
| 637 | do { | ||
| 638 | writel(t & ~(GLOB_SFT_RST | STOP_PCI_MASTER), reg); | ||
| 639 | t = readl(reg); | ||
| 640 | udelay(1); | ||
| 641 | } while ((GLOB_SFT_RST & t) && (i-- > 0)); | ||
| 642 | |||
| 643 | if (GLOB_SFT_RST & t) { | ||
| 644 | printk(KERN_ERR DRV_NAME ": can't clear global reset\n"); | ||
| 645 | rc = 1; | ||
| 646 | } | ||
| 647 | done: | ||
| 648 | return rc; | ||
| 649 | } | ||
| 650 | |||
| 651 | /** | ||
| 652 | * mv_host_stop - Host specific cleanup/stop routine. | 742 | * mv_host_stop - Host specific cleanup/stop routine. |
| 653 | * @host_set: host data structure | 743 | * @host_set: host data structure |
| 654 | * | 744 | * |
| @@ -701,7 +791,7 @@ static int mv_port_start(struct ata_port *ap) | |||
| 701 | goto err_out; | 791 | goto err_out; |
| 702 | memset(pp, 0, sizeof(*pp)); | 792 | memset(pp, 0, sizeof(*pp)); |
| 703 | 793 | ||
| 704 | mem = dma_alloc_coherent(dev, MV_PORT_PRIV_DMA_SZ, &mem_dma, | 794 | mem = dma_alloc_coherent(dev, MV_PORT_PRIV_DMA_SZ, &mem_dma, |
| 705 | GFP_KERNEL); | 795 | GFP_KERNEL); |
| 706 | if (!mem) | 796 | if (!mem) |
| 707 | goto err_out_pp; | 797 | goto err_out_pp; |
| @@ -711,7 +801,7 @@ static int mv_port_start(struct ata_port *ap) | |||
| 711 | if (rc) | 801 | if (rc) |
| 712 | goto err_out_priv; | 802 | goto err_out_priv; |
| 713 | 803 | ||
| 714 | /* First item in chunk of DMA memory: | 804 | /* First item in chunk of DMA memory: |
| 715 | * 32-slot command request table (CRQB), 32 bytes each in size | 805 | * 32-slot command request table (CRQB), 32 bytes each in size |
| 716 | */ | 806 | */ |
| 717 | pp->crqb = mem; | 807 | pp->crqb = mem; |
| @@ -719,7 +809,7 @@ static int mv_port_start(struct ata_port *ap) | |||
| 719 | mem += MV_CRQB_Q_SZ; | 809 | mem += MV_CRQB_Q_SZ; |
| 720 | mem_dma += MV_CRQB_Q_SZ; | 810 | mem_dma += MV_CRQB_Q_SZ; |
| 721 | 811 | ||
| 722 | /* Second item: | 812 | /* Second item: |
| 723 | * 32-slot command response table (CRPB), 8 bytes each in size | 813 | * 32-slot command response table (CRPB), 8 bytes each in size |
| 724 | */ | 814 | */ |
| 725 | pp->crpb = mem; | 815 | pp->crpb = mem; |
| @@ -733,18 +823,18 @@ static int mv_port_start(struct ata_port *ap) | |||
| 733 | pp->sg_tbl = mem; | 823 | pp->sg_tbl = mem; |
| 734 | pp->sg_tbl_dma = mem_dma; | 824 | pp->sg_tbl_dma = mem_dma; |
| 735 | 825 | ||
| 736 | writelfl(EDMA_CFG_Q_DEPTH | EDMA_CFG_RD_BRST_EXT | | 826 | writelfl(EDMA_CFG_Q_DEPTH | EDMA_CFG_RD_BRST_EXT | |
| 737 | EDMA_CFG_WR_BUFF_LEN, port_mmio + EDMA_CFG_OFS); | 827 | EDMA_CFG_WR_BUFF_LEN, port_mmio + EDMA_CFG_OFS); |
| 738 | 828 | ||
| 739 | writel((pp->crqb_dma >> 16) >> 16, port_mmio + EDMA_REQ_Q_BASE_HI_OFS); | 829 | writel((pp->crqb_dma >> 16) >> 16, port_mmio + EDMA_REQ_Q_BASE_HI_OFS); |
| 740 | writelfl(pp->crqb_dma & EDMA_REQ_Q_BASE_LO_MASK, | 830 | writelfl(pp->crqb_dma & EDMA_REQ_Q_BASE_LO_MASK, |
| 741 | port_mmio + EDMA_REQ_Q_IN_PTR_OFS); | 831 | port_mmio + EDMA_REQ_Q_IN_PTR_OFS); |
| 742 | 832 | ||
| 743 | writelfl(0, port_mmio + EDMA_REQ_Q_OUT_PTR_OFS); | 833 | writelfl(0, port_mmio + EDMA_REQ_Q_OUT_PTR_OFS); |
| 744 | writelfl(0, port_mmio + EDMA_RSP_Q_IN_PTR_OFS); | 834 | writelfl(0, port_mmio + EDMA_RSP_Q_IN_PTR_OFS); |
| 745 | 835 | ||
| 746 | writel((pp->crpb_dma >> 16) >> 16, port_mmio + EDMA_RSP_Q_BASE_HI_OFS); | 836 | writel((pp->crpb_dma >> 16) >> 16, port_mmio + EDMA_RSP_Q_BASE_HI_OFS); |
| 747 | writelfl(pp->crpb_dma & EDMA_RSP_Q_BASE_LO_MASK, | 837 | writelfl(pp->crpb_dma & EDMA_RSP_Q_BASE_LO_MASK, |
| 748 | port_mmio + EDMA_RSP_Q_OUT_PTR_OFS); | 838 | port_mmio + EDMA_RSP_Q_OUT_PTR_OFS); |
| 749 | 839 | ||
| 750 | pp->req_producer = pp->rsp_consumer = 0; | 840 | pp->req_producer = pp->rsp_consumer = 0; |
| @@ -805,20 +895,30 @@ static void mv_fill_sg(struct ata_queued_cmd *qc) | |||
| 805 | struct scatterlist *sg; | 895 | struct scatterlist *sg; |
| 806 | 896 | ||
| 807 | ata_for_each_sg(sg, qc) { | 897 | ata_for_each_sg(sg, qc) { |
| 808 | u32 sg_len; | ||
| 809 | dma_addr_t addr; | 898 | dma_addr_t addr; |
| 899 | u32 sg_len, len, offset; | ||
| 810 | 900 | ||
| 811 | addr = sg_dma_address(sg); | 901 | addr = sg_dma_address(sg); |
| 812 | sg_len = sg_dma_len(sg); | 902 | sg_len = sg_dma_len(sg); |
| 813 | 903 | ||
| 814 | pp->sg_tbl[i].addr = cpu_to_le32(addr & 0xffffffff); | 904 | while (sg_len) { |
| 815 | pp->sg_tbl[i].addr_hi = cpu_to_le32((addr >> 16) >> 16); | 905 | offset = addr & MV_DMA_BOUNDARY; |
| 816 | assert(0 == (sg_len & ~MV_DMA_BOUNDARY)); | 906 | len = sg_len; |
| 817 | pp->sg_tbl[i].flags_size = cpu_to_le32(sg_len); | 907 | if ((offset + sg_len) > 0x10000) |
| 818 | if (ata_sg_is_last(sg, qc)) | 908 | len = 0x10000 - offset; |
| 819 | pp->sg_tbl[i].flags_size |= cpu_to_le32(EPRD_FLAG_END_OF_TBL); | 909 | |
| 910 | pp->sg_tbl[i].addr = cpu_to_le32(addr & 0xffffffff); | ||
| 911 | pp->sg_tbl[i].addr_hi = cpu_to_le32((addr >> 16) >> 16); | ||
| 912 | pp->sg_tbl[i].flags_size = cpu_to_le32(len); | ||
| 913 | |||
| 914 | sg_len -= len; | ||
| 915 | addr += len; | ||
| 916 | |||
| 917 | if (!sg_len && ata_sg_is_last(sg, qc)) | ||
| 918 | pp->sg_tbl[i].flags_size |= cpu_to_le32(EPRD_FLAG_END_OF_TBL); | ||
| 820 | 919 | ||
| 821 | i++; | 920 | i++; |
| 921 | } | ||
| 822 | } | 922 | } |
| 823 | } | 923 | } |
| 824 | 924 | ||
| @@ -859,7 +959,7 @@ static void mv_qc_prep(struct ata_queued_cmd *qc) | |||
| 859 | } | 959 | } |
| 860 | 960 | ||
| 861 | /* the req producer index should be the same as we remember it */ | 961 | /* the req producer index should be the same as we remember it */ |
| 862 | assert(((readl(mv_ap_base(qc->ap) + EDMA_REQ_Q_IN_PTR_OFS) >> | 962 | assert(((readl(mv_ap_base(qc->ap) + EDMA_REQ_Q_IN_PTR_OFS) >> |
| 863 | EDMA_REQ_Q_PTR_SHIFT) & MV_MAX_Q_DEPTH_MASK) == | 963 | EDMA_REQ_Q_PTR_SHIFT) & MV_MAX_Q_DEPTH_MASK) == |
| 864 | pp->req_producer); | 964 | pp->req_producer); |
| 865 | 965 | ||
| @@ -871,9 +971,9 @@ static void mv_qc_prep(struct ata_queued_cmd *qc) | |||
| 871 | assert(MV_MAX_Q_DEPTH > qc->tag); | 971 | assert(MV_MAX_Q_DEPTH > qc->tag); |
| 872 | flags |= qc->tag << CRQB_TAG_SHIFT; | 972 | flags |= qc->tag << CRQB_TAG_SHIFT; |
| 873 | 973 | ||
| 874 | pp->crqb[pp->req_producer].sg_addr = | 974 | pp->crqb[pp->req_producer].sg_addr = |
| 875 | cpu_to_le32(pp->sg_tbl_dma & 0xffffffff); | 975 | cpu_to_le32(pp->sg_tbl_dma & 0xffffffff); |
| 876 | pp->crqb[pp->req_producer].sg_addr_hi = | 976 | pp->crqb[pp->req_producer].sg_addr_hi = |
| 877 | cpu_to_le32((pp->sg_tbl_dma >> 16) >> 16); | 977 | cpu_to_le32((pp->sg_tbl_dma >> 16) >> 16); |
| 878 | pp->crqb[pp->req_producer].ctrl_flags = cpu_to_le16(flags); | 978 | pp->crqb[pp->req_producer].ctrl_flags = cpu_to_le16(flags); |
| 879 | 979 | ||
| @@ -896,7 +996,7 @@ static void mv_qc_prep(struct ata_queued_cmd *qc) | |||
| 896 | #ifdef LIBATA_NCQ /* FIXME: remove this line when NCQ added */ | 996 | #ifdef LIBATA_NCQ /* FIXME: remove this line when NCQ added */ |
| 897 | case ATA_CMD_FPDMA_READ: | 997 | case ATA_CMD_FPDMA_READ: |
| 898 | case ATA_CMD_FPDMA_WRITE: | 998 | case ATA_CMD_FPDMA_WRITE: |
| 899 | mv_crqb_pack_cmd(cw++, tf->hob_feature, ATA_REG_FEATURE, 0); | 999 | mv_crqb_pack_cmd(cw++, tf->hob_feature, ATA_REG_FEATURE, 0); |
| 900 | mv_crqb_pack_cmd(cw++, tf->feature, ATA_REG_FEATURE, 0); | 1000 | mv_crqb_pack_cmd(cw++, tf->feature, ATA_REG_FEATURE, 0); |
| 901 | break; | 1001 | break; |
| 902 | #endif /* FIXME: remove this line when NCQ added */ | 1002 | #endif /* FIXME: remove this line when NCQ added */ |
| @@ -962,7 +1062,7 @@ static int mv_qc_issue(struct ata_queued_cmd *qc) | |||
| 962 | pp->req_producer); | 1062 | pp->req_producer); |
| 963 | /* until we do queuing, the queue should be empty at this point */ | 1063 | /* until we do queuing, the queue should be empty at this point */ |
| 964 | assert(((in_ptr >> EDMA_REQ_Q_PTR_SHIFT) & MV_MAX_Q_DEPTH_MASK) == | 1064 | assert(((in_ptr >> EDMA_REQ_Q_PTR_SHIFT) & MV_MAX_Q_DEPTH_MASK) == |
| 965 | ((readl(port_mmio + EDMA_REQ_Q_OUT_PTR_OFS) >> | 1065 | ((readl(port_mmio + EDMA_REQ_Q_OUT_PTR_OFS) >> |
| 966 | EDMA_REQ_Q_PTR_SHIFT) & MV_MAX_Q_DEPTH_MASK)); | 1066 | EDMA_REQ_Q_PTR_SHIFT) & MV_MAX_Q_DEPTH_MASK)); |
| 967 | 1067 | ||
| 968 | mv_inc_q_index(&pp->req_producer); /* now incr producer index */ | 1068 | mv_inc_q_index(&pp->req_producer); /* now incr producer index */ |
| @@ -999,15 +1099,15 @@ static u8 mv_get_crpb_status(struct ata_port *ap) | |||
| 999 | out_ptr = readl(port_mmio + EDMA_RSP_Q_OUT_PTR_OFS); | 1099 | out_ptr = readl(port_mmio + EDMA_RSP_Q_OUT_PTR_OFS); |
| 1000 | 1100 | ||
| 1001 | /* the response consumer index should be the same as we remember it */ | 1101 | /* the response consumer index should be the same as we remember it */ |
| 1002 | assert(((out_ptr >> EDMA_RSP_Q_PTR_SHIFT) & MV_MAX_Q_DEPTH_MASK) == | 1102 | assert(((out_ptr >> EDMA_RSP_Q_PTR_SHIFT) & MV_MAX_Q_DEPTH_MASK) == |
| 1003 | pp->rsp_consumer); | 1103 | pp->rsp_consumer); |
| 1004 | 1104 | ||
| 1005 | /* increment our consumer index... */ | 1105 | /* increment our consumer index... */ |
| 1006 | pp->rsp_consumer = mv_inc_q_index(&pp->rsp_consumer); | 1106 | pp->rsp_consumer = mv_inc_q_index(&pp->rsp_consumer); |
| 1007 | 1107 | ||
| 1008 | /* and, until we do NCQ, there should only be 1 CRPB waiting */ | 1108 | /* and, until we do NCQ, there should only be 1 CRPB waiting */ |
| 1009 | assert(((readl(port_mmio + EDMA_RSP_Q_IN_PTR_OFS) >> | 1109 | assert(((readl(port_mmio + EDMA_RSP_Q_IN_PTR_OFS) >> |
| 1010 | EDMA_RSP_Q_PTR_SHIFT) & MV_MAX_Q_DEPTH_MASK) == | 1110 | EDMA_RSP_Q_PTR_SHIFT) & MV_MAX_Q_DEPTH_MASK) == |
| 1011 | pp->rsp_consumer); | 1111 | pp->rsp_consumer); |
| 1012 | 1112 | ||
| 1013 | /* write out our inc'd consumer index so EDMA knows we're caught up */ | 1113 | /* write out our inc'd consumer index so EDMA knows we're caught up */ |
| @@ -1055,7 +1155,7 @@ static void mv_err_intr(struct ata_port *ap) | |||
| 1055 | 1155 | ||
| 1056 | /* check for fatal here and recover if needed */ | 1156 | /* check for fatal here and recover if needed */ |
| 1057 | if (EDMA_ERR_FATAL & edma_err_cause) { | 1157 | if (EDMA_ERR_FATAL & edma_err_cause) { |
| 1058 | mv_phy_reset(ap); | 1158 | mv_stop_and_reset(ap); |
| 1059 | } | 1159 | } |
| 1060 | } | 1160 | } |
| 1061 | 1161 | ||
| @@ -1120,6 +1220,10 @@ static void mv_host_intr(struct ata_host_set *host_set, u32 relevant, | |||
| 1120 | handled++; | 1220 | handled++; |
| 1121 | } | 1221 | } |
| 1122 | 1222 | ||
| 1223 | if (ap && | ||
| 1224 | (ap->flags & (ATA_FLAG_PORT_DISABLED | ATA_FLAG_NOINTR))) | ||
| 1225 | continue; | ||
| 1226 | |||
| 1123 | err_mask = ac_err_mask(ata_status); | 1227 | err_mask = ac_err_mask(ata_status); |
| 1124 | 1228 | ||
| 1125 | shift = port << 1; /* (port * 2) */ | 1229 | shift = port << 1; /* (port * 2) */ |
| @@ -1131,14 +1235,15 @@ static void mv_host_intr(struct ata_host_set *host_set, u32 relevant, | |||
| 1131 | err_mask |= AC_ERR_OTHER; | 1235 | err_mask |= AC_ERR_OTHER; |
| 1132 | handled++; | 1236 | handled++; |
| 1133 | } | 1237 | } |
| 1134 | 1238 | ||
| 1135 | if (handled && ap) { | 1239 | if (handled && ap) { |
| 1136 | qc = ata_qc_from_tag(ap, ap->active_tag); | 1240 | qc = ata_qc_from_tag(ap, ap->active_tag); |
| 1137 | if (NULL != qc) { | 1241 | if (NULL != qc) { |
| 1138 | VPRINTK("port %u IRQ found for qc, " | 1242 | VPRINTK("port %u IRQ found for qc, " |
| 1139 | "ata_status 0x%x\n", port,ata_status); | 1243 | "ata_status 0x%x\n", port,ata_status); |
| 1140 | /* mark qc status appropriately */ | 1244 | /* mark qc status appropriately */ |
| 1141 | ata_qc_complete(qc, err_mask); | 1245 | if (!(qc->tf.ctl & ATA_NIEN)) |
| 1246 | ata_qc_complete(qc, err_mask); | ||
| 1142 | } | 1247 | } |
| 1143 | } | 1248 | } |
| 1144 | } | 1249 | } |
| @@ -1146,7 +1251,7 @@ static void mv_host_intr(struct ata_host_set *host_set, u32 relevant, | |||
| 1146 | } | 1251 | } |
| 1147 | 1252 | ||
| 1148 | /** | 1253 | /** |
| 1149 | * mv_interrupt - | 1254 | * mv_interrupt - |
| 1150 | * @irq: unused | 1255 | * @irq: unused |
| 1151 | * @dev_instance: private data; in this case the host structure | 1256 | * @dev_instance: private data; in this case the host structure |
| 1152 | * @regs: unused | 1257 | * @regs: unused |
| @@ -1156,7 +1261,7 @@ static void mv_host_intr(struct ata_host_set *host_set, u32 relevant, | |||
| 1156 | * routine to handle. Also check for PCI errors which are only | 1261 | * routine to handle. Also check for PCI errors which are only |
| 1157 | * reported here. | 1262 | * reported here. |
| 1158 | * | 1263 | * |
| 1159 | * LOCKING: | 1264 | * LOCKING: |
| 1160 | * This routine holds the host_set lock while processing pending | 1265 | * This routine holds the host_set lock while processing pending |
| 1161 | * interrupts. | 1266 | * interrupts. |
| 1162 | */ | 1267 | */ |
| @@ -1202,8 +1307,422 @@ static irqreturn_t mv_interrupt(int irq, void *dev_instance, | |||
| 1202 | return IRQ_RETVAL(handled); | 1307 | return IRQ_RETVAL(handled); |
| 1203 | } | 1308 | } |
| 1204 | 1309 | ||
| 1310 | static void __iomem *mv5_phy_base(void __iomem *mmio, unsigned int port) | ||
| 1311 | { | ||
| 1312 | void __iomem *hc_mmio = mv_hc_base_from_port(mmio, port); | ||
| 1313 | unsigned long ofs = (mv_hardport_from_port(port) + 1) * 0x100UL; | ||
| 1314 | |||
| 1315 | return hc_mmio + ofs; | ||
| 1316 | } | ||
| 1317 | |||
| 1318 | static unsigned int mv5_scr_offset(unsigned int sc_reg_in) | ||
| 1319 | { | ||
| 1320 | unsigned int ofs; | ||
| 1321 | |||
| 1322 | switch (sc_reg_in) { | ||
| 1323 | case SCR_STATUS: | ||
| 1324 | case SCR_ERROR: | ||
| 1325 | case SCR_CONTROL: | ||
| 1326 | ofs = sc_reg_in * sizeof(u32); | ||
| 1327 | break; | ||
| 1328 | default: | ||
| 1329 | ofs = 0xffffffffU; | ||
| 1330 | break; | ||
| 1331 | } | ||
| 1332 | return ofs; | ||
| 1333 | } | ||
| 1334 | |||
| 1335 | static u32 mv5_scr_read(struct ata_port *ap, unsigned int sc_reg_in) | ||
| 1336 | { | ||
| 1337 | void __iomem *mmio = mv5_phy_base(ap->host_set->mmio_base, ap->port_no); | ||
| 1338 | unsigned int ofs = mv5_scr_offset(sc_reg_in); | ||
| 1339 | |||
| 1340 | if (ofs != 0xffffffffU) | ||
| 1341 | return readl(mmio + ofs); | ||
| 1342 | else | ||
| 1343 | return (u32) ofs; | ||
| 1344 | } | ||
| 1345 | |||
| 1346 | static void mv5_scr_write(struct ata_port *ap, unsigned int sc_reg_in, u32 val) | ||
| 1347 | { | ||
| 1348 | void __iomem *mmio = mv5_phy_base(ap->host_set->mmio_base, ap->port_no); | ||
| 1349 | unsigned int ofs = mv5_scr_offset(sc_reg_in); | ||
| 1350 | |||
| 1351 | if (ofs != 0xffffffffU) | ||
| 1352 | writelfl(val, mmio + ofs); | ||
| 1353 | } | ||
| 1354 | |||
| 1355 | static void mv5_reset_bus(struct pci_dev *pdev, void __iomem *mmio) | ||
| 1356 | { | ||
| 1357 | u8 rev_id; | ||
| 1358 | int early_5080; | ||
| 1359 | |||
| 1360 | pci_read_config_byte(pdev, PCI_REVISION_ID, &rev_id); | ||
| 1361 | |||
| 1362 | early_5080 = (pdev->device == 0x5080) && (rev_id == 0); | ||
| 1363 | |||
| 1364 | if (!early_5080) { | ||
| 1365 | u32 tmp = readl(mmio + MV_PCI_EXP_ROM_BAR_CTL); | ||
| 1366 | tmp |= (1 << 0); | ||
| 1367 | writel(tmp, mmio + MV_PCI_EXP_ROM_BAR_CTL); | ||
| 1368 | } | ||
| 1369 | |||
| 1370 | mv_reset_pci_bus(pdev, mmio); | ||
| 1371 | } | ||
| 1372 | |||
| 1373 | static void mv5_reset_flash(struct mv_host_priv *hpriv, void __iomem *mmio) | ||
| 1374 | { | ||
| 1375 | writel(0x0fcfffff, mmio + MV_FLASH_CTL); | ||
| 1376 | } | ||
| 1377 | |||
| 1378 | static void mv5_read_preamp(struct mv_host_priv *hpriv, int idx, | ||
| 1379 | void __iomem *mmio) | ||
| 1380 | { | ||
| 1381 | void __iomem *phy_mmio = mv5_phy_base(mmio, idx); | ||
| 1382 | u32 tmp; | ||
| 1383 | |||
| 1384 | tmp = readl(phy_mmio + MV5_PHY_MODE); | ||
| 1385 | |||
| 1386 | hpriv->signal[idx].pre = tmp & 0x1800; /* bits 12:11 */ | ||
| 1387 | hpriv->signal[idx].amps = tmp & 0xe0; /* bits 7:5 */ | ||
| 1388 | } | ||
| 1389 | |||
| 1390 | static void mv5_enable_leds(struct mv_host_priv *hpriv, void __iomem *mmio) | ||
| 1391 | { | ||
| 1392 | u32 tmp; | ||
| 1393 | |||
| 1394 | writel(0, mmio + MV_GPIO_PORT_CTL); | ||
| 1395 | |||
| 1396 | /* FIXME: handle MV_HP_ERRATA_50XXB2 errata */ | ||
| 1397 | |||
| 1398 | tmp = readl(mmio + MV_PCI_EXP_ROM_BAR_CTL); | ||
| 1399 | tmp |= ~(1 << 0); | ||
| 1400 | writel(tmp, mmio + MV_PCI_EXP_ROM_BAR_CTL); | ||
| 1401 | } | ||
| 1402 | |||
| 1403 | static void mv5_phy_errata(struct mv_host_priv *hpriv, void __iomem *mmio, | ||
| 1404 | unsigned int port) | ||
| 1405 | { | ||
| 1406 | void __iomem *phy_mmio = mv5_phy_base(mmio, port); | ||
| 1407 | const u32 mask = (1<<12) | (1<<11) | (1<<7) | (1<<6) | (1<<5); | ||
| 1408 | u32 tmp; | ||
| 1409 | int fix_apm_sq = (hpriv->hp_flags & MV_HP_ERRATA_50XXB0); | ||
| 1410 | |||
| 1411 | if (fix_apm_sq) { | ||
| 1412 | tmp = readl(phy_mmio + MV5_LT_MODE); | ||
| 1413 | tmp |= (1 << 19); | ||
| 1414 | writel(tmp, phy_mmio + MV5_LT_MODE); | ||
| 1415 | |||
| 1416 | tmp = readl(phy_mmio + MV5_PHY_CTL); | ||
| 1417 | tmp &= ~0x3; | ||
| 1418 | tmp |= 0x1; | ||
| 1419 | writel(tmp, phy_mmio + MV5_PHY_CTL); | ||
| 1420 | } | ||
| 1421 | |||
| 1422 | tmp = readl(phy_mmio + MV5_PHY_MODE); | ||
| 1423 | tmp &= ~mask; | ||
| 1424 | tmp |= hpriv->signal[port].pre; | ||
| 1425 | tmp |= hpriv->signal[port].amps; | ||
| 1426 | writel(tmp, phy_mmio + MV5_PHY_MODE); | ||
| 1427 | } | ||
| 1428 | |||
| 1429 | |||
| 1430 | #undef ZERO | ||
| 1431 | #define ZERO(reg) writel(0, port_mmio + (reg)) | ||
| 1432 | static void mv5_reset_hc_port(struct mv_host_priv *hpriv, void __iomem *mmio, | ||
| 1433 | unsigned int port) | ||
| 1434 | { | ||
| 1435 | void __iomem *port_mmio = mv_port_base(mmio, port); | ||
| 1436 | |||
| 1437 | writelfl(EDMA_DS, port_mmio + EDMA_CMD_OFS); | ||
| 1438 | |||
| 1439 | mv_channel_reset(hpriv, mmio, port); | ||
| 1440 | |||
| 1441 | ZERO(0x028); /* command */ | ||
| 1442 | writel(0x11f, port_mmio + EDMA_CFG_OFS); | ||
| 1443 | ZERO(0x004); /* timer */ | ||
| 1444 | ZERO(0x008); /* irq err cause */ | ||
| 1445 | ZERO(0x00c); /* irq err mask */ | ||
| 1446 | ZERO(0x010); /* rq bah */ | ||
| 1447 | ZERO(0x014); /* rq inp */ | ||
| 1448 | ZERO(0x018); /* rq outp */ | ||
| 1449 | ZERO(0x01c); /* respq bah */ | ||
| 1450 | ZERO(0x024); /* respq outp */ | ||
| 1451 | ZERO(0x020); /* respq inp */ | ||
| 1452 | ZERO(0x02c); /* test control */ | ||
| 1453 | writel(0xbc, port_mmio + EDMA_IORDY_TMOUT); | ||
| 1454 | } | ||
| 1455 | #undef ZERO | ||
| 1456 | |||
| 1457 | #define ZERO(reg) writel(0, hc_mmio + (reg)) | ||
| 1458 | static void mv5_reset_one_hc(struct mv_host_priv *hpriv, void __iomem *mmio, | ||
| 1459 | unsigned int hc) | ||
| 1460 | { | ||
| 1461 | void __iomem *hc_mmio = mv_hc_base(mmio, hc); | ||
| 1462 | u32 tmp; | ||
| 1463 | |||
| 1464 | ZERO(0x00c); | ||
| 1465 | ZERO(0x010); | ||
| 1466 | ZERO(0x014); | ||
| 1467 | ZERO(0x018); | ||
| 1468 | |||
| 1469 | tmp = readl(hc_mmio + 0x20); | ||
| 1470 | tmp &= 0x1c1c1c1c; | ||
| 1471 | tmp |= 0x03030303; | ||
| 1472 | writel(tmp, hc_mmio + 0x20); | ||
| 1473 | } | ||
| 1474 | #undef ZERO | ||
| 1475 | |||
| 1476 | static int mv5_reset_hc(struct mv_host_priv *hpriv, void __iomem *mmio, | ||
| 1477 | unsigned int n_hc) | ||
| 1478 | { | ||
| 1479 | unsigned int hc, port; | ||
| 1480 | |||
| 1481 | for (hc = 0; hc < n_hc; hc++) { | ||
| 1482 | for (port = 0; port < MV_PORTS_PER_HC; port++) | ||
| 1483 | mv5_reset_hc_port(hpriv, mmio, | ||
| 1484 | (hc * MV_PORTS_PER_HC) + port); | ||
| 1485 | |||
| 1486 | mv5_reset_one_hc(hpriv, mmio, hc); | ||
| 1487 | } | ||
| 1488 | |||
| 1489 | return 0; | ||
| 1490 | } | ||
| 1491 | |||
| 1492 | #undef ZERO | ||
| 1493 | #define ZERO(reg) writel(0, mmio + (reg)) | ||
| 1494 | static void mv_reset_pci_bus(struct pci_dev *pdev, void __iomem *mmio) | ||
| 1495 | { | ||
| 1496 | u32 tmp; | ||
| 1497 | |||
| 1498 | tmp = readl(mmio + MV_PCI_MODE); | ||
| 1499 | tmp &= 0xff00ffff; | ||
| 1500 | writel(tmp, mmio + MV_PCI_MODE); | ||
| 1501 | |||
| 1502 | ZERO(MV_PCI_DISC_TIMER); | ||
| 1503 | ZERO(MV_PCI_MSI_TRIGGER); | ||
| 1504 | writel(0x000100ff, mmio + MV_PCI_XBAR_TMOUT); | ||
| 1505 | ZERO(HC_MAIN_IRQ_MASK_OFS); | ||
| 1506 | ZERO(MV_PCI_SERR_MASK); | ||
| 1507 | ZERO(PCI_IRQ_CAUSE_OFS); | ||
| 1508 | ZERO(PCI_IRQ_MASK_OFS); | ||
| 1509 | ZERO(MV_PCI_ERR_LOW_ADDRESS); | ||
| 1510 | ZERO(MV_PCI_ERR_HIGH_ADDRESS); | ||
| 1511 | ZERO(MV_PCI_ERR_ATTRIBUTE); | ||
| 1512 | ZERO(MV_PCI_ERR_COMMAND); | ||
| 1513 | } | ||
| 1514 | #undef ZERO | ||
| 1515 | |||
| 1516 | static void mv6_reset_flash(struct mv_host_priv *hpriv, void __iomem *mmio) | ||
| 1517 | { | ||
| 1518 | u32 tmp; | ||
| 1519 | |||
| 1520 | mv5_reset_flash(hpriv, mmio); | ||
| 1521 | |||
| 1522 | tmp = readl(mmio + MV_GPIO_PORT_CTL); | ||
| 1523 | tmp &= 0x3; | ||
| 1524 | tmp |= (1 << 5) | (1 << 6); | ||
| 1525 | writel(tmp, mmio + MV_GPIO_PORT_CTL); | ||
| 1526 | } | ||
| 1527 | |||
| 1528 | /** | ||
| 1529 | * mv6_reset_hc - Perform the 6xxx global soft reset | ||
| 1530 | * @mmio: base address of the HBA | ||
| 1531 | * | ||
| 1532 | * This routine only applies to 6xxx parts. | ||
| 1533 | * | ||
| 1534 | * LOCKING: | ||
| 1535 | * Inherited from caller. | ||
| 1536 | */ | ||
| 1537 | static int mv6_reset_hc(struct mv_host_priv *hpriv, void __iomem *mmio, | ||
| 1538 | unsigned int n_hc) | ||
| 1539 | { | ||
| 1540 | void __iomem *reg = mmio + PCI_MAIN_CMD_STS_OFS; | ||
| 1541 | int i, rc = 0; | ||
| 1542 | u32 t; | ||
| 1543 | |||
| 1544 | /* Following procedure defined in PCI "main command and status | ||
| 1545 | * register" table. | ||
| 1546 | */ | ||
| 1547 | t = readl(reg); | ||
| 1548 | writel(t | STOP_PCI_MASTER, reg); | ||
| 1549 | |||
| 1550 | for (i = 0; i < 1000; i++) { | ||
| 1551 | udelay(1); | ||
| 1552 | t = readl(reg); | ||
| 1553 | if (PCI_MASTER_EMPTY & t) { | ||
| 1554 | break; | ||
| 1555 | } | ||
| 1556 | } | ||
| 1557 | if (!(PCI_MASTER_EMPTY & t)) { | ||
| 1558 | printk(KERN_ERR DRV_NAME ": PCI master won't flush\n"); | ||
| 1559 | rc = 1; | ||
| 1560 | goto done; | ||
| 1561 | } | ||
| 1562 | |||
| 1563 | /* set reset */ | ||
| 1564 | i = 5; | ||
| 1565 | do { | ||
| 1566 | writel(t | GLOB_SFT_RST, reg); | ||
| 1567 | t = readl(reg); | ||
| 1568 | udelay(1); | ||
| 1569 | } while (!(GLOB_SFT_RST & t) && (i-- > 0)); | ||
| 1570 | |||
| 1571 | if (!(GLOB_SFT_RST & t)) { | ||
| 1572 | printk(KERN_ERR DRV_NAME ": can't set global reset\n"); | ||
| 1573 | rc = 1; | ||
| 1574 | goto done; | ||
| 1575 | } | ||
| 1576 | |||
| 1577 | /* clear reset and *reenable the PCI master* (not mentioned in spec) */ | ||
| 1578 | i = 5; | ||
| 1579 | do { | ||
| 1580 | writel(t & ~(GLOB_SFT_RST | STOP_PCI_MASTER), reg); | ||
| 1581 | t = readl(reg); | ||
| 1582 | udelay(1); | ||
| 1583 | } while ((GLOB_SFT_RST & t) && (i-- > 0)); | ||
| 1584 | |||
| 1585 | if (GLOB_SFT_RST & t) { | ||
| 1586 | printk(KERN_ERR DRV_NAME ": can't clear global reset\n"); | ||
| 1587 | rc = 1; | ||
| 1588 | } | ||
| 1589 | done: | ||
| 1590 | return rc; | ||
| 1591 | } | ||
| 1592 | |||
| 1593 | static void mv6_read_preamp(struct mv_host_priv *hpriv, int idx, | ||
| 1594 | void __iomem *mmio) | ||
| 1595 | { | ||
| 1596 | void __iomem *port_mmio; | ||
| 1597 | u32 tmp; | ||
| 1598 | |||
| 1599 | tmp = readl(mmio + MV_RESET_CFG); | ||
| 1600 | if ((tmp & (1 << 0)) == 0) { | ||
| 1601 | hpriv->signal[idx].amps = 0x7 << 8; | ||
| 1602 | hpriv->signal[idx].pre = 0x1 << 5; | ||
| 1603 | return; | ||
| 1604 | } | ||
| 1605 | |||
| 1606 | port_mmio = mv_port_base(mmio, idx); | ||
| 1607 | tmp = readl(port_mmio + PHY_MODE2); | ||
| 1608 | |||
| 1609 | hpriv->signal[idx].amps = tmp & 0x700; /* bits 10:8 */ | ||
| 1610 | hpriv->signal[idx].pre = tmp & 0xe0; /* bits 7:5 */ | ||
| 1611 | } | ||
| 1612 | |||
| 1613 | static void mv6_enable_leds(struct mv_host_priv *hpriv, void __iomem *mmio) | ||
| 1614 | { | ||
| 1615 | writel(0x00000060, mmio + MV_GPIO_PORT_CTL); | ||
| 1616 | } | ||
| 1617 | |||
| 1618 | static void mv6_phy_errata(struct mv_host_priv *hpriv, void __iomem *mmio, | ||
| 1619 | unsigned int port) | ||
| 1620 | { | ||
| 1621 | void __iomem *port_mmio = mv_port_base(mmio, port); | ||
| 1622 | |||
| 1623 | u32 hp_flags = hpriv->hp_flags; | ||
| 1624 | int fix_phy_mode2 = | ||
| 1625 | hp_flags & (MV_HP_ERRATA_60X1B2 | MV_HP_ERRATA_60X1C0); | ||
| 1626 | int fix_phy_mode4 = | ||
| 1627 | hp_flags & (MV_HP_ERRATA_60X1B2 | MV_HP_ERRATA_60X1C0); | ||
| 1628 | u32 m2, tmp; | ||
| 1629 | |||
| 1630 | if (fix_phy_mode2) { | ||
| 1631 | m2 = readl(port_mmio + PHY_MODE2); | ||
| 1632 | m2 &= ~(1 << 16); | ||
| 1633 | m2 |= (1 << 31); | ||
| 1634 | writel(m2, port_mmio + PHY_MODE2); | ||
| 1635 | |||
| 1636 | udelay(200); | ||
| 1637 | |||
| 1638 | m2 = readl(port_mmio + PHY_MODE2); | ||
| 1639 | m2 &= ~((1 << 16) | (1 << 31)); | ||
| 1640 | writel(m2, port_mmio + PHY_MODE2); | ||
| 1641 | |||
| 1642 | udelay(200); | ||
| 1643 | } | ||
| 1644 | |||
| 1645 | /* who knows what this magic does */ | ||
| 1646 | tmp = readl(port_mmio + PHY_MODE3); | ||
| 1647 | tmp &= ~0x7F800000; | ||
| 1648 | tmp |= 0x2A800000; | ||
| 1649 | writel(tmp, port_mmio + PHY_MODE3); | ||
| 1650 | |||
| 1651 | if (fix_phy_mode4) { | ||
| 1652 | u32 m4; | ||
| 1653 | |||
| 1654 | m4 = readl(port_mmio + PHY_MODE4); | ||
| 1655 | |||
| 1656 | if (hp_flags & MV_HP_ERRATA_60X1B2) | ||
| 1657 | tmp = readl(port_mmio + 0x310); | ||
| 1658 | |||
| 1659 | m4 = (m4 & ~(1 << 1)) | (1 << 0); | ||
| 1660 | |||
| 1661 | writel(m4, port_mmio + PHY_MODE4); | ||
| 1662 | |||
| 1663 | if (hp_flags & MV_HP_ERRATA_60X1B2) | ||
| 1664 | writel(tmp, port_mmio + 0x310); | ||
| 1665 | } | ||
| 1666 | |||
| 1667 | /* Revert values of pre-emphasis and signal amps to the saved ones */ | ||
| 1668 | m2 = readl(port_mmio + PHY_MODE2); | ||
| 1669 | |||
| 1670 | m2 &= ~MV_M2_PREAMP_MASK; | ||
| 1671 | m2 |= hpriv->signal[port].amps; | ||
| 1672 | m2 |= hpriv->signal[port].pre; | ||
| 1673 | m2 &= ~(1 << 16); | ||
| 1674 | |||
| 1675 | writel(m2, port_mmio + PHY_MODE2); | ||
| 1676 | } | ||
| 1677 | |||
| 1678 | static void mv_channel_reset(struct mv_host_priv *hpriv, void __iomem *mmio, | ||
| 1679 | unsigned int port_no) | ||
| 1680 | { | ||
| 1681 | void __iomem *port_mmio = mv_port_base(mmio, port_no); | ||
| 1682 | |||
| 1683 | writelfl(ATA_RST, port_mmio + EDMA_CMD_OFS); | ||
| 1684 | |||
| 1685 | if (IS_60XX(hpriv)) { | ||
| 1686 | u32 ifctl = readl(port_mmio + SATA_INTERFACE_CTL); | ||
| 1687 | ifctl |= (1 << 12) | (1 << 7); | ||
| 1688 | writelfl(ifctl, port_mmio + SATA_INTERFACE_CTL); | ||
| 1689 | } | ||
| 1690 | |||
| 1691 | udelay(25); /* allow reset propagation */ | ||
| 1692 | |||
| 1693 | /* Spec never mentions clearing the bit. Marvell's driver does | ||
| 1694 | * clear the bit, however. | ||
| 1695 | */ | ||
| 1696 | writelfl(0, port_mmio + EDMA_CMD_OFS); | ||
| 1697 | |||
| 1698 | hpriv->ops->phy_errata(hpriv, mmio, port_no); | ||
| 1699 | |||
| 1700 | if (IS_50XX(hpriv)) | ||
| 1701 | mdelay(1); | ||
| 1702 | } | ||
| 1703 | |||
| 1704 | static void mv_stop_and_reset(struct ata_port *ap) | ||
| 1705 | { | ||
| 1706 | struct mv_host_priv *hpriv = ap->host_set->private_data; | ||
| 1707 | void __iomem *mmio = ap->host_set->mmio_base; | ||
| 1708 | |||
| 1709 | mv_stop_dma(ap); | ||
| 1710 | |||
| 1711 | mv_channel_reset(hpriv, mmio, ap->port_no); | ||
| 1712 | |||
| 1713 | __mv_phy_reset(ap, 0); | ||
| 1714 | } | ||
| 1715 | |||
| 1716 | static inline void __msleep(unsigned int msec, int can_sleep) | ||
| 1717 | { | ||
| 1718 | if (can_sleep) | ||
| 1719 | msleep(msec); | ||
| 1720 | else | ||
| 1721 | mdelay(msec); | ||
| 1722 | } | ||
| 1723 | |||
| 1205 | /** | 1724 | /** |
| 1206 | * mv_phy_reset - Perform eDMA reset followed by COMRESET | 1725 | * __mv_phy_reset - Perform eDMA reset followed by COMRESET |
| 1207 | * @ap: ATA channel to manipulate | 1726 | * @ap: ATA channel to manipulate |
| 1208 | * | 1727 | * |
| 1209 | * Part of this is taken from __sata_phy_reset and modified to | 1728 | * Part of this is taken from __sata_phy_reset and modified to |
| @@ -1213,41 +1732,47 @@ static irqreturn_t mv_interrupt(int irq, void *dev_instance, | |||
| 1213 | * Inherited from caller. This is coded to safe to call at | 1732 | * Inherited from caller. This is coded to safe to call at |
| 1214 | * interrupt level, i.e. it does not sleep. | 1733 | * interrupt level, i.e. it does not sleep. |
| 1215 | */ | 1734 | */ |
| 1216 | static void mv_phy_reset(struct ata_port *ap) | 1735 | static void __mv_phy_reset(struct ata_port *ap, int can_sleep) |
| 1217 | { | 1736 | { |
| 1737 | struct mv_port_priv *pp = ap->private_data; | ||
| 1738 | struct mv_host_priv *hpriv = ap->host_set->private_data; | ||
| 1218 | void __iomem *port_mmio = mv_ap_base(ap); | 1739 | void __iomem *port_mmio = mv_ap_base(ap); |
| 1219 | struct ata_taskfile tf; | 1740 | struct ata_taskfile tf; |
| 1220 | struct ata_device *dev = &ap->device[0]; | 1741 | struct ata_device *dev = &ap->device[0]; |
| 1221 | unsigned long timeout; | 1742 | unsigned long timeout; |
| 1743 | int retry = 5; | ||
| 1744 | u32 sstatus; | ||
| 1222 | 1745 | ||
| 1223 | VPRINTK("ENTER, port %u, mmio 0x%p\n", ap->port_no, port_mmio); | 1746 | VPRINTK("ENTER, port %u, mmio 0x%p\n", ap->port_no, port_mmio); |
| 1224 | 1747 | ||
| 1225 | mv_stop_dma(ap); | 1748 | DPRINTK("S-regs after ATA_RST: SStat 0x%08x SErr 0x%08x " |
| 1226 | |||
| 1227 | writelfl(ATA_RST, port_mmio + EDMA_CMD_OFS); | ||
| 1228 | udelay(25); /* allow reset propagation */ | ||
| 1229 | |||
| 1230 | /* Spec never mentions clearing the bit. Marvell's driver does | ||
| 1231 | * clear the bit, however. | ||
| 1232 | */ | ||
| 1233 | writelfl(0, port_mmio + EDMA_CMD_OFS); | ||
| 1234 | |||
| 1235 | VPRINTK("S-regs after ATA_RST: SStat 0x%08x SErr 0x%08x " | ||
| 1236 | "SCtrl 0x%08x\n", mv_scr_read(ap, SCR_STATUS), | 1749 | "SCtrl 0x%08x\n", mv_scr_read(ap, SCR_STATUS), |
| 1237 | mv_scr_read(ap, SCR_ERROR), mv_scr_read(ap, SCR_CONTROL)); | 1750 | mv_scr_read(ap, SCR_ERROR), mv_scr_read(ap, SCR_CONTROL)); |
| 1238 | 1751 | ||
| 1239 | /* proceed to init communications via the scr_control reg */ | 1752 | /* Issue COMRESET via SControl */ |
| 1753 | comreset_retry: | ||
| 1240 | scr_write_flush(ap, SCR_CONTROL, 0x301); | 1754 | scr_write_flush(ap, SCR_CONTROL, 0x301); |
| 1241 | mdelay(1); | 1755 | __msleep(1, can_sleep); |
| 1756 | |||
| 1242 | scr_write_flush(ap, SCR_CONTROL, 0x300); | 1757 | scr_write_flush(ap, SCR_CONTROL, 0x300); |
| 1243 | timeout = jiffies + (HZ * 1); | 1758 | __msleep(20, can_sleep); |
| 1759 | |||
| 1760 | timeout = jiffies + msecs_to_jiffies(200); | ||
| 1244 | do { | 1761 | do { |
| 1245 | mdelay(10); | 1762 | sstatus = scr_read(ap, SCR_STATUS) & 0x3; |
| 1246 | if ((scr_read(ap, SCR_STATUS) & 0xf) != 1) | 1763 | if ((sstatus == 3) || (sstatus == 0)) |
| 1247 | break; | 1764 | break; |
| 1765 | |||
| 1766 | __msleep(1, can_sleep); | ||
| 1248 | } while (time_before(jiffies, timeout)); | 1767 | } while (time_before(jiffies, timeout)); |
| 1249 | 1768 | ||
| 1250 | VPRINTK("S-regs after PHY wake: SStat 0x%08x SErr 0x%08x " | 1769 | /* work around errata */ |
| 1770 | if (IS_60XX(hpriv) && | ||
| 1771 | (sstatus != 0x0) && (sstatus != 0x113) && (sstatus != 0x123) && | ||
| 1772 | (retry-- > 0)) | ||
| 1773 | goto comreset_retry; | ||
| 1774 | |||
| 1775 | DPRINTK("S-regs after PHY wake: SStat 0x%08x SErr 0x%08x " | ||
| 1251 | "SCtrl 0x%08x\n", mv_scr_read(ap, SCR_STATUS), | 1776 | "SCtrl 0x%08x\n", mv_scr_read(ap, SCR_STATUS), |
| 1252 | mv_scr_read(ap, SCR_ERROR), mv_scr_read(ap, SCR_CONTROL)); | 1777 | mv_scr_read(ap, SCR_ERROR), mv_scr_read(ap, SCR_CONTROL)); |
| 1253 | 1778 | ||
| @@ -1261,6 +1786,21 @@ static void mv_phy_reset(struct ata_port *ap) | |||
| 1261 | } | 1786 | } |
| 1262 | ap->cbl = ATA_CBL_SATA; | 1787 | ap->cbl = ATA_CBL_SATA; |
| 1263 | 1788 | ||
| 1789 | /* even after SStatus reflects that device is ready, | ||
| 1790 | * it seems to take a while for link to be fully | ||
| 1791 | * established (and thus Status no longer 0x80/0x7F), | ||
| 1792 | * so we poll a bit for that, here. | ||
| 1793 | */ | ||
| 1794 | retry = 20; | ||
| 1795 | while (1) { | ||
| 1796 | u8 drv_stat = ata_check_status(ap); | ||
| 1797 | if ((drv_stat != 0x80) && (drv_stat != 0x7f)) | ||
| 1798 | break; | ||
| 1799 | __msleep(500, can_sleep); | ||
| 1800 | if (retry-- <= 0) | ||
| 1801 | break; | ||
| 1802 | } | ||
| 1803 | |||
| 1264 | tf.lbah = readb((void __iomem *) ap->ioaddr.lbah_addr); | 1804 | tf.lbah = readb((void __iomem *) ap->ioaddr.lbah_addr); |
| 1265 | tf.lbam = readb((void __iomem *) ap->ioaddr.lbam_addr); | 1805 | tf.lbam = readb((void __iomem *) ap->ioaddr.lbam_addr); |
| 1266 | tf.lbal = readb((void __iomem *) ap->ioaddr.lbal_addr); | 1806 | tf.lbal = readb((void __iomem *) ap->ioaddr.lbal_addr); |
| @@ -1271,9 +1811,19 @@ static void mv_phy_reset(struct ata_port *ap) | |||
| 1271 | VPRINTK("Port disabled post-sig: No device present.\n"); | 1811 | VPRINTK("Port disabled post-sig: No device present.\n"); |
| 1272 | ata_port_disable(ap); | 1812 | ata_port_disable(ap); |
| 1273 | } | 1813 | } |
| 1814 | |||
| 1815 | writelfl(0, port_mmio + EDMA_ERR_IRQ_CAUSE_OFS); | ||
| 1816 | |||
| 1817 | pp->pp_flags &= ~MV_PP_FLAG_EDMA_EN; | ||
| 1818 | |||
| 1274 | VPRINTK("EXIT\n"); | 1819 | VPRINTK("EXIT\n"); |
| 1275 | } | 1820 | } |
| 1276 | 1821 | ||
| 1822 | static void mv_phy_reset(struct ata_port *ap) | ||
| 1823 | { | ||
| 1824 | __mv_phy_reset(ap, 1); | ||
| 1825 | } | ||
| 1826 | |||
| 1277 | /** | 1827 | /** |
| 1278 | * mv_eng_timeout - Routine called by libata when SCSI times out I/O | 1828 | * mv_eng_timeout - Routine called by libata when SCSI times out I/O |
| 1279 | * @ap: ATA channel to manipulate | 1829 | * @ap: ATA channel to manipulate |
| @@ -1291,16 +1841,16 @@ static void mv_eng_timeout(struct ata_port *ap) | |||
| 1291 | 1841 | ||
| 1292 | printk(KERN_ERR "ata%u: Entering mv_eng_timeout\n",ap->id); | 1842 | printk(KERN_ERR "ata%u: Entering mv_eng_timeout\n",ap->id); |
| 1293 | DPRINTK("All regs @ start of eng_timeout\n"); | 1843 | DPRINTK("All regs @ start of eng_timeout\n"); |
| 1294 | mv_dump_all_regs(ap->host_set->mmio_base, ap->port_no, | 1844 | mv_dump_all_regs(ap->host_set->mmio_base, ap->port_no, |
| 1295 | to_pci_dev(ap->host_set->dev)); | 1845 | to_pci_dev(ap->host_set->dev)); |
| 1296 | 1846 | ||
| 1297 | qc = ata_qc_from_tag(ap, ap->active_tag); | 1847 | qc = ata_qc_from_tag(ap, ap->active_tag); |
| 1298 | printk(KERN_ERR "mmio_base %p ap %p qc %p scsi_cmnd %p &cmnd %p\n", | 1848 | printk(KERN_ERR "mmio_base %p ap %p qc %p scsi_cmnd %p &cmnd %p\n", |
| 1299 | ap->host_set->mmio_base, ap, qc, qc->scsicmd, | 1849 | ap->host_set->mmio_base, ap, qc, qc->scsicmd, |
| 1300 | &qc->scsicmd->cmnd); | 1850 | &qc->scsicmd->cmnd); |
| 1301 | 1851 | ||
| 1302 | mv_err_intr(ap); | 1852 | mv_err_intr(ap); |
| 1303 | mv_phy_reset(ap); | 1853 | mv_stop_and_reset(ap); |
| 1304 | 1854 | ||
| 1305 | if (!qc) { | 1855 | if (!qc) { |
| 1306 | printk(KERN_ERR "ata%u: BUG: timeout without command\n", | 1856 | printk(KERN_ERR "ata%u: BUG: timeout without command\n", |
| @@ -1336,17 +1886,17 @@ static void mv_port_init(struct ata_ioports *port, void __iomem *port_mmio) | |||
| 1336 | unsigned long shd_base = (unsigned long) port_mmio + SHD_BLK_OFS; | 1886 | unsigned long shd_base = (unsigned long) port_mmio + SHD_BLK_OFS; |
| 1337 | unsigned serr_ofs; | 1887 | unsigned serr_ofs; |
| 1338 | 1888 | ||
| 1339 | /* PIO related setup | 1889 | /* PIO related setup |
| 1340 | */ | 1890 | */ |
| 1341 | port->data_addr = shd_base + (sizeof(u32) * ATA_REG_DATA); | 1891 | port->data_addr = shd_base + (sizeof(u32) * ATA_REG_DATA); |
| 1342 | port->error_addr = | 1892 | port->error_addr = |
| 1343 | port->feature_addr = shd_base + (sizeof(u32) * ATA_REG_ERR); | 1893 | port->feature_addr = shd_base + (sizeof(u32) * ATA_REG_ERR); |
| 1344 | port->nsect_addr = shd_base + (sizeof(u32) * ATA_REG_NSECT); | 1894 | port->nsect_addr = shd_base + (sizeof(u32) * ATA_REG_NSECT); |
| 1345 | port->lbal_addr = shd_base + (sizeof(u32) * ATA_REG_LBAL); | 1895 | port->lbal_addr = shd_base + (sizeof(u32) * ATA_REG_LBAL); |
| 1346 | port->lbam_addr = shd_base + (sizeof(u32) * ATA_REG_LBAM); | 1896 | port->lbam_addr = shd_base + (sizeof(u32) * ATA_REG_LBAM); |
| 1347 | port->lbah_addr = shd_base + (sizeof(u32) * ATA_REG_LBAH); | 1897 | port->lbah_addr = shd_base + (sizeof(u32) * ATA_REG_LBAH); |
| 1348 | port->device_addr = shd_base + (sizeof(u32) * ATA_REG_DEVICE); | 1898 | port->device_addr = shd_base + (sizeof(u32) * ATA_REG_DEVICE); |
| 1349 | port->status_addr = | 1899 | port->status_addr = |
| 1350 | port->command_addr = shd_base + (sizeof(u32) * ATA_REG_STATUS); | 1900 | port->command_addr = shd_base + (sizeof(u32) * ATA_REG_STATUS); |
| 1351 | /* special case: control/altstatus doesn't have ATA_REG_ address */ | 1901 | /* special case: control/altstatus doesn't have ATA_REG_ address */ |
| 1352 | port->altstatus_addr = port->ctl_addr = shd_base + SHD_CTL_AST_OFS; | 1902 | port->altstatus_addr = port->ctl_addr = shd_base + SHD_CTL_AST_OFS; |
| @@ -1362,14 +1912,92 @@ static void mv_port_init(struct ata_ioports *port, void __iomem *port_mmio) | |||
| 1362 | /* unmask all EDMA error interrupts */ | 1912 | /* unmask all EDMA error interrupts */ |
| 1363 | writelfl(~0, port_mmio + EDMA_ERR_IRQ_MASK_OFS); | 1913 | writelfl(~0, port_mmio + EDMA_ERR_IRQ_MASK_OFS); |
| 1364 | 1914 | ||
| 1365 | VPRINTK("EDMA cfg=0x%08x EDMA IRQ err cause/mask=0x%08x/0x%08x\n", | 1915 | VPRINTK("EDMA cfg=0x%08x EDMA IRQ err cause/mask=0x%08x/0x%08x\n", |
| 1366 | readl(port_mmio + EDMA_CFG_OFS), | 1916 | readl(port_mmio + EDMA_CFG_OFS), |
| 1367 | readl(port_mmio + EDMA_ERR_IRQ_CAUSE_OFS), | 1917 | readl(port_mmio + EDMA_ERR_IRQ_CAUSE_OFS), |
| 1368 | readl(port_mmio + EDMA_ERR_IRQ_MASK_OFS)); | 1918 | readl(port_mmio + EDMA_ERR_IRQ_MASK_OFS)); |
| 1369 | } | 1919 | } |
| 1370 | 1920 | ||
| 1921 | static int mv_chip_id(struct pci_dev *pdev, struct mv_host_priv *hpriv, | ||
| 1922 | unsigned int board_idx) | ||
| 1923 | { | ||
| 1924 | u8 rev_id; | ||
| 1925 | u32 hp_flags = hpriv->hp_flags; | ||
| 1926 | |||
| 1927 | pci_read_config_byte(pdev, PCI_REVISION_ID, &rev_id); | ||
| 1928 | |||
| 1929 | switch(board_idx) { | ||
| 1930 | case chip_5080: | ||
| 1931 | hpriv->ops = &mv5xxx_ops; | ||
| 1932 | hp_flags |= MV_HP_50XX; | ||
| 1933 | |||
| 1934 | switch (rev_id) { | ||
| 1935 | case 0x1: | ||
| 1936 | hp_flags |= MV_HP_ERRATA_50XXB0; | ||
| 1937 | break; | ||
| 1938 | case 0x3: | ||
| 1939 | hp_flags |= MV_HP_ERRATA_50XXB2; | ||
| 1940 | break; | ||
| 1941 | default: | ||
| 1942 | dev_printk(KERN_WARNING, &pdev->dev, | ||
| 1943 | "Applying 50XXB2 workarounds to unknown rev\n"); | ||
| 1944 | hp_flags |= MV_HP_ERRATA_50XXB2; | ||
| 1945 | break; | ||
| 1946 | } | ||
| 1947 | break; | ||
| 1948 | |||
| 1949 | case chip_504x: | ||
| 1950 | case chip_508x: | ||
| 1951 | hpriv->ops = &mv5xxx_ops; | ||
| 1952 | hp_flags |= MV_HP_50XX; | ||
| 1953 | |||
| 1954 | switch (rev_id) { | ||
| 1955 | case 0x0: | ||
| 1956 | hp_flags |= MV_HP_ERRATA_50XXB0; | ||
| 1957 | break; | ||
| 1958 | case 0x3: | ||
| 1959 | hp_flags |= MV_HP_ERRATA_50XXB2; | ||
| 1960 | break; | ||
| 1961 | default: | ||
| 1962 | dev_printk(KERN_WARNING, &pdev->dev, | ||
| 1963 | "Applying B2 workarounds to unknown rev\n"); | ||
| 1964 | hp_flags |= MV_HP_ERRATA_50XXB2; | ||
| 1965 | break; | ||
| 1966 | } | ||
| 1967 | break; | ||
| 1968 | |||
| 1969 | case chip_604x: | ||
| 1970 | case chip_608x: | ||
| 1971 | hpriv->ops = &mv6xxx_ops; | ||
| 1972 | |||
| 1973 | switch (rev_id) { | ||
| 1974 | case 0x7: | ||
| 1975 | hp_flags |= MV_HP_ERRATA_60X1B2; | ||
| 1976 | break; | ||
| 1977 | case 0x9: | ||
| 1978 | hp_flags |= MV_HP_ERRATA_60X1C0; | ||
| 1979 | break; | ||
| 1980 | default: | ||
| 1981 | dev_printk(KERN_WARNING, &pdev->dev, | ||
| 1982 | "Applying B2 workarounds to unknown rev\n"); | ||
| 1983 | hp_flags |= MV_HP_ERRATA_60X1B2; | ||
| 1984 | break; | ||
| 1985 | } | ||
| 1986 | break; | ||
| 1987 | |||
| 1988 | default: | ||
| 1989 | printk(KERN_ERR DRV_NAME ": BUG: invalid board index %u\n", board_idx); | ||
| 1990 | return 1; | ||
| 1991 | } | ||
| 1992 | |||
| 1993 | hpriv->hp_flags = hp_flags; | ||
| 1994 | |||
| 1995 | return 0; | ||
| 1996 | } | ||
| 1997 | |||
| 1371 | /** | 1998 | /** |
| 1372 | * mv_host_init - Perform some early initialization of the host. | 1999 | * mv_init_host - Perform some early initialization of the host. |
| 2000 | * @pdev: host PCI device | ||
| 1373 | * @probe_ent: early data struct representing the host | 2001 | * @probe_ent: early data struct representing the host |
| 1374 | * | 2002 | * |
| 1375 | * If possible, do an early global reset of the host. Then do | 2003 | * If possible, do an early global reset of the host. Then do |
| @@ -1378,23 +2006,48 @@ static void mv_port_init(struct ata_ioports *port, void __iomem *port_mmio) | |||
| 1378 | * LOCKING: | 2006 | * LOCKING: |
| 1379 | * Inherited from caller. | 2007 | * Inherited from caller. |
| 1380 | */ | 2008 | */ |
| 1381 | static int mv_host_init(struct ata_probe_ent *probe_ent) | 2009 | static int mv_init_host(struct pci_dev *pdev, struct ata_probe_ent *probe_ent, |
| 2010 | unsigned int board_idx) | ||
| 1382 | { | 2011 | { |
| 1383 | int rc = 0, n_hc, port, hc; | 2012 | int rc = 0, n_hc, port, hc; |
| 1384 | void __iomem *mmio = probe_ent->mmio_base; | 2013 | void __iomem *mmio = probe_ent->mmio_base; |
| 1385 | void __iomem *port_mmio; | 2014 | struct mv_host_priv *hpriv = probe_ent->private_data; |
| 1386 | 2015 | ||
| 1387 | if ((MV_FLAG_GLBL_SFT_RST & probe_ent->host_flags) && | 2016 | /* global interrupt mask */ |
| 1388 | mv_global_soft_reset(probe_ent->mmio_base)) { | 2017 | writel(0, mmio + HC_MAIN_IRQ_MASK_OFS); |
| 1389 | rc = 1; | 2018 | |
| 2019 | rc = mv_chip_id(pdev, hpriv, board_idx); | ||
| 2020 | if (rc) | ||
| 1390 | goto done; | 2021 | goto done; |
| 1391 | } | ||
| 1392 | 2022 | ||
| 1393 | n_hc = mv_get_hc_count(probe_ent->host_flags); | 2023 | n_hc = mv_get_hc_count(probe_ent->host_flags); |
| 1394 | probe_ent->n_ports = MV_PORTS_PER_HC * n_hc; | 2024 | probe_ent->n_ports = MV_PORTS_PER_HC * n_hc; |
| 1395 | 2025 | ||
| 2026 | for (port = 0; port < probe_ent->n_ports; port++) | ||
| 2027 | hpriv->ops->read_preamp(hpriv, port, mmio); | ||
| 2028 | |||
| 2029 | rc = hpriv->ops->reset_hc(hpriv, mmio, n_hc); | ||
| 2030 | if (rc) | ||
| 2031 | goto done; | ||
| 2032 | |||
| 2033 | hpriv->ops->reset_flash(hpriv, mmio); | ||
| 2034 | hpriv->ops->reset_bus(pdev, mmio); | ||
| 2035 | hpriv->ops->enable_leds(hpriv, mmio); | ||
| 2036 | |||
| 1396 | for (port = 0; port < probe_ent->n_ports; port++) { | 2037 | for (port = 0; port < probe_ent->n_ports; port++) { |
| 1397 | port_mmio = mv_port_base(mmio, port); | 2038 | if (IS_60XX(hpriv)) { |
| 2039 | void __iomem *port_mmio = mv_port_base(mmio, port); | ||
| 2040 | |||
| 2041 | u32 ifctl = readl(port_mmio + SATA_INTERFACE_CTL); | ||
| 2042 | ifctl |= (1 << 12); | ||
| 2043 | writelfl(ifctl, port_mmio + SATA_INTERFACE_CTL); | ||
| 2044 | } | ||
| 2045 | |||
| 2046 | hpriv->ops->phy_errata(hpriv, mmio, port); | ||
| 2047 | } | ||
| 2048 | |||
| 2049 | for (port = 0; port < probe_ent->n_ports; port++) { | ||
| 2050 | void __iomem *port_mmio = mv_port_base(mmio, port); | ||
| 1398 | mv_port_init(&probe_ent->port[port], port_mmio); | 2051 | mv_port_init(&probe_ent->port[port], port_mmio); |
| 1399 | } | 2052 | } |
| 1400 | 2053 | ||
| @@ -1418,11 +2071,12 @@ static int mv_host_init(struct ata_probe_ent *probe_ent) | |||
| 1418 | writelfl(~HC_MAIN_MASKED_IRQS, mmio + HC_MAIN_IRQ_MASK_OFS); | 2071 | writelfl(~HC_MAIN_MASKED_IRQS, mmio + HC_MAIN_IRQ_MASK_OFS); |
| 1419 | 2072 | ||
| 1420 | VPRINTK("HC MAIN IRQ cause/mask=0x%08x/0x%08x " | 2073 | VPRINTK("HC MAIN IRQ cause/mask=0x%08x/0x%08x " |
| 1421 | "PCI int cause/mask=0x%08x/0x%08x\n", | 2074 | "PCI int cause/mask=0x%08x/0x%08x\n", |
| 1422 | readl(mmio + HC_MAIN_IRQ_CAUSE_OFS), | 2075 | readl(mmio + HC_MAIN_IRQ_CAUSE_OFS), |
| 1423 | readl(mmio + HC_MAIN_IRQ_MASK_OFS), | 2076 | readl(mmio + HC_MAIN_IRQ_MASK_OFS), |
| 1424 | readl(mmio + PCI_IRQ_CAUSE_OFS), | 2077 | readl(mmio + PCI_IRQ_CAUSE_OFS), |
| 1425 | readl(mmio + PCI_IRQ_MASK_OFS)); | 2078 | readl(mmio + PCI_IRQ_MASK_OFS)); |
| 2079 | |||
| 1426 | done: | 2080 | done: |
| 1427 | return rc; | 2081 | return rc; |
| 1428 | } | 2082 | } |
| @@ -1458,7 +2112,7 @@ static void mv_print_info(struct ata_probe_ent *probe_ent) | |||
| 1458 | 2112 | ||
| 1459 | dev_printk(KERN_INFO, &pdev->dev, | 2113 | dev_printk(KERN_INFO, &pdev->dev, |
| 1460 | "%u slots %u ports %s mode IRQ via %s\n", | 2114 | "%u slots %u ports %s mode IRQ via %s\n", |
| 1461 | (unsigned)MV_MAX_Q_DEPTH, probe_ent->n_ports, | 2115 | (unsigned)MV_MAX_Q_DEPTH, probe_ent->n_ports, |
| 1462 | scc_s, (MV_HP_FLAG_MSI & hpriv->hp_flags) ? "MSI" : "INTx"); | 2116 | scc_s, (MV_HP_FLAG_MSI & hpriv->hp_flags) ? "MSI" : "INTx"); |
| 1463 | } | 2117 | } |
| 1464 | 2118 | ||
| @@ -1528,7 +2182,7 @@ static int mv_init_one(struct pci_dev *pdev, const struct pci_device_id *ent) | |||
| 1528 | probe_ent->private_data = hpriv; | 2182 | probe_ent->private_data = hpriv; |
| 1529 | 2183 | ||
| 1530 | /* initialize adapter */ | 2184 | /* initialize adapter */ |
| 1531 | rc = mv_host_init(probe_ent); | 2185 | rc = mv_init_host(pdev, probe_ent, board_idx); |
| 1532 | if (rc) { | 2186 | if (rc) { |
| 1533 | goto err_out_hpriv; | 2187 | goto err_out_hpriv; |
| 1534 | } | 2188 | } |
diff --git a/drivers/scsi/sata_promise.c b/drivers/scsi/sata_promise.c index 242d906987ad..8a8e3e3ef0ed 100644 --- a/drivers/scsi/sata_promise.c +++ b/drivers/scsi/sata_promise.c | |||
| @@ -46,7 +46,7 @@ | |||
| 46 | #include "sata_promise.h" | 46 | #include "sata_promise.h" |
| 47 | 47 | ||
| 48 | #define DRV_NAME "sata_promise" | 48 | #define DRV_NAME "sata_promise" |
| 49 | #define DRV_VERSION "1.02" | 49 | #define DRV_VERSION "1.03" |
| 50 | 50 | ||
| 51 | 51 | ||
| 52 | enum { | 52 | enum { |
diff --git a/drivers/scsi/sata_qstor.c b/drivers/scsi/sata_qstor.c index 4a6d3067d23c..a8987f5ff5cc 100644 --- a/drivers/scsi/sata_qstor.c +++ b/drivers/scsi/sata_qstor.c | |||
| @@ -41,7 +41,7 @@ | |||
| 41 | #include <linux/libata.h> | 41 | #include <linux/libata.h> |
| 42 | 42 | ||
| 43 | #define DRV_NAME "sata_qstor" | 43 | #define DRV_NAME "sata_qstor" |
| 44 | #define DRV_VERSION "0.04" | 44 | #define DRV_VERSION "0.05" |
| 45 | 45 | ||
| 46 | enum { | 46 | enum { |
| 47 | QS_PORTS = 4, | 47 | QS_PORTS = 4, |
diff --git a/drivers/scsi/sata_sil24.c b/drivers/scsi/sata_sil24.c index 55e744d6db88..e0d6f194f54f 100644 --- a/drivers/scsi/sata_sil24.c +++ b/drivers/scsi/sata_sil24.c | |||
| @@ -5,17 +5,6 @@ | |||
| 5 | * | 5 | * |
| 6 | * Based on preview driver from Silicon Image. | 6 | * Based on preview driver from Silicon Image. |
| 7 | * | 7 | * |
| 8 | * NOTE: No NCQ/ATAPI support yet. The preview driver didn't support | ||
| 9 | * NCQ nor ATAPI, and, unfortunately, I couldn't find out how to make | ||
| 10 | * those work. Enabling those shouldn't be difficult. Basic | ||
| 11 | * structure is all there (in libata-dev tree). If you have any | ||
| 12 | * information about this hardware, please contact me or linux-ide. | ||
| 13 | * Info is needed on... | ||
| 14 | * | ||
| 15 | * - How to issue tagged commands and turn on sactive on issue accordingly. | ||
| 16 | * - Where to put an ATAPI command and how to tell the device to send it. | ||
| 17 | * - How to enable/use 64bit. | ||
| 18 | * | ||
| 19 | * This program is free software; you can redistribute it and/or modify it | 8 | * This program is free software; you can redistribute it and/or modify it |
| 20 | * under the terms of the GNU General Public License as published by the | 9 | * under the terms of the GNU General Public License as published by the |
| 21 | * Free Software Foundation; either version 2, or (at your option) any | 10 | * Free Software Foundation; either version 2, or (at your option) any |
| @@ -42,7 +31,7 @@ | |||
| 42 | #include <asm/io.h> | 31 | #include <asm/io.h> |
| 43 | 32 | ||
| 44 | #define DRV_NAME "sata_sil24" | 33 | #define DRV_NAME "sata_sil24" |
| 45 | #define DRV_VERSION "0.22" /* Silicon Image's preview driver was 0.10 */ | 34 | #define DRV_VERSION "0.23" |
| 46 | 35 | ||
| 47 | /* | 36 | /* |
| 48 | * Port request block (PRB) 32 bytes | 37 | * Port request block (PRB) 32 bytes |
| @@ -139,6 +128,7 @@ enum { | |||
| 139 | PORT_CS_DEV_RST = (1 << 1), /* device reset */ | 128 | PORT_CS_DEV_RST = (1 << 1), /* device reset */ |
| 140 | PORT_CS_INIT = (1 << 2), /* port initialize */ | 129 | PORT_CS_INIT = (1 << 2), /* port initialize */ |
| 141 | PORT_CS_IRQ_WOC = (1 << 3), /* interrupt write one to clear */ | 130 | PORT_CS_IRQ_WOC = (1 << 3), /* interrupt write one to clear */ |
| 131 | PORT_CS_CDB16 = (1 << 5), /* 0=12b cdb, 1=16b cdb */ | ||
| 142 | PORT_CS_RESUME = (1 << 6), /* port resume */ | 132 | PORT_CS_RESUME = (1 << 6), /* port resume */ |
| 143 | PORT_CS_32BIT_ACTV = (1 << 10), /* 32-bit activation */ | 133 | PORT_CS_32BIT_ACTV = (1 << 10), /* 32-bit activation */ |
| 144 | PORT_CS_PM_EN = (1 << 13), /* port multiplier enable */ | 134 | PORT_CS_PM_EN = (1 << 13), /* port multiplier enable */ |
| @@ -188,11 +178,29 @@ enum { | |||
| 188 | PORT_CERR_XFR_PCIPERR = 35, /* PSD ecode 11 - PCI prity err during transfer */ | 178 | PORT_CERR_XFR_PCIPERR = 35, /* PSD ecode 11 - PCI prity err during transfer */ |
| 189 | PORT_CERR_SENDSERVICE = 36, /* FIS received while sending service */ | 179 | PORT_CERR_SENDSERVICE = 36, /* FIS received while sending service */ |
| 190 | 180 | ||
| 181 | /* bits of PRB control field */ | ||
| 182 | PRB_CTRL_PROTOCOL = (1 << 0), /* override def. ATA protocol */ | ||
| 183 | PRB_CTRL_PACKET_READ = (1 << 4), /* PACKET cmd read */ | ||
| 184 | PRB_CTRL_PACKET_WRITE = (1 << 5), /* PACKET cmd write */ | ||
| 185 | PRB_CTRL_NIEN = (1 << 6), /* Mask completion irq */ | ||
| 186 | PRB_CTRL_SRST = (1 << 7), /* Soft reset request (ign BSY?) */ | ||
| 187 | |||
| 188 | /* PRB protocol field */ | ||
| 189 | PRB_PROT_PACKET = (1 << 0), | ||
| 190 | PRB_PROT_TCQ = (1 << 1), | ||
| 191 | PRB_PROT_NCQ = (1 << 2), | ||
| 192 | PRB_PROT_READ = (1 << 3), | ||
| 193 | PRB_PROT_WRITE = (1 << 4), | ||
| 194 | PRB_PROT_TRANSPARENT = (1 << 5), | ||
| 195 | |||
| 191 | /* | 196 | /* |
| 192 | * Other constants | 197 | * Other constants |
| 193 | */ | 198 | */ |
| 194 | SGE_TRM = (1 << 31), /* Last SGE in chain */ | 199 | SGE_TRM = (1 << 31), /* Last SGE in chain */ |
| 195 | PRB_SOFT_RST = (1 << 7), /* Soft reset request (ign BSY?) */ | 200 | SGE_LNK = (1 << 30), /* linked list |
| 201 | Points to SGT, not SGE */ | ||
| 202 | SGE_DRD = (1 << 29), /* discard data read (/dev/null) | ||
| 203 | data address ignored */ | ||
| 196 | 204 | ||
| 197 | /* board id */ | 205 | /* board id */ |
| 198 | BID_SIL3124 = 0, | 206 | BID_SIL3124 = 0, |
| @@ -202,11 +210,22 @@ enum { | |||
| 202 | IRQ_STAT_4PORTS = 0xf, | 210 | IRQ_STAT_4PORTS = 0xf, |
| 203 | }; | 211 | }; |
| 204 | 212 | ||
| 205 | struct sil24_cmd_block { | 213 | struct sil24_ata_block { |
| 206 | struct sil24_prb prb; | 214 | struct sil24_prb prb; |
| 207 | struct sil24_sge sge[LIBATA_MAX_PRD]; | 215 | struct sil24_sge sge[LIBATA_MAX_PRD]; |
| 208 | }; | 216 | }; |
| 209 | 217 | ||
| 218 | struct sil24_atapi_block { | ||
| 219 | struct sil24_prb prb; | ||
| 220 | u8 cdb[16]; | ||
| 221 | struct sil24_sge sge[LIBATA_MAX_PRD - 1]; | ||
| 222 | }; | ||
| 223 | |||
| 224 | union sil24_cmd_block { | ||
| 225 | struct sil24_ata_block ata; | ||
| 226 | struct sil24_atapi_block atapi; | ||
| 227 | }; | ||
| 228 | |||
| 210 | /* | 229 | /* |
| 211 | * ap->private_data | 230 | * ap->private_data |
| 212 | * | 231 | * |
| @@ -214,7 +233,7 @@ struct sil24_cmd_block { | |||
| 214 | * here from the previous interrupt. | 233 | * here from the previous interrupt. |
| 215 | */ | 234 | */ |
| 216 | struct sil24_port_priv { | 235 | struct sil24_port_priv { |
| 217 | struct sil24_cmd_block *cmd_block; /* 32 cmd blocks */ | 236 | union sil24_cmd_block *cmd_block; /* 32 cmd blocks */ |
| 218 | dma_addr_t cmd_block_dma; /* DMA base addr for them */ | 237 | dma_addr_t cmd_block_dma; /* DMA base addr for them */ |
| 219 | struct ata_taskfile tf; /* Cached taskfile registers */ | 238 | struct ata_taskfile tf; /* Cached taskfile registers */ |
| 220 | }; | 239 | }; |
| @@ -225,6 +244,7 @@ struct sil24_host_priv { | |||
| 225 | void __iomem *port_base; /* port registers (4 * 8192 bytes @BAR2) */ | 244 | void __iomem *port_base; /* port registers (4 * 8192 bytes @BAR2) */ |
| 226 | }; | 245 | }; |
| 227 | 246 | ||
| 247 | static void sil24_dev_config(struct ata_port *ap, struct ata_device *dev); | ||
| 228 | static u8 sil24_check_status(struct ata_port *ap); | 248 | static u8 sil24_check_status(struct ata_port *ap); |
| 229 | static u32 sil24_scr_read(struct ata_port *ap, unsigned sc_reg); | 249 | static u32 sil24_scr_read(struct ata_port *ap, unsigned sc_reg); |
| 230 | static void sil24_scr_write(struct ata_port *ap, unsigned sc_reg, u32 val); | 250 | static void sil24_scr_write(struct ata_port *ap, unsigned sc_reg, u32 val); |
| @@ -278,6 +298,8 @@ static struct scsi_host_template sil24_sht = { | |||
| 278 | static const struct ata_port_operations sil24_ops = { | 298 | static const struct ata_port_operations sil24_ops = { |
| 279 | .port_disable = ata_port_disable, | 299 | .port_disable = ata_port_disable, |
| 280 | 300 | ||
| 301 | .dev_config = sil24_dev_config, | ||
| 302 | |||
| 281 | .check_status = sil24_check_status, | 303 | .check_status = sil24_check_status, |
| 282 | .check_altstatus = sil24_check_status, | 304 | .check_altstatus = sil24_check_status, |
| 283 | .dev_select = ata_noop_dev_select, | 305 | .dev_select = ata_noop_dev_select, |
| @@ -314,7 +336,7 @@ static struct ata_port_info sil24_port_info[] = { | |||
| 314 | { | 336 | { |
| 315 | .sht = &sil24_sht, | 337 | .sht = &sil24_sht, |
| 316 | .host_flags = ATA_FLAG_SATA | ATA_FLAG_NO_LEGACY | | 338 | .host_flags = ATA_FLAG_SATA | ATA_FLAG_NO_LEGACY | |
| 317 | ATA_FLAG_SATA_RESET | ATA_FLAG_MMIO | | 339 | ATA_FLAG_SRST | ATA_FLAG_MMIO | |
| 318 | ATA_FLAG_PIO_DMA | SIL24_NPORTS2FLAG(4), | 340 | ATA_FLAG_PIO_DMA | SIL24_NPORTS2FLAG(4), |
| 319 | .pio_mask = 0x1f, /* pio0-4 */ | 341 | .pio_mask = 0x1f, /* pio0-4 */ |
| 320 | .mwdma_mask = 0x07, /* mwdma0-2 */ | 342 | .mwdma_mask = 0x07, /* mwdma0-2 */ |
| @@ -325,7 +347,7 @@ static struct ata_port_info sil24_port_info[] = { | |||
| 325 | { | 347 | { |
| 326 | .sht = &sil24_sht, | 348 | .sht = &sil24_sht, |
| 327 | .host_flags = ATA_FLAG_SATA | ATA_FLAG_NO_LEGACY | | 349 | .host_flags = ATA_FLAG_SATA | ATA_FLAG_NO_LEGACY | |
| 328 | ATA_FLAG_SATA_RESET | ATA_FLAG_MMIO | | 350 | ATA_FLAG_SRST | ATA_FLAG_MMIO | |
| 329 | ATA_FLAG_PIO_DMA | SIL24_NPORTS2FLAG(2), | 351 | ATA_FLAG_PIO_DMA | SIL24_NPORTS2FLAG(2), |
| 330 | .pio_mask = 0x1f, /* pio0-4 */ | 352 | .pio_mask = 0x1f, /* pio0-4 */ |
| 331 | .mwdma_mask = 0x07, /* mwdma0-2 */ | 353 | .mwdma_mask = 0x07, /* mwdma0-2 */ |
| @@ -336,7 +358,7 @@ static struct ata_port_info sil24_port_info[] = { | |||
| 336 | { | 358 | { |
| 337 | .sht = &sil24_sht, | 359 | .sht = &sil24_sht, |
| 338 | .host_flags = ATA_FLAG_SATA | ATA_FLAG_NO_LEGACY | | 360 | .host_flags = ATA_FLAG_SATA | ATA_FLAG_NO_LEGACY | |
| 339 | ATA_FLAG_SATA_RESET | ATA_FLAG_MMIO | | 361 | ATA_FLAG_SRST | ATA_FLAG_MMIO | |
| 340 | ATA_FLAG_PIO_DMA | SIL24_NPORTS2FLAG(1), | 362 | ATA_FLAG_PIO_DMA | SIL24_NPORTS2FLAG(1), |
| 341 | .pio_mask = 0x1f, /* pio0-4 */ | 363 | .pio_mask = 0x1f, /* pio0-4 */ |
| 342 | .mwdma_mask = 0x07, /* mwdma0-2 */ | 364 | .mwdma_mask = 0x07, /* mwdma0-2 */ |
| @@ -345,6 +367,16 @@ static struct ata_port_info sil24_port_info[] = { | |||
| 345 | }, | 367 | }, |
| 346 | }; | 368 | }; |
| 347 | 369 | ||
| 370 | static void sil24_dev_config(struct ata_port *ap, struct ata_device *dev) | ||
| 371 | { | ||
| 372 | void __iomem *port = (void __iomem *)ap->ioaddr.cmd_addr; | ||
| 373 | |||
| 374 | if (ap->cdb_len == 16) | ||
| 375 | writel(PORT_CS_CDB16, port + PORT_CTRL_STAT); | ||
| 376 | else | ||
| 377 | writel(PORT_CS_CDB16, port + PORT_CTRL_CLR); | ||
| 378 | } | ||
| 379 | |||
| 348 | static inline void sil24_update_tf(struct ata_port *ap) | 380 | static inline void sil24_update_tf(struct ata_port *ap) |
| 349 | { | 381 | { |
| 350 | struct sil24_port_priv *pp = ap->private_data; | 382 | struct sil24_port_priv *pp = ap->private_data; |
| @@ -396,22 +428,73 @@ static void sil24_tf_read(struct ata_port *ap, struct ata_taskfile *tf) | |||
| 396 | *tf = pp->tf; | 428 | *tf = pp->tf; |
| 397 | } | 429 | } |
| 398 | 430 | ||
| 399 | static void sil24_phy_reset(struct ata_port *ap) | 431 | static int sil24_issue_SRST(struct ata_port *ap) |
| 400 | { | 432 | { |
| 401 | __sata_phy_reset(ap); | 433 | void __iomem *port = (void __iomem *)ap->ioaddr.cmd_addr; |
| 434 | struct sil24_port_priv *pp = ap->private_data; | ||
| 435 | struct sil24_prb *prb = &pp->cmd_block[0].ata.prb; | ||
| 436 | dma_addr_t paddr = pp->cmd_block_dma; | ||
| 437 | u32 irq_enable, irq_stat; | ||
| 438 | int cnt; | ||
| 439 | |||
| 440 | /* temporarily turn off IRQs during SRST */ | ||
| 441 | irq_enable = readl(port + PORT_IRQ_ENABLE_SET); | ||
| 442 | writel(irq_enable, port + PORT_IRQ_ENABLE_CLR); | ||
| 443 | |||
| 402 | /* | 444 | /* |
| 403 | * No ATAPI yet. Just unconditionally indicate ATA device. | 445 | * XXX: Not sure whether the following sleep is needed or not. |
| 404 | * If ATAPI device is attached, it will fail ATA_CMD_ID_ATA | 446 | * The original driver had it. So.... |
| 405 | * and libata core will ignore the device. | ||
| 406 | */ | 447 | */ |
| 407 | if (!(ap->flags & ATA_FLAG_PORT_DISABLED)) | 448 | msleep(10); |
| 408 | ap->device[0].class = ATA_DEV_ATA; | 449 | |
| 450 | prb->ctrl = PRB_CTRL_SRST; | ||
| 451 | prb->fis[1] = 0; /* no PM yet */ | ||
| 452 | |||
| 453 | writel((u32)paddr, port + PORT_CMD_ACTIVATE); | ||
| 454 | |||
| 455 | for (cnt = 0; cnt < 100; cnt++) { | ||
| 456 | irq_stat = readl(port + PORT_IRQ_STAT); | ||
| 457 | writel(irq_stat, port + PORT_IRQ_STAT); /* clear irq */ | ||
| 458 | |||
| 459 | irq_stat >>= PORT_IRQ_RAW_SHIFT; | ||
| 460 | if (irq_stat & (PORT_IRQ_COMPLETE | PORT_IRQ_ERROR)) | ||
| 461 | break; | ||
| 462 | |||
| 463 | msleep(1); | ||
| 464 | } | ||
| 465 | |||
| 466 | /* restore IRQs */ | ||
| 467 | writel(irq_enable, port + PORT_IRQ_ENABLE_SET); | ||
| 468 | |||
| 469 | if (!(irq_stat & PORT_IRQ_COMPLETE)) | ||
| 470 | return -1; | ||
| 471 | |||
| 472 | /* update TF */ | ||
| 473 | sil24_update_tf(ap); | ||
| 474 | return 0; | ||
| 475 | } | ||
| 476 | |||
| 477 | static void sil24_phy_reset(struct ata_port *ap) | ||
| 478 | { | ||
| 479 | struct sil24_port_priv *pp = ap->private_data; | ||
| 480 | |||
| 481 | __sata_phy_reset(ap); | ||
| 482 | if (ap->flags & ATA_FLAG_PORT_DISABLED) | ||
| 483 | return; | ||
| 484 | |||
| 485 | if (sil24_issue_SRST(ap) < 0) { | ||
| 486 | printk(KERN_ERR DRV_NAME | ||
| 487 | " ata%u: SRST failed, disabling port\n", ap->id); | ||
| 488 | ap->ops->port_disable(ap); | ||
| 489 | return; | ||
| 490 | } | ||
| 491 | |||
| 492 | ap->device->class = ata_dev_classify(&pp->tf); | ||
| 409 | } | 493 | } |
| 410 | 494 | ||
| 411 | static inline void sil24_fill_sg(struct ata_queued_cmd *qc, | 495 | static inline void sil24_fill_sg(struct ata_queued_cmd *qc, |
| 412 | struct sil24_cmd_block *cb) | 496 | struct sil24_sge *sge) |
| 413 | { | 497 | { |
| 414 | struct sil24_sge *sge = cb->sge; | ||
| 415 | struct scatterlist *sg; | 498 | struct scatterlist *sg; |
| 416 | unsigned int idx = 0; | 499 | unsigned int idx = 0; |
| 417 | 500 | ||
| @@ -432,23 +515,47 @@ static void sil24_qc_prep(struct ata_queued_cmd *qc) | |||
| 432 | { | 515 | { |
| 433 | struct ata_port *ap = qc->ap; | 516 | struct ata_port *ap = qc->ap; |
| 434 | struct sil24_port_priv *pp = ap->private_data; | 517 | struct sil24_port_priv *pp = ap->private_data; |
| 435 | struct sil24_cmd_block *cb = pp->cmd_block + qc->tag; | 518 | union sil24_cmd_block *cb = pp->cmd_block + qc->tag; |
| 436 | struct sil24_prb *prb = &cb->prb; | 519 | struct sil24_prb *prb; |
| 520 | struct sil24_sge *sge; | ||
| 437 | 521 | ||
| 438 | switch (qc->tf.protocol) { | 522 | switch (qc->tf.protocol) { |
| 439 | case ATA_PROT_PIO: | 523 | case ATA_PROT_PIO: |
| 440 | case ATA_PROT_DMA: | 524 | case ATA_PROT_DMA: |
| 441 | case ATA_PROT_NODATA: | 525 | case ATA_PROT_NODATA: |
| 526 | prb = &cb->ata.prb; | ||
| 527 | sge = cb->ata.sge; | ||
| 528 | prb->ctrl = 0; | ||
| 529 | break; | ||
| 530 | |||
| 531 | case ATA_PROT_ATAPI: | ||
| 532 | case ATA_PROT_ATAPI_DMA: | ||
| 533 | case ATA_PROT_ATAPI_NODATA: | ||
| 534 | prb = &cb->atapi.prb; | ||
| 535 | sge = cb->atapi.sge; | ||
| 536 | memset(cb->atapi.cdb, 0, 32); | ||
| 537 | memcpy(cb->atapi.cdb, qc->cdb, ap->cdb_len); | ||
| 538 | |||
| 539 | if (qc->tf.protocol != ATA_PROT_ATAPI_NODATA) { | ||
| 540 | if (qc->tf.flags & ATA_TFLAG_WRITE) | ||
| 541 | prb->ctrl = PRB_CTRL_PACKET_WRITE; | ||
| 542 | else | ||
| 543 | prb->ctrl = PRB_CTRL_PACKET_READ; | ||
| 544 | } else | ||
| 545 | prb->ctrl = 0; | ||
| 546 | |||
| 442 | break; | 547 | break; |
| 548 | |||
| 443 | default: | 549 | default: |
| 444 | /* ATAPI isn't supported yet */ | 550 | prb = NULL; /* shut up, gcc */ |
| 551 | sge = NULL; | ||
| 445 | BUG(); | 552 | BUG(); |
| 446 | } | 553 | } |
| 447 | 554 | ||
| 448 | ata_tf_to_fis(&qc->tf, prb->fis, 0); | 555 | ata_tf_to_fis(&qc->tf, prb->fis, 0); |
| 449 | 556 | ||
| 450 | if (qc->flags & ATA_QCFLAG_DMAMAP) | 557 | if (qc->flags & ATA_QCFLAG_DMAMAP) |
| 451 | sil24_fill_sg(qc, cb); | 558 | sil24_fill_sg(qc, sge); |
| 452 | } | 559 | } |
| 453 | 560 | ||
| 454 | static int sil24_qc_issue(struct ata_queued_cmd *qc) | 561 | static int sil24_qc_issue(struct ata_queued_cmd *qc) |
| @@ -467,6 +574,31 @@ static void sil24_irq_clear(struct ata_port *ap) | |||
| 467 | /* unused */ | 574 | /* unused */ |
| 468 | } | 575 | } |
| 469 | 576 | ||
| 577 | static int __sil24_restart_controller(void __iomem *port) | ||
| 578 | { | ||
| 579 | u32 tmp; | ||
| 580 | int cnt; | ||
| 581 | |||
| 582 | writel(PORT_CS_INIT, port + PORT_CTRL_STAT); | ||
| 583 | |||
| 584 | /* Max ~10ms */ | ||
| 585 | for (cnt = 0; cnt < 10000; cnt++) { | ||
| 586 | tmp = readl(port + PORT_CTRL_STAT); | ||
| 587 | if (tmp & PORT_CS_RDY) | ||
| 588 | return 0; | ||
| 589 | udelay(1); | ||
| 590 | } | ||
| 591 | |||
| 592 | return -1; | ||
| 593 | } | ||
| 594 | |||
| 595 | static void sil24_restart_controller(struct ata_port *ap) | ||
| 596 | { | ||
| 597 | if (__sil24_restart_controller((void __iomem *)ap->ioaddr.cmd_addr)) | ||
| 598 | printk(KERN_ERR DRV_NAME | ||
| 599 | " ata%u: failed to restart controller\n", ap->id); | ||
| 600 | } | ||
| 601 | |||
| 470 | static int __sil24_reset_controller(void __iomem *port) | 602 | static int __sil24_reset_controller(void __iomem *port) |
| 471 | { | 603 | { |
| 472 | int cnt; | 604 | int cnt; |
| @@ -486,7 +618,11 @@ static int __sil24_reset_controller(void __iomem *port) | |||
| 486 | 618 | ||
| 487 | if (tmp & PORT_CS_DEV_RST) | 619 | if (tmp & PORT_CS_DEV_RST) |
| 488 | return -1; | 620 | return -1; |
| 489 | return 0; | 621 | |
| 622 | if (tmp & PORT_CS_RDY) | ||
| 623 | return 0; | ||
| 624 | |||
| 625 | return __sil24_restart_controller(port); | ||
| 490 | } | 626 | } |
| 491 | 627 | ||
| 492 | static void sil24_reset_controller(struct ata_port *ap) | 628 | static void sil24_reset_controller(struct ata_port *ap) |
| @@ -548,9 +684,15 @@ static void sil24_error_intr(struct ata_port *ap, u32 slot_stat) | |||
| 548 | if (serror) | 684 | if (serror) |
| 549 | writel(serror, port + PORT_SERROR); | 685 | writel(serror, port + PORT_SERROR); |
| 550 | 686 | ||
| 551 | printk(KERN_ERR DRV_NAME " ata%u: error interrupt on port%d\n" | 687 | /* |
| 552 | " stat=0x%x irq=0x%x cmd_err=%d sstatus=0x%x serror=0x%x\n", | 688 | * Don't log ATAPI device errors. They're supposed to happen |
| 553 | ap->id, ap->port_no, slot_stat, irq_stat, cmd_err, sstatus, serror); | 689 | * and any serious errors will be logged using sense data by |
| 690 | * the SCSI layer. | ||
| 691 | */ | ||
| 692 | if (ap->device[0].class != ATA_DEV_ATAPI || cmd_err > PORT_CERR_SDB) | ||
| 693 | printk("ata%u: error interrupt on port%d\n" | ||
| 694 | " stat=0x%x irq=0x%x cmd_err=%d sstatus=0x%x serror=0x%x\n", | ||
| 695 | ap->id, ap->port_no, slot_stat, irq_stat, cmd_err, sstatus, serror); | ||
| 554 | 696 | ||
| 555 | if (cmd_err == PORT_CERR_DEV || cmd_err == PORT_CERR_SDB) { | 697 | if (cmd_err == PORT_CERR_DEV || cmd_err == PORT_CERR_SDB) { |
| 556 | /* | 698 | /* |
| @@ -558,6 +700,7 @@ static void sil24_error_intr(struct ata_port *ap, u32 slot_stat) | |||
| 558 | */ | 700 | */ |
| 559 | sil24_update_tf(ap); | 701 | sil24_update_tf(ap); |
| 560 | err_mask = ac_err_mask(pp->tf.command); | 702 | err_mask = ac_err_mask(pp->tf.command); |
| 703 | sil24_restart_controller(ap); | ||
| 561 | } else { | 704 | } else { |
| 562 | /* | 705 | /* |
| 563 | * Other errors. libata currently doesn't have any | 706 | * Other errors. libata currently doesn't have any |
| @@ -565,12 +708,11 @@ static void sil24_error_intr(struct ata_port *ap, u32 slot_stat) | |||
| 565 | * ATA_ERR. | 708 | * ATA_ERR. |
| 566 | */ | 709 | */ |
| 567 | err_mask = AC_ERR_OTHER; | 710 | err_mask = AC_ERR_OTHER; |
| 711 | sil24_reset_controller(ap); | ||
| 568 | } | 712 | } |
| 569 | 713 | ||
| 570 | if (qc) | 714 | if (qc) |
| 571 | ata_qc_complete(qc, err_mask); | 715 | ata_qc_complete(qc, err_mask); |
| 572 | |||
| 573 | sil24_reset_controller(ap); | ||
| 574 | } | 716 | } |
| 575 | 717 | ||
| 576 | static inline void sil24_host_intr(struct ata_port *ap) | 718 | static inline void sil24_host_intr(struct ata_port *ap) |
| @@ -646,7 +788,7 @@ static int sil24_port_start(struct ata_port *ap) | |||
| 646 | { | 788 | { |
| 647 | struct device *dev = ap->host_set->dev; | 789 | struct device *dev = ap->host_set->dev; |
| 648 | struct sil24_port_priv *pp; | 790 | struct sil24_port_priv *pp; |
| 649 | struct sil24_cmd_block *cb; | 791 | union sil24_cmd_block *cb; |
| 650 | size_t cb_size = sizeof(*cb); | 792 | size_t cb_size = sizeof(*cb); |
| 651 | dma_addr_t cb_dma; | 793 | dma_addr_t cb_dma; |
| 652 | int rc = -ENOMEM; | 794 | int rc = -ENOMEM; |
diff --git a/drivers/scsi/sata_svw.c b/drivers/scsi/sata_svw.c index 57e5a9d964c3..6e7f7c83a75a 100644 --- a/drivers/scsi/sata_svw.c +++ b/drivers/scsi/sata_svw.c | |||
| @@ -54,7 +54,7 @@ | |||
| 54 | #endif /* CONFIG_PPC_OF */ | 54 | #endif /* CONFIG_PPC_OF */ |
| 55 | 55 | ||
| 56 | #define DRV_NAME "sata_svw" | 56 | #define DRV_NAME "sata_svw" |
| 57 | #define DRV_VERSION "1.06" | 57 | #define DRV_VERSION "1.07" |
| 58 | 58 | ||
| 59 | /* Taskfile registers offsets */ | 59 | /* Taskfile registers offsets */ |
| 60 | #define K2_SATA_TF_CMD_OFFSET 0x00 | 60 | #define K2_SATA_TF_CMD_OFFSET 0x00 |
diff --git a/drivers/scsi/sata_sx4.c b/drivers/scsi/sata_sx4.c index b4bbe48acab0..dcc3ad9a9d6e 100644 --- a/drivers/scsi/sata_sx4.c +++ b/drivers/scsi/sata_sx4.c | |||
| @@ -46,7 +46,7 @@ | |||
| 46 | #include "sata_promise.h" | 46 | #include "sata_promise.h" |
| 47 | 47 | ||
| 48 | #define DRV_NAME "sata_sx4" | 48 | #define DRV_NAME "sata_sx4" |
| 49 | #define DRV_VERSION "0.7" | 49 | #define DRV_VERSION "0.8" |
| 50 | 50 | ||
| 51 | 51 | ||
| 52 | enum { | 52 | enum { |
diff --git a/drivers/scsi/sata_vsc.c b/drivers/scsi/sata_vsc.c index 77a6e4b9262d..fcfa486965b4 100644 --- a/drivers/scsi/sata_vsc.c +++ b/drivers/scsi/sata_vsc.c | |||
| @@ -47,7 +47,7 @@ | |||
| 47 | #include <linux/libata.h> | 47 | #include <linux/libata.h> |
| 48 | 48 | ||
| 49 | #define DRV_NAME "sata_vsc" | 49 | #define DRV_NAME "sata_vsc" |
| 50 | #define DRV_VERSION "1.0" | 50 | #define DRV_VERSION "1.1" |
| 51 | 51 | ||
| 52 | /* Interrupt register offsets (from chip base address) */ | 52 | /* Interrupt register offsets (from chip base address) */ |
| 53 | #define VSC_SATA_INT_STAT_OFFSET 0x00 | 53 | #define VSC_SATA_INT_STAT_OFFSET 0x00 |
diff --git a/drivers/serial/Kconfig b/drivers/serial/Kconfig index ff36f0c9fdad..ad47c1b84c3f 100644 --- a/drivers/serial/Kconfig +++ b/drivers/serial/Kconfig | |||
| @@ -507,7 +507,7 @@ config SERIAL_SUNSU_CONSOLE | |||
| 507 | 507 | ||
| 508 | config SERIAL_MUX | 508 | config SERIAL_MUX |
| 509 | tristate "Serial MUX support" | 509 | tristate "Serial MUX support" |
| 510 | depends on PARISC | 510 | depends on GSC |
| 511 | select SERIAL_CORE | 511 | select SERIAL_CORE |
| 512 | default y | 512 | default y |
| 513 | ---help--- | 513 | ---help--- |
diff --git a/drivers/serial/mux.c b/drivers/serial/mux.c index 660bae5ba179..7633132a10aa 100644 --- a/drivers/serial/mux.c +++ b/drivers/serial/mux.c | |||
| @@ -65,8 +65,8 @@ static struct uart_driver mux_driver = { | |||
| 65 | 65 | ||
| 66 | static struct timer_list mux_timer; | 66 | static struct timer_list mux_timer; |
| 67 | 67 | ||
| 68 | #define UART_PUT_CHAR(p, c) __raw_writel((c), (unsigned long)(p)->membase + IO_DATA_REG_OFFSET) | 68 | #define UART_PUT_CHAR(p, c) __raw_writel((c), (p)->membase + IO_DATA_REG_OFFSET) |
| 69 | #define UART_GET_FIFO_CNT(p) __raw_readl((unsigned long)(p)->membase + IO_DCOUNT_REG_OFFSET) | 69 | #define UART_GET_FIFO_CNT(p) __raw_readl((p)->membase + IO_DCOUNT_REG_OFFSET) |
| 70 | #define GET_MUX_PORTS(iodc_data) ((((iodc_data)[4] & 0xf0) >> 4) * 8) + 8 | 70 | #define GET_MUX_PORTS(iodc_data) ((((iodc_data)[4] & 0xf0) >> 4) * 8) + 8 |
| 71 | 71 | ||
| 72 | /** | 72 | /** |
| @@ -79,10 +79,7 @@ static struct timer_list mux_timer; | |||
| 79 | */ | 79 | */ |
| 80 | static unsigned int mux_tx_empty(struct uart_port *port) | 80 | static unsigned int mux_tx_empty(struct uart_port *port) |
| 81 | { | 81 | { |
| 82 | unsigned int cnt = __raw_readl((unsigned long)port->membase | 82 | return UART_GET_FIFO_CNT(port) ? 0 : TIOCSER_TEMT; |
| 83 | + IO_DCOUNT_REG_OFFSET); | ||
| 84 | |||
| 85 | return cnt ? 0 : TIOCSER_TEMT; | ||
| 86 | } | 83 | } |
| 87 | 84 | ||
| 88 | /** | 85 | /** |
| @@ -218,8 +215,7 @@ static void mux_read(struct uart_port *port) | |||
| 218 | __u32 start_count = port->icount.rx; | 215 | __u32 start_count = port->icount.rx; |
| 219 | 216 | ||
| 220 | while(1) { | 217 | while(1) { |
| 221 | data = __raw_readl((unsigned long)port->membase | 218 | data = __raw_readl(port->membase + IO_DATA_REG_OFFSET); |
| 222 | + IO_DATA_REG_OFFSET); | ||
| 223 | 219 | ||
| 224 | if (MUX_STATUS(data)) | 220 | if (MUX_STATUS(data)) |
| 225 | continue; | 221 | continue; |
| @@ -481,6 +477,13 @@ static int __init mux_probe(struct parisc_device *dev) | |||
| 481 | port->ops = &mux_pops; | 477 | port->ops = &mux_pops; |
| 482 | port->flags = UPF_BOOT_AUTOCONF; | 478 | port->flags = UPF_BOOT_AUTOCONF; |
| 483 | port->line = port_cnt; | 479 | port->line = port_cnt; |
| 480 | |||
| 481 | /* The port->timeout needs to match what is present in | ||
| 482 | * uart_wait_until_sent in serial_core.c. Otherwise | ||
| 483 | * the time spent in msleep_interruptable will be very | ||
| 484 | * long, causing the appearance of a console hang. | ||
| 485 | */ | ||
| 486 | port->timeout = HZ / 50; | ||
| 484 | spin_lock_init(&port->lock); | 487 | spin_lock_init(&port->lock); |
| 485 | status = uart_add_one_port(&mux_driver, port); | 488 | status = uart_add_one_port(&mux_driver, port); |
| 486 | BUG_ON(status); | 489 | BUG_ON(status); |
diff --git a/drivers/tc/zs.c b/drivers/tc/zs.c index c52af73a251b..6756d0fab6fe 100644 --- a/drivers/tc/zs.c +++ b/drivers/tc/zs.c | |||
| @@ -6,7 +6,7 @@ | |||
| 6 | * | 6 | * |
| 7 | * DECstation changes | 7 | * DECstation changes |
| 8 | * Copyright (C) 1998-2000 Harald Koerfgen | 8 | * Copyright (C) 1998-2000 Harald Koerfgen |
| 9 | * Copyright (C) 2000, 2001, 2002, 2003, 2004 Maciej W. Rozycki | 9 | * Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005 Maciej W. Rozycki |
| 10 | * | 10 | * |
| 11 | * For the rest of the code the original Copyright applies: | 11 | * For the rest of the code the original Copyright applies: |
| 12 | * Copyright (C) 1996 Paul Mackerras (Paul.Mackerras@cs.anu.edu.au) | 12 | * Copyright (C) 1996 Paul Mackerras (Paul.Mackerras@cs.anu.edu.au) |
| @@ -55,6 +55,7 @@ | |||
| 55 | #include <linux/delay.h> | 55 | #include <linux/delay.h> |
| 56 | #include <linux/init.h> | 56 | #include <linux/init.h> |
| 57 | #include <linux/ioport.h> | 57 | #include <linux/ioport.h> |
| 58 | #include <linux/spinlock.h> | ||
| 58 | #ifdef CONFIG_SERIAL_DEC_CONSOLE | 59 | #ifdef CONFIG_SERIAL_DEC_CONSOLE |
| 59 | #include <linux/console.h> | 60 | #include <linux/console.h> |
| 60 | #endif | 61 | #endif |
| @@ -63,7 +64,6 @@ | |||
| 63 | #include <asm/pgtable.h> | 64 | #include <asm/pgtable.h> |
| 64 | #include <asm/irq.h> | 65 | #include <asm/irq.h> |
| 65 | #include <asm/system.h> | 66 | #include <asm/system.h> |
| 66 | #include <asm/uaccess.h> | ||
| 67 | #include <asm/bootinfo.h> | 67 | #include <asm/bootinfo.h> |
| 68 | 68 | ||
| 69 | #include <asm/dec/interrupts.h> | 69 | #include <asm/dec/interrupts.h> |
| @@ -128,6 +128,8 @@ static struct zs_parms ds_parms = { | |||
| 128 | 128 | ||
| 129 | #define BUS_PRESENT (DS_BUS_PRESENT) | 129 | #define BUS_PRESENT (DS_BUS_PRESENT) |
| 130 | 130 | ||
| 131 | DEFINE_SPINLOCK(zs_lock); | ||
| 132 | |||
| 131 | struct dec_zschannel zs_channels[NUM_CHANNELS]; | 133 | struct dec_zschannel zs_channels[NUM_CHANNELS]; |
| 132 | struct dec_serial zs_soft[NUM_CHANNELS]; | 134 | struct dec_serial zs_soft[NUM_CHANNELS]; |
| 133 | int zs_channels_found; | 135 | int zs_channels_found; |
| @@ -159,8 +161,6 @@ static unsigned char zs_init_regs[16] __initdata = { | |||
| 159 | 0 /* write 15 */ | 161 | 0 /* write 15 */ |
| 160 | }; | 162 | }; |
| 161 | 163 | ||
| 162 | DECLARE_TASK_QUEUE(tq_zs_serial); | ||
| 163 | |||
| 164 | static struct tty_driver *serial_driver; | 164 | static struct tty_driver *serial_driver; |
| 165 | 165 | ||
| 166 | /* serial subtype definitions */ | 166 | /* serial subtype definitions */ |
| @@ -294,8 +294,7 @@ static inline void zs_rtsdtr(struct dec_serial *info, int which, int set) | |||
| 294 | { | 294 | { |
| 295 | unsigned long flags; | 295 | unsigned long flags; |
| 296 | 296 | ||
| 297 | 297 | spin_lock_irqsave(&zs_lock, flags); | |
| 298 | save_flags(flags); cli(); | ||
| 299 | if (info->zs_channel != info->zs_chan_a) { | 298 | if (info->zs_channel != info->zs_chan_a) { |
| 300 | if (set) { | 299 | if (set) { |
| 301 | info->zs_chan_a->curregs[5] |= (which & (RTS | DTR)); | 300 | info->zs_chan_a->curregs[5] |= (which & (RTS | DTR)); |
| @@ -304,7 +303,7 @@ static inline void zs_rtsdtr(struct dec_serial *info, int which, int set) | |||
| 304 | } | 303 | } |
| 305 | write_zsreg(info->zs_chan_a, 5, info->zs_chan_a->curregs[5]); | 304 | write_zsreg(info->zs_chan_a, 5, info->zs_chan_a->curregs[5]); |
| 306 | } | 305 | } |
| 307 | restore_flags(flags); | 306 | spin_unlock_irqrestore(&zs_lock, flags); |
| 308 | } | 307 | } |
| 309 | 308 | ||
| 310 | /* Utility routines for the Zilog */ | 309 | /* Utility routines for the Zilog */ |
| @@ -345,12 +344,10 @@ static inline void rs_recv_clear(struct dec_zschannel *zsc) | |||
| 345 | * This routine is used by the interrupt handler to schedule | 344 | * This routine is used by the interrupt handler to schedule |
| 346 | * processing in the software interrupt portion of the driver. | 345 | * processing in the software interrupt portion of the driver. |
| 347 | */ | 346 | */ |
| 348 | static _INLINE_ void rs_sched_event(struct dec_serial *info, | 347 | static _INLINE_ void rs_sched_event(struct dec_serial *info, int event) |
| 349 | int event) | ||
| 350 | { | 348 | { |
| 351 | info->event |= 1 << event; | 349 | info->event |= 1 << event; |
| 352 | queue_task(&info->tqueue, &tq_zs_serial); | 350 | tasklet_schedule(&info->tlet); |
| 353 | mark_bh(SERIAL_BH); | ||
| 354 | } | 351 | } |
| 355 | 352 | ||
| 356 | static _INLINE_ void receive_chars(struct dec_serial *info, | 353 | static _INLINE_ void receive_chars(struct dec_serial *info, |
| @@ -497,9 +494,10 @@ static _INLINE_ void status_handle(struct dec_serial *info) | |||
| 497 | /* | 494 | /* |
| 498 | * This is the serial driver's generic interrupt routine | 495 | * This is the serial driver's generic interrupt routine |
| 499 | */ | 496 | */ |
| 500 | void rs_interrupt(int irq, void *dev_id, struct pt_regs * regs) | 497 | static irqreturn_t rs_interrupt(int irq, void *dev_id, struct pt_regs *regs) |
| 501 | { | 498 | { |
| 502 | struct dec_serial *info = (struct dec_serial *) dev_id; | 499 | struct dec_serial *info = (struct dec_serial *) dev_id; |
| 500 | irqreturn_t status = IRQ_NONE; | ||
| 503 | unsigned char zs_intreg; | 501 | unsigned char zs_intreg; |
| 504 | int shift; | 502 | int shift; |
| 505 | 503 | ||
| @@ -521,6 +519,8 @@ void rs_interrupt(int irq, void *dev_id, struct pt_regs * regs) | |||
| 521 | if ((zs_intreg & CHAN_IRQMASK) == 0) | 519 | if ((zs_intreg & CHAN_IRQMASK) == 0) |
| 522 | break; | 520 | break; |
| 523 | 521 | ||
| 522 | status = IRQ_HANDLED; | ||
| 523 | |||
| 524 | if (zs_intreg & CHBRxIP) { | 524 | if (zs_intreg & CHBRxIP) { |
| 525 | receive_chars(info, regs); | 525 | receive_chars(info, regs); |
| 526 | } | 526 | } |
| @@ -534,6 +534,8 @@ void rs_interrupt(int irq, void *dev_id, struct pt_regs * regs) | |||
| 534 | 534 | ||
| 535 | /* Why do we need this ? */ | 535 | /* Why do we need this ? */ |
| 536 | write_zsreg(info->zs_channel, 0, RES_H_IUS); | 536 | write_zsreg(info->zs_channel, 0, RES_H_IUS); |
| 537 | |||
| 538 | return status; | ||
| 537 | } | 539 | } |
| 538 | 540 | ||
| 539 | #ifdef ZS_DEBUG_REGS | 541 | #ifdef ZS_DEBUG_REGS |
| @@ -578,12 +580,12 @@ static void rs_stop(struct tty_struct *tty) | |||
| 578 | return; | 580 | return; |
| 579 | 581 | ||
| 580 | #if 1 | 582 | #if 1 |
| 581 | save_flags(flags); cli(); | 583 | spin_lock_irqsave(&zs_lock, flags); |
| 582 | if (info->zs_channel->curregs[5] & TxENAB) { | 584 | if (info->zs_channel->curregs[5] & TxENAB) { |
| 583 | info->zs_channel->curregs[5] &= ~TxENAB; | 585 | info->zs_channel->curregs[5] &= ~TxENAB; |
| 584 | write_zsreg(info->zs_channel, 5, info->zs_channel->curregs[5]); | 586 | write_zsreg(info->zs_channel, 5, info->zs_channel->curregs[5]); |
| 585 | } | 587 | } |
| 586 | restore_flags(flags); | 588 | spin_unlock_irqrestore(&zs_lock, flags); |
| 587 | #endif | 589 | #endif |
| 588 | } | 590 | } |
| 589 | 591 | ||
| @@ -595,7 +597,7 @@ static void rs_start(struct tty_struct *tty) | |||
| 595 | if (serial_paranoia_check(info, tty->name, "rs_start")) | 597 | if (serial_paranoia_check(info, tty->name, "rs_start")) |
| 596 | return; | 598 | return; |
| 597 | 599 | ||
| 598 | save_flags(flags); cli(); | 600 | spin_lock_irqsave(&zs_lock, flags); |
| 599 | #if 1 | 601 | #if 1 |
| 600 | if (info->xmit_cnt && info->xmit_buf && !(info->zs_channel->curregs[5] & TxENAB)) { | 602 | if (info->xmit_cnt && info->xmit_buf && !(info->zs_channel->curregs[5] & TxENAB)) { |
| 601 | info->zs_channel->curregs[5] |= TxENAB; | 603 | info->zs_channel->curregs[5] |= TxENAB; |
| @@ -606,7 +608,7 @@ static void rs_start(struct tty_struct *tty) | |||
| 606 | transmit_chars(info); | 608 | transmit_chars(info); |
| 607 | } | 609 | } |
| 608 | #endif | 610 | #endif |
| 609 | restore_flags(flags); | 611 | spin_unlock_irqrestore(&zs_lock, flags); |
| 610 | } | 612 | } |
| 611 | 613 | ||
| 612 | /* | 614 | /* |
| @@ -618,12 +620,8 @@ static void rs_start(struct tty_struct *tty) | |||
| 618 | * interrupt driver proper are done; the interrupt driver schedules | 620 | * interrupt driver proper are done; the interrupt driver schedules |
| 619 | * them using rs_sched_event(), and they get done here. | 621 | * them using rs_sched_event(), and they get done here. |
| 620 | */ | 622 | */ |
| 621 | static void do_serial_bh(void) | ||
| 622 | { | ||
| 623 | run_task_queue(&tq_zs_serial); | ||
| 624 | } | ||
| 625 | 623 | ||
| 626 | static void do_softint(void *private_) | 624 | static void do_softint(unsigned long private_) |
| 627 | { | 625 | { |
| 628 | struct dec_serial *info = (struct dec_serial *) private_; | 626 | struct dec_serial *info = (struct dec_serial *) private_; |
| 629 | struct tty_struct *tty; | 627 | struct tty_struct *tty; |
| @@ -634,10 +632,11 @@ static void do_softint(void *private_) | |||
| 634 | 632 | ||
| 635 | if (test_and_clear_bit(RS_EVENT_WRITE_WAKEUP, &info->event)) { | 633 | if (test_and_clear_bit(RS_EVENT_WRITE_WAKEUP, &info->event)) { |
| 636 | tty_wakeup(tty); | 634 | tty_wakeup(tty); |
| 635 | wake_up_interruptible(&tty->write_wait); | ||
| 637 | } | 636 | } |
| 638 | } | 637 | } |
| 639 | 638 | ||
| 640 | int zs_startup(struct dec_serial * info) | 639 | static int zs_startup(struct dec_serial * info) |
| 641 | { | 640 | { |
| 642 | unsigned long flags; | 641 | unsigned long flags; |
| 643 | 642 | ||
| @@ -650,7 +649,7 @@ int zs_startup(struct dec_serial * info) | |||
| 650 | return -ENOMEM; | 649 | return -ENOMEM; |
| 651 | } | 650 | } |
| 652 | 651 | ||
| 653 | save_flags(flags); cli(); | 652 | spin_lock_irqsave(&zs_lock, flags); |
| 654 | 653 | ||
| 655 | #ifdef SERIAL_DEBUG_OPEN | 654 | #ifdef SERIAL_DEBUG_OPEN |
| 656 | printk("starting up ttyS%d (irq %d)...", info->line, info->irq); | 655 | printk("starting up ttyS%d (irq %d)...", info->line, info->irq); |
| @@ -706,7 +705,7 @@ int zs_startup(struct dec_serial * info) | |||
| 706 | info->xmit_cnt = info->xmit_head = info->xmit_tail = 0; | 705 | info->xmit_cnt = info->xmit_head = info->xmit_tail = 0; |
| 707 | 706 | ||
| 708 | info->flags |= ZILOG_INITIALIZED; | 707 | info->flags |= ZILOG_INITIALIZED; |
| 709 | restore_flags(flags); | 708 | spin_unlock_irqrestore(&zs_lock, flags); |
| 710 | return 0; | 709 | return 0; |
| 711 | } | 710 | } |
| 712 | 711 | ||
| @@ -726,7 +725,7 @@ static void shutdown(struct dec_serial * info) | |||
| 726 | info->irq); | 725 | info->irq); |
| 727 | #endif | 726 | #endif |
| 728 | 727 | ||
| 729 | save_flags(flags); cli(); /* Disable interrupts */ | 728 | spin_lock_irqsave(&zs_lock, flags); |
| 730 | 729 | ||
| 731 | if (info->xmit_buf) { | 730 | if (info->xmit_buf) { |
| 732 | free_page((unsigned long) info->xmit_buf); | 731 | free_page((unsigned long) info->xmit_buf); |
| @@ -749,7 +748,7 @@ static void shutdown(struct dec_serial * info) | |||
| 749 | set_bit(TTY_IO_ERROR, &info->tty->flags); | 748 | set_bit(TTY_IO_ERROR, &info->tty->flags); |
| 750 | 749 | ||
| 751 | info->flags &= ~ZILOG_INITIALIZED; | 750 | info->flags &= ~ZILOG_INITIALIZED; |
| 752 | restore_flags(flags); | 751 | spin_unlock_irqrestore(&zs_lock, flags); |
| 753 | } | 752 | } |
| 754 | 753 | ||
| 755 | /* | 754 | /* |
| @@ -785,7 +784,7 @@ static void change_speed(struct dec_serial *info) | |||
| 785 | i += 15; | 784 | i += 15; |
| 786 | } | 785 | } |
| 787 | 786 | ||
| 788 | save_flags(flags); cli(); | 787 | spin_lock_irqsave(&zs_lock, flags); |
| 789 | info->zs_baud = baud_table[i]; | 788 | info->zs_baud = baud_table[i]; |
| 790 | if (info->zs_baud) { | 789 | if (info->zs_baud) { |
| 791 | brg = BPS_TO_BRG(info->zs_baud, zs_parms->clock/info->clk_divisor); | 790 | brg = BPS_TO_BRG(info->zs_baud, zs_parms->clock/info->clk_divisor); |
| @@ -858,7 +857,7 @@ static void change_speed(struct dec_serial *info) | |||
| 858 | /* Load up the new values */ | 857 | /* Load up the new values */ |
| 859 | load_zsregs(info->zs_channel, info->zs_channel->curregs); | 858 | load_zsregs(info->zs_channel, info->zs_channel->curregs); |
| 860 | 859 | ||
| 861 | restore_flags(flags); | 860 | spin_unlock_irqrestore(&zs_lock, flags); |
| 862 | } | 861 | } |
| 863 | 862 | ||
| 864 | static void rs_flush_chars(struct tty_struct *tty) | 863 | static void rs_flush_chars(struct tty_struct *tty) |
| @@ -874,9 +873,9 @@ static void rs_flush_chars(struct tty_struct *tty) | |||
| 874 | return; | 873 | return; |
| 875 | 874 | ||
| 876 | /* Enable transmitter */ | 875 | /* Enable transmitter */ |
| 877 | save_flags(flags); cli(); | 876 | spin_lock_irqsave(&zs_lock, flags); |
| 878 | transmit_chars(info); | 877 | transmit_chars(info); |
| 879 | restore_flags(flags); | 878 | spin_unlock_irqrestore(&zs_lock, flags); |
| 880 | } | 879 | } |
| 881 | 880 | ||
| 882 | static int rs_write(struct tty_struct * tty, | 881 | static int rs_write(struct tty_struct * tty, |
| @@ -892,26 +891,17 @@ static int rs_write(struct tty_struct * tty, | |||
| 892 | if (!tty || !info->xmit_buf) | 891 | if (!tty || !info->xmit_buf) |
| 893 | return 0; | 892 | return 0; |
| 894 | 893 | ||
| 895 | save_flags(flags); | ||
| 896 | while (1) { | 894 | while (1) { |
| 897 | cli(); | 895 | spin_lock_irqsave(&zs_lock, flags); |
| 898 | c = min(count, min(SERIAL_XMIT_SIZE - info->xmit_cnt - 1, | 896 | c = min(count, min(SERIAL_XMIT_SIZE - info->xmit_cnt - 1, |
| 899 | SERIAL_XMIT_SIZE - info->xmit_head)); | 897 | SERIAL_XMIT_SIZE - info->xmit_head)); |
| 900 | if (c <= 0) | 898 | if (c <= 0) |
| 901 | break; | 899 | break; |
| 902 | 900 | ||
| 903 | if (from_user) { | 901 | memcpy(info->xmit_buf + info->xmit_head, buf, c); |
| 904 | down(&tmp_buf_sem); | ||
| 905 | copy_from_user(tmp_buf, buf, c); | ||
| 906 | c = min(c, min(SERIAL_XMIT_SIZE - info->xmit_cnt - 1, | ||
| 907 | SERIAL_XMIT_SIZE - info->xmit_head)); | ||
| 908 | memcpy(info->xmit_buf + info->xmit_head, tmp_buf, c); | ||
| 909 | up(&tmp_buf_sem); | ||
| 910 | } else | ||
| 911 | memcpy(info->xmit_buf + info->xmit_head, buf, c); | ||
| 912 | info->xmit_head = (info->xmit_head + c) & (SERIAL_XMIT_SIZE-1); | 902 | info->xmit_head = (info->xmit_head + c) & (SERIAL_XMIT_SIZE-1); |
| 913 | info->xmit_cnt += c; | 903 | info->xmit_cnt += c; |
| 914 | restore_flags(flags); | 904 | spin_unlock_irqrestore(&zs_lock, flags); |
| 915 | buf += c; | 905 | buf += c; |
| 916 | count -= c; | 906 | count -= c; |
| 917 | total += c; | 907 | total += c; |
| @@ -920,7 +910,7 @@ static int rs_write(struct tty_struct * tty, | |||
| 920 | if (info->xmit_cnt && !tty->stopped && !info->tx_stopped | 910 | if (info->xmit_cnt && !tty->stopped && !info->tx_stopped |
| 921 | && !info->tx_active) | 911 | && !info->tx_active) |
| 922 | transmit_chars(info); | 912 | transmit_chars(info); |
| 923 | restore_flags(flags); | 913 | spin_unlock_irqrestore(&zs_lock, flags); |
| 924 | return total; | 914 | return total; |
| 925 | } | 915 | } |
| 926 | 916 | ||
| @@ -952,9 +942,9 @@ static void rs_flush_buffer(struct tty_struct *tty) | |||
| 952 | 942 | ||
| 953 | if (serial_paranoia_check(info, tty->name, "rs_flush_buffer")) | 943 | if (serial_paranoia_check(info, tty->name, "rs_flush_buffer")) |
| 954 | return; | 944 | return; |
| 955 | cli(); | 945 | spin_lock_irq(&zs_lock); |
| 956 | info->xmit_cnt = info->xmit_head = info->xmit_tail = 0; | 946 | info->xmit_cnt = info->xmit_head = info->xmit_tail = 0; |
| 957 | sti(); | 947 | spin_unlock_irq(&zs_lock); |
| 958 | tty_wakeup(tty); | 948 | tty_wakeup(tty); |
| 959 | } | 949 | } |
| 960 | 950 | ||
| @@ -982,11 +972,11 @@ static void rs_throttle(struct tty_struct * tty) | |||
| 982 | return; | 972 | return; |
| 983 | 973 | ||
| 984 | if (I_IXOFF(tty)) { | 974 | if (I_IXOFF(tty)) { |
| 985 | save_flags(flags); cli(); | 975 | spin_lock_irqsave(&zs_lock, flags); |
| 986 | info->x_char = STOP_CHAR(tty); | 976 | info->x_char = STOP_CHAR(tty); |
| 987 | if (!info->tx_active) | 977 | if (!info->tx_active) |
| 988 | transmit_chars(info); | 978 | transmit_chars(info); |
| 989 | restore_flags(flags); | 979 | spin_unlock_irqrestore(&zs_lock, flags); |
| 990 | } | 980 | } |
| 991 | 981 | ||
| 992 | if (C_CRTSCTS(tty)) { | 982 | if (C_CRTSCTS(tty)) { |
| @@ -1010,7 +1000,7 @@ static void rs_unthrottle(struct tty_struct * tty) | |||
| 1010 | return; | 1000 | return; |
| 1011 | 1001 | ||
| 1012 | if (I_IXOFF(tty)) { | 1002 | if (I_IXOFF(tty)) { |
| 1013 | save_flags(flags); cli(); | 1003 | spin_lock_irqsave(&zs_lock, flags); |
| 1014 | if (info->x_char) | 1004 | if (info->x_char) |
| 1015 | info->x_char = 0; | 1005 | info->x_char = 0; |
| 1016 | else { | 1006 | else { |
| @@ -1018,7 +1008,7 @@ static void rs_unthrottle(struct tty_struct * tty) | |||
| 1018 | if (!info->tx_active) | 1008 | if (!info->tx_active) |
| 1019 | transmit_chars(info); | 1009 | transmit_chars(info); |
| 1020 | } | 1010 | } |
| 1021 | restore_flags(flags); | 1011 | spin_unlock_irqrestore(&zs_lock, flags); |
| 1022 | } | 1012 | } |
| 1023 | 1013 | ||
| 1024 | if (C_CRTSCTS(tty)) { | 1014 | if (C_CRTSCTS(tty)) { |
| @@ -1111,9 +1101,9 @@ static int get_lsr_info(struct dec_serial * info, unsigned int *value) | |||
| 1111 | { | 1101 | { |
| 1112 | unsigned char status; | 1102 | unsigned char status; |
| 1113 | 1103 | ||
| 1114 | cli(); | 1104 | spin_lock(&zs_lock); |
| 1115 | status = read_zsreg(info->zs_channel, 0); | 1105 | status = read_zsreg(info->zs_channel, 0); |
| 1116 | sti(); | 1106 | spin_unlock_irq(&zs_lock); |
| 1117 | put_user(status,value); | 1107 | put_user(status,value); |
| 1118 | return 0; | 1108 | return 0; |
| 1119 | } | 1109 | } |
| @@ -1136,11 +1126,11 @@ static int rs_tiocmget(struct tty_struct *tty, struct file *file) | |||
| 1136 | if (info->zs_channel == info->zs_chan_a) | 1126 | if (info->zs_channel == info->zs_chan_a) |
| 1137 | result = 0; | 1127 | result = 0; |
| 1138 | else { | 1128 | else { |
| 1139 | cli(); | 1129 | spin_lock(&zs_lock); |
| 1140 | control = info->zs_chan_a->curregs[5]; | 1130 | control = info->zs_chan_a->curregs[5]; |
| 1141 | status_a = read_zsreg(info->zs_chan_a, 0); | 1131 | status_a = read_zsreg(info->zs_chan_a, 0); |
| 1142 | status_b = read_zsreg(info->zs_channel, 0); | 1132 | status_b = read_zsreg(info->zs_channel, 0); |
| 1143 | sti(); | 1133 | spin_unlock_irq(&zs_lock); |
| 1144 | result = ((control & RTS) ? TIOCM_RTS: 0) | 1134 | result = ((control & RTS) ? TIOCM_RTS: 0) |
| 1145 | | ((control & DTR) ? TIOCM_DTR: 0) | 1135 | | ((control & DTR) ? TIOCM_DTR: 0) |
| 1146 | | ((status_b & DCD) ? TIOCM_CAR: 0) | 1136 | | ((status_b & DCD) ? TIOCM_CAR: 0) |
| @@ -1155,8 +1145,6 @@ static int rs_tiocmset(struct tty_struct *tty, struct file *file, | |||
| 1155 | unsigned int set, unsigned int clear) | 1145 | unsigned int set, unsigned int clear) |
| 1156 | { | 1146 | { |
| 1157 | struct dec_serial * info = (struct dec_serial *)tty->driver_data; | 1147 | struct dec_serial * info = (struct dec_serial *)tty->driver_data; |
| 1158 | int error; | ||
| 1159 | unsigned int arg, bits; | ||
| 1160 | 1148 | ||
| 1161 | if (info->hook) | 1149 | if (info->hook) |
| 1162 | return -ENODEV; | 1150 | return -ENODEV; |
| @@ -1170,8 +1158,7 @@ static int rs_tiocmset(struct tty_struct *tty, struct file *file, | |||
| 1170 | if (info->zs_channel == info->zs_chan_a) | 1158 | if (info->zs_channel == info->zs_chan_a) |
| 1171 | return 0; | 1159 | return 0; |
| 1172 | 1160 | ||
| 1173 | get_user(arg, value); | 1161 | spin_lock(&zs_lock); |
| 1174 | cli(); | ||
| 1175 | if (set & TIOCM_RTS) | 1162 | if (set & TIOCM_RTS) |
| 1176 | info->zs_chan_a->curregs[5] |= RTS; | 1163 | info->zs_chan_a->curregs[5] |= RTS; |
| 1177 | if (set & TIOCM_DTR) | 1164 | if (set & TIOCM_DTR) |
| @@ -1181,7 +1168,7 @@ static int rs_tiocmset(struct tty_struct *tty, struct file *file, | |||
| 1181 | if (clear & TIOCM_DTR) | 1168 | if (clear & TIOCM_DTR) |
| 1182 | info->zs_chan_a->curregs[5] &= ~DTR; | 1169 | info->zs_chan_a->curregs[5] &= ~DTR; |
| 1183 | write_zsreg(info->zs_chan_a, 5, info->zs_chan_a->curregs[5]); | 1170 | write_zsreg(info->zs_chan_a, 5, info->zs_chan_a->curregs[5]); |
| 1184 | sti(); | 1171 | spin_unlock_irq(&zs_lock); |
| 1185 | return 0; | 1172 | return 0; |
| 1186 | } | 1173 | } |
| 1187 | 1174 | ||
| @@ -1198,19 +1185,18 @@ static void rs_break(struct tty_struct *tty, int break_state) | |||
| 1198 | if (!info->port) | 1185 | if (!info->port) |
| 1199 | return; | 1186 | return; |
| 1200 | 1187 | ||
| 1201 | save_flags(flags); cli(); | 1188 | spin_lock_irqsave(&zs_lock, flags); |
| 1202 | if (break_state == -1) | 1189 | if (break_state == -1) |
| 1203 | info->zs_channel->curregs[5] |= SND_BRK; | 1190 | info->zs_channel->curregs[5] |= SND_BRK; |
| 1204 | else | 1191 | else |
| 1205 | info->zs_channel->curregs[5] &= ~SND_BRK; | 1192 | info->zs_channel->curregs[5] &= ~SND_BRK; |
| 1206 | write_zsreg(info->zs_channel, 5, info->zs_channel->curregs[5]); | 1193 | write_zsreg(info->zs_channel, 5, info->zs_channel->curregs[5]); |
| 1207 | restore_flags(flags); | 1194 | spin_unlock_irqrestore(&zs_lock, flags); |
| 1208 | } | 1195 | } |
| 1209 | 1196 | ||
| 1210 | static int rs_ioctl(struct tty_struct *tty, struct file * file, | 1197 | static int rs_ioctl(struct tty_struct *tty, struct file * file, |
| 1211 | unsigned int cmd, unsigned long arg) | 1198 | unsigned int cmd, unsigned long arg) |
| 1212 | { | 1199 | { |
| 1213 | int error; | ||
| 1214 | struct dec_serial * info = (struct dec_serial *)tty->driver_data; | 1200 | struct dec_serial * info = (struct dec_serial *)tty->driver_data; |
| 1215 | 1201 | ||
| 1216 | if (info->hook) | 1202 | if (info->hook) |
| @@ -1287,10 +1273,10 @@ static void rs_close(struct tty_struct *tty, struct file * filp) | |||
| 1287 | if (!info || serial_paranoia_check(info, tty->name, "rs_close")) | 1273 | if (!info || serial_paranoia_check(info, tty->name, "rs_close")) |
| 1288 | return; | 1274 | return; |
| 1289 | 1275 | ||
| 1290 | save_flags(flags); cli(); | 1276 | spin_lock_irqsave(&zs_lock, flags); |
| 1291 | 1277 | ||
| 1292 | if (tty_hung_up_p(filp)) { | 1278 | if (tty_hung_up_p(filp)) { |
| 1293 | restore_flags(flags); | 1279 | spin_unlock_irqrestore(&zs_lock, flags); |
| 1294 | return; | 1280 | return; |
| 1295 | } | 1281 | } |
| 1296 | 1282 | ||
| @@ -1315,7 +1301,7 @@ static void rs_close(struct tty_struct *tty, struct file * filp) | |||
| 1315 | info->count = 0; | 1301 | info->count = 0; |
| 1316 | } | 1302 | } |
| 1317 | if (info->count) { | 1303 | if (info->count) { |
| 1318 | restore_flags(flags); | 1304 | spin_unlock_irqrestore(&zs_lock, flags); |
| 1319 | return; | 1305 | return; |
| 1320 | } | 1306 | } |
| 1321 | info->flags |= ZILOG_CLOSING; | 1307 | info->flags |= ZILOG_CLOSING; |
| @@ -1358,7 +1344,7 @@ static void rs_close(struct tty_struct *tty, struct file * filp) | |||
| 1358 | } | 1344 | } |
| 1359 | info->flags &= ~(ZILOG_NORMAL_ACTIVE|ZILOG_CLOSING); | 1345 | info->flags &= ~(ZILOG_NORMAL_ACTIVE|ZILOG_CLOSING); |
| 1360 | wake_up_interruptible(&info->close_wait); | 1346 | wake_up_interruptible(&info->close_wait); |
| 1361 | restore_flags(flags); | 1347 | spin_unlock_irqrestore(&zs_lock, flags); |
| 1362 | } | 1348 | } |
| 1363 | 1349 | ||
| 1364 | /* | 1350 | /* |
| @@ -1398,7 +1384,7 @@ static void rs_wait_until_sent(struct tty_struct *tty, int timeout) | |||
| 1398 | /* | 1384 | /* |
| 1399 | * rs_hangup() --- called by tty_hangup() when a hangup is signaled. | 1385 | * rs_hangup() --- called by tty_hangup() when a hangup is signaled. |
| 1400 | */ | 1386 | */ |
| 1401 | void rs_hangup(struct tty_struct *tty) | 1387 | static void rs_hangup(struct tty_struct *tty) |
| 1402 | { | 1388 | { |
| 1403 | struct dec_serial * info = (struct dec_serial *)tty->driver_data; | 1389 | struct dec_serial * info = (struct dec_serial *)tty->driver_data; |
| 1404 | 1390 | ||
| @@ -1466,16 +1452,16 @@ static int block_til_ready(struct tty_struct *tty, struct file * filp, | |||
| 1466 | printk("block_til_ready before block: ttyS%d, count = %d\n", | 1452 | printk("block_til_ready before block: ttyS%d, count = %d\n", |
| 1467 | info->line, info->count); | 1453 | info->line, info->count); |
| 1468 | #endif | 1454 | #endif |
| 1469 | cli(); | 1455 | spin_lock(&zs_lock); |
| 1470 | if (!tty_hung_up_p(filp)) | 1456 | if (!tty_hung_up_p(filp)) |
| 1471 | info->count--; | 1457 | info->count--; |
| 1472 | sti(); | 1458 | spin_unlock_irq(&zs_lock); |
| 1473 | info->blocked_open++; | 1459 | info->blocked_open++; |
| 1474 | while (1) { | 1460 | while (1) { |
| 1475 | cli(); | 1461 | spin_lock(&zs_lock); |
| 1476 | if (tty->termios->c_cflag & CBAUD) | 1462 | if (tty->termios->c_cflag & CBAUD) |
| 1477 | zs_rtsdtr(info, RTS | DTR, 1); | 1463 | zs_rtsdtr(info, RTS | DTR, 1); |
| 1478 | sti(); | 1464 | spin_unlock_irq(&zs_lock); |
| 1479 | set_current_state(TASK_INTERRUPTIBLE); | 1465 | set_current_state(TASK_INTERRUPTIBLE); |
| 1480 | if (tty_hung_up_p(filp) || | 1466 | if (tty_hung_up_p(filp) || |
| 1481 | !(info->flags & ZILOG_INITIALIZED)) { | 1467 | !(info->flags & ZILOG_INITIALIZED)) { |
| @@ -1523,7 +1509,7 @@ static int block_til_ready(struct tty_struct *tty, struct file * filp, | |||
| 1523 | * the IRQ chain. It also performs the serial-specific | 1509 | * the IRQ chain. It also performs the serial-specific |
| 1524 | * initialization for the tty structure. | 1510 | * initialization for the tty structure. |
| 1525 | */ | 1511 | */ |
| 1526 | int rs_open(struct tty_struct *tty, struct file * filp) | 1512 | static int rs_open(struct tty_struct *tty, struct file * filp) |
| 1527 | { | 1513 | { |
| 1528 | struct dec_serial *info; | 1514 | struct dec_serial *info; |
| 1529 | int retval, line; | 1515 | int retval, line; |
| @@ -1706,7 +1692,7 @@ static void __init probe_sccs(void) | |||
| 1706 | } | 1692 | } |
| 1707 | } | 1693 | } |
| 1708 | 1694 | ||
| 1709 | save_and_cli(flags); | 1695 | spin_lock_irqsave(&zs_lock, flags); |
| 1710 | for (n = 0; n < zs_channels_found; n++) { | 1696 | for (n = 0; n < zs_channels_found; n++) { |
| 1711 | if (n % 2 == 0) { | 1697 | if (n % 2 == 0) { |
| 1712 | write_zsreg(zs_soft[n].zs_chan_a, R9, FHWRES); | 1698 | write_zsreg(zs_soft[n].zs_chan_a, R9, FHWRES); |
| @@ -1716,7 +1702,7 @@ static void __init probe_sccs(void) | |||
| 1716 | load_zsregs(zs_soft[n].zs_channel, | 1702 | load_zsregs(zs_soft[n].zs_channel, |
| 1717 | zs_soft[n].zs_channel->curregs); | 1703 | zs_soft[n].zs_channel->curregs); |
| 1718 | } | 1704 | } |
| 1719 | restore_flags(flags); | 1705 | spin_unlock_irqrestore(&zs_lock, flags); |
| 1720 | } | 1706 | } |
| 1721 | 1707 | ||
| 1722 | static struct tty_operations serial_ops = { | 1708 | static struct tty_operations serial_ops = { |
| @@ -1749,9 +1735,6 @@ int __init zs_init(void) | |||
| 1749 | if(!BUS_PRESENT) | 1735 | if(!BUS_PRESENT) |
| 1750 | return -ENODEV; | 1736 | return -ENODEV; |
| 1751 | 1737 | ||
| 1752 | /* Setup base handler, and timer table. */ | ||
| 1753 | init_bh(SERIAL_BH, do_serial_bh); | ||
| 1754 | |||
| 1755 | /* Find out how many Z8530 SCCs we have */ | 1738 | /* Find out how many Z8530 SCCs we have */ |
| 1756 | if (zs_chain == 0) | 1739 | if (zs_chain == 0) |
| 1757 | probe_sccs(); | 1740 | probe_sccs(); |
| @@ -1800,8 +1783,7 @@ int __init zs_init(void) | |||
| 1800 | info->event = 0; | 1783 | info->event = 0; |
| 1801 | info->count = 0; | 1784 | info->count = 0; |
| 1802 | info->blocked_open = 0; | 1785 | info->blocked_open = 0; |
| 1803 | info->tqueue.routine = do_softint; | 1786 | tasklet_init(&info->tlet, do_softint, (unsigned long)info); |
| 1804 | info->tqueue.data = info; | ||
| 1805 | init_waitqueue_head(&info->open_wait); | 1787 | init_waitqueue_head(&info->open_wait); |
| 1806 | init_waitqueue_head(&info->close_wait); | 1788 | init_waitqueue_head(&info->close_wait); |
| 1807 | printk("ttyS%02d at 0x%08x (irq = %d) is a Z85C30 SCC\n", | 1789 | printk("ttyS%02d at 0x%08x (irq = %d) is a Z85C30 SCC\n", |
| @@ -1833,8 +1815,7 @@ int __init zs_init(void) | |||
| 1833 | /* | 1815 | /* |
| 1834 | * polling I/O routines | 1816 | * polling I/O routines |
| 1835 | */ | 1817 | */ |
| 1836 | static int | 1818 | static int zs_poll_tx_char(void *handle, unsigned char ch) |
| 1837 | zs_poll_tx_char(void *handle, unsigned char ch) | ||
| 1838 | { | 1819 | { |
| 1839 | struct dec_serial *info = handle; | 1820 | struct dec_serial *info = handle; |
| 1840 | struct dec_zschannel *chan = info->zs_channel; | 1821 | struct dec_zschannel *chan = info->zs_channel; |
| @@ -1857,8 +1838,7 @@ zs_poll_tx_char(void *handle, unsigned char ch) | |||
| 1857 | return -ENODEV; | 1838 | return -ENODEV; |
| 1858 | } | 1839 | } |
| 1859 | 1840 | ||
| 1860 | static int | 1841 | static int zs_poll_rx_char(void *handle) |
| 1861 | zs_poll_rx_char(void *handle) | ||
| 1862 | { | 1842 | { |
| 1863 | struct dec_serial *info = handle; | 1843 | struct dec_serial *info = handle; |
| 1864 | struct dec_zschannel *chan = info->zs_channel; | 1844 | struct dec_zschannel *chan = info->zs_channel; |
| @@ -2037,7 +2017,7 @@ static int __init serial_console_setup(struct console *co, char *options) | |||
| 2037 | } | 2017 | } |
| 2038 | co->cflag = cflag; | 2018 | co->cflag = cflag; |
| 2039 | 2019 | ||
| 2040 | save_and_cli(flags); | 2020 | spin_lock_irqsave(&zs_lock, flags); |
| 2041 | 2021 | ||
| 2042 | /* | 2022 | /* |
| 2043 | * Set up the baud rate generator. | 2023 | * Set up the baud rate generator. |
| @@ -2092,7 +2072,7 @@ static int __init serial_console_setup(struct console *co, char *options) | |||
| 2092 | zs_soft[co->index].clk_divisor = clk_divisor; | 2072 | zs_soft[co->index].clk_divisor = clk_divisor; |
| 2093 | zs_soft[co->index].zs_baud = get_zsbaud(&zs_soft[co->index]); | 2073 | zs_soft[co->index].zs_baud = get_zsbaud(&zs_soft[co->index]); |
| 2094 | 2074 | ||
| 2095 | restore_flags(flags); | 2075 | spin_unlock_irqrestore(&zs_lock, flags); |
| 2096 | 2076 | ||
| 2097 | return 0; | 2077 | return 0; |
| 2098 | } | 2078 | } |
| @@ -2229,5 +2209,3 @@ void __init zs_kgdb_hook(int tty_num) | |||
| 2229 | set_debug_traps(); /* init stub */ | 2209 | set_debug_traps(); /* init stub */ |
| 2230 | } | 2210 | } |
| 2231 | #endif /* ifdef CONFIG_KGDB */ | 2211 | #endif /* ifdef CONFIG_KGDB */ |
| 2232 | |||
| 2233 | |||
diff --git a/drivers/tc/zs.h b/drivers/tc/zs.h index c52edffa6049..13512200ceba 100644 --- a/drivers/tc/zs.h +++ b/drivers/tc/zs.h | |||
| @@ -6,14 +6,14 @@ | |||
| 6 | * | 6 | * |
| 7 | * Copyright (C) 1996 Paul Mackerras (Paul.Mackerras@cs.anu.edu.au) | 7 | * Copyright (C) 1996 Paul Mackerras (Paul.Mackerras@cs.anu.edu.au) |
| 8 | * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) | 8 | * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) |
| 9 | * Copyright (C) 2004 Maciej W. Rozycki | 9 | * Copyright (C) 2004, 2005 Maciej W. Rozycki |
| 10 | */ | 10 | */ |
| 11 | #ifndef _DECSERIAL_H | 11 | #ifndef _DECSERIAL_H |
| 12 | #define _DECSERIAL_H | 12 | #define _DECSERIAL_H |
| 13 | 13 | ||
| 14 | #include <asm/dec/serial.h> | 14 | #include <asm/dec/serial.h> |
| 15 | 15 | ||
| 16 | #define NUM_ZSREGS 16 | 16 | #define NUM_ZSREGS 16 |
| 17 | 17 | ||
| 18 | struct serial_struct { | 18 | struct serial_struct { |
| 19 | int type; | 19 | int type; |
| @@ -139,8 +139,7 @@ struct dec_serial { | |||
| 139 | int xmit_head; | 139 | int xmit_head; |
| 140 | int xmit_tail; | 140 | int xmit_tail; |
| 141 | int xmit_cnt; | 141 | int xmit_cnt; |
| 142 | struct tq_struct tqueue; | 142 | struct tasklet_struct tlet; |
| 143 | struct tq_struct tqueue_hangup; | ||
| 144 | wait_queue_head_t open_wait; | 143 | wait_queue_head_t open_wait; |
| 145 | wait_queue_head_t close_wait; | 144 | wait_queue_head_t close_wait; |
| 146 | }; | 145 | }; |
| @@ -282,7 +281,7 @@ struct dec_serial { | |||
| 282 | #define DLC 4 /* Disable Lower Chain */ | 281 | #define DLC 4 /* Disable Lower Chain */ |
| 283 | #define MIE 8 /* Master Interrupt Enable */ | 282 | #define MIE 8 /* Master Interrupt Enable */ |
| 284 | #define STATHI 0x10 /* Status high */ | 283 | #define STATHI 0x10 /* Status high */ |
| 285 | #define SOFTACK 0x20 /* Software Interrupt Acknowledge */ | 284 | #define SOFTACK 0x20 /* Software Interrupt Acknowledge */ |
| 286 | #define NORESET 0 /* No reset on write to R9 */ | 285 | #define NORESET 0 /* No reset on write to R9 */ |
| 287 | #define CHRB 0x40 /* Reset channel B */ | 286 | #define CHRB 0x40 /* Reset channel B */ |
| 288 | #define CHRA 0x80 /* Reset channel A */ | 287 | #define CHRA 0x80 /* Reset channel A */ |
| @@ -395,8 +394,8 @@ struct dec_serial { | |||
| 395 | /* Read Register 15 (value of WR 15) */ | 394 | /* Read Register 15 (value of WR 15) */ |
| 396 | 395 | ||
| 397 | /* Misc macros */ | 396 | /* Misc macros */ |
| 398 | #define ZS_CLEARERR(channel) (write_zsreg(channel, 0, ERR_RES)) | 397 | #define ZS_CLEARERR(channel) (write_zsreg(channel, 0, ERR_RES)) |
| 399 | #define ZS_CLEARFIFO(channel) do { volatile unsigned char garbage; \ | 398 | #define ZS_CLEARFIFO(channel) do { volatile unsigned char garbage; \ |
| 400 | garbage = read_zsdata(channel); \ | 399 | garbage = read_zsdata(channel); \ |
| 401 | garbage = read_zsdata(channel); \ | 400 | garbage = read_zsdata(channel); \ |
| 402 | garbage = read_zsdata(channel); \ | 401 | garbage = read_zsdata(channel); \ |
diff --git a/drivers/usb/atm/Makefile b/drivers/usb/atm/Makefile index 751f297be2ef..85099718c683 100644 --- a/drivers/usb/atm/Makefile +++ b/drivers/usb/atm/Makefile | |||
| @@ -6,3 +6,7 @@ obj-$(CONFIG_USB_CXACRU) += cxacru.o | |||
| 6 | obj-$(CONFIG_USB_SPEEDTOUCH) += speedtch.o | 6 | obj-$(CONFIG_USB_SPEEDTOUCH) += speedtch.o |
| 7 | obj-$(CONFIG_USB_ATM) += usbatm.o | 7 | obj-$(CONFIG_USB_ATM) += usbatm.o |
| 8 | obj-$(CONFIG_USB_XUSBATM) += xusbatm.o | 8 | obj-$(CONFIG_USB_XUSBATM) += xusbatm.o |
| 9 | |||
| 10 | ifeq ($(CONFIG_USB_DEBUG),y) | ||
| 11 | EXTRA_CFLAGS += -DDEBUG | ||
| 12 | endif | ||
diff --git a/drivers/usb/atm/usbatm.h b/drivers/usb/atm/usbatm.h index 936646457935..1adacd60d713 100644 --- a/drivers/usb/atm/usbatm.h +++ b/drivers/usb/atm/usbatm.h | |||
| @@ -27,14 +27,9 @@ | |||
| 27 | #include <linux/config.h> | 27 | #include <linux/config.h> |
| 28 | 28 | ||
| 29 | /* | 29 | /* |
| 30 | #define DEBUG | ||
| 31 | #define VERBOSE_DEBUG | 30 | #define VERBOSE_DEBUG |
| 32 | */ | 31 | */ |
| 33 | 32 | ||
| 34 | #if !defined (DEBUG) && defined (CONFIG_USB_DEBUG) | ||
| 35 | # define DEBUG | ||
| 36 | #endif | ||
| 37 | |||
| 38 | #include <asm/semaphore.h> | 33 | #include <asm/semaphore.h> |
| 39 | #include <linux/atm.h> | 34 | #include <linux/atm.h> |
| 40 | #include <linux/atmdev.h> | 35 | #include <linux/atmdev.h> |
diff --git a/drivers/usb/core/Makefile b/drivers/usb/core/Makefile index dd1c4d2a0c31..86d5c380892d 100644 --- a/drivers/usb/core/Makefile +++ b/drivers/usb/core/Makefile | |||
| @@ -14,3 +14,7 @@ ifeq ($(CONFIG_USB_DEVICEFS),y) | |||
| 14 | endif | 14 | endif |
| 15 | 15 | ||
| 16 | obj-$(CONFIG_USB) += usbcore.o | 16 | obj-$(CONFIG_USB) += usbcore.o |
| 17 | |||
| 18 | ifeq ($(CONFIG_USB_DEBUG),y) | ||
| 19 | EXTRA_CFLAGS += -DDEBUG | ||
| 20 | endif | ||
diff --git a/drivers/usb/core/buffer.c b/drivers/usb/core/buffer.c index 57e800ac3cee..419c9943a7cb 100644 --- a/drivers/usb/core/buffer.c +++ b/drivers/usb/core/buffer.c | |||
| @@ -15,14 +15,6 @@ | |||
| 15 | #include <asm/scatterlist.h> | 15 | #include <asm/scatterlist.h> |
| 16 | #include <linux/dma-mapping.h> | 16 | #include <linux/dma-mapping.h> |
| 17 | #include <linux/dmapool.h> | 17 | #include <linux/dmapool.h> |
| 18 | |||
| 19 | |||
| 20 | #ifdef CONFIG_USB_DEBUG | ||
| 21 | #define DEBUG | ||
| 22 | #else | ||
| 23 | #undef DEBUG | ||
| 24 | #endif | ||
| 25 | |||
| 26 | #include <linux/usb.h> | 18 | #include <linux/usb.h> |
| 27 | #include "hcd.h" | 19 | #include "hcd.h" |
| 28 | 20 | ||
diff --git a/drivers/usb/core/config.c b/drivers/usb/core/config.c index 993019500cc3..a9d89c78cc20 100644 --- a/drivers/usb/core/config.c +++ b/drivers/usb/core/config.c | |||
| @@ -1,9 +1,4 @@ | |||
| 1 | #include <linux/config.h> | 1 | #include <linux/config.h> |
| 2 | |||
| 3 | #ifdef CONFIG_USB_DEBUG | ||
| 4 | #define DEBUG | ||
| 5 | #endif | ||
| 6 | |||
| 7 | #include <linux/usb.h> | 2 | #include <linux/usb.h> |
| 8 | #include <linux/module.h> | 3 | #include <linux/module.h> |
| 9 | #include <linux/init.h> | 4 | #include <linux/init.h> |
diff --git a/drivers/usb/core/devio.c b/drivers/usb/core/devio.c index 942cd437dc48..b1d6e9af732d 100644 --- a/drivers/usb/core/devio.c +++ b/drivers/usb/core/devio.c | |||
| @@ -1392,13 +1392,13 @@ static int proc_ioctl_default(struct dev_state *ps, void __user *arg) | |||
| 1392 | } | 1392 | } |
| 1393 | 1393 | ||
| 1394 | #ifdef CONFIG_COMPAT | 1394 | #ifdef CONFIG_COMPAT |
| 1395 | static int proc_ioctl_compat(struct dev_state *ps, void __user *arg) | 1395 | static int proc_ioctl_compat(struct dev_state *ps, compat_uptr_t arg) |
| 1396 | { | 1396 | { |
| 1397 | struct usbdevfs_ioctl32 __user *uioc; | 1397 | struct usbdevfs_ioctl32 __user *uioc; |
| 1398 | struct usbdevfs_ioctl ctrl; | 1398 | struct usbdevfs_ioctl ctrl; |
| 1399 | u32 udata; | 1399 | u32 udata; |
| 1400 | 1400 | ||
| 1401 | uioc = compat_ptr(arg); | 1401 | uioc = compat_ptr((long)arg); |
| 1402 | if (get_user(ctrl.ifno, &uioc->ifno) || | 1402 | if (get_user(ctrl.ifno, &uioc->ifno) || |
| 1403 | get_user(ctrl.ioctl_code, &uioc->ioctl_code) || | 1403 | get_user(ctrl.ioctl_code, &uioc->ioctl_code) || |
| 1404 | __get_user(udata, &uioc->data)) | 1404 | __get_user(udata, &uioc->data)) |
| @@ -1511,7 +1511,7 @@ static int usbdev_ioctl(struct inode *inode, struct file *file, unsigned int cmd | |||
| 1511 | 1511 | ||
| 1512 | case USBDEVFS_IOCTL32: | 1512 | case USBDEVFS_IOCTL32: |
| 1513 | snoop(&dev->dev, "%s: IOCTL\n", __FUNCTION__); | 1513 | snoop(&dev->dev, "%s: IOCTL\n", __FUNCTION__); |
| 1514 | ret = proc_ioctl_compat(ps, p); | 1514 | ret = proc_ioctl_compat(ps, (compat_uptr_t)(long)p); |
| 1515 | break; | 1515 | break; |
| 1516 | #endif | 1516 | #endif |
| 1517 | 1517 | ||
diff --git a/drivers/usb/core/file.c b/drivers/usb/core/file.c index e695308095ae..37b13368c814 100644 --- a/drivers/usb/core/file.c +++ b/drivers/usb/core/file.c | |||
| @@ -19,12 +19,6 @@ | |||
| 19 | #include <linux/module.h> | 19 | #include <linux/module.h> |
| 20 | #include <linux/spinlock.h> | 20 | #include <linux/spinlock.h> |
| 21 | #include <linux/errno.h> | 21 | #include <linux/errno.h> |
| 22 | |||
| 23 | #ifdef CONFIG_USB_DEBUG | ||
| 24 | #define DEBUG | ||
| 25 | #else | ||
| 26 | #undef DEBUG | ||
| 27 | #endif | ||
| 28 | #include <linux/usb.h> | 22 | #include <linux/usb.h> |
| 29 | 23 | ||
| 30 | #include "usb.h" | 24 | #include "usb.h" |
diff --git a/drivers/usb/core/hcd-pci.c b/drivers/usb/core/hcd-pci.c index 84d9e69329bb..7feb829362d6 100644 --- a/drivers/usb/core/hcd-pci.c +++ b/drivers/usb/core/hcd-pci.c | |||
| @@ -17,13 +17,6 @@ | |||
| 17 | */ | 17 | */ |
| 18 | 18 | ||
| 19 | #include <linux/config.h> | 19 | #include <linux/config.h> |
| 20 | |||
| 21 | #ifdef CONFIG_USB_DEBUG | ||
| 22 | #define DEBUG | ||
| 23 | #else | ||
| 24 | #undef DEBUG | ||
| 25 | #endif | ||
| 26 | |||
| 27 | #include <linux/kernel.h> | 20 | #include <linux/kernel.h> |
| 28 | #include <linux/module.h> | 21 | #include <linux/module.h> |
| 29 | #include <linux/pci.h> | 22 | #include <linux/pci.h> |
diff --git a/drivers/usb/core/hcd.c b/drivers/usb/core/hcd.c index 6c7ca5b08cd6..5e5f65a475ab 100644 --- a/drivers/usb/core/hcd.c +++ b/drivers/usb/core/hcd.c | |||
| @@ -23,11 +23,6 @@ | |||
| 23 | */ | 23 | */ |
| 24 | 24 | ||
| 25 | #include <linux/config.h> | 25 | #include <linux/config.h> |
| 26 | |||
| 27 | #ifdef CONFIG_USB_DEBUG | ||
| 28 | #define DEBUG | ||
| 29 | #endif | ||
| 30 | |||
| 31 | #include <linux/module.h> | 26 | #include <linux/module.h> |
| 32 | #include <linux/version.h> | 27 | #include <linux/version.h> |
| 33 | #include <linux/kernel.h> | 28 | #include <linux/kernel.h> |
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c index 256d9f698715..840727948d84 100644 --- a/drivers/usb/core/hub.c +++ b/drivers/usb/core/hub.c | |||
| @@ -9,11 +9,6 @@ | |||
| 9 | */ | 9 | */ |
| 10 | 10 | ||
| 11 | #include <linux/config.h> | 11 | #include <linux/config.h> |
| 12 | #ifdef CONFIG_USB_DEBUG | ||
| 13 | #define DEBUG | ||
| 14 | #else | ||
| 15 | #undef DEBUG | ||
| 16 | #endif | ||
| 17 | #include <linux/kernel.h> | 12 | #include <linux/kernel.h> |
| 18 | #include <linux/errno.h> | 13 | #include <linux/errno.h> |
| 19 | #include <linux/module.h> | 14 | #include <linux/module.h> |
diff --git a/drivers/usb/core/inode.c b/drivers/usb/core/inode.c index 12f490fdee8f..c44bbedec817 100644 --- a/drivers/usb/core/inode.c +++ b/drivers/usb/core/inode.c | |||
| @@ -46,7 +46,6 @@ | |||
| 46 | 46 | ||
| 47 | static struct super_operations usbfs_ops; | 47 | static struct super_operations usbfs_ops; |
| 48 | static struct file_operations default_file_operations; | 48 | static struct file_operations default_file_operations; |
| 49 | static struct inode_operations usbfs_dir_inode_operations; | ||
| 50 | static struct vfsmount *usbfs_mount; | 49 | static struct vfsmount *usbfs_mount; |
| 51 | static int usbfs_mount_count; /* = 0 */ | 50 | static int usbfs_mount_count; /* = 0 */ |
| 52 | static int ignore_mount = 0; | 51 | static int ignore_mount = 0; |
| @@ -262,7 +261,7 @@ static struct inode *usbfs_get_inode (struct super_block *sb, int mode, dev_t de | |||
| 262 | inode->i_fop = &default_file_operations; | 261 | inode->i_fop = &default_file_operations; |
| 263 | break; | 262 | break; |
| 264 | case S_IFDIR: | 263 | case S_IFDIR: |
| 265 | inode->i_op = &usbfs_dir_inode_operations; | 264 | inode->i_op = &simple_dir_inode_operations; |
| 266 | inode->i_fop = &simple_dir_operations; | 265 | inode->i_fop = &simple_dir_operations; |
| 267 | 266 | ||
| 268 | /* directory inodes start off with i_nlink == 2 (for "." entry) */ | 267 | /* directory inodes start off with i_nlink == 2 (for "." entry) */ |
| @@ -417,10 +416,6 @@ static struct file_operations default_file_operations = { | |||
| 417 | .llseek = default_file_lseek, | 416 | .llseek = default_file_lseek, |
| 418 | }; | 417 | }; |
| 419 | 418 | ||
| 420 | static struct inode_operations usbfs_dir_inode_operations = { | ||
| 421 | .lookup = simple_lookup, | ||
| 422 | }; | ||
| 423 | |||
| 424 | static struct super_operations usbfs_ops = { | 419 | static struct super_operations usbfs_ops = { |
| 425 | .statfs = simple_statfs, | 420 | .statfs = simple_statfs, |
| 426 | .drop_inode = generic_delete_inode, | 421 | .drop_inode = generic_delete_inode, |
diff --git a/drivers/usb/core/message.c b/drivers/usb/core/message.c index 644a3d4f12aa..fe74f99ca5f4 100644 --- a/drivers/usb/core/message.c +++ b/drivers/usb/core/message.c | |||
| @@ -3,13 +3,6 @@ | |||
| 3 | */ | 3 | */ |
| 4 | 4 | ||
| 5 | #include <linux/config.h> | 5 | #include <linux/config.h> |
| 6 | |||
| 7 | #ifdef CONFIG_USB_DEBUG | ||
| 8 | #define DEBUG | ||
| 9 | #else | ||
| 10 | #undef DEBUG | ||
| 11 | #endif | ||
| 12 | |||
| 13 | #include <linux/pci.h> /* for scatterlist macros */ | 6 | #include <linux/pci.h> /* for scatterlist macros */ |
| 14 | #include <linux/usb.h> | 7 | #include <linux/usb.h> |
| 15 | #include <linux/module.h> | 8 | #include <linux/module.h> |
| @@ -1457,12 +1450,11 @@ free_interfaces: | |||
| 1457 | */ | 1450 | */ |
| 1458 | for (i = 0; i < nintf; ++i) { | 1451 | for (i = 0; i < nintf; ++i) { |
| 1459 | struct usb_interface *intf = cp->interface[i]; | 1452 | struct usb_interface *intf = cp->interface[i]; |
| 1460 | struct usb_host_interface *alt = intf->cur_altsetting; | ||
| 1461 | 1453 | ||
| 1462 | dev_dbg (&dev->dev, | 1454 | dev_dbg (&dev->dev, |
| 1463 | "adding %s (config #%d, interface %d)\n", | 1455 | "adding %s (config #%d, interface %d)\n", |
| 1464 | intf->dev.bus_id, configuration, | 1456 | intf->dev.bus_id, configuration, |
| 1465 | alt->desc.bInterfaceNumber); | 1457 | intf->cur_altsetting->desc.bInterfaceNumber); |
| 1466 | ret = device_add (&intf->dev); | 1458 | ret = device_add (&intf->dev); |
| 1467 | if (ret != 0) { | 1459 | if (ret != 0) { |
| 1468 | dev_err(&dev->dev, | 1460 | dev_err(&dev->dev, |
diff --git a/drivers/usb/core/notify.c b/drivers/usb/core/notify.c index 37da059eced7..fbbebab52fbd 100644 --- a/drivers/usb/core/notify.c +++ b/drivers/usb/core/notify.c | |||
| @@ -12,13 +12,7 @@ | |||
| 12 | #include <linux/config.h> | 12 | #include <linux/config.h> |
| 13 | #include <linux/kernel.h> | 13 | #include <linux/kernel.h> |
| 14 | #include <linux/notifier.h> | 14 | #include <linux/notifier.h> |
| 15 | #ifdef CONFIG_USB_DEBUG | ||
| 16 | #define DEBUG | ||
| 17 | #else | ||
| 18 | #undef DEBUG | ||
| 19 | #endif | ||
| 20 | #include <linux/usb.h> | 15 | #include <linux/usb.h> |
| 21 | |||
| 22 | #include "usb.h" | 16 | #include "usb.h" |
| 23 | 17 | ||
| 24 | 18 | ||
diff --git a/drivers/usb/core/sysfs.c b/drivers/usb/core/sysfs.c index edd83e014452..71d881327e88 100644 --- a/drivers/usb/core/sysfs.c +++ b/drivers/usb/core/sysfs.c | |||
| @@ -12,14 +12,7 @@ | |||
| 12 | 12 | ||
| 13 | #include <linux/config.h> | 13 | #include <linux/config.h> |
| 14 | #include <linux/kernel.h> | 14 | #include <linux/kernel.h> |
| 15 | |||
| 16 | #ifdef CONFIG_USB_DEBUG | ||
| 17 | #define DEBUG | ||
| 18 | #else | ||
| 19 | #undef DEBUG | ||
| 20 | #endif | ||
| 21 | #include <linux/usb.h> | 15 | #include <linux/usb.h> |
| 22 | |||
| 23 | #include "usb.h" | 16 | #include "usb.h" |
| 24 | 17 | ||
| 25 | /* endpoint stuff */ | 18 | /* endpoint stuff */ |
diff --git a/drivers/usb/core/urb.c b/drivers/usb/core/urb.c index f2a1fed2a802..081796726b95 100644 --- a/drivers/usb/core/urb.c +++ b/drivers/usb/core/urb.c | |||
| @@ -4,12 +4,6 @@ | |||
| 4 | #include <linux/bitops.h> | 4 | #include <linux/bitops.h> |
| 5 | #include <linux/slab.h> | 5 | #include <linux/slab.h> |
| 6 | #include <linux/init.h> | 6 | #include <linux/init.h> |
| 7 | |||
| 8 | #ifdef CONFIG_USB_DEBUG | ||
| 9 | #define DEBUG | ||
| 10 | #else | ||
| 11 | #undef DEBUG | ||
| 12 | #endif | ||
| 13 | #include <linux/usb.h> | 7 | #include <linux/usb.h> |
| 14 | #include "hcd.h" | 8 | #include "hcd.h" |
| 15 | 9 | ||
diff --git a/drivers/usb/core/usb.c b/drivers/usb/core/usb.c index 0eefff7bcb3c..e197ce9353de 100644 --- a/drivers/usb/core/usb.c +++ b/drivers/usb/core/usb.c | |||
| @@ -22,13 +22,6 @@ | |||
| 22 | */ | 22 | */ |
| 23 | 23 | ||
| 24 | #include <linux/config.h> | 24 | #include <linux/config.h> |
| 25 | |||
| 26 | #ifdef CONFIG_USB_DEBUG | ||
| 27 | #define DEBUG | ||
| 28 | #else | ||
| 29 | #undef DEBUG | ||
| 30 | #endif | ||
| 31 | |||
| 32 | #include <linux/module.h> | 25 | #include <linux/module.h> |
| 33 | #include <linux/string.h> | 26 | #include <linux/string.h> |
| 34 | #include <linux/bitops.h> | 27 | #include <linux/bitops.h> |
diff --git a/drivers/usb/gadget/dummy_hcd.c b/drivers/usb/gadget/dummy_hcd.c index 1e407745c115..c655d46c8aed 100644 --- a/drivers/usb/gadget/dummy_hcd.c +++ b/drivers/usb/gadget/dummy_hcd.c | |||
| @@ -944,7 +944,7 @@ static int dummy_udc_suspend (struct platform_device *dev, pm_message_t state) | |||
| 944 | set_link_state (dum); | 944 | set_link_state (dum); |
| 945 | spin_unlock_irq (&dum->lock); | 945 | spin_unlock_irq (&dum->lock); |
| 946 | 946 | ||
| 947 | dev->power.power_state = state; | 947 | dev->dev.power.power_state = state; |
| 948 | usb_hcd_poll_rh_status (dummy_to_hcd (dum)); | 948 | usb_hcd_poll_rh_status (dummy_to_hcd (dum)); |
| 949 | return 0; | 949 | return 0; |
| 950 | } | 950 | } |
| @@ -1904,7 +1904,7 @@ static int dummy_hcd_probe (struct platform_device *dev) | |||
| 1904 | struct usb_hcd *hcd; | 1904 | struct usb_hcd *hcd; |
| 1905 | int retval; | 1905 | int retval; |
| 1906 | 1906 | ||
| 1907 | dev_info (dev, "%s, driver " DRIVER_VERSION "\n", driver_desc); | 1907 | dev_info(&dev->dev, "%s, driver " DRIVER_VERSION "\n", driver_desc); |
| 1908 | 1908 | ||
| 1909 | hcd = usb_create_hcd (&dummy_hcd, &dev->dev, dev->dev.bus_id); | 1909 | hcd = usb_create_hcd (&dummy_hcd, &dev->dev, dev->dev.bus_id); |
| 1910 | if (!hcd) | 1910 | if (!hcd) |
diff --git a/drivers/usb/host/ohci-lh7a404.c b/drivers/usb/host/ohci-lh7a404.c index 081ec3f5cff4..3959ccc88332 100644 --- a/drivers/usb/host/ohci-lh7a404.c +++ b/drivers/usb/host/ohci-lh7a404.c | |||
| @@ -219,7 +219,7 @@ static int ohci_hcd_lh7a404_drv_probe(struct platform_device *pdev) | |||
| 219 | 219 | ||
| 220 | static int ohci_hcd_lh7a404_drv_remove(struct platform_device *pdev) | 220 | static int ohci_hcd_lh7a404_drv_remove(struct platform_device *pdev) |
| 221 | { | 221 | { |
| 222 | struct usb_hcd *hcd = platform_get_drvdata(dev); | 222 | struct usb_hcd *hcd = platform_get_drvdata(pdev); |
| 223 | 223 | ||
| 224 | usb_hcd_lh7a404_remove(hcd, pdev); | 224 | usb_hcd_lh7a404_remove(hcd, pdev); |
| 225 | return 0; | 225 | return 0; |
diff --git a/drivers/usb/host/ohci-ppc-soc.c b/drivers/usb/host/ohci-ppc-soc.c index 18755766e406..2ec6a78bd65e 100644 --- a/drivers/usb/host/ohci-ppc-soc.c +++ b/drivers/usb/host/ohci-ppc-soc.c | |||
| @@ -185,7 +185,7 @@ static int ohci_hcd_ppc_soc_drv_probe(struct platform_device *pdev) | |||
| 185 | 185 | ||
| 186 | static int ohci_hcd_ppc_soc_drv_remove(struct platform_device *pdev) | 186 | static int ohci_hcd_ppc_soc_drv_remove(struct platform_device *pdev) |
| 187 | { | 187 | { |
| 188 | struct usb_hcd *hcd = platform_get_drvdata(dev); | 188 | struct usb_hcd *hcd = platform_get_drvdata(pdev); |
| 189 | 189 | ||
| 190 | usb_hcd_ppc_soc_remove(hcd, pdev); | 190 | usb_hcd_ppc_soc_remove(hcd, pdev); |
| 191 | return 0; | 191 | return 0; |
diff --git a/drivers/usb/image/microtek.c b/drivers/usb/image/microtek.c index 61a2604cce4f..950543aa5ac7 100644 --- a/drivers/usb/image/microtek.c +++ b/drivers/usb/image/microtek.c | |||
| @@ -327,6 +327,18 @@ static inline void mts_urb_abort(struct mts_desc* desc) { | |||
| 327 | usb_kill_urb( desc->urb ); | 327 | usb_kill_urb( desc->urb ); |
| 328 | } | 328 | } |
| 329 | 329 | ||
| 330 | static int mts_slave_alloc (struct scsi_device *s) | ||
| 331 | { | ||
| 332 | s->inquiry_len = 0x24; | ||
| 333 | return 0; | ||
| 334 | } | ||
| 335 | |||
| 336 | static int mts_slave_configure (struct scsi_device *s) | ||
| 337 | { | ||
| 338 | blk_queue_dma_alignment(s->request_queue, (512 - 1)); | ||
| 339 | return 0; | ||
| 340 | } | ||
| 341 | |||
| 330 | static int mts_scsi_abort (Scsi_Cmnd *srb) | 342 | static int mts_scsi_abort (Scsi_Cmnd *srb) |
| 331 | { | 343 | { |
| 332 | struct mts_desc* desc = (struct mts_desc*)(srb->device->host->hostdata[0]); | 344 | struct mts_desc* desc = (struct mts_desc*)(srb->device->host->hostdata[0]); |
| @@ -411,7 +423,7 @@ static void mts_transfer_done( struct urb *transfer, struct pt_regs *regs ) | |||
| 411 | MTS_INT_INIT(); | 423 | MTS_INT_INIT(); |
| 412 | 424 | ||
| 413 | context->srb->result &= MTS_SCSI_ERR_MASK; | 425 | context->srb->result &= MTS_SCSI_ERR_MASK; |
| 414 | context->srb->result |= (unsigned)context->status<<1; | 426 | context->srb->result |= (unsigned)(*context->scsi_status)<<1; |
| 415 | 427 | ||
| 416 | mts_transfer_cleanup(transfer); | 428 | mts_transfer_cleanup(transfer); |
| 417 | 429 | ||
| @@ -427,7 +439,7 @@ static void mts_get_status( struct urb *transfer ) | |||
| 427 | mts_int_submit_urb(transfer, | 439 | mts_int_submit_urb(transfer, |
| 428 | usb_rcvbulkpipe(context->instance->usb_dev, | 440 | usb_rcvbulkpipe(context->instance->usb_dev, |
| 429 | context->instance->ep_response), | 441 | context->instance->ep_response), |
| 430 | &context->status, | 442 | context->scsi_status, |
| 431 | 1, | 443 | 1, |
| 432 | mts_transfer_done ); | 444 | mts_transfer_done ); |
| 433 | } | 445 | } |
| @@ -481,7 +493,7 @@ static void mts_command_done( struct urb *transfer, struct pt_regs *regs ) | |||
| 481 | context->data_pipe, | 493 | context->data_pipe, |
| 482 | context->data, | 494 | context->data, |
| 483 | context->data_length, | 495 | context->data_length, |
| 484 | context->srb->use_sg ? mts_do_sg : mts_data_done); | 496 | context->srb->use_sg > 1 ? mts_do_sg : mts_data_done); |
| 485 | } else { | 497 | } else { |
| 486 | mts_get_status(transfer); | 498 | mts_get_status(transfer); |
| 487 | } | 499 | } |
| @@ -627,7 +639,6 @@ int mts_scsi_queuecommand( Scsi_Cmnd *srb, mts_scsi_cmnd_callback callback ) | |||
| 627 | callback(srb); | 639 | callback(srb); |
| 628 | 640 | ||
| 629 | } | 641 | } |
| 630 | |||
| 631 | out: | 642 | out: |
| 632 | return err; | 643 | return err; |
| 633 | } | 644 | } |
| @@ -645,6 +656,9 @@ static struct scsi_host_template mts_scsi_host_template = { | |||
| 645 | .cmd_per_lun = 1, | 656 | .cmd_per_lun = 1, |
| 646 | .use_clustering = 1, | 657 | .use_clustering = 1, |
| 647 | .emulated = 1, | 658 | .emulated = 1, |
| 659 | .slave_alloc = mts_slave_alloc, | ||
| 660 | .slave_configure = mts_slave_configure, | ||
| 661 | .max_sectors= 256, /* 128 K */ | ||
| 648 | }; | 662 | }; |
| 649 | 663 | ||
| 650 | struct vendor_product | 664 | struct vendor_product |
| @@ -771,8 +785,8 @@ static int mts_usb_probe(struct usb_interface *intf, | |||
| 771 | MTS_WARNING( "couldn't find an output bulk endpoint. Bailing out.\n" ); | 785 | MTS_WARNING( "couldn't find an output bulk endpoint. Bailing out.\n" ); |
| 772 | return -ENODEV; | 786 | return -ENODEV; |
| 773 | } | 787 | } |
| 774 | 788 | ||
| 775 | 789 | ||
| 776 | new_desc = kzalloc(sizeof(struct mts_desc), GFP_KERNEL); | 790 | new_desc = kzalloc(sizeof(struct mts_desc), GFP_KERNEL); |
| 777 | if (!new_desc) | 791 | if (!new_desc) |
| 778 | goto out; | 792 | goto out; |
| @@ -781,6 +795,10 @@ static int mts_usb_probe(struct usb_interface *intf, | |||
| 781 | if (!new_desc->urb) | 795 | if (!new_desc->urb) |
| 782 | goto out_kfree; | 796 | goto out_kfree; |
| 783 | 797 | ||
| 798 | new_desc->context.scsi_status = kmalloc(1, GFP_KERNEL); | ||
| 799 | if (!new_desc->context.scsi_status) | ||
| 800 | goto out_kfree2; | ||
| 801 | |||
| 784 | new_desc->usb_dev = dev; | 802 | new_desc->usb_dev = dev; |
| 785 | new_desc->usb_intf = intf; | 803 | new_desc->usb_intf = intf; |
| 786 | init_MUTEX(&new_desc->lock); | 804 | init_MUTEX(&new_desc->lock); |
| @@ -817,6 +835,8 @@ static int mts_usb_probe(struct usb_interface *intf, | |||
| 817 | usb_set_intfdata(intf, new_desc); | 835 | usb_set_intfdata(intf, new_desc); |
| 818 | return 0; | 836 | return 0; |
| 819 | 837 | ||
| 838 | out_kfree2: | ||
| 839 | kfree(new_desc->context.scsi_status); | ||
| 820 | out_free_urb: | 840 | out_free_urb: |
| 821 | usb_free_urb(new_desc->urb); | 841 | usb_free_urb(new_desc->urb); |
| 822 | out_kfree: | 842 | out_kfree: |
| @@ -836,6 +856,7 @@ static void mts_usb_disconnect (struct usb_interface *intf) | |||
| 836 | 856 | ||
| 837 | scsi_host_put(desc->host); | 857 | scsi_host_put(desc->host); |
| 838 | usb_free_urb(desc->urb); | 858 | usb_free_urb(desc->urb); |
| 859 | kfree(desc->context.scsi_status); | ||
| 839 | kfree(desc); | 860 | kfree(desc); |
| 840 | } | 861 | } |
| 841 | 862 | ||
| @@ -856,5 +877,3 @@ module_exit(microtek_drv_exit); | |||
| 856 | MODULE_AUTHOR( DRIVER_AUTHOR ); | 877 | MODULE_AUTHOR( DRIVER_AUTHOR ); |
| 857 | MODULE_DESCRIPTION( DRIVER_DESC ); | 878 | MODULE_DESCRIPTION( DRIVER_DESC ); |
| 858 | MODULE_LICENSE("GPL"); | 879 | MODULE_LICENSE("GPL"); |
| 859 | |||
| 860 | |||
diff --git a/drivers/usb/image/microtek.h b/drivers/usb/image/microtek.h index 3271deb8c001..926d4bdc6746 100644 --- a/drivers/usb/image/microtek.h +++ b/drivers/usb/image/microtek.h | |||
| @@ -22,7 +22,7 @@ struct mts_transfer_context | |||
| 22 | int data_pipe; | 22 | int data_pipe; |
| 23 | int fragment; | 23 | int fragment; |
| 24 | 24 | ||
| 25 | u8 status; /* status returned from ep_response after command completion */ | 25 | u8 *scsi_status; /* status returned from ep_response after command completion */ |
| 26 | }; | 26 | }; |
| 27 | 27 | ||
| 28 | 28 | ||
diff --git a/drivers/usb/input/Makefile b/drivers/usb/input/Makefile index 5e03b93f29f6..07cb17db42fc 100644 --- a/drivers/usb/input/Makefile +++ b/drivers/usb/input/Makefile | |||
| @@ -42,3 +42,7 @@ obj-$(CONFIG_USB_ACECAD) += acecad.o | |||
| 42 | obj-$(CONFIG_USB_YEALINK) += yealink.o | 42 | obj-$(CONFIG_USB_YEALINK) += yealink.o |
| 43 | obj-$(CONFIG_USB_XPAD) += xpad.o | 43 | obj-$(CONFIG_USB_XPAD) += xpad.o |
| 44 | obj-$(CONFIG_USB_APPLETOUCH) += appletouch.o | 44 | obj-$(CONFIG_USB_APPLETOUCH) += appletouch.o |
| 45 | |||
| 46 | ifeq ($(CONFIG_USB_DEBUG),y) | ||
| 47 | EXTRA_CFLAGS += -DDEBUG | ||
| 48 | endif | ||
diff --git a/drivers/usb/input/hid-core.c b/drivers/usb/input/hid-core.c index 79ddce4555ab..45f3130fadea 100644 --- a/drivers/usb/input/hid-core.c +++ b/drivers/usb/input/hid-core.c | |||
| @@ -1318,6 +1318,7 @@ void hid_init_reports(struct hid_device *hid) | |||
| 1318 | #define USB_DEVICE_ID_WACOM_PTU 0x0003 | 1318 | #define USB_DEVICE_ID_WACOM_PTU 0x0003 |
| 1319 | #define USB_DEVICE_ID_WACOM_INTUOS3 0x00B0 | 1319 | #define USB_DEVICE_ID_WACOM_INTUOS3 0x00B0 |
| 1320 | #define USB_DEVICE_ID_WACOM_CINTIQ 0x003F | 1320 | #define USB_DEVICE_ID_WACOM_CINTIQ 0x003F |
| 1321 | #define USB_DEVICE_ID_WACOM_DTF 0x00C0 | ||
| 1321 | 1322 | ||
| 1322 | #define USB_VENDOR_ID_ACECAD 0x0460 | 1323 | #define USB_VENDOR_ID_ACECAD 0x0460 |
| 1323 | #define USB_DEVICE_ID_ACECAD_FLAIR 0x0004 | 1324 | #define USB_DEVICE_ID_ACECAD_FLAIR 0x0004 |
| @@ -1524,6 +1525,9 @@ static struct hid_blacklist { | |||
| 1524 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_PL + 3, HID_QUIRK_IGNORE }, | 1525 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_PL + 3, HID_QUIRK_IGNORE }, |
| 1525 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_PL + 4, HID_QUIRK_IGNORE }, | 1526 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_PL + 4, HID_QUIRK_IGNORE }, |
| 1526 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_PL + 5, HID_QUIRK_IGNORE }, | 1527 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_PL + 5, HID_QUIRK_IGNORE }, |
| 1528 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_PL + 7, HID_QUIRK_IGNORE }, | ||
| 1529 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_PL + 8, HID_QUIRK_IGNORE }, | ||
| 1530 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_PL + 9, HID_QUIRK_IGNORE }, | ||
| 1527 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_INTUOS2 + 1, HID_QUIRK_IGNORE }, | 1531 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_INTUOS2 + 1, HID_QUIRK_IGNORE }, |
| 1528 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_INTUOS2 + 2, HID_QUIRK_IGNORE }, | 1532 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_INTUOS2 + 2, HID_QUIRK_IGNORE }, |
| 1529 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_INTUOS2 + 3, HID_QUIRK_IGNORE }, | 1533 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_INTUOS2 + 3, HID_QUIRK_IGNORE }, |
| @@ -1531,11 +1535,19 @@ static struct hid_blacklist { | |||
| 1531 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_INTUOS2 + 5, HID_QUIRK_IGNORE }, | 1535 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_INTUOS2 + 5, HID_QUIRK_IGNORE }, |
| 1532 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_INTUOS2 + 7, HID_QUIRK_IGNORE }, | 1536 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_INTUOS2 + 7, HID_QUIRK_IGNORE }, |
| 1533 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_VOLITO, HID_QUIRK_IGNORE }, | 1537 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_VOLITO, HID_QUIRK_IGNORE }, |
| 1538 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_VOLITO + 1, HID_QUIRK_IGNORE }, | ||
| 1539 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_VOLITO + 2, HID_QUIRK_IGNORE }, | ||
| 1540 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_VOLITO + 3, HID_QUIRK_IGNORE }, | ||
| 1541 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_VOLITO + 4, HID_QUIRK_IGNORE }, | ||
| 1542 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_GRAPHIRE + 5, HID_QUIRK_IGNORE }, | ||
| 1543 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_GRAPHIRE + 6, HID_QUIRK_IGNORE }, | ||
| 1534 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_PTU, HID_QUIRK_IGNORE }, | 1544 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_PTU, HID_QUIRK_IGNORE }, |
| 1535 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_INTUOS3, HID_QUIRK_IGNORE }, | 1545 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_INTUOS3, HID_QUIRK_IGNORE }, |
| 1536 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_INTUOS3 + 1, HID_QUIRK_IGNORE }, | 1546 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_INTUOS3 + 1, HID_QUIRK_IGNORE }, |
| 1537 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_INTUOS3 + 2, HID_QUIRK_IGNORE }, | 1547 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_INTUOS3 + 2, HID_QUIRK_IGNORE }, |
| 1548 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_INTUOS3 + 5, HID_QUIRK_IGNORE }, | ||
| 1538 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_CINTIQ, HID_QUIRK_IGNORE }, | 1549 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_CINTIQ, HID_QUIRK_IGNORE }, |
| 1550 | { USB_VENDOR_ID_WACOM, USB_DEVICE_ID_WACOM_DTF, HID_QUIRK_IGNORE }, | ||
| 1539 | { USB_VENDOR_ID_WISEGROUP, USB_DEVICE_ID_4_PHIDGETSERVO_20, HID_QUIRK_IGNORE }, | 1551 | { USB_VENDOR_ID_WISEGROUP, USB_DEVICE_ID_4_PHIDGETSERVO_20, HID_QUIRK_IGNORE }, |
| 1540 | { USB_VENDOR_ID_WISEGROUP, USB_DEVICE_ID_1_PHIDGETSERVO_20, HID_QUIRK_IGNORE }, | 1552 | { USB_VENDOR_ID_WISEGROUP, USB_DEVICE_ID_1_PHIDGETSERVO_20, HID_QUIRK_IGNORE }, |
| 1541 | 1553 | ||
diff --git a/drivers/usb/input/itmtouch.c b/drivers/usb/input/itmtouch.c index 3b581853cf10..4a50acb39d29 100644 --- a/drivers/usb/input/itmtouch.c +++ b/drivers/usb/input/itmtouch.c | |||
| @@ -40,13 +40,6 @@ | |||
| 40 | *****************************************************************************/ | 40 | *****************************************************************************/ |
| 41 | 41 | ||
| 42 | #include <linux/config.h> | 42 | #include <linux/config.h> |
| 43 | |||
| 44 | #ifdef CONFIG_USB_DEBUG | ||
| 45 | #define DEBUG | ||
| 46 | #else | ||
| 47 | #undef DEBUG | ||
| 48 | #endif | ||
| 49 | |||
| 50 | #include <linux/kernel.h> | 43 | #include <linux/kernel.h> |
| 51 | #include <linux/slab.h> | 44 | #include <linux/slab.h> |
| 52 | #include <linux/input.h> | 45 | #include <linux/input.h> |
diff --git a/drivers/usb/input/keyspan_remote.c b/drivers/usb/input/keyspan_remote.c index 5b8d65f62abf..a32cfe51b77d 100644 --- a/drivers/usb/input/keyspan_remote.c +++ b/drivers/usb/input/keyspan_remote.c | |||
| @@ -160,7 +160,8 @@ static int keyspan_load_tester(struct usb_keyspan* dev, int bits_needed) | |||
| 160 | * though so it's not too big a deal | 160 | * though so it's not too big a deal |
| 161 | */ | 161 | */ |
| 162 | if (dev->data.pos >= dev->data.len) { | 162 | if (dev->data.pos >= dev->data.len) { |
| 163 | dev_dbg(&dev->udev, "%s - Error ran out of data. pos: %d, len: %d\n", | 163 | dev_dbg(&dev->udev->dev, |
| 164 | "%s - Error ran out of data. pos: %d, len: %d\n", | ||
| 164 | __FUNCTION__, dev->data.pos, dev->data.len); | 165 | __FUNCTION__, dev->data.pos, dev->data.len); |
| 165 | return -1; | 166 | return -1; |
| 166 | } | 167 | } |
| @@ -306,7 +307,7 @@ static void keyspan_check_data(struct usb_keyspan *remote, struct pt_regs *regs) | |||
| 306 | err("Bad message recieved, no stop bit found.\n"); | 307 | err("Bad message recieved, no stop bit found.\n"); |
| 307 | } | 308 | } |
| 308 | 309 | ||
| 309 | dev_dbg(&remote->udev, | 310 | dev_dbg(&remote->udev->dev, |
| 310 | "%s found valid message: system: %d, button: %d, toggle: %d\n", | 311 | "%s found valid message: system: %d, button: %d, toggle: %d\n", |
| 311 | __FUNCTION__, message.system, message.button, message.toggle); | 312 | __FUNCTION__, message.system, message.button, message.toggle); |
| 312 | 313 | ||
diff --git a/drivers/usb/input/mtouchusb.c b/drivers/usb/input/mtouchusb.c index 7fce526560ca..52cc18cd247d 100644 --- a/drivers/usb/input/mtouchusb.c +++ b/drivers/usb/input/mtouchusb.c | |||
| @@ -40,13 +40,6 @@ | |||
| 40 | *****************************************************************************/ | 40 | *****************************************************************************/ |
| 41 | 41 | ||
| 42 | #include <linux/config.h> | 42 | #include <linux/config.h> |
| 43 | |||
| 44 | #ifdef CONFIG_USB_DEBUG | ||
| 45 | #define DEBUG | ||
| 46 | #else | ||
| 47 | #undef DEBUG | ||
| 48 | #endif | ||
| 49 | |||
| 50 | #include <linux/kernel.h> | 43 | #include <linux/kernel.h> |
| 51 | #include <linux/slab.h> | 44 | #include <linux/slab.h> |
| 52 | #include <linux/input.h> | 45 | #include <linux/input.h> |
diff --git a/drivers/usb/input/pid.c b/drivers/usb/input/pid.c index dca5ee93a4ef..19e015d171aa 100644 --- a/drivers/usb/input/pid.c +++ b/drivers/usb/input/pid.c | |||
| @@ -37,8 +37,6 @@ | |||
| 37 | #include "hid.h" | 37 | #include "hid.h" |
| 38 | #include "pid.h" | 38 | #include "pid.h" |
| 39 | 39 | ||
| 40 | #define DEBUG | ||
| 41 | |||
| 42 | #define CHECK_OWNERSHIP(i, hid_pid) \ | 40 | #define CHECK_OWNERSHIP(i, hid_pid) \ |
| 43 | ((i) < FF_EFFECTS_MAX && i >= 0 && \ | 41 | ((i) < FF_EFFECTS_MAX && i >= 0 && \ |
| 44 | test_bit(FF_PID_FLAGS_USED, &hid_pid->effects[(i)].flags) && \ | 42 | test_bit(FF_PID_FLAGS_USED, &hid_pid->effects[(i)].flags) && \ |
diff --git a/drivers/usb/input/touchkitusb.c b/drivers/usb/input/touchkitusb.c index 0043e6ebcd1f..7420c6b84284 100644 --- a/drivers/usb/input/touchkitusb.c +++ b/drivers/usb/input/touchkitusb.c | |||
| @@ -30,10 +30,6 @@ | |||
| 30 | #include <linux/input.h> | 30 | #include <linux/input.h> |
| 31 | #include <linux/module.h> | 31 | #include <linux/module.h> |
| 32 | #include <linux/init.h> | 32 | #include <linux/init.h> |
| 33 | |||
| 34 | #if !defined(DEBUG) && defined(CONFIG_USB_DEBUG) | ||
| 35 | #define DEBUG | ||
| 36 | #endif | ||
| 37 | #include <linux/usb.h> | 33 | #include <linux/usb.h> |
| 38 | #include <linux/usb_input.h> | 34 | #include <linux/usb_input.h> |
| 39 | 35 | ||
diff --git a/drivers/usb/input/wacom.c b/drivers/usb/input/wacom.c index ea0f75773ae1..aea1cfae34cc 100644 --- a/drivers/usb/input/wacom.c +++ b/drivers/usb/input/wacom.c | |||
| @@ -52,8 +52,10 @@ | |||
| 52 | * v1.30.1 (pi) - Added Graphire3 support | 52 | * v1.30.1 (pi) - Added Graphire3 support |
| 53 | * v1.40 (pc) - Add support for several new devices, fix eraser reporting, ... | 53 | * v1.40 (pc) - Add support for several new devices, fix eraser reporting, ... |
| 54 | * v1.43 (pc) - Added support for Cintiq 21UX | 54 | * v1.43 (pc) - Added support for Cintiq 21UX |
| 55 | - Fixed a Graphire bug | 55 | * - Fixed a Graphire bug |
| 56 | - Merged wacom_intuos3_irq into wacom_intuos_irq | 56 | * - Merged wacom_intuos3_irq into wacom_intuos_irq |
| 57 | * v1.44 (pc) - Added support for Graphire4, Cintiq 710, Intuos3 6x11, etc. | ||
| 58 | * - Report Device IDs | ||
| 57 | */ | 59 | */ |
| 58 | 60 | ||
| 59 | /* | 61 | /* |
| @@ -76,7 +78,7 @@ | |||
| 76 | /* | 78 | /* |
| 77 | * Version Information | 79 | * Version Information |
| 78 | */ | 80 | */ |
| 79 | #define DRIVER_VERSION "v1.43" | 81 | #define DRIVER_VERSION "v1.44" |
| 80 | #define DRIVER_AUTHOR "Vojtech Pavlik <vojtech@ucw.cz>" | 82 | #define DRIVER_AUTHOR "Vojtech Pavlik <vojtech@ucw.cz>" |
| 81 | #define DRIVER_DESC "USB Wacom Graphire and Wacom Intuos tablet driver" | 83 | #define DRIVER_DESC "USB Wacom Graphire and Wacom Intuos tablet driver" |
| 82 | #define DRIVER_LICENSE "GPL" | 84 | #define DRIVER_LICENSE "GPL" |
| @@ -86,10 +88,14 @@ MODULE_DESCRIPTION(DRIVER_DESC); | |||
| 86 | MODULE_LICENSE(DRIVER_LICENSE); | 88 | MODULE_LICENSE(DRIVER_LICENSE); |
| 87 | 89 | ||
| 88 | #define USB_VENDOR_ID_WACOM 0x056a | 90 | #define USB_VENDOR_ID_WACOM 0x056a |
| 91 | #define STYLUS_DEVICE_ID 0x02 | ||
| 92 | #define CURSOR_DEVICE_ID 0x06 | ||
| 93 | #define ERASER_DEVICE_ID 0x0A | ||
| 89 | 94 | ||
| 90 | enum { | 95 | enum { |
| 91 | PENPARTNER = 0, | 96 | PENPARTNER = 0, |
| 92 | GRAPHIRE, | 97 | GRAPHIRE, |
| 98 | G4, | ||
| 93 | PL, | 99 | PL, |
| 94 | INTUOS, | 100 | INTUOS, |
| 95 | INTUOS3, | 101 | INTUOS3, |
| @@ -116,6 +122,7 @@ struct wacom { | |||
| 116 | struct urb *irq; | 122 | struct urb *irq; |
| 117 | struct wacom_features *features; | 123 | struct wacom_features *features; |
| 118 | int tool[2]; | 124 | int tool[2]; |
| 125 | int id[2]; | ||
| 119 | __u32 serial[2]; | 126 | __u32 serial[2]; |
| 120 | char phys[32]; | 127 | char phys[32]; |
| 121 | }; | 128 | }; |
| @@ -136,7 +143,7 @@ static void wacom_pl_irq(struct urb *urb, struct pt_regs *regs) | |||
| 136 | struct wacom *wacom = urb->context; | 143 | struct wacom *wacom = urb->context; |
| 137 | unsigned char *data = wacom->data; | 144 | unsigned char *data = wacom->data; |
| 138 | struct input_dev *dev = wacom->dev; | 145 | struct input_dev *dev = wacom->dev; |
| 139 | int prox, pressure; | 146 | int prox, pressure, id; |
| 140 | int retval; | 147 | int retval; |
| 141 | 148 | ||
| 142 | switch (urb->status) { | 149 | switch (urb->status) { |
| @@ -163,6 +170,7 @@ static void wacom_pl_irq(struct urb *urb, struct pt_regs *regs) | |||
| 163 | 170 | ||
| 164 | input_regs(dev, regs); | 171 | input_regs(dev, regs); |
| 165 | 172 | ||
| 173 | id = ERASER_DEVICE_ID; | ||
| 166 | if (prox) { | 174 | if (prox) { |
| 167 | 175 | ||
| 168 | pressure = (signed char)((data[7] << 1) | ((data[4] >> 2) & 1)); | 176 | pressure = (signed char)((data[7] << 1) | ((data[4] >> 2) & 1)); |
| @@ -177,11 +185,15 @@ static void wacom_pl_irq(struct urb *urb, struct pt_regs *regs) | |||
| 177 | * an out of proximity for previous tool then a in for new tool. | 185 | * an out of proximity for previous tool then a in for new tool. |
| 178 | */ | 186 | */ |
| 179 | if (!wacom->tool[0]) { | 187 | if (!wacom->tool[0]) { |
| 180 | /* Going into proximity select tool */ | 188 | /* Eraser bit set for DTF */ |
| 181 | wacom->tool[1] = (data[4] & 0x20)? BTN_TOOL_RUBBER : BTN_TOOL_PEN; | 189 | if (data[1] & 0x10) |
| 190 | wacom->tool[1] = BTN_TOOL_RUBBER; | ||
| 191 | else | ||
| 192 | /* Going into proximity select tool */ | ||
| 193 | wacom->tool[1] = (data[4] & 0x20) ? BTN_TOOL_RUBBER : BTN_TOOL_PEN; | ||
| 182 | } else { | 194 | } else { |
| 183 | /* was entered with stylus2 pressed */ | 195 | /* was entered with stylus2 pressed */ |
| 184 | if (wacom->tool[1] == BTN_TOOL_RUBBER && !(data[4] & 0x20) ) { | 196 | if (wacom->tool[1] == BTN_TOOL_RUBBER && !(data[4] & 0x20)) { |
| 185 | /* report out proximity for previous tool */ | 197 | /* report out proximity for previous tool */ |
| 186 | input_report_key(dev, wacom->tool[1], 0); | 198 | input_report_key(dev, wacom->tool[1], 0); |
| 187 | input_sync(dev); | 199 | input_sync(dev); |
| @@ -192,8 +204,9 @@ static void wacom_pl_irq(struct urb *urb, struct pt_regs *regs) | |||
| 192 | if (wacom->tool[1] != BTN_TOOL_RUBBER) { | 204 | if (wacom->tool[1] != BTN_TOOL_RUBBER) { |
| 193 | /* Unknown tool selected default to pen tool */ | 205 | /* Unknown tool selected default to pen tool */ |
| 194 | wacom->tool[1] = BTN_TOOL_PEN; | 206 | wacom->tool[1] = BTN_TOOL_PEN; |
| 207 | id = STYLUS_DEVICE_ID; | ||
| 195 | } | 208 | } |
| 196 | input_report_key(dev, wacom->tool[1], prox); /* report in proximity for tool */ | 209 | input_report_key(dev, wacom->tool[1], id); /* report in proximity for tool */ |
| 197 | input_report_abs(dev, ABS_X, data[3] | (data[2] << 7) | ((data[1] & 0x03) << 14)); | 210 | input_report_abs(dev, ABS_X, data[3] | (data[2] << 7) | ((data[1] & 0x03) << 14)); |
| 198 | input_report_abs(dev, ABS_Y, data[6] | (data[5] << 7) | ((data[4] & 0x03) << 14)); | 211 | input_report_abs(dev, ABS_Y, data[6] | (data[5] << 7) | ((data[4] & 0x03) << 14)); |
| 199 | input_report_abs(dev, ABS_PRESSURE, pressure); | 212 | input_report_abs(dev, ABS_PRESSURE, pressure); |
| @@ -250,10 +263,10 @@ static void wacom_ptu_irq(struct urb *urb, struct pt_regs *regs) | |||
| 250 | 263 | ||
| 251 | input_regs(dev, regs); | 264 | input_regs(dev, regs); |
| 252 | if (data[1] & 0x04) { | 265 | if (data[1] & 0x04) { |
| 253 | input_report_key(dev, BTN_TOOL_RUBBER, data[1] & 0x20); | 266 | input_report_key(dev, BTN_TOOL_RUBBER, (data[1] & 0x20) ? ERASER_DEVICE_ID : 0); |
| 254 | input_report_key(dev, BTN_TOUCH, data[1] & 0x08); | 267 | input_report_key(dev, BTN_TOUCH, data[1] & 0x08); |
| 255 | } else { | 268 | } else { |
| 256 | input_report_key(dev, BTN_TOOL_PEN, data[1] & 0x20); | 269 | input_report_key(dev, BTN_TOOL_PEN, (data[1] & 0x20) ? STYLUS_DEVICE_ID : 0); |
| 257 | input_report_key(dev, BTN_TOUCH, data[1] & 0x01); | 270 | input_report_key(dev, BTN_TOUCH, data[1] & 0x01); |
| 258 | } | 271 | } |
| 259 | input_report_abs(dev, ABS_X, le16_to_cpu(*(__le16 *) &data[2])); | 272 | input_report_abs(dev, ABS_X, le16_to_cpu(*(__le16 *) &data[2])); |
| @@ -299,7 +312,7 @@ static void wacom_penpartner_irq(struct urb *urb, struct pt_regs *regs) | |||
| 299 | } | 312 | } |
| 300 | 313 | ||
| 301 | input_regs(dev, regs); | 314 | input_regs(dev, regs); |
| 302 | input_report_key(dev, BTN_TOOL_PEN, 1); | 315 | input_report_key(dev, BTN_TOOL_PEN, STYLUS_DEVICE_ID); |
| 303 | input_report_abs(dev, ABS_X, le16_to_cpu(*(__le16 *) &data[1])); | 316 | input_report_abs(dev, ABS_X, le16_to_cpu(*(__le16 *) &data[1])); |
| 304 | input_report_abs(dev, ABS_Y, le16_to_cpu(*(__le16 *) &data[3])); | 317 | input_report_abs(dev, ABS_Y, le16_to_cpu(*(__le16 *) &data[3])); |
| 305 | input_report_abs(dev, ABS_PRESSURE, (signed char)data[6] + 127); | 318 | input_report_abs(dev, ABS_PRESSURE, (signed char)data[6] + 127); |
| @@ -319,7 +332,7 @@ static void wacom_graphire_irq(struct urb *urb, struct pt_regs *regs) | |||
| 319 | struct wacom *wacom = urb->context; | 332 | struct wacom *wacom = urb->context; |
| 320 | unsigned char *data = wacom->data; | 333 | unsigned char *data = wacom->data; |
| 321 | struct input_dev *dev = wacom->dev; | 334 | struct input_dev *dev = wacom->dev; |
| 322 | int x, y; | 335 | int x, y, id, rw; |
| 323 | int retval; | 336 | int retval; |
| 324 | 337 | ||
| 325 | switch (urb->status) { | 338 | switch (urb->status) { |
| @@ -344,6 +357,7 @@ static void wacom_graphire_irq(struct urb *urb, struct pt_regs *regs) | |||
| 344 | 357 | ||
| 345 | input_regs(dev, regs); | 358 | input_regs(dev, regs); |
| 346 | 359 | ||
| 360 | id = STYLUS_DEVICE_ID; | ||
| 347 | if (data[1] & 0x10) { /* in prox */ | 361 | if (data[1] & 0x10) { /* in prox */ |
| 348 | 362 | ||
| 349 | switch ((data[1] >> 5) & 3) { | 363 | switch ((data[1] >> 5) & 3) { |
| @@ -354,18 +368,27 @@ static void wacom_graphire_irq(struct urb *urb, struct pt_regs *regs) | |||
| 354 | 368 | ||
| 355 | case 1: /* Rubber */ | 369 | case 1: /* Rubber */ |
| 356 | wacom->tool[0] = BTN_TOOL_RUBBER; | 370 | wacom->tool[0] = BTN_TOOL_RUBBER; |
| 371 | id = ERASER_DEVICE_ID; | ||
| 357 | break; | 372 | break; |
| 358 | 373 | ||
| 359 | case 2: /* Mouse with wheel */ | 374 | case 2: /* Mouse with wheel */ |
| 360 | input_report_key(dev, BTN_MIDDLE, data[1] & 0x04); | 375 | input_report_key(dev, BTN_MIDDLE, data[1] & 0x04); |
| 361 | input_report_rel(dev, REL_WHEEL, (signed char) data[6]); | 376 | if (wacom->features->type == G4) { |
| 377 | rw = data[7] & 0x04 ? -(data[7] & 0x03) : (data[7] & 0x03); | ||
| 378 | input_report_rel(dev, REL_WHEEL, rw); | ||
| 379 | } else | ||
| 380 | input_report_rel(dev, REL_WHEEL, (signed char) data[6]); | ||
| 362 | /* fall through */ | 381 | /* fall through */ |
| 363 | 382 | ||
| 364 | case 3: /* Mouse without wheel */ | 383 | case 3: /* Mouse without wheel */ |
| 365 | wacom->tool[0] = BTN_TOOL_MOUSE; | 384 | wacom->tool[0] = BTN_TOOL_MOUSE; |
| 385 | id = CURSOR_DEVICE_ID; | ||
| 366 | input_report_key(dev, BTN_LEFT, data[1] & 0x01); | 386 | input_report_key(dev, BTN_LEFT, data[1] & 0x01); |
| 367 | input_report_key(dev, BTN_RIGHT, data[1] & 0x02); | 387 | input_report_key(dev, BTN_RIGHT, data[1] & 0x02); |
| 368 | input_report_abs(dev, ABS_DISTANCE, data[7]); | 388 | if (wacom->features->type == G4) |
| 389 | input_report_abs(dev, ABS_DISTANCE, data[6]); | ||
| 390 | else | ||
| 391 | input_report_abs(dev, ABS_DISTANCE, data[7]); | ||
| 369 | break; | 392 | break; |
| 370 | } | 393 | } |
| 371 | } | 394 | } |
| @@ -376,16 +399,50 @@ static void wacom_graphire_irq(struct urb *urb, struct pt_regs *regs) | |||
| 376 | input_report_abs(dev, ABS_X, x); | 399 | input_report_abs(dev, ABS_X, x); |
| 377 | input_report_abs(dev, ABS_Y, y); | 400 | input_report_abs(dev, ABS_Y, y); |
| 378 | if (wacom->tool[0] != BTN_TOOL_MOUSE) { | 401 | if (wacom->tool[0] != BTN_TOOL_MOUSE) { |
| 379 | input_report_abs(dev, ABS_PRESSURE, le16_to_cpu(*(__le16 *) &data[6])); | 402 | input_report_abs(dev, ABS_PRESSURE, data[6] | ((data[7] & 0x01) << 8)); |
| 380 | input_report_key(dev, BTN_TOUCH, data[1] & 0x01); | 403 | input_report_key(dev, BTN_TOUCH, data[1] & 0x01); |
| 381 | input_report_key(dev, BTN_STYLUS, data[1] & 0x02); | 404 | input_report_key(dev, BTN_STYLUS, data[1] & 0x02); |
| 382 | input_report_key(dev, BTN_STYLUS2, data[1] & 0x04); | 405 | input_report_key(dev, BTN_STYLUS2, data[1] & 0x04); |
| 383 | } | 406 | } |
| 384 | } | 407 | } |
| 385 | 408 | ||
| 386 | input_report_key(dev, wacom->tool[0], data[1] & 0x10); | 409 | input_report_key(dev, wacom->tool[0], (data[1] & 0x10) ? id : 0); |
| 387 | input_sync(dev); | 410 | input_sync(dev); |
| 388 | 411 | ||
| 412 | /* send pad data */ | ||
| 413 | if (wacom->features->type == G4) { | ||
| 414 | /* fist time sending pad data */ | ||
| 415 | if (wacom->tool[1] != BTN_TOOL_FINGER) { | ||
| 416 | wacom->id[1] = 0; | ||
| 417 | wacom->serial[1] = (data[7] & 0x38) >> 2; | ||
| 418 | } | ||
| 419 | if (data[7] & 0xf8) { | ||
| 420 | input_report_key(dev, BTN_0, (data[7] & 0x40)); | ||
| 421 | input_report_key(dev, BTN_4, (data[7] & 0x80)); | ||
| 422 | if (((data[7] & 0x38) >> 2) == (wacom->serial[1] & 0x0e)) | ||
| 423 | /* alter REL_WHEEL value so X apps can get it */ | ||
| 424 | wacom->serial[1] += (wacom->serial[1] & 0x01) ? -1 : 1; | ||
| 425 | else | ||
| 426 | wacom->serial[1] = (data[7] & 0x38 ) >> 2; | ||
| 427 | |||
| 428 | /* don't alter the value when there is no wheel event */ | ||
| 429 | if (wacom->serial[1] == 1) | ||
| 430 | wacom->serial[1] = 0; | ||
| 431 | rw = wacom->serial[1]; | ||
| 432 | rw = (rw & 0x08) ? -(rw & 0x07) : (rw & 0x07); | ||
| 433 | input_report_rel(dev, REL_WHEEL, rw); | ||
| 434 | wacom->tool[1] = BTN_TOOL_FINGER; | ||
| 435 | wacom->id[1] = data[7] & 0xf8; | ||
| 436 | input_report_key(dev, wacom->tool[1], 0xf0); | ||
| 437 | input_event(dev, EV_MSC, MSC_SERIAL, 0xf0); | ||
| 438 | } else if (wacom->id[1]) { | ||
| 439 | wacom->id[1] = 0; | ||
| 440 | wacom->serial[1] = 0; | ||
| 441 | input_report_key(dev, wacom->tool[1], 0); | ||
| 442 | input_event(dev, EV_MSC, MSC_SERIAL, 0xf0); | ||
| 443 | } | ||
| 444 | input_sync(dev); | ||
| 445 | } | ||
| 389 | exit: | 446 | exit: |
| 390 | retval = usb_submit_urb (urb, GFP_ATOMIC); | 447 | retval = usb_submit_urb (urb, GFP_ATOMIC); |
| 391 | if (retval) | 448 | if (retval) |
| @@ -410,7 +467,8 @@ static int wacom_intuos_inout(struct urb *urb) | |||
| 410 | (data[4] << 20) + (data[5] << 12) + | 467 | (data[4] << 20) + (data[5] << 12) + |
| 411 | (data[6] << 4) + (data[7] >> 4); | 468 | (data[6] << 4) + (data[7] >> 4); |
| 412 | 469 | ||
| 413 | switch ((data[2] << 4) | (data[3] >> 4)) { | 470 | wacom->id[idx] = (data[2] << 4) | (data[3] >> 4); |
| 471 | switch (wacom->id[idx]) { | ||
| 414 | case 0x812: /* Inking pen */ | 472 | case 0x812: /* Inking pen */ |
| 415 | case 0x801: /* Intuos3 Inking pen */ | 473 | case 0x801: /* Intuos3 Inking pen */ |
| 416 | case 0x012: | 474 | case 0x012: |
| @@ -458,7 +516,7 @@ static int wacom_intuos_inout(struct urb *urb) | |||
| 458 | default: /* Unknown tool */ | 516 | default: /* Unknown tool */ |
| 459 | wacom->tool[idx] = BTN_TOOL_PEN; | 517 | wacom->tool[idx] = BTN_TOOL_PEN; |
| 460 | } | 518 | } |
| 461 | input_report_key(dev, wacom->tool[idx], 1); | 519 | input_report_key(dev, wacom->tool[idx], wacom->id[idx]); |
| 462 | input_event(dev, EV_MSC, MSC_SERIAL, wacom->serial[idx]); | 520 | input_event(dev, EV_MSC, MSC_SERIAL, wacom->serial[idx]); |
| 463 | input_sync(dev); | 521 | input_sync(dev); |
| 464 | return 1; | 522 | return 1; |
| @@ -637,7 +695,7 @@ static void wacom_intuos_irq(struct urb *urb, struct pt_regs *regs) | |||
| 637 | } | 695 | } |
| 638 | } | 696 | } |
| 639 | 697 | ||
| 640 | input_report_key(dev, wacom->tool[idx], 1); | 698 | input_report_key(dev, wacom->tool[idx], wacom->id[idx]); |
| 641 | input_event(dev, EV_MSC, MSC_SERIAL, wacom->serial[idx]); | 699 | input_event(dev, EV_MSC, MSC_SERIAL, wacom->serial[idx]); |
| 642 | input_sync(dev); | 700 | input_sync(dev); |
| 643 | 701 | ||
| @@ -655,6 +713,13 @@ static struct wacom_features wacom_features[] = { | |||
| 655 | { "Wacom Graphire2 5x7", 8, 13918, 10206, 511, 32, GRAPHIRE, wacom_graphire_irq }, | 713 | { "Wacom Graphire2 5x7", 8, 13918, 10206, 511, 32, GRAPHIRE, wacom_graphire_irq }, |
| 656 | { "Wacom Graphire3", 8, 10208, 7424, 511, 32, GRAPHIRE, wacom_graphire_irq }, | 714 | { "Wacom Graphire3", 8, 10208, 7424, 511, 32, GRAPHIRE, wacom_graphire_irq }, |
| 657 | { "Wacom Graphire3 6x8", 8, 16704, 12064, 511, 32, GRAPHIRE, wacom_graphire_irq }, | 715 | { "Wacom Graphire3 6x8", 8, 16704, 12064, 511, 32, GRAPHIRE, wacom_graphire_irq }, |
| 716 | { "Wacom Graphire4 4x5", 8, 10208, 7424, 511, 32, G4, wacom_graphire_irq }, | ||
| 717 | { "Wacom Graphire4 6x8", 8, 16704, 12064, 511, 32, G4, wacom_graphire_irq }, | ||
| 718 | { "Wacom Volito", 8, 5104, 3712, 511, 32, GRAPHIRE, wacom_graphire_irq }, | ||
| 719 | { "Wacom PenStation2", 8, 3250, 2320, 255, 32, GRAPHIRE, wacom_graphire_irq }, | ||
| 720 | { "Wacom Volito2 4x5", 8, 5104, 3712, 511, 32, GRAPHIRE, wacom_graphire_irq }, | ||
| 721 | { "Wacom Volito2 2x3", 8, 3248, 2320, 511, 32, GRAPHIRE, wacom_graphire_irq }, | ||
| 722 | { "Wacom PenPartner2", 8, 3250, 2320, 255, 32, GRAPHIRE, wacom_graphire_irq }, | ||
| 658 | { "Wacom Intuos 4x5", 10, 12700, 10600, 1023, 15, INTUOS, wacom_intuos_irq }, | 723 | { "Wacom Intuos 4x5", 10, 12700, 10600, 1023, 15, INTUOS, wacom_intuos_irq }, |
| 659 | { "Wacom Intuos 6x8", 10, 20320, 16240, 1023, 15, INTUOS, wacom_intuos_irq }, | 724 | { "Wacom Intuos 6x8", 10, 20320, 16240, 1023, 15, INTUOS, wacom_intuos_irq }, |
| 660 | { "Wacom Intuos 9x12", 10, 30480, 24060, 1023, 15, INTUOS, wacom_intuos_irq }, | 725 | { "Wacom Intuos 9x12", 10, 30480, 24060, 1023, 15, INTUOS, wacom_intuos_irq }, |
| @@ -666,16 +731,20 @@ static struct wacom_features wacom_features[] = { | |||
| 666 | { "Wacom PL600SX", 8, 6260, 5016, 255, 32, PL, wacom_pl_irq }, | 731 | { "Wacom PL600SX", 8, 6260, 5016, 255, 32, PL, wacom_pl_irq }, |
| 667 | { "Wacom PL550", 8, 6144, 4608, 511, 32, PL, wacom_pl_irq }, | 732 | { "Wacom PL550", 8, 6144, 4608, 511, 32, PL, wacom_pl_irq }, |
| 668 | { "Wacom PL800", 8, 7220, 5780, 511, 32, PL, wacom_pl_irq }, | 733 | { "Wacom PL800", 8, 7220, 5780, 511, 32, PL, wacom_pl_irq }, |
| 734 | { "Wacom PL700", 8, 6758, 5406, 511, 32, PL, wacom_pl_irq }, | ||
| 735 | { "Wacom PL510", 8, 6282, 4762, 511, 32, PL, wacom_pl_irq }, | ||
| 736 | { "Wacom PL710", 8, 34080, 27660, 511, 32, PL, wacom_pl_irq }, | ||
| 737 | { "Wacom DTF720", 8, 6858, 5506, 511, 32, PL, wacom_pl_irq }, | ||
| 738 | { "Wacom Cintiq Partner",8, 20480, 15360, 511, 32, PL, wacom_ptu_irq }, | ||
| 669 | { "Wacom Intuos2 4x5", 10, 12700, 10600, 1023, 15, INTUOS, wacom_intuos_irq }, | 739 | { "Wacom Intuos2 4x5", 10, 12700, 10600, 1023, 15, INTUOS, wacom_intuos_irq }, |
| 670 | { "Wacom Intuos2 6x8", 10, 20320, 16240, 1023, 15, INTUOS, wacom_intuos_irq }, | 740 | { "Wacom Intuos2 6x8", 10, 20320, 16240, 1023, 15, INTUOS, wacom_intuos_irq }, |
| 671 | { "Wacom Intuos2 9x12", 10, 30480, 24060, 1023, 15, INTUOS, wacom_intuos_irq }, | 741 | { "Wacom Intuos2 9x12", 10, 30480, 24060, 1023, 15, INTUOS, wacom_intuos_irq }, |
| 672 | { "Wacom Intuos2 12x12", 10, 30480, 31680, 1023, 15, INTUOS, wacom_intuos_irq }, | 742 | { "Wacom Intuos2 12x12", 10, 30480, 31680, 1023, 15, INTUOS, wacom_intuos_irq }, |
| 673 | { "Wacom Intuos2 12x18", 10, 45720, 31680, 1023, 15, INTUOS, wacom_intuos_irq }, | 743 | { "Wacom Intuos2 12x18", 10, 45720, 31680, 1023, 15, INTUOS, wacom_intuos_irq }, |
| 674 | { "Wacom Volito", 8, 5104, 3712, 511, 32, GRAPHIRE, wacom_graphire_irq }, | ||
| 675 | { "Wacom Cintiq Partner",8, 20480, 15360, 511, 32, PL, wacom_ptu_irq }, | ||
| 676 | { "Wacom Intuos3 4x5", 10, 25400, 20320, 1023, 15, INTUOS3, wacom_intuos_irq }, | 744 | { "Wacom Intuos3 4x5", 10, 25400, 20320, 1023, 15, INTUOS3, wacom_intuos_irq }, |
| 677 | { "Wacom Intuos3 6x8", 10, 40640, 30480, 1023, 15, INTUOS3, wacom_intuos_irq }, | 745 | { "Wacom Intuos3 6x8", 10, 40640, 30480, 1023, 15, INTUOS3, wacom_intuos_irq }, |
| 678 | { "Wacom Intuos3 9x12", 10, 60960, 45720, 1023, 15, INTUOS3, wacom_intuos_irq }, | 746 | { "Wacom Intuos3 9x12", 10, 60960, 45720, 1023, 15, INTUOS3, wacom_intuos_irq }, |
| 747 | { "Wacom Intuos3 6x11", 10, 54204, 31750, 1023, 15, INTUOS3, wacom_intuos_irq }, | ||
| 679 | { "Wacom Cintiq 21UX", 10, 87200, 65600, 1023, 15, CINTIQ, wacom_intuos_irq }, | 748 | { "Wacom Cintiq 21UX", 10, 87200, 65600, 1023, 15, CINTIQ, wacom_intuos_irq }, |
| 680 | { "Wacom Intuos2 6x8", 10, 20320, 16240, 1023, 15, INTUOS, wacom_intuos_irq }, | 749 | { "Wacom Intuos2 6x8", 10, 20320, 16240, 1023, 15, INTUOS, wacom_intuos_irq }, |
| 681 | { } | 750 | { } |
| @@ -688,6 +757,13 @@ static struct usb_device_id wacom_ids[] = { | |||
| 688 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x12) }, | 757 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x12) }, |
| 689 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x13) }, | 758 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x13) }, |
| 690 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x14) }, | 759 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x14) }, |
| 760 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x15) }, | ||
| 761 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x16) }, | ||
| 762 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x60) }, | ||
| 763 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x61) }, | ||
| 764 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x62) }, | ||
| 765 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x63) }, | ||
| 766 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x64) }, | ||
| 691 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x20) }, | 767 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x20) }, |
| 692 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x21) }, | 768 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x21) }, |
| 693 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x22) }, | 769 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x22) }, |
| @@ -699,16 +775,20 @@ static struct usb_device_id wacom_ids[] = { | |||
| 699 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x33) }, | 775 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x33) }, |
| 700 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x34) }, | 776 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x34) }, |
| 701 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x35) }, | 777 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x35) }, |
| 778 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x37) }, | ||
| 779 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x38) }, | ||
| 780 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x39) }, | ||
| 781 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0xC0) }, | ||
| 782 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x03) }, | ||
| 702 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x41) }, | 783 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x41) }, |
| 703 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x42) }, | 784 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x42) }, |
| 704 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x43) }, | 785 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x43) }, |
| 705 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x44) }, | 786 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x44) }, |
| 706 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x45) }, | 787 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x45) }, |
| 707 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x60) }, | ||
| 708 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x03) }, | ||
| 709 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0xB0) }, | 788 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0xB0) }, |
| 710 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0xB1) }, | 789 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0xB1) }, |
| 711 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0xB2) }, | 790 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0xB2) }, |
| 791 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0xB5) }, | ||
| 712 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x3F) }, | 792 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x3F) }, |
| 713 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x47) }, | 793 | { USB_DEVICE(USB_VENDOR_ID_WACOM, 0x47) }, |
| 714 | { } | 794 | { } |
| @@ -779,6 +859,13 @@ static int wacom_probe(struct usb_interface *intf, const struct usb_device_id *i | |||
| 779 | input_set_abs_params(input_dev, ABS_PRESSURE, 0, wacom->features->pressure_max, 0, 0); | 859 | input_set_abs_params(input_dev, ABS_PRESSURE, 0, wacom->features->pressure_max, 0, 0); |
| 780 | 860 | ||
| 781 | switch (wacom->features->type) { | 861 | switch (wacom->features->type) { |
| 862 | case G4: | ||
| 863 | input_dev->evbit[0] |= BIT(EV_MSC); | ||
| 864 | input_dev->mscbit[0] |= BIT(MSC_SERIAL); | ||
| 865 | input_dev->keybit[LONG(BTN_DIGI)] |= BIT(BTN_TOOL_FINGER); | ||
| 866 | input_dev->keybit[LONG(BTN_LEFT)] |= BIT(BTN_0) | BIT(BTN_1) | BIT(BTN_2) | BIT(BTN_3) | BIT(BTN_4) | BIT(BTN_5) | BIT(BTN_6) | BIT(BTN_7); | ||
| 867 | /* fall through */ | ||
| 868 | |||
| 782 | case GRAPHIRE: | 869 | case GRAPHIRE: |
| 783 | input_dev->evbit[0] |= BIT(EV_REL); | 870 | input_dev->evbit[0] |= BIT(EV_REL); |
| 784 | input_dev->relbit[0] |= BIT(REL_WHEEL); | 871 | input_dev->relbit[0] |= BIT(REL_WHEEL); |
diff --git a/drivers/usb/misc/Makefile b/drivers/usb/misc/Makefile index 862e40a83689..6c693bc68e2e 100644 --- a/drivers/usb/misc/Makefile +++ b/drivers/usb/misc/Makefile | |||
| @@ -18,4 +18,8 @@ obj-$(CONFIG_USB_RIO500) += rio500.o | |||
| 18 | obj-$(CONFIG_USB_TEST) += usbtest.o | 18 | obj-$(CONFIG_USB_TEST) += usbtest.o |
| 19 | obj-$(CONFIG_USB_USS720) += uss720.o | 19 | obj-$(CONFIG_USB_USS720) += uss720.o |
| 20 | 20 | ||
| 21 | obj-$(CONFIG_USB_SISUSBVGA) += sisusbvga/ \ No newline at end of file | 21 | obj-$(CONFIG_USB_SISUSBVGA) += sisusbvga/ |
| 22 | |||
| 23 | ifeq ($(CONFIG_USB_DEBUG),y) | ||
| 24 | EXTRA_CFLAGS += -DDEBUG | ||
| 25 | endif | ||
diff --git a/drivers/usb/misc/auerswald.c b/drivers/usb/misc/auerswald.c index 5f33f7c64885..2a28ceeaa66a 100644 --- a/drivers/usb/misc/auerswald.c +++ b/drivers/usb/misc/auerswald.c | |||
| @@ -30,7 +30,6 @@ | |||
| 30 | #include <linux/module.h> | 30 | #include <linux/module.h> |
| 31 | #include <linux/init.h> | 31 | #include <linux/init.h> |
| 32 | #include <linux/wait.h> | 32 | #include <linux/wait.h> |
| 33 | #undef DEBUG /* include debug macros until it's done */ | ||
| 34 | #include <linux/usb.h> | 33 | #include <linux/usb.h> |
| 35 | 34 | ||
| 36 | /*-------------------------------------------------------------------*/ | 35 | /*-------------------------------------------------------------------*/ |
diff --git a/drivers/usb/misc/phidgetservo.c b/drivers/usb/misc/phidgetservo.c index b84eda631ab5..a30d4a6ee824 100644 --- a/drivers/usb/misc/phidgetservo.c +++ b/drivers/usb/misc/phidgetservo.c | |||
| @@ -26,9 +26,6 @@ | |||
| 26 | */ | 26 | */ |
| 27 | 27 | ||
| 28 | #include <linux/config.h> | 28 | #include <linux/config.h> |
| 29 | #ifdef CONFIG_USB_DEBUG | ||
| 30 | #define DEBUG 1 | ||
| 31 | #endif | ||
| 32 | #include <linux/kernel.h> | 29 | #include <linux/kernel.h> |
| 33 | #include <linux/errno.h> | 30 | #include <linux/errno.h> |
| 34 | #include <linux/init.h> | 31 | #include <linux/init.h> |
diff --git a/drivers/usb/misc/rio500.c b/drivers/usb/misc/rio500.c index 7d02d8ec6b1a..9590dbac5d9a 100644 --- a/drivers/usb/misc/rio500.c +++ b/drivers/usb/misc/rio500.c | |||
| @@ -393,7 +393,7 @@ read_rio(struct file *file, char __user *buffer, size_t count, loff_t * ppos) | |||
| 393 | ibuf, this_read, &partial, | 393 | ibuf, this_read, &partial, |
| 394 | 8000); | 394 | 8000); |
| 395 | 395 | ||
| 396 | dbg(KERN_DEBUG "read stats: result:%d this_read:%u partial:%u", | 396 | dbg("read stats: result:%d this_read:%u partial:%u", |
| 397 | result, this_read, partial); | 397 | result, this_read, partial); |
| 398 | 398 | ||
| 399 | if (partial) { | 399 | if (partial) { |
diff --git a/drivers/usb/misc/usbled.c b/drivers/usb/misc/usbled.c index f6ba4c788dbc..3c93921cb6b3 100644 --- a/drivers/usb/misc/usbled.c +++ b/drivers/usb/misc/usbled.c | |||
| @@ -10,9 +10,6 @@ | |||
| 10 | */ | 10 | */ |
| 11 | 11 | ||
| 12 | #include <linux/config.h> | 12 | #include <linux/config.h> |
| 13 | #ifdef CONFIG_USB_DEBUG | ||
| 14 | #define DEBUG 1 | ||
| 15 | #endif | ||
| 16 | #include <linux/kernel.h> | 13 | #include <linux/kernel.h> |
| 17 | #include <linux/errno.h> | 14 | #include <linux/errno.h> |
| 18 | #include <linux/init.h> | 15 | #include <linux/init.h> |
diff --git a/drivers/usb/misc/usbtest.c b/drivers/usb/misc/usbtest.c index 2997f558159b..605a2afe34ed 100644 --- a/drivers/usb/misc/usbtest.c +++ b/drivers/usb/misc/usbtest.c | |||
| @@ -1,7 +1,4 @@ | |||
| 1 | #include <linux/config.h> | 1 | #include <linux/config.h> |
| 2 | #if !defined (DEBUG) && defined (CONFIG_USB_DEBUG) | ||
| 3 | # define DEBUG | ||
| 4 | #endif | ||
| 5 | #include <linux/kernel.h> | 2 | #include <linux/kernel.h> |
| 6 | #include <linux/errno.h> | 3 | #include <linux/errno.h> |
| 7 | #include <linux/init.h> | 4 | #include <linux/init.h> |
diff --git a/drivers/usb/misc/uss720.c b/drivers/usb/misc/uss720.c index 0592cb5e6c4d..1cabe7ed91f5 100644 --- a/drivers/usb/misc/uss720.c +++ b/drivers/usb/misc/uss720.c | |||
| @@ -41,8 +41,6 @@ | |||
| 41 | 41 | ||
| 42 | /*****************************************************************************/ | 42 | /*****************************************************************************/ |
| 43 | 43 | ||
| 44 | #define DEBUG | ||
| 45 | |||
| 46 | #include <linux/module.h> | 44 | #include <linux/module.h> |
| 47 | #include <linux/socket.h> | 45 | #include <linux/socket.h> |
| 48 | #include <linux/parport.h> | 46 | #include <linux/parport.h> |
diff --git a/drivers/usb/net/Makefile b/drivers/usb/net/Makefile index 222c0495f791..a21e6eaabaf6 100644 --- a/drivers/usb/net/Makefile +++ b/drivers/usb/net/Makefile | |||
| @@ -16,3 +16,7 @@ obj-$(CONFIG_USB_NET_CDC_SUBSET) += cdc_subset.o | |||
| 16 | obj-$(CONFIG_USB_NET_ZAURUS) += zaurus.o | 16 | obj-$(CONFIG_USB_NET_ZAURUS) += zaurus.o |
| 17 | obj-$(CONFIG_USB_USBNET) += usbnet.o | 17 | obj-$(CONFIG_USB_USBNET) += usbnet.o |
| 18 | obj-$(CONFIG_USB_ZD1201) += zd1201.o | 18 | obj-$(CONFIG_USB_ZD1201) += zd1201.o |
| 19 | |||
| 20 | ifeq ($(CONFIG_USB_DEBUG),y) | ||
| 21 | EXTRA_CFLAGS += -DDEBUG | ||
| 22 | endif | ||
diff --git a/drivers/usb/net/asix.c b/drivers/usb/net/asix.c index 252a34fbb42c..542120ef1fd2 100644 --- a/drivers/usb/net/asix.c +++ b/drivers/usb/net/asix.c | |||
| @@ -23,9 +23,6 @@ | |||
| 23 | // #define VERBOSE // more; success messages | 23 | // #define VERBOSE // more; success messages |
| 24 | 24 | ||
| 25 | #include <linux/config.h> | 25 | #include <linux/config.h> |
| 26 | #ifdef CONFIG_USB_DEBUG | ||
| 27 | # define DEBUG | ||
| 28 | #endif | ||
| 29 | #include <linux/module.h> | 26 | #include <linux/module.h> |
| 30 | #include <linux/kmod.h> | 27 | #include <linux/kmod.h> |
| 31 | #include <linux/sched.h> | 28 | #include <linux/sched.h> |
diff --git a/drivers/usb/net/cdc_ether.c b/drivers/usb/net/cdc_ether.c index 652b04bbf6af..c008c981862b 100644 --- a/drivers/usb/net/cdc_ether.c +++ b/drivers/usb/net/cdc_ether.c | |||
| @@ -21,9 +21,6 @@ | |||
| 21 | // #define VERBOSE // more; success messages | 21 | // #define VERBOSE // more; success messages |
| 22 | 22 | ||
| 23 | #include <linux/config.h> | 23 | #include <linux/config.h> |
| 24 | #ifdef CONFIG_USB_DEBUG | ||
| 25 | # define DEBUG | ||
| 26 | #endif | ||
| 27 | #include <linux/module.h> | 24 | #include <linux/module.h> |
| 28 | #include <linux/sched.h> | 25 | #include <linux/sched.h> |
| 29 | #include <linux/init.h> | 26 | #include <linux/init.h> |
diff --git a/drivers/usb/net/cdc_subset.c b/drivers/usb/net/cdc_subset.c index f1730b685fd2..f05cfb83c82d 100644 --- a/drivers/usb/net/cdc_subset.c +++ b/drivers/usb/net/cdc_subset.c | |||
| @@ -18,9 +18,6 @@ | |||
| 18 | */ | 18 | */ |
| 19 | 19 | ||
| 20 | #include <linux/config.h> | 20 | #include <linux/config.h> |
| 21 | #ifdef CONFIG_USB_DEBUG | ||
| 22 | # define DEBUG | ||
| 23 | #endif | ||
| 24 | #include <linux/module.h> | 21 | #include <linux/module.h> |
| 25 | #include <linux/kmod.h> | 22 | #include <linux/kmod.h> |
| 26 | #include <linux/sched.h> | 23 | #include <linux/sched.h> |
diff --git a/drivers/usb/net/gl620a.c b/drivers/usb/net/gl620a.c index c0f263b202a6..2455e9a85674 100644 --- a/drivers/usb/net/gl620a.c +++ b/drivers/usb/net/gl620a.c | |||
| @@ -22,9 +22,6 @@ | |||
| 22 | // #define VERBOSE // more; success messages | 22 | // #define VERBOSE // more; success messages |
| 23 | 23 | ||
| 24 | #include <linux/config.h> | 24 | #include <linux/config.h> |
| 25 | #ifdef CONFIG_USB_DEBUG | ||
| 26 | # define DEBUG | ||
| 27 | #endif | ||
| 28 | #include <linux/module.h> | 25 | #include <linux/module.h> |
| 29 | #include <linux/sched.h> | 26 | #include <linux/sched.h> |
| 30 | #include <linux/init.h> | 27 | #include <linux/init.h> |
diff --git a/drivers/usb/net/kaweth.c b/drivers/usb/net/kaweth.c index 6bef1be6b36c..b5776518020f 100644 --- a/drivers/usb/net/kaweth.c +++ b/drivers/usb/net/kaweth.c | |||
| @@ -219,7 +219,6 @@ struct kaweth_device | |||
| 219 | 219 | ||
| 220 | __u32 status; | 220 | __u32 status; |
| 221 | int end; | 221 | int end; |
| 222 | int removed; | ||
| 223 | int suspend_lowmem_rx; | 222 | int suspend_lowmem_rx; |
| 224 | int suspend_lowmem_ctrl; | 223 | int suspend_lowmem_ctrl; |
| 225 | int linkstate; | 224 | int linkstate; |
| @@ -699,6 +698,7 @@ static int kaweth_close(struct net_device *net) | |||
| 699 | 698 | ||
| 700 | usb_kill_urb(kaweth->irq_urb); | 699 | usb_kill_urb(kaweth->irq_urb); |
| 701 | usb_kill_urb(kaweth->rx_urb); | 700 | usb_kill_urb(kaweth->rx_urb); |
| 701 | usb_kill_urb(kaweth->tx_urb); | ||
| 702 | 702 | ||
| 703 | flush_scheduled_work(); | 703 | flush_scheduled_work(); |
| 704 | 704 | ||
| @@ -750,13 +750,6 @@ static int kaweth_start_xmit(struct sk_buff *skb, struct net_device *net) | |||
| 750 | 750 | ||
| 751 | spin_lock(&kaweth->device_lock); | 751 | spin_lock(&kaweth->device_lock); |
| 752 | 752 | ||
| 753 | if (kaweth->removed) { | ||
| 754 | /* our device is undergoing disconnection - we bail out */ | ||
| 755 | spin_unlock(&kaweth->device_lock); | ||
| 756 | dev_kfree_skb_irq(skb); | ||
| 757 | return 0; | ||
| 758 | } | ||
| 759 | |||
| 760 | kaweth_async_set_rx_mode(kaweth); | 753 | kaweth_async_set_rx_mode(kaweth); |
| 761 | netif_stop_queue(net); | 754 | netif_stop_queue(net); |
| 762 | 755 | ||
| @@ -1136,10 +1129,6 @@ static void kaweth_disconnect(struct usb_interface *intf) | |||
| 1136 | return; | 1129 | return; |
| 1137 | } | 1130 | } |
| 1138 | netdev = kaweth->net; | 1131 | netdev = kaweth->net; |
| 1139 | kaweth->removed = 1; | ||
| 1140 | usb_kill_urb(kaweth->irq_urb); | ||
| 1141 | usb_kill_urb(kaweth->rx_urb); | ||
| 1142 | usb_kill_urb(kaweth->tx_urb); | ||
| 1143 | 1132 | ||
| 1144 | kaweth_dbg("Unregistering net device"); | 1133 | kaweth_dbg("Unregistering net device"); |
| 1145 | unregister_netdev(netdev); | 1134 | unregister_netdev(netdev); |
diff --git a/drivers/usb/net/net1080.c b/drivers/usb/net/net1080.c index cee55f8cf64f..b3799b1a2b0d 100644 --- a/drivers/usb/net/net1080.c +++ b/drivers/usb/net/net1080.c | |||
| @@ -21,9 +21,6 @@ | |||
| 21 | // #define VERBOSE // more; success messages | 21 | // #define VERBOSE // more; success messages |
| 22 | 22 | ||
| 23 | #include <linux/config.h> | 23 | #include <linux/config.h> |
| 24 | #ifdef CONFIG_USB_DEBUG | ||
| 25 | # define DEBUG | ||
| 26 | #endif | ||
| 27 | #include <linux/module.h> | 24 | #include <linux/module.h> |
| 28 | #include <linux/sched.h> | 25 | #include <linux/sched.h> |
| 29 | #include <linux/init.h> | 26 | #include <linux/init.h> |
diff --git a/drivers/usb/net/pegasus.c b/drivers/usb/net/pegasus.c index 537eb181d985..683e3df5d607 100644 --- a/drivers/usb/net/pegasus.c +++ b/drivers/usb/net/pegasus.c | |||
| @@ -28,8 +28,6 @@ | |||
| 28 | * is out of the interrupt routine. | 28 | * is out of the interrupt routine. |
| 29 | */ | 29 | */ |
| 30 | 30 | ||
| 31 | #undef DEBUG | ||
| 32 | |||
| 33 | #include <linux/sched.h> | 31 | #include <linux/sched.h> |
| 34 | #include <linux/slab.h> | 32 | #include <linux/slab.h> |
| 35 | #include <linux/init.h> | 33 | #include <linux/init.h> |
diff --git a/drivers/usb/net/plusb.c b/drivers/usb/net/plusb.c index 74c2b3581c76..89856aa0e3b8 100644 --- a/drivers/usb/net/plusb.c +++ b/drivers/usb/net/plusb.c | |||
| @@ -21,9 +21,6 @@ | |||
| 21 | // #define VERBOSE // more; success messages | 21 | // #define VERBOSE // more; success messages |
| 22 | 22 | ||
| 23 | #include <linux/config.h> | 23 | #include <linux/config.h> |
| 24 | #ifdef CONFIG_USB_DEBUG | ||
| 25 | # define DEBUG | ||
| 26 | #endif | ||
| 27 | #include <linux/module.h> | 24 | #include <linux/module.h> |
| 28 | #include <linux/sched.h> | 25 | #include <linux/sched.h> |
| 29 | #include <linux/init.h> | 26 | #include <linux/init.h> |
diff --git a/drivers/usb/net/rndis_host.c b/drivers/usb/net/rndis_host.c index b5a925dc1beb..c0ecbab6f6ba 100644 --- a/drivers/usb/net/rndis_host.c +++ b/drivers/usb/net/rndis_host.c | |||
| @@ -21,9 +21,6 @@ | |||
| 21 | // #define VERBOSE // more; success messages | 21 | // #define VERBOSE // more; success messages |
| 22 | 22 | ||
| 23 | #include <linux/config.h> | 23 | #include <linux/config.h> |
| 24 | #ifdef CONFIG_USB_DEBUG | ||
| 25 | # define DEBUG | ||
| 26 | #endif | ||
| 27 | #include <linux/module.h> | 24 | #include <linux/module.h> |
| 28 | #include <linux/sched.h> | 25 | #include <linux/sched.h> |
| 29 | #include <linux/init.h> | 26 | #include <linux/init.h> |
diff --git a/drivers/usb/net/usbnet.c b/drivers/usb/net/usbnet.c index 74f05c9c84d5..362d6907c9bb 100644 --- a/drivers/usb/net/usbnet.c +++ b/drivers/usb/net/usbnet.c | |||
| @@ -34,9 +34,6 @@ | |||
| 34 | // #define VERBOSE // more; success messages | 34 | // #define VERBOSE // more; success messages |
| 35 | 35 | ||
| 36 | #include <linux/config.h> | 36 | #include <linux/config.h> |
| 37 | #ifdef CONFIG_USB_DEBUG | ||
| 38 | # define DEBUG | ||
| 39 | #endif | ||
| 40 | #include <linux/module.h> | 37 | #include <linux/module.h> |
| 41 | #include <linux/sched.h> | 38 | #include <linux/sched.h> |
| 42 | #include <linux/init.h> | 39 | #include <linux/init.h> |
diff --git a/drivers/usb/net/zaurus.c b/drivers/usb/net/zaurus.c index 5d4b7d55b097..680d13957af4 100644 --- a/drivers/usb/net/zaurus.c +++ b/drivers/usb/net/zaurus.c | |||
| @@ -21,9 +21,6 @@ | |||
| 21 | // #define VERBOSE // more; success messages | 21 | // #define VERBOSE // more; success messages |
| 22 | 22 | ||
| 23 | #include <linux/config.h> | 23 | #include <linux/config.h> |
| 24 | #ifdef CONFIG_USB_DEBUG | ||
| 25 | # define DEBUG | ||
| 26 | #endif | ||
| 27 | #include <linux/module.h> | 24 | #include <linux/module.h> |
| 28 | #include <linux/sched.h> | 25 | #include <linux/sched.h> |
| 29 | #include <linux/init.h> | 26 | #include <linux/init.h> |
diff --git a/drivers/usb/serial/ChangeLog.old b/drivers/usb/serial/ChangeLog.history index c1b279939bbf..52c4f7bd7a80 100644 --- a/drivers/usb/serial/ChangeLog.old +++ b/drivers/usb/serial/ChangeLog.history | |||
| @@ -400,7 +400,7 @@ visor.c Change Log comments: | |||
| 400 | 400 | ||
| 401 | (11/11/2001) gkh | 401 | (11/11/2001) gkh |
| 402 | Added support for the m125 devices, and added check to prevent oopses | 402 | Added support for the m125 devices, and added check to prevent oopses |
| 403 | for Clié devices that lie about the number of ports they have. | 403 | for Clié devices that lie about the number of ports they have. |
| 404 | 404 | ||
| 405 | (08/30/2001) gkh | 405 | (08/30/2001) gkh |
| 406 | Added support for the Clie devices, both the 3.5 and 4.0 os versions. | 406 | Added support for the Clie devices, both the 3.5 and 4.0 os versions. |
diff --git a/drivers/usb/serial/Kconfig b/drivers/usb/serial/Kconfig index 7b5e8e4ee2bb..14f55fd26a64 100644 --- a/drivers/usb/serial/Kconfig +++ b/drivers/usb/serial/Kconfig | |||
| @@ -62,6 +62,15 @@ config USB_SERIAL_AIRPRIME | |||
| 62 | To compile this driver as a module, choose M here: the | 62 | To compile this driver as a module, choose M here: the |
| 63 | module will be called airprime. | 63 | module will be called airprime. |
| 64 | 64 | ||
| 65 | config USB_SERIAL_ANYDATA | ||
| 66 | tristate "USB AnyData CDMA Wireless Driver" | ||
| 67 | depends on USB_SERIAL | ||
| 68 | help | ||
| 69 | Say Y here if you want to use a AnyData CDMA device. | ||
| 70 | |||
| 71 | To compile this driver as a module, choose M here: the | ||
| 72 | module will be called anydata. | ||
| 73 | |||
| 65 | config USB_SERIAL_BELKIN | 74 | config USB_SERIAL_BELKIN |
| 66 | tristate "USB Belkin and Peracom Single Port Serial Driver" | 75 | tristate "USB Belkin and Peracom Single Port Serial Driver" |
| 67 | depends on USB_SERIAL | 76 | depends on USB_SERIAL |
| @@ -394,15 +403,6 @@ config USB_SERIAL_MCT_U232 | |||
| 394 | To compile this driver as a module, choose M here: the | 403 | To compile this driver as a module, choose M here: the |
| 395 | module will be called mct_u232. | 404 | module will be called mct_u232. |
| 396 | 405 | ||
| 397 | config USB_SERIAL_NOKIA_DKU2 | ||
| 398 | tristate "USB Nokia DKU2 Driver" | ||
| 399 | depends on USB_SERIAL | ||
| 400 | help | ||
| 401 | Say Y here if you want to use a Nokia DKU2 device. | ||
| 402 | |||
| 403 | To compile this driver as a module, choose M here: the | ||
| 404 | module will be called nokia_dku2. | ||
| 405 | |||
| 406 | config USB_SERIAL_PL2303 | 406 | config USB_SERIAL_PL2303 |
| 407 | tristate "USB Prolific 2303 Single Port Serial Driver" | 407 | tristate "USB Prolific 2303 Single Port Serial Driver" |
| 408 | depends on USB_SERIAL | 408 | depends on USB_SERIAL |
diff --git a/drivers/usb/serial/Makefile b/drivers/usb/serial/Makefile index 55fd461793b7..f0b04420cea1 100644 --- a/drivers/usb/serial/Makefile +++ b/drivers/usb/serial/Makefile | |||
| @@ -12,6 +12,7 @@ usbserial-obj-$(CONFIG_USB_EZUSB) += ezusb.o | |||
| 12 | usbserial-objs := usb-serial.o generic.o bus.o $(usbserial-obj-y) | 12 | usbserial-objs := usb-serial.o generic.o bus.o $(usbserial-obj-y) |
| 13 | 13 | ||
| 14 | obj-$(CONFIG_USB_SERIAL_AIRPRIME) += airprime.o | 14 | obj-$(CONFIG_USB_SERIAL_AIRPRIME) += airprime.o |
| 15 | obj-$(CONFIG_USB_SERIAL_ANYDATA) += anydata.o | ||
| 15 | obj-$(CONFIG_USB_SERIAL_BELKIN) += belkin_sa.o | 16 | obj-$(CONFIG_USB_SERIAL_BELKIN) += belkin_sa.o |
| 16 | obj-$(CONFIG_USB_SERIAL_CP2101) += cp2101.o | 17 | obj-$(CONFIG_USB_SERIAL_CP2101) += cp2101.o |
| 17 | obj-$(CONFIG_USB_SERIAL_CYBERJACK) += cyberjack.o | 18 | obj-$(CONFIG_USB_SERIAL_CYBERJACK) += cyberjack.o |
| @@ -31,7 +32,6 @@ obj-$(CONFIG_USB_SERIAL_KEYSPAN_PDA) += keyspan_pda.o | |||
| 31 | obj-$(CONFIG_USB_SERIAL_KLSI) += kl5kusb105.o | 32 | obj-$(CONFIG_USB_SERIAL_KLSI) += kl5kusb105.o |
| 32 | obj-$(CONFIG_USB_SERIAL_KOBIL_SCT) += kobil_sct.o | 33 | obj-$(CONFIG_USB_SERIAL_KOBIL_SCT) += kobil_sct.o |
| 33 | obj-$(CONFIG_USB_SERIAL_MCT_U232) += mct_u232.o | 34 | obj-$(CONFIG_USB_SERIAL_MCT_U232) += mct_u232.o |
| 34 | obj-$(CONFIG_USB_SERIAL_NOKIA_DKU2) += nokia_dku2.o | ||
| 35 | obj-$(CONFIG_USB_SERIAL_OMNINET) += omninet.o | 35 | obj-$(CONFIG_USB_SERIAL_OMNINET) += omninet.o |
| 36 | obj-$(CONFIG_USB_SERIAL_OPTION) += option.o | 36 | obj-$(CONFIG_USB_SERIAL_OPTION) += option.o |
| 37 | obj-$(CONFIG_USB_SERIAL_PL2303) += pl2303.o | 37 | obj-$(CONFIG_USB_SERIAL_PL2303) += pl2303.o |
diff --git a/drivers/usb/serial/anydata.c b/drivers/usb/serial/anydata.c new file mode 100644 index 000000000000..18022a74a3dc --- /dev/null +++ b/drivers/usb/serial/anydata.c | |||
| @@ -0,0 +1,123 @@ | |||
| 1 | /* | ||
| 2 | * AnyData CDMA Serial USB driver | ||
| 3 | * | ||
| 4 | * Copyright (C) 2005 Greg Kroah-Hartman <gregkh@suse.de> | ||
| 5 | * | ||
| 6 | * This program is free software; you can redistribute it and/or | ||
| 7 | * modify it under the terms of the GNU General Public License version | ||
| 8 | * 2 as published by the Free Software Foundation. | ||
| 9 | */ | ||
| 10 | |||
| 11 | #include <linux/kernel.h> | ||
| 12 | #include <linux/init.h> | ||
| 13 | #include <linux/tty.h> | ||
| 14 | #include <linux/module.h> | ||
| 15 | #include <linux/usb.h> | ||
| 16 | #include "usb-serial.h" | ||
| 17 | |||
| 18 | static struct usb_device_id id_table [] = { | ||
| 19 | { USB_DEVICE(0x16d5, 0x6501) }, /* AirData CDMA device */ | ||
| 20 | { }, | ||
| 21 | }; | ||
| 22 | MODULE_DEVICE_TABLE(usb, id_table); | ||
| 23 | |||
| 24 | /* if overridden by the user, then use their value for the size of the | ||
| 25 | * read and write urbs */ | ||
| 26 | static int buffer_size; | ||
| 27 | static int debug; | ||
| 28 | |||
| 29 | static struct usb_driver anydata_driver = { | ||
| 30 | .owner = THIS_MODULE, | ||
| 31 | .name = "anydata", | ||
| 32 | .probe = usb_serial_probe, | ||
| 33 | .disconnect = usb_serial_disconnect, | ||
| 34 | .id_table = id_table, | ||
| 35 | }; | ||
| 36 | |||
| 37 | static int anydata_open(struct usb_serial_port *port, struct file *filp) | ||
| 38 | { | ||
| 39 | char *buffer; | ||
| 40 | int result = 0; | ||
| 41 | |||
| 42 | dbg("%s - port %d", __FUNCTION__, port->number); | ||
| 43 | |||
| 44 | if (buffer_size) { | ||
| 45 | /* override the default buffer sizes */ | ||
| 46 | buffer = kmalloc(buffer_size, GFP_KERNEL); | ||
| 47 | if (!buffer) { | ||
| 48 | dev_err(&port->dev, "%s - out of memory.\n", | ||
| 49 | __FUNCTION__); | ||
| 50 | return -ENOMEM; | ||
| 51 | } | ||
| 52 | kfree (port->read_urb->transfer_buffer); | ||
| 53 | port->read_urb->transfer_buffer = buffer; | ||
| 54 | port->read_urb->transfer_buffer_length = buffer_size; | ||
| 55 | |||
| 56 | buffer = kmalloc(buffer_size, GFP_KERNEL); | ||
| 57 | if (!buffer) { | ||
| 58 | dev_err(&port->dev, "%s - out of memory.\n", | ||
| 59 | __FUNCTION__); | ||
| 60 | return -ENOMEM; | ||
| 61 | } | ||
| 62 | kfree (port->write_urb->transfer_buffer); | ||
| 63 | port->write_urb->transfer_buffer = buffer; | ||
| 64 | port->write_urb->transfer_buffer_length = buffer_size; | ||
| 65 | port->bulk_out_size = buffer_size; | ||
| 66 | } | ||
| 67 | |||
| 68 | /* Start reading from the device */ | ||
| 69 | usb_fill_bulk_urb(port->read_urb, port->serial->dev, | ||
| 70 | usb_rcvbulkpipe(port->serial->dev, | ||
| 71 | port->bulk_in_endpointAddress), | ||
| 72 | port->read_urb->transfer_buffer, | ||
| 73 | port->read_urb->transfer_buffer_length, | ||
| 74 | usb_serial_generic_write_bulk_callback, port); | ||
| 75 | result = usb_submit_urb(port->read_urb, GFP_KERNEL); | ||
| 76 | if (result) | ||
| 77 | dev_err(&port->dev, | ||
| 78 | "%s - failed submitting read urb, error %d\n", | ||
| 79 | __FUNCTION__, result); | ||
| 80 | |||
| 81 | return result; | ||
| 82 | } | ||
| 83 | |||
| 84 | static struct usb_serial_driver anydata_device = { | ||
| 85 | .driver = { | ||
| 86 | .owner = THIS_MODULE, | ||
| 87 | .name = "anydata", | ||
| 88 | }, | ||
| 89 | .id_table = id_table, | ||
| 90 | .num_interrupt_in = NUM_DONT_CARE, | ||
| 91 | .num_bulk_in = NUM_DONT_CARE, | ||
| 92 | .num_bulk_out = NUM_DONT_CARE, | ||
| 93 | .num_ports = 1, | ||
| 94 | .open = anydata_open, | ||
| 95 | }; | ||
| 96 | |||
| 97 | static int __init anydata_init(void) | ||
| 98 | { | ||
| 99 | int retval; | ||
| 100 | |||
| 101 | retval = usb_serial_register(&anydata_device); | ||
| 102 | if (retval) | ||
| 103 | return retval; | ||
| 104 | retval = usb_register(&anydata_driver); | ||
| 105 | if (retval) | ||
| 106 | usb_serial_deregister(&anydata_device); | ||
| 107 | return retval; | ||
| 108 | } | ||
| 109 | |||
| 110 | static void __exit anydata_exit(void) | ||
| 111 | { | ||
| 112 | usb_deregister(&anydata_driver); | ||
| 113 | usb_serial_deregister(&anydata_device); | ||
| 114 | } | ||
| 115 | |||
| 116 | module_init(anydata_init); | ||
| 117 | module_exit(anydata_exit); | ||
| 118 | MODULE_LICENSE("GPL"); | ||
| 119 | |||
| 120 | module_param(debug, bool, S_IRUGO | S_IWUSR); | ||
| 121 | MODULE_PARM_DESC(debug, "Debug enabled or not"); | ||
| 122 | module_param(buffer_size, int, 0); | ||
| 123 | MODULE_PARM_DESC(buffer_size, "Size of the transfer buffers"); | ||
diff --git a/drivers/usb/serial/cp2101.c b/drivers/usb/serial/cp2101.c index c5334dd89b12..c9787001cf2a 100644 --- a/drivers/usb/serial/cp2101.c +++ b/drivers/usb/serial/cp2101.c | |||
| @@ -60,6 +60,7 @@ static struct usb_device_id id_table [] = { | |||
| 60 | { USB_DEVICE(0x10C4, 0x80F6) }, /* Suunto sports instrument */ | 60 | { USB_DEVICE(0x10C4, 0x80F6) }, /* Suunto sports instrument */ |
| 61 | { USB_DEVICE(0x10A6, 0xAA26) }, /* Knock-off DCU-11 cable */ | 61 | { USB_DEVICE(0x10A6, 0xAA26) }, /* Knock-off DCU-11 cable */ |
| 62 | { USB_DEVICE(0x10AB, 0x10C5) }, /* Siemens MC60 Cable */ | 62 | { USB_DEVICE(0x10AB, 0x10C5) }, /* Siemens MC60 Cable */ |
| 63 | { USB_DEVICE(0x16D6, 0x0001) }, /* Jablotron serial interface */ | ||
| 63 | { } /* Terminating Entry */ | 64 | { } /* Terminating Entry */ |
| 64 | }; | 65 | }; |
| 65 | 66 | ||
diff --git a/drivers/usb/serial/generic.c b/drivers/usb/serial/generic.c index 8909208f506a..53a47c31cd0e 100644 --- a/drivers/usb/serial/generic.c +++ b/drivers/usb/serial/generic.c | |||
| @@ -309,6 +309,7 @@ void usb_serial_generic_write_bulk_callback (struct urb *urb, struct pt_regs *re | |||
| 309 | 309 | ||
| 310 | schedule_work(&port->work); | 310 | schedule_work(&port->work); |
| 311 | } | 311 | } |
| 312 | EXPORT_SYMBOL_GPL(usb_serial_generic_write_bulk_callback); | ||
| 312 | 313 | ||
| 313 | void usb_serial_generic_shutdown (struct usb_serial *serial) | 314 | void usb_serial_generic_shutdown (struct usb_serial *serial) |
| 314 | { | 315 | { |
diff --git a/drivers/usb/serial/nokia_dku2.c b/drivers/usb/serial/nokia_dku2.c deleted file mode 100644 index fad01bef3a64..000000000000 --- a/drivers/usb/serial/nokia_dku2.c +++ /dev/null | |||
| @@ -1,142 +0,0 @@ | |||
| 1 | /* | ||
| 2 | * Nokia DKU2 USB driver | ||
| 3 | * | ||
| 4 | * Copyright (C) 2004 | ||
| 5 | * Author: C Kemp | ||
| 6 | * | ||
| 7 | * This program is largely derived from work by the linux-usb group | ||
| 8 | * and associated source files. Please see the usb/serial files for | ||
| 9 | * individual credits and copyrights. | ||
| 10 | * | ||
| 11 | * This program is free software; you can redistribute it and/or modify | ||
| 12 | * it under the terms of the GNU General Public License as published by | ||
| 13 | * the Free Software Foundation; either version 2 of the License, or | ||
| 14 | * (at your option) any later version. | ||
| 15 | * | ||
| 16 | * 20.09.2005 - Matthias Blaesing <matthias.blaesing@rwth-aachen.de> | ||
| 17 | * Added short name to device structure to make driver load into kernel 2.6.13 | ||
| 18 | * | ||
| 19 | * 20.09.2005 - Matthias Blaesing <matthias.blaesing@rwth-aachen.de> | ||
| 20 | * Added usb_deregister to exit code - to allow remove and reinsert of module | ||
| 21 | */ | ||
| 22 | |||
| 23 | |||
| 24 | #include <linux/config.h> | ||
| 25 | #include <linux/kernel.h> | ||
| 26 | #include <linux/errno.h> | ||
| 27 | #include <linux/init.h> | ||
| 28 | #include <linux/slab.h> | ||
| 29 | #include <linux/tty.h> | ||
| 30 | #include <linux/tty_driver.h> | ||
| 31 | #include <linux/tty_flip.h> | ||
| 32 | #include <linux/module.h> | ||
| 33 | #include <linux/usb.h> | ||
| 34 | #include "usb-serial.h" | ||
| 35 | |||
| 36 | |||
| 37 | #define NOKIA_VENDOR_ID 0x0421 | ||
| 38 | #define NOKIA7600_PRODUCT_ID 0x0400 | ||
| 39 | #define NOKIA6230_PRODUCT_ID 0x040f | ||
| 40 | #define NOKIA6170_PRODUCT_ID 0x0416 | ||
| 41 | #define NOKIA6670_PRODUCT_ID 0x041d | ||
| 42 | #define NOKIA6680_PRODUCT_ID 0x041e | ||
| 43 | #define NOKIA6230i_PRODUCT_ID 0x0428 | ||
| 44 | |||
| 45 | #define NOKIA_AT_PORT 0x82 | ||
| 46 | #define NOKIA_FBUS_PORT 0x86 | ||
| 47 | |||
| 48 | /* | ||
| 49 | * Version Information | ||
| 50 | */ | ||
| 51 | #define DRIVER_VERSION "v0.2" | ||
| 52 | #define DRIVER_AUTHOR "C Kemp" | ||
| 53 | #define DRIVER_DESC "Nokia DKU2 Driver" | ||
| 54 | |||
| 55 | static struct usb_device_id id_table [] = { | ||
| 56 | { USB_DEVICE(NOKIA_VENDOR_ID, NOKIA7600_PRODUCT_ID) }, | ||
| 57 | { USB_DEVICE(NOKIA_VENDOR_ID, NOKIA6230_PRODUCT_ID) }, | ||
| 58 | { USB_DEVICE(NOKIA_VENDOR_ID, NOKIA6170_PRODUCT_ID) }, | ||
| 59 | { USB_DEVICE(NOKIA_VENDOR_ID, NOKIA6670_PRODUCT_ID) }, | ||
| 60 | { USB_DEVICE(NOKIA_VENDOR_ID, NOKIA6680_PRODUCT_ID) }, | ||
| 61 | { USB_DEVICE(NOKIA_VENDOR_ID, NOKIA6230i_PRODUCT_ID) }, | ||
| 62 | { } /* Terminating entry */ | ||
| 63 | }; | ||
| 64 | MODULE_DEVICE_TABLE(usb, id_table); | ||
| 65 | |||
| 66 | /* The only thing which makes this device different from a generic | ||
| 67 | * device is that we have to set an alternative configuration to make | ||
| 68 | * the relevant endpoints available. In 2.6 this is really easy... */ | ||
| 69 | static int nokia_probe(struct usb_serial *serial, | ||
| 70 | const struct usb_device_id *id) | ||
| 71 | { | ||
| 72 | int retval = -ENODEV; | ||
| 73 | |||
| 74 | if (serial->interface->altsetting[0].endpoint[0].desc.bEndpointAddress == NOKIA_AT_PORT) { | ||
| 75 | /* the AT port */ | ||
| 76 | dev_info(&serial->dev->dev, "Nokia AT Port:\n"); | ||
| 77 | retval = 0; | ||
| 78 | } else if (serial->interface->num_altsetting == 2 && | ||
| 79 | serial->interface->altsetting[1].endpoint[0].desc.bEndpointAddress == NOKIA_FBUS_PORT) { | ||
| 80 | /* the FBUS port */ | ||
| 81 | dev_info(&serial->dev->dev, "Nokia FBUS Port:\n"); | ||
| 82 | usb_set_interface(serial->dev, 10, 1); | ||
| 83 | retval = 0; | ||
| 84 | } | ||
| 85 | |||
| 86 | return retval; | ||
| 87 | } | ||
| 88 | |||
| 89 | static struct usb_driver nokia_driver = { | ||
| 90 | .owner = THIS_MODULE, | ||
| 91 | .name = "nokia_dku2", | ||
| 92 | .probe = usb_serial_probe, | ||
| 93 | .disconnect = usb_serial_disconnect, | ||
| 94 | .id_table = id_table, | ||
| 95 | }; | ||
| 96 | |||
| 97 | static struct usb_serial_driver nokia_serial_driver = { | ||
| 98 | .driver = { | ||
| 99 | .owner = THIS_MODULE, | ||
| 100 | .name = "nokia_dku2", | ||
| 101 | }, | ||
| 102 | .description = "Nokia 7600/6230(i)/6170/66x0 DKU2 driver", | ||
| 103 | .id_table = id_table, | ||
| 104 | .num_interrupt_in = 1, | ||
| 105 | .num_bulk_in = 1, | ||
| 106 | .num_bulk_out = 1, | ||
| 107 | .num_ports = 1, | ||
| 108 | .probe = nokia_probe, | ||
| 109 | }; | ||
| 110 | |||
| 111 | static int __init nokia_init(void) | ||
| 112 | { | ||
| 113 | int retval; | ||
| 114 | |||
| 115 | retval = usb_serial_register(&nokia_serial_driver); | ||
| 116 | if (retval) | ||
| 117 | return retval; | ||
| 118 | |||
| 119 | retval = usb_register(&nokia_driver); | ||
| 120 | if (retval) { | ||
| 121 | usb_serial_deregister(&nokia_serial_driver); | ||
| 122 | return retval; | ||
| 123 | } | ||
| 124 | |||
| 125 | info(DRIVER_VERSION " " DRIVER_AUTHOR); | ||
| 126 | info(DRIVER_DESC); | ||
| 127 | |||
| 128 | return retval; | ||
| 129 | } | ||
| 130 | |||
| 131 | static void __exit nokia_exit(void) | ||
| 132 | { | ||
| 133 | usb_deregister(&nokia_driver); | ||
| 134 | usb_serial_deregister(&nokia_serial_driver); | ||
| 135 | } | ||
| 136 | |||
| 137 | module_init(nokia_init); | ||
| 138 | module_exit(nokia_exit); | ||
| 139 | |||
| 140 | MODULE_AUTHOR(DRIVER_AUTHOR); | ||
| 141 | MODULE_DESCRIPTION(DRIVER_DESC); | ||
| 142 | MODULE_LICENSE("GPL"); | ||
diff --git a/drivers/usb/serial/pl2303.c b/drivers/usb/serial/pl2303.c index 165c119bf10e..41a45a5025b2 100644 --- a/drivers/usb/serial/pl2303.c +++ b/drivers/usb/serial/pl2303.c | |||
| @@ -71,7 +71,9 @@ static struct usb_device_id id_table [] = { | |||
| 71 | { USB_DEVICE(SITECOM_VENDOR_ID, SITECOM_PRODUCT_ID) }, | 71 | { USB_DEVICE(SITECOM_VENDOR_ID, SITECOM_PRODUCT_ID) }, |
| 72 | { USB_DEVICE(ALCATEL_VENDOR_ID, ALCATEL_PRODUCT_ID) }, | 72 | { USB_DEVICE(ALCATEL_VENDOR_ID, ALCATEL_PRODUCT_ID) }, |
| 73 | { USB_DEVICE(SAMSUNG_VENDOR_ID, SAMSUNG_PRODUCT_ID) }, | 73 | { USB_DEVICE(SAMSUNG_VENDOR_ID, SAMSUNG_PRODUCT_ID) }, |
| 74 | { USB_DEVICE(SIEMENS_VENDOR_ID, SIEMENS_PRODUCT_ID_SX1) }, | ||
| 74 | { USB_DEVICE(SIEMENS_VENDOR_ID, SIEMENS_PRODUCT_ID_X65) }, | 75 | { USB_DEVICE(SIEMENS_VENDOR_ID, SIEMENS_PRODUCT_ID_X65) }, |
| 76 | { USB_DEVICE(SIEMENS_VENDOR_ID, SIEMENS_PRODUCT_ID_X75) }, | ||
| 75 | { USB_DEVICE(SYNTECH_VENDOR_ID, SYNTECH_PRODUCT_ID) }, | 77 | { USB_DEVICE(SYNTECH_VENDOR_ID, SYNTECH_PRODUCT_ID) }, |
| 76 | { USB_DEVICE( NOKIA_CA42_VENDOR_ID, NOKIA_CA42_PRODUCT_ID ) }, | 78 | { USB_DEVICE( NOKIA_CA42_VENDOR_ID, NOKIA_CA42_PRODUCT_ID ) }, |
| 77 | { } /* Terminating entry */ | 79 | { } /* Terminating entry */ |
| @@ -811,7 +813,9 @@ static void pl2303_update_line_status(struct usb_serial_port *port, | |||
| 811 | u8 length = UART_STATE; | 813 | u8 length = UART_STATE; |
| 812 | 814 | ||
| 813 | if ((le16_to_cpu(port->serial->dev->descriptor.idVendor) == SIEMENS_VENDOR_ID) && | 815 | if ((le16_to_cpu(port->serial->dev->descriptor.idVendor) == SIEMENS_VENDOR_ID) && |
| 814 | (le16_to_cpu(port->serial->dev->descriptor.idProduct) == SIEMENS_PRODUCT_ID_X65)) { | 816 | (le16_to_cpu(port->serial->dev->descriptor.idProduct) == SIEMENS_PRODUCT_ID_X65 || |
| 817 | le16_to_cpu(port->serial->dev->descriptor.idProduct) == SIEMENS_PRODUCT_ID_SX1 || | ||
| 818 | le16_to_cpu(port->serial->dev->descriptor.idProduct) == SIEMENS_PRODUCT_ID_X75)) { | ||
| 815 | length = 1; | 819 | length = 1; |
| 816 | status_idx = 0; | 820 | status_idx = 0; |
| 817 | } | 821 | } |
diff --git a/drivers/usb/serial/pl2303.h b/drivers/usb/serial/pl2303.h index 7be9644f5a03..21d434d81813 100644 --- a/drivers/usb/serial/pl2303.h +++ b/drivers/usb/serial/pl2303.h | |||
| @@ -54,7 +54,9 @@ | |||
| 54 | #define SAMSUNG_PRODUCT_ID 0x8001 | 54 | #define SAMSUNG_PRODUCT_ID 0x8001 |
| 55 | 55 | ||
| 56 | #define SIEMENS_VENDOR_ID 0x11f5 | 56 | #define SIEMENS_VENDOR_ID 0x11f5 |
| 57 | #define SIEMENS_PRODUCT_ID_SX1 0x0001 | ||
| 57 | #define SIEMENS_PRODUCT_ID_X65 0x0003 | 58 | #define SIEMENS_PRODUCT_ID_X65 0x0003 |
| 59 | #define SIEMENS_PRODUCT_ID_X75 0x0004 | ||
| 58 | 60 | ||
| 59 | #define SYNTECH_VENDOR_ID 0x0745 | 61 | #define SYNTECH_VENDOR_ID 0x0745 |
| 60 | #define SYNTECH_PRODUCT_ID 0x0001 | 62 | #define SYNTECH_PRODUCT_ID 0x0001 |
diff --git a/drivers/usb/storage/Kconfig b/drivers/usb/storage/Kconfig index 1a9679f76f5a..c41d64dbb0f0 100644 --- a/drivers/usb/storage/Kconfig +++ b/drivers/usb/storage/Kconfig | |||
| @@ -115,7 +115,7 @@ config USB_STORAGE_JUMPSHOT | |||
| 115 | 115 | ||
| 116 | config USB_STORAGE_ONETOUCH | 116 | config USB_STORAGE_ONETOUCH |
| 117 | bool "Support OneTouch Button on Maxtor Hard Drives (EXPERIMENTAL)" | 117 | bool "Support OneTouch Button on Maxtor Hard Drives (EXPERIMENTAL)" |
| 118 | depends on USB_STORAGE && INPUT_EVDEV && EXPERIMENTAL | 118 | depends on USB_STORAGE && INPUT_EVDEV && EXPERIMENTAL && !PM |
| 119 | help | 119 | help |
| 120 | Say Y here to include additional code to support the Maxtor OneTouch | 120 | Say Y here to include additional code to support the Maxtor OneTouch |
| 121 | USB hard drive's onetouch button. | 121 | USB hard drive's onetouch button. |
diff --git a/drivers/usb/storage/shuttle_usbat.c b/drivers/usb/storage/shuttle_usbat.c index 33c55a6261bb..fea176d7e79a 100644 --- a/drivers/usb/storage/shuttle_usbat.c +++ b/drivers/usb/storage/shuttle_usbat.c | |||
| @@ -853,7 +853,7 @@ static int usbat_identify_device(struct us_data *us, | |||
| 853 | rc = usbat_device_reset(us); | 853 | rc = usbat_device_reset(us); |
| 854 | if (rc != USB_STOR_TRANSPORT_GOOD) | 854 | if (rc != USB_STOR_TRANSPORT_GOOD) |
| 855 | return rc; | 855 | return rc; |
| 856 | msleep(25); | 856 | msleep(500); |
| 857 | 857 | ||
| 858 | /* | 858 | /* |
| 859 | * In attempt to distinguish between HP CDRW's and Flash readers, we now | 859 | * In attempt to distinguish between HP CDRW's and Flash readers, we now |
diff --git a/drivers/usb/storage/unusual_devs.h b/drivers/usb/storage/unusual_devs.h index 9e926a8f2116..0a9858f69a9b 100644 --- a/drivers/usb/storage/unusual_devs.h +++ b/drivers/usb/storage/unusual_devs.h | |||
| @@ -710,11 +710,6 @@ UNUSUAL_DEV( 0x0686, 0x4017, 0x0001, 0x0001, | |||
| 710 | "DIMAGE E223", | 710 | "DIMAGE E223", |
| 711 | US_SC_SCSI, US_PR_DEVICE, NULL, 0 ), | 711 | US_SC_SCSI, US_PR_DEVICE, NULL, 0 ), |
| 712 | 712 | ||
| 713 | UNUSUAL_DEV( 0x0693, 0x0002, 0x0100, 0x0100, | ||
| 714 | "Hagiwara", | ||
| 715 | "FlashGate SmartMedia", | ||
| 716 | US_SC_SCSI, US_PR_BULK, NULL, 0 ), | ||
| 717 | |||
| 718 | UNUSUAL_DEV( 0x0693, 0x0005, 0x0100, 0x0100, | 713 | UNUSUAL_DEV( 0x0693, 0x0005, 0x0100, 0x0100, |
| 719 | "Hagiwara", | 714 | "Hagiwara", |
| 720 | "Flashgate", | 715 | "Flashgate", |
| @@ -1008,6 +1003,11 @@ UNUSUAL_DEV( 0x0c0b, 0xa109, 0x0000, 0xffff, | |||
| 1008 | * | 1003 | * |
| 1009 | */ | 1004 | */ |
| 1010 | #ifdef CONFIG_USB_STORAGE_ONETOUCH | 1005 | #ifdef CONFIG_USB_STORAGE_ONETOUCH |
| 1006 | UNUSUAL_DEV( 0x0d49, 0x7000, 0x0000, 0x9999, | ||
| 1007 | "Maxtor", | ||
| 1008 | "OneTouch External Harddrive", | ||
| 1009 | US_SC_DEVICE, US_PR_DEVICE, onetouch_connect_input, | ||
| 1010 | 0), | ||
| 1011 | UNUSUAL_DEV( 0x0d49, 0x7010, 0x0000, 0x9999, | 1011 | UNUSUAL_DEV( 0x0d49, 0x7010, 0x0000, 0x9999, |
| 1012 | "Maxtor", | 1012 | "Maxtor", |
| 1013 | "OneTouch External Harddrive", | 1013 | "OneTouch External Harddrive", |
diff --git a/fs/compat_ioctl.c b/fs/compat_ioctl.c index f07e60f9e102..31b7efd94d66 100644 --- a/fs/compat_ioctl.c +++ b/fs/compat_ioctl.c | |||
| @@ -49,6 +49,8 @@ | |||
| 49 | #include <linux/vt_kern.h> | 49 | #include <linux/vt_kern.h> |
| 50 | #include <linux/fb.h> | 50 | #include <linux/fb.h> |
| 51 | #include <linux/ext2_fs.h> | 51 | #include <linux/ext2_fs.h> |
| 52 | #include <linux/ext3_jbd.h> | ||
| 53 | #include <linux/ext3_fs.h> | ||
| 52 | #include <linux/videodev.h> | 54 | #include <linux/videodev.h> |
| 53 | #include <linux/netdevice.h> | 55 | #include <linux/netdevice.h> |
| 54 | #include <linux/raw.h> | 56 | #include <linux/raw.h> |
| @@ -134,6 +136,15 @@ | |||
| 134 | /* Aiee. Someone does not find a difference between int and long */ | 136 | /* Aiee. Someone does not find a difference between int and long */ |
| 135 | #define EXT2_IOC32_GETFLAGS _IOR('f', 1, int) | 137 | #define EXT2_IOC32_GETFLAGS _IOR('f', 1, int) |
| 136 | #define EXT2_IOC32_SETFLAGS _IOW('f', 2, int) | 138 | #define EXT2_IOC32_SETFLAGS _IOW('f', 2, int) |
| 139 | #define EXT3_IOC32_GETVERSION _IOR('f', 3, int) | ||
| 140 | #define EXT3_IOC32_SETVERSION _IOW('f', 4, int) | ||
| 141 | #define EXT3_IOC32_GETRSVSZ _IOR('f', 5, int) | ||
| 142 | #define EXT3_IOC32_SETRSVSZ _IOW('f', 6, int) | ||
| 143 | #define EXT3_IOC32_GROUP_EXTEND _IOW('f', 7, unsigned int) | ||
| 144 | #ifdef CONFIG_JBD_DEBUG | ||
| 145 | #define EXT3_IOC32_WAIT_FOR_READONLY _IOR('f', 99, int) | ||
| 146 | #endif | ||
| 147 | |||
| 137 | #define EXT2_IOC32_GETVERSION _IOR('v', 1, int) | 148 | #define EXT2_IOC32_GETVERSION _IOR('v', 1, int) |
| 138 | #define EXT2_IOC32_SETVERSION _IOW('v', 2, int) | 149 | #define EXT2_IOC32_SETVERSION _IOW('v', 2, int) |
| 139 | 150 | ||
| @@ -180,6 +191,22 @@ static int do_ext2_ioctl(unsigned int fd, unsigned int cmd, unsigned long arg) | |||
| 180 | return sys_ioctl(fd, cmd, (unsigned long)compat_ptr(arg)); | 191 | return sys_ioctl(fd, cmd, (unsigned long)compat_ptr(arg)); |
| 181 | } | 192 | } |
| 182 | 193 | ||
| 194 | static int do_ext3_ioctl(unsigned int fd, unsigned int cmd, unsigned long arg) | ||
| 195 | { | ||
| 196 | /* These are just misnamed, they actually get/put from/to user an int */ | ||
| 197 | switch (cmd) { | ||
| 198 | case EXT3_IOC32_GETVERSION: cmd = EXT3_IOC_GETVERSION; break; | ||
| 199 | case EXT3_IOC32_SETVERSION: cmd = EXT3_IOC_SETVERSION; break; | ||
| 200 | case EXT3_IOC32_GETRSVSZ: cmd = EXT3_IOC_GETRSVSZ; break; | ||
| 201 | case EXT3_IOC32_SETRSVSZ: cmd = EXT3_IOC_SETRSVSZ; break; | ||
| 202 | case EXT3_IOC32_GROUP_EXTEND: cmd = EXT3_IOC_GROUP_EXTEND; break; | ||
| 203 | #ifdef CONFIG_JBD_DEBUG | ||
| 204 | case EXT3_IOC32_WAIT_FOR_READONLY: cmd = EXT3_IOC_WAIT_FOR_READONLY; break; | ||
| 205 | #endif | ||
| 206 | } | ||
| 207 | return sys_ioctl(fd, cmd, (unsigned long)compat_ptr(arg)); | ||
| 208 | } | ||
| 209 | |||
| 183 | struct video_tuner32 { | 210 | struct video_tuner32 { |
| 184 | compat_int_t tuner; | 211 | compat_int_t tuner; |
| 185 | char name[32]; | 212 | char name[32]; |
| @@ -2981,6 +3008,15 @@ HANDLE_IOCTL(EXT2_IOC32_GETFLAGS, do_ext2_ioctl) | |||
| 2981 | HANDLE_IOCTL(EXT2_IOC32_SETFLAGS, do_ext2_ioctl) | 3008 | HANDLE_IOCTL(EXT2_IOC32_SETFLAGS, do_ext2_ioctl) |
| 2982 | HANDLE_IOCTL(EXT2_IOC32_GETVERSION, do_ext2_ioctl) | 3009 | HANDLE_IOCTL(EXT2_IOC32_GETVERSION, do_ext2_ioctl) |
| 2983 | HANDLE_IOCTL(EXT2_IOC32_SETVERSION, do_ext2_ioctl) | 3010 | HANDLE_IOCTL(EXT2_IOC32_SETVERSION, do_ext2_ioctl) |
| 3011 | HANDLE_IOCTL(EXT3_IOC32_GETVERSION, do_ext3_ioctl) | ||
| 3012 | HANDLE_IOCTL(EXT3_IOC32_SETVERSION, do_ext3_ioctl) | ||
| 3013 | HANDLE_IOCTL(EXT3_IOC32_GETRSVSZ, do_ext3_ioctl) | ||
| 3014 | HANDLE_IOCTL(EXT3_IOC32_SETRSVSZ, do_ext3_ioctl) | ||
| 3015 | HANDLE_IOCTL(EXT3_IOC32_GROUP_EXTEND, do_ext3_ioctl) | ||
| 3016 | COMPATIBLE_IOCTL(EXT3_IOC_GROUP_ADD) | ||
| 3017 | #ifdef CONFIG_JBD_DEBUG | ||
| 3018 | HANDLE_IOCTL(EXT3_IOC32_WAIT_FOR_READONLY, do_ext3_ioctl) | ||
| 3019 | #endif | ||
| 2984 | HANDLE_IOCTL(VIDIOCGTUNER32, do_video_ioctl) | 3020 | HANDLE_IOCTL(VIDIOCGTUNER32, do_video_ioctl) |
| 2985 | HANDLE_IOCTL(VIDIOCSTUNER32, do_video_ioctl) | 3021 | HANDLE_IOCTL(VIDIOCSTUNER32, do_video_ioctl) |
| 2986 | HANDLE_IOCTL(VIDIOCGWIN32, do_video_ioctl) | 3022 | HANDLE_IOCTL(VIDIOCGWIN32, do_video_ioctl) |
diff --git a/include/asm-arm/arch-clps711x/uncompress.h b/include/asm-arm/arch-clps711x/uncompress.h index 7d0ab791b16c..9fc4bcfa1681 100644 --- a/include/asm-arm/arch-clps711x/uncompress.h +++ b/include/asm-arm/arch-clps711x/uncompress.h | |||
| @@ -19,7 +19,7 @@ | |||
| 19 | */ | 19 | */ |
| 20 | #include <linux/config.h> | 20 | #include <linux/config.h> |
| 21 | #include <asm/arch/io.h> | 21 | #include <asm/arch/io.h> |
| 22 | #include <asm/arch/hardware.h> | 22 | #include <asm/hardware.h> |
| 23 | #include <asm/hardware/clps7111.h> | 23 | #include <asm/hardware/clps7111.h> |
| 24 | 24 | ||
| 25 | #undef CLPS7111_BASE | 25 | #undef CLPS7111_BASE |
diff --git a/include/asm-arm/arch-epxa10db/uncompress.h b/include/asm-arm/arch-epxa10db/uncompress.h index d33ad6a93749..fdfe0e6848f8 100644 --- a/include/asm-arm/arch-epxa10db/uncompress.h +++ b/include/asm-arm/arch-epxa10db/uncompress.h | |||
| @@ -19,7 +19,7 @@ | |||
| 19 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | 19 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| 20 | */ | 20 | */ |
| 21 | #include "asm/arch/platform.h" | 21 | #include "asm/arch/platform.h" |
| 22 | #include "asm/arch/hardware.h" | 22 | #include "asm/hardware.h" |
| 23 | #define UART00_TYPE (volatile unsigned int*) | 23 | #define UART00_TYPE (volatile unsigned int*) |
| 24 | #include "asm/arch/uart00.h" | 24 | #include "asm/arch/uart00.h" |
| 25 | 25 | ||
diff --git a/include/asm-arm/arch-h720x/uncompress.h b/include/asm-arm/arch-h720x/uncompress.h index 2fffacf85a01..9535764bcc71 100644 --- a/include/asm-arm/arch-h720x/uncompress.h +++ b/include/asm-arm/arch-h720x/uncompress.h | |||
| @@ -7,7 +7,7 @@ | |||
| 7 | #ifndef __ASM_ARCH_UNCOMPRESS_H | 7 | #ifndef __ASM_ARCH_UNCOMPRESS_H |
| 8 | #define __ASM_ARCH_UNCOMPRESS_H | 8 | #define __ASM_ARCH_UNCOMPRESS_H |
| 9 | 9 | ||
| 10 | #include <asm/arch/hardware.h> | 10 | #include <asm/hardware.h> |
| 11 | 11 | ||
| 12 | #define LSR 0x14 | 12 | #define LSR 0x14 |
| 13 | #define TEMPTY 0x40 | 13 | #define TEMPTY 0x40 |
diff --git a/include/asm-arm/arch-imx/irqs.h b/include/asm-arm/arch-imx/irqs.h index 238197cfb9d9..f195542898e0 100644 --- a/include/asm-arm/arch-imx/irqs.h +++ b/include/asm-arm/arch-imx/irqs.h | |||
| @@ -23,7 +23,7 @@ | |||
| 23 | #define __ARM_IRQS_H__ | 23 | #define __ARM_IRQS_H__ |
| 24 | 24 | ||
| 25 | /* Use the imx definitions */ | 25 | /* Use the imx definitions */ |
| 26 | #include <asm/arch/hardware.h> | 26 | #include <asm/hardware.h> |
| 27 | 27 | ||
| 28 | /* | 28 | /* |
| 29 | * IMX Interrupt numbers | 29 | * IMX Interrupt numbers |
diff --git a/include/asm-arm/arch-imx/timex.h b/include/asm-arm/arch-imx/timex.h index d65ab3cd5d5d..8c91674706b1 100644 --- a/include/asm-arm/arch-imx/timex.h +++ b/include/asm-arm/arch-imx/timex.h | |||
| @@ -21,7 +21,7 @@ | |||
| 21 | #ifndef __ASM_ARCH_TIMEX_H | 21 | #ifndef __ASM_ARCH_TIMEX_H |
| 22 | #define __ASM_ARCH_TIMEX_H | 22 | #define __ASM_ARCH_TIMEX_H |
| 23 | 23 | ||
| 24 | #include <asm/arch/hardware.h> | 24 | #include <asm/hardware.h> |
| 25 | #define CLOCK_TICK_RATE (CLK32) | 25 | #define CLOCK_TICK_RATE (CLK32) |
| 26 | 26 | ||
| 27 | #endif | 27 | #endif |
diff --git a/include/asm-arm/arch-integrator/smp.h b/include/asm-arm/arch-integrator/smp.h index 0ec7093f7c37..da6981efdc39 100644 --- a/include/asm-arm/arch-integrator/smp.h +++ b/include/asm-arm/arch-integrator/smp.h | |||
| @@ -3,7 +3,7 @@ | |||
| 3 | 3 | ||
| 4 | #include <linux/config.h> | 4 | #include <linux/config.h> |
| 5 | 5 | ||
| 6 | #include <asm/arch/hardware.h> | 6 | #include <asm/hardware.h> |
| 7 | #include <asm/io.h> | 7 | #include <asm/io.h> |
| 8 | 8 | ||
| 9 | #define hard_smp_processor_id() \ | 9 | #define hard_smp_processor_id() \ |
diff --git a/include/asm-arm/arch-l7200/aux_reg.h b/include/asm-arm/arch-l7200/aux_reg.h index 762cbc76c501..5b4396de16a0 100644 --- a/include/asm-arm/arch-l7200/aux_reg.h +++ b/include/asm-arm/arch-l7200/aux_reg.h | |||
| @@ -9,7 +9,7 @@ | |||
| 9 | #ifndef _ASM_ARCH_AUXREG_H | 9 | #ifndef _ASM_ARCH_AUXREG_H |
| 10 | #define _ASM_ARCH_AUXREG_H | 10 | #define _ASM_ARCH_AUXREG_H |
| 11 | 11 | ||
| 12 | #include <asm/arch/hardware.h> | 12 | #include <asm/hardware.h> |
| 13 | 13 | ||
| 14 | #define l7200aux_reg *((volatile unsigned int *) (AUX_BASE)) | 14 | #define l7200aux_reg *((volatile unsigned int *) (AUX_BASE)) |
| 15 | 15 | ||
diff --git a/include/asm-arm/arch-l7200/gp_timers.h b/include/asm-arm/arch-l7200/gp_timers.h index 6f20962df248..9c4804d13578 100644 --- a/include/asm-arm/arch-l7200/gp_timers.h +++ b/include/asm-arm/arch-l7200/gp_timers.h | |||
| @@ -10,7 +10,7 @@ | |||
| 10 | #ifndef _ASM_ARCH_GPTIMERS_H | 10 | #ifndef _ASM_ARCH_GPTIMERS_H |
| 11 | #define _ASM_ARCH_GPTIMERS_H | 11 | #define _ASM_ARCH_GPTIMERS_H |
| 12 | 12 | ||
| 13 | #include <asm/arch/hardware.h> | 13 | #include <asm/hardware.h> |
| 14 | 14 | ||
| 15 | /* | 15 | /* |
| 16 | * Layout of L7200 general purpose timer registers | 16 | * Layout of L7200 general purpose timer registers |
diff --git a/include/asm-arm/arch-omap/gpio.h b/include/asm-arm/arch-omap/gpio.h index 1b3885741ac1..f486b72070ea 100644 --- a/include/asm-arm/arch-omap/gpio.h +++ b/include/asm-arm/arch-omap/gpio.h | |||
| @@ -26,7 +26,7 @@ | |||
| 26 | #ifndef __ASM_ARCH_OMAP_GPIO_H | 26 | #ifndef __ASM_ARCH_OMAP_GPIO_H |
| 27 | #define __ASM_ARCH_OMAP_GPIO_H | 27 | #define __ASM_ARCH_OMAP_GPIO_H |
| 28 | 28 | ||
| 29 | #include <asm/arch/hardware.h> | 29 | #include <asm/hardware.h> |
| 30 | #include <asm/arch/irqs.h> | 30 | #include <asm/arch/irqs.h> |
| 31 | #include <asm/io.h> | 31 | #include <asm/io.h> |
| 32 | 32 | ||
diff --git a/include/asm-arm/arch-omap/irqs.h b/include/asm-arm/arch-omap/irqs.h index 9779686bdceb..4ffce1d77759 100644 --- a/include/asm-arm/arch-omap/irqs.h +++ b/include/asm-arm/arch-omap/irqs.h | |||
| @@ -260,7 +260,7 @@ extern void omap_init_irq(void); | |||
| 260 | * The definition of NR_IRQS is in board-specific header file, which is | 260 | * The definition of NR_IRQS is in board-specific header file, which is |
| 261 | * included via hardware.h | 261 | * included via hardware.h |
| 262 | */ | 262 | */ |
| 263 | #include <asm/arch/hardware.h> | 263 | #include <asm/hardware.h> |
| 264 | 264 | ||
| 265 | #ifndef NR_IRQS | 265 | #ifndef NR_IRQS |
| 266 | #define NR_IRQS IH_BOARD_BASE | 266 | #define NR_IRQS IH_BOARD_BASE |
diff --git a/include/asm-arm/arch-omap/mcbsp.h b/include/asm-arm/arch-omap/mcbsp.h index 305bdeb16ab8..e79d98ab2ab6 100644 --- a/include/asm-arm/arch-omap/mcbsp.h +++ b/include/asm-arm/arch-omap/mcbsp.h | |||
| @@ -24,7 +24,7 @@ | |||
| 24 | #ifndef __ASM_ARCH_OMAP_MCBSP_H | 24 | #ifndef __ASM_ARCH_OMAP_MCBSP_H |
| 25 | #define __ASM_ARCH_OMAP_MCBSP_H | 25 | #define __ASM_ARCH_OMAP_MCBSP_H |
| 26 | 26 | ||
| 27 | #include <asm/arch/hardware.h> | 27 | #include <asm/hardware.h> |
| 28 | 28 | ||
| 29 | #define OMAP730_MCBSP1_BASE 0xfffb1000 | 29 | #define OMAP730_MCBSP1_BASE 0xfffb1000 |
| 30 | #define OMAP730_MCBSP2_BASE 0xfffb1800 | 30 | #define OMAP730_MCBSP2_BASE 0xfffb1800 |
diff --git a/include/asm-arm/arch-omap/system.h b/include/asm-arm/arch-omap/system.h index b43cdd2a3874..9af415d2944a 100644 --- a/include/asm-arm/arch-omap/system.h +++ b/include/asm-arm/arch-omap/system.h | |||
| @@ -7,7 +7,7 @@ | |||
| 7 | #include <linux/config.h> | 7 | #include <linux/config.h> |
| 8 | #include <asm/mach-types.h> | 8 | #include <asm/mach-types.h> |
| 9 | #include <asm/hardware/clock.h> | 9 | #include <asm/hardware/clock.h> |
| 10 | #include <asm/arch/hardware.h> | 10 | #include <asm/hardware.h> |
| 11 | #include <asm/arch/prcm.h> | 11 | #include <asm/arch/prcm.h> |
| 12 | 12 | ||
| 13 | #ifndef CONFIG_MACH_VOICEBLUE | 13 | #ifndef CONFIG_MACH_VOICEBLUE |
diff --git a/include/asm-arm/arch-realview/hardware.h b/include/asm-arm/arch-realview/hardware.h index 67879cdb6ef2..9ca76dc3a7af 100644 --- a/include/asm-arm/arch-realview/hardware.h +++ b/include/asm-arm/arch-realview/hardware.h | |||
| @@ -27,5 +27,6 @@ | |||
| 27 | 27 | ||
| 28 | /* macro to get at IO space when running virtually */ | 28 | /* macro to get at IO space when running virtually */ |
| 29 | #define IO_ADDRESS(x) (((x) & 0x0fffffff) + (((x) >> 4) & 0x0f000000) + 0xf0000000) | 29 | #define IO_ADDRESS(x) (((x) & 0x0fffffff) + (((x) >> 4) & 0x0f000000) + 0xf0000000) |
| 30 | #define __io_address(n) __io(IO_ADDRESS(n)) | ||
| 30 | 31 | ||
| 31 | #endif | 32 | #endif |
diff --git a/include/asm-arm/arch-realview/system.h b/include/asm-arm/arch-realview/system.h index 9f8fcbca0869..6f3d0ce0ca1e 100644 --- a/include/asm-arm/arch-realview/system.h +++ b/include/asm-arm/arch-realview/system.h | |||
| @@ -36,7 +36,7 @@ static inline void arch_idle(void) | |||
| 36 | 36 | ||
| 37 | static inline void arch_reset(char mode) | 37 | static inline void arch_reset(char mode) |
| 38 | { | 38 | { |
| 39 | unsigned int hdr_ctrl = (IO_ADDRESS(REALVIEW_SYS_BASE) + REALVIEW_SYS_RESETCTL_OFFSET); | 39 | void __iomem *hdr_ctrl = __io_address(REALVIEW_SYS_BASE) + REALVIEW_SYS_RESETCTL_OFFSET; |
| 40 | unsigned int val; | 40 | unsigned int val; |
| 41 | 41 | ||
| 42 | /* | 42 | /* |
diff --git a/include/asm-arm/arch-rpc/system.h b/include/asm-arm/arch-rpc/system.h index ca3277d1d5ea..729c2ae4b513 100644 --- a/include/asm-arm/arch-rpc/system.h +++ b/include/asm-arm/arch-rpc/system.h | |||
| @@ -7,7 +7,7 @@ | |||
| 7 | * it under the terms of the GNU General Public License version 2 as | 7 | * it under the terms of the GNU General Public License version 2 as |
| 8 | * published by the Free Software Foundation. | 8 | * published by the Free Software Foundation. |
| 9 | */ | 9 | */ |
| 10 | #include <asm/arch/hardware.h> | 10 | #include <asm/hardware.h> |
| 11 | #include <asm/hardware/iomd.h> | 11 | #include <asm/hardware/iomd.h> |
| 12 | #include <asm/io.h> | 12 | #include <asm/io.h> |
| 13 | 13 | ||
diff --git a/include/asm-arm/arch-sa1100/memory.h b/include/asm-arm/arch-sa1100/memory.h index 0fc555b4c912..018a9f0e3986 100644 --- a/include/asm-arm/arch-sa1100/memory.h +++ b/include/asm-arm/arch-sa1100/memory.h | |||
| @@ -18,20 +18,10 @@ | |||
| 18 | #ifndef __ASSEMBLY__ | 18 | #ifndef __ASSEMBLY__ |
| 19 | 19 | ||
| 20 | #ifdef CONFIG_SA1111 | 20 | #ifdef CONFIG_SA1111 |
| 21 | static inline void | 21 | void sa1111_adjust_zones(int node, unsigned long *size, unsigned long *holes); |
| 22 | __arch_adjust_zones(int node, unsigned long *size, unsigned long *holes) | ||
| 23 | { | ||
| 24 | unsigned int sz = SZ_1M >> PAGE_SHIFT; | ||
| 25 | |||
| 26 | if (node != 0) | ||
| 27 | sz = 0; | ||
| 28 | |||
| 29 | size[1] = size[0] - sz; | ||
| 30 | size[0] = sz; | ||
| 31 | } | ||
| 32 | 22 | ||
| 33 | #define arch_adjust_zones(node, size, holes) \ | 23 | #define arch_adjust_zones(node, size, holes) \ |
| 34 | __arch_adjust_zones(node, size, holes) | 24 | sa1111_adjust_zones(node, size, holes) |
| 35 | 25 | ||
| 36 | #define ISA_DMA_THRESHOLD (PHYS_OFFSET + SZ_1M - 1) | 26 | #define ISA_DMA_THRESHOLD (PHYS_OFFSET + SZ_1M - 1) |
| 37 | 27 | ||
diff --git a/include/asm-arm/atomic.h b/include/asm-arm/atomic.h index 75b802719723..d586f65c8228 100644 --- a/include/asm-arm/atomic.h +++ b/include/asm-arm/atomic.h | |||
| @@ -12,6 +12,7 @@ | |||
| 12 | #define __ASM_ARM_ATOMIC_H | 12 | #define __ASM_ARM_ATOMIC_H |
| 13 | 13 | ||
| 14 | #include <linux/config.h> | 14 | #include <linux/config.h> |
| 15 | #include <linux/compiler.h> | ||
| 15 | 16 | ||
| 16 | typedef struct { volatile int counter; } atomic_t; | 17 | typedef struct { volatile int counter; } atomic_t; |
| 17 | 18 | ||
| @@ -82,11 +83,12 @@ static inline int atomic_sub_return(int i, atomic_t *v) | |||
| 82 | 83 | ||
| 83 | static inline int atomic_cmpxchg(atomic_t *ptr, int old, int new) | 84 | static inline int atomic_cmpxchg(atomic_t *ptr, int old, int new) |
| 84 | { | 85 | { |
| 85 | u32 oldval, res; | 86 | unsigned long oldval, res; |
| 86 | 87 | ||
| 87 | do { | 88 | do { |
| 88 | __asm__ __volatile__("@ atomic_cmpxchg\n" | 89 | __asm__ __volatile__("@ atomic_cmpxchg\n" |
| 89 | "ldrex %1, [%2]\n" | 90 | "ldrex %1, [%2]\n" |
| 91 | "mov %0, #0\n" | ||
| 90 | "teq %1, %3\n" | 92 | "teq %1, %3\n" |
| 91 | "strexeq %0, %4, [%2]\n" | 93 | "strexeq %0, %4, [%2]\n" |
| 92 | : "=&r" (res), "=&r" (oldval) | 94 | : "=&r" (res), "=&r" (oldval) |
diff --git a/include/asm-arm/bitops.h b/include/asm-arm/bitops.h index e007dd990da5..7399d431edfe 100644 --- a/include/asm-arm/bitops.h +++ b/include/asm-arm/bitops.h | |||
| @@ -19,6 +19,7 @@ | |||
| 19 | 19 | ||
| 20 | #ifdef __KERNEL__ | 20 | #ifdef __KERNEL__ |
| 21 | 21 | ||
| 22 | #include <linux/compiler.h> | ||
| 22 | #include <asm/system.h> | 23 | #include <asm/system.h> |
| 23 | 24 | ||
| 24 | #define smp_mb__before_clear_bit() mb() | 25 | #define smp_mb__before_clear_bit() mb() |
diff --git a/include/asm-arm/hardware/dec21285.h b/include/asm-arm/hardware/dec21285.h index 9049f0ddaecf..6685e3fb97b1 100644 --- a/include/asm-arm/hardware/dec21285.h +++ b/include/asm-arm/hardware/dec21285.h | |||
| @@ -20,7 +20,7 @@ | |||
| 20 | 20 | ||
| 21 | #include <linux/config.h> | 21 | #include <linux/config.h> |
| 22 | #ifndef __ASSEMBLY__ | 22 | #ifndef __ASSEMBLY__ |
| 23 | #include <asm/arch/hardware.h> | 23 | #include <asm/hardware.h> |
| 24 | #define DC21285_IO(x) ((volatile unsigned long *)(ARMCSR_BASE+(x))) | 24 | #define DC21285_IO(x) ((volatile unsigned long *)(ARMCSR_BASE+(x))) |
| 25 | #else | 25 | #else |
| 26 | #define DC21285_IO(x) (x) | 26 | #define DC21285_IO(x) (x) |
diff --git a/include/asm-arm/mmu_context.h b/include/asm-arm/mmu_context.h index 3d4b810d8c38..81c59facea3b 100644 --- a/include/asm-arm/mmu_context.h +++ b/include/asm-arm/mmu_context.h | |||
| @@ -13,6 +13,7 @@ | |||
| 13 | #ifndef __ASM_ARM_MMU_CONTEXT_H | 13 | #ifndef __ASM_ARM_MMU_CONTEXT_H |
| 14 | #define __ASM_ARM_MMU_CONTEXT_H | 14 | #define __ASM_ARM_MMU_CONTEXT_H |
| 15 | 15 | ||
| 16 | #include <linux/compiler.h> | ||
| 16 | #include <asm/cacheflush.h> | 17 | #include <asm/cacheflush.h> |
| 17 | #include <asm/proc-fns.h> | 18 | #include <asm/proc-fns.h> |
| 18 | 19 | ||
diff --git a/include/asm-arm/system.h b/include/asm-arm/system.h index 8efa4ebdcacb..5621d61ebc07 100644 --- a/include/asm-arm/system.h +++ b/include/asm-arm/system.h | |||
| @@ -93,8 +93,6 @@ void hook_fault_code(int nr, int (*fn)(unsigned long, unsigned int, | |||
| 93 | struct pt_regs *), | 93 | struct pt_regs *), |
| 94 | int sig, const char *name); | 94 | int sig, const char *name); |
| 95 | 95 | ||
| 96 | #include <asm/proc-fns.h> | ||
| 97 | |||
| 98 | #define xchg(ptr,x) \ | 96 | #define xchg(ptr,x) \ |
| 99 | ((__typeof__(*(ptr)))__xchg((unsigned long)(x),(ptr),sizeof(*(ptr)))) | 97 | ((__typeof__(*(ptr)))__xchg((unsigned long)(x),(ptr),sizeof(*(ptr)))) |
| 100 | 98 | ||
| @@ -102,6 +100,8 @@ void hook_fault_code(int nr, int (*fn)(unsigned long, unsigned int, | |||
| 102 | 100 | ||
| 103 | extern asmlinkage void __backtrace(void); | 101 | extern asmlinkage void __backtrace(void); |
| 104 | extern asmlinkage void c_backtrace(unsigned long fp, int pmode); | 102 | extern asmlinkage void c_backtrace(unsigned long fp, int pmode); |
| 103 | |||
| 104 | struct mm_struct; | ||
| 105 | extern void show_pte(struct mm_struct *mm, unsigned long addr); | 105 | extern void show_pte(struct mm_struct *mm, unsigned long addr); |
| 106 | extern void __show_regs(struct pt_regs *); | 106 | extern void __show_regs(struct pt_regs *); |
| 107 | 107 | ||
diff --git a/include/asm-arm/thread_info.h b/include/asm-arm/thread_info.h index 8252a4cd860f..7c98557b717f 100644 --- a/include/asm-arm/thread_info.h +++ b/include/asm-arm/thread_info.h | |||
| @@ -12,6 +12,7 @@ | |||
| 12 | 12 | ||
| 13 | #ifdef __KERNEL__ | 13 | #ifdef __KERNEL__ |
| 14 | 14 | ||
| 15 | #include <linux/compiler.h> | ||
| 15 | #include <asm/fpstate.h> | 16 | #include <asm/fpstate.h> |
| 16 | 17 | ||
| 17 | #define THREAD_SIZE_ORDER 1 | 18 | #define THREAD_SIZE_ORDER 1 |
diff --git a/include/asm-i386/signal.h b/include/asm-i386/signal.h index cbb47d34aa31..76524b4052ac 100644 --- a/include/asm-i386/signal.h +++ b/include/asm-i386/signal.h | |||
| @@ -159,14 +159,37 @@ typedef struct sigaltstack { | |||
| 159 | 159 | ||
| 160 | #define __HAVE_ARCH_SIG_BITOPS | 160 | #define __HAVE_ARCH_SIG_BITOPS |
| 161 | 161 | ||
| 162 | static __inline__ void sigaddset(sigset_t *set, int _sig) | 162 | #define sigaddset(set,sig) \ |
| 163 | (__builtin_constant_p(sig) ? \ | ||
| 164 | __const_sigaddset((set),(sig)) : \ | ||
| 165 | __gen_sigaddset((set),(sig))) | ||
| 166 | |||
| 167 | static __inline__ void __gen_sigaddset(sigset_t *set, int _sig) | ||
| 163 | { | 168 | { |
| 164 | __asm__("btsl %1,%0" : "=m"(*set) : "Ir"(_sig - 1) : "cc"); | 169 | __asm__("btsl %1,%0" : "+m"(*set) : "Ir"(_sig - 1) : "cc"); |
| 165 | } | 170 | } |
| 166 | 171 | ||
| 167 | static __inline__ void sigdelset(sigset_t *set, int _sig) | 172 | static __inline__ void __const_sigaddset(sigset_t *set, int _sig) |
| 168 | { | 173 | { |
| 169 | __asm__("btrl %1,%0" : "=m"(*set) : "Ir"(_sig - 1) : "cc"); | 174 | unsigned long sig = _sig - 1; |
| 175 | set->sig[sig / _NSIG_BPW] |= 1 << (sig % _NSIG_BPW); | ||
| 176 | } | ||
| 177 | |||
| 178 | #define sigdelset(set,sig) \ | ||
| 179 | (__builtin_constant_p(sig) ? \ | ||
| 180 | __const_sigdelset((set),(sig)) : \ | ||
| 181 | __gen_sigdelset((set),(sig))) | ||
| 182 | |||
| 183 | |||
| 184 | static __inline__ void __gen_sigdelset(sigset_t *set, int _sig) | ||
| 185 | { | ||
| 186 | __asm__("btrl %1,%0" : "+m"(*set) : "Ir"(_sig - 1) : "cc"); | ||
| 187 | } | ||
| 188 | |||
| 189 | static __inline__ void __const_sigdelset(sigset_t *set, int _sig) | ||
| 190 | { | ||
| 191 | unsigned long sig = _sig - 1; | ||
| 192 | set->sig[sig / _NSIG_BPW] &= ~(1 << (sig % _NSIG_BPW)); | ||
| 170 | } | 193 | } |
| 171 | 194 | ||
| 172 | static __inline__ int __const_sigismember(sigset_t *set, int _sig) | 195 | static __inline__ int __const_sigismember(sigset_t *set, int _sig) |
diff --git a/include/asm-mips/atomic.h b/include/asm-mips/atomic.h index 2c87b41e69ba..55c37c106ef0 100644 --- a/include/asm-mips/atomic.h +++ b/include/asm-mips/atomic.h | |||
| @@ -231,11 +231,12 @@ static __inline__ int atomic_sub_return(int i, atomic_t * v) | |||
| 231 | } | 231 | } |
| 232 | 232 | ||
| 233 | /* | 233 | /* |
| 234 | * atomic_sub_if_positive - add integer to atomic variable | 234 | * atomic_sub_if_positive - conditionally subtract integer from atomic variable |
| 235 | * @i: integer value to subtract | ||
| 235 | * @v: pointer of type atomic_t | 236 | * @v: pointer of type atomic_t |
| 236 | * | 237 | * |
| 237 | * Atomically test @v and decrement if it is greater than 0. | 238 | * Atomically test @v and subtract @i if @v is greater or equal than @i. |
| 238 | * The function returns the old value of @v minus 1. | 239 | * The function returns the old value of @v minus @i. |
| 239 | */ | 240 | */ |
| 240 | static __inline__ int atomic_sub_if_positive(int i, atomic_t * v) | 241 | static __inline__ int atomic_sub_if_positive(int i, atomic_t * v) |
| 241 | { | 242 | { |
| @@ -577,11 +578,12 @@ static __inline__ long atomic64_sub_return(long i, atomic64_t * v) | |||
| 577 | } | 578 | } |
| 578 | 579 | ||
| 579 | /* | 580 | /* |
| 580 | * atomic64_sub_if_positive - add integer to atomic variable | 581 | * atomic64_sub_if_positive - conditionally subtract integer from atomic variable |
| 582 | * @i: integer value to subtract | ||
| 581 | * @v: pointer of type atomic64_t | 583 | * @v: pointer of type atomic64_t |
| 582 | * | 584 | * |
| 583 | * Atomically test @v and decrement if it is greater than 0. | 585 | * Atomically test @v and subtract @i if @v is greater or equal than @i. |
| 584 | * The function returns the old value of @v minus 1. | 586 | * The function returns the old value of @v minus @i. |
| 585 | */ | 587 | */ |
| 586 | static __inline__ long atomic64_sub_if_positive(long i, atomic64_t * v) | 588 | static __inline__ long atomic64_sub_if_positive(long i, atomic64_t * v) |
| 587 | { | 589 | { |
diff --git a/include/asm-mips/io.h b/include/asm-mips/io.h index 3061870b7f6c..d42685747e7d 100644 --- a/include/asm-mips/io.h +++ b/include/asm-mips/io.h | |||
| @@ -459,10 +459,10 @@ __BUILDIO(q, u64) | |||
| 459 | 459 | ||
| 460 | #define __BUILD_MEMORY_STRING(bwlq, type) \ | 460 | #define __BUILD_MEMORY_STRING(bwlq, type) \ |
| 461 | \ | 461 | \ |
| 462 | static inline void writes##bwlq(volatile void __iomem *mem, void *addr, \ | 462 | static inline void writes##bwlq(volatile void __iomem *mem, \ |
| 463 | unsigned int count) \ | 463 | const void *addr, unsigned int count) \ |
| 464 | { \ | 464 | { \ |
| 465 | volatile type *__addr = addr; \ | 465 | const volatile type *__addr = addr; \ |
| 466 | \ | 466 | \ |
| 467 | while (count--) { \ | 467 | while (count--) { \ |
| 468 | mem_write##bwlq(*__addr, mem); \ | 468 | mem_write##bwlq(*__addr, mem); \ |
diff --git a/include/asm-mips/ip32/crime.h b/include/asm-mips/ip32/crime.h index 152879bae20f..a13702fafa85 100644 --- a/include/asm-mips/ip32/crime.h +++ b/include/asm-mips/ip32/crime.h | |||
| @@ -154,7 +154,7 @@ struct sgi_crime { | |||
| 154 | #define CRIME_MEM_ERROR_ECC_REPL_MASK 0xffffffff | 154 | #define CRIME_MEM_ERROR_ECC_REPL_MASK 0xffffffff |
| 155 | }; | 155 | }; |
| 156 | 156 | ||
| 157 | extern struct sgi_crime *crime; | 157 | extern struct sgi_crime __iomem *crime; |
| 158 | 158 | ||
| 159 | #define CRIME_HI_MEM_BASE 0x40000000 /* this is where whole 1G of RAM is mapped */ | 159 | #define CRIME_HI_MEM_BASE 0x40000000 /* this is where whole 1G of RAM is mapped */ |
| 160 | 160 | ||
diff --git a/include/asm-mips/ip32/mace.h b/include/asm-mips/ip32/mace.h index 5bdc51d85b6c..990082c81f39 100644 --- a/include/asm-mips/ip32/mace.h +++ b/include/asm-mips/ip32/mace.h | |||
| @@ -150,24 +150,34 @@ struct mace_audio { | |||
| 150 | 150 | ||
| 151 | /* register definitions for parallel port DMA */ | 151 | /* register definitions for parallel port DMA */ |
| 152 | struct mace_parport { | 152 | struct mace_parport { |
| 153 | /* 0 - do nothing, 1 - pulse terminal count to the device after buffer is drained */ | 153 | /* 0 - do nothing, |
| 154 | #define MACEPAR_CONTEXT_LASTFLAG BIT(63) | 154 | * 1 - pulse terminal count to the device after buffer is drained */ |
| 155 | /* Should not cross 4K page boundary */ | 155 | #define MACEPAR_CONTEXT_LASTFLAG BIT(63) |
| 156 | #define MACEPAR_CONTEXT_DATALEN_MASK 0xfff00000000 | 156 | /* Should not cross 4K page boundary */ |
| 157 | /* Can be arbitrarily aligned on any byte boundary on output, 64 byte aligned on input */ | 157 | #define MACEPAR_CONTEXT_DATA_BOUND 0x0000000000001000UL |
| 158 | #define MACEPAR_CONTEXT_BASEADDR_MASK 0xffffffff | 158 | #define MACEPAR_CONTEXT_DATALEN_MASK 0x00000fff00000000UL |
| 159 | #define MACEPAR_CONTEXT_DATALEN_SHIFT 32 | ||
| 160 | /* Can be arbitrarily aligned on any byte boundary on output, | ||
| 161 | * 64 byte aligned on input */ | ||
| 162 | #define MACEPAR_CONTEXT_BASEADDR_MASK 0x00000000ffffffffUL | ||
| 159 | volatile u64 context_a; | 163 | volatile u64 context_a; |
| 160 | volatile u64 context_b; | 164 | volatile u64 context_b; |
| 161 | #define MACEPAR_CTLSTAT_DIRECTION BIT(0) /* 0 - mem->device, 1 - device->mem */ | 165 | /* 0 - mem->device, 1 - device->mem */ |
| 162 | #define MACEPAR_CTLSTAT_ENABLE BIT(1) /* 0 - channel frozen, 1 - channel enabled */ | 166 | #define MACEPAR_CTLSTAT_DIRECTION BIT(0) |
| 163 | #define MACEPAR_CTLSTAT_RESET BIT(2) /* 0 - channel active, 1 - complete channel reset */ | 167 | /* 0 - channel frozen, 1 - channel enabled */ |
| 164 | #define MACEPAR_CTLSTAT_CTXB_VALID BIT(3) | 168 | #define MACEPAR_CTLSTAT_ENABLE BIT(1) |
| 165 | #define MACEPAR_CTLSTAT_CTXA_VALID BIT(4) | 169 | /* 0 - channel active, 1 - complete channel reset */ |
| 166 | volatile u64 cntlstat; /* Control/Status register */ | 170 | #define MACEPAR_CTLSTAT_RESET BIT(2) |
| 167 | #define MACEPAR_DIAG_CTXINUSE BIT(1) | 171 | #define MACEPAR_CTLSTAT_CTXB_VALID BIT(3) |
| 168 | #define MACEPAR_DIAG_DMACTIVE BIT(2) /* 1 - Dma engine is enabled and processing something */ | 172 | #define MACEPAR_CTLSTAT_CTXA_VALID BIT(4) |
| 169 | #define MACEPAR_DIAG_CTRMASK 0x3ffc /* Counter of bytes left */ | 173 | volatile u64 cntlstat; /* Control/Status register */ |
| 170 | volatile u64 diagnostic; /* RO: diagnostic register */ | 174 | #define MACEPAR_DIAG_CTXINUSE BIT(0) |
| 175 | /* 1 - Dma engine is enabled and processing something */ | ||
| 176 | #define MACEPAR_DIAG_DMACTIVE BIT(1) | ||
| 177 | /* Counter of bytes left */ | ||
| 178 | #define MACEPAR_DIAG_CTRMASK 0x0000000000003ffcUL | ||
| 179 | #define MACEPAR_DIAG_CTRSHIFT 2 | ||
| 180 | volatile u64 diagnostic; /* RO: diagnostic register */ | ||
| 171 | }; | 181 | }; |
| 172 | 182 | ||
| 173 | /* ISA Control and DMA registers */ | 183 | /* ISA Control and DMA registers */ |
| @@ -353,6 +363,6 @@ struct sgi_mace { | |||
| 353 | char _pad6[0x80000 - sizeof(struct mace_isa)]; | 363 | char _pad6[0x80000 - sizeof(struct mace_isa)]; |
| 354 | }; | 364 | }; |
| 355 | 365 | ||
| 356 | extern struct sgi_mace *mace; | 366 | extern struct sgi_mace __iomem *mace; |
| 357 | 367 | ||
| 358 | #endif /* __ASM_MACE_H__ */ | 368 | #endif /* __ASM_MACE_H__ */ |
diff --git a/include/asm-mips/mach-db1x00/db1200.h b/include/asm-mips/mach-db1x00/db1200.h index 5d894376fc1a..647fdb54cc1d 100644 --- a/include/asm-mips/mach-db1x00/db1200.h +++ b/include/asm-mips/mach-db1x00/db1200.h | |||
| @@ -220,5 +220,8 @@ static BCSR * const bcsr = (BCSR *)BCSR_KSEG1_ADDR; | |||
| 220 | #define BOARD_PC1_INT DB1200_PC1_INT | 220 | #define BOARD_PC1_INT DB1200_PC1_INT |
| 221 | #define BOARD_CARD_INSERTED(SOCKET) bcsr->sig_status & (1<<(8+(2*SOCKET))) | 221 | #define BOARD_CARD_INSERTED(SOCKET) bcsr->sig_status & (1<<(8+(2*SOCKET))) |
| 222 | 222 | ||
| 223 | /* Nand chip select */ | ||
| 224 | #define NAND_CS 1 | ||
| 225 | |||
| 223 | #endif /* __ASM_DB1200_H */ | 226 | #endif /* __ASM_DB1200_H */ |
| 224 | 227 | ||
diff --git a/include/asm-mips/mach-db1x00/db1x00.h b/include/asm-mips/mach-db1x00/db1x00.h index efafe65258b6..7b28b23f91ce 100644 --- a/include/asm-mips/mach-db1x00/db1x00.h +++ b/include/asm-mips/mach-db1x00/db1x00.h | |||
| @@ -200,6 +200,12 @@ typedef volatile struct | |||
| 200 | ((NAND_T_PUL & 0xF) << NAND_T_PUL_SHIFT) | \ | 200 | ((NAND_T_PUL & 0xF) << NAND_T_PUL_SHIFT) | \ |
| 201 | ((NAND_T_SU & 0xF) << NAND_T_SU_SHIFT) | \ | 201 | ((NAND_T_SU & 0xF) << NAND_T_SU_SHIFT) | \ |
| 202 | ((NAND_T_WH & 0xF) << NAND_T_WH_SHIFT) | 202 | ((NAND_T_WH & 0xF) << NAND_T_WH_SHIFT) |
| 203 | #define NAND_CS 1 | ||
| 204 | |||
| 205 | /* should be done by yamon */ | ||
| 206 | #define NAND_STCFG 0x00400005 /* 8-bit NAND */ | ||
| 207 | #define NAND_STTIME 0x00007774 /* valid for 396MHz SD=2 only */ | ||
| 208 | #define NAND_STADDR 0x12000FFF /* physical address 0x20000000 */ | ||
| 203 | 209 | ||
| 204 | #endif /* __ASM_DB1X00_H */ | 210 | #endif /* __ASM_DB1X00_H */ |
| 205 | 211 | ||
diff --git a/include/asm-mips/mach-ip32/mc146818rtc.h b/include/asm-mips/mach-ip32/mc146818rtc.h index f5d780ff843f..c28ba8d84076 100644 --- a/include/asm-mips/mach-ip32/mc146818rtc.h +++ b/include/asm-mips/mach-ip32/mc146818rtc.h | |||
| @@ -11,7 +11,6 @@ | |||
| 11 | #ifndef __ASM_MACH_IP32_MC146818RTC_H | 11 | #ifndef __ASM_MACH_IP32_MC146818RTC_H |
| 12 | #define __ASM_MACH_IP32_MC146818RTC_H | 12 | #define __ASM_MACH_IP32_MC146818RTC_H |
| 13 | 13 | ||
| 14 | #include <asm/io.h> | ||
| 15 | #include <asm/ip32/mace.h> | 14 | #include <asm/ip32/mace.h> |
| 16 | 15 | ||
| 17 | #define RTC_PORT(x) (0x70 + (x)) | 16 | #define RTC_PORT(x) (0x70 + (x)) |
| @@ -26,8 +25,10 @@ static inline void CMOS_WRITE(unsigned char data, unsigned long addr) | |||
| 26 | mace->isa.rtc[addr << 8] = data; | 25 | mace->isa.rtc[addr << 8] = data; |
| 27 | } | 26 | } |
| 28 | 27 | ||
| 29 | /* FIXME: Do it right. For now just assume that noone lives in 20th century | 28 | /* |
| 30 | * and no O2 user in 22th century ;-) */ | 29 | * FIXME: Do it right. For now just assume that noone lives in 20th century |
| 30 | * and no O2 user in 22th century ;-) | ||
| 31 | */ | ||
| 31 | #define mc146818_decode_year(year) ((year) + 2000) | 32 | #define mc146818_decode_year(year) ((year) + 2000) |
| 32 | 33 | ||
| 33 | #define RTC_ALWAYS_BCD 0 | 34 | #define RTC_ALWAYS_BCD 0 |
diff --git a/include/asm-mips/mach-jmr3927/asm/ds1742.h b/include/asm-mips/mach-jmr3927/ds1742.h index 134a4b6c334a..cff6192d4bdb 100644 --- a/include/asm-mips/mach-jmr3927/asm/ds1742.h +++ b/include/asm-mips/mach-jmr3927/ds1742.h | |||
| @@ -5,12 +5,12 @@ | |||
| 5 | * | 5 | * |
| 6 | * Copyright (C) 2003 by Ralf Baechle | 6 | * Copyright (C) 2003 by Ralf Baechle |
| 7 | */ | 7 | */ |
| 8 | #ifndef __ASM_MACH_JMR3927_ASM_DS1742_H | 8 | #ifndef __ASM_MACH_JMR3927_DS1742_H |
| 9 | #define __ASM_MACH_JMR3927_ASM_DS1742_H | 9 | #define __ASM_MACH_JMR3927_DS1742_H |
| 10 | 10 | ||
| 11 | #include <asm/jmr3927/jmr3927.h> | 11 | #include <asm/jmr3927/jmr3927.h> |
| 12 | 12 | ||
| 13 | #define rtc_read(reg) (jmr3927_nvram_in(addr)) | 13 | #define rtc_read(reg) (jmr3927_nvram_in(addr)) |
| 14 | #define rtc_write(data, reg) (jmr3927_nvram_out((data),(reg))) | 14 | #define rtc_write(data, reg) (jmr3927_nvram_out((data),(reg))) |
| 15 | 15 | ||
| 16 | #endif /* __ASM_MACH_JMR3927_ASM_DS1742_H */ | 16 | #endif /* __ASM_MACH_JMR3927_DS1742_H */ |
diff --git a/include/asm-mips/mach-pb1x00/pb1200.h b/include/asm-mips/mach-pb1x00/pb1200.h index 9a3088b19bf3..409d443322c1 100644 --- a/include/asm-mips/mach-pb1x00/pb1200.h +++ b/include/asm-mips/mach-pb1x00/pb1200.h | |||
| @@ -248,5 +248,8 @@ static BCSR * const bcsr = (BCSR *)BCSR_KSEG1_ADDR; | |||
| 248 | #define BOARD_PC1_INT PB1200_PC1_INT | 248 | #define BOARD_PC1_INT PB1200_PC1_INT |
| 249 | #define BOARD_CARD_INSERTED(SOCKET) bcsr->sig_status & (1<<(8+(2*SOCKET))) | 249 | #define BOARD_CARD_INSERTED(SOCKET) bcsr->sig_status & (1<<(8+(2*SOCKET))) |
| 250 | 250 | ||
| 251 | /* Nand chip select */ | ||
| 252 | #define NAND_CS 1 | ||
| 253 | |||
| 251 | #endif /* __ASM_PB1200_H */ | 254 | #endif /* __ASM_PB1200_H */ |
| 252 | 255 | ||
diff --git a/include/asm-mips/mach-pb1x00/pb1550.h b/include/asm-mips/mach-pb1x00/pb1550.h index 431d6088ea96..9578ead11e8a 100644 --- a/include/asm-mips/mach-pb1x00/pb1550.h +++ b/include/asm-mips/mach-pb1x00/pb1550.h | |||
| @@ -166,4 +166,11 @@ static BCSR * const bcsr = (BCSR *)BCSR_PHYS_ADDR; | |||
| 166 | ((NAND_T_SU & 0xF) << NAND_T_SU_SHIFT) | \ | 166 | ((NAND_T_SU & 0xF) << NAND_T_SU_SHIFT) | \ |
| 167 | ((NAND_T_WH & 0xF) << NAND_T_WH_SHIFT) | 167 | ((NAND_T_WH & 0xF) << NAND_T_WH_SHIFT) |
| 168 | 168 | ||
| 169 | #define NAND_CS 1 | ||
| 170 | |||
| 171 | /* should be done by yamon */ | ||
| 172 | #define NAND_STCFG 0x00400005 /* 8-bit NAND */ | ||
| 173 | #define NAND_STTIME 0x00007774 /* valid for 396MHz SD=2 only */ | ||
| 174 | #define NAND_STADDR 0x12000FFF /* physical address 0x20000000 */ | ||
| 175 | |||
| 169 | #endif /* __ASM_PB1550_H */ | 176 | #endif /* __ASM_PB1550_H */ |
diff --git a/include/asm-mips/mips-boards/seadint.h b/include/asm-mips/mips-boards/seadint.h index c3dcfcb928b6..365c2a3c64f5 100644 --- a/include/asm-mips/mips-boards/seadint.h +++ b/include/asm-mips/mips-boards/seadint.h | |||
| @@ -20,9 +20,14 @@ | |||
| 20 | #ifndef _MIPS_SEADINT_H | 20 | #ifndef _MIPS_SEADINT_H |
| 21 | #define _MIPS_SEADINT_H | 21 | #define _MIPS_SEADINT_H |
| 22 | 22 | ||
| 23 | #define SEADINT_UART0 2 | 23 | /* |
| 24 | #define SEADINT_UART1 3 | 24 | * Interrupts 0..7 are used for SEAD CPU interrupts |
| 25 | */ | ||
| 26 | #define MIPSCPU_INT_BASE 0 | ||
| 27 | |||
| 28 | #define MIPSCPU_INT_UART0 2 | ||
| 29 | #define MIPSCPU_INT_UART1 3 | ||
| 25 | 30 | ||
| 26 | extern void seadint_init(void); | 31 | #define MIPSCPU_INT_CPUCTR 7 |
| 27 | 32 | ||
| 28 | #endif /* !(_MIPS_SEADINT_H) */ | 33 | #endif /* !(_MIPS_SEADINT_H) */ |
diff --git a/include/asm-mips/signal.h b/include/asm-mips/signal.h index 8ca539e80d87..6fe903e09c62 100644 --- a/include/asm-mips/signal.h +++ b/include/asm-mips/signal.h | |||
| @@ -155,27 +155,6 @@ typedef struct sigaltstack { | |||
| 155 | #ifdef __KERNEL__ | 155 | #ifdef __KERNEL__ |
| 156 | #include <asm/sigcontext.h> | 156 | #include <asm/sigcontext.h> |
| 157 | 157 | ||
| 158 | /* | ||
| 159 | * The following break codes are or were in use for specific purposes in | ||
| 160 | * other MIPS operating systems. Linux/MIPS doesn't use all of them. The | ||
| 161 | * unused ones are here as placeholders; we might encounter them in | ||
| 162 | * non-Linux/MIPS object files or make use of them in the future. | ||
| 163 | */ | ||
| 164 | #define BRK_USERBP 0 /* User bp (used by debuggers) */ | ||
| 165 | #define BRK_KERNELBP 1 /* Break in the kernel */ | ||
| 166 | #define BRK_ABORT 2 /* Sometimes used by abort(3) to SIGIOT */ | ||
| 167 | #define BRK_BD_TAKEN 3 /* For bd slot emulation - not implemented */ | ||
| 168 | #define BRK_BD_NOTTAKEN 4 /* For bd slot emulation - not implemented */ | ||
| 169 | #define BRK_SSTEPBP 5 /* User bp (used by debuggers) */ | ||
| 170 | #define BRK_OVERFLOW 6 /* Overflow check */ | ||
| 171 | #define BRK_DIVZERO 7 /* Divide by zero check */ | ||
| 172 | #define BRK_RANGE 8 /* Range error check */ | ||
| 173 | #define BRK_STACKOVERFLOW 9 /* For Ada stackchecking */ | ||
| 174 | #define BRK_NORLD 10 /* No rld found - not used by Linux/MIPS */ | ||
| 175 | #define _BRK_THREADBP 11 /* For threads, user bp (used by debuggers) */ | ||
| 176 | #define BRK_MULOVF 1023 /* Multiply overflow */ | ||
| 177 | #define BRK_BUG 512 /* Used by BUG() */ | ||
| 178 | |||
| 179 | #define ptrace_signal_deliver(regs, cookie) do { } while (0) | 158 | #define ptrace_signal_deliver(regs, cookie) do { } while (0) |
| 180 | 159 | ||
| 181 | #endif /* __KERNEL__ */ | 160 | #endif /* __KERNEL__ */ |
diff --git a/include/asm-parisc/irq.h b/include/asm-parisc/irq.h index f876bdf22056..b0a30e2c9813 100644 --- a/include/asm-parisc/irq.h +++ b/include/asm-parisc/irq.h | |||
| @@ -8,6 +8,7 @@ | |||
| 8 | #define _ASM_PARISC_IRQ_H | 8 | #define _ASM_PARISC_IRQ_H |
| 9 | 9 | ||
| 10 | #include <linux/config.h> | 10 | #include <linux/config.h> |
| 11 | #include <linux/cpumask.h> | ||
| 11 | #include <asm/types.h> | 12 | #include <asm/types.h> |
| 12 | 13 | ||
| 13 | #define NO_IRQ (-1) | 14 | #define NO_IRQ (-1) |
| @@ -49,10 +50,10 @@ extern int txn_alloc_irq(unsigned int nbits); | |||
| 49 | extern int txn_claim_irq(int); | 50 | extern int txn_claim_irq(int); |
| 50 | extern unsigned int txn_alloc_data(unsigned int); | 51 | extern unsigned int txn_alloc_data(unsigned int); |
| 51 | extern unsigned long txn_alloc_addr(unsigned int); | 52 | extern unsigned long txn_alloc_addr(unsigned int); |
| 53 | extern unsigned long txn_affinity_addr(unsigned int irq, int cpu); | ||
| 52 | 54 | ||
| 53 | extern int cpu_claim_irq(unsigned int irq, struct hw_interrupt_type *, void *); | 55 | extern int cpu_claim_irq(unsigned int irq, struct hw_interrupt_type *, void *); |
| 54 | 56 | extern int cpu_check_affinity(unsigned int irq, cpumask_t *dest); | |
| 55 | extern int cpu_claim_irq(unsigned int irq, struct hw_interrupt_type *, void *); | ||
| 56 | 57 | ||
| 57 | /* soft power switch support (power.c) */ | 58 | /* soft power switch support (power.c) */ |
| 58 | extern struct tasklet_struct power_tasklet; | 59 | extern struct tasklet_struct power_tasklet; |
diff --git a/include/asm-parisc/smp.h b/include/asm-parisc/smp.h index 9413f67a540b..dbdbd2e9fdf9 100644 --- a/include/asm-parisc/smp.h +++ b/include/asm-parisc/smp.h | |||
| @@ -29,6 +29,7 @@ extern cpumask_t cpu_online_map; | |||
| 29 | #define cpu_logical_map(cpu) (cpu) | 29 | #define cpu_logical_map(cpu) (cpu) |
| 30 | 30 | ||
| 31 | extern void smp_send_reschedule(int cpu); | 31 | extern void smp_send_reschedule(int cpu); |
| 32 | extern void smp_send_all_nop(void); | ||
| 32 | 33 | ||
| 33 | #endif /* !ASSEMBLY */ | 34 | #endif /* !ASSEMBLY */ |
| 34 | 35 | ||
| @@ -53,7 +54,11 @@ extern unsigned long cpu_present_mask; | |||
| 53 | 54 | ||
| 54 | #define raw_smp_processor_id() (current_thread_info()->cpu) | 55 | #define raw_smp_processor_id() (current_thread_info()->cpu) |
| 55 | 56 | ||
| 56 | #endif /* CONFIG_SMP */ | 57 | #else /* CONFIG_SMP */ |
| 58 | |||
| 59 | static inline void smp_send_all_nop(void) { return; } | ||
| 60 | |||
| 61 | #endif | ||
| 57 | 62 | ||
| 58 | #define NO_PROC_ID 0xFF /* No processor magic marker */ | 63 | #define NO_PROC_ID 0xFF /* No processor magic marker */ |
| 59 | #define ANY_PROC_ID 0xFF /* Any processor magic marker */ | 64 | #define ANY_PROC_ID 0xFF /* Any processor magic marker */ |
diff --git a/include/asm-parisc/spinlock.h b/include/asm-parisc/spinlock.h index 7c3f406a746a..16c2ac075fc5 100644 --- a/include/asm-parisc/spinlock.h +++ b/include/asm-parisc/spinlock.h | |||
| @@ -11,18 +11,25 @@ static inline int __raw_spin_is_locked(raw_spinlock_t *x) | |||
| 11 | return *a == 0; | 11 | return *a == 0; |
| 12 | } | 12 | } |
| 13 | 13 | ||
| 14 | #define __raw_spin_lock_flags(lock, flags) __raw_spin_lock(lock) | 14 | #define __raw_spin_lock(lock) __raw_spin_lock_flags(lock, 0) |
| 15 | #define __raw_spin_unlock_wait(x) \ | 15 | #define __raw_spin_unlock_wait(x) \ |
| 16 | do { cpu_relax(); } while (__raw_spin_is_locked(x)) | 16 | do { cpu_relax(); } while (__raw_spin_is_locked(x)) |
| 17 | 17 | ||
| 18 | static inline void __raw_spin_lock(raw_spinlock_t *x) | 18 | static inline void __raw_spin_lock_flags(raw_spinlock_t *x, |
| 19 | unsigned long flags) | ||
| 19 | { | 20 | { |
| 20 | volatile unsigned int *a; | 21 | volatile unsigned int *a; |
| 21 | 22 | ||
| 22 | mb(); | 23 | mb(); |
| 23 | a = __ldcw_align(x); | 24 | a = __ldcw_align(x); |
| 24 | while (__ldcw(a) == 0) | 25 | while (__ldcw(a) == 0) |
| 25 | while (*a == 0); | 26 | while (*a == 0) |
| 27 | if (flags & PSW_SM_I) { | ||
| 28 | local_irq_enable(); | ||
| 29 | cpu_relax(); | ||
| 30 | local_irq_disable(); | ||
| 31 | } else | ||
| 32 | cpu_relax(); | ||
| 26 | mb(); | 33 | mb(); |
| 27 | } | 34 | } |
| 28 | 35 | ||
| @@ -60,26 +67,20 @@ static inline int __raw_spin_trylock(raw_spinlock_t *x) | |||
| 60 | 67 | ||
| 61 | static __inline__ void __raw_read_lock(raw_rwlock_t *rw) | 68 | static __inline__ void __raw_read_lock(raw_rwlock_t *rw) |
| 62 | { | 69 | { |
| 63 | unsigned long flags; | ||
| 64 | local_irq_save(flags); | ||
| 65 | __raw_spin_lock(&rw->lock); | 70 | __raw_spin_lock(&rw->lock); |
| 66 | 71 | ||
| 67 | rw->counter++; | 72 | rw->counter++; |
| 68 | 73 | ||
| 69 | __raw_spin_unlock(&rw->lock); | 74 | __raw_spin_unlock(&rw->lock); |
| 70 | local_irq_restore(flags); | ||
| 71 | } | 75 | } |
| 72 | 76 | ||
| 73 | static __inline__ void __raw_read_unlock(raw_rwlock_t *rw) | 77 | static __inline__ void __raw_read_unlock(raw_rwlock_t *rw) |
| 74 | { | 78 | { |
| 75 | unsigned long flags; | ||
| 76 | local_irq_save(flags); | ||
| 77 | __raw_spin_lock(&rw->lock); | 79 | __raw_spin_lock(&rw->lock); |
| 78 | 80 | ||
| 79 | rw->counter--; | 81 | rw->counter--; |
| 80 | 82 | ||
| 81 | __raw_spin_unlock(&rw->lock); | 83 | __raw_spin_unlock(&rw->lock); |
| 82 | local_irq_restore(flags); | ||
| 83 | } | 84 | } |
| 84 | 85 | ||
| 85 | /* write_lock is less trivial. We optimistically grab the lock and check | 86 | /* write_lock is less trivial. We optimistically grab the lock and check |
diff --git a/include/asm-parisc/tlbflush.h b/include/asm-parisc/tlbflush.h index e97aa8d1eff5..c9ec39c6fc6c 100644 --- a/include/asm-parisc/tlbflush.h +++ b/include/asm-parisc/tlbflush.h | |||
| @@ -12,21 +12,15 @@ | |||
| 12 | * N class systems, only one PxTLB inter processor broadcast can be | 12 | * N class systems, only one PxTLB inter processor broadcast can be |
| 13 | * active at any one time on the Merced bus. This tlb purge | 13 | * active at any one time on the Merced bus. This tlb purge |
| 14 | * synchronisation is fairly lightweight and harmless so we activate | 14 | * synchronisation is fairly lightweight and harmless so we activate |
| 15 | * it on all SMP systems not just the N class. */ | 15 | * it on all SMP systems not just the N class. We also need to have |
| 16 | #ifdef CONFIG_SMP | 16 | * preemption disabled on uniprocessor machines, and spin_lock does that |
| 17 | * nicely. | ||
| 18 | */ | ||
| 17 | extern spinlock_t pa_tlb_lock; | 19 | extern spinlock_t pa_tlb_lock; |
| 18 | 20 | ||
| 19 | #define purge_tlb_start(x) spin_lock(&pa_tlb_lock) | 21 | #define purge_tlb_start(x) spin_lock(&pa_tlb_lock) |
| 20 | #define purge_tlb_end(x) spin_unlock(&pa_tlb_lock) | 22 | #define purge_tlb_end(x) spin_unlock(&pa_tlb_lock) |
| 21 | 23 | ||
| 22 | #else | ||
| 23 | |||
| 24 | #define purge_tlb_start(x) do { } while(0) | ||
| 25 | #define purge_tlb_end(x) do { } while (0) | ||
| 26 | |||
| 27 | #endif | ||
| 28 | |||
| 29 | |||
| 30 | extern void flush_tlb_all(void); | 24 | extern void flush_tlb_all(void); |
| 31 | 25 | ||
| 32 | /* | 26 | /* |
| @@ -88,7 +82,6 @@ static inline void flush_tlb_range(struct vm_area_struct *vma, | |||
| 88 | if (npages >= 512) /* 2MB of space: arbitrary, should be tuned */ | 82 | if (npages >= 512) /* 2MB of space: arbitrary, should be tuned */ |
| 89 | flush_tlb_all(); | 83 | flush_tlb_all(); |
| 90 | else { | 84 | else { |
| 91 | preempt_disable(); | ||
| 92 | mtsp(vma->vm_mm->context,1); | 85 | mtsp(vma->vm_mm->context,1); |
| 93 | purge_tlb_start(); | 86 | purge_tlb_start(); |
| 94 | if (split_tlb) { | 87 | if (split_tlb) { |
| @@ -102,7 +95,6 @@ static inline void flush_tlb_range(struct vm_area_struct *vma, | |||
| 102 | pdtlb(start); | 95 | pdtlb(start); |
| 103 | start += PAGE_SIZE; | 96 | start += PAGE_SIZE; |
| 104 | } | 97 | } |
| 105 | preempt_enable(); | ||
| 106 | } | 98 | } |
| 107 | purge_tlb_end(); | 99 | purge_tlb_end(); |
| 108 | } | 100 | } |
diff --git a/include/asm-powerpc/page_64.h b/include/asm-powerpc/page_64.h index c16f106b5373..1e6e7846824f 100644 --- a/include/asm-powerpc/page_64.h +++ b/include/asm-powerpc/page_64.h | |||
| @@ -86,7 +86,11 @@ static inline void copy_page(void *to, void *from) | |||
| 86 | extern u64 ppc64_pft_size; | 86 | extern u64 ppc64_pft_size; |
| 87 | 87 | ||
| 88 | /* Large pages size */ | 88 | /* Large pages size */ |
| 89 | #ifdef CONFIG_HUGETLB_PAGE | ||
| 89 | extern unsigned int HPAGE_SHIFT; | 90 | extern unsigned int HPAGE_SHIFT; |
| 91 | #else | ||
| 92 | #define HPAGE_SHIFT PAGE_SHIFT | ||
| 93 | #endif | ||
| 90 | #define HPAGE_SIZE ((1UL) << HPAGE_SHIFT) | 94 | #define HPAGE_SIZE ((1UL) << HPAGE_SHIFT) |
| 91 | #define HPAGE_MASK (~(HPAGE_SIZE - 1)) | 95 | #define HPAGE_MASK (~(HPAGE_SIZE - 1)) |
| 92 | #define HUGETLB_PAGE_ORDER (HPAGE_SHIFT - PAGE_SHIFT) | 96 | #define HUGETLB_PAGE_ORDER (HPAGE_SHIFT - PAGE_SHIFT) |
diff --git a/include/asm-ppc/cpm2.h b/include/asm-ppc/cpm2.h index 43d2ebbc7748..b638b87cebe3 100644 --- a/include/asm-ppc/cpm2.h +++ b/include/asm-ppc/cpm2.h | |||
| @@ -1091,5 +1091,7 @@ typedef struct im_idma { | |||
| 1091 | #define CPM_IMMR_OFFSET 0x101a8 | 1091 | #define CPM_IMMR_OFFSET 0x101a8 |
| 1092 | #endif | 1092 | #endif |
| 1093 | 1093 | ||
| 1094 | #define FCC_PSMR_RMII ((uint)0x00020000) /* Use RMII interface */ | ||
| 1095 | |||
| 1094 | #endif /* __CPM2__ */ | 1096 | #endif /* __CPM2__ */ |
| 1095 | #endif /* __KERNEL__ */ | 1097 | #endif /* __KERNEL__ */ |
diff --git a/include/linux/cciss_ioctl.h b/include/linux/cciss_ioctl.h index 424d5e622b43..6e27f42e3a57 100644 --- a/include/linux/cciss_ioctl.h +++ b/include/linux/cciss_ioctl.h | |||
| @@ -10,8 +10,8 @@ | |||
| 10 | typedef struct _cciss_pci_info_struct | 10 | typedef struct _cciss_pci_info_struct |
| 11 | { | 11 | { |
| 12 | unsigned char bus; | 12 | unsigned char bus; |
| 13 | unsigned short domain; | ||
| 14 | unsigned char dev_fn; | 13 | unsigned char dev_fn; |
| 14 | unsigned short domain; | ||
| 15 | __u32 board_id; | 15 | __u32 board_id; |
| 16 | } cciss_pci_info_struct; | 16 | } cciss_pci_info_struct; |
| 17 | 17 | ||
diff --git a/include/linux/ds17287rtc.h b/include/linux/ds17287rtc.h new file mode 100644 index 000000000000..c281ba42e28f --- /dev/null +++ b/include/linux/ds17287rtc.h | |||
| @@ -0,0 +1,67 @@ | |||
| 1 | /* | ||
| 2 | * ds17287rtc.h - register definitions for the ds1728[57] RTC / CMOS RAM | ||
| 3 | * | ||
| 4 | * This file is subject to the terms and conditions of the GNU General Public | ||
| 5 | * License. See the file "COPYING" in the main directory of this archive | ||
| 6 | * for more details. | ||
| 7 | * | ||
| 8 | * (C) 2003 Guido Guenther <agx@sigxcpu.org> | ||
| 9 | */ | ||
| 10 | #ifndef __LINUX_DS17287RTC_H | ||
| 11 | #define __LINUX_DS17287RTC_H | ||
| 12 | |||
| 13 | #include <linux/rtc.h> /* get the user-level API */ | ||
| 14 | #include <linux/spinlock.h> /* spinlock_t */ | ||
| 15 | #include <linux/mc146818rtc.h> | ||
| 16 | |||
| 17 | /* Register A */ | ||
| 18 | #define DS_REGA_DV2 0x40 /* countdown chain */ | ||
| 19 | #define DS_REGA_DV1 0x20 /* oscillator enable */ | ||
| 20 | #define DS_REGA_DV0 0x10 /* bank select */ | ||
| 21 | |||
| 22 | /* bank 1 registers */ | ||
| 23 | #define DS_B1_MODEL 0x40 /* model number byte */ | ||
| 24 | #define DS_B1_SN1 0x41 /* serial number byte 1 */ | ||
| 25 | #define DS_B1_SN2 0x42 /* serial number byte 2 */ | ||
| 26 | #define DS_B1_SN3 0x43 /* serial number byte 3 */ | ||
| 27 | #define DS_B1_SN4 0x44 /* serial number byte 4 */ | ||
| 28 | #define DS_B1_SN5 0x45 /* serial number byte 5 */ | ||
| 29 | #define DS_B1_SN6 0x46 /* serial number byte 6 */ | ||
| 30 | #define DS_B1_CRC 0x47 /* CRC byte */ | ||
| 31 | #define DS_B1_CENTURY 0x48 /* Century byte */ | ||
| 32 | #define DS_B1_DALARM 0x49 /* date alarm */ | ||
| 33 | #define DS_B1_XCTRL4A 0x4a /* extendec control register 4a */ | ||
| 34 | #define DS_B1_XCTRL4B 0x4b /* extendec control register 4b */ | ||
| 35 | #define DS_B1_RTCADDR2 0x4e /* rtc address 2 */ | ||
| 36 | #define DS_B1_RTCADDR3 0x4f /* rtc address 3 */ | ||
| 37 | #define DS_B1_RAMLSB 0x50 /* extended ram LSB */ | ||
| 38 | #define DS_B1_RAMMSB 0x51 /* extended ram MSB */ | ||
| 39 | #define DS_B1_RAMDPORT 0x53 /* extended ram data port */ | ||
| 40 | |||
| 41 | /* register details */ | ||
| 42 | /* extended control register 4a */ | ||
| 43 | #define DS_XCTRL4A_VRT2 0x80 /* valid ram and time */ | ||
| 44 | #define DS_XCTRL4A_INCR 0x40 /* increment progress status */ | ||
| 45 | #define DS_XCTRL4A_BME 0x20 /* burst mode enable */ | ||
| 46 | #define DS_XCTRL4A_PAB 0x08 /* power active bar ctrl */ | ||
| 47 | #define DS_XCTRL4A_RF 0x04 /* ram clear flag */ | ||
| 48 | #define DS_XCTRL4A_WF 0x02 /* wake up alarm flag */ | ||
| 49 | #define DS_XCTRL4A_KF 0x01 /* kickstart flag */ | ||
| 50 | |||
| 51 | /* interrupt causes */ | ||
| 52 | #define DS_XCTRL4A_IFS (DS_XCTRL4A_RF|DS_XCTRL4A_WF|DS_XCTRL4A_KF) | ||
| 53 | |||
| 54 | /* extended control register 4b */ | ||
| 55 | #define DS_XCTRL4B_ABE 0x80 /* auxiliary battery enable */ | ||
| 56 | #define DS_XCTRL4B_E32K 0x40 /* enable 32.768 kHz Output */ | ||
| 57 | #define DS_XCTRL4B_CS 0x20 /* crystal select */ | ||
| 58 | #define DS_XCTRL4B_RCE 0x10 /* ram clear enable */ | ||
| 59 | #define DS_XCTRL4B_PRS 0x08 /* PAB resec select */ | ||
| 60 | #define DS_XCTRL4B_RIE 0x04 /* ram clear interrupt enable */ | ||
| 61 | #define DS_XCTRL4B_WFE 0x02 /* wake up alarm interrupt enable */ | ||
| 62 | #define DS_XCTRL4B_KFE 0x01 /* kickstart interrupt enable */ | ||
| 63 | |||
| 64 | /* interrupt enable bits */ | ||
| 65 | #define DS_XCTRL4B_IFES (DS_XCTRL4B_RIE|DS_XCTRL4B_WFE|DS_XCTRL4B_KFE) | ||
| 66 | |||
| 67 | #endif /* __LINUX_DS17287RTC_H */ | ||
diff --git a/include/linux/ds1742rtc.h b/include/linux/ds1742rtc.h new file mode 100644 index 000000000000..a83cdd1cafc9 --- /dev/null +++ b/include/linux/ds1742rtc.h | |||
| @@ -0,0 +1,53 @@ | |||
| 1 | /* | ||
| 2 | * ds1742rtc.h - register definitions for the Real-Time-Clock / CMOS RAM | ||
| 3 | * | ||
| 4 | * Copyright (C) 1999-2001 Toshiba Corporation | ||
| 5 | * Copyright (C) 2003 Ralf Baechle (ralf@linux-mips.org) | ||
| 6 | * | ||
| 7 | * Permission is hereby granted to copy, modify and redistribute this code | ||
| 8 | * in terms of the GNU Library General Public License, Version 2 or later, | ||
| 9 | * at your option. | ||
| 10 | */ | ||
| 11 | #ifndef __LINUX_DS1742RTC_H | ||
| 12 | #define __LINUX_DS1742RTC_H | ||
| 13 | |||
| 14 | #include <asm/ds1742.h> | ||
| 15 | |||
| 16 | #define RTC_BRAM_SIZE 0x800 | ||
| 17 | #define RTC_OFFSET 0x7f8 | ||
| 18 | |||
| 19 | /* | ||
| 20 | * Register summary | ||
| 21 | */ | ||
| 22 | #define RTC_CONTROL (RTC_OFFSET + 0) | ||
| 23 | #define RTC_CENTURY (RTC_OFFSET + 0) | ||
| 24 | #define RTC_SECONDS (RTC_OFFSET + 1) | ||
| 25 | #define RTC_MINUTES (RTC_OFFSET + 2) | ||
| 26 | #define RTC_HOURS (RTC_OFFSET + 3) | ||
| 27 | #define RTC_DAY (RTC_OFFSET + 4) | ||
| 28 | #define RTC_DATE (RTC_OFFSET + 5) | ||
| 29 | #define RTC_MONTH (RTC_OFFSET + 6) | ||
| 30 | #define RTC_YEAR (RTC_OFFSET + 7) | ||
| 31 | |||
| 32 | #define RTC_CENTURY_MASK 0x3f | ||
| 33 | #define RTC_SECONDS_MASK 0x7f | ||
| 34 | #define RTC_DAY_MASK 0x07 | ||
| 35 | |||
| 36 | /* | ||
| 37 | * Bits in the Control/Century register | ||
| 38 | */ | ||
| 39 | #define RTC_WRITE 0x80 | ||
| 40 | #define RTC_READ 0x40 | ||
| 41 | |||
| 42 | /* | ||
| 43 | * Bits in the Seconds register | ||
| 44 | */ | ||
| 45 | #define RTC_STOP 0x80 | ||
| 46 | |||
| 47 | /* | ||
| 48 | * Bits in the Day register | ||
| 49 | */ | ||
| 50 | #define RTC_BATT_FLAG 0x80 | ||
| 51 | #define RTC_FREQ_TEST 0x40 | ||
| 52 | |||
| 53 | #endif /* __LINUX_DS1742RTC_H */ | ||
diff --git a/include/linux/ide.h b/include/linux/ide.h index ac8b25fa6506..e99019057ba6 100644 --- a/include/linux/ide.h +++ b/include/linux/ide.h | |||
| @@ -1089,9 +1089,11 @@ enum { | |||
| 1089 | 1089 | ||
| 1090 | /* | 1090 | /* |
| 1091 | * Subdrivers support. | 1091 | * Subdrivers support. |
| 1092 | * | ||
| 1093 | * The gendriver.owner field should be set to the module owner of this driver. | ||
| 1094 | * The gendriver.name field should be set to the name of this driver | ||
| 1092 | */ | 1095 | */ |
| 1093 | typedef struct ide_driver_s { | 1096 | typedef struct ide_driver_s { |
| 1094 | struct module *owner; | ||
| 1095 | const char *version; | 1097 | const char *version; |
| 1096 | u8 media; | 1098 | u8 media; |
| 1097 | unsigned supports_dsc_overlap : 1; | 1099 | unsigned supports_dsc_overlap : 1; |
diff --git a/include/linux/mm.h b/include/linux/mm.h index 1013a42d10b1..0986d19be0b7 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h | |||
| @@ -940,7 +940,9 @@ unsigned long max_sane_readahead(unsigned long nr); | |||
| 940 | 940 | ||
| 941 | /* Do stack extension */ | 941 | /* Do stack extension */ |
| 942 | extern int expand_stack(struct vm_area_struct *vma, unsigned long address); | 942 | extern int expand_stack(struct vm_area_struct *vma, unsigned long address); |
| 943 | #ifdef CONFIG_IA64 | ||
| 943 | extern int expand_upwards(struct vm_area_struct *vma, unsigned long address); | 944 | extern int expand_upwards(struct vm_area_struct *vma, unsigned long address); |
| 945 | #endif | ||
| 944 | 946 | ||
| 945 | /* Look up the first VMA which satisfies addr < vm_end, NULL if none. */ | 947 | /* Look up the first VMA which satisfies addr < vm_end, NULL if none. */ |
| 946 | extern struct vm_area_struct * find_vma(struct mm_struct * mm, unsigned long addr); | 948 | extern struct vm_area_struct * find_vma(struct mm_struct * mm, unsigned long addr); |
diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h index d4c1c8fd2925..7b387faedb4d 100644 --- a/include/linux/pci_ids.h +++ b/include/linux/pci_ids.h | |||
| @@ -1401,6 +1401,7 @@ | |||
| 1401 | #define PCI_SUBDEVICE_ID_KEYSPAN_SX2 0x5334 | 1401 | #define PCI_SUBDEVICE_ID_KEYSPAN_SX2 0x5334 |
| 1402 | 1402 | ||
| 1403 | #define PCI_VENDOR_ID_MARVELL 0x11ab | 1403 | #define PCI_VENDOR_ID_MARVELL 0x11ab |
| 1404 | #define PCI_DEVICE_ID_MARVELL_GT64111 0x4146 | ||
| 1404 | #define PCI_DEVICE_ID_MARVELL_GT64260 0x6430 | 1405 | #define PCI_DEVICE_ID_MARVELL_GT64260 0x6430 |
| 1405 | #define PCI_DEVICE_ID_MARVELL_MV64360 0x6460 | 1406 | #define PCI_DEVICE_ID_MARVELL_MV64360 0x6460 |
| 1406 | #define PCI_DEVICE_ID_MARVELL_MV64460 0x6480 | 1407 | #define PCI_DEVICE_ID_MARVELL_MV64460 0x6480 |
diff --git a/include/net/ieee80211.h b/include/net/ieee80211.h index b93fd8c1d884..cde2f4f4f501 100644 --- a/include/net/ieee80211.h +++ b/include/net/ieee80211.h | |||
| @@ -1042,7 +1042,7 @@ static inline u8 *ieee80211_get_payload(struct ieee80211_hdr *hdr) | |||
| 1042 | case IEEE80211_4ADDR_LEN: | 1042 | case IEEE80211_4ADDR_LEN: |
| 1043 | return ((struct ieee80211_hdr_4addr *)hdr)->payload; | 1043 | return ((struct ieee80211_hdr_4addr *)hdr)->payload; |
| 1044 | } | 1044 | } |
| 1045 | 1045 | return NULL; | |
| 1046 | } | 1046 | } |
| 1047 | 1047 | ||
| 1048 | static inline int ieee80211_is_ofdm_rate(u8 rate) | 1048 | static inline int ieee80211_is_ofdm_rate(u8 rate) |
diff --git a/kernel/rcutorture.c b/kernel/rcutorture.c index eb6719c50b4e..88c28d476550 100644 --- a/kernel/rcutorture.c +++ b/kernel/rcutorture.c | |||
| @@ -80,6 +80,7 @@ struct rcu_torture { | |||
| 80 | struct rcu_head rtort_rcu; | 80 | struct rcu_head rtort_rcu; |
| 81 | int rtort_pipe_count; | 81 | int rtort_pipe_count; |
| 82 | struct list_head rtort_free; | 82 | struct list_head rtort_free; |
| 83 | int rtort_mbtest; | ||
| 83 | }; | 84 | }; |
| 84 | 85 | ||
| 85 | static int fullstop = 0; /* stop generating callbacks at test end. */ | 86 | static int fullstop = 0; /* stop generating callbacks at test end. */ |
| @@ -96,6 +97,8 @@ static atomic_t rcu_torture_wcount[RCU_TORTURE_PIPE_LEN + 1]; | |||
| 96 | atomic_t n_rcu_torture_alloc; | 97 | atomic_t n_rcu_torture_alloc; |
| 97 | atomic_t n_rcu_torture_alloc_fail; | 98 | atomic_t n_rcu_torture_alloc_fail; |
| 98 | atomic_t n_rcu_torture_free; | 99 | atomic_t n_rcu_torture_free; |
| 100 | atomic_t n_rcu_torture_mberror; | ||
| 101 | atomic_t n_rcu_torture_error; | ||
| 99 | 102 | ||
| 100 | /* | 103 | /* |
| 101 | * Allocate an element from the rcu_tortures pool. | 104 | * Allocate an element from the rcu_tortures pool. |
| @@ -145,9 +148,10 @@ rcu_torture_cb(struct rcu_head *p) | |||
| 145 | if (i > RCU_TORTURE_PIPE_LEN) | 148 | if (i > RCU_TORTURE_PIPE_LEN) |
| 146 | i = RCU_TORTURE_PIPE_LEN; | 149 | i = RCU_TORTURE_PIPE_LEN; |
| 147 | atomic_inc(&rcu_torture_wcount[i]); | 150 | atomic_inc(&rcu_torture_wcount[i]); |
| 148 | if (++rp->rtort_pipe_count >= RCU_TORTURE_PIPE_LEN) | 151 | if (++rp->rtort_pipe_count >= RCU_TORTURE_PIPE_LEN) { |
| 152 | rp->rtort_mbtest = 0; | ||
| 149 | rcu_torture_free(rp); | 153 | rcu_torture_free(rp); |
| 150 | else | 154 | } else |
| 151 | call_rcu(p, rcu_torture_cb); | 155 | call_rcu(p, rcu_torture_cb); |
| 152 | } | 156 | } |
| 153 | 157 | ||
| @@ -206,6 +210,7 @@ rcu_torture_writer(void *arg) | |||
| 206 | rp->rtort_pipe_count = 0; | 210 | rp->rtort_pipe_count = 0; |
| 207 | udelay(rcu_random(&rand) & 0x3ff); | 211 | udelay(rcu_random(&rand) & 0x3ff); |
| 208 | old_rp = rcu_torture_current; | 212 | old_rp = rcu_torture_current; |
| 213 | rp->rtort_mbtest = 1; | ||
| 209 | rcu_assign_pointer(rcu_torture_current, rp); | 214 | rcu_assign_pointer(rcu_torture_current, rp); |
| 210 | smp_wmb(); | 215 | smp_wmb(); |
| 211 | if (old_rp != NULL) { | 216 | if (old_rp != NULL) { |
| @@ -252,6 +257,8 @@ rcu_torture_reader(void *arg) | |||
| 252 | schedule_timeout_interruptible(HZ); | 257 | schedule_timeout_interruptible(HZ); |
| 253 | continue; | 258 | continue; |
| 254 | } | 259 | } |
| 260 | if (p->rtort_mbtest == 0) | ||
| 261 | atomic_inc(&n_rcu_torture_mberror); | ||
| 255 | udelay(rcu_random(&rand) & 0x7f); | 262 | udelay(rcu_random(&rand) & 0x7f); |
| 256 | preempt_disable(); | 263 | preempt_disable(); |
| 257 | pipe_count = p->rtort_pipe_count; | 264 | pipe_count = p->rtort_pipe_count; |
| @@ -300,16 +307,22 @@ rcu_torture_printk(char *page) | |||
| 300 | } | 307 | } |
| 301 | cnt += sprintf(&page[cnt], "rcutorture: "); | 308 | cnt += sprintf(&page[cnt], "rcutorture: "); |
| 302 | cnt += sprintf(&page[cnt], | 309 | cnt += sprintf(&page[cnt], |
| 303 | "rtc: %p ver: %ld tfle: %d rta: %d rtaf: %d rtf: %d", | 310 | "rtc: %p ver: %ld tfle: %d rta: %d rtaf: %d rtf: %d " |
| 311 | "rtmbe: %d", | ||
| 304 | rcu_torture_current, | 312 | rcu_torture_current, |
| 305 | rcu_torture_current_version, | 313 | rcu_torture_current_version, |
| 306 | list_empty(&rcu_torture_freelist), | 314 | list_empty(&rcu_torture_freelist), |
| 307 | atomic_read(&n_rcu_torture_alloc), | 315 | atomic_read(&n_rcu_torture_alloc), |
| 308 | atomic_read(&n_rcu_torture_alloc_fail), | 316 | atomic_read(&n_rcu_torture_alloc_fail), |
| 309 | atomic_read(&n_rcu_torture_free)); | 317 | atomic_read(&n_rcu_torture_free), |
| 318 | atomic_read(&n_rcu_torture_mberror)); | ||
| 319 | if (atomic_read(&n_rcu_torture_mberror) != 0) | ||
| 320 | cnt += sprintf(&page[cnt], " !!!"); | ||
| 310 | cnt += sprintf(&page[cnt], "\nrcutorture: "); | 321 | cnt += sprintf(&page[cnt], "\nrcutorture: "); |
| 311 | if (i > 1) | 322 | if (i > 1) { |
| 312 | cnt += sprintf(&page[cnt], "!!! "); | 323 | cnt += sprintf(&page[cnt], "!!! "); |
| 324 | atomic_inc(&n_rcu_torture_error); | ||
| 325 | } | ||
| 313 | cnt += sprintf(&page[cnt], "Reader Pipe: "); | 326 | cnt += sprintf(&page[cnt], "Reader Pipe: "); |
| 314 | for (i = 0; i < RCU_TORTURE_PIPE_LEN + 1; i++) | 327 | for (i = 0; i < RCU_TORTURE_PIPE_LEN + 1; i++) |
| 315 | cnt += sprintf(&page[cnt], " %ld", pipesummary[i]); | 328 | cnt += sprintf(&page[cnt], " %ld", pipesummary[i]); |
| @@ -400,7 +413,9 @@ rcu_torture_cleanup(void) | |||
| 400 | for (i = 0; i < RCU_TORTURE_PIPE_LEN; i++) | 413 | for (i = 0; i < RCU_TORTURE_PIPE_LEN; i++) |
| 401 | synchronize_rcu(); | 414 | synchronize_rcu(); |
| 402 | rcu_torture_stats_print(); /* -After- the stats thread is stopped! */ | 415 | rcu_torture_stats_print(); /* -After- the stats thread is stopped! */ |
| 403 | PRINTK_STRING("--- End of test"); | 416 | printk(KERN_ALERT TORTURE_FLAG |
| 417 | "--- End of test: %s\n", | ||
| 418 | atomic_read(&n_rcu_torture_error) == 0 ? "SUCCESS" : "FAILURE"); | ||
| 404 | } | 419 | } |
| 405 | 420 | ||
| 406 | static int | 421 | static int |
| @@ -425,6 +440,7 @@ rcu_torture_init(void) | |||
| 425 | 440 | ||
| 426 | INIT_LIST_HEAD(&rcu_torture_freelist); | 441 | INIT_LIST_HEAD(&rcu_torture_freelist); |
| 427 | for (i = 0; i < sizeof(rcu_tortures) / sizeof(rcu_tortures[0]); i++) { | 442 | for (i = 0; i < sizeof(rcu_tortures) / sizeof(rcu_tortures[0]); i++) { |
| 443 | rcu_tortures[i].rtort_mbtest = 0; | ||
| 428 | list_add_tail(&rcu_tortures[i].rtort_free, | 444 | list_add_tail(&rcu_tortures[i].rtort_free, |
| 429 | &rcu_torture_freelist); | 445 | &rcu_torture_freelist); |
| 430 | } | 446 | } |
| @@ -436,6 +452,8 @@ rcu_torture_init(void) | |||
| 436 | atomic_set(&n_rcu_torture_alloc, 0); | 452 | atomic_set(&n_rcu_torture_alloc, 0); |
| 437 | atomic_set(&n_rcu_torture_alloc_fail, 0); | 453 | atomic_set(&n_rcu_torture_alloc_fail, 0); |
| 438 | atomic_set(&n_rcu_torture_free, 0); | 454 | atomic_set(&n_rcu_torture_free, 0); |
| 455 | atomic_set(&n_rcu_torture_mberror, 0); | ||
| 456 | atomic_set(&n_rcu_torture_error, 0); | ||
| 439 | for (i = 0; i < RCU_TORTURE_PIPE_LEN + 1; i++) | 457 | for (i = 0; i < RCU_TORTURE_PIPE_LEN + 1; i++) |
| 440 | atomic_set(&rcu_torture_wcount[i], 0); | 458 | atomic_set(&rcu_torture_wcount[i], 0); |
| 441 | for_each_cpu(cpu) { | 459 | for_each_cpu(cpu) { |
| @@ -1501,7 +1501,7 @@ static int acct_stack_growth(struct vm_area_struct * vma, unsigned long size, un | |||
| 1501 | * PA-RISC uses this for its stack; IA64 for its Register Backing Store. | 1501 | * PA-RISC uses this for its stack; IA64 for its Register Backing Store. |
| 1502 | * vma is the last one with address > vma->vm_end. Have to extend vma. | 1502 | * vma is the last one with address > vma->vm_end. Have to extend vma. |
| 1503 | */ | 1503 | */ |
| 1504 | #ifdef CONFIG_STACK_GROWSUP | 1504 | #ifndef CONFIG_IA64 |
| 1505 | static inline | 1505 | static inline |
| 1506 | #endif | 1506 | #endif |
| 1507 | int expand_upwards(struct vm_area_struct *vma, unsigned long address) | 1507 | int expand_upwards(struct vm_area_struct *vma, unsigned long address) |
diff --git a/mm/page-writeback.c b/mm/page-writeback.c index 74138c9a22b9..0166ea15c9ee 100644 --- a/mm/page-writeback.c +++ b/mm/page-writeback.c | |||
| @@ -750,6 +750,7 @@ int clear_page_dirty_for_io(struct page *page) | |||
| 750 | } | 750 | } |
| 751 | return TestClearPageDirty(page); | 751 | return TestClearPageDirty(page); |
| 752 | } | 752 | } |
| 753 | EXPORT_SYMBOL(clear_page_dirty_for_io); | ||
| 753 | 754 | ||
| 754 | int test_clear_page_writeback(struct page *page) | 755 | int test_clear_page_writeback(struct page *page) |
| 755 | { | 756 | { |
diff --git a/mm/page_alloc.c b/mm/page_alloc.c index 104e69ca55e0..bd4de592dc23 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c | |||
| @@ -845,21 +845,22 @@ __alloc_pages(gfp_t gfp_mask, unsigned int order, | |||
| 845 | 845 | ||
| 846 | might_sleep_if(wait); | 846 | might_sleep_if(wait); |
| 847 | 847 | ||
| 848 | restart: | ||
| 848 | z = zonelist->zones; /* the list of zones suitable for gfp_mask */ | 849 | z = zonelist->zones; /* the list of zones suitable for gfp_mask */ |
| 849 | 850 | ||
| 850 | if (unlikely(*z == NULL)) { | 851 | if (unlikely(*z == NULL)) { |
| 851 | /* Should this ever happen?? */ | 852 | /* Should this ever happen?? */ |
| 852 | return NULL; | 853 | return NULL; |
| 853 | } | 854 | } |
| 854 | restart: | 855 | |
| 855 | page = get_page_from_freelist(gfp_mask|__GFP_HARDWALL, order, | 856 | page = get_page_from_freelist(gfp_mask|__GFP_HARDWALL, order, |
| 856 | zonelist, ALLOC_CPUSET); | 857 | zonelist, ALLOC_CPUSET); |
| 857 | if (page) | 858 | if (page) |
| 858 | goto got_pg; | 859 | goto got_pg; |
| 859 | 860 | ||
| 860 | do | 861 | do { |
| 861 | wakeup_kswapd(*z, order); | 862 | wakeup_kswapd(*z, order); |
| 862 | while (*(++z)); | 863 | } while (*(++z)); |
| 863 | 864 | ||
| 864 | /* | 865 | /* |
| 865 | * OK, we're below the kswapd watermark and have kicked background | 866 | * OK, we're below the kswapd watermark and have kicked background |
diff --git a/net/ipv4/ip_fragment.c b/net/ipv4/ip_fragment.c index e7d26d9943c2..8ce0ce2ee48e 100644 --- a/net/ipv4/ip_fragment.c +++ b/net/ipv4/ip_fragment.c | |||
| @@ -71,7 +71,7 @@ struct ipfrag_skb_cb | |||
| 71 | 71 | ||
| 72 | /* Describe an entry in the "incomplete datagrams" queue. */ | 72 | /* Describe an entry in the "incomplete datagrams" queue. */ |
| 73 | struct ipq { | 73 | struct ipq { |
| 74 | struct ipq *next; /* linked list pointers */ | 74 | struct hlist_node list; |
| 75 | struct list_head lru_list; /* lru list member */ | 75 | struct list_head lru_list; /* lru list member */ |
| 76 | u32 user; | 76 | u32 user; |
| 77 | u32 saddr; | 77 | u32 saddr; |
| @@ -89,7 +89,6 @@ struct ipq { | |||
| 89 | spinlock_t lock; | 89 | spinlock_t lock; |
| 90 | atomic_t refcnt; | 90 | atomic_t refcnt; |
| 91 | struct timer_list timer; /* when will this queue expire? */ | 91 | struct timer_list timer; /* when will this queue expire? */ |
| 92 | struct ipq **pprev; | ||
| 93 | int iif; | 92 | int iif; |
| 94 | struct timeval stamp; | 93 | struct timeval stamp; |
| 95 | }; | 94 | }; |
| @@ -99,7 +98,7 @@ struct ipq { | |||
| 99 | #define IPQ_HASHSZ 64 | 98 | #define IPQ_HASHSZ 64 |
| 100 | 99 | ||
| 101 | /* Per-bucket lock is easy to add now. */ | 100 | /* Per-bucket lock is easy to add now. */ |
| 102 | static struct ipq *ipq_hash[IPQ_HASHSZ]; | 101 | static struct hlist_head ipq_hash[IPQ_HASHSZ]; |
| 103 | static DEFINE_RWLOCK(ipfrag_lock); | 102 | static DEFINE_RWLOCK(ipfrag_lock); |
| 104 | static u32 ipfrag_hash_rnd; | 103 | static u32 ipfrag_hash_rnd; |
| 105 | static LIST_HEAD(ipq_lru_list); | 104 | static LIST_HEAD(ipq_lru_list); |
| @@ -107,9 +106,7 @@ int ip_frag_nqueues = 0; | |||
| 107 | 106 | ||
| 108 | static __inline__ void __ipq_unlink(struct ipq *qp) | 107 | static __inline__ void __ipq_unlink(struct ipq *qp) |
| 109 | { | 108 | { |
| 110 | if(qp->next) | 109 | hlist_del(&qp->list); |
| 111 | qp->next->pprev = qp->pprev; | ||
| 112 | *qp->pprev = qp->next; | ||
| 113 | list_del(&qp->lru_list); | 110 | list_del(&qp->lru_list); |
| 114 | ip_frag_nqueues--; | 111 | ip_frag_nqueues--; |
| 115 | } | 112 | } |
| @@ -139,27 +136,18 @@ static void ipfrag_secret_rebuild(unsigned long dummy) | |||
| 139 | get_random_bytes(&ipfrag_hash_rnd, sizeof(u32)); | 136 | get_random_bytes(&ipfrag_hash_rnd, sizeof(u32)); |
| 140 | for (i = 0; i < IPQ_HASHSZ; i++) { | 137 | for (i = 0; i < IPQ_HASHSZ; i++) { |
| 141 | struct ipq *q; | 138 | struct ipq *q; |
| 139 | struct hlist_node *p, *n; | ||
| 142 | 140 | ||
| 143 | q = ipq_hash[i]; | 141 | hlist_for_each_entry_safe(q, p, n, &ipq_hash[i], list) { |
| 144 | while (q) { | ||
| 145 | struct ipq *next = q->next; | ||
| 146 | unsigned int hval = ipqhashfn(q->id, q->saddr, | 142 | unsigned int hval = ipqhashfn(q->id, q->saddr, |
| 147 | q->daddr, q->protocol); | 143 | q->daddr, q->protocol); |
| 148 | 144 | ||
| 149 | if (hval != i) { | 145 | if (hval != i) { |
| 150 | /* Unlink. */ | 146 | hlist_del(&q->list); |
| 151 | if (q->next) | ||
| 152 | q->next->pprev = q->pprev; | ||
| 153 | *q->pprev = q->next; | ||
| 154 | 147 | ||
| 155 | /* Relink to new hash chain. */ | 148 | /* Relink to new hash chain. */ |
| 156 | if ((q->next = ipq_hash[hval]) != NULL) | 149 | hlist_add_head(&q->list, &ipq_hash[hval]); |
| 157 | q->next->pprev = &q->next; | ||
| 158 | ipq_hash[hval] = q; | ||
| 159 | q->pprev = &ipq_hash[hval]; | ||
| 160 | } | 150 | } |
| 161 | |||
| 162 | q = next; | ||
| 163 | } | 151 | } |
| 164 | } | 152 | } |
| 165 | write_unlock(&ipfrag_lock); | 153 | write_unlock(&ipfrag_lock); |
| @@ -310,14 +298,16 @@ out: | |||
| 310 | static struct ipq *ip_frag_intern(unsigned int hash, struct ipq *qp_in) | 298 | static struct ipq *ip_frag_intern(unsigned int hash, struct ipq *qp_in) |
| 311 | { | 299 | { |
| 312 | struct ipq *qp; | 300 | struct ipq *qp; |
| 313 | 301 | #ifdef CONFIG_SMP | |
| 302 | struct hlist_node *n; | ||
| 303 | #endif | ||
| 314 | write_lock(&ipfrag_lock); | 304 | write_lock(&ipfrag_lock); |
| 315 | #ifdef CONFIG_SMP | 305 | #ifdef CONFIG_SMP |
| 316 | /* With SMP race we have to recheck hash table, because | 306 | /* With SMP race we have to recheck hash table, because |
| 317 | * such entry could be created on other cpu, while we | 307 | * such entry could be created on other cpu, while we |
| 318 | * promoted read lock to write lock. | 308 | * promoted read lock to write lock. |
| 319 | */ | 309 | */ |
| 320 | for(qp = ipq_hash[hash]; qp; qp = qp->next) { | 310 | hlist_for_each_entry(qp, n, &ipq_hash[hash], list) { |
| 321 | if(qp->id == qp_in->id && | 311 | if(qp->id == qp_in->id && |
| 322 | qp->saddr == qp_in->saddr && | 312 | qp->saddr == qp_in->saddr && |
| 323 | qp->daddr == qp_in->daddr && | 313 | qp->daddr == qp_in->daddr && |
| @@ -337,10 +327,7 @@ static struct ipq *ip_frag_intern(unsigned int hash, struct ipq *qp_in) | |||
| 337 | atomic_inc(&qp->refcnt); | 327 | atomic_inc(&qp->refcnt); |
| 338 | 328 | ||
| 339 | atomic_inc(&qp->refcnt); | 329 | atomic_inc(&qp->refcnt); |
| 340 | if((qp->next = ipq_hash[hash]) != NULL) | 330 | hlist_add_head(&qp->list, &ipq_hash[hash]); |
| 341 | qp->next->pprev = &qp->next; | ||
| 342 | ipq_hash[hash] = qp; | ||
| 343 | qp->pprev = &ipq_hash[hash]; | ||
| 344 | INIT_LIST_HEAD(&qp->lru_list); | 331 | INIT_LIST_HEAD(&qp->lru_list); |
| 345 | list_add_tail(&qp->lru_list, &ipq_lru_list); | 332 | list_add_tail(&qp->lru_list, &ipq_lru_list); |
| 346 | ip_frag_nqueues++; | 333 | ip_frag_nqueues++; |
| @@ -392,9 +379,10 @@ static inline struct ipq *ip_find(struct iphdr *iph, u32 user) | |||
| 392 | __u8 protocol = iph->protocol; | 379 | __u8 protocol = iph->protocol; |
| 393 | unsigned int hash = ipqhashfn(id, saddr, daddr, protocol); | 380 | unsigned int hash = ipqhashfn(id, saddr, daddr, protocol); |
| 394 | struct ipq *qp; | 381 | struct ipq *qp; |
| 382 | struct hlist_node *n; | ||
| 395 | 383 | ||
| 396 | read_lock(&ipfrag_lock); | 384 | read_lock(&ipfrag_lock); |
| 397 | for(qp = ipq_hash[hash]; qp; qp = qp->next) { | 385 | hlist_for_each_entry(qp, n, &ipq_hash[hash], list) { |
| 398 | if(qp->id == id && | 386 | if(qp->id == id && |
| 399 | qp->saddr == saddr && | 387 | qp->saddr == saddr && |
| 400 | qp->daddr == daddr && | 388 | qp->daddr == daddr && |
diff --git a/net/ipv4/netfilter/ip_conntrack_ftp.c b/net/ipv4/netfilter/ip_conntrack_ftp.c index d77d6b3f5f80..59e12b02b22c 100644 --- a/net/ipv4/netfilter/ip_conntrack_ftp.c +++ b/net/ipv4/netfilter/ip_conntrack_ftp.c | |||
| @@ -29,9 +29,9 @@ static char *ftp_buffer; | |||
| 29 | static DEFINE_SPINLOCK(ip_ftp_lock); | 29 | static DEFINE_SPINLOCK(ip_ftp_lock); |
| 30 | 30 | ||
| 31 | #define MAX_PORTS 8 | 31 | #define MAX_PORTS 8 |
| 32 | static short ports[MAX_PORTS]; | 32 | static unsigned short ports[MAX_PORTS]; |
| 33 | static int ports_c; | 33 | static int ports_c; |
| 34 | module_param_array(ports, short, &ports_c, 0400); | 34 | module_param_array(ports, ushort, &ports_c, 0400); |
| 35 | 35 | ||
| 36 | static int loose; | 36 | static int loose; |
| 37 | module_param(loose, int, 0600); | 37 | module_param(loose, int, 0600); |
diff --git a/net/ipv4/netfilter/ip_conntrack_irc.c b/net/ipv4/netfilter/ip_conntrack_irc.c index 15457415a4f3..2dea1db14406 100644 --- a/net/ipv4/netfilter/ip_conntrack_irc.c +++ b/net/ipv4/netfilter/ip_conntrack_irc.c | |||
| @@ -34,7 +34,7 @@ | |||
| 34 | #include <linux/moduleparam.h> | 34 | #include <linux/moduleparam.h> |
| 35 | 35 | ||
| 36 | #define MAX_PORTS 8 | 36 | #define MAX_PORTS 8 |
| 37 | static short ports[MAX_PORTS]; | 37 | static unsigned short ports[MAX_PORTS]; |
| 38 | static int ports_c; | 38 | static int ports_c; |
| 39 | static int max_dcc_channels = 8; | 39 | static int max_dcc_channels = 8; |
| 40 | static unsigned int dcc_timeout = 300; | 40 | static unsigned int dcc_timeout = 300; |
| @@ -52,7 +52,7 @@ EXPORT_SYMBOL_GPL(ip_nat_irc_hook); | |||
| 52 | MODULE_AUTHOR("Harald Welte <laforge@netfilter.org>"); | 52 | MODULE_AUTHOR("Harald Welte <laforge@netfilter.org>"); |
| 53 | MODULE_DESCRIPTION("IRC (DCC) connection tracking helper"); | 53 | MODULE_DESCRIPTION("IRC (DCC) connection tracking helper"); |
| 54 | MODULE_LICENSE("GPL"); | 54 | MODULE_LICENSE("GPL"); |
| 55 | module_param_array(ports, short, &ports_c, 0400); | 55 | module_param_array(ports, ushort, &ports_c, 0400); |
| 56 | MODULE_PARM_DESC(ports, "port numbers of IRC servers"); | 56 | MODULE_PARM_DESC(ports, "port numbers of IRC servers"); |
| 57 | module_param(max_dcc_channels, int, 0400); | 57 | module_param(max_dcc_channels, int, 0400); |
| 58 | MODULE_PARM_DESC(max_dcc_channels, "max number of expected DCC channels per IRC session"); | 58 | MODULE_PARM_DESC(max_dcc_channels, "max number of expected DCC channels per IRC session"); |
diff --git a/net/ipv4/netfilter/ip_conntrack_tftp.c b/net/ipv4/netfilter/ip_conntrack_tftp.c index a78736b8525d..d3c5a371f993 100644 --- a/net/ipv4/netfilter/ip_conntrack_tftp.c +++ b/net/ipv4/netfilter/ip_conntrack_tftp.c | |||
| @@ -26,9 +26,9 @@ MODULE_DESCRIPTION("tftp connection tracking helper"); | |||
| 26 | MODULE_LICENSE("GPL"); | 26 | MODULE_LICENSE("GPL"); |
| 27 | 27 | ||
| 28 | #define MAX_PORTS 8 | 28 | #define MAX_PORTS 8 |
| 29 | static short ports[MAX_PORTS]; | 29 | static unsigned short ports[MAX_PORTS]; |
| 30 | static int ports_c; | 30 | static int ports_c; |
| 31 | module_param_array(ports, short, &ports_c, 0400); | 31 | module_param_array(ports, ushort, &ports_c, 0400); |
| 32 | MODULE_PARM_DESC(ports, "port numbers of tftp servers"); | 32 | MODULE_PARM_DESC(ports, "port numbers of tftp servers"); |
| 33 | 33 | ||
| 34 | #if 0 | 34 | #if 0 |
diff --git a/net/ipv4/tcp_highspeed.c b/net/ipv4/tcp_highspeed.c index 82b3c189bd7d..63cf7e540847 100644 --- a/net/ipv4/tcp_highspeed.c +++ b/net/ipv4/tcp_highspeed.c | |||
| @@ -111,7 +111,7 @@ static void hstcp_init(struct sock *sk) | |||
| 111 | } | 111 | } |
| 112 | 112 | ||
| 113 | static void hstcp_cong_avoid(struct sock *sk, u32 adk, u32 rtt, | 113 | static void hstcp_cong_avoid(struct sock *sk, u32 adk, u32 rtt, |
| 114 | u32 in_flight, u32 pkts_acked) | 114 | u32 in_flight, int data_acked) |
| 115 | { | 115 | { |
| 116 | struct tcp_sock *tp = tcp_sk(sk); | 116 | struct tcp_sock *tp = tcp_sk(sk); |
| 117 | struct hstcp *ca = inet_csk_ca(sk); | 117 | struct hstcp *ca = inet_csk_ca(sk); |
diff --git a/net/ipv6/reassembly.c b/net/ipv6/reassembly.c index e4fe9ee484dd..5d316cb72ec9 100644 --- a/net/ipv6/reassembly.c +++ b/net/ipv6/reassembly.c | |||
| @@ -74,7 +74,7 @@ struct ip6frag_skb_cb | |||
| 74 | 74 | ||
| 75 | struct frag_queue | 75 | struct frag_queue |
| 76 | { | 76 | { |
| 77 | struct frag_queue *next; | 77 | struct hlist_node list; |
| 78 | struct list_head lru_list; /* lru list member */ | 78 | struct list_head lru_list; /* lru list member */ |
| 79 | 79 | ||
| 80 | __u32 id; /* fragment id */ | 80 | __u32 id; /* fragment id */ |
| @@ -95,14 +95,13 @@ struct frag_queue | |||
| 95 | #define FIRST_IN 2 | 95 | #define FIRST_IN 2 |
| 96 | #define LAST_IN 1 | 96 | #define LAST_IN 1 |
| 97 | __u16 nhoffset; | 97 | __u16 nhoffset; |
| 98 | struct frag_queue **pprev; | ||
| 99 | }; | 98 | }; |
| 100 | 99 | ||
| 101 | /* Hash table. */ | 100 | /* Hash table. */ |
| 102 | 101 | ||
| 103 | #define IP6Q_HASHSZ 64 | 102 | #define IP6Q_HASHSZ 64 |
| 104 | 103 | ||
| 105 | static struct frag_queue *ip6_frag_hash[IP6Q_HASHSZ]; | 104 | static struct hlist_head ip6_frag_hash[IP6Q_HASHSZ]; |
| 106 | static DEFINE_RWLOCK(ip6_frag_lock); | 105 | static DEFINE_RWLOCK(ip6_frag_lock); |
| 107 | static u32 ip6_frag_hash_rnd; | 106 | static u32 ip6_frag_hash_rnd; |
| 108 | static LIST_HEAD(ip6_frag_lru_list); | 107 | static LIST_HEAD(ip6_frag_lru_list); |
| @@ -110,9 +109,7 @@ int ip6_frag_nqueues = 0; | |||
| 110 | 109 | ||
| 111 | static __inline__ void __fq_unlink(struct frag_queue *fq) | 110 | static __inline__ void __fq_unlink(struct frag_queue *fq) |
| 112 | { | 111 | { |
| 113 | if(fq->next) | 112 | hlist_del(&fq->list); |
| 114 | fq->next->pprev = fq->pprev; | ||
| 115 | *fq->pprev = fq->next; | ||
| 116 | list_del(&fq->lru_list); | 113 | list_del(&fq->lru_list); |
| 117 | ip6_frag_nqueues--; | 114 | ip6_frag_nqueues--; |
| 118 | } | 115 | } |
| @@ -163,28 +160,21 @@ static void ip6_frag_secret_rebuild(unsigned long dummy) | |||
| 163 | get_random_bytes(&ip6_frag_hash_rnd, sizeof(u32)); | 160 | get_random_bytes(&ip6_frag_hash_rnd, sizeof(u32)); |
| 164 | for (i = 0; i < IP6Q_HASHSZ; i++) { | 161 | for (i = 0; i < IP6Q_HASHSZ; i++) { |
| 165 | struct frag_queue *q; | 162 | struct frag_queue *q; |
| 163 | struct hlist_node *p, *n; | ||
| 166 | 164 | ||
| 167 | q = ip6_frag_hash[i]; | 165 | hlist_for_each_entry_safe(q, p, n, &ip6_frag_hash[i], list) { |
| 168 | while (q) { | ||
| 169 | struct frag_queue *next = q->next; | ||
| 170 | unsigned int hval = ip6qhashfn(q->id, | 166 | unsigned int hval = ip6qhashfn(q->id, |
| 171 | &q->saddr, | 167 | &q->saddr, |
| 172 | &q->daddr); | 168 | &q->daddr); |
| 173 | 169 | ||
| 174 | if (hval != i) { | 170 | if (hval != i) { |
| 175 | /* Unlink. */ | 171 | hlist_del(&q->list); |
| 176 | if (q->next) | ||
| 177 | q->next->pprev = q->pprev; | ||
| 178 | *q->pprev = q->next; | ||
| 179 | 172 | ||
| 180 | /* Relink to new hash chain. */ | 173 | /* Relink to new hash chain. */ |
| 181 | if ((q->next = ip6_frag_hash[hval]) != NULL) | 174 | hlist_add_head(&q->list, |
| 182 | q->next->pprev = &q->next; | 175 | &ip6_frag_hash[hval]); |
| 183 | ip6_frag_hash[hval] = q; | ||
| 184 | q->pprev = &ip6_frag_hash[hval]; | ||
| 185 | } | ||
| 186 | 176 | ||
| 187 | q = next; | 177 | } |
| 188 | } | 178 | } |
| 189 | } | 179 | } |
| 190 | write_unlock(&ip6_frag_lock); | 180 | write_unlock(&ip6_frag_lock); |
| @@ -337,10 +327,13 @@ static struct frag_queue *ip6_frag_intern(unsigned int hash, | |||
| 337 | struct frag_queue *fq_in) | 327 | struct frag_queue *fq_in) |
| 338 | { | 328 | { |
| 339 | struct frag_queue *fq; | 329 | struct frag_queue *fq; |
| 330 | #ifdef CONFIG_SMP | ||
| 331 | struct hlist_node *n; | ||
| 332 | #endif | ||
| 340 | 333 | ||
| 341 | write_lock(&ip6_frag_lock); | 334 | write_lock(&ip6_frag_lock); |
| 342 | #ifdef CONFIG_SMP | 335 | #ifdef CONFIG_SMP |
| 343 | for (fq = ip6_frag_hash[hash]; fq; fq = fq->next) { | 336 | hlist_for_each_entry(fq, n, &ip6_frag_hash[hash], list) { |
| 344 | if (fq->id == fq_in->id && | 337 | if (fq->id == fq_in->id && |
| 345 | ipv6_addr_equal(&fq_in->saddr, &fq->saddr) && | 338 | ipv6_addr_equal(&fq_in->saddr, &fq->saddr) && |
| 346 | ipv6_addr_equal(&fq_in->daddr, &fq->daddr)) { | 339 | ipv6_addr_equal(&fq_in->daddr, &fq->daddr)) { |
| @@ -358,10 +351,7 @@ static struct frag_queue *ip6_frag_intern(unsigned int hash, | |||
| 358 | atomic_inc(&fq->refcnt); | 351 | atomic_inc(&fq->refcnt); |
| 359 | 352 | ||
| 360 | atomic_inc(&fq->refcnt); | 353 | atomic_inc(&fq->refcnt); |
| 361 | if((fq->next = ip6_frag_hash[hash]) != NULL) | 354 | hlist_add_head(&fq->list, &ip6_frag_hash[hash]); |
| 362 | fq->next->pprev = &fq->next; | ||
| 363 | ip6_frag_hash[hash] = fq; | ||
| 364 | fq->pprev = &ip6_frag_hash[hash]; | ||
| 365 | INIT_LIST_HEAD(&fq->lru_list); | 355 | INIT_LIST_HEAD(&fq->lru_list); |
| 366 | list_add_tail(&fq->lru_list, &ip6_frag_lru_list); | 356 | list_add_tail(&fq->lru_list, &ip6_frag_lru_list); |
| 367 | ip6_frag_nqueues++; | 357 | ip6_frag_nqueues++; |
| @@ -401,10 +391,11 @@ static __inline__ struct frag_queue * | |||
| 401 | fq_find(u32 id, struct in6_addr *src, struct in6_addr *dst) | 391 | fq_find(u32 id, struct in6_addr *src, struct in6_addr *dst) |
| 402 | { | 392 | { |
| 403 | struct frag_queue *fq; | 393 | struct frag_queue *fq; |
| 394 | struct hlist_node *n; | ||
| 404 | unsigned int hash = ip6qhashfn(id, src, dst); | 395 | unsigned int hash = ip6qhashfn(id, src, dst); |
| 405 | 396 | ||
| 406 | read_lock(&ip6_frag_lock); | 397 | read_lock(&ip6_frag_lock); |
| 407 | for(fq = ip6_frag_hash[hash]; fq; fq = fq->next) { | 398 | hlist_for_each_entry(fq, n, &ip6_frag_hash[hash], list) { |
| 408 | if (fq->id == id && | 399 | if (fq->id == id && |
| 409 | ipv6_addr_equal(src, &fq->saddr) && | 400 | ipv6_addr_equal(src, &fq->saddr) && |
| 410 | ipv6_addr_equal(dst, &fq->daddr)) { | 401 | ipv6_addr_equal(dst, &fq->daddr)) { |
diff --git a/net/ipv6/route.c b/net/ipv6/route.c index 9a71a8d1078a..a7a537b50595 100644 --- a/net/ipv6/route.c +++ b/net/ipv6/route.c | |||
| @@ -1732,7 +1732,7 @@ int inet6_dump_fib(struct sk_buff *skb, struct netlink_callback *cb) | |||
| 1732 | /* | 1732 | /* |
| 1733 | * 2. allocate and initialize walker. | 1733 | * 2. allocate and initialize walker. |
| 1734 | */ | 1734 | */ |
| 1735 | w = kmalloc(sizeof(*w), GFP_KERNEL); | 1735 | w = kmalloc(sizeof(*w), GFP_ATOMIC); |
| 1736 | if (w == NULL) | 1736 | if (w == NULL) |
| 1737 | return -ENOMEM; | 1737 | return -ENOMEM; |
| 1738 | RT6_TRACE("dump<%p", w); | 1738 | RT6_TRACE("dump<%p", w); |
diff --git a/net/llc/llc_c_ac.c b/net/llc/llc_c_ac.c index 91fb6bc1b116..8169f24ed33e 100644 --- a/net/llc/llc_c_ac.c +++ b/net/llc/llc_c_ac.c | |||
| @@ -995,8 +995,8 @@ static int llc_conn_ac_inc_npta_value(struct sock *sk, struct sk_buff *skb) | |||
| 995 | llc->dec_step = 0; | 995 | llc->dec_step = 0; |
| 996 | llc->dec_cntr = llc->inc_cntr = 2; | 996 | llc->dec_cntr = llc->inc_cntr = 2; |
| 997 | ++llc->npta; | 997 | ++llc->npta; |
| 998 | if (llc->npta > ~LLC_2_SEQ_NBR_MODULO) | 998 | if (llc->npta > (u8) ~LLC_2_SEQ_NBR_MODULO) |
| 999 | llc->npta = ~LLC_2_SEQ_NBR_MODULO ; | 999 | llc->npta = (u8) ~LLC_2_SEQ_NBR_MODULO; |
| 1000 | } else | 1000 | } else |
| 1001 | --llc->inc_cntr; | 1001 | --llc->inc_cntr; |
| 1002 | return 0; | 1002 | return 0; |
| @@ -1086,8 +1086,8 @@ int llc_conn_ac_inc_tx_win_size(struct sock *sk, struct sk_buff *skb) | |||
| 1086 | struct llc_sock *llc = llc_sk(sk); | 1086 | struct llc_sock *llc = llc_sk(sk); |
| 1087 | 1087 | ||
| 1088 | llc->k += 1; | 1088 | llc->k += 1; |
| 1089 | if (llc->k > ~LLC_2_SEQ_NBR_MODULO) | 1089 | if (llc->k > (u8) ~LLC_2_SEQ_NBR_MODULO) |
| 1090 | llc->k = ~LLC_2_SEQ_NBR_MODULO ; | 1090 | llc->k = (u8) ~LLC_2_SEQ_NBR_MODULO; |
| 1091 | return 0; | 1091 | return 0; |
| 1092 | } | 1092 | } |
| 1093 | 1093 | ||
diff --git a/net/netfilter/nf_conntrack_core.c b/net/netfilter/nf_conntrack_core.c index ea094b231d62..1da678303d78 100644 --- a/net/netfilter/nf_conntrack_core.c +++ b/net/netfilter/nf_conntrack_core.c | |||
| @@ -387,7 +387,7 @@ nf_ct_invert_tuple(struct nf_conntrack_tuple *inverse, | |||
| 387 | static void nf_ct_unlink_expect(struct nf_conntrack_expect *exp) | 387 | static void nf_ct_unlink_expect(struct nf_conntrack_expect *exp) |
| 388 | { | 388 | { |
| 389 | ASSERT_WRITE_LOCK(&nf_conntrack_lock); | 389 | ASSERT_WRITE_LOCK(&nf_conntrack_lock); |
| 390 | NF_CT_ASSERT(!timer_pending(&exp_timeout)); | 390 | NF_CT_ASSERT(!timer_pending(&exp->timeout)); |
| 391 | list_del(&exp->list); | 391 | list_del(&exp->list); |
| 392 | NF_CT_STAT_INC(expect_delete); | 392 | NF_CT_STAT_INC(expect_delete); |
| 393 | exp->master->expecting--; | 393 | exp->master->expecting--; |
diff --git a/net/sched/Kconfig b/net/sched/Kconfig index 7f34e7fd767c..55cd5327fbd7 100644 --- a/net/sched/Kconfig +++ b/net/sched/Kconfig | |||
| @@ -40,9 +40,10 @@ config NET_SCHED | |||
| 40 | The available schedulers are listed in the following questions; you | 40 | The available schedulers are listed in the following questions; you |
| 41 | can say Y to as many as you like. If unsure, say N now. | 41 | can say Y to as many as you like. If unsure, say N now. |
| 42 | 42 | ||
| 43 | if NET_SCHED | ||
| 44 | |||
| 43 | choice | 45 | choice |
| 44 | prompt "Packet scheduler clock source" | 46 | prompt "Packet scheduler clock source" |
| 45 | depends on NET_SCHED | ||
| 46 | default NET_SCH_CLK_JIFFIES | 47 | default NET_SCH_CLK_JIFFIES |
| 47 | ---help--- | 48 | ---help--- |
| 48 | Packet schedulers need a monotonic clock that increments at a static | 49 | Packet schedulers need a monotonic clock that increments at a static |
| @@ -98,11 +99,9 @@ config NET_SCH_CLK_CPU | |||
| 98 | endchoice | 99 | endchoice |
| 99 | 100 | ||
| 100 | comment "Queueing/Scheduling" | 101 | comment "Queueing/Scheduling" |
| 101 | depends on NET_SCHED | ||
| 102 | 102 | ||
| 103 | config NET_SCH_CBQ | 103 | config NET_SCH_CBQ |
| 104 | tristate "Class Based Queueing (CBQ)" | 104 | tristate "Class Based Queueing (CBQ)" |
| 105 | depends on NET_SCHED | ||
| 106 | ---help--- | 105 | ---help--- |
| 107 | Say Y here if you want to use the Class-Based Queueing (CBQ) packet | 106 | Say Y here if you want to use the Class-Based Queueing (CBQ) packet |
| 108 | scheduling algorithm. This algorithm classifies the waiting packets | 107 | scheduling algorithm. This algorithm classifies the waiting packets |
| @@ -120,7 +119,6 @@ config NET_SCH_CBQ | |||
| 120 | 119 | ||
| 121 | config NET_SCH_HTB | 120 | config NET_SCH_HTB |
| 122 | tristate "Hierarchical Token Bucket (HTB)" | 121 | tristate "Hierarchical Token Bucket (HTB)" |
| 123 | depends on NET_SCHED | ||
| 124 | ---help--- | 122 | ---help--- |
| 125 | Say Y here if you want to use the Hierarchical Token Buckets (HTB) | 123 | Say Y here if you want to use the Hierarchical Token Buckets (HTB) |
| 126 | packet scheduling algorithm. See | 124 | packet scheduling algorithm. See |
| @@ -135,7 +133,6 @@ config NET_SCH_HTB | |||
| 135 | 133 | ||
| 136 | config NET_SCH_HFSC | 134 | config NET_SCH_HFSC |
| 137 | tristate "Hierarchical Fair Service Curve (HFSC)" | 135 | tristate "Hierarchical Fair Service Curve (HFSC)" |
| 138 | depends on NET_SCHED | ||
| 139 | ---help--- | 136 | ---help--- |
| 140 | Say Y here if you want to use the Hierarchical Fair Service Curve | 137 | Say Y here if you want to use the Hierarchical Fair Service Curve |
| 141 | (HFSC) packet scheduling algorithm. | 138 | (HFSC) packet scheduling algorithm. |
| @@ -145,7 +142,7 @@ config NET_SCH_HFSC | |||
| 145 | 142 | ||
| 146 | config NET_SCH_ATM | 143 | config NET_SCH_ATM |
| 147 | tristate "ATM Virtual Circuits (ATM)" | 144 | tristate "ATM Virtual Circuits (ATM)" |
| 148 | depends on NET_SCHED && ATM | 145 | depends on ATM |
| 149 | ---help--- | 146 | ---help--- |
| 150 | Say Y here if you want to use the ATM pseudo-scheduler. This | 147 | Say Y here if you want to use the ATM pseudo-scheduler. This |
| 151 | provides a framework for invoking classifiers, which in turn | 148 | provides a framework for invoking classifiers, which in turn |
| @@ -159,7 +156,6 @@ config NET_SCH_ATM | |||
| 159 | 156 | ||
| 160 | config NET_SCH_PRIO | 157 | config NET_SCH_PRIO |
| 161 | tristate "Multi Band Priority Queueing (PRIO)" | 158 | tristate "Multi Band Priority Queueing (PRIO)" |
| 162 | depends on NET_SCHED | ||
| 163 | ---help--- | 159 | ---help--- |
| 164 | Say Y here if you want to use an n-band priority queue packet | 160 | Say Y here if you want to use an n-band priority queue packet |
| 165 | scheduler. | 161 | scheduler. |
| @@ -169,7 +165,6 @@ config NET_SCH_PRIO | |||
| 169 | 165 | ||
| 170 | config NET_SCH_RED | 166 | config NET_SCH_RED |
| 171 | tristate "Random Early Detection (RED)" | 167 | tristate "Random Early Detection (RED)" |
| 172 | depends on NET_SCHED | ||
| 173 | ---help--- | 168 | ---help--- |
| 174 | Say Y here if you want to use the Random Early Detection (RED) | 169 | Say Y here if you want to use the Random Early Detection (RED) |
| 175 | packet scheduling algorithm. | 170 | packet scheduling algorithm. |
| @@ -181,7 +176,6 @@ config NET_SCH_RED | |||
| 181 | 176 | ||
| 182 | config NET_SCH_SFQ | 177 | config NET_SCH_SFQ |
| 183 | tristate "Stochastic Fairness Queueing (SFQ)" | 178 | tristate "Stochastic Fairness Queueing (SFQ)" |
| 184 | depends on NET_SCHED | ||
| 185 | ---help--- | 179 | ---help--- |
| 186 | Say Y here if you want to use the Stochastic Fairness Queueing (SFQ) | 180 | Say Y here if you want to use the Stochastic Fairness Queueing (SFQ) |
| 187 | packet scheduling algorithm . | 181 | packet scheduling algorithm . |
| @@ -193,7 +187,6 @@ config NET_SCH_SFQ | |||
| 193 | 187 | ||
| 194 | config NET_SCH_TEQL | 188 | config NET_SCH_TEQL |
| 195 | tristate "True Link Equalizer (TEQL)" | 189 | tristate "True Link Equalizer (TEQL)" |
| 196 | depends on NET_SCHED | ||
| 197 | ---help--- | 190 | ---help--- |
| 198 | Say Y here if you want to use the True Link Equalizer (TLE) packet | 191 | Say Y here if you want to use the True Link Equalizer (TLE) packet |
| 199 | scheduling algorithm. This queueing discipline allows the combination | 192 | scheduling algorithm. This queueing discipline allows the combination |
| @@ -206,7 +199,6 @@ config NET_SCH_TEQL | |||
| 206 | 199 | ||
| 207 | config NET_SCH_TBF | 200 | config NET_SCH_TBF |
| 208 | tristate "Token Bucket Filter (TBF)" | 201 | tristate "Token Bucket Filter (TBF)" |
| 209 | depends on NET_SCHED | ||
| 210 | ---help--- | 202 | ---help--- |
| 211 | Say Y here if you want to use the Token Bucket Filter (TBF) packet | 203 | Say Y here if you want to use the Token Bucket Filter (TBF) packet |
| 212 | scheduling algorithm. | 204 | scheduling algorithm. |
| @@ -218,7 +210,6 @@ config NET_SCH_TBF | |||
| 218 | 210 | ||
| 219 | config NET_SCH_GRED | 211 | config NET_SCH_GRED |
| 220 | tristate "Generic Random Early Detection (GRED)" | 212 | tristate "Generic Random Early Detection (GRED)" |
| 221 | depends on NET_SCHED | ||
| 222 | ---help--- | 213 | ---help--- |
| 223 | Say Y here if you want to use the Generic Random Early Detection | 214 | Say Y here if you want to use the Generic Random Early Detection |
| 224 | (GRED) packet scheduling algorithm for some of your network devices | 215 | (GRED) packet scheduling algorithm for some of your network devices |
| @@ -230,7 +221,6 @@ config NET_SCH_GRED | |||
| 230 | 221 | ||
| 231 | config NET_SCH_DSMARK | 222 | config NET_SCH_DSMARK |
| 232 | tristate "Differentiated Services marker (DSMARK)" | 223 | tristate "Differentiated Services marker (DSMARK)" |
| 233 | depends on NET_SCHED | ||
| 234 | ---help--- | 224 | ---help--- |
| 235 | Say Y if you want to schedule packets according to the | 225 | Say Y if you want to schedule packets according to the |
| 236 | Differentiated Services architecture proposed in RFC 2475. | 226 | Differentiated Services architecture proposed in RFC 2475. |
| @@ -242,7 +232,6 @@ config NET_SCH_DSMARK | |||
| 242 | 232 | ||
| 243 | config NET_SCH_NETEM | 233 | config NET_SCH_NETEM |
| 244 | tristate "Network emulator (NETEM)" | 234 | tristate "Network emulator (NETEM)" |
| 245 | depends on NET_SCHED | ||
| 246 | ---help--- | 235 | ---help--- |
| 247 | Say Y if you want to emulate network delay, loss, and packet | 236 | Say Y if you want to emulate network delay, loss, and packet |
| 248 | re-ordering. This is often useful to simulate networks when | 237 | re-ordering. This is often useful to simulate networks when |
| @@ -255,7 +244,6 @@ config NET_SCH_NETEM | |||
| 255 | 244 | ||
| 256 | config NET_SCH_INGRESS | 245 | config NET_SCH_INGRESS |
| 257 | tristate "Ingress Qdisc" | 246 | tristate "Ingress Qdisc" |
| 258 | depends on NET_SCHED | ||
| 259 | ---help--- | 247 | ---help--- |
| 260 | Say Y here if you want to use classifiers for incoming packets. | 248 | Say Y here if you want to use classifiers for incoming packets. |
| 261 | If unsure, say Y. | 249 | If unsure, say Y. |
| @@ -264,14 +252,12 @@ config NET_SCH_INGRESS | |||
| 264 | module will be called sch_ingress. | 252 | module will be called sch_ingress. |
| 265 | 253 | ||
| 266 | comment "Classification" | 254 | comment "Classification" |
| 267 | depends on NET_SCHED | ||
| 268 | 255 | ||
| 269 | config NET_CLS | 256 | config NET_CLS |
| 270 | boolean | 257 | boolean |
| 271 | 258 | ||
| 272 | config NET_CLS_BASIC | 259 | config NET_CLS_BASIC |
| 273 | tristate "Elementary classification (BASIC)" | 260 | tristate "Elementary classification (BASIC)" |
| 274 | depends NET_SCHED | ||
| 275 | select NET_CLS | 261 | select NET_CLS |
| 276 | ---help--- | 262 | ---help--- |
| 277 | Say Y here if you want to be able to classify packets using | 263 | Say Y here if you want to be able to classify packets using |
| @@ -282,7 +268,6 @@ config NET_CLS_BASIC | |||
| 282 | 268 | ||
| 283 | config NET_CLS_TCINDEX | 269 | config NET_CLS_TCINDEX |
| 284 | tristate "Traffic-Control Index (TCINDEX)" | 270 | tristate "Traffic-Control Index (TCINDEX)" |
| 285 | depends NET_SCHED | ||
| 286 | select NET_CLS | 271 | select NET_CLS |
| 287 | ---help--- | 272 | ---help--- |
| 288 | Say Y here if you want to be able to classify packets based on | 273 | Say Y here if you want to be able to classify packets based on |
| @@ -294,7 +279,6 @@ config NET_CLS_TCINDEX | |||
| 294 | 279 | ||
| 295 | config NET_CLS_ROUTE4 | 280 | config NET_CLS_ROUTE4 |
| 296 | tristate "Routing decision (ROUTE)" | 281 | tristate "Routing decision (ROUTE)" |
| 297 | depends NET_SCHED | ||
| 298 | select NET_CLS_ROUTE | 282 | select NET_CLS_ROUTE |
| 299 | select NET_CLS | 283 | select NET_CLS |
| 300 | ---help--- | 284 | ---help--- |
| @@ -306,11 +290,9 @@ config NET_CLS_ROUTE4 | |||
| 306 | 290 | ||
| 307 | config NET_CLS_ROUTE | 291 | config NET_CLS_ROUTE |
| 308 | bool | 292 | bool |
| 309 | default n | ||
| 310 | 293 | ||
| 311 | config NET_CLS_FW | 294 | config NET_CLS_FW |
| 312 | tristate "Netfilter mark (FW)" | 295 | tristate "Netfilter mark (FW)" |
| 313 | depends NET_SCHED | ||
| 314 | select NET_CLS | 296 | select NET_CLS |
| 315 | ---help--- | 297 | ---help--- |
| 316 | If you say Y here, you will be able to classify packets | 298 | If you say Y here, you will be able to classify packets |
| @@ -321,7 +303,6 @@ config NET_CLS_FW | |||
| 321 | 303 | ||
| 322 | config NET_CLS_U32 | 304 | config NET_CLS_U32 |
| 323 | tristate "Universal 32bit comparisons w/ hashing (U32)" | 305 | tristate "Universal 32bit comparisons w/ hashing (U32)" |
| 324 | depends NET_SCHED | ||
| 325 | select NET_CLS | 306 | select NET_CLS |
| 326 | ---help--- | 307 | ---help--- |
| 327 | Say Y here to be able to classify packetes using a universal | 308 | Say Y here to be able to classify packetes using a universal |
| @@ -345,7 +326,6 @@ config CLS_U32_MARK | |||
| 345 | 326 | ||
| 346 | config NET_CLS_RSVP | 327 | config NET_CLS_RSVP |
| 347 | tristate "IPv4 Resource Reservation Protocol (RSVP)" | 328 | tristate "IPv4 Resource Reservation Protocol (RSVP)" |
| 348 | depends on NET_SCHED | ||
| 349 | select NET_CLS | 329 | select NET_CLS |
| 350 | select NET_ESTIMATOR | 330 | select NET_ESTIMATOR |
| 351 | ---help--- | 331 | ---help--- |
| @@ -361,7 +341,6 @@ config NET_CLS_RSVP | |||
| 361 | 341 | ||
| 362 | config NET_CLS_RSVP6 | 342 | config NET_CLS_RSVP6 |
| 363 | tristate "IPv6 Resource Reservation Protocol (RSVP6)" | 343 | tristate "IPv6 Resource Reservation Protocol (RSVP6)" |
| 364 | depends on NET_SCHED | ||
| 365 | select NET_CLS | 344 | select NET_CLS |
| 366 | select NET_ESTIMATOR | 345 | select NET_ESTIMATOR |
| 367 | ---help--- | 346 | ---help--- |
| @@ -377,7 +356,6 @@ config NET_CLS_RSVP6 | |||
| 377 | 356 | ||
| 378 | config NET_EMATCH | 357 | config NET_EMATCH |
| 379 | bool "Extended Matches" | 358 | bool "Extended Matches" |
| 380 | depends NET_SCHED | ||
| 381 | select NET_CLS | 359 | select NET_CLS |
| 382 | ---help--- | 360 | ---help--- |
| 383 | Say Y here if you want to use extended matches on top of classifiers | 361 | Say Y here if you want to use extended matches on top of classifiers |
| @@ -456,7 +434,7 @@ config NET_EMATCH_TEXT | |||
| 456 | 434 | ||
| 457 | config NET_CLS_ACT | 435 | config NET_CLS_ACT |
| 458 | bool "Actions" | 436 | bool "Actions" |
| 459 | depends on EXPERIMENTAL && NET_SCHED | 437 | depends on EXPERIMENTAL |
| 460 | select NET_ESTIMATOR | 438 | select NET_ESTIMATOR |
| 461 | ---help--- | 439 | ---help--- |
| 462 | Say Y here if you want to use traffic control actions. Actions | 440 | Say Y here if you want to use traffic control actions. Actions |
| @@ -539,7 +517,7 @@ config NET_ACT_SIMP | |||
| 539 | 517 | ||
| 540 | config NET_CLS_POLICE | 518 | config NET_CLS_POLICE |
| 541 | bool "Traffic Policing (obsolete)" | 519 | bool "Traffic Policing (obsolete)" |
| 542 | depends on NET_SCHED && NET_CLS_ACT!=y | 520 | depends on NET_CLS_ACT!=y |
| 543 | select NET_ESTIMATOR | 521 | select NET_ESTIMATOR |
| 544 | ---help--- | 522 | ---help--- |
| 545 | Say Y here if you want to do traffic policing, i.e. strict | 523 | Say Y here if you want to do traffic policing, i.e. strict |
| @@ -549,7 +527,7 @@ config NET_CLS_POLICE | |||
| 549 | 527 | ||
| 550 | config NET_CLS_IND | 528 | config NET_CLS_IND |
| 551 | bool "Incoming device classification" | 529 | bool "Incoming device classification" |
| 552 | depends on NET_SCHED && (NET_CLS_U32 || NET_CLS_FW) | 530 | depends on NET_CLS_U32 || NET_CLS_FW |
| 553 | ---help--- | 531 | ---help--- |
| 554 | Say Y here to extend the u32 and fw classifier to support | 532 | Say Y here to extend the u32 and fw classifier to support |
| 555 | classification based on the incoming device. This option is | 533 | classification based on the incoming device. This option is |
| @@ -557,11 +535,12 @@ config NET_CLS_IND | |||
| 557 | 535 | ||
| 558 | config NET_ESTIMATOR | 536 | config NET_ESTIMATOR |
| 559 | bool "Rate estimator" | 537 | bool "Rate estimator" |
| 560 | depends on NET_SCHED | ||
| 561 | ---help--- | 538 | ---help--- |
| 562 | Say Y here to allow using rate estimators to estimate the current | 539 | Say Y here to allow using rate estimators to estimate the current |
| 563 | rate-of-flow for network devices, queues, etc. This module is | 540 | rate-of-flow for network devices, queues, etc. This module is |
| 564 | automaticaly selected if needed but can be selected manually for | 541 | automaticaly selected if needed but can be selected manually for |
| 565 | statstical purposes. | 542 | statstical purposes. |
| 566 | 543 | ||
| 544 | endif # NET_SCHED | ||
| 545 | |||
| 567 | endmenu | 546 | endmenu |
