| /* SPDX-License-Identifier: GPL-2.0 */ |
| /* |
| * Copyright (C) 2020 Marvell International Ltd. |
| */ |
| |
| #ifndef __CVMX_RST_DEFS_H__ |
| #define __CVMX_RST_DEFS_H__ |
| |
| #define CVMX_RST_CTLX(offset) (0x0001180006001640ull + ((offset) & 3) * 8) |
| #define CVMX_RST_SOFT_PRSTX(offset) (0x00011800060016C0ull + ((offset) & 3) * 8) |
| |
| /** |
| * cvmx_rst_ctl# |
| */ |
| union cvmx_rst_ctlx { |
| u64 u64; |
| struct cvmx_rst_ctlx_s { |
| u64 reserved_10_63 : 54; |
| u64 prst_link : 1; |
| u64 rst_done : 1; |
| u64 rst_link : 1; |
| u64 host_mode : 1; |
| u64 reserved_4_5 : 2; |
| u64 rst_drv : 1; |
| u64 rst_rcv : 1; |
| u64 rst_chip : 1; |
| u64 rst_val : 1; |
| } s; |
| struct cvmx_rst_ctlx_s cn70xx; |
| struct cvmx_rst_ctlx_s cn70xxp1; |
| struct cvmx_rst_ctlx_s cn73xx; |
| struct cvmx_rst_ctlx_s cn78xx; |
| struct cvmx_rst_ctlx_s cn78xxp1; |
| struct cvmx_rst_ctlx_s cnf75xx; |
| }; |
| |
| typedef union cvmx_rst_ctlx cvmx_rst_ctlx_t; |
| |
| /** |
| * cvmx_rst_soft_prst# |
| */ |
| union cvmx_rst_soft_prstx { |
| u64 u64; |
| struct cvmx_rst_soft_prstx_s { |
| u64 reserved_1_63 : 63; |
| u64 soft_prst : 1; |
| } s; |
| struct cvmx_rst_soft_prstx_s cn70xx; |
| struct cvmx_rst_soft_prstx_s cn70xxp1; |
| struct cvmx_rst_soft_prstx_s cn73xx; |
| struct cvmx_rst_soft_prstx_s cn78xx; |
| struct cvmx_rst_soft_prstx_s cn78xxp1; |
| struct cvmx_rst_soft_prstx_s cnf75xx; |
| }; |
| |
| typedef union cvmx_rst_soft_prstx cvmx_rst_soft_prstx_t; |
| |
| /** |
| * cvmx_rst_soft_rst |
| */ |
| union cvmx_rst_soft_rst { |
| u64 u64; |
| struct cvmx_rst_soft_rst_s { |
| u64 reserved_1_63 : 63; |
| u64 soft_rst : 1; |
| } s; |
| struct cvmx_rst_soft_rst_s cn70xx; |
| struct cvmx_rst_soft_rst_s cn70xxp1; |
| struct cvmx_rst_soft_rst_s cn73xx; |
| struct cvmx_rst_soft_rst_s cn78xx; |
| struct cvmx_rst_soft_rst_s cn78xxp1; |
| struct cvmx_rst_soft_rst_s cnf75xx; |
| }; |
| |
| typedef union cvmx_rst_soft_rst cvmx_rst_soft_rst_t; |
| |
| #endif |