1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 */ 2*4882a593Smuzhiyun #ifndef _ASM_IA64_CACHE_H 3*4882a593Smuzhiyun #define _ASM_IA64_CACHE_H 4*4882a593Smuzhiyun 5*4882a593Smuzhiyun 6*4882a593Smuzhiyun /* 7*4882a593Smuzhiyun * Copyright (C) 1998-2000 Hewlett-Packard Co 8*4882a593Smuzhiyun * David Mosberger-Tang <davidm@hpl.hp.com> 9*4882a593Smuzhiyun */ 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun /* Bytes per L1 (data) cache line. */ 12*4882a593Smuzhiyun #define L1_CACHE_SHIFT CONFIG_IA64_L1_CACHE_SHIFT 13*4882a593Smuzhiyun #define L1_CACHE_BYTES (1 << L1_CACHE_SHIFT) 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun #ifdef CONFIG_SMP 16*4882a593Smuzhiyun # define SMP_CACHE_SHIFT L1_CACHE_SHIFT 17*4882a593Smuzhiyun # define SMP_CACHE_BYTES L1_CACHE_BYTES 18*4882a593Smuzhiyun #else 19*4882a593Smuzhiyun /* 20*4882a593Smuzhiyun * The "aligned" directive can only _increase_ alignment, so this is 21*4882a593Smuzhiyun * safe and provides an easy way to avoid wasting space on a 22*4882a593Smuzhiyun * uni-processor: 23*4882a593Smuzhiyun */ 24*4882a593Smuzhiyun # define SMP_CACHE_SHIFT 3 25*4882a593Smuzhiyun # define SMP_CACHE_BYTES (1 << 3) 26*4882a593Smuzhiyun #endif 27*4882a593Smuzhiyun 28*4882a593Smuzhiyun #define __read_mostly __section(".data..read_mostly") 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun #endif /* _ASM_IA64_CACHE_H */ 31