mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-26 05:34:13 +08:00
Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial
* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial: (79 commits) Jesper Juhl is the new trivial patches maintainer Documentation: mention email-clients.txt in SubmittingPatches fs/binfmt_elf.c: spello fix do_invalidatepage() comment typo fix Documentation/filesystems/porting fixes typo fixes in net/core/net_namespace.c typo fix in net/rfkill/rfkill.c typo fixes in net/sctp/sm_statefuns.c lib/: Spelling fixes kernel/: Spelling fixes include/scsi/: Spelling fixes include/linux/: Spelling fixes include/asm-m68knommu/: Spelling fixes include/asm-frv/: Spelling fixes fs/: Spelling fixes drivers/watchdog/: Spelling fixes drivers/video/: Spelling fixes drivers/ssb/: Spelling fixes drivers/serial/: Spelling fixes drivers/scsi/: Spelling fixes ...
This commit is contained in:
commit
f5bb3a5e9d
7
CREDITS
7
CREDITS
@ -508,12 +508,8 @@ D: REINER SCT cyberJack pinpad/e-com USB chipcard reader driver
|
|||||||
S: Germany
|
S: Germany
|
||||||
|
|
||||||
N: Adrian Bunk
|
N: Adrian Bunk
|
||||||
E: bunk@stusta.de
|
|
||||||
P: 1024D/4F12B400 B29C E71E FE19 6755 5C8A 84D4 99FC EA98 4F12 B400
|
P: 1024D/4F12B400 B29C E71E FE19 6755 5C8A 84D4 99FC EA98 4F12 B400
|
||||||
D: misc kernel hacking and testing
|
D: misc kernel hacking and testing
|
||||||
S: Grasmeierstrasse 11
|
|
||||||
S: 80805 Muenchen
|
|
||||||
S: Germany
|
|
||||||
|
|
||||||
N: Ray Burr
|
N: Ray Burr
|
||||||
E: ryb@nightmare.com
|
E: ryb@nightmare.com
|
||||||
@ -1124,6 +1120,9 @@ S: 1150 Ringwood Court
|
|||||||
S: San Jose, California 95131
|
S: San Jose, California 95131
|
||||||
S: USA
|
S: USA
|
||||||
|
|
||||||
|
N: Adam Fritzler
|
||||||
|
E: mid@zigamorph.net
|
||||||
|
|
||||||
N: Fernando Fuganti
|
N: Fernando Fuganti
|
||||||
E: fuganti@conectiva.com.br
|
E: fuganti@conectiva.com.br
|
||||||
E: fuganti@netbank.com.br
|
E: fuganti@netbank.com.br
|
||||||
|
@ -154,7 +154,7 @@ firmware_class/
|
|||||||
- request_firmware() hotplug interface info.
|
- request_firmware() hotplug interface info.
|
||||||
floppy.txt
|
floppy.txt
|
||||||
- notes and driver options for the floppy disk driver.
|
- notes and driver options for the floppy disk driver.
|
||||||
fujitsu/
|
frv/
|
||||||
- Fujitsu FR-V Linux documentation.
|
- Fujitsu FR-V Linux documentation.
|
||||||
gpio.txt
|
gpio.txt
|
||||||
- overview of GPIO (General Purpose Input/Output) access conventions.
|
- overview of GPIO (General Purpose Input/Output) access conventions.
|
||||||
@ -364,8 +364,6 @@ sharedsubtree.txt
|
|||||||
- a description of shared subtrees for namespaces.
|
- a description of shared subtrees for namespaces.
|
||||||
smart-config.txt
|
smart-config.txt
|
||||||
- description of the Smart Config makefile feature.
|
- description of the Smart Config makefile feature.
|
||||||
smp.txt
|
|
||||||
- a few notes on symmetric multi-processing.
|
|
||||||
sony-laptop.txt
|
sony-laptop.txt
|
||||||
- Sony Notebook Control Driver (SNC) Readme.
|
- Sony Notebook Control Driver (SNC) Readme.
|
||||||
sonypi.txt
|
sonypi.txt
|
||||||
|
@ -53,7 +53,7 @@ Finding it the old way
|
|||||||
|
|
||||||
[Sat Mar 2 10:32:33 PST 1996 KERNEL_BUG-HOWTO lm@sgi.com (Larry McVoy)]
|
[Sat Mar 2 10:32:33 PST 1996 KERNEL_BUG-HOWTO lm@sgi.com (Larry McVoy)]
|
||||||
|
|
||||||
This is how to track down a bug if you know nothing about kernel hacking.
|
This is how to track down a bug if you know nothing about kernel hacking.
|
||||||
It's a brute force approach but it works pretty well.
|
It's a brute force approach but it works pretty well.
|
||||||
|
|
||||||
You need:
|
You need:
|
||||||
@ -66,12 +66,12 @@ You will then do:
|
|||||||
|
|
||||||
. Rebuild a revision that you believe works, install, and verify that.
|
. Rebuild a revision that you believe works, install, and verify that.
|
||||||
. Do a binary search over the kernels to figure out which one
|
. Do a binary search over the kernels to figure out which one
|
||||||
introduced the bug. I.e., suppose 1.3.28 didn't have the bug, but
|
introduced the bug. I.e., suppose 1.3.28 didn't have the bug, but
|
||||||
you know that 1.3.69 does. Pick a kernel in the middle and build
|
you know that 1.3.69 does. Pick a kernel in the middle and build
|
||||||
that, like 1.3.50. Build & test; if it works, pick the mid point
|
that, like 1.3.50. Build & test; if it works, pick the mid point
|
||||||
between .50 and .69, else the mid point between .28 and .50.
|
between .50 and .69, else the mid point between .28 and .50.
|
||||||
. You'll narrow it down to the kernel that introduced the bug. You
|
. You'll narrow it down to the kernel that introduced the bug. You
|
||||||
can probably do better than this but it gets tricky.
|
can probably do better than this but it gets tricky.
|
||||||
|
|
||||||
. Narrow it down to a subdirectory
|
. Narrow it down to a subdirectory
|
||||||
|
|
||||||
@ -81,27 +81,27 @@ You will then do:
|
|||||||
directories:
|
directories:
|
||||||
|
|
||||||
Copy the non-working directory next to the working directory
|
Copy the non-working directory next to the working directory
|
||||||
as "dir.63".
|
as "dir.63".
|
||||||
One directory at time, try moving the working directory to
|
One directory at time, try moving the working directory to
|
||||||
"dir.62" and mv dir.63 dir"time, try
|
"dir.62" and mv dir.63 dir"time, try
|
||||||
|
|
||||||
mv dir dir.62
|
mv dir dir.62
|
||||||
mv dir.63 dir
|
mv dir.63 dir
|
||||||
find dir -name '*.[oa]' -print | xargs rm -f
|
find dir -name '*.[oa]' -print | xargs rm -f
|
||||||
|
|
||||||
And then rebuild and retest. Assuming that all related
|
And then rebuild and retest. Assuming that all related
|
||||||
changes were contained in the sub directory, this should
|
changes were contained in the sub directory, this should
|
||||||
isolate the change to a directory.
|
isolate the change to a directory.
|
||||||
|
|
||||||
Problems: changes in header files may have occurred; I've
|
Problems: changes in header files may have occurred; I've
|
||||||
found in my case that they were self explanatory - you may
|
found in my case that they were self explanatory - you may
|
||||||
or may not want to give up when that happens.
|
or may not want to give up when that happens.
|
||||||
|
|
||||||
. Narrow it down to a file
|
. Narrow it down to a file
|
||||||
|
|
||||||
- You can apply the same technique to each file in the directory,
|
- You can apply the same technique to each file in the directory,
|
||||||
hoping that the changes in that file are self contained.
|
hoping that the changes in that file are self contained.
|
||||||
|
|
||||||
. Narrow it down to a routine
|
. Narrow it down to a routine
|
||||||
|
|
||||||
- You can take the old file and the new file and manually create
|
- You can take the old file and the new file and manually create
|
||||||
@ -130,7 +130,7 @@ You will then do:
|
|||||||
that makes the difference.
|
that makes the difference.
|
||||||
|
|
||||||
Finally, you take all the info that you have, kernel revisions, bug
|
Finally, you take all the info that you have, kernel revisions, bug
|
||||||
description, the extent to which you have narrowed it down, and pass
|
description, the extent to which you have narrowed it down, and pass
|
||||||
that off to whomever you believe is the maintainer of that section.
|
that off to whomever you believe is the maintainer of that section.
|
||||||
A post to linux.dev.kernel isn't such a bad idea if you've done some
|
A post to linux.dev.kernel isn't such a bad idea if you've done some
|
||||||
work to narrow it down.
|
work to narrow it down.
|
||||||
|
@ -220,20 +220,8 @@ decreasing the likelihood of your MIME-attached change being accepted.
|
|||||||
Exception: If your mailer is mangling patches then someone may ask
|
Exception: If your mailer is mangling patches then someone may ask
|
||||||
you to re-send them using MIME.
|
you to re-send them using MIME.
|
||||||
|
|
||||||
|
See Documentation/email-clients.txt for hints about configuring
|
||||||
WARNING: Some mailers like Mozilla send your messages with
|
your e-mail client so that it sends your patches untouched.
|
||||||
---- message header ----
|
|
||||||
Content-Type: text/plain; charset=us-ascii; format=flowed
|
|
||||||
---- message header ----
|
|
||||||
The problem is that "format=flowed" makes some of the mailers
|
|
||||||
on receiving side to replace TABs with spaces and do similar
|
|
||||||
changes. Thus the patches from you can look corrupted.
|
|
||||||
|
|
||||||
To fix this just make your mozilla defaults/pref/mailnews.js file to look like:
|
|
||||||
pref("mailnews.send_plaintext_flowed", false); // RFC 2646=======
|
|
||||||
pref("mailnews.display.disable_format_flowed_support", true);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
8) E-mail size.
|
8) E-mail size.
|
||||||
|
|
||||||
|
@ -32,7 +32,7 @@ BARRIER IO before the access to the SMC chip because the AEN latch
|
|||||||
only needs occurs after the SMC IO write cycle. The routines that
|
only needs occurs after the SMC IO write cycle. The routines that
|
||||||
implement this work-around make an additional concession which is to
|
implement this work-around make an additional concession which is to
|
||||||
disable interrupts during the IO sequence. Other hardware devices
|
disable interrupts during the IO sequence. Other hardware devices
|
||||||
(the LogicPD CPLD) have registers in the same the physical memory
|
(the LogicPD CPLD) have registers in the same physical memory
|
||||||
region as the SMC chip. An interrupt might allow an access to one of
|
region as the SMC chip. An interrupt might allow an access to one of
|
||||||
those registers while SMC IO is being performed.
|
those registers while SMC IO is being performed.
|
||||||
|
|
||||||
|
@ -16,3 +16,7 @@ echo 'echo "$@" >> /tmp/modprobe.log' >> /tmp/modprobe
|
|||||||
echo 'exec /sbin/modprobe "$@"' >> /tmp/modprobe
|
echo 'exec /sbin/modprobe "$@"' >> /tmp/modprobe
|
||||||
chmod a+x /tmp/modprobe
|
chmod a+x /tmp/modprobe
|
||||||
echo /tmp/modprobe > /proc/sys/kernel/modprobe
|
echo /tmp/modprobe > /proc/sys/kernel/modprobe
|
||||||
|
|
||||||
|
Note that the above applies only when the *kernel* is requesting
|
||||||
|
that the module be loaded -- it won't have any effect if that module
|
||||||
|
is being loaded explicitly using "modprobe" from userspace.
|
||||||
|
@ -377,7 +377,7 @@ more explicit to have a method whereby userspace sees this divergence.
|
|||||||
Rather than have a group where some items behave differently than
|
Rather than have a group where some items behave differently than
|
||||||
others, configfs provides a method whereby one or many subgroups are
|
others, configfs provides a method whereby one or many subgroups are
|
||||||
automatically created inside the parent at its creation. Thus,
|
automatically created inside the parent at its creation. Thus,
|
||||||
mkdir("parent) results in "parent", "parent/subgroup1", up through
|
mkdir("parent") results in "parent", "parent/subgroup1", up through
|
||||||
"parent/subgroupN". Items of type 1 can now be created in
|
"parent/subgroupN". Items of type 1 can now be created in
|
||||||
"parent/subgroup1", and items of type N can be created in
|
"parent/subgroup1", and items of type N can be created in
|
||||||
"parent/subgroupN".
|
"parent/subgroupN".
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
Changes since 2.5.0:
|
Changes since 2.5.0:
|
||||||
|
|
||||||
---
|
---
|
||||||
[recommended]
|
[recommended]
|
||||||
|
|
||||||
New helpers: sb_bread(), sb_getblk(), sb_find_get_block(), set_bh(),
|
New helpers: sb_bread(), sb_getblk(), sb_find_get_block(), set_bh(),
|
||||||
@ -10,7 +10,7 @@ Use them.
|
|||||||
|
|
||||||
(sb_find_get_block() replaces 2.4's get_hash_table())
|
(sb_find_get_block() replaces 2.4's get_hash_table())
|
||||||
|
|
||||||
---
|
---
|
||||||
[recommended]
|
[recommended]
|
||||||
|
|
||||||
New methods: ->alloc_inode() and ->destroy_inode().
|
New methods: ->alloc_inode() and ->destroy_inode().
|
||||||
@ -28,7 +28,7 @@ Declare
|
|||||||
|
|
||||||
Use FOO_I(inode) instead of &inode->u.foo_inode_i;
|
Use FOO_I(inode) instead of &inode->u.foo_inode_i;
|
||||||
|
|
||||||
Add foo_alloc_inode() and foo_destory_inode() - the former should allocate
|
Add foo_alloc_inode() and foo_destroy_inode() - the former should allocate
|
||||||
foo_inode_info and return the address of ->vfs_inode, the latter should free
|
foo_inode_info and return the address of ->vfs_inode, the latter should free
|
||||||
FOO_I(inode) (see in-tree filesystems for examples).
|
FOO_I(inode) (see in-tree filesystems for examples).
|
||||||
|
|
||||||
|
@ -216,6 +216,7 @@ Table 1-3: Contents of the stat files (as of 2.6.22-rc3)
|
|||||||
priority priority level
|
priority priority level
|
||||||
nice nice level
|
nice nice level
|
||||||
num_threads number of threads
|
num_threads number of threads
|
||||||
|
it_real_value (obsolete, always 0)
|
||||||
start_time time the process started after system boot
|
start_time time the process started after system boot
|
||||||
vsize virtual memory size
|
vsize virtual memory size
|
||||||
rss resident set memory size
|
rss resident set memory size
|
||||||
|
@ -118,7 +118,7 @@ All this differs from the old initrd in several ways:
|
|||||||
with the new root (cd /newmount; mount --move . /; chroot .), attach
|
with the new root (cd /newmount; mount --move . /; chroot .), attach
|
||||||
stdin/stdout/stderr to the new /dev/console, and exec the new init.
|
stdin/stdout/stderr to the new /dev/console, and exec the new init.
|
||||||
|
|
||||||
Since this is a remarkably persnickity process (and involves deleting
|
Since this is a remarkably persnickety process (and involves deleting
|
||||||
commands before you can run them), the klibc package introduced a helper
|
commands before you can run them), the klibc package introduced a helper
|
||||||
program (utils/run_init.c) to do all this for you. Most other packages
|
program (utils/run_init.c) to do all this for you. Most other packages
|
||||||
(such as busybox) have named this command "switch_root".
|
(such as busybox) have named this command "switch_root".
|
||||||
|
@ -140,7 +140,7 @@ close() decrements the channel buffer's refcount. When the refcount
|
|||||||
In order for a user application to make use of relay files, the
|
In order for a user application to make use of relay files, the
|
||||||
host filesystem must be mounted. For example,
|
host filesystem must be mounted. For example,
|
||||||
|
|
||||||
mount -t debugfs debugfs /debug
|
mount -t debugfs debugfs /sys/kernel/debug
|
||||||
|
|
||||||
NOTE: the host filesystem doesn't need to be mounted for kernel
|
NOTE: the host filesystem doesn't need to be mounted for kernel
|
||||||
clients to create or use channels - it only needs to be
|
clients to create or use channels - it only needs to be
|
||||||
|
@ -177,5 +177,5 @@ separated by spaces:
|
|||||||
(*) vdc=...
|
(*) vdc=...
|
||||||
|
|
||||||
This option configures the MB93493 companion chip visual display
|
This option configures the MB93493 companion chip visual display
|
||||||
driver. Please see Documentation/fujitsu/mb93493/vdc.txt for more
|
driver. Please see Documentation/frv/mb93493/vdc.txt for more
|
||||||
information.
|
information.
|
@ -85,7 +85,7 @@ involve special block devices or loopbacks; you merely create a directory on
|
|||||||
disk with the desired initrd content, cd to that directory, and run (as an
|
disk with the desired initrd content, cd to that directory, and run (as an
|
||||||
example):
|
example):
|
||||||
|
|
||||||
find . | cpio --quiet -c -o | gzip -9 -n > /boot/imagefile.img
|
find . | cpio --quiet -H newc -o | gzip -9 -n > /boot/imagefile.img
|
||||||
|
|
||||||
Examining the contents of an existing image file is just as simple:
|
Examining the contents of an existing image file is just as simple:
|
||||||
|
|
||||||
|
@ -549,7 +549,7 @@ and is between 256 and 4096 characters. It is defined in the file
|
|||||||
1 will print _a lot_ more information - normally
|
1 will print _a lot_ more information - normally
|
||||||
only useful to kernel developers.
|
only useful to kernel developers.
|
||||||
|
|
||||||
decnet= [HW,NET]
|
decnet.addr= [HW,NET]
|
||||||
Format: <area>[,<node>]
|
Format: <area>[,<node>]
|
||||||
See also Documentation/networking/decnet.txt.
|
See also Documentation/networking/decnet.txt.
|
||||||
|
|
||||||
@ -1561,14 +1561,17 @@ and is between 256 and 4096 characters. It is defined in the file
|
|||||||
ramdisk_size= [RAM] Sizes of RAM disks in kilobytes
|
ramdisk_size= [RAM] Sizes of RAM disks in kilobytes
|
||||||
See Documentation/ramdisk.txt.
|
See Documentation/ramdisk.txt.
|
||||||
|
|
||||||
rcu.blimit= [KNL,BOOT] Set maximum number of finished
|
rcupdate.blimit= [KNL,BOOT]
|
||||||
RCU callbacks to process in one batch.
|
Set maximum number of finished RCU callbacks to process
|
||||||
|
in one batch.
|
||||||
|
|
||||||
rcu.qhimark= [KNL,BOOT] Set threshold of queued
|
rcupdate.qhimark= [KNL,BOOT]
|
||||||
|
Set threshold of queued
|
||||||
RCU callbacks over which batch limiting is disabled.
|
RCU callbacks over which batch limiting is disabled.
|
||||||
|
|
||||||
rcu.qlowmark= [KNL,BOOT] Set threshold of queued
|
rcupdate.qlowmark= [KNL,BOOT]
|
||||||
RCU callbacks below which batch limiting is re-enabled.
|
Set threshold of queued RCU callbacks below which
|
||||||
|
batch limiting is re-enabled.
|
||||||
|
|
||||||
rdinit= [KNL]
|
rdinit= [KNL]
|
||||||
Format: <full_path>
|
Format: <full_path>
|
||||||
@ -1888,9 +1891,6 @@ and is between 256 and 4096 characters. It is defined in the file
|
|||||||
st= [HW,SCSI] SCSI tape parameters (buffers, etc.)
|
st= [HW,SCSI] SCSI tape parameters (buffers, etc.)
|
||||||
See Documentation/scsi/st.txt.
|
See Documentation/scsi/st.txt.
|
||||||
|
|
||||||
st0x= [HW,SCSI]
|
|
||||||
See header of drivers/scsi/seagate.c.
|
|
||||||
|
|
||||||
sti= [PARISC,HW]
|
sti= [PARISC,HW]
|
||||||
Format: <num>
|
Format: <num>
|
||||||
Set the STI (builtin display/keyboard on the HP-PARISC
|
Set the STI (builtin display/keyboard on the HP-PARISC
|
||||||
@ -1975,9 +1975,6 @@ and is between 256 and 4096 characters. It is defined in the file
|
|||||||
tipar.delay= [HW,PPT]
|
tipar.delay= [HW,PPT]
|
||||||
Set inter-bit delay in microseconds (default 10).
|
Set inter-bit delay in microseconds (default 10).
|
||||||
|
|
||||||
tmc8xx= [HW,SCSI]
|
|
||||||
See header of drivers/scsi/seagate.c.
|
|
||||||
|
|
||||||
tmscsim= [HW,SCSI]
|
tmscsim= [HW,SCSI]
|
||||||
See comment before function dc390_setup() in
|
See comment before function dc390_setup() in
|
||||||
drivers/scsi/tmscsim.c.
|
drivers/scsi/tmscsim.c.
|
||||||
|
@ -60,7 +60,7 @@ operation of the local communications in any other way though.
|
|||||||
|
|
||||||
The kernel command line takes options looking like the following:
|
The kernel command line takes options looking like the following:
|
||||||
|
|
||||||
decnet=1,2
|
decnet.addr=1,2
|
||||||
|
|
||||||
the two numbers are the node address 1,2 = 1.2 For 2.2.xx kernels
|
the two numbers are the node address 1,2 = 1.2 For 2.2.xx kernels
|
||||||
and early 2.3.xx kernels, you must use a comma when specifying the
|
and early 2.3.xx kernels, you must use a comma when specifying the
|
||||||
|
@ -1,22 +0,0 @@
|
|||||||
To set up SMP
|
|
||||||
|
|
||||||
Configure the kernel and answer Y to CONFIG_SMP.
|
|
||||||
|
|
||||||
If you are using LILO, it is handy to have both SMP and non-SMP
|
|
||||||
kernel images on hand. Edit /etc/lilo.conf to create an entry
|
|
||||||
for another kernel image called "linux-smp" or something.
|
|
||||||
|
|
||||||
The next time you compile the kernel, when running a SMP kernel,
|
|
||||||
edit linux/Makefile and change "MAKE=make" to "MAKE=make -jN"
|
|
||||||
(where N = number of CPU + 1, or if you have tons of memory/swap
|
|
||||||
you can just use "-j" without a number). Feel free to experiment
|
|
||||||
with this one.
|
|
||||||
|
|
||||||
Of course you should time how long each build takes :-)
|
|
||||||
Example:
|
|
||||||
make config
|
|
||||||
time -v sh -c 'make clean install modules modules_install'
|
|
||||||
|
|
||||||
If you are using some Compaq MP compliant machines you will need to set
|
|
||||||
the operating system in the BIOS settings to "Unixware" - don't ask me
|
|
||||||
why Compaqs don't work otherwise.
|
|
13
MAINTAINERS
13
MAINTAINERS
@ -3177,7 +3177,7 @@ S: Maintained
|
|||||||
|
|
||||||
RAYLINK/WEBGEAR 802.11 WIRELESS LAN DRIVER
|
RAYLINK/WEBGEAR 802.11 WIRELESS LAN DRIVER
|
||||||
P: Corey Thomas
|
P: Corey Thomas
|
||||||
M: corey@world.std.com
|
M: coreythomas@charter.net
|
||||||
L: linux-wireless@vger.kernel.org
|
L: linux-wireless@vger.kernel.org
|
||||||
S: Maintained
|
S: Maintained
|
||||||
|
|
||||||
@ -3790,18 +3790,9 @@ L: linux-kernel@vger.kernel.org
|
|||||||
S: Maintained
|
S: Maintained
|
||||||
|
|
||||||
TRIVIAL PATCHES
|
TRIVIAL PATCHES
|
||||||
P: Adrian Bunk
|
P: Jesper Juhl
|
||||||
M: trivial@kernel.org
|
M: trivial@kernel.org
|
||||||
L: linux-kernel@vger.kernel.org
|
L: linux-kernel@vger.kernel.org
|
||||||
W: http://www.kernel.org/pub/linux/kernel/people/bunk/trivial/
|
|
||||||
T: git kernel.org:/pub/scm/linux/kernel/git/bunk/trivial.git
|
|
||||||
S: Maintained
|
|
||||||
|
|
||||||
TMS380 TOKEN-RING NETWORK DRIVER
|
|
||||||
P: Adam Fritzler
|
|
||||||
M: mid@auk.cx
|
|
||||||
L: linux-tr@linuxtr.net
|
|
||||||
W: http://www.auk.cx/tms380tr/
|
|
||||||
S: Maintained
|
S: Maintained
|
||||||
|
|
||||||
TULIP NETWORK DRIVER
|
TULIP NETWORK DRIVER
|
||||||
|
2
Makefile
2
Makefile
@ -1484,7 +1484,7 @@ kernelversion:
|
|||||||
# Single targets
|
# Single targets
|
||||||
# ---------------------------------------------------------------------------
|
# ---------------------------------------------------------------------------
|
||||||
# Single targets are compatible with:
|
# Single targets are compatible with:
|
||||||
# - build whith mixed source and output
|
# - build with mixed source and output
|
||||||
# - build with separate output dir 'make O=...'
|
# - build with separate output dir 'make O=...'
|
||||||
# - external modules
|
# - external modules
|
||||||
#
|
#
|
||||||
|
@ -532,8 +532,8 @@ config SMP
|
|||||||
singleprocessor machines. On a singleprocessor machine, the kernel
|
singleprocessor machines. On a singleprocessor machine, the kernel
|
||||||
will run faster if you say N here.
|
will run faster if you say N here.
|
||||||
|
|
||||||
See also the <file:Documentation/smp.txt>, and the SMP-HOWTO
|
See also the SMP-HOWTO available at
|
||||||
available at <http://www.tldp.org/docs.html#howto>.
|
<http://www.tldp.org/docs.html#howto>.
|
||||||
|
|
||||||
If you don't know what to do here, say N.
|
If you don't know what to do here, say N.
|
||||||
|
|
||||||
|
@ -635,8 +635,7 @@ config SMP
|
|||||||
processor machines. On a single processor machine, the kernel will
|
processor machines. On a single processor machine, the kernel will
|
||||||
run faster if you say N here.
|
run faster if you say N here.
|
||||||
|
|
||||||
See also the <file:Documentation/smp.txt>,
|
See also <file:Documentation/i386/IO-APIC.txt>,
|
||||||
<file:Documentation/i386/IO-APIC.txt>,
|
|
||||||
<file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
|
<file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
|
||||||
<http://www.linuxdoc.org/docs.html#howto>.
|
<http://www.linuxdoc.org/docs.html#howto>.
|
||||||
|
|
||||||
|
@ -32,7 +32,7 @@ static struct corgissp_machinfo *ssp_machinfo;
|
|||||||
/*
|
/*
|
||||||
* There are three devices connected to the SSP interface:
|
* There are three devices connected to the SSP interface:
|
||||||
* 1. A touchscreen controller (TI ADS7846 compatible)
|
* 1. A touchscreen controller (TI ADS7846 compatible)
|
||||||
* 2. An LCD contoller (with some Backlight functionality)
|
* 2. An LCD controller (with some Backlight functionality)
|
||||||
* 3. A battery monitoring IC (Maxim MAX1111)
|
* 3. A battery monitoring IC (Maxim MAX1111)
|
||||||
*
|
*
|
||||||
* Each device uses a different speed/mode of communication.
|
* Each device uses a different speed/mode of communication.
|
||||||
|
@ -165,7 +165,7 @@ int collie_read_temp(void)
|
|||||||
|
|
||||||
ucb1x00_adc_enable(ucb);
|
ucb1x00_adc_enable(ucb);
|
||||||
ucb1x00_io_write(ucb, COLLIE_TC35143_GPIO_TMP_ON, 0);
|
ucb1x00_io_write(ucb, COLLIE_TC35143_GPIO_TMP_ON, 0);
|
||||||
/* >1010 = battery removed, 460 = 22C ?, higer = lower temp ? */
|
/* >1010 = battery removed, 460 = 22C ?, higher = lower temp ? */
|
||||||
voltage = ucb1x00_adc_read(ucb, UCB_ADC_INP_AD0, UCB_SYNC);
|
voltage = ucb1x00_adc_read(ucb, UCB_ADC_INP_AD0, UCB_SYNC);
|
||||||
ucb1x00_io_write(ucb, 0, COLLIE_TC35143_GPIO_TMP_ON);
|
ucb1x00_io_write(ucb, 0, COLLIE_TC35143_GPIO_TMP_ON);
|
||||||
ucb1x00_adc_disable(ucb);
|
ucb1x00_adc_disable(ucb);
|
||||||
|
@ -47,7 +47,7 @@
|
|||||||
* Mark IRQ_LCD valid
|
* Mark IRQ_LCD valid
|
||||||
*
|
*
|
||||||
* 25-Jul-2005 Ben Dooks
|
* 25-Jul-2005 Ben Dooks
|
||||||
* Split the S3C2440 IRQ code to seperate file
|
* Split the S3C2440 IRQ code to separate file
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <linux/init.h>
|
#include <linux/init.h>
|
||||||
|
@ -79,7 +79,7 @@ config FRV_OUTOFLINE_ATOMIC_OPS
|
|||||||
Setting this option causes the FR-V atomic operations to be mostly
|
Setting this option causes the FR-V atomic operations to be mostly
|
||||||
implemented out-of-line.
|
implemented out-of-line.
|
||||||
|
|
||||||
See Documentation/fujitsu/frv/atomic-ops.txt for more information.
|
See Documentation/frv/atomic-ops.txt for more information.
|
||||||
|
|
||||||
config HIGHMEM
|
config HIGHMEM
|
||||||
bool "High memory support"
|
bool "High memory support"
|
||||||
|
@ -253,7 +253,7 @@ __entry_kernel_external_interrupt_reentry:
|
|||||||
andi.p gr5,#~PSR_ET,gr5
|
andi.p gr5,#~PSR_ET,gr5
|
||||||
|
|
||||||
# set CCCR.CC3 to Undefined to abort atomic-modify completion inside the kernel
|
# set CCCR.CC3 to Undefined to abort atomic-modify completion inside the kernel
|
||||||
# - for an explanation of how it works, see: Documentation/fujitsu/frv/atomic-ops.txt
|
# - for an explanation of how it works, see: Documentation/frv/atomic-ops.txt
|
||||||
andi gr25,#~0xc0,gr25
|
andi gr25,#~0xc0,gr25
|
||||||
|
|
||||||
sti gr20,@(gr28,#REG_TBR)
|
sti gr20,@(gr28,#REG_TBR)
|
||||||
@ -445,7 +445,7 @@ __entry_kernel_softprog_interrupt_reentry:
|
|||||||
sti gr22,@(sp,#REG_SP)
|
sti gr22,@(sp,#REG_SP)
|
||||||
|
|
||||||
# set CCCR.CC3 to Undefined to abort atomic-modify completion inside the kernel
|
# set CCCR.CC3 to Undefined to abort atomic-modify completion inside the kernel
|
||||||
# - for an explanation of how it works, see: Documentation/fujitsu/frv/atomic-ops.txt
|
# - for an explanation of how it works, see: Documentation/frv/atomic-ops.txt
|
||||||
movsg cccr,gr20
|
movsg cccr,gr20
|
||||||
andi gr20,#~0xc0,gr20
|
andi gr20,#~0xc0,gr20
|
||||||
movgs gr20,cccr
|
movgs gr20,cccr
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/* atomic-ops.S: kernel atomic operations
|
/* atomic-ops.S: kernel atomic operations
|
||||||
*
|
*
|
||||||
* For an explanation of how atomic ops work in this arch, see:
|
* For an explanation of how atomic ops work in this arch, see:
|
||||||
* Documentation/fujitsu/frv/atomic-ops.txt
|
* Documentation/frv/atomic-ops.txt
|
||||||
*
|
*
|
||||||
* Copyright (C) 2004 Red Hat, Inc. All Rights Reserved.
|
* Copyright (C) 2004 Red Hat, Inc. All Rights Reserved.
|
||||||
* Written by David Howells (dhowells@redhat.com)
|
* Written by David Howells (dhowells@redhat.com)
|
||||||
|
@ -121,7 +121,7 @@ void __init init_IRQ(void)
|
|||||||
printk("virtual vector at 0x%08lx\n",(unsigned long)ramvec);
|
printk("virtual vector at 0x%08lx\n",(unsigned long)ramvec);
|
||||||
|
|
||||||
#if defined(CONFIG_GDB_DEBUG)
|
#if defined(CONFIG_GDB_DEBUG)
|
||||||
/* save orignal break vector */
|
/* save original break vector */
|
||||||
break_vec = ramvec[TRAP3_VEC];
|
break_vec = ramvec[TRAP3_VEC];
|
||||||
#else
|
#else
|
||||||
break_vec = VECTOR(trace_break);
|
break_vec = VECTOR(trace_break);
|
||||||
|
@ -285,8 +285,8 @@ config SMP
|
|||||||
single processor systems. On a single processor system, the kernel
|
single processor systems. On a single processor system, the kernel
|
||||||
will run faster if you say N here.
|
will run faster if you say N here.
|
||||||
|
|
||||||
See also the <file:Documentation/smp.txt> and the SMP-HOWTO
|
See also the SMP-HOWTO available at
|
||||||
available at <http://www.tldp.org/docs.html#howto>.
|
<http://www.tldp.org/docs.html#howto>.
|
||||||
|
|
||||||
If you don't know what to do here, say N.
|
If you don't know what to do here, say N.
|
||||||
|
|
||||||
|
@ -303,8 +303,7 @@ config SMP
|
|||||||
Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
|
Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
|
||||||
Management" code will be disabled if you say Y here.
|
Management" code will be disabled if you say Y here.
|
||||||
|
|
||||||
See also the <file:Documentation/smp.txt>,
|
See also the SMP-HOWTO available at
|
||||||
and the SMP-HOWTO available at
|
|
||||||
<http://www.linuxdoc.org/docs.html#howto>.
|
<http://www.linuxdoc.org/docs.html#howto>.
|
||||||
|
|
||||||
If you don't know what to do here, say N.
|
If you don't know what to do here, say N.
|
||||||
|
@ -476,7 +476,7 @@ unregister_debug_trap(struct task_struct *child, unsigned long addr,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Recover orignal instruction code. */
|
/* Recover original instruction code. */
|
||||||
*code = p->insn[i];
|
*code = p->insn[i];
|
||||||
|
|
||||||
/* Shift debug trap entries. */
|
/* Shift debug trap entries. */
|
||||||
|
@ -1755,8 +1755,8 @@ config SMP
|
|||||||
People using multiprocessor machines who say Y here should also say
|
People using multiprocessor machines who say Y here should also say
|
||||||
Y to "Enhanced Real Time Clock Support", below.
|
Y to "Enhanced Real Time Clock Support", below.
|
||||||
|
|
||||||
See also the <file:Documentation/smp.txt> and the SMP-HOWTO
|
See also the SMP-HOWTO available at
|
||||||
available at <http://www.tldp.org/docs.html#howto>.
|
<http://www.tldp.org/docs.html#howto>.
|
||||||
|
|
||||||
If you don't know what to do here, say N.
|
If you don't know what to do here, say N.
|
||||||
|
|
||||||
|
@ -99,7 +99,7 @@ mtx1_pci_idsel(unsigned int devsel, int assert)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (assert && devsel != 0) {
|
if (assert && devsel != 0) {
|
||||||
// supress signal to cardbus
|
// suppress signal to cardbus
|
||||||
au_writel( 0x00000002, SYS_OUTPUTCLR ); // set EXT_IO3 OFF
|
au_writel( 0x00000002, SYS_OUTPUTCLR ); // set EXT_IO3 OFF
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
@ -98,7 +98,7 @@ static __inline__ void
|
|||||||
jiffies_to_compat_timeval(unsigned long jiffies, struct compat_timeval *value)
|
jiffies_to_compat_timeval(unsigned long jiffies, struct compat_timeval *value)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
* Convert jiffies to nanoseconds and seperate with
|
* Convert jiffies to nanoseconds and separate with
|
||||||
* one divide.
|
* one divide.
|
||||||
*/
|
*/
|
||||||
u64 nsec = (u64)jiffies * TICK_NSEC;
|
u64 nsec = (u64)jiffies * TICK_NSEC;
|
||||||
|
@ -100,7 +100,7 @@ static inline void
|
|||||||
jiffies_to_compat_timeval(unsigned long jiffies, struct compat_timeval *value)
|
jiffies_to_compat_timeval(unsigned long jiffies, struct compat_timeval *value)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
* Convert jiffies to nanoseconds and seperate with
|
* Convert jiffies to nanoseconds and separate with
|
||||||
* one divide.
|
* one divide.
|
||||||
*/
|
*/
|
||||||
u64 nsec = (u64)jiffies * TICK_NSEC;
|
u64 nsec = (u64)jiffies * TICK_NSEC;
|
||||||
|
@ -221,7 +221,7 @@ void sp_work_handle_request(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Run the syscall at the priviledge of the user who loaded the
|
/* Run the syscall at the privilege of the user who loaded the
|
||||||
SP program */
|
SP program */
|
||||||
|
|
||||||
if (vpe_getuid(tclimit))
|
if (vpe_getuid(tclimit))
|
||||||
|
@ -424,13 +424,13 @@ static void __init bootmem_init(void)
|
|||||||
#endif /* CONFIG_SGI_IP27 */
|
#endif /* CONFIG_SGI_IP27 */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* arch_mem_init - initialize memory managment subsystem
|
* arch_mem_init - initialize memory management subsystem
|
||||||
*
|
*
|
||||||
* o plat_mem_setup() detects the memory configuration and will record detected
|
* o plat_mem_setup() detects the memory configuration and will record detected
|
||||||
* memory areas using add_memory_region.
|
* memory areas using add_memory_region.
|
||||||
*
|
*
|
||||||
* At this stage the memory configuration of the system is known to the
|
* At this stage the memory configuration of the system is known to the
|
||||||
* kernel but generic memory managment system is still entirely uninitialized.
|
* kernel but generic memory management system is still entirely uninitialized.
|
||||||
*
|
*
|
||||||
* o bootmem_init()
|
* o bootmem_init()
|
||||||
* o sparse_init()
|
* o sparse_init()
|
||||||
|
@ -65,7 +65,7 @@ asiduse smtc_live_asid[MAX_SMTC_TLBS][MAX_SMTC_ASIDS];
|
|||||||
static atomic_t ipi_timer_latch[NR_CPUS];
|
static atomic_t ipi_timer_latch[NR_CPUS];
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Number of InterProcessor Interupt (IPI) message buffers to allocate
|
* Number of InterProcessor Interrupt (IPI) message buffers to allocate
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define IPIBUF_PER_CPU 4
|
#define IPIBUF_PER_CPU 4
|
||||||
@ -780,7 +780,7 @@ void smtc_send_ipi(int cpu, int type, unsigned int action)
|
|||||||
if (cpu_data[cpu].vpe_id != cpu_data[smp_processor_id()].vpe_id) {
|
if (cpu_data[cpu].vpe_id != cpu_data[smp_processor_id()].vpe_id) {
|
||||||
if (type == SMTC_CLOCK_TICK)
|
if (type == SMTC_CLOCK_TICK)
|
||||||
atomic_inc(&ipi_timer_latch[cpu]);
|
atomic_inc(&ipi_timer_latch[cpu]);
|
||||||
/* If not on same VPE, enqueue and send cross-VPE interupt */
|
/* If not on same VPE, enqueue and send cross-VPE interrupt */
|
||||||
smtc_ipi_nq(&IPIQ[cpu], pipi);
|
smtc_ipi_nq(&IPIQ[cpu], pipi);
|
||||||
LOCK_CORE_PRA();
|
LOCK_CORE_PRA();
|
||||||
settc(cpu_data[cpu].tc_id);
|
settc(cpu_data[cpu].tc_id);
|
||||||
@ -1063,7 +1063,7 @@ static void setup_cross_vpe_interrupts(unsigned int nvpe)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
if (!cpu_has_vint)
|
if (!cpu_has_vint)
|
||||||
panic("SMTC Kernel requires Vectored Interupt support");
|
panic("SMTC Kernel requires Vectored Interrupt support");
|
||||||
|
|
||||||
set_vi_handler(MIPS_CPU_IPI_IRQ, ipi_irq_dispatch);
|
set_vi_handler(MIPS_CPU_IPI_IRQ, ipi_irq_dispatch);
|
||||||
|
|
||||||
|
@ -1101,7 +1101,7 @@ static void __init setup_scache(void)
|
|||||||
/*
|
/*
|
||||||
* Do the probing thing on R4000SC and R4400SC processors. Other
|
* Do the probing thing on R4000SC and R4400SC processors. Other
|
||||||
* processors don't have a S-cache that would be relevant to the
|
* processors don't have a S-cache that would be relevant to the
|
||||||
* Linux memory managment.
|
* Linux memory management.
|
||||||
*/
|
*/
|
||||||
switch (c->cputype) {
|
switch (c->cputype) {
|
||||||
case CPU_R4000SC:
|
case CPU_R4000SC:
|
||||||
|
@ -168,7 +168,7 @@ static void hub_set_piomode(nasid_t nasid)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* hub_pio_init - PIO-related hub initalization
|
* hub_pio_init - PIO-related hub initialization
|
||||||
*
|
*
|
||||||
* @hub: hubinfo structure for our hub
|
* @hub: hubinfo structure for our hub
|
||||||
*/
|
*/
|
||||||
|
@ -206,9 +206,8 @@ config SMP
|
|||||||
singleprocessor machines. On a singleprocessor machine, the kernel
|
singleprocessor machines. On a singleprocessor machine, the kernel
|
||||||
will run faster if you say N here.
|
will run faster if you say N here.
|
||||||
|
|
||||||
See also the <file:Documentation/smp.txt>,
|
See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
|
||||||
<file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
|
available at <http://www.tldp.org/docs.html#howto>.
|
||||||
at <http://www.tldp.org/docs.html#howto>.
|
|
||||||
|
|
||||||
If you don't know what to do here, say N.
|
If you don't know what to do here, say N.
|
||||||
|
|
||||||
|
@ -305,7 +305,7 @@ flush_user_cache_page_non_current(struct vm_area_struct *vma,
|
|||||||
/* save the current process space and pgd */
|
/* save the current process space and pgd */
|
||||||
unsigned long space = mfsp(3), pgd = mfctl(25);
|
unsigned long space = mfsp(3), pgd = mfctl(25);
|
||||||
|
|
||||||
/* we don't mind taking interrups since they may not
|
/* we don't mind taking interrupts since they may not
|
||||||
* do anything with user space, but we can't
|
* do anything with user space, but we can't
|
||||||
* be preempted here */
|
* be preempted here */
|
||||||
preempt_disable();
|
preempt_disable();
|
||||||
|
@ -1187,7 +1187,7 @@ static struct hp_hardware hp_hardware_list[] __devinitdata = {
|
|||||||
{HPHW_FIO, 0x005, 0x000A9, 0x00, "AllegroLow Core PCI USB KB"},
|
{HPHW_FIO, 0x005, 0x000A9, 0x00, "AllegroLow Core PCI USB KB"},
|
||||||
{HPHW_FIO, 0x006, 0x000A9, 0x00, "AllegroHigh Core PCI SuperIO RS-232"},
|
{HPHW_FIO, 0x006, 0x000A9, 0x00, "AllegroHigh Core PCI SuperIO RS-232"},
|
||||||
{HPHW_FIO, 0x006, 0x000A9, 0x00, "AllegroHigh Core PCI USB KB"},
|
{HPHW_FIO, 0x006, 0x000A9, 0x00, "AllegroHigh Core PCI USB KB"},
|
||||||
{HPHW_FIO, 0x007, 0x000A9, 0x0, "Miscelaneous PCI Plug-in"},
|
{HPHW_FIO, 0x007, 0x000A9, 0x0, "Miscellaneous PCI Plug-in"},
|
||||||
{HPHW_FIO, 0x00A, 0x000A9, 0x0, "Lego 360 Core PCI SuperIO RS-232"},
|
{HPHW_FIO, 0x00A, 0x000A9, 0x0, "Lego 360 Core PCI SuperIO RS-232"},
|
||||||
{HPHW_FIO, 0x00A, 0x000A9, 0x0, "Lego 360 Core PCI USB KB"},
|
{HPHW_FIO, 0x00A, 0x000A9, 0x0, "Lego 360 Core PCI USB KB"},
|
||||||
{HPHW_FIO, 0x004, 0x00320, 0x0, "Metheus Frame Buffer"},
|
{HPHW_FIO, 0x004, 0x00320, 0x0, "Metheus Frame Buffer"},
|
||||||
|
@ -333,7 +333,7 @@ setup_rt_frame(int sig, struct k_sigaction *ka, siginfo_t *info,
|
|||||||
flush_user_icache_range((unsigned long) &frame->tramp[0],
|
flush_user_icache_range((unsigned long) &frame->tramp[0],
|
||||||
(unsigned long) &frame->tramp[TRAMP_SIZE]);
|
(unsigned long) &frame->tramp[TRAMP_SIZE]);
|
||||||
|
|
||||||
/* TRAMP Words 0-4, Lenght 5 = SIGRESTARTBLOCK_TRAMP
|
/* TRAMP Words 0-4, Length 5 = SIGRESTARTBLOCK_TRAMP
|
||||||
* TRAMP Words 5-9, Length 4 = SIGRETURN_TRAMP
|
* TRAMP Words 5-9, Length 4 = SIGRETURN_TRAMP
|
||||||
* So the SIGRETURN_TRAMP is at the end of SIGRESTARTBLOCK_TRAMP
|
* So the SIGRETURN_TRAMP is at the end of SIGRESTARTBLOCK_TRAMP
|
||||||
*/
|
*/
|
||||||
|
@ -83,8 +83,8 @@ config SMP
|
|||||||
singleprocessor machines. On a singleprocessor machine, the kernel
|
singleprocessor machines. On a singleprocessor machine, the kernel
|
||||||
will run faster if you say N here.
|
will run faster if you say N here.
|
||||||
|
|
||||||
See also the <file:Documentation/smp.txt> and the SMP-HOWTO
|
See also the SMP-HOWTO available at
|
||||||
available at <http://www.tldp.org/docs.html#howto>.
|
<http://www.tldp.org/docs.html#howto>.
|
||||||
|
|
||||||
Even if you don't know what to do here, say Y.
|
Even if you don't know what to do here, say Y.
|
||||||
|
|
||||||
|
@ -673,9 +673,8 @@ config SMP
|
|||||||
People using multiprocessor machines who say Y here should also say
|
People using multiprocessor machines who say Y here should also say
|
||||||
Y to "Enhanced Real Time Clock Support", below.
|
Y to "Enhanced Real Time Clock Support", below.
|
||||||
|
|
||||||
See also the <file:Documentation/smp.txt>,
|
See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
|
||||||
<file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available
|
available at <http://www.tldp.org/docs.html#howto>.
|
||||||
at <http://www.tldp.org/docs.html#howto>.
|
|
||||||
|
|
||||||
If you don't know what to do here, say N.
|
If you don't know what to do here, say N.
|
||||||
|
|
||||||
|
@ -48,9 +48,8 @@ config SMP
|
|||||||
Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
|
Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
|
||||||
Management" code will be disabled if you say Y here.
|
Management" code will be disabled if you say Y here.
|
||||||
|
|
||||||
See also the <file:Documentation/smp.txt>,
|
See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
|
||||||
<file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
|
available at <http://www.tldp.org/docs.html#howto>.
|
||||||
<http://www.tldp.org/docs.html#howto>.
|
|
||||||
|
|
||||||
If you don't know what to do here, say N.
|
If you don't know what to do here, say N.
|
||||||
|
|
||||||
|
@ -305,7 +305,7 @@ void *sbus_alloc_consistent(struct sbus_dev *sdev, long len, u32 *dma_addrp)
|
|||||||
struct resource *res;
|
struct resource *res;
|
||||||
int order;
|
int order;
|
||||||
|
|
||||||
/* XXX why are some lenghts signed, others unsigned? */
|
/* XXX why are some lengths signed, others unsigned? */
|
||||||
if (len <= 0) {
|
if (len <= 0) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
@ -393,7 +393,7 @@ void sbus_free_consistent(struct sbus_dev *sdev, long n, void *p, u32 ba)
|
|||||||
*/
|
*/
|
||||||
dma_addr_t sbus_map_single(struct sbus_dev *sdev, void *va, size_t len, int direction)
|
dma_addr_t sbus_map_single(struct sbus_dev *sdev, void *va, size_t len, int direction)
|
||||||
{
|
{
|
||||||
/* XXX why are some lenghts signed, others unsigned? */
|
/* XXX why are some lengths signed, others unsigned? */
|
||||||
if (len <= 0) {
|
if (len <= 0) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -168,9 +168,8 @@ config SMP
|
|||||||
Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
|
Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
|
||||||
Management" code will be disabled if you say Y here.
|
Management" code will be disabled if you say Y here.
|
||||||
|
|
||||||
See also the <file:Documentation/smp.txt>,
|
See also <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO
|
||||||
<file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
|
available at <http://www.tldp.org/docs.html#howto>.
|
||||||
<http://www.tldp.org/docs.html#howto>.
|
|
||||||
|
|
||||||
If you don't know what to do here, say N.
|
If you don't know what to do here, say N.
|
||||||
|
|
||||||
|
@ -112,7 +112,7 @@ static int copy_sc_to_user(struct sigcontext __user *to,
|
|||||||
err |= PUTREG(regs, RSI, to, si);
|
err |= PUTREG(regs, RSI, to, si);
|
||||||
err |= PUTREG(regs, RBP, to, bp);
|
err |= PUTREG(regs, RBP, to, bp);
|
||||||
/*
|
/*
|
||||||
* Must use orignal RSP, which is passed in, rather than what's in
|
* Must use original RSP, which is passed in, rather than what's in
|
||||||
* the pt_regs, because that's already been updated to point at the
|
* the pt_regs, because that's already been updated to point at the
|
||||||
* signal frame.
|
* signal frame.
|
||||||
*/
|
*/
|
||||||
|
@ -202,8 +202,7 @@ config SMP
|
|||||||
Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
|
Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
|
||||||
Management" code will be disabled if you say Y here.
|
Management" code will be disabled if you say Y here.
|
||||||
|
|
||||||
See also the <file:Documentation/smp.txt>,
|
See also <file:Documentation/i386/IO-APIC.txt>,
|
||||||
<file:Documentation/i386/IO-APIC.txt>,
|
|
||||||
<file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
|
<file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
|
||||||
<http://www.tldp.org/docs.html#howto>.
|
<http://www.tldp.org/docs.html#howto>.
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
#include <linux/module.h>
|
#include <linux/module.h>
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* find_next_bit - find the first set bit in a memory region
|
* find_next_bit - find the next set bit in a memory region
|
||||||
* @addr: The address to base the search on
|
* @addr: The address to base the search on
|
||||||
* @offset: The bitnumber to start searching at
|
* @offset: The bitnumber to start searching at
|
||||||
* @size: The maximum size to search
|
* @size: The maximum size to search
|
||||||
|
@ -58,7 +58,7 @@ long find_first_zero_bit(const unsigned long * addr, unsigned long size)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* find_next_zero_bit - find the first zero bit in a memory region
|
* find_next_zero_bit - find the next zero bit in a memory region
|
||||||
* @addr: The address to base the search on
|
* @addr: The address to base the search on
|
||||||
* @offset: The bitnumber to start searching at
|
* @offset: The bitnumber to start searching at
|
||||||
* @size: The maximum size to search
|
* @size: The maximum size to search
|
||||||
|
@ -830,7 +830,7 @@ static int acpi_bus_get_flags(struct acpi_device *device)
|
|||||||
if (ACPI_SUCCESS(status))
|
if (ACPI_SUCCESS(status))
|
||||||
device->flags.wake_capable = 1;
|
device->flags.wake_capable = 1;
|
||||||
|
|
||||||
/* TBD: Peformance management */
|
/* TBD: Performance management */
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
*
|
*
|
||||||
* Module Name: utresrc - Resource managment utilities
|
* Module Name: utresrc - Resource management utilities
|
||||||
*
|
*
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
|
|
||||||
|
@ -837,7 +837,7 @@ static void piix_set_piomode(struct ata_port *ap, struct ata_device *adev)
|
|||||||
if (is_slave) {
|
if (is_slave) {
|
||||||
/* clear TIME1|IE1|PPE1|DTE1 */
|
/* clear TIME1|IE1|PPE1|DTE1 */
|
||||||
master_data &= 0xff0f;
|
master_data &= 0xff0f;
|
||||||
/* Enable SITRE (seperate slave timing register) */
|
/* Enable SITRE (separate slave timing register) */
|
||||||
master_data |= 0x4000;
|
master_data |= 0x4000;
|
||||||
/* enable PPE1, IE1 and TIME1 as needed */
|
/* enable PPE1, IE1 and TIME1 as needed */
|
||||||
master_data |= (control << 4);
|
master_data |= (control << 4);
|
||||||
|
@ -3097,7 +3097,7 @@ static int ata_dev_set_mode(struct ata_device *dev)
|
|||||||
/**
|
/**
|
||||||
* ata_do_set_mode - Program timings and issue SET FEATURES - XFER
|
* ata_do_set_mode - Program timings and issue SET FEATURES - XFER
|
||||||
* @link: link on which timings will be programmed
|
* @link: link on which timings will be programmed
|
||||||
* @r_failed_dev: out paramter for failed device
|
* @r_failed_dev: out parameter for failed device
|
||||||
*
|
*
|
||||||
* Standard implementation of the function used to tune and set
|
* Standard implementation of the function used to tune and set
|
||||||
* ATA device disk transfer mode (PIO3, UDMA6, etc.). If
|
* ATA device disk transfer mode (PIO3, UDMA6, etc.). If
|
||||||
|
@ -324,7 +324,7 @@ static int __init pata_at32_probe(struct platform_device *pdev)
|
|||||||
if (irq < 0)
|
if (irq < 0)
|
||||||
return irq;
|
return irq;
|
||||||
|
|
||||||
/* Setup struct containing private infomation */
|
/* Setup struct containing private information */
|
||||||
info = kzalloc(sizeof(struct at32_ide_info), GFP_KERNEL);
|
info = kzalloc(sizeof(struct at32_ide_info), GFP_KERNEL);
|
||||||
if (!info)
|
if (!info)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
@ -135,7 +135,7 @@ static void efar_set_piomode (struct ata_port *ap, struct ata_device *adev)
|
|||||||
idetm_data &= 0xCC0F;
|
idetm_data &= 0xCC0F;
|
||||||
idetm_data |= (control << 4);
|
idetm_data |= (control << 4);
|
||||||
|
|
||||||
/* Slave timing in seperate register */
|
/* Slave timing in separate register */
|
||||||
pci_read_config_byte(dev, 0x44, &slave_data);
|
pci_read_config_byte(dev, 0x44, &slave_data);
|
||||||
slave_data &= 0x0F << shift;
|
slave_data &= 0x0F << shift;
|
||||||
slave_data |= ((timings[pio][0] << 2) | timings[pio][1]) << shift;
|
slave_data |= ((timings[pio][0] << 2) | timings[pio][1]) << shift;
|
||||||
|
@ -128,7 +128,7 @@ static void it8213_set_piomode (struct ata_port *ap, struct ata_device *adev)
|
|||||||
idetm_data &= 0xCC0F;
|
idetm_data &= 0xCC0F;
|
||||||
idetm_data |= (control << 4);
|
idetm_data |= (control << 4);
|
||||||
|
|
||||||
/* Slave timing in seperate register */
|
/* Slave timing in separate register */
|
||||||
pci_read_config_byte(dev, 0x44, &slave_data);
|
pci_read_config_byte(dev, 0x44, &slave_data);
|
||||||
slave_data &= 0xF0;
|
slave_data &= 0xF0;
|
||||||
slave_data |= ((timings[pio][0] << 2) | timings[pio][1]) << 4;
|
slave_data |= ((timings[pio][0] << 2) | timings[pio][1]) << 4;
|
||||||
|
@ -345,7 +345,7 @@ static void sis_old_set_dmamode (struct ata_port *ap, struct ata_device *adev)
|
|||||||
|
|
||||||
if (adev->dma_mode < XFER_UDMA_0) {
|
if (adev->dma_mode < XFER_UDMA_0) {
|
||||||
/* bits 3-0 hold recovery timing bits 8-10 active timing and
|
/* bits 3-0 hold recovery timing bits 8-10 active timing and
|
||||||
the higer bits are dependant on the device */
|
the higher bits are dependant on the device */
|
||||||
timing &= ~0x870F;
|
timing &= ~0x870F;
|
||||||
timing |= mwdma_bits[speed];
|
timing |= mwdma_bits[speed];
|
||||||
} else {
|
} else {
|
||||||
@ -385,7 +385,7 @@ static void sis_66_set_dmamode (struct ata_port *ap, struct ata_device *adev)
|
|||||||
|
|
||||||
if (adev->dma_mode < XFER_UDMA_0) {
|
if (adev->dma_mode < XFER_UDMA_0) {
|
||||||
/* bits 3-0 hold recovery timing bits 8-10 active timing and
|
/* bits 3-0 hold recovery timing bits 8-10 active timing and
|
||||||
the higer bits are dependant on the device, bit 15 udma */
|
the higher bits are dependant on the device, bit 15 udma */
|
||||||
timing &= ~0x870F;
|
timing &= ~0x870F;
|
||||||
timing |= mwdma_bits[speed];
|
timing |= mwdma_bits[speed];
|
||||||
} else {
|
} else {
|
||||||
|
@ -1453,7 +1453,7 @@ static int cciss_eh_device_reset_handler(struct scsi_cmnd *scsicmd)
|
|||||||
rc = sendcmd(CCISS_RESET_MSG, ctlr, NULL, 0, 2, 0, 0,
|
rc = sendcmd(CCISS_RESET_MSG, ctlr, NULL, 0, 2, 0, 0,
|
||||||
(unsigned char *) &cmd_in_trouble->Header.LUN.LunAddrBytes[0],
|
(unsigned char *) &cmd_in_trouble->Header.LUN.LunAddrBytes[0],
|
||||||
TYPE_MSG);
|
TYPE_MSG);
|
||||||
/* sendcmd turned off interrputs on the board, turn 'em back on. */
|
/* sendcmd turned off interrupts on the board, turn 'em back on. */
|
||||||
(*c)->access.set_intr_mask(*c, CCISS_INTR_ON);
|
(*c)->access.set_intr_mask(*c, CCISS_INTR_ON);
|
||||||
if (rc == 0)
|
if (rc == 0)
|
||||||
return SUCCESS;
|
return SUCCESS;
|
||||||
@ -1483,7 +1483,7 @@ static int cciss_eh_abort_handler(struct scsi_cmnd *scsicmd)
|
|||||||
0, 2, 0, 0,
|
0, 2, 0, 0,
|
||||||
(unsigned char *) &cmd_to_abort->Header.LUN.LunAddrBytes[0],
|
(unsigned char *) &cmd_to_abort->Header.LUN.LunAddrBytes[0],
|
||||||
TYPE_MSG);
|
TYPE_MSG);
|
||||||
/* sendcmd turned off interrputs on the board, turn 'em back on. */
|
/* sendcmd turned off interrupts on the board, turn 'em back on. */
|
||||||
(*c)->access.set_intr_mask(*c, CCISS_INTR_ON);
|
(*c)->access.set_intr_mask(*c, CCISS_INTR_ON);
|
||||||
if (rc == 0)
|
if (rc == 0)
|
||||||
return SUCCESS;
|
return SUCCESS;
|
||||||
|
@ -383,7 +383,7 @@ static void btuart_change_speed(btuart_info_t *info, unsigned int speed)
|
|||||||
outb(lcr, iobase + UART_LCR); /* Set 8N1 */
|
outb(lcr, iobase + UART_LCR); /* Set 8N1 */
|
||||||
outb(fcr, iobase + UART_FCR); /* Enable FIFO's */
|
outb(fcr, iobase + UART_FCR); /* Enable FIFO's */
|
||||||
|
|
||||||
/* Turn on interrups */
|
/* Turn on interrupts */
|
||||||
outb(UART_IER_RLSI | UART_IER_RDI | UART_IER_THRI, iobase + UART_IER);
|
outb(UART_IER_RLSI | UART_IER_RDI | UART_IER_THRI, iobase + UART_IER);
|
||||||
|
|
||||||
spin_unlock_irqrestore(&(info->lock), flags);
|
spin_unlock_irqrestore(&(info->lock), flags);
|
||||||
|
@ -584,7 +584,7 @@ USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|||||||
#define R300_RE_FOG_START 0x4298
|
#define R300_RE_FOG_START 0x4298
|
||||||
|
|
||||||
/* Not sure why there are duplicate of factor and constant values.
|
/* Not sure why there are duplicate of factor and constant values.
|
||||||
* My best guess so far is that there are seperate zbiases for test and write.
|
* My best guess so far is that there are separate zbiases for test and write.
|
||||||
* Ordering might be wrong.
|
* Ordering might be wrong.
|
||||||
* Some of the tests indicate that fgl has a fallback implementation of zbias
|
* Some of the tests indicate that fgl has a fallback implementation of zbias
|
||||||
* via pixel shaders.
|
* via pixel shaders.
|
||||||
|
@ -400,7 +400,7 @@ static inline uint32_t *via_align_buffer(drm_via_private_t * dev_priv,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This function is used internally by ring buffer mangement code.
|
* This function is used internally by ring buffer management code.
|
||||||
*
|
*
|
||||||
* Returns virtual pointer to ring buffer.
|
* Returns virtual pointer to ring buffer.
|
||||||
*/
|
*/
|
||||||
|
@ -18,7 +18,7 @@
|
|||||||
*
|
*
|
||||||
* NOTES:
|
* NOTES:
|
||||||
* - Locking is required for safe execution of EFI calls with regards
|
* - Locking is required for safe execution of EFI calls with regards
|
||||||
* to interrrupts and SMP.
|
* to interrupts and SMP.
|
||||||
*
|
*
|
||||||
* TODO (December 1999):
|
* TODO (December 1999):
|
||||||
* - provide the API to set/get the WakeUp Alarm (different from the
|
* - provide the API to set/get the WakeUp Alarm (different from the
|
||||||
|
@ -1797,7 +1797,7 @@ static unsigned termios2digi_c(struct channel *ch, unsigned cflag)
|
|||||||
res |= cflag & ((CBAUD ^ CBAUDEX) | PARODD | PARENB | CSTOPB | CSIZE);
|
res |= cflag & ((CBAUD ^ CBAUDEX) | PARODD | PARENB | CSTOPB | CSIZE);
|
||||||
/*
|
/*
|
||||||
* This gets a little confusing. The Digi cards have their own
|
* This gets a little confusing. The Digi cards have their own
|
||||||
* representation of c_cflags controling baud rate. For the most part
|
* representation of c_cflags controlling baud rate. For the most part
|
||||||
* this is identical to the Linux implementation. However; Digi
|
* this is identical to the Linux implementation. However; Digi
|
||||||
* supports one rate (76800) that Linux doesn't. This means that the
|
* supports one rate (76800) that Linux doesn't. This means that the
|
||||||
* c_cflag entry that would normally mean 76800 for Digi actually means
|
* c_cflag entry that would normally mean 76800 for Digi actually means
|
||||||
@ -2068,7 +2068,7 @@ static int info_ioctl(struct tty_struct *tty, struct file *file,
|
|||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
* This call is made by the apps to complete the
|
* This call is made by the apps to complete the
|
||||||
* initilization of the board(s). This routine is
|
* initialization of the board(s). This routine is
|
||||||
* responsible for setting the card to its initial
|
* responsible for setting the card to its initial
|
||||||
* state and setting the drivers control fields to the
|
* state and setting the drivers control fields to the
|
||||||
* sutianle settings for the card in question.
|
* sutianle settings for the card in question.
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
* The hangcheck-timer driver uses the TSC to catch delays that
|
* The hangcheck-timer driver uses the TSC to catch delays that
|
||||||
* jiffies does not notice. A timer is set. When the timer fires, it
|
* jiffies does not notice. A timer is set. When the timer fires, it
|
||||||
* checks whether it was delayed and if that delay exceeds a given
|
* checks whether it was delayed and if that delay exceeds a given
|
||||||
* margin of error. The hangcheck_tick module paramter takes the timer
|
* margin of error. The hangcheck_tick module parameter takes the timer
|
||||||
* duration in seconds. The hangcheck_margin parameter defines the
|
* duration in seconds. The hangcheck_margin parameter defines the
|
||||||
* margin of error, in seconds. The defaults are 60 seconds for the
|
* margin of error, in seconds. The defaults are 60 seconds for the
|
||||||
* timer and 180 seconds for the margin of error. IOW, a timer is set
|
* timer and 180 seconds for the margin of error. IOW, a timer is set
|
||||||
|
@ -838,7 +838,7 @@ static int __devexit hvcs_remove(struct vio_dev *dev)
|
|||||||
if (!hvcsd)
|
if (!hvcsd)
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
|
|
||||||
/* By this time the vty-server won't be getting any more interrups */
|
/* By this time the vty-server won't be getting any more interrupts */
|
||||||
|
|
||||||
spin_lock_irqsave(&hvcsd->lock, flags);
|
spin_lock_irqsave(&hvcsd->lock, flags);
|
||||||
|
|
||||||
|
@ -661,7 +661,7 @@ i2QueueCommands(int type, i2ChanStrPtr pCh, int timeout, int nCommands,
|
|||||||
if (!in_interrupt()) {
|
if (!in_interrupt()) {
|
||||||
schedule_timeout_interruptible(1); // short nap
|
schedule_timeout_interruptible(1); // short nap
|
||||||
} else {
|
} else {
|
||||||
// we cannot sched/sleep in interrrupt silly
|
// we cannot sched/sleep in interrupt silly
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
if (signal_pending(current)) {
|
if (signal_pending(current)) {
|
||||||
|
@ -1251,7 +1251,7 @@ ip2_poll(unsigned long arg)
|
|||||||
|
|
||||||
// Just polled boards, IRQ = 0 will hit all non-interrupt boards.
|
// Just polled boards, IRQ = 0 will hit all non-interrupt boards.
|
||||||
// It will NOT poll boards handled by hard interrupts.
|
// It will NOT poll boards handled by hard interrupts.
|
||||||
// The issue of queued BH interrups is handled in ip2_interrupt().
|
// The issue of queued BH interrupts is handled in ip2_interrupt().
|
||||||
ip2_polled_interrupt();
|
ip2_polled_interrupt();
|
||||||
|
|
||||||
PollTimer.expires = POLL_TIMEOUT;
|
PollTimer.expires = POLL_TIMEOUT;
|
||||||
|
@ -1544,7 +1544,7 @@ static void mgsl_isr_receive_data( struct mgsl_struct *info )
|
|||||||
|
|
||||||
/* mgsl_isr_misc()
|
/* mgsl_isr_misc()
|
||||||
*
|
*
|
||||||
* Service a miscellaneos interrupt source.
|
* Service a miscellaneous interrupt source.
|
||||||
*
|
*
|
||||||
* Arguments: info pointer to device extension (instance data)
|
* Arguments: info pointer to device extension (instance data)
|
||||||
* Return Value: None
|
* Return Value: None
|
||||||
|
@ -505,7 +505,7 @@ static int __init toshiba_init(void)
|
|||||||
if (tosh_probe())
|
if (tosh_probe())
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
|
|
||||||
printk(KERN_INFO "Toshiba System Managment Mode driver v" TOSH_VERSION "\n");
|
printk(KERN_INFO "Toshiba System Management Mode driver v" TOSH_VERSION "\n");
|
||||||
|
|
||||||
/* set the port to use for Fn status if not specified as a parameter */
|
/* set the port to use for Fn status if not specified as a parameter */
|
||||||
if (tosh_fn==0x00)
|
if (tosh_fn==0x00)
|
||||||
|
@ -15,16 +15,15 @@
|
|||||||
#include <linux/dio.h>
|
#include <linux/dio.h>
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* dio_match_device - Tell if a DIO device structure has a matching
|
* dio_match_device - Tell if a DIO device structure has a matching DIO device id structure
|
||||||
* DIO device id structure
|
* @ids: array of DIO device id structures to search in
|
||||||
* @ids: array of DIO device id structures to search in
|
* @d: the DIO device structure to match against
|
||||||
* @dev: the DIO device structure to match against
|
*
|
||||||
*
|
* Used by a driver to check whether a DIO device present in the
|
||||||
* Used by a driver to check whether a DIO device present in the
|
* system is in its list of supported devices. Returns the matching
|
||||||
* system is in its list of supported devices. Returns the matching
|
* dio_device_id structure or %NULL if there is no match.
|
||||||
* dio_device_id structure or %NULL if there is no match.
|
*/
|
||||||
*/
|
|
||||||
|
|
||||||
const struct dio_device_id *
|
const struct dio_device_id *
|
||||||
dio_match_device(const struct dio_device_id *ids,
|
dio_match_device(const struct dio_device_id *ids,
|
||||||
@ -66,13 +65,13 @@ static int dio_device_probe(struct device *dev)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* dio_register_driver - register a new DIO driver
|
* dio_register_driver - register a new DIO driver
|
||||||
* @drv: the driver structure to register
|
* @drv: the driver structure to register
|
||||||
*
|
*
|
||||||
* Adds the driver structure to the list of registered drivers
|
* Adds the driver structure to the list of registered drivers
|
||||||
* Returns zero or a negative error value.
|
* Returns zero or a negative error value.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
int dio_register_driver(struct dio_driver *drv)
|
int dio_register_driver(struct dio_driver *drv)
|
||||||
{
|
{
|
||||||
@ -85,15 +84,15 @@ int dio_register_driver(struct dio_driver *drv)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* dio_unregister_driver - unregister a DIO driver
|
* dio_unregister_driver - unregister a DIO driver
|
||||||
* @drv: the driver structure to unregister
|
* @drv: the driver structure to unregister
|
||||||
*
|
*
|
||||||
* Deletes the driver structure from the list of registered DIO drivers,
|
* Deletes the driver structure from the list of registered DIO drivers,
|
||||||
* gives it a chance to clean up by calling its remove() function for
|
* gives it a chance to clean up by calling its remove() function for
|
||||||
* each device it was responsible for, and marks those devices as
|
* each device it was responsible for, and marks those devices as
|
||||||
* driverless.
|
* driverless.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void dio_unregister_driver(struct dio_driver *drv)
|
void dio_unregister_driver(struct dio_driver *drv)
|
||||||
{
|
{
|
||||||
@ -101,16 +100,15 @@ void dio_unregister_driver(struct dio_driver *drv)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* dio_bus_match - Tell if a DIO device structure has a matching DIO
|
* dio_bus_match - Tell if a DIO device structure has a matching DIO device id structure
|
||||||
* device id structure
|
* @dev: the DIO device structure to match against
|
||||||
* @ids: array of DIO device id structures to search in
|
* @drv: the &device_driver that points to the array of DIO device id structures to search
|
||||||
* @dev: the DIO device structure to match against
|
*
|
||||||
*
|
* Used by a driver to check whether a DIO device present in the
|
||||||
* Used by a driver to check whether a DIO device present in the
|
* system is in its list of supported devices. Returns the matching
|
||||||
* system is in its list of supported devices. Returns the matching
|
* dio_device_id structure or %NULL if there is no match.
|
||||||
* dio_device_id structure or %NULL if there is no match.
|
*/
|
||||||
*/
|
|
||||||
|
|
||||||
static int dio_bus_match(struct device *dev, struct device_driver *drv)
|
static int dio_bus_match(struct device *dev, struct device_driver *drv)
|
||||||
{
|
{
|
||||||
|
@ -73,7 +73,7 @@ EXPORT_SYMBOL_GPL(edac_pci_alloc_ctl_info);
|
|||||||
*
|
*
|
||||||
* Last action on the pci control structure.
|
* Last action on the pci control structure.
|
||||||
*
|
*
|
||||||
* call the remove sysfs informaton, which will unregister
|
* call the remove sysfs information, which will unregister
|
||||||
* this control struct's kobj. When that kobj's ref count
|
* this control struct's kobj. When that kobj's ref count
|
||||||
* goes to zero, its release function will be call and then
|
* goes to zero, its release function will be call and then
|
||||||
* kfree() the memory.
|
* kfree() the memory.
|
||||||
|
@ -351,7 +351,7 @@ struct i5000_pvt {
|
|||||||
u16 b1_ambpresent0; /* Branch 1, Channel 8 */
|
u16 b1_ambpresent0; /* Branch 1, Channel 8 */
|
||||||
u16 b1_ambpresent1; /* Branch 1, Channel 1 */
|
u16 b1_ambpresent1; /* Branch 1, Channel 1 */
|
||||||
|
|
||||||
/* DIMM infomation matrix, allocating architecture maximums */
|
/* DIMM information matrix, allocating architecture maximums */
|
||||||
struct i5000_dimm_info dimm_info[MAX_CSROWS][MAX_CHANNELS];
|
struct i5000_dimm_info dimm_info[MAX_CSROWS][MAX_CHANNELS];
|
||||||
|
|
||||||
/* Actual values for this controller */
|
/* Actual values for this controller */
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
*
|
*
|
||||||
* This code takes information provided by BIOS EDD calls
|
* This code takes information provided by BIOS EDD calls
|
||||||
* fn41 - Check Extensions Present and
|
* fn41 - Check Extensions Present and
|
||||||
* fn48 - Get Device Parametes with EDD extensions
|
* fn48 - Get Device Parameters with EDD extensions
|
||||||
* made in setup.S, copied to safe structures in setup.c,
|
* made in setup.S, copied to safe structures in setup.c,
|
||||||
* and presents it in sysfs.
|
* and presents it in sysfs.
|
||||||
*
|
*
|
||||||
|
@ -199,7 +199,7 @@ static int ide_timing_compute(ide_drive_t *drive, short speed, struct ide_timing
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Lenghten active & recovery time so that cycle time is correct.
|
* Lengthen active & recovery time so that cycle time is correct.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if (t->act8b + t->rec8b < t->cyc8b) {
|
if (t->act8b + t->rec8b < t->cyc8b) {
|
||||||
|
@ -17,7 +17,6 @@
|
|||||||
#include <linux/init.h>
|
#include <linux/init.h>
|
||||||
#include <linux/gameport.h>
|
#include <linux/gameport.h>
|
||||||
#include <linux/wait.h>
|
#include <linux/wait.h>
|
||||||
#include <linux/sched.h>
|
|
||||||
#include <linux/slab.h>
|
#include <linux/slab.h>
|
||||||
#include <linux/delay.h>
|
#include <linux/delay.h>
|
||||||
#include <linux/kthread.h>
|
#include <linux/kthread.h>
|
||||||
|
@ -42,7 +42,6 @@
|
|||||||
#include <linux/delay.h>
|
#include <linux/delay.h>
|
||||||
#include <linux/platform_device.h>
|
#include <linux/platform_device.h>
|
||||||
#include <linux/input.h>
|
#include <linux/input.h>
|
||||||
#include <linux/irq.h>
|
|
||||||
|
|
||||||
#include <asm/portmux.h>
|
#include <asm/portmux.h>
|
||||||
#include <asm/mach/bf54x_keys.h>
|
#include <asm/mach/bf54x_keys.h>
|
||||||
|
@ -17,7 +17,6 @@
|
|||||||
*/
|
*/
|
||||||
#include <linux/device.h>
|
#include <linux/device.h>
|
||||||
#include <linux/errno.h>
|
#include <linux/errno.h>
|
||||||
#include <linux/init.h>
|
|
||||||
#include <linux/interrupt.h>
|
#include <linux/interrupt.h>
|
||||||
#include <linux/init.h>
|
#include <linux/init.h>
|
||||||
#include <linux/input.h>
|
#include <linux/input.h>
|
||||||
|
@ -141,7 +141,7 @@ static void gscps2_flush(struct gscps2port *ps2port)
|
|||||||
/*
|
/*
|
||||||
* gscps2_writeb_output() - write a byte to the port
|
* gscps2_writeb_output() - write a byte to the port
|
||||||
*
|
*
|
||||||
* returns 1 on sucess, 0 on error
|
* returns 1 on success, 0 on error
|
||||||
*/
|
*/
|
||||||
|
|
||||||
static inline int gscps2_writeb_output(struct gscps2port *ps2port, u8 data)
|
static inline int gscps2_writeb_output(struct gscps2port *ps2port, u8 data)
|
||||||
|
@ -106,7 +106,7 @@ DbgRegister (char *drvName, char *drvTag, unsigned long dbgMask)
|
|||||||
return (1) ;
|
return (1) ;
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
* Check if we registered whith an old maint driver (see debuglib.h)
|
* Check if we registered with an old maint driver (see debuglib.h)
|
||||||
*/
|
*/
|
||||||
if ( myDriverDebugHandle.dbg_end != NULL
|
if ( myDriverDebugHandle.dbg_end != NULL
|
||||||
/* location of 'dbg_prt' in _OldDbgHandle_ struct */
|
/* location of 'dbg_prt' in _OldDbgHandle_ struct */
|
||||||
|
@ -177,7 +177,7 @@ DBG_DECL(PRV3)
|
|||||||
} }
|
} }
|
||||||
#endif
|
#endif
|
||||||
/*
|
/*
|
||||||
* For event level debug use a separate define, the paramete are
|
* For event level debug use a separate define, the parameter are
|
||||||
* different and cause compiler errors on some systems.
|
* different and cause compiler errors on some systems.
|
||||||
*/
|
*/
|
||||||
#define DBG_EVL_ID(args) \
|
#define DBG_EVL_ID(args) \
|
||||||
|
@ -285,7 +285,7 @@ byte pr_dpc(ADAPTER * a)
|
|||||||
a->ram_in(a, &RcIn->RcId),
|
a->ram_in(a, &RcIn->RcId),
|
||||||
a->ram_in(a, &RcIn->RcCh),
|
a->ram_in(a, &RcIn->RcCh),
|
||||||
a->ram_inw(a, &RcIn->Reference),
|
a->ram_inw(a, &RcIn->Reference),
|
||||||
tmp[0], /* type of extended informtion */
|
tmp[0], /* type of extended information */
|
||||||
tmp[1]); /* extended information */
|
tmp[1]); /* extended information */
|
||||||
a->ram_out(a, &RcIn->Rc, 0);
|
a->ram_out(a, &RcIn->Rc, 0);
|
||||||
}
|
}
|
||||||
|
@ -4941,7 +4941,7 @@ void sig_ind(PLCI * plci)
|
|||||||
/* b = IE1 */
|
/* b = IE1 */
|
||||||
/* S = IE1 length + cont. */
|
/* S = IE1 length + cont. */
|
||||||
/* b = IE2 */
|
/* b = IE2 */
|
||||||
/* S = IE2 lenght + cont. */
|
/* S = IE2 length + cont. */
|
||||||
sendf(plci->appl,
|
sendf(plci->appl,
|
||||||
_MANUFACTURER_I,
|
_MANUFACTURER_I,
|
||||||
Id,
|
Id,
|
||||||
|
@ -541,7 +541,7 @@ hycapi_rx_capipkt(hysdn_card * card, unsigned char *buf, unsigned short len)
|
|||||||
}
|
}
|
||||||
ctrl = &cinfo->capi_ctrl;
|
ctrl = &cinfo->capi_ctrl;
|
||||||
if(len < CAPI_MSG_BASELEN) {
|
if(len < CAPI_MSG_BASELEN) {
|
||||||
printk(KERN_ERR "HYSDN Card%d: invalid CAPI-message, lenght %d!\n",
|
printk(KERN_ERR "HYSDN Card%d: invalid CAPI-message, length %d!\n",
|
||||||
card->myid, len);
|
card->myid, len);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -12,7 +12,7 @@
|
|||||||
* - maybe add timeout to commands ?
|
* - maybe add timeout to commands ?
|
||||||
* - blocking version of time functions
|
* - blocking version of time functions
|
||||||
* - polling version of i2c commands (including timer that works with
|
* - polling version of i2c commands (including timer that works with
|
||||||
* interrutps off)
|
* interrupts off)
|
||||||
* - maybe avoid some data copies with i2c by directly using the smu cmd
|
* - maybe avoid some data copies with i2c by directly using the smu cmd
|
||||||
* buffer and a lower level internal interface
|
* buffer and a lower level internal interface
|
||||||
* - understand SMU -> CPU events and implement reception of them via
|
* - understand SMU -> CPU events and implement reception of them via
|
||||||
@ -179,7 +179,7 @@ static irqreturn_t smu_db_intr(int irq, void *arg)
|
|||||||
/* CPU might have brought back the cache line, so we need
|
/* CPU might have brought back the cache line, so we need
|
||||||
* to flush again before peeking at the SMU response. We
|
* to flush again before peeking at the SMU response. We
|
||||||
* flush the entire buffer for now as we haven't read the
|
* flush the entire buffer for now as we haven't read the
|
||||||
* reply lenght (it's only 2 cache lines anyway)
|
* reply length (it's only 2 cache lines anyway)
|
||||||
*/
|
*/
|
||||||
faddr = (unsigned long)smu->cmd_buf;
|
faddr = (unsigned long)smu->cmd_buf;
|
||||||
flush_inval_dcache_range(faddr, faddr + 256);
|
flush_inval_dcache_range(faddr, faddr + 256);
|
||||||
|
@ -388,7 +388,7 @@ static int saa7146_init_one(struct pci_dev *pci, const struct pci_device_id *ent
|
|||||||
}
|
}
|
||||||
dev->revision &= 0xf;
|
dev->revision &= 0xf;
|
||||||
|
|
||||||
/* remap the memory from virtual to physical adress */
|
/* remap the memory from virtual to physical address */
|
||||||
|
|
||||||
err = pci_request_region(pci, 0, "saa7146");
|
err = pci_request_region(pci, 0, "saa7146");
|
||||||
if (err < 0)
|
if (err < 0)
|
||||||
|
@ -681,7 +681,7 @@ static void dvb_net_ule( struct net_device *dev, const u8 *buf, size_t buf_len )
|
|||||||
drop = 1;
|
drop = 1;
|
||||||
/* else: destination address matches the MAC address of our receiver device */
|
/* else: destination address matches the MAC address of our receiver device */
|
||||||
}
|
}
|
||||||
/* else: promiscious mode; pass everything up the stack */
|
/* else: promiscuous mode; pass everything up the stack */
|
||||||
|
|
||||||
if (drop) {
|
if (drop) {
|
||||||
#ifdef ULE_DEBUG
|
#ifdef ULE_DEBUG
|
||||||
|
@ -4344,7 +4344,7 @@ static void rv605_muxsel(struct bttv *btv, unsigned int input)
|
|||||||
gpio_bits(0x200,0x000);
|
gpio_bits(0x200,0x000);
|
||||||
mdelay(1);
|
mdelay(1);
|
||||||
|
|
||||||
/* create a new conection */
|
/* create a new connection */
|
||||||
gpio_bits(0x480,0x080);
|
gpio_bits(0x480,0x080);
|
||||||
gpio_bits(0x480,0x480);
|
gpio_bits(0x480,0x480);
|
||||||
mdelay(1);
|
mdelay(1);
|
||||||
|
@ -326,7 +326,7 @@ static int indycam_attach(struct i2c_adapter *adap, int addr, int kind)
|
|||||||
// initialize
|
// initialize
|
||||||
err = indycam_write_block(client, 0, sizeof(initseq), (u8 *)&initseq);
|
err = indycam_write_block(client, 0, sizeof(initseq), (u8 *)&initseq);
|
||||||
if (err) {
|
if (err) {
|
||||||
printk(KERN_ERR "IndyCam initalization failed\n");
|
printk(KERN_ERR "IndyCam initialization failed\n");
|
||||||
err = -EIO;
|
err = -EIO;
|
||||||
goto out_detach_client;
|
goto out_detach_client;
|
||||||
}
|
}
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user