freebsd-nq/sys/arm
Ian Lepore d2c05e201f Mostly rewrite the imx i2c driver. This started out as an attempt to fix
one specific problem: the driver didn't check for ACK/NAK after writing a
slave address byte to the bus, and some slaves signal that they are busy
(such as when completing an internal write to flash memory) by sending a
NAK in response to being addressed.

While working on that problem I discovered that the driver's handling of
error conditions in general didn't match the state transition diagram in
the reference manual, and making that right resulted in a lot of code
reorganization.

Along the way various other changes also happened...

 - Remove a mutex that wasn't protecting anything.
 - Remove some mystery DELAY()s, document the few that remain.
 - Use pause_sbt(9) to yield the processor for the bulk of the time it
   takes to transfer each byte rather than busy-polling the whole time.
 - Disable the controller when no transfers are in progress; since we
   don't operate in slave mode, there's no reason to run the hardware.
 - Remove a bunch of unecessary code from probe().
2015-10-09 22:28:56 +00:00
..
allwinner Add the A20 glue code for if_dwc. 2015-09-21 01:51:37 +00:00
altera/socfpga Add alternate descriptors support for if_dwc. 2015-09-20 14:13:29 +00:00
amlogic/aml8726 Add alternate descriptors support for if_dwc. 2015-09-20 14:13:29 +00:00
annapurna/alpine Remove obsolete vendor code from Alpine platform support 2015-07-30 13:45:34 +00:00
arm A follow-up to r288492. In fact, revert the mentioned commit for 2015-10-07 09:12:49 +00:00
at91 Make kstack_pages a tunable on arm, x86, and powepc. On i386, the 2015-08-10 17:18:21 +00:00
broadcom/bcm2835 An IPI must be cleared before it is handled otherwise next IPI could be 2015-10-01 12:09:05 +00:00
cavium/cns11xx Make kstack_pages a tunable on arm, x86, and powepc. On i386, the 2015-08-10 17:18:21 +00:00
conf Enable if_dwc for Allwinner A20 based boards. 2015-09-21 03:17:41 +00:00
freescale Mostly rewrite the imx i2c driver. This started out as an attempt to fix 2015-10-09 22:28:56 +00:00
include A follow-up to r288492. In fact, revert the mentioned commit for 2015-10-07 09:12:49 +00:00
lpc Build the cpufunc_asm_* files based on the cpu type, not which config file 2015-03-29 22:43:39 +00:00
mv An IPI must be cleared before it is handled otherwise next IPI could be 2015-10-01 12:09:05 +00:00
qemu Enable SMP on the qemu virt platform. We use the device tree to find which 2015-05-24 12:33:12 +00:00
rockchip Use the new gic option on all configs that need it. 2015-05-10 12:13:27 +00:00
samsung Make kstack_pages a tunable on arm, x86, and powepc. On i386, the 2015-08-10 17:18:21 +00:00
ti Move pmu.c to files.arm and rename the option to pmu. This is not hwpmc 2015-10-07 13:19:44 +00:00
versatile Add domain support to PCI bus allocation 2015-09-16 23:34:51 +00:00
xilinx Use the new gic option on all configs that need it. 2015-05-10 12:13:27 +00:00
xscale Add domain support to PCI bus allocation 2015-09-16 23:34:51 +00:00