RaspberryPi-LOGO

RaspberryPi KMS HDMI Sorti Graphics Driver

RaspberryPi-KMS-HDMI-Sòti-Grafik-Driver-PRODACT-IMG

Kolofon

2020-2023 Raspberry Pi Ltd (ansyen Raspberry Pi (Trading) Ltd.) Dokiman sa a gen lisans anba yon lisans Creative Commons Attribution-NoDerivatives 4.0 International (CC BY-ND 4.0). dat konstriksyon: 2023-02-10 vèsyon konstriksyon: githash: c65fe9c-clean

Avi Legal Limit responsabilite nou

RASPBERRY PI LTD ("RPL") "KÒMAN SE" AK NENPÒT GARANTI EXPRESS OSWA ENPLIKITE, KI ENKLI, MEN SE PA LIMITE, DONE TEKNIK AK FIABILITE POU PWODWI RASPBERRY PI (ENKLI FICH DONNÈ) KÒM MODIFIE DE TAN AN TAN ("RESOURS"). POU, YO REJTE GARANTI ENPLIKITE AK APTITE POU YON OBJEKTIF PARTICULIER. NAN OKENN KÒSMAN LWA AK APPLIKASÈ YO OMETRÈ A, RPL PAP RESPONSYON POU NENPÒT DOMASYON DIRÈK, ENDRÈK, AK ENSIDAN, ESPESYAL, EGZANPLÈ, OSWA PWOFÈ (KENKLI, MEN PA LIMIMITE A, ACHTE DE BYEN SUBSTITUTION, PÈD DÒ; , OSWA PWOFI; OSWA ENTÈRIPYON BIZNIS) KELALTAN KOZE AK SOU NENPÒT TEORI RESPONSABILITE, KIT NAN KONTRA, RESPONSABILITE STRICT, OSWA ÒL (KENKLI NEGLIJANS OSWA OTREMAN) KÈL REVITE NAN NENPÒT FÒM KI SOTI DE ITILIZE RESOUSS YO A, MENM MENM KONSANSYON. DE DOmaj konsa. RPL rezève dwa pou fè nenpòt amelyorasyon, amelyorasyon, koreksyon oswa nenpòt lòt modifikasyon nan RESOUS yo oswa nenpòt pwodwi ki dekri nan yo nenpòt ki lè epi san lòt avi. RESOUS yo fèt pou itilizatè kalifye ki gen nivo apwopriye nan konesans konsepsyon. Itilizatè yo se sèlman responsab pou seleksyon yo ak itilizasyon RESOUS yo ak nenpòt aplikasyon nan pwodwi yo dekri nan yo. Itilizatè a dakò pou dedomaje ak kenbe RPL san danje kont tout responsablite, depans, domaj oswa lòt pèt ki rive nan itilizasyon yo nan RESOURCES yo. RPL akòde itilizatè yo pèmisyon pou yo itilize RESOUS yo sèlman an konjonksyon avèk pwodwi Franbwaz Pi yo. Tout lòt itilizasyon RESOUS yo entèdi. Yo pa bay okenn lisans lòt RPL oswa lòt dwa pwopriyete entelektyèl twazyèm pati. AKTIVITE GWO RISK. Raspberry Pi pwodwi yo pa fèt, fabrike oswa gen entansyon pou itilize nan anviwònman danjere ki mande pèfòmans echèk san danje, tankou nan operasyon an nan enstalasyon nikleyè, navigasyon avyon oswa sistèm kominikasyon, kontwòl trafik lè, sistèm zam oswa aplikasyon pou sekirite-kritik (ki gen ladan sipò lavi. sistèm ak lòt aparèy medikal), kote echèk pwodwi yo ka mennen dirèkteman nan lanmò, blesi pèsonèl oswa gwo domaj fizik oswa anviwònman an ("Aktivite ki gen gwo risk"). RPL espesyalman refize nenpòt garanti eksprime oswa enplisit sou kondisyon fizik pou Aktivite ki gen gwo risk epi li pa aksepte okenn responsablite pou itilize oswa enklizyon nan pwodwi Franbwaz Pi nan Aktivite ki gen gwo risk. Pwodwi Franbwaz Pi yo bay sijè a Regleman Creole RPL a. Dispozisyon RPL yo nan RESOUS yo pa elaji oswa otreman modifye Kondisyon Estanda RPL yo ki gen ladan men pa limite a eksklizyon ak garanti yo eksprime nan yo.

