|
|
|
Lue: Edellinen koko ChangeLog.
Summary of changes from v2.6.5 to v2.6.6-rc1
============================================
[netdrvr r8169] Conversion of Rx/Tx descriptors to consistent DMA:
- use pci_alloc_consistent() for Rx/Tx descriptors in rtl8169_open()
(balanced by pci_free_consistent() on error path as well as in
rtl8169_close());
- removal of the fields {Rx/Tx}DescArrays in struct rtl8169_private
as there is no need to store a non-256 bytes aligned address any more;
- fix for rtl8169_open() leak when RxBufferRings allocation fails.
Said allocation is pushed to rtl8169_init_ring() as part of an evil
cunning plan.
[netdrvr r8169] Conversion of Rx data buffers to PCI DMA
- endianness is kept in a fscked state as it is in the original code
(will be adressed in a later patch);
- rtl8169_rx_clear() walks the buffer ring and releases the allocated
data buffers. It needs to be used in two places:
- rtl8169_init_ring() failure path;
- normal device release (i.e. rtl8169_close);
- rtl8169_free_rx_skb() releases a Rx data buffer. Mostly an helper
for rtl8169_rx_clear(). As such it must:
- unmap the memory area;
- release the skb;
- prevent the ring descriptor from being used again;
- rtl8169_alloc_rx_skb() prepares a Rx data buffer for use.
As such it must:
- allocate an skb;
- map the memory area;
- reflect the changes in the ring descriptor.
This function is balanced by rtl8169_free_rx_skb().
- rtl8169_unmap_rx() simply helps with the 80-columns limit.
- rtl8169_rx_fill() walks a given range of the buffer ring and
try to turn any descriptor into a ready to use one. It returns the
count of modified descriptors and exits if an allocation fails.
It can be seen as balanced by rtl8169_rx_clear(). Motivation:
- partially abstract the (usually big) piece of code for the refill
logic at the end of the Rx interrupt;
- factorize the refill logic and the initial ring setup.
- simple conversion of rtl8169_rx_interrupt() without rx_copybreak
(will be adressed in a later patch).
[netdrvr r8169] rtl8169_start_xmit fixes:
- it forgot to update stats if the skb couldn't be expanded;
- it didn't free it either if the descriptor was not available;
- move the spin_unlock nearer of the exit point instead of duplicating
it in the new branch.
[netdrvr r8169] Conversion of Tx data buffers to PCI DMA:
- endianness is kept in a fscked state as it is in the original code
(will be adressed in a later patch);
- buf_addr of an unmapped descriptor is always set to the same value
(cf rtl8169_unmap_tx_skb);
- nothing fancy, really.
[netdrvr r8169] Rx copybreak for small packets.
- removal of rtl8169_unmap_rx() (unneeded as for now).
[netdrvr r8169] Add {mac/phy}_version.
- change of identification logic in rtl8169_init_board();
- {chip/rtl_chip}_info are merged in rtl_chip_info;
- misc style nits (lazy braces, SHOUTING MACROS from realtek converted to
functions).
[netdrvr r8169] Merge of changes done by Realtek to rtl8169_init_one():
- phy capability settings allows lower or equal capability as suggested
in Realtek's changes;
- I/O voodoo;
- no need to s/mdio_write/RTL8169_WRITE_GMII_REG/;
- s/rtl8169_hw_PHY_config/rtl8169_hw_phy_config/;
- rtl8169_hw_phy_config(): ad-hoc struct "phy_magic" to limit duplication
of code (yep, the u16 -> int conversions should work as expected);
- variable renames and whitepace changes ignored.
[netdrvr r8169] Merge of timer related changes from Realtek:
- changed their timeout value from 100 to HZ to trigger rtl8169_phy_timer();
- s/TX_TIMEOUT/RTL8169_TX_TIMEOUT/ to have RTL8169_{TX/PHY}_TIMEOUT.
[netdrvr r8169] Merge of changes from Realtek:
- register voodoo in rtl8169_hw_start().
[netdrvr r8169] Driver forgot to update the transmitted bytes counter.
Originally done in rtl8169_start_xmit() by Realtek.
[netdrvr r8169] Modification of the interrupt mask (RealTek).
[netdrvr r8169] Suspend/resume code (Fernando Alencar Marótica).
[netdrvr r8169] fix RX
Brown paper bag time: the Rx descriptors are contiguous and EORbit only
marks the last descriptor in the array. OWNbit implicitly marks the end
of the Rx descriptors segment which is owned by the nic.
[netdrvr r8169] Endianness update (original idea from Alexandra N. Kossovsky):
- descriptors status (bitfields enumerated as _DescStatusBit);
- address of buffers stored in Rx/Tx descriptors.
[netdrvr r8169] Stats fix (Fernando Alencar Marótica ).
[PATCH] 2.6.1-rc1-mm1 - typo of death in the r8169 driver
silly bug in the r8169 driver.
[netdrvr r8169] fix oops by removing __devinitdata marker
[netdrvr r8169] fix rx counter masking bug
[netdrvr r8169] fix phy initialization loop init
[netdrvr r8169] fix TX race
- possible tx descriptor index overflow (assume tp->dirty_tx = NUM_TX_DESC/2,
tp->cur_tx = NUM_TX_DESC - 1 and watch TxDescArray for example);
- the status of an inadequate descriptor is checked.
NB: the bug will not necessarily noticed when tx_left == 1.
[netdrvr r8169] Rx wrap bug:
- rtl8169_rx_interrupt() can wrap and process an Rx descriptor that it has
invalidated a few iterations before. The patch limits the number of
allowed descriptors between two invocations of the Rx refill function;
- rtl8169_rx_interrupt() now looks similar to rtl8169_tx_interrupt to
highlight the issue.
[PATCH] PATCH [1/15] qla2xxx: Update copyright banner
Update copyright banner for all source files.
[PATCH] PATCH [2/15] qla2xxx: Track DSDs used by an SRB
Track the number of DSDs and request entries required for an
SRB in case of a request-entry or command-slot shortage.
[PATCH] PATCH [3/15] qla2xxx: Increase MBX IOXB timeout
Fix a problem where during heavy I/O the driver would
improperly timeout an outstanding MBX IOCB before the
firmware itself had a chance to issue and wait for the
command to timeout.
[PATCH] PATCH [4/15] qla2xxx: Endianess fix while reading stats
Return firmware statistics retrieved from
qla2x00_get_link_status() in host-endian form.
[PATCH] RE: PATCH [5/15] qla2xxx: request entries update
For now, I'd say keep everything in the original patch except the
hunk that changes SG_ALL -> 32, revised patch attached.
[PATCH] PATCH [6/15] qla2xxx: Track error-state of SBRs
Consistenly track the error-state of a failed SRB.
[PATCH] PATCH [7/15] qla2xxx: Misc. updates with FO resync
Misc. updates due to resync with non-embedded (failover-aware) driver.
o Add ancillary support definitions.
o Remove extraneous *_IOCTL #ifs.
o Make qla2x00_cmd_timeout() and its support routines visible to the
non-embedded driver.
[PATCH] PATCH [8/15] qla2xxx: Use proper HA references
Fix issue where the driver would reference the incorrect HA
during loop state check.
[PATCH] PATCH [9/15] qla2xxx: NVRAM id-list updates
Resync with latest NVRAM subsystem ID list.
[PATCH] PATCH [10/15] qla2xxx: Use fcports list for targets
Consistently use the fcports list of an HA to iterate through the
known target devices.
[PATCH] PATCH [11/15] qla2xxx: Add login-retry-count override
Add a module parameter to override the NVRAM's login retry count
value.
[PATCH] PATCH [12/15] qla2xxx: Restore update state during resync
Restore the UPDATE state of the HA if a resync event occurs during
a device (re)discovery.
[PATCH] PATCH [13/15] qla2xxx: Device reset fix
During a back-door device reset call, hold off execution of
commands until the reset is complete.
PATCH [14/15] qla2xxx: 23xx/63xx firmware updates
Andrew Vasquez
Resync with latest released firmware -- 3.02.26.
[PATCH] PATCH [15/15] qla2xxx: Update driver version
Update version number to 8.00.00b11-k (to indicate embedded driver).
[PATCH] USB multi-card reader blacklist updates
Here's a couple more blacklist entries.
Seems everyone suddenly rushed out and bought one of these multi-card readers.
Dave
[PATCH] Fix error handler offline behaviour
No-one seems to have noticed, but there's a bug in our offline handling
which can cause the eh to loop forever when it tries to offline a device
(basically offline I/O rejections are done in prep, which doesn't work
for already prepped commands).
The attached fixes this, and also sweeps offline up into a fairly fully
fledged scsi state model.
With this applied I can now offline my root device under load without
causing a SCSI hang (ext2 BUG()s rather unhappily but at least that's
not a SCSI problem).
[PATCH] aacraid reset handler update
This is an update from the Adaptec version of the driver to the aacraid
reset handler. The current code has a logic error that is fixed by this
version. This builds against 2.6.5-rc1.
[PATCH] Replace scsi_host flags with scsi_device sdev_bflags
Replace the scsi_host flags with scsi_device sdev_bflags. Change USB to
set sdev_bflags in its new slave_alloc function.
[PATCH] Add 192 byte MODE SENSE flag
Add a BLIST_MS_192_BYTES_FOR_3F flag. If it is set, sends a 192 byte MODE
SENSE in sd.c.
SCSI: correct blacklist entry
[CPUFREQ] If ->init fails, unregister cpufreq driver.
Some cpufreq drivers can only tell whether they work while the per-CPU
->init() function is executed [e.g. the acpi driver]. So that cpufreq_driver
isn't blocked by such stale drivers, unload them unless the driver sets a
special flag.
[CPUFREQ] Use KERN_WARNING for warning.
[CPUFREQ] Move the centrino table matching into an own function
Only the FEATURE_EST bit for CPU 0 is checked in module_init() directly.
As cpufreq drivers aren't sticky any longer (see previous patch),
this will not change user-visible behaviour.
[CPUFREQ] Merge ACPI perflib.
Use ACPI _PSS data to determine valid frequency and voltage pairs on Enhanced
SpeedStep-capable processors. An original form of such ACPI-PentiumM-cpufreq
interaction was sent to the cpufreq list by David Moore in June last year; the
attached patch utilizes his code to set _PDC.
The new ACPI "P-States library" is utilized to obtain the correct frequency
and MSR value pairs for the speedstep-centrino driver. Only if no such proper
table exists (!CONFIG_ACPI, broken ACPI tables, etc.), fall back to the
existing hard-coded table.
If anyone has a better idea for the Kconfig section, please tell me so.
This version of this patch has proper acpi_state setting included, and also
has a hint in the banner of the centrino_cpu_init_acpi() function, as Jeremey
Fitzhardinge suggested.
[CPUFREQ] Export an array of available frequency settings of the centrino driver.
[CPUFREQ] Fix up centrino initcall level
centrino_init needs to be late_initcall so that the ACPI processor module
is completely up and running.
[CPUFREQ] SPEEDSTEP_RELAXED_CAP_CHECK option.
A few SpeedStep-capable systems don't perform according to specification: the
CPUID and/or some MSRs don't tell us the CPU is SpeedStep capable even though
it definitely is. Allow a relaxed checking for one such issue by a module
parameter only available if a config option is turned on. This is done to
avoid the risk of doing invalid speedstep instructions on systems which do
not support it, and which might even lead to (hardware) failure.
Patch originally from Andres Aeriksson (?) aeriksson at fastmail (dot) fm
[CPUFREQ] Fix an off-by-10 value in the detection of the Pentium M processor frequency.
[CPUFREQ] Extra __init section function for longrun driver.
From Luiz Fernando Capitulino
[CPUFREQ] Extra __init section function for longhaul driver.
From Luiz Fernando Capitulino
[PATCH] I2C: w83781d fan_div code refactoring
Quoting myself:
> This tends to increase the size of the three set_store_regs_fan_div
> functions, and I am considering refactoring them at some point. Later
> though.
Here is the promised refactoring. Tested on my AS99127F rev.1, seems to
work. As for the previous patch, there is a part that I cannot test with
the AS99127F, so additional testing is welcome.
I agree this makes the code slightly less readable, but this saves 60
lines of code (1754 bytes, around 3% of the driver total), and is
actually far less complex that I first feared.
[PATCH] I2C: add new chip driver: pcf8574
Please find below a patch against kernel 2.6.5-rc1 to add the pcf8574
driver (an I/O expander for the I2C bus). I have ported it from the 2.4
version, and it includes some fixes and simplifications.
It has been reviewed by Jean Delvare on IRC.
[PATCH] Fix scsi_transport_spi.c for gcc-2.95.3
Work around the gcc-2.95 token pasting bug.
[libata] Add driver for SiS 964/180 SATA.
[libata sata_sis] minor cleanups
[PATCH] More domain validation fixes and additions
Following testing in more extreme situations, the following problems
turned up:
- The error handler can offline the device during DV (most particularly
true when transport parameters are undetectably mismatched). Fixed by
modifying the state model to allow this and then having DV set the
device back online for the retry.
- DV needs to be serialised. Fixed by introducing a per device
semaphore.
- Cosmetically, it's nice to trigger DV from userland, so added a
revalidate sysfs entry.
[libata] use new pci_dma_error() to check for pci_map_single() failure
[libata] use kmap_atomic() rather than kmap()
[libata ata_piix] do not disable SATA port on module unload
We were disabling the SATA port, but not enabling it on module load.
So, modprobe+rmmod+modprobe would fail.
[libata ata_piix] clean up combined mode handling
[libata ata_piix] fix combined mode device detection
SATA port detection should not have assumed that a single SATA port
mapped to a single struct ata_port. Combined mode breaks this
assumption.
Change code to simply detect if one or more devices are present
on the struct ata_port, which is what we really wanted to do.
[libata sata_promise] check for PATA port on PDC20375
We don't handle it yet, but this prints out a message in its presence,
permitting verification of the check and informing users why their
PATA device is not recognized.
[libata] set up some of the per-command data beforehand
The data transfer mode and the set of read/write commands we generate
during normal operation remains constant until we change the data
transfer mode.
This removes a series of branches in the read/write fast path,
and in general cleans up that particular spot of code.
[libata] consolidate data transfer mode handling
The various ways you can send data to/from your ATA device is
known as the ATA taskfile protocol: PIO single sector, PIO
multiple sector, DMA, DMA TCQ, DMA NCQ, ...
Prior to this change, the data direction (read/write) was encoded
implicitly into the ATA_PROT_xxx value itself. This increased
complexity in some areas, and inhibited flexibility in others.
This change separates data direction from taskfile protocol, and also
moves the data direction flag (ATA_QCFLAG_WRITE) down to a lower
level (ATA_TFLAG_WRITE).
[ata] move some generic stuff linux/libata.h -> linux/ata.h
struct ata_taskfile is generic, and so far its flags (ATA_TFLAG_xxx)
Also, move ATA_PROT_xxx definitions into their own enum.
[PATCH] I2C: Discard out-of-date comment in adm1021 driver
This simple patch discards an out-of-date comment in the adm1021 driver.
I've done the same in our CVS repository where many more drivers were
affected.
I agree it's not very important, but I prefer it to be done before any
driver with the error is used as a base to port a new driver, and the
misinformation spreads.
[PATCH] I2C: initialize fan_mins in w83781d, asb100 and lm78
Quoting myself:
> While testing, I found a corner case that isn't handled properly. It
> doesn't seem to be handled by the lm78 and the asb100 either. Setting
> fanN_div before ever reading from the chip or setting fanN_min will
> make use of fanN_min while it was never initialized.
The following patch addesses the issue. Tested to work on my AS99127F
rev.1 (which means that only the changes to the w83781d driver were
actually tested). Testers welcome.
[PATCH] USB: FTDI 232BM "USB-RS232 OptoBridge"
we (the german company Gude Analog und Digitalsysteme GmbH,
http://www.gude.info) have manufactored a USB<->RS232 adapter with
galvanic isolated RS232 Interface. Data is transmitted by optical
signals only.
The Product's name is "USB-RS232 OptoBridge".
We used the FTDI 233BM Chip with PID 0xE889 (VID 0x0403).
The Product will be released this Cebit 2004.
Could you please extend the ftdi_sio code with this PID.
You find a .diff file attached which I have tested with kernel 2.6.4
At http://ftdi-usb-sio.sourceforge.net/ I saw that you provide a patch
for 2.4.x kernels. Will our PID also find it's way in this back-ported
driver patch?
In the future (in the next 10 month), our company will have some more
Products using the FTDI Chip. The PID's FTDI already allocated for us
are: E888 to E88F and E808 to E80F
Thank you very much,
Martin Bachem
[PATCH] USB: kernel-doc comment tweak
Correct kernel-doc comment with incorrect parameters documented
[PATCH] USB: gadget zero does endpoint autoconfig
Here's where all those preceding autoconfig patches start
to fit together: one gadget driver gets rid of almost all
the controller-specific #ifdeffery.
Two of the other gadget drivers can do the same thing,
and just as easily: file storage, and serial. (I'll
hope their maintainers do those changes though.)
The "ether.c" gadget driver is a lot more complicated to
do this way since it has to cope with some differences
by switching to alternate protocols (CDC Ethernet vs
a subset) and soon be able to handle RNDIS. So that'll
be a while yet.
Gadget Zero learns to autoconfigure.
- Gets rid of remaining controller-specific #ifdeffery. Now
hardware choices can be made at run time too (not just
compile time).
- Simplifies its use of the "DEBUG" CPP symbol.
- Force device to report itself consistently as self-powered.
[PATCH] USB: rtl8150 update
adds two more vid/did and better packet error statistics. Link
detection also has been added.
[libata] pci_dma_error() was renamed to pci_dma_mapping_error()
[libata] reduce diff with 2.4 libata backport
[libata] use scsi host lock
In 2.4 we release io_request_lock and take our own per-host lock,
in the ->queuecommand() hook. In 2.6, the SCSI layer provides a
useful to simply use the lock we already have, via scsi_assign_lock().
[PATCH] USB: new cypress thermometer driver
[PATCH] USB: add cytherm driver to the build
[PATCH] USB: USB gadgets can autoconfigure endpoints
This adds some code that gadget drivers can call from
driver initialization, to simplify the "configure against
this hardware" step.
Add endpoint autoconfiguration for gadget drivers.
Endpoint selection is currently being done with conditional compilation.
That doesn't look nice, but more importantly it doesn't work well with
the model that some distributions won't be custom-matched to hardware.
Say, a PDA distro running on iPaq (pxa2xx_udc) or Axim (mq11xx_udc).
This code just makes it easier for drivers to match to hardware at
run-time. It's a convenience function for something they could have
been doing already, but weren't.
[libata] documentation, and a couple tiny cleanups
Add more per-function source code documentation. Some of this stuff
is esoteric ATA crapola, and definitely needed to be documented.
Also, two tiny cleanups spotted while documenting:
* kill unused arg from internal function ata_dev_try_classify()
* kill unused return value from ata_dev_id_string()
[PATCH] USB: Improve core/config.c error messages
This patch improves error reporting in the configuration parsing routines.
It also adds a few extra minor tweaks.
#include linux/config.h and make the usual DEBUG settings
available.
Use the driver-model dev_xxx() macros for log output.
Be much more explicit about the nature of errors, including
configuration, interface, and altsetting numbers where
appropriate.
Log fatal problems as errors, non-fatal ones as warnings.
Remove a #define'd constant that is already set in linux/usb.h.
Fix some variables declared as pointer to char that really
should be pointers to unsigned char.
Replace a whole bunch of "out-of-memory" error messages with
a single message.
Wrap source lines that are longer than 80 columns (but not
log output lines!).
Clean up the logic for detecting errors when retrieving a
configuration descriptor.
Apart from the log messages themselves, this introduces no functional
changes.
[PATCH] USB: Code improvements for core/config.c
This patch makes some improvements to the code in config.c.
Create a subroutine to handle the repeated task of skipping
forward to the next descriptor of a certain type.
Remove some fairly useless debugging messages (they could
never even have been enabled in the pre-as221 code).
Verify that endpoint descriptors don't have an address
equal to 0 (as well as not being above 15).
Rename some local variables so they are a little more
consistent and meaningful.
Despite all the changes, the functionality should remain the same.
Please apply.
[PATCH] USB: fix osdl bugid 481 (USB boot messages)
Some boot-time messages were obnoxiously long because
they used "old-style" diagnostics.
OSDL bugid 481
Get rid of most remaining "old style" diagnostics from usbcore.
Most messages use driver model style diagnostics. Messages that
don't have an associated device use the standard kernel printk
wrappers and label themselves as from "usbcore". (Except that
there's no such wrapper for KERN_ERR.)
This doesn't touch usbfs, "config.c" (Alan's patches do this), or
usb_reset_device() (needs a more substantial overhaul). Or any
other USB drivers (notably HID).
[PATCH] USB: fix osdl bugid 2006 (timer init and fault paths)
Need to initialize timers a bit earlier to handle
certain initialization faults.
OSDL bug 2006
Need to initialize some timers a bit earlier to clean up safely
after very early init HCD failures.
Those early init faults were needlessly mysterious since they
didn't emit diagnostics except at HCD discretion.
[PATCH] USB: Unusual_devs update
On Tue, 16 Mar 2004, John Katzmaier wrote:
> Hi,
>
> Just wanted to let you know that when using my Panasonic PV-SD4090 digital
> camera with kernel 2.6.3, I found this entry in my logs:
>
> Mar 16 21:43:27 rocket kernel: usb-storage: Vendor: Panasonic
> Mar 16 21:43:27 rocket kernel: usb-storage: Product: LS-120 Camera
> Mar 16 21:43:27 rocket kernel: usb-storage: This device (04da,0901,0109 S 00 P
> 00) has an unneeded Protocol entry in unusual_devs.h
> Mar 16 21:43:27 rocket kernel: Please send a copy of this message to
>
>
> I thought it might be best to follow its instructions and so I did.
>
> Thanks.
>
> -John Katzmaier
Thank you for sending this in. An update will appear in a forthcoming
kernel.
Greg, here's the patch.
[PATCH] USB: Regularize unusual_devs entries for Genesys Logic
I saw that you just added another unusual_devs.h entry submitted by
Henning Schild, for vendor ID 0x05e3. It turns out this is our old friend
Genesys Logic.
A recent message from Brad Campbell included a Windows driver file by
Genesys, and it included these lines:
USB\VID_05E3&PID_0700.DeviceDesc="USB Card Reader"
USB\VID_05E3&PID_0701.DeviceDesc="USB Optical Device"
USB\VID_05E3&PID_0702.DeviceDesc="USB Mass Storage Device"
Based on this information, we can clean up the 0x05e3 entries in
unusual_devs.h. This patch puts all three entries into a regularized
form.
[PATCH] USB: kernel-doc comment tweak in vicam.c
Correct kernel-doc comment with incorrect parameters documented
[PATCH] USB: fix race in ati_remote and small cleanup
On Thu, 2004-03-18 at 07:44, Oliver Neukum wrote:
> Hi,
>
> you must use set_current_state() only after usb_submit_urb() with GFP_KERNEL
> as second argument, because it may sleep to allocate memory and is woken up
> resetting the state to TASK_RUNNING. In that case you had a busy polling loop.
> Furthermore, always use wake_up unconditionally. It checkes anyway.
Thanks for reviewing this code, I'm new to Linux driver development and
more eyes on my work is a good thing. I've actually been working on
some more cleanups to the driver to fix the race between open and
disconnect, and was just about to send it in...
So, the attached patch against 2.6.5-rc1-mm1 includes a mutex to lock
the open/disconnect paths, modelled after the usb-skeleton driver. It
includes Oliver Neukum's fixes and other cleanups as well.
[PATCH] USB: Unusual_devs.h update
On Thu, 18 Mar 2004, Urban Borstnik wrote:
> The 2.6.4 and 2.6.3 (and possibly some earlier) kernels log the
> following message when I plug in a Lexar CompactFlash Reader:
>
> usb-storage: This device (05dc,b002,0113 S 06 P 50) has unneeded
> SubClass and Protocol entries in unusual_devs.h
> Please send a copy of this message to
>
> Otherwise it has been working very well with the devepment kernels on at
> least 4 machines ever since a trivial fix was introduced for this device
> to unusual_devs.c over a year ago.
>
> Best regards,
> Urban.
Thank you for sending this in. An update will appear soon.
[PATCH] USB: race condition in open of w9968cf
there's a race in how open handles multiple openers.
You implement exclusive opening and wait for close
in case of further openers. However if there are more than one
waiter, only one of them must be allowed to proceed.
[PATCH] USB: Don't trust raw descriptor length in devioc.
This is a very minor point, unlikely ever to come up. But just in case...
It's conceivable that a device might transmit different values for a
configuration descriptor's wTotalLength the first time we ask for it (in
order to get the length) and the second time (to get the entire
descriptor). Should that improbable event occur, the rawdescriptor buffer
could be allocated using a size that's smaller than the length recorded in
the rawdescriptor itself. This patch protects devio.c against such a
problem.
If you feel this sequence of events is too unlikely to worry about, then
don't bother to apply the patch.
[PATCH] USB: UHCI: Do short packet detection correctly
This patch makes some simple changes to the way the UHCI driver does short
packet detection. The current implementation is incorrect in several
ways:
The Short-Packet-Detect flag is set for OUT transfers, which
yields undefined behavior according to the UHCI spec.
It's not set for URBs with URB_SHORT_NOT_OK, which is just the
opposite of what we want! Those are the ones where short packets
do matter.
It is set for the last packet in a transfer, which causes an
unnecessary pause in the data flow (except of course that the
pause _is_ necessary when URB_SHORT_NOT_OK is set).
The patch also implements the URB_NO_INTERRUPT flag for bulk transfers,
which can help improve system performance by reducing interrupt overhead.
[PATCH] USB: UHCI: Improved handling of short control transfers
This patch simplies the way the UHCI driver handles short control
transfers. When a transfer is short the HC will stop handling that
endpoint, and it's necessary to get it going again so that the status
stage of the control transfer can take place. Currently the driver does
this by allocating a new QH for the transfer and setting its element
pointer to point at the final status TD. The old QH is recycled. But
it's not necessary to go to all that trouble; the element pointer in the
original QH can be updated directly.
Normally the element pointer is supposed to be owned by the HC, and it's
not safe to just change its value since the HC may overwrite it at any
time. But when a transfer is stopped because of a short packet, the
current TD is marked inactive and the HC will not update the element
pointer. To write an unchanged pointer value back to memory would be a
waste of PCI bus cycles. Now the UHCI spec doesn't say explicitly that an
HC _can't_ do this, but I've tested both Intel and VIA hardware and
neither of them does.
As a side effect of this change, some of the code for removing QHs can be
eliminated.
[PATCH] USB: UHCI: Get rid of excessive spinlocks
This patch introduces a major simplification into the UHCI driver by
replacing its multiple spinlocks with a single one. The protected area of
code is slightly larger and there's more possibilities for contention on
an SMP system, but I think that shouldn't be a problem. Stephen Hemminger
has been kind enough to test this on his SMP computer and he hasn't
encountered any difficulties.
[PATCH] USB: fix error paths in kobil_sct
some error codes are incorrect and there's an URB leak in an error path.
[PATCH] USB: usb hiddev stack usage patch
Patch below fixes some obscenely high stack uage;
struct hiddev_usage_ref_multi is well over 4Kb in size so really doesn't
belong on the stack.
ia64: Patch by Stephane Eranian: remove irq_stat from cpuinfo_ia64.
irq_stat isn't needed anymore since its members got rolled into
thread_info.preempt_count.
[libata sata_promise] minor initialization updates
* remove incorrect PATA port check
* enable undocumented bit 13 in flash control register,
because the Promise driver does so.
* wait 10 ms after setting TBG mode, for the same reason.
[libata] clean up command queue/submit path a bit
This change is part of a series that compartmentalizes and consolidates
ATA taskfile submission.
Here, the device-location-related checks are moved out of the ->queuecommand()
hook and into an inline helper function.
[libata] more command queue path cleanup
A new helper ata_scsi_xlat_possible(), and the command queue path
gets a bit more compact.
As side effects we kill the 'cmd_size' argument from two functions,
and mark ata_scsi_rw_queue() as static, as its only needed
in libata-scsi.c.
[libata] more cmd queue path cleanups
Final part in tonight's series of changes to clean up the
command queueing path.
The simulate-ATA-over-SCSI code is moved to a new function,
ata_scsi_simulate(), and ata_scsi_rw_queue() is renamed to
ata_scsi_translate(). With the SCSI CDB debugging dump function
also moved into its own function, the queue-command path is now
nice, compact, and readable.
[PATCH] USB: fix bug in usb-skeleton.c
[PATCH] USB: fix DMA to stack in ftdi driver
this driver is doing DMA to the stack. Here's the obvious fix.
[PATCH] USB: cleanup of st5481
you are using __devinit which must not be used with USB drivers,
in addition you are using some false GFP values and fail to check
some error codes.
- check for unlink due to removal of controller
- correct GFP values
- no __devinit in USB
[PATCH] USB: fix typo in previous patch
I screwed up. This corrects it.
[PATCH] USB: fix hfc_usb sleeping in irq
you are using GFP_KERNEL in irq and __devinit with hotpluggable code.
- use proper GFP flags
- kill __devinit
[PATCH] USB: Fix drivers/usb/net/Kconfig
This allows the pegasus driver to actually be seen as a config option.
Apparently it's not that popular, though I have confirmed that it still
works on at least the netgear fv101.
[PATCH] USB: fix race in whiteheat serial driver
Patch below fixes an obvious race in the whiteheat usb serial driver...
[PATCH] USB: define USB feature bit indices
This patch provides standard symbols for the various USB
device and endpoint feature bits, so that drivers can
use symbolic names for them. It also changes the code
relating to endpoint halts so it uses those symbols.
[PATCH] USB: usbnet, minor probe() fault fix
Some hardware had the poor taste to misbehave during probe(),
which turned up a minor bug. This fixes it: don't try to
free a network device that hasn't been registerd.
[PATCH] USB: g_ether does endpoint autoconfig too
Here's an update for the Ethernet gadget that corresponds
to the earlier one for Gadget Zero ... it gets rid of almost
all the remaining controller-specific #ifdefs in this driver.
(And also lets the driver initialize using "dummy_hcd".)
This is a significant step towards doing hardware-specific
configuration at run time (or at least init-time) rather
than compile time, but other patches will be needed to take
it the rest of the way there. (Especially considering the
RNDIS support...) The runtime footprint of the driver shrank
a bit, mostly because things moved into the init section.
[PATCH] USB: fix whiteheat USB serial compile failure on PPC
> Bah, looks like PPC doesn't ever define CMSPAR :(
>
> How about adding something like:
> #ifndef CMSPAR
> #define CMSPAR 0
> #endif
> To the beginning of the driver like the cdc-acm.c driver does? If that
> works, care to send me a patch?
Yes, it compiles.
USB: mark pwc driver as broken, as it is.
And the maintainer doesn't seem to want to fix it :(
[PATCH] USB: Add dummy_hcd to the main kernel
This is a resubmission of as225, together with appropriate changes for the
g_serial driver. David Brownell's latest g_ether update makes it
unnecessary to change that file or gadget_chips.h.
dummy_hcd is simultaneously a host controller driver and a device
controller driver. It creates a simulated HC together with a simulated
UDC plugged into it. Gadget drivers can run under the simulated UDC and
will appear as regular USB devices on the simulated HC. The simulation is
reasonably (although not totally) realistic.
It's a wonderful tool for testing and developing gadget drivers without
the need for lots of additional hardware: Both the host driver and the
gadget driver can run on the same computer. It's been available for quite
some time in David's gadget-2.6 tree and it works well. I couldn't have
gotten the file-storage gadget running in any reasonable length of time
without it.
[PATCH] USB: more ftdi_sio ids
USB: ftdi_sio merge fixups.
[PATCH] USB: add ftdi_sio product ids
USB: fix compiler warning in whiteheat driver.
[PATCH] I2C: adm1021 (probably) does something VERY,VERY BAD
Quoting myself:
> 3* Drop adm1021's limit init. This was already done in the 2.4 driver
> and should have been done in 2.6 as well.
Here is a patch that does that. It also prevents bit 7 (and unused bits)
of configuration register from being reset, as was discussed before:
http://archives.andrew.net.au/lm-sensors/msg04593.html
That second part needs to be backported to the 2.4 driver, and I will do
so.
Additionally, we get rid of a useless label.
The patch is untested (I don't own any supported chip) but quite
straightforward IMHO.
[PATCH] I2C: Setting w83627hf fan_div preserves fan_min
Here is a patch that updates the w83627hf driver in the exact same way I
did recently for the w83781d driver. There were two problems:
1* Fan divisor storing code was ugly, badly ripped from the 2.4 w83627hf
driver and/or the 2.6 w83781d driver.
2* Setting fan divisors wouldn't preserve fan mins.
Exactly the same as w83781d:
http://archives.andrew.net.au/lm-sensors/msg06952.html
http://archives.andrew.net.au/lm-sensors/msg07008.html
No surprise since the w83627hf driver is a fork of the w83781d driver.
Since the two drivers are strongly similar, I took the code directly
from the updated w83781d driver. I cannot test the w83627hf driver
(testers welcome BTW) but this makes me feel confident that the code is
correct.
To make it clear, this single patch is the w83627f equivalent of the
three patches I submitted for the w83781d:
* Cleanup
* Refactoring
* Setting fan_div preserves fan_min
All in one (much better looking BTW).
[PATCH] IXP425 -> IXP4XX conversion for USB-gadget
The 2.6 code for Intel's IXP4xx NPU line has been updated to
remove all references to IXP42x or IXP425 and replace it
with IXP4XX, including config options and file names. This
patch updates the USB-gadget pxa-udc driver with these changes.
[PATCH] USB: ohci misc updates
Mostly from Benjamin Herrenschmidt:
- prevent usbcore from asking the HCD root hub code
to read registers on one more suspend path (some
hardware gets upset in those cases);
- try handling a "device died" cleanup case better
- add some wmb() calls in spots that could matter
on some hardware
[PATCH] USB: Altsetting update for USB input drivers
This patch continues the update process for the cur_altsetting change.
The drivers in usb/input were all in good shape and needed only minimal
changes.
[libata] more documentation
libata-scsi.c should now be fully documented.
[libata sata_promise] better locking and error handling
* Prefer spin_lock() to spin_lock_irq() in interrupt handler
* Reset each port, before probing the SATA phy
* Reset port when every time an error occurs
[libata] fix bug with READ(6) and WRITE(6) SCSI commands
Must set the LBA bit on all transfers, not just {read,write}{10,16}
scsi commands.
[libata] remove synchronize-cache dead code
Just a placeholder, and now that a better way to do this is coming,
we don't even need the [unused] placeholder anymore.
[PATCH] ia64: implement SN2 version of dma_mapping_error()
On sn2, dma_mapping_error is trivial. pci_map_single was already returning 0
in case of failure (0 is an invalid DMA address on sn2), so make
dma_mapping_error check for that.
[PATCH] ia64: only scan SN2 PCI busses that exist
sn_pci_init was unconditionally scanning 255 PCI busses, even though
only a few are actually present on most systems. This patch adds a
check to make sure a given bus exists before doing the scan, which
saves a little memory and also makes /sys/devices reflect reality a
bit more closely.
[PATCH] stack reduction: aic7xxx_old
From: Arjan van de Ven
aic7xxx_old: constant array of PCI ID's can be static since it's read only
[PATCH] Update FC transport attributes API
This patch brings the FC transport attributes up to date with the SPI
attributes API.
The only major change I made was to separate read-only attributes
from read-write attributes.
[PATCH] Add FC transport attributes support to qla2xxx
Here is a patch that adds FC transport attributes to the qla2xxx driver.
The patch should apply cleanly to a recent 2.6 kernel with the FC
attributes update that I just sent to linux-scsi.
MPT Fusion driver 3.01.03 update
From: "Moore, Eric Dean"
Changelog for mpt version 3.01.03:
(1) Fix fifo memory allocation under 64bit systems
by merging 3 seperate memory allocations into one call.
Before this fix, it was possible that these seperate
pci_alloc_consistent() calls were crossing the 4GB
hardware boundary.
Delete the MPTBASE_MEM_ALLOC_FIFO_FIX logic.
Backout recent ak@muc.de workaround.
(2) Replace wrappers for CHIPREG_XXX with defines;
per request from Jeff Garzik [jgarzik@pobox.com]
(3) Remove support for FC909.
(4) Remove PortIo modules parameter.
(5) Move procmpt_destroy function before pci_unregister_driver,
as the memory allocated for the proc was not being deallocated.
(6) Remove mptscshi_reset_timeouts function. The timer was
already expired when mod_timer is called.
(7) Fix small bug in slave_destroy, which could prevent domain
validation on hidden drive in a RAID volume.
----------------------------------------------------------------------
Changelog for mpt version 3.01.02:
(1) Andi Kleen[ak@suse.de]
put warning "Device (0:0:0) reported QUEUE_FULL!" into debug messages
(2) Alexander Stohr[Alexander.Stohr@gmx.de]
fix warnings from mptscsih_setup when driver isn't compiled as module
(3) Randy.Dunlap[rddunlap@osdl.org]
Remove unnecessary min/max macros and change calls to
use kernel.h macros instead.
ServeRAID ( ips ) 7.00.15
ith the completion of testing at Adaptec and IBM, the latest version of
the ServeRAID Linux device driver ( ips Version 7.00.15 )is now
available. Attached is the patches against the previous ServeRAID
releases. Basically, this is a convergence to a common ips driver code
base for the 2.4 and 2.6 kernels.
This driver is based on the driver currently in 2.6, so you while there
appears to be lots of changes to the 2.4 driver, the changes to the
current 2.6 driver are trivial ( the only changes are version number
changes and the addition of some new adapter ID's ). For 2.4, this was
primarily a testing effort to ensure that the 2.6 driver code was stable
when built for a 2.4 kernel.
[PATCH] Fix template size calculation in transport attributes
This small patch fixes the template size calculation in
{spi,fc}_attach_transport().
[libata] back out duplicated upstream fix
We already fixed this bug locally, so fix up the automerge
by removing the upstream change.
[PATCH] USB; minor usbfs locking updates
These are "obvious" locking fixes: using the right lock
to protect interface claim/release (should be the driver
model bus lock, not BKL).
[PATCH] USB: usb/core/config.c null pointers after kfree
Prevents an oops with some other patchsets.
Clear some pointers after the memory is kfreed, to avoid
making some other patch combinations oops.
[PATCH] USB: ohci unlink tweaks
Minor unlink tweaks, including a case where SMP could oops
if it were abused, as if from 'usbtest' or 'stir4200'.
[PATCH] USB Gadget: RNDIS/Ethernet Gadget Driver (1/2)
This patch adds the RNDIS message engine and kbuild/kconfig
support for it. This is currently labeled EXPERIMENTAL.
Patch contributed by Robert Schwebel, and developed with
support from Auerswald GmbH.
[PATCH] USB Gadget: RNDIS/Ethernet Gadget Driver (2/2)
This updates the existing Ethernet gadget driver to
support an additional RNDIS configuration on all
current USB controllers that can support one.
It also includes a bit more work to address the complex
autoconfiguration of this driver. Needs testing on PXA.
Patch (mostly) contributed by Robert Schwebel, and developed
with support from Auerswald GmbH.
[PATCH] USB: set_configuration locking cleanups
I've posted all these before, the only notable change is
treating that one gphoto2 case as warn-and-continue rather
than return-with-failure.
usb_set_configuration() cleanup
* Remove it from the USB kernel driver API. No drivers need it now,
and the sysadmin can change bConfigurationValue using sysfs (say,
when hotplugging an otherwise problematic device).
* Simpler/cleaner locking: caller must own dev->serialize.
* Access from usbfs now uses usb_reset_configuration() sometimes,
preventing sysfs thrash, and warns about some dangerous usage
(which gphoto2 and other programs may be relying on). (This is
from Alan Stern, but I morphed an error return into a warning.)
* Prevent a couple potential "no configuration" oopses. (Alan's?)
* Remove one broken call from usbcore, in the "device morphed" path
of usb_reset_device(). This should be more polite now, hanging
that one device rather than khubd.
[libata] fix broken delay
Due to rounding and HZ==100, sometimes delays would not occur for
the desired length of time, or even at all.
Fix call to schedule_timeout() to ensure we delay -at least- for
the correct amount of time.
[PATCH] USB: drivers/usb/gadget/epautoconf.c gcc-3.5 build fix
drivers/usb/gadget/epautoconf.c: In function `ep_matches':
drivers/usb/gadget/epautoconf.c:175: error: `typeof' applied to a bit-field
[PATCH] USB: ftdi_sio.c: not unlinking urb on ftdi_close
This patch fixes a bug in ftdi_sio.c where the driver wouldn't unlink the
read urb if the user application cleared the HUPCL flag on termios->c_cflag.
[PATCH] USB Storage: datafab fix and unusual devices
datafab.c has an often-seen bug: the SCSI READ_CAPACITY command
does not need the number of sectors but the last sector.
I just tried the CF and SM parts of a 5-in-1 card reader.
The CF part works with US_PR_DATAFAB when the bug mentioned is fixed.
The SM part works with US_PR_SDDR55.
(Revision Number is 17.08 - that in case the 0000-ffff
should prove to be too optimistic.)
We still must discuss what setup to use for readers like this -
I have several of them - that require different drivers for
different LUNs. As it is now one has to compile usb-storage
twice, once with CONFIG_USB_STORAGE_DATAFAB defined and once
without, and remove one usb-storage.ko and insert the other
to go from CF to SM. (And that hangs with 2.6.4 so a reboot
is required..)
[PATCH] USB: kill off CONFIG_USB_BRLVGER detritus.
This died a while ago, but lingers on in defconfigs.
[PATCH] USB: RNDIS/Ethernet Gadget Driver comment changes
Whoops, I missed something. You should apply this patch too.
The RNDIS spec license agreement does NOT require tacking any
GPL-incompatible restrictions on the results of _using_ the
spec:
"... may be used solely for the purpose of implementing
the RNDIS protocol message set to interface with ..."
(the two cases identified in the text)
And that's all the implementation does -- end of story.
[PATCH] USB: Rename the USB HID driver
> > I like to see this rename as soon as possible. So if nobody minds I send
> > a patch to LKML and ask Linus for inclusion.
>
> Go ahead, but also please patch all relevant documentation in the
> kernel.
the attached patch should do the renaming everywhere hid or hid.o was
mentioned. It also removes all references to *.o module names.
[PATCH] USB: omninet patch
here's a small patch for omninet.c .
[PATCH] I2C: Prevent misdetections in adm1021 driver
Yet another patch for the adm1021 chip driver. I refined the detection
code a bit in order to prevent chip misdetection. Some chips handled
by the adm1021 driver are hard to detect and identify (LM84 and
MAX1617) so we tend to accept any chip it the valid I2C address range
as one of these. It has caused much, much trouble already. See these
threads for example:
http://archives.andrew.net.au/lm-sensors/msg04448.html
http://archives.andrew.net.au/lm-sensors/msg04624.html
http://archives.andrew.net.au/lm-sensors/msg05560.html
http://archives.andrew.net.au/lm-sensors/msg05871.html
http://archives.andrew.net.au/lm-sensors/msg06754.html
http://archives.andrew.net.au/lm-sensors/msg07181.html
And this ticket:
http://www2.lm-sensors.nu/~lm78/readticket.cgi?ticket=1434
So I thought it would be good to prevent this kind of problems if
possible, and read the 8 datasheets again in search for ways to refine
the detection method.
I changed it in sensors-detect already, and had positive feedback from
one user. I will also backport the changes to the driver to the 2.4
version we have in CVS.
What the patch does:
* Use unused bits of two more registers (configuration and conversion
rate) to reduce misdetections.
* Return with -ENODEV if the detection fails.
* Change the order in which we try to identify the chips. We better
finish with the LM84 and the MAX1617, in this order, because they are
harder to identify and are more likely to result in false positives.
* Refine LM84 detection. The LM84 has less features than the other
chips(chip cannot be stopped, conversion rate cannot be set, no low
limits) so it has extra unused bits.
* Do not intialize the chip if it was detected as an LM84. This one
cannot be stopped so why would we try to start it again? And as said
right before, conversion rate isn't changeable either.
Note that I couldn't test the changes on any supported chip since I
don't own any. Still I believe that they should be applied, since the
current code already broke one system and seriously harmed several
others. I believe it's not critical if it turns out that we reject
valid chips (which shouldn't happen if the datasheets are correct,
anyway). People will simply let us know and we'll be less restrictive.
In the meantime they can force the driver. That said, testers are
welcome, as usual.
[PATCH] I2C: i2c documentation update (1/2)
Here is an update to my 2.4 to 2.6 i2c client porting guide. The changes
were inspired by the feedback I got with the drivers that have been
ported so far.
[PATCH] I2C: i2c documentation update (2/2)
Here is a patch to Documentation/i2c/sysfs-interface. This is mostly my
intent to make the document more readable. There are also a few
incorrectnesses fixed, and some comments added.
[PATCH] I2C: Incorrect memset in eeprom.c
Quoting Ralf Roesch:
> currently I'm only working with Linux MIPS 2.4 kernel,
> so it would be nice if you could forward the patch for 2.6.
OK, so here we are. Greg, this is the port to 2.6 of Ralf patch that
fixes an incorrect memset while initializing the eeprom driver. Please
apply.
[PATCH] I2C: Discard pointless comment in via686a
The simple patch below discards a comment in via686a referencing a file
that doesn't belong to the Linux tree. Now that I tell people not to do
that in my porting guide, we better follow our own advice.
SCSI: Add noretry check to the error handler path
This still doesn't give us complete fast fail on
the eh path because we still get delayed to recover
the transport.
[PATCH] USB: w9968cf driver misplaced ;
[PATCH] USB: fix dvb-ttusb-budget driver due to set_configuration locking cleanups
> Oops, you forgot to grep:
>
> CC [M] drivers/media/dvb/ttusb-dec/ttusb_dec.o
> drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c: In function `ttusb_setup_interfaces':
> drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c:1011: warning: implicit declaration of function `usb_set_configuration'
Well, when I did the grep that bug wasn't there; it
was just integrated on Feb 26!
> Care to send a patch to fix it up before Andrew gets grumpy with me for
> breaking his build? :)
The first part makes it use usb_reset_configuration() like
it did before ... I'm surprised this driver hasn't been
generating "it deadlocks during probe" reports.
The second part prints a diagnostic if the configuration
wasn't set right; the fix would use hotplug and sysfs.
[libata sata_via] Fix detection of device 1
VIA hardware thinks port 1 (second port) is "SATA primary slave".
Since the hardware rarely configures SATA to present as slave devices,
we must pretend that the second hardware port (as the user sees it)
is the third port (as the VIA PCI config registers see it).
[PATCH] USB Gadget: Use configuration-buffer library in file-storage
This patch imports the config-buffer library into the file-storage gadget,
simplifying and decreasing the amount of code needed for assembling
configuration descriptors. It also changes the driver to remove any
pretense at bus-powered operation and to use the new DUALSPEED
configuration option. This is in line with recent changes made to other
gadget drivers.
[PATCH] USB Gadget: Use automatic endpoint selection in file-storage
This patch imports the endpoint auto-config library into the file-storage
gadget, simplifying the code needed for endpoint selection and removing
almost all dependencies on the controller type from the driver. It also
changes some log messages for reporting fatal problems from INFO to ERROR.
[PATCH] USB: Complete all URBs in UHCI when releasing the bus
This patch changes the UHCI driver's bus-release routine; now it will
correctly finish all pending but not-yet-completed URBs. This fixes a
reported bug, when trying to rmmod uhci-hcd while using a USB mouse under
X. Also, the patch changes a variable name from ...hs... to ...fs...
("high speed" -> "full speed") -- something I accidentally omitted in an
earlier patch.
[PATCH] USB Gadget: Rename the dummy_hcd's gadget
When David added an entry to the gadget_chips.h file for the dummy_hcd
driver, he mistakenly used the name "dummy_udc" rather than "dummy_hcd".
The mistake is understandable, since other controllers use "_udc" in their
names and it is illogical to put "_hcd" in a _device_ controller's name.
This patch updates the dummy_hcd driver and changes the gadget name to
agree with the gadget_chips.h entry.
[PATCH] USB: RNDIS/Ethernet Gadget Driver .inf file
[PATCH] USB: remove usb_interface.driver field
Remove usb_interface.driver, and along with it the "half bound" state
previously associated with drivers binding with claim() instead of probe().
This changes usb_driver_claim_interface() semantics slightly: drivers must
now be prepared to accept disconnect() callbacks.
Fixes more locking bugs, and a claim() oops that snuck in with a
recent patch.
USB: remove "released" field from struct usb_interface as it is not needed.
USB: clean up usb_get_dev() as it was written quite horribly.
USB: add usb_get_intf() and usb_put_intf() functions as they will be needed.
SCSI: Updates to non-sector size completion calculations
From: Jens Axboe , Mike Christie
[AGPGART] VIA GART driver can use the new generic AGPv3 masks.
[AGPGART] Efficeon GART driver can use generic masking routine.
[AGPGART] SiS 746 chipset also needs extra recovery time when changing mode.
[AGPGART] Fix SiS workaround printk. This happens on multiple chipsets.
[PATCH] ia64: clean up pcibr_slot.c warnings
A few warnings crept into pcibr_slot.c that this patch takes care of.
- forward declare pcibr_slot_pwr so it can be used w/o warning
- fix argument passed to pcibr_slot_attach in pcibr_slot_enable
[PATCH] ia64: fix sn_serial warning
In my fixes to quiet the sn_serial driver, I made sn_debug_printf only
get used when the DEBUG define was turned on in the driver but forgot
to #ifdef out the function definition, causing an 'defined but not
used' warning. This patch fixes that.
[PATCH] ia64: small SN2 interface.c patch
Change the calls to link_path_walk() to path_walk(). link_path_walk()
doesn't initialze current->total_link_count and path_walk() does.
Without the initialization, path_walks start to fail when 40 sym links
have been followed.
[CPUFREQ] Various updates/fixes to the powernow-k8 comment header.
[CPUFREQ] fix compilation of speedstep-lib with DEBUG set
[CPUFREQ] powernow-k8 whitespace changes.
Trying to get the diffsize down between me & Pavel.
[AGPGART] Actually Call the SiS workaround on SiS 746 too.
[PATCH] ia64: bring ia64 nodes online properly
Andi's libnuma exposed the fact that we don't bring nodes online
properly as we discover them in ia64. Here's a quick patch to fix
that. Tested with Andi's numademo program; seems to work fine.
[AGPGART] EM64T driver should only run when we have a supported CPU.
Otherwise we see strange things at boottime if we compile in all drivers, like this..
agpgart: Unsupported Intel chipset (device id: 1a30)
agpgart: Detected an Intel i845 Chipset.
[CPUFREQ] Step 1 of SMP support for powernow-k8.
Move lots of code to the cpu init routine from the detection routine.
Do some SMP sanity checks in the detection routine.
[CPUFREQ] powernow-k8 SMP work part 2.
Introduce a per-cpu powernow_k8_data struct, and pass it around between all
the functions that need to know about it.
[PATCH] USB: ehci updates: CONFIG_PCI, integrated TT
Generalize the driver a bit:
- PCI-specific handling is restricted to a small chunk of
init code. Non-PCI implementations are in the pipeline.
- Merge support from ARC International (Craig Nadler) for
their integrated root hub transaction translators (on PCI).
Other implementations should be similar.
[PATCH] USB Gadget: ethernet/rndis gadget updates
This fixes an oops during "ifconfig usb0 down" after unplug
from a Windows box. It also shrinks the driver size to something
much more reasonable by leaving out debug messaging, and adds
a few missing newlines.
[PATCH] I2C: Add ALi 1563 Device ID to pci_ids.h
[PATCH] I2C: Add support for the ALi 1563 in the PCI IRQ routing code.
[PATCH] I2C: Add ALi 1563 i2c driver
The i2c interface on the 1563 is totally different than on both the 1533
and the 1535. It supports i2c 2.0, and happens to be nearly identical to
the interface on the i810 chipsets.
[PATCH] I2C: Fix check for DEBUG in i2c-ali1563
[PATCH] USB: usbcore blinkenlights
The per-port LEDs on the most USB 2.0 hubs are programmable.
And the USB spec describes some ways to use them, blinking
to alert users about hardware (amber) or software (green)
problems.
This patch is the infrastructure for that blinking. And
if you should happen to "modprobe usbcore blinkenlights",
the LEDs will cycle through all the ports ... which is
not a USB-standard mode, but it can certainly handy be
handy as a system heartbeat visible across the room.
[PATCH] sd_shutdown cannot be called when in state SDEV_DEL
sd_remove calls sd_shutdown to finish I/O to the disc. However, the
state model puts the device in SDEV_DEL before triggering the
sd_remove (which won't allow any further I/O at all).
Fix by making SDEV_CANCEL the intermediate state and only transitioning to
SDEV_DEL after calling device_del().
[ARM PATCH] 1777/1: Add TI OMAP support to ARM core files
Patch from Tony Lindgren
This patch updates the ARM Linux core files to add support for
Texas Instruments OMAP-1510, 1610, and 730 processors.
OMAP is an embedded ARM processor with integrated DSP.
OMAP-1610 has hardware support for USB OTG, which might be of interest
to Linux developers. OMAP-1610 could be easily be used as development
platform to add USB OTG support to Linux.
This patch is an updated version of an earlier patch 1767/1
with the dummy Kconfig added for OMAP as suggested by Russell King
here:
http://www.arm.linux.org.uk/developer/patches/viewpatch.php?id=1767/1
This patch is brought to you by various linux-omap developers.
[ARM PATCH] 1780/1: Add TI OMAP support, include files
Patch from Tony Lindgren
This patch adds the include files for Texas Instruments OMAP-1510 and
1610 processors.
OMAP is an embedded ARM processor with integrated DSP.
OMAP-1610 has hardware support for USB OTG, which might be of interest
to Linux developers. OMAP-1610 could be easily be used as development
platform to add USB OTG support to Linux.
This patch is an updated version of patch 1768/1 with Russell King's
comments fixed. This patch requires patch 1777/1 applied.
This patch is brought to you by various linux-omap developers.
[ARM PATCH] 1781/1: Add TI OMAP support, arch files
Patch from Tony Lindgren
This patch adds the arch files for Texas Instruments OMAP-1510 and
1610 processors.
OMAP is an embedded ARM processor with integrated DSP.
OMAP-1610 has hardware support for USB OTG, which might be of interest
to Linux developers. OMAP-1610 could be easily be used as development
platform to add USB OTG support to Linux.
This patch is an updated version of patch 1769/1 with Russell King's
comments fixed. This patch requires patch 1777/1 applied.
This patch is brought to you by various linux-omap developers.
[PATCH] SCSI sense buffer size -> 96
some SCSI devices need more than 64bytes of sense buffer.
I know about one: The IBM MagStar tapes report the necessity to be
cleaned at bytes 70 and report 96 bytes in total.
Attached patch increases the sense buffer size to 96 bytes.
Fix scsi_device_get to allow NULL devices
Modification of patch from SLES-9
[PATCH] sym 2.1.18j
sym 2.1.18j:
- Add SPI transport attributes (James Bottomley)
- Use generic code to do Domain Validation (James Bottomley)
- Stop using scsi_to_pci_dma_dir() (Christoph Hellwig)
- Change some constants to their symbolic names (Grant Grundler)
- Handle a race between a postponed command completing and the EH retrying
it (James Bottomley)
- If the auto request sense fails, issue a device reset (James Bottomley)
[ARM PATCH] 1782/1: discontigmem support for PXA chips
Patch from Nicolas Pitre
[ARM PATCH] 1783/1: more PXA reg definitions
Patch from Nicolas Pitre
[ARM PATCH] 1788/1: SC2410 include/asm-arm/arch-s3c2410 [repost of 1778/1]
Patch from Ben Dooks
This patch is a repost of 1778/1 with the memory.h file fixed.
This patch contains all the necessary include files for include/asm-arm/arch-s3c2410 for Samsing S3C2410 SoC CPU support.
The patch also includes the support headers for IPAQ H1940, Simtec BAST and VR1000 board support.
[ARM PATCH] 1793/1: S3C2410 - arch/arm/mach-s3c2410 [ repost of 1790/1 ]
Patch from Ben Dooks
Core support for S3C2410 based machines
machine support for Simtec BAST, VR1000 and
IPAQ H1940
repost of 1790/1 with configuration definition fixed
[ARM PATCH] 1792/1: S3C2410 - arch/arm/boot [ fix for 1789/1 ]
Patch from Ben Dooks
arch/arm/boot support for S3C2410
support for boot (and debug) messages via EmbeddedICE (CP14)
comms registers.
fixed typos from 1789/1
[ARM PATCH] 1794/1: S3C2410 - arch/arm/kernel patches [ repost 1791/1 ]
Patch from Ben Dooks
arch/arm/kernel patch for S3C2410 support
- default configurations for S3C2410
- build changes for S3C2410
- IRQ support for kernel entry
- debug serial support
[ARM] Clean up formatting of s3c2410 help texts.
[CPUFREQ] Transmeta longrun driver fix.
(From Stelian Pop)
Upon investigation, the reason is that trying to set the performance
to 80% in longrun_determine_freqs leaves the performance to 100%.
The performance level, at least on this particular model, can be lowered
only in 33% steps. And in order to put the performance to 66%, the
code should try to set the barrier to 70%.
The following patch does even more, it tries every value from 80%
to 10% in 10% steps, until it succeeds in lowering the performance.
I'm not sure this is the best way to do it but in any case,
it works for me (and should continue to work for everybody else).
[ARM] Fix silent build error caused by undefined symbol.
Current binutils silently ignores certain undefined symbols; this
cset fixes one such instance.
[AGPGART] Previous AGPv3 SiS fixes broke AGPv2 users. Oops.
[PATCH] ia64: Missing overflow check in mmap
Calling mmap with len == -1 was silently accepted. The test in the generic
code was fixed in July 2003, but the fix didn't make it into the ia64-
specific code.
[PATCH] ia64: Missing include in hugetlbpage.c
This fixes a missing include file in arch/ia64/mm/hugetlbpage.c in 2.6.5.
module.h is needed for EXPORT_SYMBOL.
[ARM] Add ecard_(request|release)_resources().
[PATCH] update Compaq Personal Server URL
Patch from Petri T. Koistinen
Update of Compaq Personal Server URL.
[PATCH] ia64: setup max dma addr earlier on hp boxes
sba_iommu was setting up MAX_DMA_ADDRESS way too late to do any
good. This patch makes it get setup via platform_setup, so it's ready
for paging_init(). All pages should show up in zone DMA now. Against
latest 2.6.
[PATCH] make_coherent pgoff
Patch from Hugh Dickins
In wandering through the Linus 2.6 tree preparing for changeover of
i_mmap and i_mmap_shared to Rajesh's prio tree for object-based rmap...
I noticed that pgoff in make_coherent doesn't add up (plus, I think
we need to mask out the word "don't" in the comment further down).
2.4.25 looks equally wrong.
[CPUFREQ] Fix up docbook parameters on x86 drivers.
From Michael Still
[CPUFREQ] Grammar fix in p4-clockmod.c
Noted by Viktor Radnai.
[CPUFREQ] Remove useless goto.
(Pavel Machek)
[CPUFREQ] Indentation fix.
[CPUFREQ] Kill off inlines in powernow-k8 driver.
Gcc should be smart enough to do this itself.
[CPUFREQ] make powernow-k8 use batps from powernow data struct instead of static struct.
[CPUFREQ] Merge a bunch of extra powernow-k8 helpers.
[CPUFREQ] Serialise fid/vid changes in powernow-k8 driver.
[CPUFREQ] SMP fixes for powernow-k8's check_supported_cpu()
[CPUFREQ] printk cleanup in powernow-k8's check_pst_table()
[CPUFREQ] Add missing MSR define to fix the powernow-k8 compile.
[CPUFREQ] powernow-k8 header cleanups
remove unused defines, introduce some new ones, and generally cleanup.
[CPUFREQ] fill out the powernow_k8_data table.
[CPUFREQ] Use the new fill_powernow_table() to fill struct instead of doing it inline.
[PATCH] pcnet32.c add support for 79C976
Please include this patch to add support for the 79C976 device to the
pcnet32 driver.
[PATCH] pcnet32 all printk under netif_msg
Please apply the following patch to 2.6.5.
All printk's are now done under netif_msg debug level tests.
[PATCH] pcnet32 correct name display
This displays the device name (eth%d) instead of the device type
when registering the interrupt handler.
[PATCH] pcnet32 add led blink capability
Please apply this patch to 2.6.5 to include the capability of blinking
the LED's for device identification. Ethtool -p support.
[CPUFREQ] More SMP/preempt fixes, this time powernowk8_target()
Also some changes to use some helpers.
Remove unused compatibility-defines include wan/lmc/lmc_ver.h.
Noticed by Adrian Bunk.
[CPUFREQ] Change powernow-k8 over to use its new KHz frequency helpers
[CPUFREQ] Extra debugging foo.
[CPUFREQ] Stuck pending bit is now checked in the init routine.
[PATCH] dgrs: add missing iounmaps
[resend]
Insert missing iounmap's.
From: Leana Ogasawara
[PATCH] lmc header file not needed
From: Domen Puncer
[CPUFREQ] numerous powernow-k8 cpu_init() fixes/cleanups.
|