Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

x86/platform/uv/BAU: Replace hard-coded values with MMR definitions

Replaces hard-coded node ID shift for the descriptor base MMR to fix
initialization on UV4A while maintaining support for previous architectures.

Signed-off-by: Andrew Banman <abanman@hpe.com>
Acked-by: Mike Travis <mike.travis@hpe.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Dimitri Sivanich <sivanich@hpe.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Russ Anderson <rja@hpe.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/1515440592-44060-1-git-send-email-abanman@hpe.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>

authored by

Andrew Banman and committed by
Ingo Molnar
1da2fd61 a631a0a7

+2 -2
-1
arch/x86/include/asm/uv/uv_bau.h
··· 48 48 #define UV2_NET_ENDPOINT_INTD 0x28 49 49 #define UV_NET_ENDPOINT_INTD (is_uv1_hub() ? \ 50 50 UV1_NET_ENDPOINT_INTD : UV2_NET_ENDPOINT_INTD) 51 - #define UV_DESC_PSHIFT 49 52 51 #define UV_PAYLOADQ_GNODE_SHIFT 49 53 52 #define UV_PTC_BASENAME "sgi_uv/ptc_statistics" 54 53 #define UV_BAU_BASENAME "sgi_uv/bau_tunables"
+2 -1
arch/x86/platform/uv/tlb_uv.c
··· 1751 1751 uv1 = 1; 1752 1752 1753 1753 /* the 14-bit pnode */ 1754 - write_mmr_descriptor_base(pnode, (n << UV_DESC_PSHIFT | m)); 1754 + write_mmr_descriptor_base(pnode, 1755 + (n << UVH_LB_BAU_SB_DESCRIPTOR_BASE_NODE_ID_SHFT | m)); 1755 1756 /* 1756 1757 * Initializing all 8 (ITEMS_PER_DESC) descriptors for each 1757 1758 * cpu even though we only use the first one; one descriptor can