Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/drivers/gpu/drm/nouveau/include/nvif/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 5 kB image not shown  

Quelle  if0012.h   Sprache: C

 
/* SPDX-License-Identifier: MIT */
#ifndef __NVIF_IF0012_H__
#define __NVIF_IF0012_H__

#include <drm/display/drm_dp.h>

union nvif_outp_args {
 struct nvif_outp_v0 {
  __u8 version;
  __u8 id; /* DCB device index. */
#define NVIF_OUTP_V0_TYPE_DAC  0x00
#define NVIF_OUTP_V0_TYPE_SOR  0x01
#define NVIF_OUTP_V0_TYPE_PIOR 0x02
  __u8 type;
#define NVIF_OUTP_V0_PROTO_RGB_CRT 0x00
#define NVIF_OUTP_V0_PROTO_TMDS    0x01
#define NVIF_OUTP_V0_PROTO_LVDS    0x02
#define NVIF_OUTP_V0_PROTO_DP      0x03
         __u8 proto;
         __u8 heads;
         __u8 ddc;
         __u8 conn;
  union {
   struct {
    __u32 freq_max;
   } rgb_crt;
   struct {
    __u8  dual;
   } tmds;
   struct {
    __u8  acpi_edid;
   } lvds;
   struct {
    __u8  aux;
    __u8  mst;
    __u8  increased_wm;
    __u8  link_nr;
    __u32 link_bw;
   } dp;
  };
 } v0;
};

#define NVIF_OUTP_V0_DETECT        0x00
#define NVIF_OUTP_V0_EDID_GET      0x01

#define NVIF_OUTP_V0_INHERIT       0x10
#define NVIF_OUTP_V0_ACQUIRE       0x11
#define NVIF_OUTP_V0_RELEASE       0x12

#define NVIF_OUTP_V0_LOAD_DETECT   0x20

#define NVIF_OUTP_V0_BL_GET        0x30
#define NVIF_OUTP_V0_BL_SET        0x31

#define NVIF_OUTP_V0_LVDS          0x40

#define NVIF_OUTP_V0_HDMI          0x50

#define NVIF_OUTP_V0_INFOFRAME     0x60
#define NVIF_OUTP_V0_HDA_ELD       0x61

#define NVIF_OUTP_V0_DP_AUX_PWR    0x70
#define NVIF_OUTP_V0_DP_AUX_XFER   0x71
#define NVIF_OUTP_V0_DP_RATES      0x72
#define NVIF_OUTP_V0_DP_TRAIN      0x73
#define NVIF_OUTP_V0_DP_DRIVE      0x74
#define NVIF_OUTP_V0_DP_SST        0x75
#define NVIF_OUTP_V0_DP_MST_ID_GET 0x76
#define NVIF_OUTP_V0_DP_MST_ID_PUT 0x77
#define NVIF_OUTP_V0_DP_MST_VCPI   0x78

union nvif_outp_detect_args {
 struct nvif_outp_detect_v0 {
  __u8 version;
#define NVIF_OUTP_DETECT_V0_NOT_PRESENT 0x00
#define NVIF_OUTP_DETECT_V0_PRESENT     0x01
#define NVIF_OUTP_DETECT_V0_UNKNOWN     0x02
  __u8 status;
 } v0;
};

union nvif_outp_edid_get_args {
 struct nvif_outp_edid_get_v0 {
  __u8  version;
  __u8  pad01;
  __u16 size;
  __u8  data[2048];
 } v0;
};

union nvif_outp_load_detect_args {
 struct nvif_outp_load_detect_v0 {
  __u8  version;
  __u8  load;
  __u8  pad02[2];
  __u32 data; /*TODO: move vbios loadval parsing into nvkm */
 } v0;
};

union nvif_outp_acquire_args {
 struct nvif_outp_acquire_v0 {
  __u8 version;
#define NVIF_OUTP_ACQUIRE_V0_DAC  0x00
#define NVIF_OUTP_ACQUIRE_V0_SOR  0x01
#define NVIF_OUTP_ACQUIRE_V0_PIOR 0x02
  __u8 type;
  __u8 or;
  __u8 link;
  __u8 pad04[4];
  union {
   struct {
    __u8 hda;
   } sor;
  };
 } v0;
};

