# Implement the run-time component of devmatch by reacting to nomatch events.

#
# Ignore those devices that can't possibly match. When there's neither a
# location, nor a pnpinfo string, we know that there's nothing devmatch can
# match on. When it's only a location, it'd debateable, but for nomatch
# events, we can't disambiguate between the two reliably.
#
nomatch 101 {
	match "_" " +at +on .*";
};

#
# Ignore ACPI devices whose _HID is none. These cannot tell us what to load,
# since 'none' is not a valid id. There's no need to call devvmatch for these either.
#
nomatch 101 {
	match "_HID" "none";
	match "bus" "acpi[0-9]+";
};

#
# Generic NOMATCH event
#
# Note: It would be better to have some internal-to-devd action that will do
# what devmatch does without re-parsing loader.hints for each invocation
#
nomatch 100 {
	action "service devmatch quietstart $*";
};

# Add the following to devd.conf to prevent this from running:
# 	nomatch 1000 {
#		action "true";
#	};
# it replaces the generic event with one of higher priority that
# does nothing. You can also set 'devmatch_enable=NO' in /etc/rc.conf