xref: /linux/arch/hexagon/include/asm/cache.h (revision bb9707077b4ee5f77bc9939b057ff8a0d410296f)
1 /*
2  * Cache definitions for the Hexagon architecture
3  *
4  * Copyright (c) 2010-2011,2014 The Linux Foundation. All rights reserved.
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License version 2 and
8  * only version 2 as published by the Free Software Foundation.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
18  * 02110-1301, USA.
19  */
20 
21 #ifndef __ASM_CACHE_H
22 #define __ASM_CACHE_H
23 
24 /* Bytes per L1 cache line */
25 #define L1_CACHE_SHIFT		(5)
26 #define L1_CACHE_BYTES		(1 << L1_CACHE_SHIFT)
27 
28 #define ARCH_DMA_MINALIGN	L1_CACHE_BYTES
29 
30 #define __cacheline_aligned	__aligned(L1_CACHE_BYTES)
31 #define ____cacheline_aligned	__aligned(L1_CACHE_BYTES)
32 
33 /* See http://lwn.net/Articles/262554/ */
34 #define __read_mostly
35 
36 #endif
37