summaryrefslogtreecommitdiffstats
path: root/sys/dev/iicbus/iicbb.c
Commit message (Collapse)AuthorAgeFilesLines
* IIC bitbang changes - prepare to make the bit delay configurable; debug ↵adrian2011-12-201-31/+42
| | | | | | | | | | | print changes. * Right now the delay is hard coded at 10uS. This is a bit long when doing lots of periodic i2c transactions. So create a 'udelay' parameter and initialise it to 10. This can be tuned later. * Add a newline after a transaction finishes, so the debugging output isn't so horrible.
* Fix iicbus_intr, iicbus_write and device_read_ivar prototypes...imp2009-02-101-2/+2
|
* Add locking to the various iicbus(4) bridge drivers:jhb2008-08-041-10/+1
| | | | | | | | | | | | | | | | | | | | | - Just grab Giant in the ixp425_iic(4) driver since this driver uses a shared address/data register window pair to access the actual I2C registers. None of the other ixp425 drivers lock access to these shared address/data registers yet and that would need to be done before this could use any meaningful locking. - Add locking to the interrupt handler and 'iicbus_reset' methods of the at91_twi(4) driver. - Add locking to the pcf(4) driver. Other pcf(4) fixes include: - Don't needlessly zero the softc. - Use bus_foo rather than bus_space_foo and remove bus space tag and handle from softc. - The lpbb(4) driver just grabs Giant for now. This will be refined later when ppbus(4) is locked. - As was done with smbus earlier, move the DRIVER_MODULE() lines to match the bus driver (either iicbus or iicbb) to the bridge driver into the bridge drivers. Tested by: sam (arm/ixp425)
* MFp4: Make iicbus_trasnfer_gen suitable for bridge drivers. Use it in theimp2007-03-231-0/+2
| | | | bitbang bridge.
* More properly cleanup the iicbus child when deleting it.imp2006-12-051-6/+27
| | | | | | | These are from patches by John Wehle, but the commentary has been updated by me. Obtained from: ports/multimedia/pvr250, indirectly
* Reference Hauppage's cxm_iic bit-bang device here.imp2006-12-051-0/+5
| | | | | | | | Add a note that suggests a cleanup. Note: This patch was derived based on looking at the pvrxxx/pvr250 ports' Makefiles only, and may be incomplete. It is not derived from anything I saw from Hauppage.
* MFp4: Add ixpiic bit-bang driver.imp2006-11-221-0/+1
| | | | Submitted by: sam@
* Minor style(9) treatment to make things a little more consistantimp2006-08-211-17/+30
| | | | within iicbus code.
* newbus will zero softc, so no need to duplicate the zeroing here.imp2006-04-041-4/+0
| | | | Plus a minor formatting nit in nearby code.
* Use __FBSDID().obrien2003-08-241-3/+3
| | | | Also some minor style cleanups.
* make iicbb_devclass and iicbb_driver globally visible. This will letjmg2003-06-191-2/+2
| | | | | | | | drivers that implemnt the i2c bit banging bus interface not have to recompile iicbb in order to add an attachment for it. This will mean the bktr and other definitions can go back to their respective drivers.
* Major rework of the iicbus/smbus framework:nsouch2002-03-231-28/+98
| | | | | | | | - VIA chipset SMBus controllers added - alpm driver updated - Support for dynamic modules added - bktr FreeBSD smbus updated but not tested - cleanup
* Remove unneeded #include <machine/clock.h>phk2000-10-151-1/+0
|
* Allow these drivers to be detached.jake2000-06-161-0/+1
| | | | Reviewed by: mdodd
* Remove ~25 unneeded #include <sys/conf.h>phk2000-04-191-2/+0
| | | | Remove ~60 unneeded #include <sys/malloc.h>
* Remove unneeded <sys/buf.h> includes.phk2000-04-181-1/+0
| | | | | Due to some interesting cpp tricks in lockmgr, the LINT kernel shrinks by 924 bytes.
* $Id$ -> $FreeBSD$peter1999-08-281-1/+1
|
* Alter the behavior of sys/kern/subr_bus.c:device_print_child()mdodd1999-07-291-9/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - device_print_child() either lets the BUS_PRINT_CHILD method produce the entire device announcement message or it prints "foo0: not found\n" Alter sys/kern/subr_bus.c:bus_generic_print_child() to take on the previous behavior of device_print_child() (printing the "foo0: <FooDevice 1.1>" bit of the announce message.) Provide bus_print_child_header() and bus_print_child_footer() to actually print the output for bus_generic_print_child(). These functions should be used whenever possible (unless you can just use bus_generic_print_child()) The BUS_PRINT_CHILD method now returns int instead of void. Modify everything else that defines or uses a BUS_PRINT_CHILD method to comply with the above changes. - Devices are 'on' a bus, not 'at' it. - If a custom BUS_PRINT_CHILD method does the same thing as bus_generic_print_child(), use bus_generic_print_child() - Use device_get_nameunit() instead of both device_get_name() and device_get_unit() - All BUS_PRINT_CHILD methods return the number of characters output. Reviewed by: dfr, peter
* Move the declaration of the interrupt type from the driver structuredfr1999-05-081-2/+1
| | | | to the BUS_SETUP_INTR call.
* Submitted by: Nicolas Souchu <nsouch@freebsd.org>roger1999-01-281-2/+2
| | | | Added support required by bt848 driver for MSP34xx audio chip
* Properly reset parent to get interface addr.nsouch1998-11-041-3/+3
|
* iicbb is generic support for I2C bit-banging.nsouch1998-10-311-0/+323
Other files: timeout management added to the I2C framework.
OpenPOWER on IntegriCloud