Function report |
Source Code:arch\x86\kernel\apic\x2apic_uv_x.c |
Create Date:2022-07-28 08:33:45 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:uv_acpi_madt_oem_check
Proto:static int __init uv_acpi_madt_oem_check(char *_oem_id, char *_oem_table_id)
Type:int
Parameter:
| Type | Parameter | Name |
|---|---|---|
| char * | _oem_id | |
| char * | _oem_table_id |
| 269 | uv_stringify( size of Unpack OEM/TABLE ID's to be NULL terminated strings , Unpack OEM/TABLE ID's to be NULL terminated strings , _oem_id) |
| 270 | uv_stringify( size of oem_table_id , oem_table_id, _oem_table_id) |
| 272 | If strncmp(Unpack OEM/TABLE ID's to be NULL terminated strings , "SGI", 3) != 0 Then |
| 273 | If strncmp(Unpack OEM/TABLE ID's to be NULL terminated strings , "NSGI", 4) != 0 Then Return 0 |
| 277 | If strncmp(Unpack OEM/TABLE ID's to be NULL terminated strings , "NSGI4", 5) == 0 Then uv_hubless_system = 0x11 |
| 281 | Else uv_hubless_system = 0x9 |
| 284 | pr_info("UV: OEM IDs %s/%s, HUBLESS(0x%x)\n", Unpack OEM/TABLE ID's to be NULL terminated strings , oem_table_id, uv_hubless_system) |
| 287 | Return 0 |
| 290 | If numa_off Then |
| 291 | pr_err("UV: NUMA is off, disabling UV support\n") |
| 292 | Return 0 |
| 296 | ({ |
| 296 | })->p_uv_hub_info = & uv_hub_info_node0 |
| 305 | hub_revision = If If If If Not strncmp(Unpack OEM/TABLE ID's to be NULL terminated strings , "SGI4", 4) Then UV4_HUB_REVISION_BASE Else Not strncmp(Unpack OEM/TABLE ID's to be NULL terminated strings , "SGI3", 4) Then UV3_HUB_REVISION_BASE Else Not strcmp(Unpack OEM/TABLE ID's to be NULL terminated strings , "SGI2") Then UV2_HUB_REVISION_BASE Else Not strcmp(Unpack OEM/TABLE ID's to be NULL terminated strings , "SGI") Then HUB revision ranges for each UV HUB architecture.* This is a software convention - NOT the hardware revision numbers in* the hub chip. Else 0 |
| 311 | If hub_revision == 0 Then Go to badbios |
| 315 | Case hub_revision == UV4_HUB_REVISION_BASE |
| 316 | uv_hubbed_system = 0x11 |
| 317 | Break |
| 319 | Case hub_revision == UV3_HUB_REVISION_BASE |
| 320 | uv_hubbed_system = 0x9 |
| 321 | Break |
| 323 | Case hub_revision == UV2_HUB_REVISION_BASE |
| 324 | uv_hubbed_system = 0x5 |
| 325 | Break |
| 328 | uv_hubbed_system = 0x3 |
| 329 | Break |
| 332 | pnodeid = early_get_pnodeid() |
| 336 | nmi_init = uv_nmi_init |
| 338 | If Not strcmp(oem_table_id, "UVX") Then |
| 340 | uv_system_type = UV_X2APIC |
| 341 | uv_apic = 0 |
| 343 | Else if Not strcmp(oem_table_id, "UVH") Then |
| 346 | warm_reset = 0 |
| 349 | uv_apic = 1 |
| 351 | Else if Not strcmp(oem_table_id, "UVL") Then |
| 353 | uv_system_type = UV_LEGACY_APIC |
| 354 | uv_apic = 0 |
| 356 | Else |
| 357 | Go to badbios |
| 360 | pr_info("UV: OEM IDs %s/%s, System/HUB Types %d/%d, uv_apic %d\n", Unpack OEM/TABLE ID's to be NULL terminated strings , oem_table_id, uv_system_type, uv_min_hub_revision_id, uv_apic) |
| 361 | uv_tsc_check_sync() |
| 363 | Return uv_apic |
| 365 | badbios : |
| 366 | pr_err("UV: OEM_ID:%s OEM_TABLE_ID:%s\n", Unpack OEM/TABLE ID's to be NULL terminated strings , oem_table_id) |
| 367 | pr_err("Current BIOS not supported, update kernel and/or BIOS\n") |
| 368 | BUG() |
| Source code conversion tool public plug-in interface | X |
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |