aboutsummaryrefslogtreecommitdiff
path: root/sys/modules/i2c/controllers
Commit message (Collapse)AuthorAgeFilesLines
* Remove sparc64 kernel supportWarner Losh2020-02-031-8/+2
| | | | | | | | | Remove all sparc64 specific files Remove all sparc64 ifdefs Removee indireeect sparc64 ifdefs Notes: svn path=/head/; revision=357455
* enable ig4_acpi on aarch64Ed Maste2019-07-241-1/+2
| | | | | | | | | | | The already-listed APMC0D0F ID belongs to the Ampere eMAG aarch64 platform, but ACPI support was not even built on aarch64. Submitted by: Greg V <greg_unrelenting.technology> Differential Revision: https://reviews.freebsd.org/D21059 Notes: svn path=/head/; revision=350303
* imcsmb(4): Intel integrated Memory Controller (iMC) SMBus controller driverRavi Pokala2018-03-032-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | imcsmb(4) provides smbus(4) support for the SMBus controller functionality in the integrated Memory Controllers (iMCs) embedded in Intel Sandybridge- Xeon, Ivybridge-Xeon, Haswell-Xeon, and Broadwell-Xeon CPUs. Each CPU implements one or more iMCs, depending on the number of cores; each iMC implements two SMBus controllers (iMC-SMBs). *** IMPORTANT NOTE *** Because motherboard firmware or the BMC might try to use the iMC-SMBs for monitoring DIMM temperatures and/or managing an NVDIMM, the driver might need to temporarily disable those functions, or take a hardware interlock, before using the iMC-SMBs. Details on how to do this may vary from board to board, and the procedure may be proprietary. It is strongly suggested that anyone wishing to use this driver contact their motherboard vendor, and modify the driver as described in the manual page and in the driver itself. (For what it's worth, the driver as-is has been tested on various SuperMicro motherboards.) Reviewed by: avg, jhb MFC after: 1 week Relnotes: yes Sponsored by: Panasas Differential Revision: https://reviews.freebsd.org/D14447 Discussed with: avg, ian, jhb Tested by: allanjude (previous version), Panasas Notes: svn path=/head/; revision=330304
* sys/modules: normalize .CURDIR-relative paths to SRCTOPEnji Cooper2017-03-0411-11/+11
| | | | | | | | | | | This simplifies make output/logic Tested with: `cd sys/modules; make ALL_MODULES=` on amd64 MFC after: 1 month Sponsored by: Dell EMC Isilon Notes: svn path=/head/; revision=314651
* Remove pc98 support completely.Yoshihiro Takahashi2017-01-281-4/+0
| | | | | | | | | I thank all developers and contributors for pc98. Relnotes: yes Notes: svn path=/head/; revision=312910
* [ig4] Add ACPI platform support for ig4 driverOleksandr Tymoshenko2016-12-261-2/+7
| | | | | | | | | | | | Add ACPI part for ig4 driver to make it work on Intel BayTrail SoC where ig4 device is available only through ACPI Reviewed by: avg MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D8742 Notes: svn path=/head/; revision=310621
* add iic interface to ig4 driver, move isl and cyapa to iicbusAndriy Gapon2016-10-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: The hardware does not expose a classic SMBus interface. Instead it has a lower level interface that can express a far richer I2C protocol than what smbus offers. However, the interface does not provide a way to explicitly generate the I2C stop and start conditions. It's only possible to request that the stop condition is generated after transferring the next byte in either direction. So, at least one data byte must always be transferred. Thus, some I2C sequences are impossible to generate, e.g., an equivalent of smbus quick command (<start>-<slave addr>-<r/w bit>-<stop>). At the same time isl(4) and cyapa(4) are moved to iicbus and now they use iicbus_transfer for communication. Previously they used smbus_trans() interface that is not defined by the SMBus protocol and was implemented only by ig4(4). In fact, that interface was impossible to implement for the typical SMBus controllers like intpm(4) or ichsmb(4) where a type of the SMBus command must be programmed. The plan is to remove smbus_trans() and all its uses. As an aside, the smbus_trans() method deviates from the standard, but perhaps backwards, FreeBSD convention of using 8-bit slave addresses (shifted by 1 bit to the left). The method expects 7-bit addresses. There is a user facing consequence of this change. A user must now provide device hints for isl and cyapa that specify an iicbus to use and a slave address on it. On Chromebook hardware where isl and cyapa devices are commonly found it is also possible to use a new chromebook_platform(4) driver that automatically configures isl and cyapa devices. There is no need to provide the device hints in that case, Right now smbus(4) driver tries to discover all slaves on the bus. That is very dangerous. Fortunately, the probing code uses smbus_trans() to do its job, so it is really enabled for ig4 only. The plan is to remove that auto-probing code and smbus_trans(). Tested by: grembo, Matthias Apitz <guru@unixarea.de> (w/o chromebook_platform) Discussed with: grembo, imp Reviewed by: wblock (docs) MFC after: 1 month Relnotes: yes Differential Revision: https://reviews.freebsd.org/D8172 Notes: svn path=/head/; revision=308104
* ig4 - Intel fourth gen integrated I2C SMBus driver.Michael Gmelin2015-05-302-1/+9
| | | | | | | | | | Differential Revision: https://reviews.freebsd.org/D2372 Reviewed by: jhb, wblock, adrian Approved by: jhb, wblock Relnotes: yes Notes: svn path=/head/; revision=283766
* Move all the power management (SMBus) drivers to their own directory,Rui Paulo2014-09-234-4/+4
| | | | | | | away from sys/pci. Notes: svn path=/head/; revision=272017
* Move amdsmb and nfsmb from dev/pci to their own device directory.Rui Paulo2014-09-232-2/+2
| | | | Notes: svn path=/head/; revision=272016
* Add ismt(4) driver.Jim Harris2014-05-202-1/+9
| | | | | | | | | | ismt(4) supports the SMBus Message Transport controller found on Intel C2000 series (Avoton) and S1200 series (Briarwood) Atom SoCs. Sponsored by: Intel Notes: svn path=/head/; revision=266474
* MFtbemd:Warner Losh2010-08-231-2/+2
| | | | | | | | | | | | Use MACHINE_CPUARCH in preference to MACHINE_ARCH. The former is the source code location of the machine, the latter the binary output. In general, we want to use MACHINE_CPUARCH instead of MACHINE_ARCH unless we're tesitng for a specific target. The isn't even moot for i386/amd64 where there's momemntum towards a MACHINE_CPUARCH == x86, although a specific cleanup for that likely would be needed... Notes: svn path=/head/; revision=211690
* The viapm module build had what appear to be some debugging CFLAGS leftNate Lawson2007-06-242-2/+0
| | | | | | | | | | | | | | | around to force the IO port to a fixed address. They were only turned on in the module build and were present since the original import. This breaks soft power-off on the Asus A7V since it reprograms the SMBus base address to a different one than the BIOS expects. A similar issue was found in the alpm(4) module build. PR: kern/113986, i386/97468 MFC after: 3 days Approved by: re Notes: svn path=/head/; revision=171020
* Drivers for AMD-8111 and NVIDIA nForce2/3/4 SMBus 2.0 controllers.Ruslan Ermilov2005-12-213-1/+19
| | | | Notes: svn path=/head/; revision=153618
* - Add ofw_bus_if.h to SRCS on sparc64 as envctrl.c and pcf_ebus.c dependMarius Strobl2005-11-221-8/+11
| | | | | | | | | on it. - Sync with sys/conf/files* and build pcf_isa.c only on i386 for now. - Try to adhere to style.Makefile(5) (sorting, whitespace). Notes: svn path=/head/; revision=152687
* Fix standalone module build for viapm. Note that by default it doesn'tJohn Baldwin2005-11-081-2/+2
| | | | | | | include the ISA bus support even though it probably should. Notes: svn path=/head/; revision=152204
* Finally complete some work on generalizing the PCF8584-based I2CJoerg Wunsch2005-10-281-1/+10
| | | | | | | | | | | | | | drivers I started quite some time before. Retire the old i386-only pcf driver, and activate the new general driver that has been sitting in the tree already for quite some time. Build the i2c modules for sparc64 architectures as well (where I've been developing all this on). Notes: svn path=/head/; revision=151805
* Hook ichsmb to build.Takanori Watanabe2005-06-051-1/+1
| | | | Notes: svn path=/head/; revision=146997
* Make ichsmb loadable.Takanori Watanabe2005-06-051-0/+8
| | | | | | | | PR: kern/81912 Submitted by: nork Notes: svn path=/head/; revision=146996
* Kill bogus isa compat opt file.Warner Losh2004-03-151-1/+1
| | | | Notes: svn path=/head/; revision=127018
* Most power management devices don't exist on pc98.Yoshihiro Takahashi2003-06-151-0/+4
| | | | Notes: svn path=/head/; revision=116379
* Fix the KMOD for the lpbb device.John-Mark Gurney2003-06-141-1/+1
| | | | Notes: svn path=/head/; revision=116349
* amdpm was omitted from the build of i2c controllers. Fixed.Nicolas Souchu2003-06-141-1/+1
| | | | Notes: svn path=/head/; revision=116348
* Include "../Makefile.inc".Yoshihiro Takahashi2002-11-061-0/+3
| | | | Notes: svn path=/head/; revision=106496
* Major rework of the iicbus/smbus framework:Nicolas Souchu2002-03-237-0/+55
- VIA chipset SMBus controllers added - alpm driver updated - Support for dynamic modules added - bktr FreeBSD smbus updated but not tested - cleanup Notes: svn path=/head/; revision=93023