Istwa vèsyon dokiman an

RaspberryPi-KMS-HDMI-Sòti-Grafik-Driver-FIG-1

Dimansyon dokiman an

Dokiman sa a aplike a pwodwi Franbwaz Pi sa yo

RaspberryPi-KMS-HDMI-Sòti-Grafik-Driver-FIG-2

Entwodiksyon

Avèk entwodiksyon chofè grafik KMS (Kernel Mode Setting), Raspberry Pi Ltd ap deplase lwen kontwòl firmwèr eritaj nan sistèm pwodiksyon videyo a ak nan direksyon pou yon sistèm grafik sous ki pi louvri. Sepandan, sa a te vini ak pwòp seri defi li yo. Dokiman sa a gen entansyon ede ak nenpòt pwoblèm ki ta ka parèt lè w ap deplase nan nouvo sistèm nan. Whitepaper sa a sipoze ke Franbwaz Pi ap kouri Raspberry Pi OS, epi li konplètman ajou ak dènye firmwèr ak nwayo yo.

Tèminoloji

DRM: Direct Rendering Manager, yon sous-sistèm nwayo Linux yo itilize pou kominike avèk inite pwosesis grafik (GPU). Itilize an patenarya ak FKMS ak KMS.
DVI: Yon predesesè HDMI, men san kapasite odyo yo. Câbles HDMI pou DVI ak adaptè yo disponib pou konekte yon aparèy Raspberry Pi ak yon ekspozisyon DVI ki ekipe.
EDID: Done idantifikasyon ekspozisyon pwolonje. Yon fòma metadata pou aparèy ekspozisyon pou dekri kapasite yo nan yon sous videyo. Estrikti done EDID a gen ladan non manifakti ak nimewo seri, kalite pwodwi, gwosè ekspozisyon fizik, ak tan yo sipòte pa ekspozisyon an, ansanm ak kèk done mwens itil. Gen kèk ekspozisyon ki ka gen blòk EDID ki defektye, ki ka lakòz pwoblèm si defo sa yo pa okipe pa sistèm ekspozisyon an.
FKMS (vc4-fkms-v3d): Anviwònman fo mòd nwayo. Pandan ke firmwèr la toujou kontwole pyès ki nan konpitè ba-nivo (pa egzanpample, segondè-definisyon miltimedya entèfas (HDMI) pò yo, ekspozisyon seri entèfas (DSI), elatriye), estanda Linux bibliyotèk yo te itilize nan du tèt li. FKMS yo itilize pa default nan Buster, men kounye a depreche an favè KMS nan Bullseye.
HDMI: High-Definition Multimedia Interface se yon koòdone odyo / videyo propriétaires pou transmèt done videyo san konprese, ak konprese oswa dekonprese done odyo dijital.
HPD: Hotplug detekte. Yon fil fizik ki afime pa yon aparèy ekspozisyon konekte pou montre li prezan.
KMS: Anviwònman mòd Kernel; wè https://www.kernel.org/doc/html/latest/gpu/drm-kms.html pou plis detay. Sou Franbwaz Pi, vc4-kms-v3d se yon chofè ki aplike KMS, epi li souvan refere yo kòm "chofè KMS la". Pile grafik eritaj: Yon pil grafik konplètman aplike nan blob firmwèr VideoCore ekspoze pa yon chofè framebuffer Linux. Pile grafik eritaj la te itilize nan majorite nan aparèy Raspberry Pi Ltd jiska dènyèman; kounye a li piti piti ranplase pa (F)KMS/DRM.

Sistèm HDMI ak chofè grafik yo

