Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions
nouveau_bios.h File Reference
#include "nvreg.h"
#include <subdev/bios/dcb.h>
#include <subdev/bios/conn.h>

Go to the source code of this file.

Data Structures

struct  bit_entry
 
struct  dcb_table
 
struct  nvbios
 

Macros

#define DCB_MAX_NUM_ENTRIES   16
 
#define DCB_MAX_NUM_I2C_ENTRIES   16
 
#define DCB_MAX_NUM_GPIO_ENTRIES   32
 
#define DCB_MAX_NUM_CONNECTOR_ENTRIES   16
 
#define DCB_LOC_ON_CHIP   0
 
#define ROM16(x)   le16_to_cpu(*(u16 *)&(x))
 
#define ROM32(x)   le32_to_cpu(*(u32 *)&(x))
 
#define ROM48(x)   ({ u8 *p = &(x); (u64)ROM16(p[4]) << 32 | ROM32(p[0]); })
 
#define ROM64(x)   le64_to_cpu(*(u64 *)&(x))
 
#define ROMPTR(d, x)
 

Enumerations

enum  nouveau_or { DCB_OUTPUT_A = (1 << 0), DCB_OUTPUT_B = (1 << 1), DCB_OUTPUT_C = (1 << 2) }
 
enum  LVDS_script {
  LVDS_INIT = 1, LVDS_RESET, LVDS_BACKLIGHT_ON, LVDS_BACKLIGHT_OFF,
  LVDS_PANEL_ON, LVDS_PANEL_OFF
}
 

Functions

int bit_table (struct drm_device *, u8 id, struct bit_entry *)
 
voidolddcb_table (struct drm_device *)
 
voidolddcb_outp (struct drm_device *, u8 idx)
 
int olddcb_outp_foreach (struct drm_device *, void *data, int(*)(struct drm_device *, void *, int idx, u8 *outp))
 
u8olddcb_conntab (struct drm_device *)
 
u8olddcb_conn (struct drm_device *, u8 idx)
 
int nouveau_bios_init (struct drm_device *)
 
void nouveau_bios_takedown (struct drm_device *dev)
 
int nouveau_run_vbios_init (struct drm_device *)
 
struct dcb_connector_table_entry * nouveau_bios_connector_entry (struct drm_device *, int index)
 
int nouveau_bios_run_display_table (struct drm_device *, u16 id, int clk, struct dcb_output *, int crtc)
 
bool nouveau_bios_fp_mode (struct drm_device *, struct drm_display_mode *)
 
uint8_tnouveau_bios_embedded_edid (struct drm_device *)
 
int nouveau_bios_parse_lvds_table (struct drm_device *, int pxclk, bool *dl, bool *if_is_24bit)
 
int run_tmds_table (struct drm_device *, struct dcb_output *, int head, int pxclk)
 
int call_lvds_script (struct drm_device *, struct dcb_output *, int head, enum LVDS_script, int pxclk)
 
bool bios_encoder_match (struct dcb_output *, u32 hash)
 

Macro Definition Documentation

#define DCB_LOC_ON_CHIP   0

Definition at line 34 of file nouveau_bios.h.

#define DCB_MAX_NUM_CONNECTOR_ENTRIES   16

Definition at line 32 of file nouveau_bios.h.

#define DCB_MAX_NUM_ENTRIES   16

Definition at line 29 of file nouveau_bios.h.

#define DCB_MAX_NUM_GPIO_ENTRIES   32

Definition at line 31 of file nouveau_bios.h.

#define DCB_MAX_NUM_I2C_ENTRIES   16

Definition at line 30 of file nouveau_bios.h.

#define ROM16 (   x)    le16_to_cpu(*(u16 *)&(x))

Definition at line 36 of file nouveau_bios.h.

#define ROM32 (   x)    le32_to_cpu(*(u32 *)&(x))

Definition at line 37 of file nouveau_bios.h.

#define ROM48 (   x)    ({ u8 *p = &(x); (u64)ROM16(p[4]) << 32 | ROM32(p[0]); })

Definition at line 38 of file nouveau_bios.h.

#define ROM64 (   x)    le64_to_cpu(*(u64 *)&(x))

Definition at line 39 of file nouveau_bios.h.

#define ROMPTR (   d,
  x 
)
Value:
({ \
ROM16(x) ? &drm->vbios.data[ROM16(x)] : NULL; \
})

Definition at line 40 of file nouveau_bios.h.

Enumeration Type Documentation

Enumerator:
LVDS_INIT 
LVDS_RESET 
LVDS_BACKLIGHT_ON 
LVDS_BACKLIGHT_OFF 
LVDS_PANEL_ON 
LVDS_PANEL_OFF 

Definition at line 70 of file nouveau_bios.h.

enum nouveau_or
Enumerator:
DCB_OUTPUT_A 
DCB_OUTPUT_B 
DCB_OUTPUT_C 

Definition at line 64 of file nouveau_bios.h.

Function Documentation

bool bios_encoder_match ( struct dcb_output ,
u32  hash 
)

Definition at line 633 of file nouveau_bios.c.

int bit_table ( struct drm_device ,
u8  id,
struct bit_entry  
)

Definition at line 1248 of file nouveau_bios.c.

int call_lvds_script ( struct drm_device ,
struct dcb_output ,
int  head,
enum  LVDS_script,
int  pxclk 
)

Definition at line 211 of file nouveau_bios.c.

struct dcb_connector_table_entry* nouveau_bios_connector_entry ( struct drm_device ,
int  index 
)
read
uint8_t* nouveau_bios_embedded_edid ( struct drm_device )

Definition at line 2247 of file nouveau_bios.c.

bool nouveau_bios_fp_mode ( struct drm_device ,
struct drm_display_mode  
)

Definition at line 450 of file nouveau_bios.c.

int nouveau_bios_init ( struct drm_device )

Definition at line 2373 of file nouveau_bios.c.

int nouveau_bios_parse_lvds_table ( struct drm_device ,
int  pxclk,
bool dl,
bool if_is_24bit 
)

Definition at line 496 of file nouveau_bios.c.

int nouveau_bios_run_display_table ( struct drm_device ,
u16  id,
int  clk,
struct dcb_output ,
int  crtc 
)

Definition at line 656 of file nouveau_bios.c.

void nouveau_bios_takedown ( struct drm_device dev)

Definition at line 2422 of file nouveau_bios.c.

int nouveau_run_vbios_init ( struct drm_device )

Definition at line 2323 of file nouveau_bios.c.

u8* olddcb_conn ( struct drm_device ,
u8  idx 
)

Definition at line 1645 of file nouveau_bios.c.

u8* olddcb_conntab ( struct drm_device )

Definition at line 1633 of file nouveau_bios.c.

void* olddcb_outp ( struct drm_device ,
u8  idx 
)

Definition at line 1584 of file nouveau_bios.c.

int olddcb_outp_foreach ( struct drm_device ,
void data,
int(*)(struct drm_device *, void *, int idx, u8 *outp  
)

Definition at line 1608 of file nouveau_bios.c.

void* olddcb_table ( struct drm_device )

Definition at line 1530 of file nouveau_bios.c.

int run_tmds_table ( struct drm_device ,
struct dcb_output ,
int  head,
int  pxclk 
)

Definition at line 827 of file nouveau_bios.c.