18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-or-later */ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * ca91c042.h 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci * Support for the Tundra Universe 1 and Universe II VME bridge chips 68c2ecf20Sopenharmony_ci * 78c2ecf20Sopenharmony_ci * Author: Tom Armistead 88c2ecf20Sopenharmony_ci * Updated by Ajit Prem 98c2ecf20Sopenharmony_ci * Copyright 2004 Motorola Inc. 108c2ecf20Sopenharmony_ci * 118c2ecf20Sopenharmony_ci * Further updated by Martyn Welch <martyn.welch@ge.com> 128c2ecf20Sopenharmony_ci * Copyright 2009 GE Intelligent Platforms Embedded Systems, Inc. 138c2ecf20Sopenharmony_ci * 148c2ecf20Sopenharmony_ci * Derived from ca91c042.h by Michael Wyrick 158c2ecf20Sopenharmony_ci */ 168c2ecf20Sopenharmony_ci 178c2ecf20Sopenharmony_ci#ifndef _CA91CX42_H 188c2ecf20Sopenharmony_ci#define _CA91CX42_H 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ci#ifndef PCI_VENDOR_ID_TUNDRA 218c2ecf20Sopenharmony_ci#define PCI_VENDOR_ID_TUNDRA 0x10e3 228c2ecf20Sopenharmony_ci#endif 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ci#ifndef PCI_DEVICE_ID_TUNDRA_CA91C142 258c2ecf20Sopenharmony_ci#define PCI_DEVICE_ID_TUNDRA_CA91C142 0x0000 268c2ecf20Sopenharmony_ci#endif 278c2ecf20Sopenharmony_ci 288c2ecf20Sopenharmony_ci/* 298c2ecf20Sopenharmony_ci * Define the number of each that the CA91C142 supports. 308c2ecf20Sopenharmony_ci */ 318c2ecf20Sopenharmony_ci#define CA91C142_MAX_MASTER 8 /* Max Master Windows */ 328c2ecf20Sopenharmony_ci#define CA91C142_MAX_SLAVE 8 /* Max Slave Windows */ 338c2ecf20Sopenharmony_ci#define CA91C142_MAX_DMA 1 /* Max DMA Controllers */ 348c2ecf20Sopenharmony_ci#define CA91C142_MAX_MAILBOX 4 /* Max Mail Box registers */ 358c2ecf20Sopenharmony_ci 368c2ecf20Sopenharmony_ci/* Structure used to hold driver specific information */ 378c2ecf20Sopenharmony_cistruct ca91cx42_driver { 388c2ecf20Sopenharmony_ci void __iomem *base; /* Base Address of device registers */ 398c2ecf20Sopenharmony_ci wait_queue_head_t dma_queue; 408c2ecf20Sopenharmony_ci wait_queue_head_t iack_queue; 418c2ecf20Sopenharmony_ci wait_queue_head_t mbox_queue; 428c2ecf20Sopenharmony_ci void (*lm_callback[4])(void *); /* Called in interrupt handler */ 438c2ecf20Sopenharmony_ci void *lm_data[4]; 448c2ecf20Sopenharmony_ci void *crcsr_kernel; 458c2ecf20Sopenharmony_ci dma_addr_t crcsr_bus; 468c2ecf20Sopenharmony_ci struct mutex vme_rmw; /* Only one RMW cycle at a time */ 478c2ecf20Sopenharmony_ci struct mutex vme_int; /* 488c2ecf20Sopenharmony_ci * Only one VME interrupt can be 498c2ecf20Sopenharmony_ci * generated at a time, provide locking 508c2ecf20Sopenharmony_ci */ 518c2ecf20Sopenharmony_ci}; 528c2ecf20Sopenharmony_ci 538c2ecf20Sopenharmony_ci/* See Page 2-77 in the Universe User Manual */ 548c2ecf20Sopenharmony_cistruct ca91cx42_dma_descriptor { 558c2ecf20Sopenharmony_ci unsigned int dctl; /* DMA Control */ 568c2ecf20Sopenharmony_ci unsigned int dtbc; /* Transfer Byte Count */ 578c2ecf20Sopenharmony_ci unsigned int dla; /* PCI Address */ 588c2ecf20Sopenharmony_ci unsigned int res1; /* Reserved */ 598c2ecf20Sopenharmony_ci unsigned int dva; /* Vme Address */ 608c2ecf20Sopenharmony_ci unsigned int res2; /* Reserved */ 618c2ecf20Sopenharmony_ci unsigned int dcpp; /* Pointer to Numed Cmd Packet with rPN */ 628c2ecf20Sopenharmony_ci unsigned int res3; /* Reserved */ 638c2ecf20Sopenharmony_ci}; 648c2ecf20Sopenharmony_ci 658c2ecf20Sopenharmony_cistruct ca91cx42_dma_entry { 668c2ecf20Sopenharmony_ci struct ca91cx42_dma_descriptor descriptor; 678c2ecf20Sopenharmony_ci struct list_head list; 688c2ecf20Sopenharmony_ci}; 698c2ecf20Sopenharmony_ci 708c2ecf20Sopenharmony_ci/* Universe Register Offsets */ 718c2ecf20Sopenharmony_ci/* general PCI configuration registers */ 728c2ecf20Sopenharmony_ci#define CA91CX42_PCI_ID 0x000 738c2ecf20Sopenharmony_ci#define CA91CX42_PCI_CSR 0x004 748c2ecf20Sopenharmony_ci#define CA91CX42_PCI_CLASS 0x008 758c2ecf20Sopenharmony_ci#define CA91CX42_PCI_MISC0 0x00C 768c2ecf20Sopenharmony_ci#define CA91CX42_PCI_BS 0x010 778c2ecf20Sopenharmony_ci#define CA91CX42_PCI_MISC1 0x03C 788c2ecf20Sopenharmony_ci 798c2ecf20Sopenharmony_ci#define LSI0_CTL 0x0100 808c2ecf20Sopenharmony_ci#define LSI0_BS 0x0104 818c2ecf20Sopenharmony_ci#define LSI0_BD 0x0108 828c2ecf20Sopenharmony_ci#define LSI0_TO 0x010C 838c2ecf20Sopenharmony_ci 848c2ecf20Sopenharmony_ci#define LSI1_CTL 0x0114 858c2ecf20Sopenharmony_ci#define LSI1_BS 0x0118 868c2ecf20Sopenharmony_ci#define LSI1_BD 0x011C 878c2ecf20Sopenharmony_ci#define LSI1_TO 0x0120 888c2ecf20Sopenharmony_ci 898c2ecf20Sopenharmony_ci#define LSI2_CTL 0x0128 908c2ecf20Sopenharmony_ci#define LSI2_BS 0x012C 918c2ecf20Sopenharmony_ci#define LSI2_BD 0x0130 928c2ecf20Sopenharmony_ci#define LSI2_TO 0x0134 938c2ecf20Sopenharmony_ci 948c2ecf20Sopenharmony_ci#define LSI3_CTL 0x013C 958c2ecf20Sopenharmony_ci#define LSI3_BS 0x0140 968c2ecf20Sopenharmony_ci#define LSI3_BD 0x0144 978c2ecf20Sopenharmony_ci#define LSI3_TO 0x0148 988c2ecf20Sopenharmony_ci 998c2ecf20Sopenharmony_ci#define LSI4_CTL 0x01A0 1008c2ecf20Sopenharmony_ci#define LSI4_BS 0x01A4 1018c2ecf20Sopenharmony_ci#define LSI4_BD 0x01A8 1028c2ecf20Sopenharmony_ci#define LSI4_TO 0x01AC 1038c2ecf20Sopenharmony_ci 1048c2ecf20Sopenharmony_ci#define LSI5_CTL 0x01B4 1058c2ecf20Sopenharmony_ci#define LSI5_BS 0x01B8 1068c2ecf20Sopenharmony_ci#define LSI5_BD 0x01BC 1078c2ecf20Sopenharmony_ci#define LSI5_TO 0x01C0 1088c2ecf20Sopenharmony_ci 1098c2ecf20Sopenharmony_ci#define LSI6_CTL 0x01C8 1108c2ecf20Sopenharmony_ci#define LSI6_BS 0x01CC 1118c2ecf20Sopenharmony_ci#define LSI6_BD 0x01D0 1128c2ecf20Sopenharmony_ci#define LSI6_TO 0x01D4 1138c2ecf20Sopenharmony_ci 1148c2ecf20Sopenharmony_ci#define LSI7_CTL 0x01DC 1158c2ecf20Sopenharmony_ci#define LSI7_BS 0x01E0 1168c2ecf20Sopenharmony_ci#define LSI7_BD 0x01E4 1178c2ecf20Sopenharmony_ci#define LSI7_TO 0x01E8 1188c2ecf20Sopenharmony_ci 1198c2ecf20Sopenharmony_cistatic const int CA91CX42_LSI_CTL[] = { LSI0_CTL, LSI1_CTL, LSI2_CTL, LSI3_CTL, 1208c2ecf20Sopenharmony_ci LSI4_CTL, LSI5_CTL, LSI6_CTL, LSI7_CTL }; 1218c2ecf20Sopenharmony_ci 1228c2ecf20Sopenharmony_cistatic const int CA91CX42_LSI_BS[] = { LSI0_BS, LSI1_BS, LSI2_BS, LSI3_BS, 1238c2ecf20Sopenharmony_ci LSI4_BS, LSI5_BS, LSI6_BS, LSI7_BS }; 1248c2ecf20Sopenharmony_ci 1258c2ecf20Sopenharmony_cistatic const int CA91CX42_LSI_BD[] = { LSI0_BD, LSI1_BD, LSI2_BD, LSI3_BD, 1268c2ecf20Sopenharmony_ci LSI4_BD, LSI5_BD, LSI6_BD, LSI7_BD }; 1278c2ecf20Sopenharmony_ci 1288c2ecf20Sopenharmony_cistatic const int CA91CX42_LSI_TO[] = { LSI0_TO, LSI1_TO, LSI2_TO, LSI3_TO, 1298c2ecf20Sopenharmony_ci LSI4_TO, LSI5_TO, LSI6_TO, LSI7_TO }; 1308c2ecf20Sopenharmony_ci 1318c2ecf20Sopenharmony_ci#define SCYC_CTL 0x0170 1328c2ecf20Sopenharmony_ci#define SCYC_ADDR 0x0174 1338c2ecf20Sopenharmony_ci#define SCYC_EN 0x0178 1348c2ecf20Sopenharmony_ci#define SCYC_CMP 0x017C 1358c2ecf20Sopenharmony_ci#define SCYC_SWP 0x0180 1368c2ecf20Sopenharmony_ci#define LMISC 0x0184 1378c2ecf20Sopenharmony_ci#define SLSI 0x0188 1388c2ecf20Sopenharmony_ci#define L_CMDERR 0x018C 1398c2ecf20Sopenharmony_ci#define LAERR 0x0190 1408c2ecf20Sopenharmony_ci 1418c2ecf20Sopenharmony_ci#define DCTL 0x0200 1428c2ecf20Sopenharmony_ci#define DTBC 0x0204 1438c2ecf20Sopenharmony_ci#define DLA 0x0208 1448c2ecf20Sopenharmony_ci#define DVA 0x0210 1458c2ecf20Sopenharmony_ci#define DCPP 0x0218 1468c2ecf20Sopenharmony_ci#define DGCS 0x0220 1478c2ecf20Sopenharmony_ci#define D_LLUE 0x0224 1488c2ecf20Sopenharmony_ci 1498c2ecf20Sopenharmony_ci#define LINT_EN 0x0300 1508c2ecf20Sopenharmony_ci#define LINT_STAT 0x0304 1518c2ecf20Sopenharmony_ci#define LINT_MAP0 0x0308 1528c2ecf20Sopenharmony_ci#define LINT_MAP1 0x030C 1538c2ecf20Sopenharmony_ci#define VINT_EN 0x0310 1548c2ecf20Sopenharmony_ci#define VINT_STAT 0x0314 1558c2ecf20Sopenharmony_ci#define VINT_MAP0 0x0318 1568c2ecf20Sopenharmony_ci#define VINT_MAP1 0x031C 1578c2ecf20Sopenharmony_ci#define STATID 0x0320 1588c2ecf20Sopenharmony_ci 1598c2ecf20Sopenharmony_ci#define V1_STATID 0x0324 1608c2ecf20Sopenharmony_ci#define V2_STATID 0x0328 1618c2ecf20Sopenharmony_ci#define V3_STATID 0x032C 1628c2ecf20Sopenharmony_ci#define V4_STATID 0x0330 1638c2ecf20Sopenharmony_ci#define V5_STATID 0x0334 1648c2ecf20Sopenharmony_ci#define V6_STATID 0x0338 1658c2ecf20Sopenharmony_ci#define V7_STATID 0x033C 1668c2ecf20Sopenharmony_ci 1678c2ecf20Sopenharmony_cistatic const int CA91CX42_V_STATID[8] = { 0, V1_STATID, V2_STATID, V3_STATID, 1688c2ecf20Sopenharmony_ci V4_STATID, V5_STATID, V6_STATID, 1698c2ecf20Sopenharmony_ci V7_STATID }; 1708c2ecf20Sopenharmony_ci 1718c2ecf20Sopenharmony_ci#define LINT_MAP2 0x0340 1728c2ecf20Sopenharmony_ci#define VINT_MAP2 0x0344 1738c2ecf20Sopenharmony_ci 1748c2ecf20Sopenharmony_ci#define MBOX0 0x0348 1758c2ecf20Sopenharmony_ci#define MBOX1 0x034C 1768c2ecf20Sopenharmony_ci#define MBOX2 0x0350 1778c2ecf20Sopenharmony_ci#define MBOX3 0x0354 1788c2ecf20Sopenharmony_ci#define SEMA0 0x0358 1798c2ecf20Sopenharmony_ci#define SEMA1 0x035C 1808c2ecf20Sopenharmony_ci 1818c2ecf20Sopenharmony_ci#define MAST_CTL 0x0400 1828c2ecf20Sopenharmony_ci#define MISC_CTL 0x0404 1838c2ecf20Sopenharmony_ci#define MISC_STAT 0x0408 1848c2ecf20Sopenharmony_ci#define USER_AM 0x040C 1858c2ecf20Sopenharmony_ci 1868c2ecf20Sopenharmony_ci#define VSI0_CTL 0x0F00 1878c2ecf20Sopenharmony_ci#define VSI0_BS 0x0F04 1888c2ecf20Sopenharmony_ci#define VSI0_BD 0x0F08 1898c2ecf20Sopenharmony_ci#define VSI0_TO 0x0F0C 1908c2ecf20Sopenharmony_ci 1918c2ecf20Sopenharmony_ci#define VSI1_CTL 0x0F14 1928c2ecf20Sopenharmony_ci#define VSI1_BS 0x0F18 1938c2ecf20Sopenharmony_ci#define VSI1_BD 0x0F1C 1948c2ecf20Sopenharmony_ci#define VSI1_TO 0x0F20 1958c2ecf20Sopenharmony_ci 1968c2ecf20Sopenharmony_ci#define VSI2_CTL 0x0F28 1978c2ecf20Sopenharmony_ci#define VSI2_BS 0x0F2C 1988c2ecf20Sopenharmony_ci#define VSI2_BD 0x0F30 1998c2ecf20Sopenharmony_ci#define VSI2_TO 0x0F34 2008c2ecf20Sopenharmony_ci 2018c2ecf20Sopenharmony_ci#define VSI3_CTL 0x0F3C 2028c2ecf20Sopenharmony_ci#define VSI3_BS 0x0F40 2038c2ecf20Sopenharmony_ci#define VSI3_BD 0x0F44 2048c2ecf20Sopenharmony_ci#define VSI3_TO 0x0F48 2058c2ecf20Sopenharmony_ci 2068c2ecf20Sopenharmony_ci#define LM_CTL 0x0F64 2078c2ecf20Sopenharmony_ci#define LM_BS 0x0F68 2088c2ecf20Sopenharmony_ci 2098c2ecf20Sopenharmony_ci#define VRAI_CTL 0x0F70 2108c2ecf20Sopenharmony_ci 2118c2ecf20Sopenharmony_ci#define VRAI_BS 0x0F74 2128c2ecf20Sopenharmony_ci#define VCSR_CTL 0x0F80 2138c2ecf20Sopenharmony_ci#define VCSR_TO 0x0F84 2148c2ecf20Sopenharmony_ci#define V_AMERR 0x0F88 2158c2ecf20Sopenharmony_ci#define VAERR 0x0F8C 2168c2ecf20Sopenharmony_ci 2178c2ecf20Sopenharmony_ci#define VSI4_CTL 0x0F90 2188c2ecf20Sopenharmony_ci#define VSI4_BS 0x0F94 2198c2ecf20Sopenharmony_ci#define VSI4_BD 0x0F98 2208c2ecf20Sopenharmony_ci#define VSI4_TO 0x0F9C 2218c2ecf20Sopenharmony_ci 2228c2ecf20Sopenharmony_ci#define VSI5_CTL 0x0FA4 2238c2ecf20Sopenharmony_ci#define VSI5_BS 0x0FA8 2248c2ecf20Sopenharmony_ci#define VSI5_BD 0x0FAC 2258c2ecf20Sopenharmony_ci#define VSI5_TO 0x0FB0 2268c2ecf20Sopenharmony_ci 2278c2ecf20Sopenharmony_ci#define VSI6_CTL 0x0FB8 2288c2ecf20Sopenharmony_ci#define VSI6_BS 0x0FBC 2298c2ecf20Sopenharmony_ci#define VSI6_BD 0x0FC0 2308c2ecf20Sopenharmony_ci#define VSI6_TO 0x0FC4 2318c2ecf20Sopenharmony_ci 2328c2ecf20Sopenharmony_ci#define VSI7_CTL 0x0FCC 2338c2ecf20Sopenharmony_ci#define VSI7_BS 0x0FD0 2348c2ecf20Sopenharmony_ci#define VSI7_BD 0x0FD4 2358c2ecf20Sopenharmony_ci#define VSI7_TO 0x0FD8 2368c2ecf20Sopenharmony_ci 2378c2ecf20Sopenharmony_cistatic const int CA91CX42_VSI_CTL[] = { VSI0_CTL, VSI1_CTL, VSI2_CTL, VSI3_CTL, 2388c2ecf20Sopenharmony_ci VSI4_CTL, VSI5_CTL, VSI6_CTL, VSI7_CTL }; 2398c2ecf20Sopenharmony_ci 2408c2ecf20Sopenharmony_cistatic const int CA91CX42_VSI_BS[] = { VSI0_BS, VSI1_BS, VSI2_BS, VSI3_BS, 2418c2ecf20Sopenharmony_ci VSI4_BS, VSI5_BS, VSI6_BS, VSI7_BS }; 2428c2ecf20Sopenharmony_ci 2438c2ecf20Sopenharmony_cistatic const int CA91CX42_VSI_BD[] = { VSI0_BD, VSI1_BD, VSI2_BD, VSI3_BD, 2448c2ecf20Sopenharmony_ci VSI4_BD, VSI5_BD, VSI6_BD, VSI7_BD }; 2458c2ecf20Sopenharmony_ci 2468c2ecf20Sopenharmony_cistatic const int CA91CX42_VSI_TO[] = { VSI0_TO, VSI1_TO, VSI2_TO, VSI3_TO, 2478c2ecf20Sopenharmony_ci VSI4_TO, VSI5_TO, VSI6_TO, VSI7_TO }; 2488c2ecf20Sopenharmony_ci 2498c2ecf20Sopenharmony_ci#define VCSR_CLR 0x0FF4 2508c2ecf20Sopenharmony_ci#define VCSR_SET 0x0FF8 2518c2ecf20Sopenharmony_ci#define VCSR_BS 0x0FFC 2528c2ecf20Sopenharmony_ci 2538c2ecf20Sopenharmony_ci/* 2548c2ecf20Sopenharmony_ci * PCI Class Register 2558c2ecf20Sopenharmony_ci * offset 008 2568c2ecf20Sopenharmony_ci */ 2578c2ecf20Sopenharmony_ci#define CA91CX42_BM_PCI_CLASS_BASE 0xFF000000 2588c2ecf20Sopenharmony_ci#define CA91CX42_OF_PCI_CLASS_BASE 24 2598c2ecf20Sopenharmony_ci#define CA91CX42_BM_PCI_CLASS_SUB 0x00FF0000 2608c2ecf20Sopenharmony_ci#define CA91CX42_OF_PCI_CLASS_SUB 16 2618c2ecf20Sopenharmony_ci#define CA91CX42_BM_PCI_CLASS_PROG 0x0000FF00 2628c2ecf20Sopenharmony_ci#define CA91CX42_OF_PCI_CLASS_PROG 8 2638c2ecf20Sopenharmony_ci#define CA91CX42_BM_PCI_CLASS_RID 0x000000FF 2648c2ecf20Sopenharmony_ci#define CA91CX42_OF_PCI_CLASS_RID 0 2658c2ecf20Sopenharmony_ci 2668c2ecf20Sopenharmony_ci#define CA91CX42_OF_PCI_CLASS_RID_UNIVERSE_I 0 2678c2ecf20Sopenharmony_ci#define CA91CX42_OF_PCI_CLASS_RID_UNIVERSE_II 1 2688c2ecf20Sopenharmony_ci 2698c2ecf20Sopenharmony_ci/* 2708c2ecf20Sopenharmony_ci * PCI Misc Register 2718c2ecf20Sopenharmony_ci * offset 00C 2728c2ecf20Sopenharmony_ci */ 2738c2ecf20Sopenharmony_ci#define CA91CX42_BM_PCI_MISC0_BISTC 0x80000000 2748c2ecf20Sopenharmony_ci#define CA91CX42_BM_PCI_MISC0_SBIST 0x60000000 2758c2ecf20Sopenharmony_ci#define CA91CX42_BM_PCI_MISC0_CCODE 0x0F000000 2768c2ecf20Sopenharmony_ci#define CA91CX42_BM_PCI_MISC0_MFUNCT 0x00800000 2778c2ecf20Sopenharmony_ci#define CA91CX42_BM_PCI_MISC0_LAYOUT 0x007F0000 2788c2ecf20Sopenharmony_ci#define CA91CX42_BM_PCI_MISC0_LTIMER 0x0000FF00 2798c2ecf20Sopenharmony_ci#define CA91CX42_OF_PCI_MISC0_LTIMER 8 2808c2ecf20Sopenharmony_ci 2818c2ecf20Sopenharmony_ci 2828c2ecf20Sopenharmony_ci/* 2838c2ecf20Sopenharmony_ci * LSI Control Register 2848c2ecf20Sopenharmony_ci * offset 100 2858c2ecf20Sopenharmony_ci */ 2868c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_EN (1<<31) 2878c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_PWEN (1<<30) 2888c2ecf20Sopenharmony_ci 2898c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_VDW_M (3<<22) 2908c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_VDW_D8 0 2918c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_VDW_D16 (1<<22) 2928c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_VDW_D32 (1<<23) 2938c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_VDW_D64 (3<<22) 2948c2ecf20Sopenharmony_ci 2958c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_VAS_M (7<<16) 2968c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_VAS_A16 0 2978c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_VAS_A24 (1<<16) 2988c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_VAS_A32 (1<<17) 2998c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_VAS_CRCSR (5<<16) 3008c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_VAS_USER1 (3<<17) 3018c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_VAS_USER2 (7<<16) 3028c2ecf20Sopenharmony_ci 3038c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_PGM_M (1<<14) 3048c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_PGM_DATA 0 3058c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_PGM_PGM (1<<14) 3068c2ecf20Sopenharmony_ci 3078c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_SUPER_M (1<<12) 3088c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_SUPER_NPRIV 0 3098c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_SUPER_SUPR (1<<12) 3108c2ecf20Sopenharmony_ci 3118c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_VCT_M (1<<8) 3128c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_VCT_BLT (1<<8) 3138c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_VCT_MBLT (1<<8) 3148c2ecf20Sopenharmony_ci#define CA91CX42_LSI_CTL_LAS (1<<0) 3158c2ecf20Sopenharmony_ci 3168c2ecf20Sopenharmony_ci/* 3178c2ecf20Sopenharmony_ci * SCYC_CTL Register 3188c2ecf20Sopenharmony_ci * offset 178 3198c2ecf20Sopenharmony_ci */ 3208c2ecf20Sopenharmony_ci#define CA91CX42_SCYC_CTL_LAS_PCIMEM 0 3218c2ecf20Sopenharmony_ci#define CA91CX42_SCYC_CTL_LAS_PCIIO (1<<2) 3228c2ecf20Sopenharmony_ci 3238c2ecf20Sopenharmony_ci#define CA91CX42_SCYC_CTL_CYC_M (3<<0) 3248c2ecf20Sopenharmony_ci#define CA91CX42_SCYC_CTL_CYC_RMW (1<<0) 3258c2ecf20Sopenharmony_ci#define CA91CX42_SCYC_CTL_CYC_ADOH (1<<1) 3268c2ecf20Sopenharmony_ci 3278c2ecf20Sopenharmony_ci/* 3288c2ecf20Sopenharmony_ci * LMISC Register 3298c2ecf20Sopenharmony_ci * offset 184 3308c2ecf20Sopenharmony_ci */ 3318c2ecf20Sopenharmony_ci#define CA91CX42_BM_LMISC_CRT 0xF0000000 3328c2ecf20Sopenharmony_ci#define CA91CX42_OF_LMISC_CRT 28 3338c2ecf20Sopenharmony_ci#define CA91CX42_BM_LMISC_CWT 0x0F000000 3348c2ecf20Sopenharmony_ci#define CA91CX42_OF_LMISC_CWT 24 3358c2ecf20Sopenharmony_ci 3368c2ecf20Sopenharmony_ci/* 3378c2ecf20Sopenharmony_ci * SLSI Register 3388c2ecf20Sopenharmony_ci * offset 188 3398c2ecf20Sopenharmony_ci */ 3408c2ecf20Sopenharmony_ci#define CA91CX42_BM_SLSI_EN 0x80000000 3418c2ecf20Sopenharmony_ci#define CA91CX42_BM_SLSI_PWEN 0x40000000 3428c2ecf20Sopenharmony_ci#define CA91CX42_BM_SLSI_VDW 0x00F00000 3438c2ecf20Sopenharmony_ci#define CA91CX42_OF_SLSI_VDW 20 3448c2ecf20Sopenharmony_ci#define CA91CX42_BM_SLSI_PGM 0x0000F000 3458c2ecf20Sopenharmony_ci#define CA91CX42_OF_SLSI_PGM 12 3468c2ecf20Sopenharmony_ci#define CA91CX42_BM_SLSI_SUPER 0x00000F00 3478c2ecf20Sopenharmony_ci#define CA91CX42_OF_SLSI_SUPER 8 3488c2ecf20Sopenharmony_ci#define CA91CX42_BM_SLSI_BS 0x000000F6 3498c2ecf20Sopenharmony_ci#define CA91CX42_OF_SLSI_BS 2 3508c2ecf20Sopenharmony_ci#define CA91CX42_BM_SLSI_LAS 0x00000003 3518c2ecf20Sopenharmony_ci#define CA91CX42_OF_SLSI_LAS 0 3528c2ecf20Sopenharmony_ci#define CA91CX42_BM_SLSI_RESERVED 0x3F0F0000 3538c2ecf20Sopenharmony_ci 3548c2ecf20Sopenharmony_ci/* 3558c2ecf20Sopenharmony_ci * DCTL Register 3568c2ecf20Sopenharmony_ci * offset 200 3578c2ecf20Sopenharmony_ci */ 3588c2ecf20Sopenharmony_ci#define CA91CX42_DCTL_L2V (1<<31) 3598c2ecf20Sopenharmony_ci#define CA91CX42_DCTL_VDW_M (3<<22) 3608c2ecf20Sopenharmony_ci#define CA91CX42_DCTL_VDW_D8 0 3618c2ecf20Sopenharmony_ci#define CA91CX42_DCTL_VDW_D16 (1<<22) 3628c2ecf20Sopenharmony_ci#define CA91CX42_DCTL_VDW_D32 (1<<23) 3638c2ecf20Sopenharmony_ci#define CA91CX42_DCTL_VDW_D64 (3<<22) 3648c2ecf20Sopenharmony_ci 3658c2ecf20Sopenharmony_ci#define CA91CX42_DCTL_VAS_M (7<<16) 3668c2ecf20Sopenharmony_ci#define CA91CX42_DCTL_VAS_A16 0 3678c2ecf20Sopenharmony_ci#define CA91CX42_DCTL_VAS_A24 (1<<16) 3688c2ecf20Sopenharmony_ci#define CA91CX42_DCTL_VAS_A32 (1<<17) 3698c2ecf20Sopenharmony_ci#define CA91CX42_DCTL_VAS_USER1 (3<<17) 3708c2ecf20Sopenharmony_ci#define CA91CX42_DCTL_VAS_USER2 (7<<16) 3718c2ecf20Sopenharmony_ci 3728c2ecf20Sopenharmony_ci#define CA91CX42_DCTL_PGM_M (1<<14) 3738c2ecf20Sopenharmony_ci#define CA91CX42_DCTL_PGM_DATA 0 3748c2ecf20Sopenharmony_ci#define CA91CX42_DCTL_PGM_PGM (1<<14) 3758c2ecf20Sopenharmony_ci 3768c2ecf20Sopenharmony_ci#define CA91CX42_DCTL_SUPER_M (1<<12) 3778c2ecf20Sopenharmony_ci#define CA91CX42_DCTL_SUPER_NPRIV 0 3788c2ecf20Sopenharmony_ci#define CA91CX42_DCTL_SUPER_SUPR (1<<12) 3798c2ecf20Sopenharmony_ci 3808c2ecf20Sopenharmony_ci#define CA91CX42_DCTL_VCT_M (1<<8) 3818c2ecf20Sopenharmony_ci#define CA91CX42_DCTL_VCT_BLT (1<<8) 3828c2ecf20Sopenharmony_ci#define CA91CX42_DCTL_LD64EN (1<<7) 3838c2ecf20Sopenharmony_ci 3848c2ecf20Sopenharmony_ci/* 3858c2ecf20Sopenharmony_ci * DCPP Register 3868c2ecf20Sopenharmony_ci * offset 218 3878c2ecf20Sopenharmony_ci */ 3888c2ecf20Sopenharmony_ci#define CA91CX42_DCPP_M 0xf 3898c2ecf20Sopenharmony_ci#define CA91CX42_DCPP_NULL (1<<0) 3908c2ecf20Sopenharmony_ci 3918c2ecf20Sopenharmony_ci/* 3928c2ecf20Sopenharmony_ci * DMA General Control/Status Register (DGCS) 3938c2ecf20Sopenharmony_ci * offset 220 3948c2ecf20Sopenharmony_ci */ 3958c2ecf20Sopenharmony_ci#define CA91CX42_DGCS_GO (1<<31) 3968c2ecf20Sopenharmony_ci#define CA91CX42_DGCS_STOP_REQ (1<<30) 3978c2ecf20Sopenharmony_ci#define CA91CX42_DGCS_HALT_REQ (1<<29) 3988c2ecf20Sopenharmony_ci#define CA91CX42_DGCS_CHAIN (1<<27) 3998c2ecf20Sopenharmony_ci 4008c2ecf20Sopenharmony_ci#define CA91CX42_DGCS_VON_M (7<<20) 4018c2ecf20Sopenharmony_ci 4028c2ecf20Sopenharmony_ci#define CA91CX42_DGCS_VOFF_M (0xf<<16) 4038c2ecf20Sopenharmony_ci 4048c2ecf20Sopenharmony_ci#define CA91CX42_DGCS_ACT (1<<15) 4058c2ecf20Sopenharmony_ci#define CA91CX42_DGCS_STOP (1<<14) 4068c2ecf20Sopenharmony_ci#define CA91CX42_DGCS_HALT (1<<13) 4078c2ecf20Sopenharmony_ci#define CA91CX42_DGCS_DONE (1<<11) 4088c2ecf20Sopenharmony_ci#define CA91CX42_DGCS_LERR (1<<10) 4098c2ecf20Sopenharmony_ci#define CA91CX42_DGCS_VERR (1<<9) 4108c2ecf20Sopenharmony_ci#define CA91CX42_DGCS_PERR (1<<8) 4118c2ecf20Sopenharmony_ci#define CA91CX42_DGCS_INT_STOP (1<<6) 4128c2ecf20Sopenharmony_ci#define CA91CX42_DGCS_INT_HALT (1<<5) 4138c2ecf20Sopenharmony_ci#define CA91CX42_DGCS_INT_DONE (1<<3) 4148c2ecf20Sopenharmony_ci#define CA91CX42_DGCS_INT_LERR (1<<2) 4158c2ecf20Sopenharmony_ci#define CA91CX42_DGCS_INT_VERR (1<<1) 4168c2ecf20Sopenharmony_ci#define CA91CX42_DGCS_INT_PERR (1<<0) 4178c2ecf20Sopenharmony_ci 4188c2ecf20Sopenharmony_ci/* 4198c2ecf20Sopenharmony_ci * PCI Interrupt Enable Register 4208c2ecf20Sopenharmony_ci * offset 300 4218c2ecf20Sopenharmony_ci */ 4228c2ecf20Sopenharmony_ci#define CA91CX42_LINT_LM3 0x00800000 4238c2ecf20Sopenharmony_ci#define CA91CX42_LINT_LM2 0x00400000 4248c2ecf20Sopenharmony_ci#define CA91CX42_LINT_LM1 0x00200000 4258c2ecf20Sopenharmony_ci#define CA91CX42_LINT_LM0 0x00100000 4268c2ecf20Sopenharmony_ci#define CA91CX42_LINT_MBOX3 0x00080000 4278c2ecf20Sopenharmony_ci#define CA91CX42_LINT_MBOX2 0x00040000 4288c2ecf20Sopenharmony_ci#define CA91CX42_LINT_MBOX1 0x00020000 4298c2ecf20Sopenharmony_ci#define CA91CX42_LINT_MBOX0 0x00010000 4308c2ecf20Sopenharmony_ci#define CA91CX42_LINT_ACFAIL 0x00008000 4318c2ecf20Sopenharmony_ci#define CA91CX42_LINT_SYSFAIL 0x00004000 4328c2ecf20Sopenharmony_ci#define CA91CX42_LINT_SW_INT 0x00002000 4338c2ecf20Sopenharmony_ci#define CA91CX42_LINT_SW_IACK 0x00001000 4348c2ecf20Sopenharmony_ci 4358c2ecf20Sopenharmony_ci#define CA91CX42_LINT_VERR 0x00000400 4368c2ecf20Sopenharmony_ci#define CA91CX42_LINT_LERR 0x00000200 4378c2ecf20Sopenharmony_ci#define CA91CX42_LINT_DMA 0x00000100 4388c2ecf20Sopenharmony_ci#define CA91CX42_LINT_VIRQ7 0x00000080 4398c2ecf20Sopenharmony_ci#define CA91CX42_LINT_VIRQ6 0x00000040 4408c2ecf20Sopenharmony_ci#define CA91CX42_LINT_VIRQ5 0x00000020 4418c2ecf20Sopenharmony_ci#define CA91CX42_LINT_VIRQ4 0x00000010 4428c2ecf20Sopenharmony_ci#define CA91CX42_LINT_VIRQ3 0x00000008 4438c2ecf20Sopenharmony_ci#define CA91CX42_LINT_VIRQ2 0x00000004 4448c2ecf20Sopenharmony_ci#define CA91CX42_LINT_VIRQ1 0x00000002 4458c2ecf20Sopenharmony_ci#define CA91CX42_LINT_VOWN 0x00000001 4468c2ecf20Sopenharmony_ci 4478c2ecf20Sopenharmony_cistatic const int CA91CX42_LINT_VIRQ[] = { 0, CA91CX42_LINT_VIRQ1, 4488c2ecf20Sopenharmony_ci CA91CX42_LINT_VIRQ2, CA91CX42_LINT_VIRQ3, 4498c2ecf20Sopenharmony_ci CA91CX42_LINT_VIRQ4, CA91CX42_LINT_VIRQ5, 4508c2ecf20Sopenharmony_ci CA91CX42_LINT_VIRQ6, CA91CX42_LINT_VIRQ7 }; 4518c2ecf20Sopenharmony_ci 4528c2ecf20Sopenharmony_ci#define CA91CX42_LINT_MBOX 0x000F0000 4538c2ecf20Sopenharmony_ci 4548c2ecf20Sopenharmony_cistatic const int CA91CX42_LINT_LM[] = { CA91CX42_LINT_LM0, CA91CX42_LINT_LM1, 4558c2ecf20Sopenharmony_ci CA91CX42_LINT_LM2, CA91CX42_LINT_LM3 }; 4568c2ecf20Sopenharmony_ci 4578c2ecf20Sopenharmony_ci/* 4588c2ecf20Sopenharmony_ci * MAST_CTL Register 4598c2ecf20Sopenharmony_ci * offset 400 4608c2ecf20Sopenharmony_ci */ 4618c2ecf20Sopenharmony_ci#define CA91CX42_BM_MAST_CTL_MAXRTRY 0xF0000000 4628c2ecf20Sopenharmony_ci#define CA91CX42_OF_MAST_CTL_MAXRTRY 28 4638c2ecf20Sopenharmony_ci#define CA91CX42_BM_MAST_CTL_PWON 0x0F000000 4648c2ecf20Sopenharmony_ci#define CA91CX42_OF_MAST_CTL_PWON 24 4658c2ecf20Sopenharmony_ci#define CA91CX42_BM_MAST_CTL_VRL 0x00C00000 4668c2ecf20Sopenharmony_ci#define CA91CX42_OF_MAST_CTL_VRL 22 4678c2ecf20Sopenharmony_ci#define CA91CX42_BM_MAST_CTL_VRM 0x00200000 4688c2ecf20Sopenharmony_ci#define CA91CX42_BM_MAST_CTL_VREL 0x00100000 4698c2ecf20Sopenharmony_ci#define CA91CX42_BM_MAST_CTL_VOWN 0x00080000 4708c2ecf20Sopenharmony_ci#define CA91CX42_BM_MAST_CTL_VOWN_ACK 0x00040000 4718c2ecf20Sopenharmony_ci#define CA91CX42_BM_MAST_CTL_PABS 0x00001000 4728c2ecf20Sopenharmony_ci#define CA91CX42_BM_MAST_CTL_BUS_NO 0x0000000F 4738c2ecf20Sopenharmony_ci#define CA91CX42_OF_MAST_CTL_BUS_NO 0 4748c2ecf20Sopenharmony_ci 4758c2ecf20Sopenharmony_ci/* 4768c2ecf20Sopenharmony_ci * MISC_CTL Register 4778c2ecf20Sopenharmony_ci * offset 404 4788c2ecf20Sopenharmony_ci */ 4798c2ecf20Sopenharmony_ci#define CA91CX42_MISC_CTL_VBTO 0xF0000000 4808c2ecf20Sopenharmony_ci#define CA91CX42_MISC_CTL_VARB 0x04000000 4818c2ecf20Sopenharmony_ci#define CA91CX42_MISC_CTL_VARBTO 0x03000000 4828c2ecf20Sopenharmony_ci#define CA91CX42_MISC_CTL_SW_LRST 0x00800000 4838c2ecf20Sopenharmony_ci#define CA91CX42_MISC_CTL_SW_SRST 0x00400000 4848c2ecf20Sopenharmony_ci#define CA91CX42_MISC_CTL_BI 0x00100000 4858c2ecf20Sopenharmony_ci#define CA91CX42_MISC_CTL_ENGBI 0x00080000 4868c2ecf20Sopenharmony_ci#define CA91CX42_MISC_CTL_RESCIND 0x00040000 4878c2ecf20Sopenharmony_ci#define CA91CX42_MISC_CTL_SYSCON 0x00020000 4888c2ecf20Sopenharmony_ci#define CA91CX42_MISC_CTL_V64AUTO 0x00010000 4898c2ecf20Sopenharmony_ci#define CA91CX42_MISC_CTL_RESERVED 0x0820FFFF 4908c2ecf20Sopenharmony_ci 4918c2ecf20Sopenharmony_ci#define CA91CX42_OF_MISC_CTL_VARBTO 24 4928c2ecf20Sopenharmony_ci#define CA91CX42_OF_MISC_CTL_VBTO 28 4938c2ecf20Sopenharmony_ci 4948c2ecf20Sopenharmony_ci/* 4958c2ecf20Sopenharmony_ci * MISC_STAT Register 4968c2ecf20Sopenharmony_ci * offset 408 4978c2ecf20Sopenharmony_ci */ 4988c2ecf20Sopenharmony_ci#define CA91CX42_BM_MISC_STAT_ENDIAN 0x80000000 4998c2ecf20Sopenharmony_ci#define CA91CX42_BM_MISC_STAT_LCLSIZE 0x40000000 5008c2ecf20Sopenharmony_ci#define CA91CX42_BM_MISC_STAT_DY4AUTO 0x08000000 5018c2ecf20Sopenharmony_ci#define CA91CX42_BM_MISC_STAT_MYBBSY 0x00200000 5028c2ecf20Sopenharmony_ci#define CA91CX42_BM_MISC_STAT_DY4DONE 0x00080000 5038c2ecf20Sopenharmony_ci#define CA91CX42_BM_MISC_STAT_TXFE 0x00040000 5048c2ecf20Sopenharmony_ci#define CA91CX42_BM_MISC_STAT_RXFE 0x00020000 5058c2ecf20Sopenharmony_ci#define CA91CX42_BM_MISC_STAT_DY4AUTOID 0x0000FF00 5068c2ecf20Sopenharmony_ci#define CA91CX42_OF_MISC_STAT_DY4AUTOID 8 5078c2ecf20Sopenharmony_ci 5088c2ecf20Sopenharmony_ci/* 5098c2ecf20Sopenharmony_ci * VSI Control Register 5108c2ecf20Sopenharmony_ci * offset F00 5118c2ecf20Sopenharmony_ci */ 5128c2ecf20Sopenharmony_ci#define CA91CX42_VSI_CTL_EN (1<<31) 5138c2ecf20Sopenharmony_ci#define CA91CX42_VSI_CTL_PWEN (1<<30) 5148c2ecf20Sopenharmony_ci#define CA91CX42_VSI_CTL_PREN (1<<29) 5158c2ecf20Sopenharmony_ci 5168c2ecf20Sopenharmony_ci#define CA91CX42_VSI_CTL_PGM_M (3<<22) 5178c2ecf20Sopenharmony_ci#define CA91CX42_VSI_CTL_PGM_DATA (1<<22) 5188c2ecf20Sopenharmony_ci#define CA91CX42_VSI_CTL_PGM_PGM (1<<23) 5198c2ecf20Sopenharmony_ci 5208c2ecf20Sopenharmony_ci#define CA91CX42_VSI_CTL_SUPER_M (3<<20) 5218c2ecf20Sopenharmony_ci#define CA91CX42_VSI_CTL_SUPER_NPRIV (1<<20) 5228c2ecf20Sopenharmony_ci#define CA91CX42_VSI_CTL_SUPER_SUPR (1<<21) 5238c2ecf20Sopenharmony_ci 5248c2ecf20Sopenharmony_ci#define CA91CX42_VSI_CTL_VAS_M (7<<16) 5258c2ecf20Sopenharmony_ci#define CA91CX42_VSI_CTL_VAS_A16 0 5268c2ecf20Sopenharmony_ci#define CA91CX42_VSI_CTL_VAS_A24 (1<<16) 5278c2ecf20Sopenharmony_ci#define CA91CX42_VSI_CTL_VAS_A32 (1<<17) 5288c2ecf20Sopenharmony_ci#define CA91CX42_VSI_CTL_VAS_USER1 (3<<17) 5298c2ecf20Sopenharmony_ci#define CA91CX42_VSI_CTL_VAS_USER2 (7<<16) 5308c2ecf20Sopenharmony_ci 5318c2ecf20Sopenharmony_ci#define CA91CX42_VSI_CTL_LD64EN (1<<7) 5328c2ecf20Sopenharmony_ci#define CA91CX42_VSI_CTL_LLRMW (1<<6) 5338c2ecf20Sopenharmony_ci 5348c2ecf20Sopenharmony_ci#define CA91CX42_VSI_CTL_LAS_M (3<<0) 5358c2ecf20Sopenharmony_ci#define CA91CX42_VSI_CTL_LAS_PCI_MS 0 5368c2ecf20Sopenharmony_ci#define CA91CX42_VSI_CTL_LAS_PCI_IO (1<<0) 5378c2ecf20Sopenharmony_ci#define CA91CX42_VSI_CTL_LAS_PCI_CONF (1<<1) 5388c2ecf20Sopenharmony_ci 5398c2ecf20Sopenharmony_ci/* LM_CTL Register 5408c2ecf20Sopenharmony_ci * offset F64 5418c2ecf20Sopenharmony_ci */ 5428c2ecf20Sopenharmony_ci#define CA91CX42_LM_CTL_EN (1<<31) 5438c2ecf20Sopenharmony_ci#define CA91CX42_LM_CTL_PGM (1<<23) 5448c2ecf20Sopenharmony_ci#define CA91CX42_LM_CTL_DATA (1<<22) 5458c2ecf20Sopenharmony_ci#define CA91CX42_LM_CTL_SUPR (1<<21) 5468c2ecf20Sopenharmony_ci#define CA91CX42_LM_CTL_NPRIV (1<<20) 5478c2ecf20Sopenharmony_ci#define CA91CX42_LM_CTL_AS_M (7<<16) 5488c2ecf20Sopenharmony_ci#define CA91CX42_LM_CTL_AS_A16 0 5498c2ecf20Sopenharmony_ci#define CA91CX42_LM_CTL_AS_A24 (1<<16) 5508c2ecf20Sopenharmony_ci#define CA91CX42_LM_CTL_AS_A32 (1<<17) 5518c2ecf20Sopenharmony_ci 5528c2ecf20Sopenharmony_ci/* 5538c2ecf20Sopenharmony_ci * VRAI_CTL Register 5548c2ecf20Sopenharmony_ci * offset F70 5558c2ecf20Sopenharmony_ci */ 5568c2ecf20Sopenharmony_ci#define CA91CX42_BM_VRAI_CTL_EN 0x80000000 5578c2ecf20Sopenharmony_ci#define CA91CX42_BM_VRAI_CTL_PGM 0x00C00000 5588c2ecf20Sopenharmony_ci#define CA91CX42_OF_VRAI_CTL_PGM 22 5598c2ecf20Sopenharmony_ci#define CA91CX42_BM_VRAI_CTL_SUPER 0x00300000 5608c2ecf20Sopenharmony_ci#define CA91CX42_OF_VRAI_CTL_SUPER 20 5618c2ecf20Sopenharmony_ci#define CA91CX42_BM_VRAI_CTL_VAS 0x00030000 5628c2ecf20Sopenharmony_ci#define CA91CX42_OF_VRAI_CTL_VAS 16 5638c2ecf20Sopenharmony_ci 5648c2ecf20Sopenharmony_ci/* VCSR_CTL Register 5658c2ecf20Sopenharmony_ci * offset F80 5668c2ecf20Sopenharmony_ci */ 5678c2ecf20Sopenharmony_ci#define CA91CX42_VCSR_CTL_EN (1<<31) 5688c2ecf20Sopenharmony_ci 5698c2ecf20Sopenharmony_ci#define CA91CX42_VCSR_CTL_LAS_M (3<<0) 5708c2ecf20Sopenharmony_ci#define CA91CX42_VCSR_CTL_LAS_PCI_MS 0 5718c2ecf20Sopenharmony_ci#define CA91CX42_VCSR_CTL_LAS_PCI_IO (1<<0) 5728c2ecf20Sopenharmony_ci#define CA91CX42_VCSR_CTL_LAS_PCI_CONF (1<<1) 5738c2ecf20Sopenharmony_ci 5748c2ecf20Sopenharmony_ci/* VCSR_BS Register 5758c2ecf20Sopenharmony_ci * offset FFC 5768c2ecf20Sopenharmony_ci */ 5778c2ecf20Sopenharmony_ci#define CA91CX42_VCSR_BS_SLOT_M (0x1F<<27) 5788c2ecf20Sopenharmony_ci 5798c2ecf20Sopenharmony_ci#endif /* _CA91CX42_H */ 580