Aparèy Franbwaz Pi sèvi ak estanda HDMI a, ki trè komen sou monitè LCD modèn ak televizyon, pou pwodiksyon videyo. Franbwaz Pi 3 (ki gen ladan Franbwaz Pi 3B +) ak aparèy pi bonè yo gen yon sèl pò HDMI, ki kapab pwodiksyon 1920 × 1200 @ 60Hz lè l sèvi avèk yon konektè HDMI gwosè konplè. Franbwaz Pi 4 gen de pò mikwo HDMI, epi li kapab pwodiksyon 4K sou tou de pò yo. Tou depan de konfigirasyon, pò HDMI 0 sou Franbwaz Pi 4 kapab jiska 4kp60, men lè w ap itilize de aparèy pwodiksyon 4K ou limite a p30 sou tou de aparèy. Pile lojisyèl grafik la, kèlkeswa vèsyon an, responsab pou entèwogasyon aparèy HDMI tache pou pwopriyete yo, epi mete sistèm HDMI a kòmsadwa. Legacy ak pil FKMS tou de itilize firmwèr nan processeur grafik VideoCore pou tcheke prezans HDMI ak pwopriyete. Kontrèman, KMS sèvi ak yon sous totalman louvri, aplikasyon ARM-bò. Sa vle di baz kòd pou de sistèm yo totalman diferan, e nan kèk sikonstans sa ka lakòz yon konpòtman diferan ant de apwòch yo. Aparèy HDMI ak DVI idantifye tèt yo nan aparèy sous la lè l sèvi avèk yon moso metadata yo rele yon blòk EDID. Sa a se li pa aparèy sous la soti nan aparèy la ekspozisyon atravè yon koneksyon I2C, epi sa a se totalman transparan nan itilizatè a fen kòm li se fè pa pile a grafik. Blòk EDID a gen anpil enfòmasyon, men li se sitou itilize pou presize ki rezolisyon ekspozisyon an sipòte, kidonk Franbwaz Pi ka mete kanpe pou bay yon rezolisyon apwopriye.

Ki jan HDMI trete pandan demaraj la

Lè premye limen, Franbwaz Pi ale nan yon kantite stages, ke yo rekonèt kòm bòt stages:

  1. Premye-stage, bootloader ki baze sou ROM kòmanse moute VideoCore GPU la.
  2. Dezyèm-stage bootloader (sa a se bootcode.bin sou kat SD la sou aparèy anvan Raspberry Pi 4, ak nan SPI EEPROM sou Franbwaz Pi 4):
    1. Sou Franbwaz Pi 4, dezyèm-s latage bootloader pral kòmanse sistèm HDMI a, entèwoje ekspozisyon an pou mòd posib, Lè sa a, mete ekspozisyon an kòmsadwa. Nan pwen sa a, yo itilize ekspozisyon an pou bay done dyagnostik debaz yo.
    2. Ekspozisyon dyagnostik bootloader la (07 desanm 2022 ivè) pral montre estati nenpòt ekspozisyon ki tache (si Hotplug Detect (HPD) prezan, epi si yo te refè yon blòk EDID nan ekspozisyon an).
  3. VideoCore firmwèr (start.elf) chaje epi kouri. Sa a pral pran kontwòl sistèm HDMI a, li blòk EDID nan nenpòt ekspozisyon ki tache, epi montre ekran lakansyèl la sou ekspozisyon sa yo.
  4. Bòt nwayo Linux yo
    1. Pandan bòt nwayo a, KMS pral pran kontwòl sistèm HDMI a soti nan firmwèr la. Yon fwa ankò yo li blòk EDID la nan nenpòt ki ekspozisyon tache, epi yo itilize enfòmasyon sa a pou mete kanpe konsole Linux ak Desktop.

Pwoblèm posib ak sentòm yo

