- 06 Oct, 2002 2 commits
-
-
Kai Germaschewski authored
For some unknown reason, isdn_net kept two pointers back from the channel to the associated isdn_net_dev, one is enough, though.
-
Kai Germaschewski authored
-
- 05 Oct, 2002 5 commits
-
-
Kai Germaschewski authored
-
Kai Germaschewski authored
Since we use the dial timer only during setup and the idle timer only when the connection is active, we can simply (and cleanly) use the same timer.
-
Kai Germaschewski authored
No code change, just splitting different states into separate functions.
-
Kai Germaschewski authored
->slave and ->master have been superseded, remove remaining traces.
-
Kai Germaschewski authored
Add a new file isdn_net_lib.c, where code which is shared among different kind of network interface will gradually migrate to. For now, move the ioctl config code out of isdn_{common,net}.c there, and the basic register_netdev() + associated methods.
-
- 03 Oct, 2002 4 commits
-
-
Kai Germaschewski authored
One goal is now achieved: Different types of ISDN net devices now have a struct ops which describes them, so we don't have a mess of if (lp->p_encap == <whatever>) everywhere, but things even nicely split into isdn_net.c: Common stuff and ethernet, raw-ip, and similar isdn_ciscohdlck.c: Cisco HDLC + keepalive isdn_ppp.c: Sync PPP where common code to be used library-like is provided by isdn_net.c
-
Kai Germaschewski authored
Really use three different functions, which can call back into library-type functions (isdn_net_autodial) as needed.
-
Kai Germaschewski authored
Now that the generic eth_type_trans() has changed in a way that it works for dev->hard_header_size != ETH_HLEN, use it for ethernet-over-ISDN instead of the private copy. Also, kill the pointless isdn_net_adjust_hdr() function.
-
Kai Germaschewski authored
This a big patch, which now mostly finishes the separation work of isdn_net_dev, isdn_net_local and struct net_device. The latter two are allocated per network-layer known network interface, while isdn_net_dev is the entity which is accessed using isdnctrl, i.e. a per-channel thing. Since we allow for channel bundling, isdn_net_local, the priv data of an ISDN network interface, gets a list of isdn_net_dev's which can be used for transfering data on that interface.
-
- 01 Oct, 2002 1 commit
-
-
Kai Germaschewski authored
Cleaner and less error-prone than the open coded doubly linked list.
-
- 30 Sep, 2002 16 commits
-
-
Kai Germaschewski authored
Use a tasklet for pushing supervisory frames down the ISDN line and schedule_task() for flipping ttyI's buffers.
-
Kai Germaschewski authored
into tp1.ruhr-uni-bochum.de:/home/kai/kernel/v2.5/linux-2.5.isdn
-
Kai Germaschewski authored
There is a one-to-one relation between struct net_device and isdn_net_local, so reflect that in the declaration. There is one list of active channels per network interface, so put the list head into isdn_net_local, the list members are isdn_net_dev's.
-
Kai Germaschewski authored
-
http://linux-scsi.bkbits.net/scsi-for-linus-2.5Linus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
James Bottomley authored
into mulgrave.(none):/home/jejb/BK/scsi-for-linus-2.5
-
Mike Anderson authored
-
Rolf Fokkens authored
Hi! Since the introduction of USER_HZ the SG_[GS]ET_TIMEOUT ioctls may have a serious BUG as userspace uses a different HZ from the HZ in kernelspace. In x86 HZ=1000 and USER_HZ=100, resulting in confusing timouts as the kernel measures time 10 times as fast as userspace. This patch is an attempt to fix this by transforming USER_HZ based timing to HZ based timing before storing it in timeout. To make sure that SG_GET_TIMEOUT and SG_SET_TIMEOUT behave consistently a field timeout_user is added which stores the exact value that's passed by SG_SET_TIMEOUT and it's returned on SG_GET_TIMEOUT. Rolf Fokkens fokkensr@fokkensr.vertis.nl P.S. this is the second post of this patch
-
James Bottomley authored
-
Andrew Morton authored
But it's called from scsi_add_lun()->scsi_alloc_sdev() before the type is known. The type is -1 all the time in scsi_initialise_merge_fn() and scsi always bounces. This patch makes it do the right thing - just enable block-highmem for all scsi devices. Jens had this to say: "I guess that block-highmem has been around long enough, that I can use the term 'historically' at least in the kernel sense :-) This extra check was added for IDE because each device type driver (ide-disk, ide-cd, etc) needed to be updated to not assume virtual mappings of request data was valid. I only did that for ide-disk, since this is the only one where bounce buffering really hurt performance wise. So while ide-cd and ide-tape etc could have been updated, I deemed it uninteresting and not worthwhile. Now, this was just carried straight into the scsi counter parts, conveniently, because of laziness. A quick glance at sr shows that it too can aviod bouncing easily (no changes needed). st may need some changes, though. So again, for scsi it was a matter of not impacting existing code in 2.4 too much. So TYPE_DISK check can be killed in 2.5 if someone does the work of checking that it is safe. I'm not so sure it will make eg your SCSI CD-ROM that much faster :-)"
-
David Gibson authored
This removes an unused label in fs/devfs/base.c
-
Greg Kroah-Hartman authored
into kroah.com:/home/greg/linux/BK/gregkh-2.5
-
Randy Dunlap authored
It needs s/malloc.h/slab.h/ . It also forgets to free some memory on an error exit patch. Patch for 2.5.39 follows.
-
David Brownell authored
Here are the scatterlist primitives there's been mail about before. Now the code has passed basic sanity testing, and is ready to merge into Linus' tree to start getting wider use. Greg, please merge! To recap, the routines are a utility layer packaging several usb core facilities to improve system performance. It's synchronous. The code uses functionality that drivers could use already, but generally haven't: - Request queueing. This is a big performance win. It lets device drivers help the hcds avoid wasted i/o bandwidth, by eliminating irq and scheduling latencies between requests. It can make a huge difference at high speed, when the latencies often exceed the time to handle each i/o request! - The new usb_map_sg() primitives, leveraging IOMMU hardware if it's there (better than entry-at-a-time mapping). - URB_NO_INTERRUPT transfer flag, a hint to hcds that they can avoid a 'success irq' for this urb. Only the urb for the last scatterlist entry really needs an IRQ, the others can be eliminated or delayed. (OHCI uses this today, and any HCD can safely ignore it.) The particular functionality in these APIs seemed to meet Matt's requirements for usb-storage, so I'd hope the 2.5 usb-storage code will start to use these routines in a while. (And maybe those two scanner drivers: hpusbscsi, microtek.) Brief summary of testing: this code seems correct for normal reads and writes, but the fault paths (including cancelation) haven't been tested yet. Both EHCI and OHCI seem to be mostly OK with these more aggressive queued loads, but may need small updates (like the two I sent yesterday). Unfortunately I have to report that UHCI and urb queueing will sometimes lock up my hardware (PIIX4), so while we're lots better than 2.4 this is still a bit of a trouble spot for now. I'll be making some testing software available shortly, which will help track down remaining HCD level problems by giving the queuing APIs (and some others!) a more strenuous workout than most drivers will, in their day-to-day usage. - Dave
-
Matthew Dharm authored
Greg, attached is a patch designed for diagnostic purposes. Please apply to the 2.5 tree -- yes, we'll be removing this at some point in the future. It appears that we have a problem clearing halts. This patch causes a very clear message to be printed whenever a usb_stor_clear_halt() manages to work. So far, I haven't seen such a thing happen. And I've seen _lots_ of STALL conditions. This problem has likely been around for a while... however, it hasn't been noticed before because usb-storage was difficult to use because of other bugs. Heck, the most recent 'bk pull' is the first one for me in _months_ which let me boot all the way into X11. I'm going to hold my patch queue until this is resolved. On my test setup, it's easy to see this failing. I've tried with 4 different devices, with both UHCI and EHCI drivers. I don't want to confuse this problem with other patches... 'result' in this function always seems to be -32. Which is odd, because control endpoints shouldn't do that. I'm open to suggestions as to where to look for this bug, but my instincts are telling me that this is a core or HCD issue, not a usb-storage issue. On a positive note, this means that the error-recovery system gets a good workout.
-
bk://bk.arm.linux.org.ukLinus Torvalds authored
into penguin.transmeta.com:/home/penguin/torvalds/repositories/kernel/linux
-
- 01 Oct, 2002 4 commits
-
-
Russell King authored
into flint.arm.linux.org.uk:/usr/src/linux-bk-2.5/linux-2.5-rmk
-
Russell King authored
-
Russell King authored
This corrects spelling mistakes, adds missed configuration for cpufreq, corrects free_irq comment, etc.
-
Russell King authored
Add "IRQ_" prefix to these sa1111 irq numbers.
-
- 30 Sep, 2002 8 commits
-
-
Russell King authored
We must clear down all currently pending IRQs before servicing any IRQ on the chip. This prevents immediate recursion into the interrupt handling paths when we service the first IRQ.
-
Russell King authored
This cset updates sa1100 code for the now merged cpufreq next-gen.
-
Russell King authored
Update sa1100fb for recent fbcon changes, and move stork LCD power handling into machine specific file.
-
Russell King authored
This didn't follow the LDM model correctly. The SA1111 is always a device on the root bus.
-
Russell King authored
-
Russell King authored
This cset updates the SA1111 core, PCMCIA, OHCI and keyboard drivers, allowing them to take advantage of the Linux device manager code; this implements initial suspend/resume support for the SA1111 in the core. Many existing drivers currently rely on the old PM-based interface for suspend/resume support.
-
David Brownell authored
In a test where some memory corruption happened, I noticed an oops (null pointer exception in_irq) that's avoidable. Here's a patch that avoids it ... anyone seeing the err() is likely to hang some process, but that's better than the alternative. (Also inlines some used-once routines, saving a bit of space to make up for the new diagnostic.)
-
David Brownell authored
In doing some more extensive testing of the urb queueing behavior, I noticed that (a) IOC wasn't always being set for each urb, while for now it needs to be set; (b) a qh patchup wasn't done quite where it should be. This resolves those two issues, as well as making it a bit less noisy to unlink lots of urbs at the once.
-