opnsense-src/sys/dev/ow
Ian Lepore f24f20f435 Do not attach children of owc_gpiobus until interrupts are working.
The children of the bus need to do IO on the bus to probe for hardware
presence.  Doing IO means timing the bus states using sbinuptime(), and
that requires working timecounters, which are not initialized until after
device attachment has completed.

PR:		242526
2019-12-10 21:48:21 +00:00
..
ow.c Regularize my copyright notice 2019-12-04 16:56:11 +00:00
ow.h Regularize my copyright notice 2019-12-04 16:56:11 +00:00
ow_temp.c Regularize my copyright notice 2019-12-04 16:56:11 +00:00
owc_gpiobus.c Do not attach children of owc_gpiobus until interrupts are working. 2019-12-10 21:48:21 +00:00
owll.h Regularize my copyright notice 2019-12-04 16:56:11 +00:00
owll_if.m Regularize my copyright notice 2019-12-04 16:56:11 +00:00
own.h Regularize my copyright notice 2019-12-04 16:56:11 +00:00
own_if.m Regularize my copyright notice 2019-12-04 16:56:11 +00:00
README.txt

Quick Design Document for 1-wire bus

In new bus terms, 1-wire devices are attached to 1-wire buses (ow)
which are attached to a one wire bridge (owc).

The implementation follows the terminology used in the Maxim AN927
Application note which defines the 1-wire bus as implemented for the
iButton product. This is considered to be the canonical definition of
the 1-wire bus. This means that the 1-wire bridge will implement the
owll(9) interface. ow is one wire. ll is for Link Level to mirror the ISO
stack terminology used by AN927. The 1-wire bus is implemented in the ow(4)
device, which implements the own(9) interface (n for network, the layer
described in the AN927). The presentation layer and above is the
responsibility of the client device drivers to implement.

Client drivers may only call the own(9) interface. The ow(4) driver
calls the owll(9) interface and implements the own(9).

$FreeBSD$