Sentòm echèk ki pi komen yo te fè eksperyans lè w ap deplase nan KMS se yon bòt okòmansman bon, ak ekran bootloader la ak Lè sa a, ekran lakansyèl la parèt, ki te swiv apre kèk segonn pa ekspozisyon an vin nwa epi li pa tounen sou. Pwen kote ekspozisyon an vin nwa se an reyalite pwen pandan pwosesis demaraj nwayo a lè chofè KMS la pran kontwòl ekspozisyon an nan firmwèr la. Franbwaz Pi a kounye a ap kouri nan tout respè eksepte pou pwodiksyon an HDMI, kidonk si SSH pèmèt Lè sa a, ou ta dwe kapab konekte nan aparèy la pa wout sa a. Ki ap dirije vèt aksè kat SD la anjeneral tranbleman detanzantan. Li posib tou ke ou pral wè pa gen okenn pwodiksyon HDMI nan tout; pa gen okenn ekspozisyon bootloader, epi pa gen okenn ekran lakansyèl. Sa a ka anjeneral dwe atribiye a yon fay pyès ki nan konpitè.

Dyagnostik fay la

Pa gen pwodiksyon HDMI ditou
Li posib ke aparèy la pa demare ditou, men sa a se andeyò mandat papye blan sa a. Sipoze ke konpòtman an obsève se yon pwoblèm ekspozisyon, mank de pwodiksyon HDMI pandan nenpòt ki pati nan pwosesis la demaraj anjeneral akòz yon fay pyès ki nan konpitè. Gen yon kantite opsyon posib:

  • Kab HDMI ki defektye
  • Eseye yon nouvo kab. Gen kèk câbles, sitou sa ki trè bon mache, ka pa genyen tout liy kominikasyon ki nesesè yo (egzanp hotplug) pou Franbwaz Pi detekte avèk siksè ekspozisyon an.
  • Pò HDMI ki defektye sou Franbwaz Pi
  • Si w ap itilize yon Franbwaz Pi 4, eseye lòt pò HDMI.
  • Pò HDMI ki defektye sou monitè a
  • Pafwa pò HDMI sou yon monitè oswa televizyon ka mete deyò. Eseye yon pò diferan si aparèy la gen youn.
  • Raman, yon aparèy ekspozisyon ka sèlman bay done EDID lè yo limen, oswa lè yo chwazi pò ki kòrèk la. Pou tcheke, asire w ke aparèy la limen epi yo chwazi pò D 'ak kòrèk la.
  • Aparèy ekspozisyon pa revandike liy detekte hotplug la

Premye pwodiksyon, Lè sa a, ekran ale nwa
Si ekspozisyon an parèt, men li disparèt pandan demaraj nwayo Linux, gen yon kantite kòz posib, e sa yo anjeneral ki gen rapò ak yon pwoblèm pou li EDID nan aparèy ekspozisyon an. Kòm ou ka wè nan seksyon ki anwo a fè fas ak sekans bòt la, EDID la li nan yon kantite pwen diferan pandan pwosesis bòt la, epi chak nan li sa yo fèt pa yon moso diferan nan lojisyèl. Lekti final la, lè KMS pran sou, se pa chanje kòd nwayo Linux en, epi sa a pa okipe fòma EDID ki defektye ansanm ak lojisyèl firmwèr ki pi bonè. Se poutèt sa ekspozisyon an ka sispann travay kòrèkteman yon fwa KMS pran sou. Gen plizyè fason pou konfime si KMS pa li EDID a, e de nan sa yo se jan sa a.
Tcheke ekran dyagnostik bootloader la (Raspberry Pi 4 sèlman)

REMAK
Dyagnostik Bootloader mande pou yon bootloader resan. Ou ka ajou ak dènye vèsyon an lè l sèvi avèk enstriksyon sa yo: https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#updating-the-bootloader Retire kat SD la epi rdemare Franbwaz Pi a. Peze ESC sou ekran Enstale OS, ak ekran dyagnostik la ta dwe parèt sou aparèy ekspozisyon an. Ta dwe gen yon liy sou ekspozisyon an ki kòmanse ak ekspozisyon: — pou egzanpample:

  • ekspozisyon: DISP0: HDMI HPD=1 EDID=ok #2 DISP1: HPD=0 EDID=okenn #0

