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

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

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0-only */
   2 /*
   3  *  Copyright (C) 2012 John Crispin <john@phrozen.org>
   4  */
   5 
   6 #ifndef _RT288X_PINMUX_H__
   7 #define _RT288X_PINMUX_H__
   8 
   9 #define FUNC(name, value, pin_first, pin_count) \
  10         { name, value, pin_first, pin_count }
  11 
  12 #define GRP(_name, _func, _mask, _shift) \
  13         { .name = _name, .mask = _mask, .shift = _shift, \
  14           .func = _func, .gpio = _mask, \
  15           .func_count = ARRAY_SIZE(_func) }
  16 
  17 #define GRP_G(_name, _func, _mask, _gpio, _shift) \
  18         { .name = _name, .mask = _mask, .shift = _shift, \
  19           .func = _func, .gpio = _gpio, \
  20           .func_count = ARRAY_SIZE(_func) }
  21 
  22 struct rt2880_pmx_group;
  23 
  24 struct rt2880_pmx_func {
  25         const char *name;
  26         const char value;
  27 
  28         int pin_first;
  29         int pin_count;
  30         int *pins;
  31 
  32         int *groups;
  33         int group_count;
  34 
  35         int enabled;
  36 };
  37 
  38 struct rt2880_pmx_group {
  39         const char *name;
  40         int enabled;
  41 
  42         const u32 shift;
  43         const char mask;
  44         const char gpio;
  45 
  46         struct rt2880_pmx_func *func;
  47         int func_count;
  48 };
  49 
  50 extern struct rt2880_pmx_group *rt2880_pinmux_data;
  51 
  52 #endif

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