/openbmc/linux/drivers/gpu/drm/nouveau/nvkm/subdev/bios/ |
H A 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 …]
|
H A 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 …]
|
H A 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 …]
|
H A 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 …]
|
H A 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 …]
|
H A 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 …]
|
H A 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 …]
|
H A 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 …]
|
H A 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 …]
|
H A 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 …]
|
H A 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 …]
|
H A D | i2c.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/dcb.h> 26 #include <subdev/bios/i2c.h> 29 dcb_i2c_table(struct nvkm_bios *bios, u8 *ver, u8 *hdr, u8 *cnt, u8 *len) in dcb_i2c_table() argument 32 u16 dcb = dcb_table(bios, ver, hdr, cnt, len); in dcb_i2c_table() 35 i2c = nvbios_rd16(bios, dcb + 2); in dcb_i2c_table() 37 i2c = nvbios_rd16(bios, dcb + 4); in dcb_i2c_table() 41 nvkm_warn(&bios->subdev, "ccb %02x not supported\n", *ver); in dcb_i2c_table() 46 *ver = nvbios_rd08(bios, i2c + 0); in dcb_i2c_table() 47 *hdr = nvbios_rd08(bios, i2c + 1); in dcb_i2c_table() [all …]
|
H A D | pmu.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/bit.h> 26 #include <subdev/bios/image.h> 27 #include <subdev/bios/pmu.h> 30 nvbios_pmuTe(struct nvkm_bios *bios, u8 *ver, u8 *hdr, u8 *cnt, u8 *len) in nvbios_pmuTe() argument 35 if (!bit_entry(bios, 'p', &bit_p)) { in nvbios_pmuTe() 37 data = nvbios_rd32(bios, bit_p.offset + 0x00); in nvbios_pmuTe() 39 *ver = nvbios_rd08(bios, data + 0x00); /* maybe? */ in nvbios_pmuTe() 40 *hdr = nvbios_rd08(bios, data + 0x01); in nvbios_pmuTe() 41 *len = nvbios_rd08(bios, data + 0x02); in nvbios_pmuTe() [all …]
|
H A D | cstep.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/bit.h> 26 #include <subdev/bios/cstep.h> 29 nvbios_cstepTe(struct nvkm_bios *bios, in nvbios_cstepTe() argument 35 if (!bit_entry(bios, 'P', &bit_P)) { in nvbios_cstepTe() 37 cstep = nvbios_rd32(bios, bit_P.offset + 0x34); in nvbios_cstepTe() 40 *ver = nvbios_rd08(bios, cstep + 0); in nvbios_cstepTe() 43 *hdr = nvbios_rd08(bios, cstep + 1); in nvbios_cstepTe() 44 *cnt = nvbios_rd08(bios, cstep + 3); in nvbios_cstepTe() 45 *len = nvbios_rd08(bios, cstep + 2); in nvbios_cstepTe() [all …]
|
H A D | boost.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/bit.h> 26 #include <subdev/bios/boost.h> 29 nvbios_boostTe(struct nvkm_bios *bios, in nvbios_boostTe() argument 35 if (!bit_entry(bios, 'P', &bit_P)) { in nvbios_boostTe() 37 boost = nvbios_rd32(bios, bit_P.offset + 0x30); in nvbios_boostTe() 40 *ver = nvbios_rd08(bios, boost + 0); in nvbios_boostTe() 43 *hdr = nvbios_rd08(bios, boost + 1); in nvbios_boostTe() 44 *cnt = nvbios_rd08(bios, boost + 5); in nvbios_boostTe() 45 *len = nvbios_rd08(bios, boost + 2); in nvbios_boostTe() [all …]
|
H A D | conn.c | 24 #include <subdev/bios.h> 25 #include <subdev/bios/dcb.h> 26 #include <subdev/bios/conn.h> 29 nvbios_connTe(struct nvkm_bios *bios, u8 *ver, u8 *hdr, u8 *cnt, u8 *len) in nvbios_connTe() argument 31 u32 dcb = dcb_table(bios, ver, hdr, cnt, len); in nvbios_connTe() 33 u32 data = nvbios_rd16(bios, dcb + 0x14); in nvbios_connTe() 35 *ver = nvbios_rd08(bios, data + 0); in nvbios_connTe() 36 *hdr = nvbios_rd08(bios, data + 1); in nvbios_connTe() 37 *cnt = nvbios_rd08(bios, data + 2); in nvbios_connTe() 38 *len = nvbios_rd08(bios, data + 3); in nvbios_connTe() [all …]
|
/openbmc/bmcweb/redfish-core/schema/dmtf/installed/ |
H A D | Bios_v1.xml | 4 <!--# Redfish Schema: Bios v1.2.3 --> 33 <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Bios"> 37 <EntityType Name="Bios" BaseType="Resource.v1_0_0.Resource" Abstract="true"> 38 …Bios` schema contains properties related to the BIOS attribute registry. The attribute registry d… 39 …<Annotation Term="OData.LongDescription" String="This resource shall represent BIOS attributes for… 48 …<Annotation Term="OData.Description" String="The attributes in the BIOS resource can be updated."/> 58 <String>/redfish/v1/Systems/{ComputerSystemId}/Bios</String> 59 …ish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Bios</String> 60 … <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Bios</String> 66 … <Annotation Term="OData.Description" String="This action resets the BIOS attributes to default."/> [all …]
|
/openbmc/bmcweb/redfish-core/schema/dmtf/csdl/ |
H A D | Bios_v1.xml | 4 <!--# Redfish Schema: Bios v1.2.3 --> 33 <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="Bios"> 37 <EntityType Name="Bios" BaseType="Resource.v1_0_0.Resource" Abstract="true"> 38 …Bios` schema contains properties related to the BIOS attribute registry. The attribute registry d… 39 …<Annotation Term="OData.LongDescription" String="This resource shall represent BIOS attributes for… 48 …<Annotation Term="OData.Description" String="The attributes in the BIOS resource can be updated."/> 58 <String>/redfish/v1/Systems/{ComputerSystemId}/Bios</String> 59 …ish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Bios</String> 60 … <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Bios</String> 66 … <Annotation Term="OData.Description" String="This action resets the BIOS attributes to default."/> [all …]
|
/openbmc/openbmc-test-automation/pldm/ |
H A D | test_pldm_bios_attributes.robot | 3 Documentation Module to test PLDM BIOS attribute types. 13 Suite Setup PLDM BIOS Attribute Suite Setup 14 Suite Teardown PLDM BIOS Attribute Suite Cleanup 26 Verify Get BIOS Attribute With Invalid Attribute Name 27 [Documentation] Verify get BIOS attribute with invalid attribute name. 31 ${pldm_output}= pldmtool bios GetBIOSAttributeCurrentValueByHandle -a ${random_attr} 35 # pldmtool bios GetBIOSAttributeCurrentValueByHandle -a hjkhkj 42 Verify Set BIOS Attribute With Invalid Attribute Name 43 [Documentation] Verify set BIOS attribute with invalid attribute name. 47 ${pldm_output}= pldmtool bios SetBIOSAttributeCurrentValue -a ${random_str} -d ${random_str} [all …]
|
H A D | test_redfish_bios_attributes.robot | 2 Documentation This suite test various BIOS attributes operations using Redfish. 14 Suite Setup Redfish BIOS Suite Setup 15 Suite Teardown Run Keyword And Ignore Error Redfish BIOS Suite Cleanup 27 Redfish Verify Set BIOS Attribute With Invalid Attribute Name 28 [Documentation] Verify set BIOS attribute with invalid attribute name using 37 Redfish Verify Set Invalid Optional Value For BIOS Enumeration Attribute Type 38 [Documentation] Verify set invalid optional value for BIOS enumeration attribute type 50 Redfish Verify Set Out Of Range Integer Value For BIOS Integer Attribute Type 51 [Documentation] Verify set out of range integer value for BIOS integer attribute type 64 Redfish Verify Set Out Of Range String Value For BIOS String Attribute Type [all …]
|
/openbmc/linux/drivers/gpu/drm/amd/amdgpu/ |
H A 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 …]
|
/openbmc/linux/drivers/gpu/drm/nouveau/ |
H A 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 …]
|
/openbmc/bios-settings-mgr/ |
H A D | README.md | 1 # Remote BIOS Configuration 7 The **biosconfig_manager** service enables users to view and modify the BIOS 16 - **Remote management** of BIOS settings. 18 - **Reset BIOS Settings** support through the dbus. 19 - **ChangePassword** support to change the BIOS setup password. 23 The Manager interface exposes methods and properties to Get & Set BIOS 24 attributes via dbus and its documented [here][pdi-manager-bios] 34 - **SetAttribute** Sets a specific BIOS attribute to a new value. 35 - **GetAttribute** Retrieves the current and pending values of a BIOS attribute. 39 - **ResetBIOSSettings** To reset the BIOS setting [all...] |
/openbmc/linux/drivers/gpu/drm/nouveau/include/nvkm/subdev/bios/ |
H A D | bmp.h | 5 bmp_version(struct nvkm_bios *bios) in bmp_version() argument 7 if (bios->bmp_offset) { in bmp_version() 8 return nvbios_rd08(bios, bios->bmp_offset + 5) << 8 | in bmp_version() 9 nvbios_rd08(bios, bios->bmp_offset + 6); in bmp_version() 16 bmp_mem_init_table(struct nvkm_bios *bios) in bmp_mem_init_table() argument 18 if (bmp_version(bios) >= 0x0300) in bmp_mem_init_table() 19 return nvbios_rd16(bios, bios->bmp_offset + 24); in bmp_mem_init_table() 24 bmp_sdr_seq_table(struct nvkm_bios *bios) in bmp_sdr_seq_table() argument 26 if (bmp_version(bios) >= 0x0300) in bmp_sdr_seq_table() 27 return nvbios_rd16(bios, bios->bmp_offset + 26); in bmp_sdr_seq_table() [all …]
|
/openbmc/openpower-vpd-parser/vpd-manager/ |
H A D | bios_handler.hpp | 20 * @brief A class that handles changes to BIOS attributes backed by VPD. 22 * This class has APIs that handle updates to BIOS attributes that need to 24 * 1) Checks if the VPD keywords that BIOS attributes are backed to are 26 * 2) Listens for changes to BIOS attributes and synchronizes them to the 29 * Since on a factory reset like scenario, the BIOS attributes are initialized 52 * @brief Check if PLDM service is running and run BIOS sync 55 * an immediate sync of BIOS attributes. If the service is not running, it 62 * @brief Register listener for changes to BIOS Attributes. 64 * The VPD manager needs to listen to changes to certain BIOS attributes 72 * @brief Callback for BIOS Attribute changes [all …]
|