函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:cyrix_get_arr

函数原型:static void cyrix_get_arr(unsigned int reg, unsigned long *base, unsigned long *size, mtrr_type *type)

返回类型:void

参数:

类型参数名称
unsigned intreg
unsigned long *base
unsigned long *size
mtrr_type *type
20  arr等于CX86_ARR_BASEreg左移1位的值加reg
22  local_irq_save(flags)
24  ccr3等于NSC/Cyrix CPU indexed register access. Must be inlined instead of* macros to ensure correct access ordering* Access order is always 0x22 (=offset), 0x23 (=value)
25  setCx86(CX86_CCR3, (ccr3 & 0x0f) | 0x10)
26  ) = NSC/Cyrix CPU indexed register access. Must be inlined instead of* macros to ensure correct access ordering* Access order is always 0x22 (=offset), 0x23 (=value)
27  ) = NSC/Cyrix CPU indexed register access. Must be inlined instead of* macros to ensure correct access ordering* Access order is always 0x22 (=offset), 0x23 (=value)
28  ) = NSC/Cyrix CPU indexed register access. Must be inlined instead of* macros to ensure correct access ordering* Access order is always 0x22 (=offset), 0x23 (=value)
29  rcr等于NSC/Cyrix CPU indexed register access. Must be inlined instead of* macros to ensure correct access ordering* Access order is always 0x22 (=offset), 0x23 (=value)
30  setCx86(CX86_CCR3, ccr3)
32  local_irq_restore(flags)
34  shift = ) & 0x0f
35  base右移等于PAGE_SHIFT determines the page size
41  如果shiftsize等于如果reg小于7则0x1UL否则0x40UL左移shift减1位
43  否则size等于0
47  如果reg小于7则
49  :rcr恒等于1
51  退出
52  :rcr恒等于8
54  退出
55  :rcr恒等于9
57  退出
58  :rcr恒等于24
59  默认
61  退出
63  否则
65  :rcr恒等于0
67  退出
68  :rcr恒等于8
70  退出
71  :rcr恒等于9
73  退出
74  :rcr恒等于25
75  默认
77  退出
调用者
名称描述
cyrix_get_free_regionyrix_get_free_region - get a free ARR.*@base: the starting (base) address of the region.*@size: the size (in bytes) of the region.* Returns: the index of the region on success, else -1 on error.