函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:arch\x86\kernel\amd_gart_64.c Create Date:2022-07-27 09:51:54
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:Private Northbridge GATT initialization in case we cannot use the* AGP driver for some reason.

函数原型:static __init int init_amd_gatt(struct agp_kern_info *info)

返回类型:int

参数:

类型参数名称
struct agp_kern_info *info
623  打印信息("PCI-DMA: Disabling AGP.\n")
625  aper_size等于aper_base等于aper_size等于0
626  dev = NULL
627 i小于amd_nb_num()循环
628  dev等于misc
629  new_aper_base等于read_aperture(dev, & new_aper_size)
630  如果非new_aper_base则转到:nommu
633  如果非aper_base
637  如果aper_size不等于new_aper_sizeaper_base不等于new_aper_base则转到:nommu
640  如果非aper_base则转到:nommu
643  aper_base等于aper_base
644  aper_size等于aper_size右移20位
646  gatt_size等于aper_size右移PAGE_SHIFT determines the page size 位的值乘sizeof(u32)
647  gatt等于__get_free_pages(GFP_KERNEL | __GFP_ZERO, get_order - Determine the allocation order of a memory size*@size: The size for which to get the order* Determine the allocation order of a particular sized block of memory)
649  如果非gattpanic - halt the system*@fmt: The text string to print* Display a message, then perform cleanups.* This function never returns.
651  如果set_memory_uc((unsignedlong)gatt, gatt_size >> PAGE_SHIFT determines the page size )则panic - halt the system*@fmt: The text string to print* Display a message, then perform cleanups.* This function never returns.
654  agp_gatt_table等于gatt
656  register_syscore_ops( & gart_syscore_ops)
658  Use global flush state to avoid races with multiple flushers.
660  打印信息("PCI-DMA: aperture base @ %x size %u KB\n", aper_base, aper_size >> 10)
663  返回:0
665  nommu :
667  打印警告信息("PCI-DMA: More than 4GB of RAM and no IOMMU - falling back to iommu=soft.\n")
668  返回:负1
调用者
名称描述
gart_iommu_init