root/arch/mips/include/asm/mach-ralink/ralink_regs.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


DEFINITIONS

This source file includes following definitions.
  1. rt_sysc_w32
  2. rt_sysc_r32
  3. rt_sysc_m32
  4. rt_memc_w32
  5. rt_memc_r32

   1 /* SPDX-License-Identifier: GPL-2.0-only */
   2 /*
   3  *  Ralink SoC register definitions
   4  *
   5  *  Copyright (C) 2013 John Crispin <john@phrozen.org>
   6  *  Copyright (C) 2008-2010 Gabor Juhos <juhosg@openwrt.org>
   7  *  Copyright (C) 2008 Imre Kaloz <kaloz@openwrt.org>
   8  */
   9 
  10 #ifndef _RALINK_REGS_H_
  11 #define _RALINK_REGS_H_
  12 
  13 #include <linux/io.h>
  14 
  15 enum ralink_soc_type {
  16         RALINK_UNKNOWN = 0,
  17         RT2880_SOC,
  18         RT3883_SOC,
  19         RT305X_SOC_RT3050,
  20         RT305X_SOC_RT3052,
  21         RT305X_SOC_RT3350,
  22         RT305X_SOC_RT3352,
  23         RT305X_SOC_RT5350,
  24         MT762X_SOC_MT7620A,
  25         MT762X_SOC_MT7620N,
  26         MT762X_SOC_MT7621AT,
  27         MT762X_SOC_MT7628AN,
  28         MT762X_SOC_MT7688,
  29 };
  30 extern enum ralink_soc_type ralink_soc;
  31 
  32 extern __iomem void *rt_sysc_membase;
  33 extern __iomem void *rt_memc_membase;
  34 
  35 static inline void rt_sysc_w32(u32 val, unsigned reg)
  36 {
  37         __raw_writel(val, rt_sysc_membase + reg);
  38 }
  39 
  40 static inline u32 rt_sysc_r32(unsigned reg)
  41 {
  42         return __raw_readl(rt_sysc_membase + reg);
  43 }
  44 
  45 static inline void rt_sysc_m32(u32 clr, u32 set, unsigned reg)
  46 {
  47         u32 val = rt_sysc_r32(reg) & ~clr;
  48 
  49         __raw_writel(val | set, rt_sysc_membase + reg);
  50 }
  51 
  52 static inline void rt_memc_w32(u32 val, unsigned reg)
  53 {
  54         __raw_writel(val, rt_memc_membase + reg);
  55 }
  56 
  57 static inline u32 rt_memc_r32(unsigned reg)
  58 {
  59         return __raw_readl(rt_memc_membase + reg);
  60 }
  61 
  62 #endif /* _RALINK_REGS_H_ */

/* [<][>][^][v][top][bottom][index][help] */