Pwodiksyon sa a soti nan yon Franbwaz Pi 4 montre ke sistèm lan detekte yon ekspozisyon HDMI sou pò HDMI 0, detekte hotplug la afime, epi EDID la te li OK. Pa gen anyen yo te jwenn sou pò HDMI 1.

Tcheke si sistèm KMS la te detekte yon EDID
Pou tcheke sa a ou pral bezwen konekte nan aparèy la Franbwaz Pi sou SSH soti nan yon òdinatè diferan. SSH ka aktive lè w ap kreye yon imaj kat SD ak Raspberry Pi Imager, lè l sèvi avèk opsyon Anviwònman Avanse yo. Aktive SSH sou yon kat SD ki deja imajine se yon ti kras pi konplike: w ap bezwen sèvi ak yon lòt òdinatè pou ajoute yon file yo te rele ssh nan patisyon bòt la. Ranplase kat SD la nan Raspberry Pi orijinal la epi mete li sou pouvwa. Sa a ta dwe pèmèt SSH, ak yon adrès IP atribye ba pa DHCP. Yon fwa ou konekte, tape sa ki annapre yo nan èd memwa tèminal la pou montre sa ki nan nenpòt EDID detekte (ou ka bezwen chanje HDMI-A-1 an HDMI-A-2 selon ki pò HDMI sou Raspberry Pi a aparèy ekspozisyon an konekte. to): cat /sys/class/drm/card?-HDMI-A-1/edid Si pa gen okenn dosye ki rele kat?-HDMI-A-1 oswa menm jan an, lè sa a gen anpil chans pou pa gen okenn EDID ka li nan ekspozisyon an. aparèy.

REMAK
Nan ka kote EDID la li avèk siksè, gen yon vityèl itil file nan katab la menm, yo rele mòd, ki lè parèt montre tout mòd posib EDID a reklamasyon aparèy la sipòte.

Atenyasyon

Hotplug detekte echèk Si tou de firmwèr la ak KMS pa jwenn yon monitè ki tache, li ta ka yon echèk deteksyon hotplug - sa vle di, Franbwaz Pi a pa konnen yon aparèy te ploge nan, kidonk li pa tcheke pou yon EDID. Sa a ta ka koze pa yon kab move, oswa yon aparèy ekspozisyon ki pa afime hotplug kòrèkteman. Ou ka fòse yon hotplug detekte lè w chanje liy lòd nwayo a file (cmdline.txt) ki estoke nan patisyon bòt yon kat SD Franbwaz Pi OS. Ou ka edite sa a file sou yon lòt sistèm, lè l sèvi avèk nenpòt editè ou prefere. Ajoute sa ki annapre yo nan fen cmdline.txt la file: videyo=HDMI-A-1:1280×720@60D Si w ap itilize dezyèm pò HDMI, ranplase HDMI-A-1 ak HDMI-A-2. Ou kapab tou presize yon rezolisyon diferan ak pousantaj ankadreman, men asire w ke ou chwazi sa yo ke aparèy la ekspozisyon sipòte.

REMAK
Ou ka jwenn dokimantasyon sou anviwònman liy kòmand nwayo pou videyo isit la: https://www.kernel.org/doc/Documentation/fb/modedb.txt

AVÈTISMAN
Pile grafik ki pi gran yo sipòte itilizasyon yon antre config.txt pou mete hotplug detekte, men nan moman sa a ekri sa a pa travay ak KMS. Li ka sipòte nan degaje firmwèr nan lavni. Antre config.txt la se hdmi_force_hotplug, epi ou ka presize pò HDMI espesifik ke hotplug la aplike pou lè l sèvi avèk swa hdmi_force_hotplug:0=1 oswa hdmi_force_hotplug:1=1. Remake byen ke nomanklatur pou KMS refere a pò HDMI yo kòm 1 ak 2, pandan y ap Franbwaz Pi sèvi ak 0 ak 1.

