Da in gefühlten 8 von 10 Startvorgängen die Grafikkarte nicht initialisiert wird, und dies nur durch Power OFF/ON behoben werden kann, hab ich mir was geschreiben:
Es nutzt den Wakeup-Timer vom Artic, damit der ACPI-Wakeup nicht gestört wird.
Booten ohne Grafik, TV zeigt "kein Videosignal":
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614001] ------------[ cut here ]------------
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614005] WARN_ON(common_len <= 0)
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614081] WARNING: CPU: 3 PID: 1723 at drivers/gpu/drm/i915/intel_dp.c:1967 intel_dp_compute_config+0x1a5/0x720 [i915]
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614082] Modules linked in: nfsd snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_codec_generic snd_soc_skl snd_soc_skl_ipc snd_soc_sst_ipc snd_soc_sst_dsp snd_hda_ext_core snd_soc_acpi_intel_match snd_soc_acpi snd_soc_co
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614105] CPU: 3 PID: 1723 Comm: Xorg Not tainted 4.20.16.202.6 #1
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614106] Hardware name: Intel corporation NUC6CAYS/NUC6CAYB, BIOS AYAPLCEL.86A.0060.2019.0219.1527 02/19/2019
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614137] RIP: 0010:intel_dp_compute_config+0x1a5/0x720 [i915]
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614140] Code: 4c 89 c2 89 c7 83 e8 01 3b 74 91 fc 7d 3c 85 c0 75 ef 48 c7 c6 1c 48 31 c0 48 c7 c7 73 45 31 c0 4c 89 54 24 18 e8 fb 9a df ed <0f> 0b c7 44 24 14 ff ff ff ff 4c 8b 54 24 18 eb 16 83 f8 01 0f 94
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614141] RSP: 0018:ffffb08d4066fa50 EFLAGS: 00010286
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614143] RAX: 0000000000000000 RBX: ffff9025fa78f000 RCX: 0000000000000000
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614145] RDX: 0000000000000018 RSI: ffffffffafae0f58 RDI: 0000000000000246
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614146] RBP: ffff9025f6f4e000 R08: 0000000000000002 R09: 000000000001edc0
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614148] R10: ffff9025f6f4e000 R11: 0000000000000000 R12: ffff9025f6f4e000
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614149] R13: ffff9025fa618000 R14: ffff9025faf82800 R15: ffff9025f4a17800
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614151] FS: 00007f3c75039a40(0000) GS:ffff9025efd80000(0000) knlGS:0000000000000000
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614153] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614154] CR2: 00005556470b5428 CR3: 00000000752e2000 CR4: 00000000003406e0
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614156] Call Trace:
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614193] intel_ddi_compute_config+0x76/0x80 [i915]
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614225] intel_atomic_check+0x368/0x10a0 [i915]
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614241] drm_atomic_check_only+0x4ba/0x670 [drm]
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614250] ? handle_conflicting_encoders+0x281/0x290 [drm_kms_helper]
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614262] drm_atomic_commit+0xe/0x50 [drm]
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614269] drm_atomic_helper_set_config+0x62/0x90 [drm_kms_helper]
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614281] drm_mode_setcrtc+0x4cf/0x6d0 [drm]
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614293] ? drm_mode_getcrtc+0x180/0x180 [drm]
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614303] drm_ioctl_kernel+0xa8/0xf0 [drm]
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614315] drm_ioctl+0x2fa/0x390 [drm]
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614326] ? drm_mode_getcrtc+0x180/0x180 [drm]
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614332] ? __switch_to_asm+0x34/0x70
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614335] ? __switch_to_asm+0x40/0x70
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614337] ? __switch_to_asm+0x34/0x70
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614341] do_vfs_ioctl+0x9c/0x620
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614345] ? __schedule+0x260/0x5f0
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614348] ksys_ioctl+0x6b/0x80
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614350] __x64_sys_ioctl+0x11/0x20
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614354] do_syscall_64+0x56/0x170
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614357] entry_SYSCALL_64_after_hwframe+0x44/0xa9
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614361] RIP: 0033:0x7f3c72a37dd7
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614363] Code: 00 00 00 48 8b 05 c1 80 2b 00 64 c7 00 26 00 00 00 48 c7 c0 ff ff ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 b8 10 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d 91 80 2b 00 f7 d8 64 89 01 48
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614364] RSP: 002b:00007ffc050fd768 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614367] RAX: ffffffffffffffda RBX: 000000000000000e RCX: 00007f3c72a37dd7
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614368] RDX: 00007ffc050fd7a0 RSI: 00000000c06864a2 RDI: 000000000000000e
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614369] RBP: 00007ffc050fd7a0 R08: 0000000000000000 R09: 00005556475e6590
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614371] R10: 00007ffc050fd940 R11: 0000000000000246 R12: 00000000c06864a2
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614372] R13: 000000000000000e R14: 0000555646acb790 R15: 0000555646978ec0
Apr 30 05:58:42 MLD user.warn kernel: [ 17.614374] ---[ end trace 4a0e4992ec55f719 ]---
MLD-NucWZ> xrandr -d :0
Screen 0: minimum 320 x 200, current 1024 x 768, maximum 8192 x 8192
DP-1 disconnected primary (normal left inverted right x axis y axis)
1920x1080_50 50.00
DP-2 disconnected (normal left inverted right x axis y axis)
MLD-NucWZ>
Damit ich diesen Zustand von außen erkenne, lasse ich den NUC-Ring gelb blinken.
Hier das Script, was ich mit den Atric nutze:
/etc/init.d/nuc-gfx-check
#!/bin/sh
. /etc/init.d/rc.functions
NAME=${0##*/}
case "$1" in
start)
echo "Starting $NAME:"
#
modprobe nuc_led
if [ -n "`cat /var/log/messages | grep 'Comm: Xorg Not tainted'`" ] #GPU funktioniert nicht
then
show_message "Kein Bild"
echo "Kein Bild"
echo 'ring,30,blink_medium,yellow' > /proc/acpi/nuc_led #NUC-LED Ring blinkt gelb
echo 'power,30,none,amber' > /proc/acpi/nuc_led #NUC-Power leuchtet Bernstein
echo "TSACS`date +%y%m%d%H%M`300" > /dev/ttyACM0 #Atric-Zeit setzen mit Sekunden fix auf xx, automatische Kalibrierung = off
echo "WSACS$((`date +%y%m%d%H%M+1`))" > /dev/ttyACM0 #Atric-Wakup setzen mit Minute +1 Minute = kleinstes Intervall
poweroff #Reboot funktioniert nicht, GPU wird nur mit einem Poweroff/on initialisiert
else
show_message "Bild OK"
echo "Bild OK"
echo 'ring,0,none,off' > /proc/acpi/nuc_led
fi
#
check_status
;;
stop)
echo "Stopping $NAME:"
#
# add here your stop actions
#
check_status
;;
restart)
$0 stop
$0 start
;;
resume)
echo "Resume $NAME:"
#
# add here your resume actions
#
check_status
;;
halt)
echo "Halt $NAME:"
#
# add here your halt (suspend) actions
#
check_status
;;
init)
start=1 # enable start section
#stop=1 # enable stop section
#resume=1 # enable resume section
#halt=1 # enable halt section
after="xorg" # init scripts that must be started before this
#before="" # init scripts that should be started after this
;;
*)
echo "Usage: $0 {start | stop | restart}" >&2
exit 1
esac
Ist nicht die beste Lösung, für mich passts so.