函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:UV3/4 have identical MMIOH overlay configs, UV4A is slightly different

函数原型:static __init void map_mmioh_high_uv34(int index, int min_pnode, int max_pnode)

返回类型:void

参数:

类型参数名称
intindex
intmin_pnode
intmax_pnode
885  如果index恒等于0则
886  id等于"MMIOH0"
887  m_overlay等于s_uv4_hub
888  overlay等于uv_read_local_mmr(m_overlay)
889  base等于overlay按位与s_uv4_hub
890  mmr等于s_uv4_hub
891  m_io等于overlay按位与s_uv4_hub的值右移s_uv4_hub
893  shift等于s_uv4_hub
894  n等于s_uv4_hub
895  nasid_mask等于s_uv4_hub
896  否则
897  id等于"MMIOH1"
898  m_overlay等于s_uv4_hub
899  overlay等于uv_read_local_mmr(m_overlay)
900  base等于overlay按位与s_uv4_hub
901  mmr等于s_uv4_hub
902  m_io等于overlay按位与s_uv4_hub的值右移s_uv4_hub
904  shift等于s_uv4_hub
905  n等于s_uv4_hub
906  nasid_mask等于s_uv4_hub
908  打印信息("UV: %s overlay 0x%lx base:0x%lx m_io:%d\n", id, overlay, base, m_io)
909  如果非overlay按位与s_uv4_hub的值则
910  打印信息("UV: %s disabled\n", id)
911  返回
915  min_pnode乘等于2
916  max_pnode乘等于2
917  max_io等于lnasid等于fi等于li等于负1
919 i小于n循环
920  m_redirect等于mmri乘8
921  redirect等于uv_read_local_mmr(m_redirect)
923  nasid等于redirect按位与nasid_mask
924  如果i恒等于0则打印信息("UV: %s redirect base 0x%lx(@0x%lx) 0x%04x\n", id, redirect, m_redirect, nasid)
929  如果nasid小于min_pnodemax_pnode小于nasidnasid等于负1
932  如果nasid恒等于lnasid
933  li等于i
935  如果i不等于n减1则继续下一循环
940  如果lnasid不等于负1或i恒等于n减1且nasid不等于负1则
944  如果lnasid恒等于负1则
945  f等于l等于i
946  lnasid等于nasid
947  否则
948  f等于fi
949  l等于li
951  addr1等于base左移shift位的值加f乘1ULL左移m_io位的值
952  addr2等于base左移shift位的值加l加1的和乘1ULL左移m_io位的值
953  打印信息("UV: %s[%03d..%03d] NASID 0x%04x ADDR 0x%016lx - 0x%016lx\n", id, fi, li, lnasid, addr1, addr2)
954  如果max_io小于lmax_io等于l
957  fi等于li等于i
958  lnasid等于nasid
961  打印信息("UV: %s base:0x%lx shift:%d M_IO:%d MAX_IO:%d\n", id, base, shift, m_io, max_io)
963  如果max_io大于等于0则map_high(id, base, shift, m_io, max_io, map_uc)
调用者
名称描述
map_mmioh_high