1 /* SPDX-License-Identifier: GPL-2.0 */ 2 3 /*************************************************************************** 4 * Header for amcc5920 pci chip 5 * 6 * copyright : (C) 2002 by Frank Mori Hess 7 ***************************************************************************/ 8 9 // plx pci chip registers and bits 10 enum amcc_registers { 11 AMCC_INTCS_REG = 0x38, 12 AMCC_PASS_THRU_REG = 0x60, 13 }; 14 15 enum amcc_incsr_bits { 16 AMCC_ADDON_INTR_ENABLE_BIT = 0x2000, 17 AMCC_ADDON_INTR_ACTIVE_BIT = 0x400000, 18 AMCC_INTR_ACTIVE_BIT = 0x800000, 19 }; 20 21 static const int bits_per_region = 8; 22 23 static inline uint32_t amcc_wait_state_bits(unsigned int region, unsigned int num_wait_states) 24 { 25 return (num_wait_states & 0x7) << (-region * bits_per_region); 26 }; 27 28 enum amcc_prefetch_bits { 29 PREFETCH_DISABLED = 0x0, 30 PREFETCH_SMALL = 0x8, 31 PREFETCH_MEDIUM = 0x10, 32 PREFETCH_LARGE = 0x18, 33 }; 34 35 static inline uint32_t amcc_prefetch_bits(unsigned int region, enum amcc_prefetch_bits prefetch) 36 { 37 return prefetch << (--region * bits_per_region); 38 }; 39 40 static inline uint32_t amcc_PTADR_mode_bit(unsigned int region) 41 { 42 return 0x80 << (--region * bits_per_region); 43 }; 44 45 static inline uint32_t amcc_disable_write_fifo_bit(unsigned int region) 46 { 47 return 0x20 << (--region * bits_per_region); 48 }; 49 50