Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:arch\x86\kernel\aperture_64.c Create Date:2022-07-28 08:53:08
Last Modify:2020-03-17 10:38:51 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:With kexec/kdump, if the first kernel doesn't shut down the GART and the* second kernel allocates a different GART region, there might be two* overlapping GART regions present:* - the first still used by the GART initialized in the first kernel.

Proto:void __init early_gart_iommu_check(void)

Type:void

Parameter:Nothing

292  agp_aper_order = 0
293  valid_agp = 0
295  aper_size = 0 , aper_order = 0 , last_aper_order = 0
296  aper_base = 0 , last_aper_base = 0
297  aper_enabled = 0 , last_aper_enabled = 0 , last_valid = 0
299  If Not amd_gart_present() Then Return
302  If Not early_pci_allowed() Then Return
306  Look for an AGP bridge
308  fix = 0
309  When dev_limit cycle
313  bus = bus
314  dev_base = dev_base
315  dev_limit = dev_limit
317  When slot < dev_limit cycle
323  aper_order = ctl >> 1 & 7
324  aper_size = 32 * 1024 * 1024 << aper_order
326  aper_base <<= 25
328  If last_valid Then
332  fix = 1
333  Break
340  last_valid = 1
344  If Not fix && Not aper_enabled Then Return
347  If Not aper_base || Not aper_size || aper_base + aper_size > 0x100000000UL Then fix = 1
350  If gart_fix_e820 && Not fix && aper_enabled Then
354  pr_info("e820: reserve [mem %#010Lx-%#010Lx] for GART\n", aper_base, aper_base + aper_size - 1)
361  If valid_agp Then Return
365  When i < dev_limit cycle
369  bus = bus
370  dev_base = dev_base
371  dev_limit = dev_limit
373  When slot < dev_limit cycle