|
47 | 47 | /* Check if current bios is an ATOM BIOS. |
48 | 48 | * Return true if it is ATOM BIOS. Otherwise, return false. |
49 | 49 | */ |
50 | | -static bool check_atom_bios(uint8_t *bios, size_t size) |
| 50 | +static bool check_atom_bios(struct amdgpu_device *adev, size_t size) |
51 | 51 | { |
52 | 52 | uint16_t tmp, bios_header_start; |
| 53 | + uint8_t *bios = adev->bios; |
53 | 54 |
|
54 | 55 | if (!bios || size < 0x49) { |
55 | | - DRM_INFO("vbios mem is null or mem size is wrong\n"); |
| 56 | + dev_dbg(adev->dev, "VBIOS mem is null or mem size is wrong\n"); |
56 | 57 | return false; |
57 | 58 | } |
58 | 59 |
|
59 | 60 | if (!AMD_IS_VALID_VBIOS(bios)) { |
60 | | - DRM_INFO("BIOS signature incorrect %x %x\n", bios[0], bios[1]); |
| 61 | + dev_dbg(adev->dev, "VBIOS signature incorrect %x %x\n", bios[0], |
| 62 | + bios[1]); |
61 | 63 | return false; |
62 | 64 | } |
63 | 65 |
|
64 | 66 | bios_header_start = bios[0x48] | (bios[0x49] << 8); |
65 | 67 | if (!bios_header_start) { |
66 | | - DRM_INFO("Can't locate bios header\n"); |
| 68 | + dev_dbg(adev->dev, "Can't locate VBIOS header\n"); |
67 | 69 | return false; |
68 | 70 | } |
69 | 71 |
|
70 | 72 | tmp = bios_header_start + 4; |
71 | 73 | if (size < tmp) { |
72 | | - DRM_INFO("BIOS header is broken\n"); |
| 74 | + dev_dbg(adev->dev, "VBIOS header is broken\n"); |
73 | 75 | return false; |
74 | 76 | } |
75 | 77 |
|
76 | 78 | if (!memcmp(bios + tmp, "ATOM", 4) || |
77 | 79 | !memcmp(bios + tmp, "MOTA", 4)) { |
78 | | - DRM_DEBUG("ATOMBIOS detected\n"); |
| 80 | + dev_dbg(adev->dev, "ATOMBIOS detected\n"); |
79 | 81 | return true; |
80 | 82 | } |
81 | 83 |
|
@@ -118,7 +120,7 @@ static bool amdgpu_read_bios_from_vram(struct amdgpu_device *adev) |
118 | 120 | memcpy_fromio(adev->bios, bios, size); |
119 | 121 | iounmap(bios); |
120 | 122 |
|
121 | | - if (!check_atom_bios(adev->bios, size)) { |
| 123 | + if (!check_atom_bios(adev, size)) { |
122 | 124 | kfree(adev->bios); |
123 | 125 | return false; |
124 | 126 | } |
@@ -146,7 +148,7 @@ bool amdgpu_read_bios(struct amdgpu_device *adev) |
146 | 148 | memcpy_fromio(adev->bios, bios, size); |
147 | 149 | pci_unmap_rom(adev->pdev, bios); |
148 | 150 |
|
149 | | - if (!check_atom_bios(adev->bios, size)) { |
| 151 | + if (!check_atom_bios(adev, size)) { |
150 | 152 | kfree(adev->bios); |
151 | 153 | return false; |
152 | 154 | } |
@@ -186,7 +188,7 @@ static bool amdgpu_read_bios_from_rom(struct amdgpu_device *adev) |
186 | 188 | /* read complete BIOS */ |
187 | 189 | amdgpu_asic_read_bios_from_rom(adev, adev->bios, len); |
188 | 190 |
|
189 | | - if (!check_atom_bios(adev->bios, len)) { |
| 191 | + if (!check_atom_bios(adev, len)) { |
190 | 192 | kfree(adev->bios); |
191 | 193 | return false; |
192 | 194 | } |
@@ -216,7 +218,7 @@ static bool amdgpu_read_platform_bios(struct amdgpu_device *adev) |
216 | 218 | memcpy_fromio(adev->bios, bios, romlen); |
217 | 219 | iounmap(bios); |
218 | 220 |
|
219 | | - if (!check_atom_bios(adev->bios, romlen)) |
| 221 | + if (!check_atom_bios(adev, romlen)) |
220 | 222 | goto free_bios; |
221 | 223 |
|
222 | 224 | adev->bios_size = romlen; |
@@ -324,7 +326,7 @@ static bool amdgpu_atrm_get_bios(struct amdgpu_device *adev) |
324 | 326 | break; |
325 | 327 | } |
326 | 328 |
|
327 | | - if (!check_atom_bios(adev->bios, size)) { |
| 329 | + if (!check_atom_bios(adev, size)) { |
328 | 330 | kfree(adev->bios); |
329 | 331 | return false; |
330 | 332 | } |
@@ -389,7 +391,7 @@ static bool amdgpu_acpi_vfct_bios(struct amdgpu_device *adev) |
389 | 391 | vhdr->ImageLength, |
390 | 392 | GFP_KERNEL); |
391 | 393 |
|
392 | | - if (!check_atom_bios(adev->bios, vhdr->ImageLength)) { |
| 394 | + if (!check_atom_bios(adev, vhdr->ImageLength)) { |
393 | 395 | kfree(adev->bios); |
394 | 396 | return false; |
395 | 397 | } |
|
0 commit comments