Oleg Nesterov [Sun, 8 Jan 2006 19:19:33 +0000 (22:19 +0300)]
[PATCH] rcu: don't set ->next_pending in rcu_start_batch()
I think it is better to set ->next_pending in the caller, when
it is needed. This saves one parameter, and this coincides with
cpu_quiet() beahaviour, which sets ->completed = ->cur itself.
Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Acked-by: Paul E. McKenney <paulmck@us.ibm.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Pierre Ossman [Mon, 9 Jan 2006 22:51:46 +0000 (22:51 +0000)]
[MMC] Indicate that R1/R1b contains command opcode
Some controllers actually check the first byte of the response (most
don't). This byte contains the command opcode for R1/R1b and all 1:s
for other types. The difference must be indicated to the controller
so it knows which reply to expect.
Problem narrowed down by Luis F. Ortiz and Richard Mortimer.
I tried using %l2 as suggested by Luis and that works for me.
Looking at the code I wonder if it makes sense to simplify the code
a little bit. The following works for me but I'm not sure how to
exercise the "NOERROR" codepath.
Signed-off-by: David S. Miller <davem@davemloft.net>
Patrick McHardy [Mon, 9 Jan 2006 06:36:54 +0000 (22:36 -0800)]
[IPV4]: ip_output.c needs xfrm.h
This patch fixes a warning from my IPsec patches:
CC net/ipv4/ip_output.o
net/ipv4/ip_output.c: In function 'ip_finish_output':
net/ipv4/ip_output.c:208: warning: implicit declaration of function
'xfrm4_output_finish'
Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
A new device to do intermidiate functional block in a system shared
manner. To use the new functionality, you need to turn on
qos/classifier actions.
The new functionality can be grouped as:
1) qdiscs/policies that are per device as opposed to system wide. ifb
allows for a device which can be redirected to thus providing an
impression of sharing.
2) Allows for queueing incoming traffic for shaping instead of
dropping.
Packets are redirected to this device using tc/action mirred redirect
construct. If they are sent to it by plain routing instead then they
will merely be dropped and the stats would indicate that.
Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca> Signed-off-by: David S. Miller <davem@davemloft.net>
Patrick McHardy [Mon, 9 Jan 2006 06:15:34 +0000 (22:15 -0800)]
[PKT_SCHED]: Convert tc action functions to single skb pointers
tcf_action_exec only gets a single skb pointer and doesn't own the skb,
but passes double skb pointers (to a local variable) to the action
functions. Change to use single skb pointers everywhere.
Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
Herbert Xu [Sat, 7 Jan 2006 05:38:15 +0000 (16:38 +1100)]
[CRYPTO] cipher: Set alignmask for multi-byte loads
Many cipher implementations use 4-byte/8-byte loads/stores which require
alignment on some architectures. This patch explicitly sets the alignment
requirements for them.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Nicolas Pitre [Sun, 13 Nov 2005 00:17:33 +0000 (11:17 +1100)]
[CRYPTO] sha1: Avoid shifting count left and right
This patch avoids shifting the count left and right needlessly for each
call to sha1_update(). It instead can be done only once at the end in
sha1_final().
Keeping the previous test example (sha1_update() successively called with
len=64), a 1.3% performance increase can be observed on i386, or 0.2% on
ARM. The generated code is also smaller on ARM.
Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Nicolas Pitre [Sat, 12 Nov 2005 23:47:20 +0000 (10:47 +1100)]
[CRYPTO] sha1: Avoid useless memcpy()
The current code unconditionally copy the first block for every call to
sha1_update(). This can be avoided if there is no pending partial block.
This is always the case on the first call to sha1_update() (if the length
is >= 64 of course.
Furthermore, temp does need to be called if sha_transform is never invoked.
Also consolidate the sha_transform calls into one to reduce code size.
Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Herbert Xu [Sat, 5 Nov 2005 07:06:26 +0000 (18:06 +1100)]
[CRYPTO] Allow AES C/ASM implementations to coexist
As the Crypto API now allows multiple implementations to be registered
for the same algorithm, we no longer have to play tricks with Kconfig
to select the right AES implementation.
This patch sets the driver name and priority for all the AES
implementations and removes the Kconfig conditions on the C implementation
for AES.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Herbert Xu [Sat, 5 Nov 2005 05:58:14 +0000 (16:58 +1100)]
[CRYPTO] Allow multiple implementations of the same algorithm
This is the first step on the road towards asynchronous support in
the Crypto API. It adds support for having multiple crypto_alg objects
for the same algorithm registered in the system.
For example, each device driver would register a crypto_alg object
for each algorithm that it supports. While at the same time the
user may load software implementations of those same algorithms.
Users of the Crypto API may then select a specific implementation
by name, or choose any implementation for a given algorithm with
the highest priority.
The priority field is a 32-bit signed integer. In future it will be
possible to modify it from user-space.
This also provides a solution to the problem of selecting amongst
various AES implementations, that is, aes vs. aes-i586 vs. aes-padlock.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Herbert Xu [Sun, 30 Oct 2005 10:25:15 +0000 (21:25 +1100)]
[CRYPTO] Use standard byte order macros wherever possible
A lot of crypto code needs to read/write a 32-bit/64-bit words in a
specific gender. Many of them open code them by reading/writing one
byte at a time. This patch converts all the applicable usages over
to use the standard byte order macros.
This is based on a previous patch by Denis Vlasenko.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Hans Verkuil [Mon, 9 Jan 2006 20:21:37 +0000 (18:21 -0200)]
V4L/DVB (3326): Fix stereo and standard reporting of msp3400 (esp. for radio)
- Add VIDIOC_LOG_STATUS to the radio device ioctl list.
- Reduce the confusion between modes and standards
- Fix stereo reporting for radio.
- Don't set i2c configuration if the chip doesn't support it.
- Fix reporting of current standard for radio.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Hans Verkuil [Mon, 9 Jan 2006 20:21:36 +0000 (18:21 -0200)]
V4L/DVB (3324): msp3400 audio handling bug fixes.
- Check capabilities for audio settings (volume, balance,
bass, treble, loudness, mute)
- added loudness support
- added missing VIDEO_AUDIO_BALANCE flags for v4l1 compatibility
- do not call msp_any_detect_stereo for non-autoselect chips to
retrieve the current stereo setting: that will temporarily mute
the sound. It is only needed when the stereo mode might be
changed, and for autoselect msp processors that do not periodically
need to update their stereo setting.
- do not wake up the thread if the standard did not change. Prevents
temporary audio drop-out if the standard is set to the same value.
- fix confused stereo detect code where V4L2_TUNER_SUB_STEREO and
V4L2_TUNER_MODE_STEREO values were used incorrectly.
- stereo mode reporting was broken (v4l2 value used to index a
string array expecting v4l1 mode values).
- do not set dsp register 0x30 in the 3410d thread: that register
does not exist for pre-'G' revision msp chips.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Marc Koschewski [Mon, 9 Jan 2006 20:21:36 +0000 (18:21 -0200)]
V4L/DVB (3323): Add Kconfig option for wrongly programmed devices
- A new Kconfig option makes the user able to select if the dibusb-mb driver shall claim faulty programmed USB devices which are coming with default Cypress USB IDs.
Signed-off-by: Patrick Boettcher <pb@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
d binderman [Mon, 9 Jan 2006 20:21:32 +0000 (18:21 -0200)]
V4L/DVB (3318): Fixes warning: variable "ret" is used before its value is set
- Fixes compiling warning on kernel 2.6.15 with the Intel C compiler.
- It said drivers/media/dvb/frontends/bcm3510.c(258):
warning #592: variable "ret" is used before its value is set
Signed-off-by: Patrick Boettcher <pb@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Hans Verkuil [Mon, 9 Jan 2006 20:21:32 +0000 (18:21 -0200)]
V4L/DVB (3317): msp3400: use v4l2_std_id and determine chip capabilities.
- Replace old norm by the v4l2_std_id values.
- Add code to correctly detect the various capabilities of the
various msp chips. It's not yet used, that's going to be the next step.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Chris Pascoe [Mon, 9 Jan 2006 20:21:31 +0000 (18:21 -0200)]
V4L/DVB (3315): Use correct AGC settings for DNTV Live! DVB-T Pro
- My original settings for this board were incorrect and resulted in
an increased number of signal dropouts. Replace this with the settings
from the Windows driver.
Signed-off-by: Chris Pascoe <c.pascoe@itee.uq.edu.au> Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Peter Missel [Mon, 9 Jan 2006 20:21:23 +0000 (18:21 -0200)]
V4L/DVB (3309): SAA7134: GPIO IRQ improvements
- Saa7134-core.c saa7134_irq(): Separate GPIO16 and GPIO18 handling. Call
IR-remote-GPIO handler only if the GPIO IRQ is "owned" by it. Added
infrastructure to branch out to a future I2C-IR IRQ handler.
saa7134-core.c saa7134_hwinit2(): Enable only the one GPIO pin and edge to
trigger an IRQ that is wired as keyup/keydown mask. IRQ will only be
generated for an actual key-down event.
saa7134-input.c flyvideo_codes[]: Replace numpad keys with normal ones. Put
meaning to mystery keys. Change some key definitions to have their functions
match their labels better. Fix typos.
saa7134-input.c flydvb_codes[]: Added new table for the larger remote that
comes with the LifeView FlyDVB series.
saa7134-input.c build_key(): In IRQ mode, signal key-down and then key-up
straight in one go.
Deepak Saxena [Mon, 9 Jan 2006 19:23:11 +0000 (19:23 +0000)]
[ARM] 3070/2: Add __ioremap_pfn() API
Patch from Deepak Saxena
In working on adding 36-bit addressed supersection support to ioremap(),
I came to the conclusion that it would be far simpler to do so by just
splitting __ioremap() into a main external interface and adding an
__ioremap_pfn() function that takes a pfn + offset into the page that
__ioremap() can call. This way existing callers of __ioremap() won't have
to change their code and 36-bit systems will just call __ioremap_pfn()
and we will not have to deal with unsigned long long variables.
Note that __ioremap_pfn() should _NOT_ be called directly by drivers
but is reserved for use by arch_ioremap() implementations that map
32-bit resource regions into the real 36-bit address and then call
this new function.
Signed-off-by: Deepak Saxena <dsaxena@plexity.net> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Knut Petersen [Mon, 9 Jan 2006 14:04:20 +0000 (15:04 +0100)]
[PATCH] Update cyblafb driver
This is a major update to the cyblafb framebuffer driver. Most
of the stuff has been tested in the mm tree.
Main advantages:
============
- vxres > xres support
- ywrap and xpan support
- much faster for almost all modes (e.g. 1280x1024-16bpp
draws more than 41 full screens of text instead of about 25
full screens of text per second on authors Epia 5000)
- module init/exit code fixed
- bugs triggered by console rotation fixed
- lots of minor improvements
- startup modes suitable for high performance scrolling
in all directions
This diff also contains a lot of white space fixes.
No side effects are possible, only one single graphics core is affected.
Guy Martin [Mon, 9 Jan 2006 17:32:45 +0000 (15:32 -0200)]
V4L/DVB (3296): Fixes a bug at compat_ioctl32 kernel module
- There is a bug in the ioctl translations from 32bit userspace
to 64bit kernelspace in do_set_window().
- The video window (vw) should be passed to native_ioctl()
instead of the video clip.
Signed-off-by: Guy Martin <gmsoft@tuxicoman.be> Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
V4L/DVB (3293): Added digital support for cx88 (cx88-alsa)
- This module is co-authored by Ricardo Cerqueira <v4l@cerqueira.org>.
- Added digital audio support for cx88-based boards that have function
01 enabled. These boards can be identified by having PCI id 1471:8801
or 1471:8811.
- Increased DMA buffer from 512 to 4096 seems to fix audio distortion.
- Existing audio DMA uses conflict with cx88-alsa. Should be disabled when
cx88-alsa module is compiled.
Michael Krufky [Mon, 9 Jan 2006 17:32:42 +0000 (15:32 -0200)]
V4L/DVB (3287): Add DViCO Bluebird firmware to dvb_get_firmware script
- Add DViCO Bluebird firmware to dvb_get_firmware script,
for FusionHDTV USB devices.
- Use usb alt setting 0 for EP4 transfer (dvb-t),
- Use usb alt setting 7 for EP2 transfer (atsc)
- Added comment to lgdt330x.c to indicate support for
DViCO FusionHDTV5 USB Gold.
Thanks to: Jeff Lee <JeffLee@dvico.com>
Signed-off-by: Michael Krufky <mkrufky@m1k.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Michael Krufky [Mon, 9 Jan 2006 17:32:42 +0000 (15:32 -0200)]
V4L/DVB (3282): rename cxusb_bluebird_atsc_properties to cxusb_bluebird_lgh064f_properties
- This property set is for the LG-H064F (FusionHDTV5 USB Gold)
- There may, in the future, be a bluebird device using a different NIM,
so renaming the struct to somehting NIM-specific is appropriate.
Signed-off-by: Michael Krufky <mkrufky@m1k.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Hans Verkuil [Mon, 9 Jan 2006 17:32:40 +0000 (15:32 -0200)]
V4L/DVB (3278): convert diagnostics over to the new v4l2-common.h macros.
- Convert diagnostics over to the new v4l2-common.h macros.
- deprecated tuner_debug option, the new option is debug.
- renamed cx25840_debug to debug.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Hans Verkuil [Mon, 9 Jan 2006 17:32:40 +0000 (15:32 -0200)]
V4L/DVB (3276): Added new diagnositics macros, convert msp3400 to the new macros.
- Added new v4l_err, v4l_warn, v4l_info and v4l_dbg macros to
v4l2-common.h for use in v4l-dvb i2c drivers. This ensures
a unique prefix for each device instance.
- At a later stage these macros may be reimplemented using the
device-generic macros from device.h.
- Converted the msp3400 driver to the new macros.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Hans Verkuil [Mon, 9 Jan 2006 17:32:39 +0000 (15:32 -0200)]
V4L/DVB (3275): Split msp3400.c into msp3400-driver.c and msp3400-kthreads.c
- Split msp3400.c into msp3400-driver.c and msp3400-kthreads.c.
- Removed experimental DFPREG ioctls. If this is really needed one
day then it should be implemented using VIDIOC_G/S_REGISTER.
- Added missing BALANCE control info for VIDIOC_QUERYCTRL.
- Still more cleanup, clarified some kernel messages.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Hans Verkuil [Mon, 9 Jan 2006 17:32:39 +0000 (15:32 -0200)]
V4L/DVB (3271): more cleanups, simplify volume/balance/bass/treble handling
- Continue cleanup effort:
- more cosmetic changes
- combine volume, balance, bass and treble into one audio
function. Revert old 2.4 code that crept in.
- print internal ioctls using new debug function.
- marked all msp3400c (aka manual) functions as such.
- removed some unused data structures.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Michael Krufky [Mon, 9 Jan 2006 17:32:31 +0000 (15:32 -0200)]
V4L/DVB (3269): ioctls cleanups.
- Now, all internal ioctls are at v4l2-common.h
- removed unused ioctl at saa6752hs.h
- all debug ioctl code moved to v4l2-common.c
- removed duplicated stuff from other cards
Signed-off-by: Michael Krufky <mkrufky@m1k.net> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Michael Krufky [Mon, 9 Jan 2006 17:25:47 +0000 (15:25 -0200)]
V4L/DVB (3268): Use combined firmware for DVB-T and ATSC Bluebird FusionHDTV USB models.
- Now using firmware "dvb-usb-bluebird-01.fw",
with combined support for atsc and dvb-t Bluebird models.
- Use usb alt setting 0 for EP4 transfer (dvb-t),
- Use usb alt setting 7 for EP2 transfer (atsc) */
Signed-off-by: Michael Krufky <mkrufky@m1k.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
Hans Verkuil [Mon, 9 Jan 2006 17:25:46 +0000 (15:25 -0200)]
V4L/DVB (3261): msp3400.c cleanup (almost all cosmetic)
- Step 1 of the msp3400.c cleanup.
Most changes are all cosmetic (moved code around, renamed functions
and variables).
New additions:
- VIDIOC_LOG_STATUS for debugging.
- More user friendly messages on driver load.
- 'simple' renamed to 'autodetect'
- 'simpler' renamed to 'autoselect'
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>