grazie per questo thread - mi ha aiutato a risolvere il mio problema.
Mi sono imbattuto in un monitor "misc cinese industriale" con ingresso DP, che si è comportato in questo modo - e, in base alle informazioni disponibili, è colpa del monitor.
Nonostante le intenzioni originali alla base di DP (un singolo hop elettrico dal ponte sud al driver della matrice di visualizzazione), il monitor contiene una "scheda AD", dandogli la possibilità di selezionare tra più ingressi video (VGA, HDMI, DP ). È la "scheda AD" all'interno del monitor che guida il segnale HPD - e non è un semplice pull-up.
Sulla base delle informazioni limitate disponibili, l'HPD è normalmente solo un'indicazione basata sul livello statico (attivo alto), dal video sink alla sorgente video (da monitor a PC), che un video sink è collegato, in un particolare Display Presa di porta sulla sorgente video. Inoltre, presumibilmente può essere utilizzato dal monitor per "agganciare" il segnale HPD = per inviare un impulso di interrupt al PC, che è l'unico modo in cui il monitor deve chiedere al PC una "transazione bus AUX" (il protocollo AUX è apparentemente richiesta-risposta, master-slave, dove il PC è il master). Sulla base della mia esperienza pratica, dubito di quanta utilità abbia questa capacità di "interruzione" - forse non è essenziale.
Nel mio caso, dopo l'accensione a freddo (del display), il PC sembra risvegliare il display bene, ma quando il PC entra in S3 sleep (sospendi su RAM), qualcosa accade nel display, e non lo fa t si riattiva dopo che il PC si è riattivato. Più precisamente, dopo il risveglio da S3, il PC non rileva un display collegato alla presa DP. Perché: apparentemente perché il display non riesce a tirare il filo HPD in alto. È interessante notare che, se si spegne e riaccende il monitor mentre il PC è in modalità sleep, lo schermo si riattiva dopo che il PC si è riattivato dallo stato di sospensione S3. Inoltre, il problema non si verifica se il PC è configurato solo per spegnere il display per risparmiare energia (o retroilluminazione dello schermo) ma la CPU e il sistema operativo rimangono attivi e in esecuzione. Quindi potrebbe essere qualcosa come una "buona notte" che il PC dice al monitor tramite il carico utile AUX o DP durante la sequenza "PC andando a dormire S3", e il monitor risponde andando a dormire per sempre.
È interessante notare che, nel mio monitor colpevole, il segnale HPD è inattivo dopo un ciclo di spegnimento del monitor, con un aspetto pressoché identico a quello che è dopo che il PC host ha perso S3. Ma in qualche modo, il PC riattiva il diplay dopo l'accensione a freddo e l'HPD è in alto. Dopo un risveglio da S3 (non preceduto da un ciclo di accensione del monitor), l'HPD rimane basso. Come se fosse in corso un ulteriore handshaking - non sono sicuro se nel payload, il canale AUX o il segnale HPD stesso (non sono stati controllati con un "scope"). Ad ogni modo, sospetto qualche errore del firmware nel chip del controller della scheda AD del monitor.
Ho notato la parola chiave ULPS in questo dibattito e altrove, in genere nel contesto della grafica AMD. La mia scheda grafica è un Intel IGP (3rd gen = Ivy Bridge in questo caso). Una nota rara o due su ULPS nel contesto della grafica Intel può essere trovata in alcuni documenti hardware aperti, destinati a scrittori di driver open-source. Non serve molto in un ambiente Windows. Inoltre, le utility di configurazione dei driver IGP di intel erano più decenti di quanto non lo siano ora - specialmente l'IEGD era un eccellente pacchetto di driver modificabili, ma ora dobbiamo convivere con ciò che è disponibile. Ho provato a prolungare il DelayedDetectionForDP nel registro, che non ha avuto alcun effetto. E, nel config util e nelle proprietà del driver VGA, non c'è modo di "forzare la porta". (Né esiste un'opzione per disabilitare la dipendenza su DDC, ma la disponibilità di DDC / EDID sembra essere un problema separato, diverso dall'ingresso HPD o dalla misurazione dell'impedenza di carico VGA.)
In definitiva, ho fatto ricorso alla saldatura sulla scheda AD (all'interno del monitor). Per farla breve, fortunatamente c'era una traccia di PCB pulita che andava dal pin 18 sul retro della presa DP. Ho trovato una resistenza da 10 Ohm in serie con l'uscita gate che guida il segnale HPD, quindi l'ho rimosso. E ho collegato un pull-up da 1k a un condensatore vicino (MLCC) bloccando il rail di tensione standby + 3,3V. Ora la linea HPD è sempre tirata in alto, a condizione che il display sia collegato al muro. Apparentemente la possibilità teorica delle interruzioni da monitor a PC non è necessaria per il corretto funzionamento del monitor. Allego una foto solo per illustrazione. No, non ho intenzione di menzionare il monitor o i produttori di schede AD. Una parola di cautela: non si può semplicemente accorciare la traccia HPD a + 3,3 V e farla con essa - nel mio caso, l'uscita gate (driver di linea HPD) misurata come 30 Ohms contro GND quando è bassa. Un corto a + 3,3 V farebbe saltare qualcosa (si sarebbe fortunati a friggere solo l'uscita del gate). Questo tipo di hack prende alcune precauzioni e "sa come" che appartengono a electronics.stackexchange.com. Per non parlare di alcuni strumenti di base: una penna saldante, un multimetro con sonde affilate e una forte lente d'ingrandimento. (E qualcosa per dissaldare in modo pulito il resistore di dimensioni seme di papavero ... alcuni userebbero un flusso sottile di aria calda, potrei preferire una pistola per saldatura vintage con un'asola a doppia punta personalizzata fatta di filo AWG24.)