opnsense-src/sys
Michal Meloun bcc0decdc9 Fix handling of enable counter for shared GPIO line in fixed regulator.
For most regulators, the regulator_stop() method can be transformed to
regulator disable. But, in some cases, we needs to maintain shared data
across multiple regulators (e.g. single GPIO pin which works as enable
for multiple regulates). In this case, the implementation of regulator
should perform his own enable counting therefore it is necessary to
distinguish between the regulator enable/disable method (which
increments/decrements enable counter for shared resource) and regulator
stop method (which don't affect it).

So:
- add regnode_stop() method to regulator framework and default it to
  regnode_enable(..., false, ...)
- implement it in regulator_fixed with proper enable counting.

While I'm in, also fix handling of always_on property. If any of regulators
sharing same GPIO pin have it enabled, then none of them can disable regulator.

Tested by: kevans
MFC after: 3 weeks
2018-06-16 08:25:38 +00:00
..
amd64 linuxulator: do not include legacy syscalls on arm64 2018-06-15 14:41:51 +00:00
arm allwinner: ccung: Fully subclass the clock drivers 2018-06-15 08:36:21 +00:00
arm64 arm64 linuxulator: add linux_dummy.c based on amd64 2018-06-15 19:42:52 +00:00
bsm
cam Fix da(4) locking when probing SMR drives. 2018-06-14 17:08:44 +00:00
cddl This originated from ZFS On Linux, as 2018-06-08 17:38:28 +00:00
compat Add linprocfs support for min_free_kbytes 2018-06-15 15:22:27 +00:00
conf Correct kern.pre.mk comment: objcopy, not objdump, copies objects. 2018-06-15 16:32:18 +00:00
contrib [ath_hal] Return failure if noise floor calibration fails. 2018-06-08 18:21:57 +00:00
crypto disable printing value of SKEIN_LOOP during standard out, 2018-05-19 18:27:14 +00:00
ddb Extend show proc with reaper, sigparent, and vmspace information 2018-05-25 13:59:48 +00:00
dev Fix handling of enable counter for shared GPIO line in fixed regulator. 2018-06-16 08:25:38 +00:00
dts arm: overlays: Update to new path-based sugar format 2018-05-04 14:38:48 +00:00
fs Move four functions in nfscl.ko to nfscommon.ko. 2018-06-14 10:00:19 +00:00
gdb
geom Introduce the 'n' flag for the geli attach command. 2018-05-09 20:53:38 +00:00
gnu dts: Update our copy to Linux 4.17 2018-06-14 07:12:10 +00:00
i386 linuxulator: do not include legacy syscalls on arm64 2018-06-15 14:41:51 +00:00
isa
kern Since 'ticks' is an int, it may wrap around and cr_ticks at a certain 2018-06-15 21:36:16 +00:00
kgssapi
libkern str(r)chr: Replace union abuse with __DECONST 2018-06-04 18:47:14 +00:00
mips hwpmc: yet another missed fixup 2018-06-08 18:54:47 +00:00
modules Add modules/rockchip 2018-06-14 06:40:59 +00:00
net Add missing BPF_MTAP2() for outbound packets. 2018-06-14 15:04:30 +00:00
net80211
netgraph Catch up two more places to the V_ifnet change to a CK_STAILQ. 2018-05-24 00:06:55 +00:00
netinet When retransmitting TCP SYN-ACK segments with the TCP timestamp option 2018-06-15 12:28:43 +00:00
netinet6 Add NULL check like the rest of code has. 2018-06-14 09:36:25 +00:00
netipsec uma: implement provisional api for per-cpu zones 2018-06-08 21:40:03 +00:00
netpfil pf: Fix deadlock with route-to 2018-06-09 14:17:06 +00:00
netsmb Eliminate the overhead of gratuitous repeated reinitialization of cap_rights 2018-05-09 18:47:24 +00:00
nfs Merge the pNFS server code from projects/pnfs-planb-server into head. 2018-06-12 19:36:32 +00:00
nfsclient
nfsserver
nlm
ofed Revert r335094 and properly fix OFED build after r335053. 2018-06-14 07:55:10 +00:00
opencrypto
powerpc Split the PowerISA 3.0 HPT implementation from historic 2018-06-14 17:23:51 +00:00
riscv Don't jump to VA space until kernel is ready. 2018-06-13 10:32:21 +00:00
rpc
security audit(4): fix the definition of ARG_TERMID_ADDR 2018-06-13 14:55:31 +00:00
sparc64 Define memmove and make bcopy alt entry point 2018-05-24 21:11:28 +00:00
sys Bump __FreeBSD_version after r335227 2018-06-15 20:57:02 +00:00
teken teken: Fix sequences header which was crossing the 80-col boundary 2018-05-29 08:41:44 +00:00
tests epoch(9): Make epochs non-preemptible by default 2018-05-18 17:29:43 +00:00
tools
ufs ufs: remove cgbno variable where unused 2018-05-19 19:30:42 +00:00
vm Name the implementation of brk and sbrk sys_break(). 2018-06-14 21:27:25 +00:00
x86 Untangle configuration ifdefs a little. On x86, msi is optional on pci, 2018-06-10 14:49:13 +00:00
xdr
xen xen: remove dead code from gnttab.h 2018-05-25 08:44:00 +00:00
Makefile