- 15 Dec, 2004 5 commits
-
-
Domen Puncer authored
When request_region is called name is set to "", use module name. Signed-off-by: Domen Puncer <domen@coderock.org> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
-
Jean Delvare authored
> Very few drivers seem to support the I2C_FUNC_I2C functionality, is > there a reason for that? Yes, most bus drivers are for SMBus, not I2C, masters. SMBus is a subset of I2C. These SMBus master are fully I2C-capable, although in most cases it doesn't matter. Most chip drivers are for SMBus clients as well. Almost all hardware monitoring chips are SMBus devices. So it's not surprising not to see I2C_FUNC_I2C widely used. > I have an I2C bus on my platform constructed from a couple of GPIO lines > using the i2c-algo-bit driver. The device on the bus is a DS1307 I2C RTC > and the driver for that currently checks for > I2C_FUNC_SMBUS_WORD_DATA | I2C_FUNC_SMBUS_WRITE_BYTE > however the datasheet suggests it is a simple i2c device with none of > this smbus stuff, Russell King queried this here > http://www.arm.linux.org.uk/developer/patches/viewpatch.php?id=2021/1 First, note that all SMBus commands are valid I2C transfers. In fact, the SMBus specification doesn't do much except put names on specific I2C transfers, and sometimes give meanings to the data being transfered. As a result, "I2C" clients, although not specifically SMBus-compatible, may enjoy SMBus commands such as SMBUS_READ_BYTE, SMBUS_READ_BYTE_DATA and SMBUS_WRITE_BYTE_DATA. One typical example of that are EEPROMs and the eeprom driver. It relies on i2c_smbus_write_byte and i2c_smbus_read_byte (BTW I just noticed that it doesn't properly check for these functionalities... have to fix that) because it's so much easier to call these standard functions than rewrite I2C code manually. Also, this let us access the EEPROMs on SMBus (non-I2C) busses. Now, note that Russell is not quite correct in is assertion: "Do we really require SMBUS functionality, or is i2c functionality sufficient?" It's actually the other way around. SMBus puts restrictions on what a valid I2C transfer is. "Do we need the full I2C functionality or is the SMBus subset sufficient?" would make more sense. As for the exact functionality you need to check, let's just see how you access the bus. As far as I can see (providing that the code below Russell's comments is still valid), you rely on: * i2c_smbus_write_byte_data * i2c_smbus_read_byte_data * i2c_transfer So yo *need* to check for the availability of I2C_FUNC_SMBUS_BYTE_DATA on the adapter (which is part of I2C_FUNC_SMBUS_EMUL so any bus driver using that, including any relying on i2c-algo-bit, will work with your client driver) for the first two. And you also need to check for I2C_FUNC_I2C for the third one. Of course, any adapter with I2C_FUNC_I2C will be able to do SMBus byte data transfers, but since you do not use i2c_transfer to do them, you need to check the functionality separately (I think). Also, I think that what you do with i2c_transfer is similar to I2C_FUNC_SMBUS_READ_I2C_BLOCK, which is supported by some SMBus (non-I2C) masters. If you convert your code to use i2c_smbus_read_i2c_block_data, then you don't rely on the full I2C capatbilities of the bus, which means that your chip driver will be useable on more plateforms. That said, note that this feature is unimplemented on most SMBus master drivers as of now, and broken on a number of others (but I guess we would start paying more attention to them if there were more users for this function). > If I change it to a check for I2C_FUNC_I2C and change the algo-bit > driver to declare I2C_FUNC_I2C then the driver continues to work fine. You are right that i2c-algo-bit should declare itself I2C_FUNC_I2C capable. I even think that every bus being I2C_FUNC_SMBUS_EMUL capable is very likely to be I2C_FUNC_I2C capable. This means that other algorithms (ite, pcf, maybe pca) could most probably be declared I2C_FUNC_I2C capable as well. Can anyone confirm? > Given the above, is the following patch appropriate, or is there > something about the relationship between i2c and smbus that I don't > understand. I admit that the relationship between I2C and SMBus is somewhat tricky, it took me some time to get it and even then I am sometimes not sure to understand exactly what implies what ;) So we cannot blame you for not getting it at first. I hope I helped make things a little clearer. If not I welcome questions. Whether or not you change your code to use SMBus only in your driver to make it more widely useable, your patch to i2c-algo-bit is valid, I am signing it too and will apply it to the 2.4 version of the driver as well. Signed-off-by: Ian Campbell <icampbell@arcom.com> Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
-
Ian Campbell authored
Signed-off-by: Ian Campbell <icampbell@arcom.com> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
-
Jean Delvare authored
> Trivial patch against 2.6.10-rc3-bk2. > When request_region is called name is set to "", use module name. Correct. I even think we should do the same for other chip drivers. For now they all use an arbitrary string. Using the driver's name would be both more consistent and more efficient (spares some bytes of memory). Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
-
Evgeniy Polyakov authored
Documentation bits for generic w1 behaviour. Signed-off-by: Evgeniy Polyakov <johnpol@2ka.mipt.ru> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
-
- 14 Dec, 2004 8 commits
-
-
Kumar Gala authored
Unfortunately the restoring of SPE state was causing data corruption since we were restoring based on the size of the altivec context and not the SPE context. Also, fixed setting of last_task_used_spe on start_thread, flush_thread, and exit_thread. Signed-off-by: Kumar Gala <kumar.gala@freescale.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
bk://kernel.bkbits.net/davem/net-2.6Linus Torvalds authored
into ppc970.osdl.org:/home/torvalds/v2.6/linux
-
Linus Torvalds authored
It's "const volatile __iomem *". The "const" was missing.
-
Patrick McHardy authored
Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Chris Wright authored
When adding or deleting from the source list make sure to find matches by comparing against the new source address, not the group address. Also, check each addr in the list rather than just the first one. And, finally, only delete from list when there's a match rather than vice-versa. Drop the effort to keep list sorted, since it's not done on full-state api and can create an sl_addr entry that the delta api won't be able to delete. Without these fixes sl_count can be corrupted which can allow for kernel memory corruption. Signed-off-by: Chris Wright <chrisw@osdl.org> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Tony Luck authored
into intel.com:/data/home/aegl/BK/linux-ia64-release-2.6.10
-
Stéphane Eranian authored
- undo the pfm_context_free() call in pfm_handle_work(). The logic is different. In the case of a controlling task exiting while monitored in pfm_handle_work. The context is freed in pfm_close() and not pfm_handle_work(). signed-off-by: stephane eranian <eranian@hpl.hp.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
-
Tony Luck authored
Andrew took the patch that created this, and Linus applied it to his BK tree. Remove my copy so that we can merge. Signed-off-by: Tony Luck <tony.luck@intel.com>
-
- 13 Dec, 2004 27 commits
-
-
David S. Miller authored
into nuts.davemloft.net:/disk1/BK/net-2.6
-
Stéphane Eranian authored
- fix pfm_force_terminate() to really cleanup the state. There was a bug affecting sessions which use PFM_FL_OVFL_BLOCK flag. It could lead to an assertion failure in pfm_load_regs() in the case where the owner of the session died unexpectedly. The fix is to do the full unload operation. - simplifies the debug output in pfm_flush_pmds() - simplifies the debug output in pfm_overflow_handler() - fix a minor typos in a comment in pfm_flush(). signed-off-by: stephane eranian <eranian@hpl.hp.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
-
bk://bk.arm.linux.org.uk/linux-2.6-rmkLinus Torvalds authored
into ppc970.osdl.org:/home/torvalds/v2.6/linux
-
Russell King authored
Fix ZBOOT_ROM options help texts to describe what's going on there bettwe. Make ZBOOT_ROM depend on ZBOOT_ROM_TEXT and ZBOOT_ROM_BSS being different values. This allows all*config-created configurations to work where ZBOOT_ROM_TEXT and ZBOOT_ROM_BSS were both zero.
-
Johannes Stezenbach authored
emard<at>softhome!net discovered an embarrasing bug in dvb_net.c where the NET_REMOVE_IF ioctl will cause an Oops when called with an invalid interface number. Signed-off-by: Johannes Stezenbach <js@linuxtv.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Bjorn Helgaas authored
The hisax driver looks at dev_avm->irq before calling pci_enable_device(), which means it requests the wrong IRQ. This patch fixes it. Thanks to Thorsten Doil for reporting the problem and testing the fix. Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Andrew Morton authored
Avoid documenting something which isn't there. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
James Nelson authored
Add some configuration information to Documentation/rocket.txt that was included with the external driver package. Signed-off-by: James Nelson <james4765@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Magnus Damm authored
I recently learnt that limiting RAM with by using only "mem=xxxM" is no good on machines equipped with PCI. In my case (vanilla 2.6.9) the cardbus bridge on my laptop got mapped to the unused RAM area which resulted in wierd errors due to the collision. The right solution is to use "mem=" together with "memmap=" to mark the unused RAM area reserved. Henceforth I force the kernel to use 2016MiB by passing "mem=2016M memmap=32M#2016M" instead of just "mem=2016M". Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
sundarapandian@gmail.com authored
Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Michael Hunold authored
- av7110: fixed av7110_before_after_tune()/av7110_fe_lock_fix(): firmware >= 261d: wait for empty message queue, firmware <= 261c: wait 50ms - av7110: add __user and __iomem annotations, remove some unnecessary cast (patch by C.Y.M) - av7110: __av7110_send_fw_cmd(): added some sanity checks suggested by Werner Fin - av7110: added support for full-featured DVB-C cards: 13c2:0000 Siemens DVB-C (full-length card) VES1820/Philips CD1516 and 13c2:0003 Haupauge DVB-C 2.1 VES1820/ALPS TDBE2 - av7110: follow saa7146 changes, remove superflous casts, and other misc. minor cleanups - av7110: Fixed race condition between driver and av7110 while accessing the COMMAND register in DPRAM. See http://www.linuxtv.org/mailinglists/vdr/2004/01-2004/msg00331.html - budget: various cleanups by Adrian bunk Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Michael Hunold authored
- dib3000: support for dynamically i2c addresses of the demod - tda1004x: fixed firmware upload problems, forgot to include tune_settings for tda1004x, added setting to allow inversion of OCLK, set fesettings->min_delay_ms = 800 as suggested by Peter Siering - stv0297: code cleanup - mt312: added vp310 support - mt352: decrease verbosity Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Michael Hunold authored
- dvb-core: remove unused frequency bending code, simplify internal frontend handling - dvb-net: add ULE dvb-net support according to draft-ietf-ipdvb-ule-03 Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Michael Hunold authored
- added new usb ids for some more clones - added option to deliver the complete TS with USB2.0 devices - added support for the dib3000mc/p frontend driver Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Michael Hunold authored
- B2C2: move generic b2c2 code a separate module, added basic b2c2-usb support - [DVB] Skystar2: add mt312/vp310 support Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Michael Hunold authored
- saa7146: prefix IER_DISABLE and IER_ENABLE with SAA7146_, add SAA7146_ISR_CLEAR - dvb-bt8xx/dst: fix typo - cinergyT2: locking in SET_PARAMETERS and some VDR compatibility code for GET_EVENT (thanks to Stefan Lucke) Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Matt Mackall authored
This patch fixes a problem where /dev/urandom can return duplicate values when two processors read from it at the same time. It relies on the fact that we already are taking a lock in add_entropy_words(), and atomically hashes in some freshly mixed in data into the returned randomness. Signed-off-by: Matt Mackall <mpm@selenic.com> Signed-off-by: Theodore Ts'o <tytso@mit.edu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Pavel Machek authored
This fixes types so that sparse has less stuff to complain about. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Pavel Machek authored
Fixes typo in header, please apply, Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Pavel Machek authored
This fixes confusing printk. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Pavel Machek authored
This fixes memory leak when we are low on memory during suspend. Ouch and nr_needed_pages is only used twice, and only written :-(. I guess that can wait for 2.6.10. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Pavel Machek authored
This prevents oops when not enough memory is available during resume. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Pawel Sikora authored
Fix the below: drivers/atm/zatm.c:1608: error: invalid lvalue in assignment drivers/atm/iphase.c:623: error: invalid storage class for function 'ia_pkt_tx' drivers/cdrom/sbpcd.c: In function 'get_state_T': drivers/cdrom/sbpcd.c:1168: error: invalid storage class for function 'cmd_out_T' drivers/cdrom/sbpcd.c: In function 'cmd_out_T': drivers/cdrom/sbpcd.c:1317: error: invalid storage class for function 'cc_DriveReset' drivers/media/video/saa7134/saa7134-core.c:90: error: static declaration of 'saa7134_devcount' follows non-static declaration drivers/media/video/saa7134/saa7134.h:479: error: previous declaration of 'saa7134_devcount' was here drivers/net/acenic.c:488: error: invalid storage class for function 'ace_watchdog' Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Tom Rini authored
As of 2.6.10-rc3, the following is needed to allow various userland packages (sysvinit, dhcp, ppp, libcap, libpcap, lilo) to compile as parts that userland needs (e.g. for ioctls) is in files with stuff userland isn't allowed to see. This adds __KERNEL__ around <linux/ata.h> and some defines (<linux/ata.h> isn't needed by userland, and is unhappy right now). sysvinit and some other packages need <linux/hdreg.h> for HDIO_DRIVE_CMD and other IOCTL things. In <linux/types.h> we were unsafely typedef'ing __le64/__be64 as __u64 only exists when __GNUC__ && !__STRICT_ANSI__ (causing libcap to fail, for example). Finally, <asm/atomic.h> provides routines userland simply cannot use on all arches, but <linux/filter.h> is needed by iputils for example. While not all arches put __KERNEL__ around their header, on MIPS including this header currently blows up the build. Signed-off-by: Tom Rini <trini@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Bjorn Helgaas authored
Document how Linux/ia64 names serial devices and how to use them as console devices. Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Anton Blanchard authored
It turns out there are more issues with our VPA code: 1. vpa_init doesnt report errors when it fails. This was masking a bug where the VPA spanned 2 pages and phyp failed to register it. 2. We call idle_setup before we initialise the boot cpus vpa. This means we never select the shared processor idle loop. 3. We dont call vpa_init on UP kernels. Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Benjamin Herrenschmidt authored
ppc64 has a global called "pci_probe_only" which, when set, prevents the arch PCI code from calling pci_assign_unassigned_resources(). This was cleared by pmac so far, but a bug in the definition of the variable make that ineffective until 2.6.10, and so we never called pci_assign_unassigned_resources(). With 2.6.10, that bug was fixed and so we now call it, which results in some problems. Some devices who have perfectly valid assigned addresses by firmware end up beeing moved around anyway, which is a BAD thing can can break boot on some machines since it breaks the relationship between addresses in Open Firmware device-tree and actual location of PCI devices. (Some low level things like the PIC are ioremap'ed based on their OF address, way before the PCI based ASIC hosting them has been found). This also break the "offb" default framebuffer driver since the video card ends up beeing moved around as well. For now, the fix is to set pci_probe_only on pmac, thus reverting to the old behaviour. In the long run, it would be interesting to "fix" pci_assign_unassigned_resources() so that it does what it's name claims, and only assigns things that have been left unassigned instead of moving things around gratuituously... Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-