# Copyright (c) 2011 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     "Replay critical udev events"
author          "chromium-os-dev@chromium.org"

# This job is used to replay events of devices critical to the bring-up of
# the system. Since device nodes always exist, this is only needed if
# special permissions are required for nodes or special processing that
# would otherwise take place later.
#
# Subsystems listed here must be excluded from udev-trigger.conf to avoid
# replaying twice.

# Rationale:
# input - required to switch synaptics into raw mode, and also so X
#         can initialize its input devices on startup rather than later
# misc - required if synaptics is already in raw mode
# graphics & drm - required to set permissions for accelerated graphics
# nvhost & tegra_dc_ext - on nVidia systems, X needs this
# tty - opened by powerd (running as user in "tty" group) at startup
# mem - kmsg opened by journald
# i2c-dev - Ensure /dev/i2c-* permissions are set for non-root firmware updaters
# hidraw - Ensure /dev/hidraw* permissions are set for non-root firmware
#          updaters

# N.B.  The 'boot-services' start on condition assumes this
# dependency on 'udev'.  Don't change this line without accounting
# for the impact.
start on started udev
task

script
  udevadm trigger --action=add --settle \
    --subsystem-match="input" --subsystem-match="misc" \
    --subsystem-match="graphics" \
    --subsystem-match="drm" --subsystem-match="drm_dp_aux_dev" \
    --subsystem-match="nvhost" --subsystem-match="tegra_dc_ext" \
    --subsystem-match="tty" --subsystem-match="mem" \
    --subsystem-match="i2c-dev" --subsystem-match="hidraw"
  # Trigger graphics pci devices that may load as modules
  udevadm trigger --settle --subsystem-match=pci --attr-match=class=0x030000
end script
