힘 모니터 감지, 낮은 수준

힘 모니터 감지, 낮은 수준

노트북을 시작한 후에만 외부 모니터(Dell)를 켜면 Asus 노트북에서는 감지되지 않습니다.

유사한 사례인텔 i915 드라이버를 사용하여 Linux가 모니터를 감지/재감지하도록 하는 방법은 무엇입니까?, 내 경우를 제외하고는 노트북이 이에 대해 알고 나면 플러그를 뽑았다가 다시 연결하면 감지됩니다.

부팅 중에 외부 모니터가 꺼진 경우에만 감지할 수 없습니다.

을 사용한 솔루션은 디스플레이가 꺼지면 시작 후 echo detect > /sys/class/drm/card0-DP-1/status문제의 디렉터리가 전혀 존재하지 않기 때문에 작동하지 않습니다 .card0-DP-2

다른 솔루션(예: CTRL-ALT-F1 및 return)도 작동하지 않습니다.

케이블을 뽑았다가 다시 연결해도 아무런 효과가 없습니다. 노트북의 디스플레이 포트 플러그 전체가 완전히 꺼진 것 같은 느낌이 듭니다.

이상한 발견: 디스플레이 포트 케이블이아니요시작 시 연결한 후 모니터링부팅 후 전원을 켜고 케이블을 연결하면 감지됩니다(:-( 따라서 "부팅 중에 연결된 케이블 / 모니터 끄기" 콤보는 "이 하드웨어를 더 이상 방해하지 않음"으로 해석되는 것 같습니다.

디스플레이 포트에 연결된 것이 있는지 다시 고려하도록 시스템에 지시하는 명령이 있습니까?

답변1

이것은 그 자체로 귀하의 질문에 정확하게 대답하지는 않지만 기술적으로 정답일 수 있으므로 답변에 제공된 더 나은 형식을 활용했으므로 30개의 텍스트 주석이 아닙니다.

단순히 도메인별 지식이 충분하지 않기 때문에 SO/SE에 대한 답변을 얻을 가능성이 없습니다. 가장 좋은 방법은 i915 커널 드라이버 개발자와 직접 대화하는 것입니다.

https://01.org/linuxgraphics/documentation/how-report-bugs포함하다매우이를 체계적으로 수행하는 방법에 대한 포괄적인 지침입니다.

버그 보고서의 표현 방식은 다음을 의미합니다./sys/class/drm/card0-DP-2/status 하다부팅 후 DisplayPort 케이블을 연결하면 나타나는데, 케이블을 연결하고 화면이 연결되지 않은 경우에는 나타나지 않습니다. 글쎄, 관련된 모든 것은 /sys/*확실히 X11과 관련이 없으며 drm당신이 따르고 싶은 길에 대한 절대적인 확인 입니다.1.1 - DRM Kernel위에 링크된 섹션.

해당 섹션에 필요한 세부 사항을 살펴봤고, 이해하기 어려운 섹션이 실제로는 필요하지 않다고 믿을 만한 이유가 있습니다. 즉, 커널 및 배포판 정보, dmesg재부팅 후 전체 drm.debug=0xe정보 등은 모두 매우 좋은 아이디어입니다.

여기서 두 개는 논리적으로 적절 합니다 dmesg. 하나는 커넥터가 없는 스타터에서 나온 것이고 다른 하나는 커넥터가 있는 스타터에서 나온 것입니다. 실제로 커넥터를 삽입하는 정확하거나 대략적인 지점을 기록해 두는 것이 유용할 수 있습니다.

5분 동안 생각한 끝에 저는 쉽게 주석을 달 수 있는 간단하지만 성공적인 방법을 알아냈습니다.

script -c 'dmesg -w | cat' dmesg.txt

실행할 수 있습니다dmesg -w 또한 주석을 추가하기 위해 터미널에 직접 텍스트 줄을 입력할 수도 있습니다.^C, dmesg 정보 수집이 완료되면. ( dmesg -w | cat보다 짧은 dmesg -w --color=never.)

만약을 대비해, 가능성이 거의 없는 일이 있습니다. 이것이 효과가 있었던 적이 있습니까? 그렇다면 언제였는지 기억하시나요? 그렇다면 당시 사용하고 있던 배포판의 이전 버전을 설치해 보고, 작동한다면 커널 버전을 수집해 보세요!

또한... 아마도 이 말을 듣고 싶지 않을 수도 있지만 항상 그렇듯이 최신 커널 버전을 작동시키는 것만으로는 모든 문제가 마법처럼 해결되지 않을 것이라고 100% 확신할 수는 없습니다. :)

다행히도 이는 여러분이 두려워하는 것만큼 무섭지는 않습니다.https://cgit.freedesktop.org/drm-tip/이미 drm 트리 팁 패치가 포함된 Linux 커널의 완전한 복제품입니다. 내가 아는 한, 그냥 복제하고 빌드하면 됩니다.

...그렇지만, 많은 주의를 기울여 최신 커널 버전을 다운로드하고저것작업이 먼저 알려진 다음 트리 .config에 복사됩니다. drm-tip이 작업을 먼저 수행하지 않으면 모든 것이 중단될 수 있으므로 메인라인 커널을 빌드하고 부팅할 수 있는지 확인하는 것이 첫 번째 단속 온전성 검사가 될 수 있습니다.

필요한 Bugzilla 페이지는 다음과 같습니다.https://bugs.freedesktop.org/enter_bug.cgi?product=DRI

실제로 로그인 보기가 거의 확실하게 표시되며, 이 경우 먼저 다음 URL이 필요합니다.https://bugs.freedesktop.org/createaccount.cgi

마지막으로 질문을 드리고자 한다면,https://01.org/linuxgraphics/community/kernelfreenode에서 #gfx-intel을 언급했습니다.

FWIW, 위에서 설명한 내용은 이상적인 단계 집합입니다. 커널 재구축을 진행하기 전에 freedesktop.org에서 임시 버그를 열어 시도할 수 있는 다른 디버깅 단계가 없는지 확인할 수 있습니다. (그러나 오류 항목 페이지에는 버전 섹션에 "drm git"만 나열되어 있으므로진짜git 버전을 사용하시길 바랍니다...하하)

실제로 IRC 채널에 좋은 질문이 있습니다. drm-tip문서에서 언급한 내용이기 때문에 git 저장소를 나열했지만 다른 drm-intel저장소가 있는데 그 관련성이 무엇인지 모르겠습니다. 또한 커널 트리처럼 보이며 몇 분마다 업데이트됩니다.

답변2

이는 해결책은 아니지만 가능한 해결 방법은 다음과 같습니다.

$ env DISPLAY=:0 xset dpms force off
$ env DISPLAY=:0 xset dpms force on

위의 방법은 다음과 같은 AU Q&A에서 나온 것입니다.DisplayPort 모니터를 껐다가 다시 켜면 감지할 수 없습니다.비슷한 문제에 대한 다른 해결책이 있습니다.

이 U&L Q&A의 질문은 다음과 같습니다.모니터가 연결되거나 연결 해제된 시기를 어떻게 감지합니까?여기서도 도움이 될 수 있는 폴링 방법이 있습니다.

관련 정보