linux/include/linux/amba/sp810.h
<<
>>
Prefs
   1/*
   2 * ARM PrimeXsys System Controller SP810 header file
   3 *
   4 * Copyright (C) 2009 ST Microelectronics
   5 * Viresh Kumar <vireshk@kernel.org>
   6 *
   7 * This file is licensed under the terms of the GNU General Public
   8 * License version 2. This program is licensed "as is" without any
   9 * warranty of any kind, whether express or implied.
  10 */
  11
  12#ifndef __AMBA_SP810_H
  13#define __AMBA_SP810_H
  14
  15#include <linux/io.h>
  16
  17/* sysctl registers offset */
  18#define SCCTRL                  0x000
  19#define SCSYSSTAT               0x004
  20#define SCIMCTRL                0x008
  21#define SCIMSTAT                0x00C
  22#define SCXTALCTRL              0x010
  23#define SCPLLCTRL               0x014
  24#define SCPLLFCTRL              0x018
  25#define SCPERCTRL0              0x01C
  26#define SCPERCTRL1              0x020
  27#define SCPEREN                 0x024
  28#define SCPERDIS                0x028
  29#define SCPERCLKEN              0x02C
  30#define SCPERSTAT               0x030
  31#define SCSYSID0                0xEE0
  32#define SCSYSID1                0xEE4
  33#define SCSYSID2                0xEE8
  34#define SCSYSID3                0xEEC
  35#define SCITCR                  0xF00
  36#define SCITIR0                 0xF04
  37#define SCITIR1                 0xF08
  38#define SCITOR                  0xF0C
  39#define SCCNTCTRL               0xF10
  40#define SCCNTDATA               0xF14
  41#define SCCNTSTEP               0xF18
  42#define SCPERIPHID0             0xFE0
  43#define SCPERIPHID1             0xFE4
  44#define SCPERIPHID2             0xFE8
  45#define SCPERIPHID3             0xFEC
  46#define SCPCELLID0              0xFF0
  47#define SCPCELLID1              0xFF4
  48#define SCPCELLID2              0xFF8
  49#define SCPCELLID3              0xFFC
  50
  51#define SCCTRL_TIMERENnSEL_SHIFT(n)     (15 + ((n) * 2))
  52
  53static inline void sysctl_soft_reset(void __iomem *base)
  54{
  55        /* switch to slow mode */
  56        writel(0x2, base + SCCTRL);
  57
  58        /* writing any value to SCSYSSTAT reg will reset system */
  59        writel(0, base + SCSYSSTAT);
  60}
  61
  62#endif /* __AMBA_SP810_H */
  63