Pwoblèm EDID
Yon minorite nan aparèy ekspozisyon yo pa kapab retounen yon EDID si yo etenn, oswa lè yo chwazi move opinyon AV. Sa a ka yon pwoblèm lè Franbwaz Pi a ak aparèy ekspozisyon yo sou menm teren pouvwa a, ak aparèy Franbwaz Pi a bòt pi vit pase ekspozisyon an. Avèk aparèy tankou sa a, ou ka bezwen bay yon EDID manyèlman. Menm plis etranj, kèk aparèy ekspozisyon gen blòk EDID ki mal fòma epi yo pa ka analize pa sistèm KMS EDID la. Nan sikonstans sa yo, li ka posib pou li yon EDID nan yon aparèy ak rezolisyon menm jan an epi sèvi ak sa. Nan nenpòt ka, enstriksyon sa yo montre kijan pou li yon EDID ki soti nan yon aparèy ekspozisyon ak konfigirasyon KMS pou itilize li, olye ke KMS ap eseye entèwoje aparèy la dirèkteman.

Kopi yon EDID nan yon file
Kreye yon file ki gen metadata EDID nan grafouyen pa anjeneral posib, epi sèvi ak yon sèl ki deja egziste se pi fasil. Anjeneral, li posib pou jwenn yon EDID nan yon aparèy ekspozisyon epi estoke li sou kat SD Raspberry Pi a pou li ka itilize pa KMS olye pou yo jwenn yon EDID nan aparèy ekspozisyon an. Opsyon ki pi fasil isit la se asire ke aparèy ekspozisyon an kanpe ak fonksyone ak sou opinyon AV kòrèk la, e ke Franbwaz Pi a te kòmanse moute sistèm HDMI kòrèkteman. Soti nan tèminal la, ou ka kounye a kopye EDID a nan yon file ak lòd sa a: sudo cp /sys/class/drm/card?-HDMI-A-1/edid /lib/firmware/myedid.dat Si pou kèk rezon EDID a pa prezan, ou ka demaraj aparèy la nan yon non. -KMS mòd ki reyisi nan demaraj sou Desktop la oswa konsole, Lè sa a, kopye EDID a ke firmwèr la pral (espere ke) avèk siksè li nan yon file.

  1. Bòt nan mòd grafik eritaj.
    1. Edite config.txt nan patisyon bòt la, asire w ke ou kouri editè ou a lè l sèvi avèk sudo, epi chanje liy ki di dtoverlay=vc4-kms-v3d an #dtoverlay=vc4-kms-v3d.
    2. Rdemare.
  2. Desktop la oswa konsole koneksyon an ta dwe kounye a parèt.
    1. Sèvi ak tèminal la, kopye EDID ki soti nan aparèy ekspozisyon ki tache a nan a file ak lòd sa a:
  • tvservice -d myedid.dat sudo mv myedid.dat /lib/firmware/

Sèvi ak yon file-based EDID olye pou yo entèwoje aparèy ekspozisyon an Edit /boot/cmdline.txt, asire w ke ou kouri editè ou a lè l sèvi avèk sudo, epi ajoute sa ki annapre yo nan liy kòmand nwayo a: drm.edid_firmware=myedid.dat Ou ka aplike EDID a nan yon espesifik pò HDMI jan sa a: drm.edid_firmware=HDMI-A-1:myedid.dat Si sa nesesè, rekòmanse nan mòd KMS pa fè bagay sa yo:

  1. Edite config.txt nan patisyon bòt, asire w ke ou kouri editè ou a lè l sèvi avèk sudo, epi chanje liy ki di #dtoverlay=vc4-kms-v3d an dtoverlay=vc4-kms-v3d.
  2. Rdemare.

REMAK
Si w itilize yon file-based EDID, men toujou gen pwoblèm ak hotplug, ou ka fòse hotplug deteksyon lè w ajoute sa ki annapre yo nan liy lòd nwayo a: videyo = HDMI-A-1:D.

Dokiman / Resous

RaspberryPi KMS HDMI Sorti Graphics Driver [pdfManyèl Itilizatè
KMS, Pilote Grafik Sorti HDMI, Sorti KMS HDMI, Chofè Grafik, Chofè KMS HDMI Sorti Grafik, Chofè

Referans

Kite yon kòmantè

Adrès imel ou p ap pibliye. Jaden obligatwa yo make *