1*bfcc09ddSBjoern A. Zeeb /* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */ 2*bfcc09ddSBjoern A. Zeeb /* 3*bfcc09ddSBjoern A. Zeeb * Copyright (C) 2005-2014 Intel Corporation 4*bfcc09ddSBjoern A. Zeeb */ 5*bfcc09ddSBjoern A. Zeeb /* 6*bfcc09ddSBjoern A. Zeeb * Please use this file (iwl-agn-hw.h) only for hardware-related definitions. 7*bfcc09ddSBjoern A. Zeeb */ 8*bfcc09ddSBjoern A. Zeeb 9*bfcc09ddSBjoern A. Zeeb #ifndef __iwl_agn_hw_h__ 10*bfcc09ddSBjoern A. Zeeb #define __iwl_agn_hw_h__ 11*bfcc09ddSBjoern A. Zeeb 12*bfcc09ddSBjoern A. Zeeb #define IWLAGN_RTC_INST_LOWER_BOUND (0x000000) 13*bfcc09ddSBjoern A. Zeeb #define IWLAGN_RTC_INST_UPPER_BOUND (0x020000) 14*bfcc09ddSBjoern A. Zeeb 15*bfcc09ddSBjoern A. Zeeb #define IWLAGN_RTC_DATA_LOWER_BOUND (0x800000) 16*bfcc09ddSBjoern A. Zeeb #define IWLAGN_RTC_DATA_UPPER_BOUND (0x80C000) 17*bfcc09ddSBjoern A. Zeeb 18*bfcc09ddSBjoern A. Zeeb #define IWLAGN_RTC_INST_SIZE (IWLAGN_RTC_INST_UPPER_BOUND - \ 19*bfcc09ddSBjoern A. Zeeb IWLAGN_RTC_INST_LOWER_BOUND) 20*bfcc09ddSBjoern A. Zeeb #define IWLAGN_RTC_DATA_SIZE (IWLAGN_RTC_DATA_UPPER_BOUND - \ 21*bfcc09ddSBjoern A. Zeeb IWLAGN_RTC_DATA_LOWER_BOUND) 22*bfcc09ddSBjoern A. Zeeb 23*bfcc09ddSBjoern A. Zeeb #define IWL60_RTC_INST_LOWER_BOUND (0x000000) 24*bfcc09ddSBjoern A. Zeeb #define IWL60_RTC_INST_UPPER_BOUND (0x040000) 25*bfcc09ddSBjoern A. Zeeb #define IWL60_RTC_DATA_LOWER_BOUND (0x800000) 26*bfcc09ddSBjoern A. Zeeb #define IWL60_RTC_DATA_UPPER_BOUND (0x814000) 27*bfcc09ddSBjoern A. Zeeb #define IWL60_RTC_INST_SIZE \ 28*bfcc09ddSBjoern A. Zeeb (IWL60_RTC_INST_UPPER_BOUND - IWL60_RTC_INST_LOWER_BOUND) 29*bfcc09ddSBjoern A. Zeeb #define IWL60_RTC_DATA_SIZE \ 30*bfcc09ddSBjoern A. Zeeb (IWL60_RTC_DATA_UPPER_BOUND - IWL60_RTC_DATA_LOWER_BOUND) 31*bfcc09ddSBjoern A. Zeeb 32*bfcc09ddSBjoern A. Zeeb /* RSSI to dBm */ 33*bfcc09ddSBjoern A. Zeeb #define IWLAGN_RSSI_OFFSET 44 34*bfcc09ddSBjoern A. Zeeb 35*bfcc09ddSBjoern A. Zeeb #define IWLAGN_DEFAULT_TX_RETRY 15 36*bfcc09ddSBjoern A. Zeeb #define IWLAGN_MGMT_DFAULT_RETRY_LIMIT 3 37*bfcc09ddSBjoern A. Zeeb #define IWLAGN_RTS_DFAULT_RETRY_LIMIT 60 38*bfcc09ddSBjoern A. Zeeb #define IWLAGN_BAR_DFAULT_RETRY_LIMIT 60 39*bfcc09ddSBjoern A. Zeeb #define IWLAGN_LOW_RETRY_LIMIT 7 40*bfcc09ddSBjoern A. Zeeb 41*bfcc09ddSBjoern A. Zeeb /* Limit range of txpower output target to be between these values */ 42*bfcc09ddSBjoern A. Zeeb #define IWLAGN_TX_POWER_TARGET_POWER_MIN (0) /* 0 dBm: 1 milliwatt */ 43*bfcc09ddSBjoern A. Zeeb #define IWLAGN_TX_POWER_TARGET_POWER_MAX (16) /* 16 dBm */ 44*bfcc09ddSBjoern A. Zeeb 45*bfcc09ddSBjoern A. Zeeb /* EEPROM */ 46*bfcc09ddSBjoern A. Zeeb #define IWLAGN_EEPROM_IMG_SIZE 2048 47*bfcc09ddSBjoern A. Zeeb 48*bfcc09ddSBjoern A. Zeeb /* high blocks contain PAPD data */ 49*bfcc09ddSBjoern A. Zeeb #define OTP_HIGH_IMAGE_SIZE_6x00 (6 * 512 * sizeof(u16)) /* 6 KB */ 50*bfcc09ddSBjoern A. Zeeb #define OTP_HIGH_IMAGE_SIZE_1000 (0x200 * sizeof(u16)) /* 1024 bytes */ 51*bfcc09ddSBjoern A. Zeeb #define OTP_MAX_LL_ITEMS_1000 (3) /* OTP blocks for 1000 */ 52*bfcc09ddSBjoern A. Zeeb #define OTP_MAX_LL_ITEMS_6x00 (4) /* OTP blocks for 6x00 */ 53*bfcc09ddSBjoern A. Zeeb #define OTP_MAX_LL_ITEMS_6x50 (7) /* OTP blocks for 6x50 */ 54*bfcc09ddSBjoern A. Zeeb #define OTP_MAX_LL_ITEMS_2x00 (4) /* OTP blocks for 2x00 */ 55*bfcc09ddSBjoern A. Zeeb 56*bfcc09ddSBjoern A. Zeeb 57*bfcc09ddSBjoern A. Zeeb #define IWLAGN_NUM_QUEUES 20 58*bfcc09ddSBjoern A. Zeeb 59*bfcc09ddSBjoern A. Zeeb #endif /* __iwl_agn_hw_h__ */ 60