blob: 8ed0558e7ac439fa4077911a16ec16baf78c7176 [file] [log] [blame]
# 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
# tty0 - opened by powerd (running as user in "tty" group) at startup
# tty1, tty2 - needed by X server
# 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
script
udevadm trigger --subsystem-match="input" --subsystem-match="misc" \
--subsystem-match="graphics" --subsystem-match="drm" \
--subsystem-match="nvhost" --subsystem-match="tegra_dc_ext"
udevadm trigger --sysname-match=tty0 --sysname-match=tty1 \
--sysname-match=tty2
exec udevadm settle
end script