union nvif_outp_inherit_args {
 struct nvif_outp_inherit_v0 {
  __u8 version;
#define NVIF_OUTP_INHERIT_V0_RGB_CRT 0x00
#define NVIF_OUTP_INHERIT_V0_TV      0x01
#define NVIF_OUTP_INHERIT_V0_TMDS    0x02
#define NVIF_OUTP_INHERIT_V0_LVDS    0x03
#define NVIF_OUTP_INHERIT_V0_DP      0x04
  // In/out. Input is one of the above values, output is the actual hw protocol
  __u8 proto;
  __u8 or;
  __u8 link;
  __u8 head;
  union {
   struct {
    // TODO: Figure out padding, and whether we even want this field
    __u8 hda;
   } tmds;
  };
 } v0;
};

union nvif_outp_release_args {
 struct nvif_outp_release_vn {
 } vn;
};

union nvif_outp_bl_get_args {
 struct nvif_outp_bl_get_v0 {
  __u8  version;
  __u8  level;
 } v0;
};

union nvif_outp_bl_set_args {
 struct nvif_outp_bl_set_v0 {
  __u8  version;
  __u8  level;
 } v0;
};

union nvif_outp_lvds_args {
 struct nvif_outp_lvds_v0 {
  __u8  version;
  __u8  dual;
  __u8  bpc8;
 } v0;
};

union nvif_outp_hdmi_args {
 struct nvif_outp_hdmi_v0 {
  __u8 version;
  __u8 head;
  __u8 enable;
  __u8 max_ac_packet;
  __u8 rekey;
  __u8 scdc;
  __u8 scdc_scrambling;
  __u8 scdc_low_rates;
  __u32 khz;
 } v0;
};

union nvif_outp_infoframe_args {
 struct nvif_outp_infoframe_v0 {
  __u8 version;
#define NVIF_OUTP_INFOFRAME_V0_AVI 0
#define NVIF_OUTP_INFOFRAME_V0_VSI 1
  __u8 type;
  __u8 head;
  __u8 pad03[5];
  __u8 data[];
 } v0;
};

union nvif_outp_hda_eld_args {
 struct nvif_outp_hda_eld_v0 {
  __u8  version;
  __u8  head;
  __u8  pad02[6];
  __u8  data[];
 } v0;
};

union nvif_outp_dp_aux_pwr_args {
 struct nvif_outp_dp_aux_pwr_v0 {
  __u8 version;
  __u8 state;
  __u8 pad02[6];
 } v0;
};

union nvif_outp_dp_aux_xfer_args {
 struct nvif_outp_dp_aux_xfer_v0 {
  __u8  version;
  __u8  pad01;
  __u8  type;
  __u8  size;
  __u32 addr;
  __u8  data[16];
 } v0;
};

union nvif_outp_dp_rates_args {
 struct nvif_outp_dp_rates_v0 {
  __u8  version;
  __u8  pad01[6];
  __u8  rates;
  struct {
   __s8  dpcd;
   __u32 rate;
  } rate[8];
 } v0;
};

union nvif_outp_dp_train_args {
 struct nvif_outp_dp_train_v0 {
  __u8  version;
  __u8  retrain;
  __u8  mst;
  __u8  lttprs;
  __u8  post_lt_adj;
  __u8  link_nr;
  __u32 link_bw;
  __u8 dpcd[DP_RECEIVER_CAP_SIZE];
 } v0;
};

union nvif_outp_dp_drive_args {
 struct nvif_outp_dp_drive_v0 {
  __u8  version;
  __u8  pad01[2];
  __u8  lanes;
  __u8  pe[4];
  __u8  vs[4];
 } v0;
};

union nvif_outp_dp_sst_args {
 struct nvif_outp_dp_sst_v0 {
  __u8  version;
  __u8  head;
  __u8  pad02[2];
  __u32 watermark;
  __u32 hblanksym;
  __u32 vblanksym;
 } v0;
};

union nvif_outp_dp_mst_id_put_args {
 struct nvif_outp_dp_mst_id_put_v0 {
  __u8  version;
  __u8  pad01[3];
  __u32 id;
 } v0;
};

union nvif_outp_dp_mst_id_get_args {
 struct nvif_outp_dp_mst_id_get_v0 {
  __u8  version;
  __u8  pad01[3];
  __u32 id;
 } v0;
};

union nvif_outp_dp_mst_vcpi_args {
 struct nvif_outp_dp_mst_vcpi_v0 {
  __u8  version;
  __u8  head;
  __u8  start_slot;
  __u8  num_slots;
  __u16 pbn;
  __u16 aligned_pbn;
 } v0;
};
#endif

Messung V0.5
C=98 H=96 G=96

¤ Dauer der Verarbeitung: 0.3 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.