| /kernel/linux/linux-6.6/drivers/gpu/drm/nouveau/nvkm/subdev/bios/ |
| D | base.c | 26 #include <subdev/bios.h> 27 #include <subdev/bios/bmp.h> 28 #include <subdev/bios/bit.h> 29 #include <subdev/bios/image.h> 32 nvbios_addr(struct nvkm_bios *bios, u32 *addr, u8 size) in nvbios_addr() argument 36 if (*addr >= bios->image0_size && bios->imaged_addr) { in nvbios_addr() 37 *addr -= bios->image0_size; in nvbios_addr() 38 *addr += bios->imaged_addr; in nvbios_addr() 41 if (unlikely(*addr + size > bios->size)) { in nvbios_addr() 42 nvkm_error(&bios->subdev, "OOB %d %08x %08x\n", size, p, *addr); in nvbios_addr() [all …]
|
| D | rammap.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/bit.h> 26 #include <subdev/bios/rammap.h> 29 nvbios_rammapTe(struct nvkm_bios *bios, u8 *ver, u8 *hdr, in nvbios_rammapTe() argument 35 if (!bit_entry(bios, 'P', &bit_P)) { in nvbios_rammapTe() 37 rammap = nvbios_rd32(bios, bit_P.offset + 4); in nvbios_rammapTe() 40 *ver = nvbios_rd08(bios, rammap + 0); in nvbios_rammapTe() 44 *hdr = nvbios_rd08(bios, rammap + 1); in nvbios_rammapTe() 45 *cnt = nvbios_rd08(bios, rammap + 5); in nvbios_rammapTe() 46 *len = nvbios_rd08(bios, rammap + 2); in nvbios_rammapTe() [all …]
|
| D | Kbuild | 2 nvkm-y += nvkm/subdev/bios/base.o 3 nvkm-y += nvkm/subdev/bios/bit.o 4 nvkm-y += nvkm/subdev/bios/boost.o 5 nvkm-y += nvkm/subdev/bios/conn.o 6 nvkm-y += nvkm/subdev/bios/cstep.o 7 nvkm-y += nvkm/subdev/bios/dcb.o 8 nvkm-y += nvkm/subdev/bios/disp.o 9 nvkm-y += nvkm/subdev/bios/dp.o 10 nvkm-y += nvkm/subdev/bios/extdev.o 11 nvkm-y += nvkm/subdev/bios/fan.o [all …]
|
| D | pll.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/bit.h> 26 #include <subdev/bios/bmp.h> 27 #include <subdev/bios/pll.h> 81 pll_limits_table(struct nvkm_bios *bios, u8 *ver, u8 *hdr, u8 *cnt, u8 *len) in pll_limits_table() argument 86 if (!bit_entry(bios, 'C', &bit_C)) { in pll_limits_table() 88 data = nvbios_rd16(bios, bit_C.offset + 8); in pll_limits_table() 90 data = nvbios_rd32(bios, bit_C.offset + 0); in pll_limits_table() 92 *ver = nvbios_rd08(bios, data + 0); in pll_limits_table() 93 *hdr = nvbios_rd08(bios, data + 1); in pll_limits_table() [all …]
|
| D | perf.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/bit.h> 26 #include <subdev/bios/perf.h> 30 nvbios_perf_table(struct nvkm_bios *bios, u8 *ver, u8 *hdr, in nvbios_perf_table() argument 36 if (!bit_entry(bios, 'P', &bit_P)) { in nvbios_perf_table() 38 perf = nvbios_rd32(bios, bit_P.offset + 0); in nvbios_perf_table() 40 *ver = nvbios_rd08(bios, perf + 0); in nvbios_perf_table() 41 *hdr = nvbios_rd08(bios, perf + 1); in nvbios_perf_table() 43 *cnt = nvbios_rd08(bios, perf + 5); in nvbios_perf_table() 44 *len = nvbios_rd08(bios, perf + 2); in nvbios_perf_table() [all …]
|
| D | timing.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/bit.h> 26 #include <subdev/bios/timing.h> 29 nvbios_timingTe(struct nvkm_bios *bios, in nvbios_timingTe() argument 35 if (!bit_entry(bios, 'P', &bit_P)) { in nvbios_timingTe() 37 timing = nvbios_rd32(bios, bit_P.offset + 4); in nvbios_timingTe() 40 timing = nvbios_rd32(bios, bit_P.offset + 8); in nvbios_timingTe() 43 *ver = nvbios_rd08(bios, timing + 0); in nvbios_timingTe() 46 *hdr = nvbios_rd08(bios, timing + 1); in nvbios_timingTe() 47 *cnt = nvbios_rd08(bios, timing + 2); in nvbios_timingTe() [all …]
|
| D | dp.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/bit.h> 26 #include <subdev/bios/dp.h> 29 nvbios_dp_table(struct nvkm_bios *bios, u8 *ver, u8 *hdr, u8 *cnt, u8 *len) in nvbios_dp_table() argument 33 if (!bit_entry(bios, 'd', &d)) { in nvbios_dp_table() 35 u16 data = nvbios_rd16(bios, d.offset); in nvbios_dp_table() 37 *ver = nvbios_rd08(bios, data + 0x00); in nvbios_dp_table() 45 *hdr = nvbios_rd08(bios, data + 0x01); in nvbios_dp_table() 46 *len = nvbios_rd08(bios, data + 0x02); in nvbios_dp_table() 47 *cnt = nvbios_rd08(bios, data + 0x03); in nvbios_dp_table() [all …]
|
| D | init.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/bit.h> 26 #include <subdev/bios/bmp.h> 27 #include <subdev/bios/conn.h> 28 #include <subdev/bios/dcb.h> 29 #include <subdev/bios/dp.h> 30 #include <subdev/bios/gpio.h> 31 #include <subdev/bios/init.h> 32 #include <subdev/bios/ramcfg.h> 124 struct nvkm_bios *bios = init->subdev->device->bios; in init_conn() local [all …]
|
| D | volt.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/bit.h> 26 #include <subdev/bios/volt.h> 29 nvbios_volt_table(struct nvkm_bios *bios, u8 *ver, u8 *hdr, u8 *cnt, u8 *len) in nvbios_volt_table() argument 34 if (!bit_entry(bios, 'P', &bit_P)) { in nvbios_volt_table() 36 volt = nvbios_rd32(bios, bit_P.offset + 0x0c); in nvbios_volt_table() 39 volt = nvbios_rd32(bios, bit_P.offset + 0x10); in nvbios_volt_table() 42 *ver = nvbios_rd08(bios, volt + 0); in nvbios_volt_table() 46 *cnt = nvbios_rd08(bios, volt + 2); in nvbios_volt_table() 47 *len = nvbios_rd08(bios, volt + 1); in nvbios_volt_table() [all …]
|
| D | disp.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/bit.h> 26 #include <subdev/bios/disp.h> 29 nvbios_disp_table(struct nvkm_bios *bios, in nvbios_disp_table() argument 34 if (!bit_entry(bios, 'U', &U)) { in nvbios_disp_table() 36 u16 data = nvbios_rd16(bios, U.offset); in nvbios_disp_table() 38 *ver = nvbios_rd08(bios, data + 0x00); in nvbios_disp_table() 43 *hdr = nvbios_rd08(bios, data + 0x01); in nvbios_disp_table() 44 *len = nvbios_rd08(bios, data + 0x02); in nvbios_disp_table() 45 *cnt = nvbios_rd08(bios, data + 0x03); in nvbios_disp_table() [all …]
|
| D | vmap.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/bit.h> 26 #include <subdev/bios/vmap.h> 29 nvbios_vmap_table(struct nvkm_bios *bios, u8 *ver, u8 *hdr, u8 *cnt, u8 *len) in nvbios_vmap_table() argument 34 if (!bit_entry(bios, 'P', &bit_P)) { in nvbios_vmap_table() 36 vmap = nvbios_rd32(bios, bit_P.offset + 0x20); in nvbios_vmap_table() 38 *ver = nvbios_rd08(bios, vmap + 0); in nvbios_vmap_table() 42 *hdr = nvbios_rd08(bios, vmap + 1); in nvbios_vmap_table() 43 *cnt = nvbios_rd08(bios, vmap + 3); in nvbios_vmap_table() 44 *len = nvbios_rd08(bios, vmap + 2); in nvbios_vmap_table() [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/nouveau/nvkm/subdev/bios/ |
| D | base.c | 26 #include <subdev/bios.h> 27 #include <subdev/bios/bmp.h> 28 #include <subdev/bios/bit.h> 29 #include <subdev/bios/image.h> 32 nvbios_addr(struct nvkm_bios *bios, u32 *addr, u8 size) in nvbios_addr() argument 36 if (*addr >= bios->image0_size && bios->imaged_addr) { in nvbios_addr() 37 *addr -= bios->image0_size; in nvbios_addr() 38 *addr += bios->imaged_addr; in nvbios_addr() 41 if (unlikely(*addr + size > bios->size)) { in nvbios_addr() 42 nvkm_error(&bios->subdev, "OOB %d %08x %08x\n", size, p, *addr); in nvbios_addr() [all …]
|
| D | rammap.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/bit.h> 26 #include <subdev/bios/rammap.h> 29 nvbios_rammapTe(struct nvkm_bios *bios, u8 *ver, u8 *hdr, in nvbios_rammapTe() argument 35 if (!bit_entry(bios, 'P', &bit_P)) { in nvbios_rammapTe() 37 rammap = nvbios_rd32(bios, bit_P.offset + 4); in nvbios_rammapTe() 40 *ver = nvbios_rd08(bios, rammap + 0); in nvbios_rammapTe() 44 *hdr = nvbios_rd08(bios, rammap + 1); in nvbios_rammapTe() 45 *cnt = nvbios_rd08(bios, rammap + 5); in nvbios_rammapTe() 46 *len = nvbios_rd08(bios, rammap + 2); in nvbios_rammapTe() [all …]
|
| D | Kbuild | 2 nvkm-y += nvkm/subdev/bios/base.o 3 nvkm-y += nvkm/subdev/bios/bit.o 4 nvkm-y += nvkm/subdev/bios/boost.o 5 nvkm-y += nvkm/subdev/bios/conn.o 6 nvkm-y += nvkm/subdev/bios/cstep.o 7 nvkm-y += nvkm/subdev/bios/dcb.o 8 nvkm-y += nvkm/subdev/bios/disp.o 9 nvkm-y += nvkm/subdev/bios/dp.o 10 nvkm-y += nvkm/subdev/bios/extdev.o 11 nvkm-y += nvkm/subdev/bios/fan.o [all …]
|
| D | pll.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/bit.h> 26 #include <subdev/bios/bmp.h> 27 #include <subdev/bios/pll.h> 81 pll_limits_table(struct nvkm_bios *bios, u8 *ver, u8 *hdr, u8 *cnt, u8 *len) in pll_limits_table() argument 86 if (!bit_entry(bios, 'C', &bit_C)) { in pll_limits_table() 88 data = nvbios_rd16(bios, bit_C.offset + 8); in pll_limits_table() 90 data = nvbios_rd32(bios, bit_C.offset + 0); in pll_limits_table() 92 *ver = nvbios_rd08(bios, data + 0); in pll_limits_table() 93 *hdr = nvbios_rd08(bios, data + 1); in pll_limits_table() [all …]
|
| D | perf.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/bit.h> 26 #include <subdev/bios/perf.h> 30 nvbios_perf_table(struct nvkm_bios *bios, u8 *ver, u8 *hdr, in nvbios_perf_table() argument 36 if (!bit_entry(bios, 'P', &bit_P)) { in nvbios_perf_table() 38 perf = nvbios_rd32(bios, bit_P.offset + 0); in nvbios_perf_table() 40 *ver = nvbios_rd08(bios, perf + 0); in nvbios_perf_table() 41 *hdr = nvbios_rd08(bios, perf + 1); in nvbios_perf_table() 43 *cnt = nvbios_rd08(bios, perf + 5); in nvbios_perf_table() 44 *len = nvbios_rd08(bios, perf + 2); in nvbios_perf_table() [all …]
|
| D | timing.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/bit.h> 26 #include <subdev/bios/timing.h> 29 nvbios_timingTe(struct nvkm_bios *bios, in nvbios_timingTe() argument 35 if (!bit_entry(bios, 'P', &bit_P)) { in nvbios_timingTe() 37 timing = nvbios_rd32(bios, bit_P.offset + 4); in nvbios_timingTe() 40 timing = nvbios_rd32(bios, bit_P.offset + 8); in nvbios_timingTe() 43 *ver = nvbios_rd08(bios, timing + 0); in nvbios_timingTe() 46 *hdr = nvbios_rd08(bios, timing + 1); in nvbios_timingTe() 47 *cnt = nvbios_rd08(bios, timing + 2); in nvbios_timingTe() [all …]
|
| D | dp.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/bit.h> 26 #include <subdev/bios/dp.h> 29 nvbios_dp_table(struct nvkm_bios *bios, u8 *ver, u8 *hdr, u8 *cnt, u8 *len) in nvbios_dp_table() argument 33 if (!bit_entry(bios, 'd', &d)) { in nvbios_dp_table() 35 u16 data = nvbios_rd16(bios, d.offset); in nvbios_dp_table() 37 *ver = nvbios_rd08(bios, data + 0x00); in nvbios_dp_table() 45 *hdr = nvbios_rd08(bios, data + 0x01); in nvbios_dp_table() 46 *len = nvbios_rd08(bios, data + 0x02); in nvbios_dp_table() 47 *cnt = nvbios_rd08(bios, data + 0x03); in nvbios_dp_table() [all …]
|
| D | init.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/bit.h> 26 #include <subdev/bios/bmp.h> 27 #include <subdev/bios/conn.h> 28 #include <subdev/bios/dcb.h> 29 #include <subdev/bios/dp.h> 30 #include <subdev/bios/gpio.h> 31 #include <subdev/bios/init.h> 32 #include <subdev/bios/ramcfg.h> 124 struct nvkm_bios *bios = init->subdev->device->bios; in init_conn() local [all …]
|
| D | volt.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/bit.h> 26 #include <subdev/bios/volt.h> 29 nvbios_volt_table(struct nvkm_bios *bios, u8 *ver, u8 *hdr, u8 *cnt, u8 *len) in nvbios_volt_table() argument 34 if (!bit_entry(bios, 'P', &bit_P)) { in nvbios_volt_table() 36 volt = nvbios_rd32(bios, bit_P.offset + 0x0c); in nvbios_volt_table() 39 volt = nvbios_rd32(bios, bit_P.offset + 0x10); in nvbios_volt_table() 42 *ver = nvbios_rd08(bios, volt + 0); in nvbios_volt_table() 46 *cnt = nvbios_rd08(bios, volt + 2); in nvbios_volt_table() 47 *len = nvbios_rd08(bios, volt + 1); in nvbios_volt_table() [all …]
|
| D | disp.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/bit.h> 26 #include <subdev/bios/disp.h> 29 nvbios_disp_table(struct nvkm_bios *bios, in nvbios_disp_table() argument 34 if (!bit_entry(bios, 'U', &U)) { in nvbios_disp_table() 36 u16 data = nvbios_rd16(bios, U.offset); in nvbios_disp_table() 38 *ver = nvbios_rd08(bios, data + 0x00); in nvbios_disp_table() 43 *hdr = nvbios_rd08(bios, data + 0x01); in nvbios_disp_table() 44 *len = nvbios_rd08(bios, data + 0x02); in nvbios_disp_table() 45 *cnt = nvbios_rd08(bios, data + 0x03); in nvbios_disp_table() [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/amd/amdgpu/ |
| D | amdgpu_bios.c | 37 * BIOS. 47 /* Check if current bios is an ATOM BIOS. 48 * Return true if it is ATOM BIOS. Otherwise, return false. 50 static bool check_atom_bios(uint8_t *bios, size_t size) in check_atom_bios() argument 54 if (!bios || size < 0x49) { in check_atom_bios() 59 if (!AMD_IS_VALID_VBIOS(bios)) { in check_atom_bios() 60 DRM_INFO("BIOS signature incorrect %x %x\n", bios[0], bios[1]); in check_atom_bios() 64 bios_header_start = bios[0x48] | (bios[0x49] << 8); in check_atom_bios() 66 DRM_INFO("Can't locate bios header\n"); in check_atom_bios() 72 DRM_INFO("BIOS header is broken\n"); in check_atom_bios() [all …]
|
| /kernel/linux/linux-6.6/drivers/gpu/drm/amd/amdgpu/ |
| D | amdgpu_bios.c | 37 * BIOS. 47 /* Check if current bios is an ATOM BIOS. 48 * Return true if it is ATOM BIOS. Otherwise, return false. 50 static bool check_atom_bios(uint8_t *bios, size_t size) in check_atom_bios() argument 54 if (!bios || size < 0x49) { in check_atom_bios() 59 if (!AMD_IS_VALID_VBIOS(bios)) { in check_atom_bios() 60 DRM_INFO("BIOS signature incorrect %x %x\n", bios[0], bios[1]); in check_atom_bios() 64 bios_header_start = bios[0x48] | (bios[0x49] << 8); in check_atom_bios() 66 DRM_INFO("Can't locate bios header\n"); in check_atom_bios() 72 DRM_INFO("BIOS header is broken\n"); in check_atom_bios() [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/nouveau/ |
| D | nouveau_bios.c | 51 * There's a few checksums in the BIOS, so here's a generic checking in nv_cksum() 66 static uint16_t clkcmptable(struct nvbios *bios, uint16_t clktable, int pxclk) in clkcmptable() argument 71 if (bios->major_version < 5) /* pre BIT */ in clkcmptable() 77 compareclk = ROM16(bios->data[clktable + compare_record_len * i]); in clkcmptable() 79 if (bios->major_version < 5) { in clkcmptable() 80 uint8_t tmdssub = bios->data[clktable + 2 + compare_record_len * i]; in clkcmptable() 81 scriptptr = ROM16(bios->data[bios->init_script_tbls_ptr + tmdssub * 2]); in clkcmptable() 83 scriptptr = ROM16(bios->data[clktable + 2 + compare_record_len * i]); in clkcmptable() 110 struct nvbios *bios = &drm->vbios; in call_lvds_manufacturer_script() local 111 …uint8_t sub = bios->data[bios->fp.xlated_entry + script] + (bios->fp.link_c_increment && dcbent->o… in call_lvds_manufacturer_script() [all …]
|
| /kernel/linux/linux-6.6/drivers/gpu/drm/nouveau/ |
| D | nouveau_bios.c | 52 * There's a few checksums in the BIOS, so here's a generic checking in nv_cksum() 67 static uint16_t clkcmptable(struct nvbios *bios, uint16_t clktable, int pxclk) in clkcmptable() argument 72 if (bios->major_version < 5) /* pre BIT */ in clkcmptable() 78 compareclk = ROM16(bios->data[clktable + compare_record_len * i]); in clkcmptable() 80 if (bios->major_version < 5) { in clkcmptable() 81 uint8_t tmdssub = bios->data[clktable + 2 + compare_record_len * i]; in clkcmptable() 82 scriptptr = ROM16(bios->data[bios->init_script_tbls_ptr + tmdssub * 2]); in clkcmptable() 84 scriptptr = ROM16(bios->data[clktable + 2 + compare_record_len * i]); in clkcmptable() 111 struct nvbios *bios = &drm->vbios; in call_lvds_manufacturer_script() local 112 …uint8_t sub = bios->data[bios->fp.xlated_entry + script] + (bios->fp.link_c_increment && dcbent->o… in call_lvds_manufacturer_script() [all …]
|