# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

description     "Trigger udev events"
author          "chromium-os-dev@chromium.org"

# We must run eventually even if the UI doesn't come up correctly,
# because network configuration depends on this job. Because
# system-services requires udev event processing to be completed before
# it emits started, this job is declared a task job and thus indirectly
# blocks system-services startup to complete.
start on starting failsafe
task

script
  # Some classes of devices are triggered by separate udev-trigger-*.conf
  # jobs
  udevadm trigger --subsystem-nomatch="input" --subsystem-nomatch="misc" \
    --subsystem-nomatch="graphics" --subsystem-nomatch="drm" \
    --subsystem-nomatch="nvhost" --subsystem-nomatch="tegra_dc_ext"
  exec udevadm settle
end script
