cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

cvmx-l2t-defs.h (5098B)


      1/***********************license start***************
      2 * Author: Cavium Networks
      3 *
      4 * Contact: support@caviumnetworks.com
      5 * This file is part of the OCTEON SDK
      6 *
      7 * Copyright (c) 2003-2017 Cavium, Inc.
      8 *
      9 * This file is free software; you can redistribute it and/or modify
     10 * it under the terms of the GNU General Public License, Version 2, as
     11 * published by the Free Software Foundation.
     12 *
     13 * This file is distributed in the hope that it will be useful, but
     14 * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty
     15 * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or
     16 * NONINFRINGEMENT.  See the GNU General Public License for more
     17 * details.
     18 *
     19 * You should have received a copy of the GNU General Public License
     20 * along with this file; if not, write to the Free Software
     21 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
     22 * or visit http://www.gnu.org/licenses/.
     23 *
     24 * This file may also be available under a different license from Cavium.
     25 * Contact Cavium Networks for more information
     26 ***********************license end**************************************/
     27
     28#ifndef __CVMX_L2T_DEFS_H__
     29#define __CVMX_L2T_DEFS_H__
     30
     31#include <uapi/asm/bitfield.h>
     32
     33#define CVMX_L2T_ERR	(CVMX_ADD_IO_SEG(0x0001180080000008ull))
     34
     35
     36union cvmx_l2t_err {
     37	uint64_t u64;
     38	struct cvmx_l2t_err_s {
     39		__BITFIELD_FIELD(uint64_t reserved_29_63:35,
     40		__BITFIELD_FIELD(uint64_t fadru:1,
     41		__BITFIELD_FIELD(uint64_t lck_intena2:1,
     42		__BITFIELD_FIELD(uint64_t lckerr2:1,
     43		__BITFIELD_FIELD(uint64_t lck_intena:1,
     44		__BITFIELD_FIELD(uint64_t lckerr:1,
     45		__BITFIELD_FIELD(uint64_t fset:3,
     46		__BITFIELD_FIELD(uint64_t fadr:10,
     47		__BITFIELD_FIELD(uint64_t fsyn:6,
     48		__BITFIELD_FIELD(uint64_t ded_err:1,
     49		__BITFIELD_FIELD(uint64_t sec_err:1,
     50		__BITFIELD_FIELD(uint64_t ded_intena:1,
     51		__BITFIELD_FIELD(uint64_t sec_intena:1,
     52		__BITFIELD_FIELD(uint64_t ecc_ena:1,
     53		;))))))))))))))
     54	} s;
     55	struct cvmx_l2t_err_cn30xx {
     56		__BITFIELD_FIELD(uint64_t reserved_28_63:36,
     57		__BITFIELD_FIELD(uint64_t lck_intena2:1,
     58		__BITFIELD_FIELD(uint64_t lckerr2:1,
     59		__BITFIELD_FIELD(uint64_t lck_intena:1,
     60		__BITFIELD_FIELD(uint64_t lckerr:1,
     61		__BITFIELD_FIELD(uint64_t reserved_23_23:1,
     62		__BITFIELD_FIELD(uint64_t fset:2,
     63		__BITFIELD_FIELD(uint64_t reserved_19_20:2,
     64		__BITFIELD_FIELD(uint64_t fadr:8,
     65		__BITFIELD_FIELD(uint64_t fsyn:6,
     66		__BITFIELD_FIELD(uint64_t ded_err:1,
     67		__BITFIELD_FIELD(uint64_t sec_err:1,
     68		__BITFIELD_FIELD(uint64_t ded_intena:1,
     69		__BITFIELD_FIELD(uint64_t sec_intena:1,
     70		__BITFIELD_FIELD(uint64_t ecc_ena:1,
     71		;)))))))))))))))
     72	} cn30xx;
     73	struct cvmx_l2t_err_cn31xx {
     74		__BITFIELD_FIELD(uint64_t reserved_28_63:36,
     75		__BITFIELD_FIELD(uint64_t lck_intena2:1,
     76		__BITFIELD_FIELD(uint64_t lckerr2:1,
     77		__BITFIELD_FIELD(uint64_t lck_intena:1,
     78		__BITFIELD_FIELD(uint64_t lckerr:1,
     79		__BITFIELD_FIELD(uint64_t reserved_23_23:1,
     80		__BITFIELD_FIELD(uint64_t fset:2,
     81		__BITFIELD_FIELD(uint64_t reserved_20_20:1,
     82		__BITFIELD_FIELD(uint64_t fadr:9,
     83		__BITFIELD_FIELD(uint64_t fsyn:6,
     84		__BITFIELD_FIELD(uint64_t ded_err:1,
     85		__BITFIELD_FIELD(uint64_t sec_err:1,
     86		__BITFIELD_FIELD(uint64_t ded_intena:1,
     87		__BITFIELD_FIELD(uint64_t sec_intena:1,
     88		__BITFIELD_FIELD(uint64_t ecc_ena:1,
     89		;)))))))))))))))
     90	} cn31xx;
     91	struct cvmx_l2t_err_cn38xx {
     92		__BITFIELD_FIELD(uint64_t reserved_28_63:36,
     93		__BITFIELD_FIELD(uint64_t lck_intena2:1,
     94		__BITFIELD_FIELD(uint64_t lckerr2:1,
     95		__BITFIELD_FIELD(uint64_t lck_intena:1,
     96		__BITFIELD_FIELD(uint64_t lckerr:1,
     97		__BITFIELD_FIELD(uint64_t fset:3,
     98		__BITFIELD_FIELD(uint64_t fadr:10,
     99		__BITFIELD_FIELD(uint64_t fsyn:6,
    100		__BITFIELD_FIELD(uint64_t ded_err:1,
    101		__BITFIELD_FIELD(uint64_t sec_err:1,
    102		__BITFIELD_FIELD(uint64_t ded_intena:1,
    103		__BITFIELD_FIELD(uint64_t sec_intena:1,
    104		__BITFIELD_FIELD(uint64_t ecc_ena:1,
    105		;)))))))))))))
    106	} cn38xx;
    107	struct cvmx_l2t_err_cn50xx {
    108		__BITFIELD_FIELD(uint64_t reserved_28_63:36,
    109		__BITFIELD_FIELD(uint64_t lck_intena2:1,
    110		__BITFIELD_FIELD(uint64_t lckerr2:1,
    111		__BITFIELD_FIELD(uint64_t lck_intena:1,
    112		__BITFIELD_FIELD(uint64_t lckerr:1,
    113		__BITFIELD_FIELD(uint64_t fset:3,
    114		__BITFIELD_FIELD(uint64_t reserved_18_20:3,
    115		__BITFIELD_FIELD(uint64_t fadr:7,
    116		__BITFIELD_FIELD(uint64_t fsyn:6,
    117		__BITFIELD_FIELD(uint64_t ded_err:1,
    118		__BITFIELD_FIELD(uint64_t sec_err:1,
    119		__BITFIELD_FIELD(uint64_t ded_intena:1,
    120		__BITFIELD_FIELD(uint64_t sec_intena:1,
    121		__BITFIELD_FIELD(uint64_t ecc_ena:1,
    122		;))))))))))))))
    123	} cn50xx;
    124	struct cvmx_l2t_err_cn52xx {
    125		__BITFIELD_FIELD(uint64_t reserved_28_63:36,
    126		__BITFIELD_FIELD(uint64_t lck_intena2:1,
    127		__BITFIELD_FIELD(uint64_t lckerr2:1,
    128		__BITFIELD_FIELD(uint64_t lck_intena:1,
    129		__BITFIELD_FIELD(uint64_t lckerr:1,
    130		__BITFIELD_FIELD(uint64_t fset:3,
    131		__BITFIELD_FIELD(uint64_t reserved_20_20:1,
    132		__BITFIELD_FIELD(uint64_t fadr:9,
    133		__BITFIELD_FIELD(uint64_t fsyn:6,
    134		__BITFIELD_FIELD(uint64_t ded_err:1,
    135		__BITFIELD_FIELD(uint64_t sec_err:1,
    136		__BITFIELD_FIELD(uint64_t ded_intena:1,
    137		__BITFIELD_FIELD(uint64_t sec_intena:1,
    138		__BITFIELD_FIELD(uint64_t ecc_ena:1,
    139		;))))))))))))))
    140	} cn52xx;
    141};
    142
    143#endif