From: Yan-Hsuan Chuang <[email protected]>
This patch set could enhance and stabilize the throughput
performance for rtw88, especially for RTL8822CE.
The RFKs, such as IQK and DPK, can make sure the radio
components works more reliable. They reduce the distortion
and nonlinearity that the components inherently have.
The parameter update is a result that is fine-tuned to
optimize the hardware utilization.
And CCK PD can help to adjust CCK signal threshold to
reduce FAs, and get a better TRX performance in 2.4G.
Interrupt migration helps some slower platforms not to
over utilize the host CPU, reduce its loading.
v1 -> v2
* fix implicit fall-through warnings
* add more log for FW IQK
Chin-Yen Lee (1):
rtw88: 8822c: update pwr_seq to v13
Tsang-Shian Lin (1):
rtw88: 8822c: Enable interrupt migration
Tzu-En Huang (2):
rtw88: 8822c: add SW DPK support
rtw88: add dynamic cck pd mechanism
Yan-Hsuan Chuang (4):
rtw88: 8822c: update PHY parameter to v38
rtw88: 8822c: add FW IQK support
rtw88: move IQK/DPK into phy_calibration
rtw88: allows to receive AMSDU in AMPDU
drivers/net/wireless/realtek/rtw88/coex.c | 2 +-
drivers/net/wireless/realtek/rtw88/coex.h | 1 +
drivers/net/wireless/realtek/rtw88/mac80211.c | 2 +-
drivers/net/wireless/realtek/rtw88/main.c | 1 +
drivers/net/wireless/realtek/rtw88/main.h | 56 +-
drivers/net/wireless/realtek/rtw88/phy.c | 145 +
drivers/net/wireless/realtek/rtw88/phy.h | 2 +
drivers/net/wireless/realtek/rtw88/reg.h | 17 +
drivers/net/wireless/realtek/rtw88/rtw8822b.c | 7 +-
drivers/net/wireless/realtek/rtw88/rtw8822c.c | 1178 +++-
drivers/net/wireless/realtek/rtw88/rtw8822c.h | 86 +
.../net/wireless/realtek/rtw88/rtw8822c_table.c | 6930 ++++++++++++++------
.../net/wireless/realtek/rtw88/rtw8822c_table.h | 3 +
13 files changed, 6325 insertions(+), 2105 deletions(-)
--
2.7.4
From: Yan-Hsuan Chuang <[email protected]>
The hardware has enough buffer to receive like 8K for an MPDU.
So tell mac80211 that we can receive AMSDU in AMPDU.
Signed-off-by: Yan-Hsuan Chuang <[email protected]>
---
v1 -> v2
* no change
drivers/net/wireless/realtek/rtw88/main.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/net/wireless/realtek/rtw88/main.c b/drivers/net/wireless/realtek/rtw88/main.c
index e5a6bc0..fc8f6213 100644
--- a/drivers/net/wireless/realtek/rtw88/main.c
+++ b/drivers/net/wireless/realtek/rtw88/main.c
@@ -1236,6 +1236,7 @@ int rtw_register_hw(struct rtw_dev *rtwdev, struct ieee80211_hw *hw)
ieee80211_hw_set(hw, SUPPORTS_PS);
ieee80211_hw_set(hw, SUPPORTS_DYNAMIC_PS);
ieee80211_hw_set(hw, SUPPORT_FAST_XMIT);
+ ieee80211_hw_set(hw, SUPPORTS_AMSDU_IN_AMPDU);
hw->wiphy->interface_modes = BIT(NL80211_IFTYPE_STATION) |
BIT(NL80211_IFTYPE_AP) |
--
2.7.4
From: Tzu-En Huang <[email protected]>
Power amplifiers are not linear components, and require DPK to
reduce its nonlinearity. DPK is called Digital Pre-distortion
Calibration, can be used to compensate the output of power.
DPK tracking is in charge of tracking the thermal changes. And
it then shifts the power curve accordingly, which makes the
power output remains linear even if the PA works in different
temperature.
To perform DPK, the parameter table should also be updated.
And the table will be applied when device is powered on.
Then DPK will reference the values to calibrate.
Signed-off-by: Tzu-En Huang <[email protected]>
Signed-off-by: Yan-Hsuan Chuang <[email protected]>
---
v1 -> v2
* fix implicit fall-through warning
drivers/net/wireless/realtek/rtw88/coex.c | 2 +-
drivers/net/wireless/realtek/rtw88/coex.h | 1 +
drivers/net/wireless/realtek/rtw88/main.h | 38 +
drivers/net/wireless/realtek/rtw88/phy.c | 52 +
drivers/net/wireless/realtek/rtw88/reg.h | 15 +
drivers/net/wireless/realtek/rtw88/rtw8822b.c | 5 +
drivers/net/wireless/realtek/rtw88/rtw8822c.c | 1065 ++++++
drivers/net/wireless/realtek/rtw88/rtw8822c.h | 84 +
.../net/wireless/realtek/rtw88/rtw8822c_table.c | 3692 +++++++++++---------
.../net/wireless/realtek/rtw88/rtw8822c_table.h | 3 +
10 files changed, 3320 insertions(+), 1637 deletions(-)
diff --git a/drivers/net/wireless/realtek/rtw88/coex.c b/drivers/net/wireless/realtek/rtw88/coex.c
index 26e16ad..793b40b 100644
--- a/drivers/net/wireless/realtek/rtw88/coex.c
+++ b/drivers/net/wireless/realtek/rtw88/coex.c
@@ -721,7 +721,7 @@ static void rtw_coex_set_rf_para(struct rtw_dev *rtwdev,
rtw_coex_set_bt_rx_gain(rtwdev, para.bt_lna_lvl);
}
-static u32 rtw_coex_read_indirect_reg(struct rtw_dev *rtwdev, u16 addr)
+u32 rtw_coex_read_indirect_reg(struct rtw_dev *rtwdev, u16 addr)
{
u32 val;
diff --git a/drivers/net/wireless/realtek/rtw88/coex.h b/drivers/net/wireless/realtek/rtw88/coex.h
index 56e871b..008d1af 100644
--- a/drivers/net/wireless/realtek/rtw88/coex.h
+++ b/drivers/net/wireless/realtek/rtw88/coex.h
@@ -346,6 +346,7 @@ void rtw_coex_set_wl_rx_gain(struct rtw_dev *rtwdev, bool low_gain)
}
void rtw_coex_info_response(struct rtw_dev *rtwdev, struct sk_buff *skb);
+u32 rtw_coex_read_indirect_reg(struct rtw_dev *rtwdev, u16 addr);
void rtw_coex_write_indirect_reg(struct rtw_dev *rtwdev, u16 addr,
u32 mask, u32 val);
void rtw_coex_write_scbd(struct rtw_dev *rtwdev, u16 bitpos, bool set);
diff --git a/drivers/net/wireless/realtek/rtw88/main.h b/drivers/net/wireless/realtek/rtw88/main.h
index 9208b9c..1ed7eb0 100644
--- a/drivers/net/wireless/realtek/rtw88/main.h
+++ b/drivers/net/wireless/realtek/rtw88/main.h
@@ -641,6 +641,8 @@ struct rtw_chip_ops {
void (*cfg_ldo25)(struct rtw_dev *rtwdev, bool enable);
void (*false_alarm_statistics)(struct rtw_dev *rtwdev);
void (*do_iqk)(struct rtw_dev *rtwdev);
+ void (*dpk_track)(struct rtw_dev *rtwdev);
+ void (*do_dpk)(struct rtw_dev *rtwdev);
/* for coex */
void (*coex_set_init)(struct rtw_dev *rtwdev);
@@ -864,6 +866,9 @@ struct rtw_chip_info {
const struct rtw_rfe_def *rfe_defs;
u32 rfe_defs_size;
+ bool en_dis_dpd;
+ u16 dpd_ratemask;
+
/* coex paras */
u32 coex_para_ver;
u8 bt_desired_ver;
@@ -1075,6 +1080,37 @@ struct rtw_coex {
struct delayed_work defreeze_work;
};
+#define DPK_RF_REG_NUM 7
+#define DPK_RF_PATH_NUM 2
+#define DPK_BB_REG_NUM 18
+#define DPK_CHANNEL_WIDTH_80 1
+
+DECLARE_EWMA(thermal, 10, 4);
+
+struct rtw_dpk_info {
+ bool is_dpk_pwr_on;
+ bool is_reload;
+
+ DECLARE_BITMAP(dpk_path_ok, DPK_RF_PATH_NUM);
+
+ u8 thermal_dpk[DPK_RF_PATH_NUM];
+ struct ewma_thermal avg_thermal[DPK_RF_PATH_NUM];
+
+ u32 gnt_control;
+ u32 gnt_value;
+
+ u8 result[RTW_RF_PATH_MAX];
+ u8 dpk_txagc[RTW_RF_PATH_MAX];
+ u32 coef[RTW_RF_PATH_MAX][20];
+ u16 dpk_gs[RTW_RF_PATH_MAX];
+ u8 thermal_dpk_delta[RTW_RF_PATH_MAX];
+ u8 pre_pwsf[RTW_RF_PATH_MAX];
+
+ u8 dpk_band;
+ u8 dpk_ch;
+ u8 dpk_bw;
+};
+
#define DACK_MSBK_BACKUP_NUM 0xf
#define DACK_DCK_BACKUP_NUM 0x2
@@ -1108,6 +1144,8 @@ struct rtw_dm_info {
u32 dack_adck[RTW_RF_PATH_MAX];
u16 dack_msbk[RTW_RF_PATH_MAX][2][DACK_MSBK_BACKUP_NUM];
u8 dack_dck[RTW_RF_PATH_MAX][2][DACK_DCK_BACKUP_NUM];
+
+ struct rtw_dpk_info dpk_info;
};
struct rtw_efuse {
diff --git a/drivers/net/wireless/realtek/rtw88/phy.c b/drivers/net/wireless/realtek/rtw88/phy.c
index 528ee1e..0293d73 100644
--- a/drivers/net/wireless/realtek/rtw88/phy.c
+++ b/drivers/net/wireless/realtek/rtw88/phy.c
@@ -439,12 +439,21 @@ static void rtw_phy_ra_info_update(struct rtw_dev *rtwdev)
rtw_iterate_stas_atomic(rtwdev, rtw_phy_ra_info_update_iter, rtwdev);
}
+static void rtw_phy_dpk_track(struct rtw_dev *rtwdev)
+{
+ struct rtw_chip_info *chip = rtwdev->chip;
+
+ if (chip->ops->dpk_track)
+ chip->ops->dpk_track(rtwdev);
+}
+
void rtw_phy_dynamic_mechanism(struct rtw_dev *rtwdev)
{
/* for further calculation */
rtw_phy_statistics(rtwdev);
rtw_phy_dig(rtwdev);
rtw_phy_ra_info_update(rtwdev);
+ rtw_phy_dpk_track(rtwdev);
}
#define FRAC_BITS 3
@@ -1316,11 +1325,20 @@ void rtw_phy_cfg_rf(struct rtw_dev *rtwdev, const struct rtw_table *tbl,
static void rtw_load_rfk_table(struct rtw_dev *rtwdev)
{
struct rtw_chip_info *chip = rtwdev->chip;
+ struct rtw_dpk_info *dpk_info = &rtwdev->dm_info.dpk_info;
if (!chip->rfk_init_tbl)
return;
+ rtw_write32_mask(rtwdev, 0x1e24, BIT(17), 0x1);
+ rtw_write32_mask(rtwdev, 0x1cd0, BIT(28), 0x1);
+ rtw_write32_mask(rtwdev, 0x1cd0, BIT(29), 0x1);
+ rtw_write32_mask(rtwdev, 0x1cd0, BIT(30), 0x1);
+ rtw_write32_mask(rtwdev, 0x1cd0, BIT(31), 0x0);
+
rtw_load_table(rtwdev, chip->rfk_init_tbl);
+
+ dpk_info->is_dpk_pwr_on = 1;
}
void rtw_phy_load_tables(struct rtw_dev *rtwdev)
@@ -1430,6 +1448,37 @@ static u8 rtw_get_channel_group(u8 channel)
}
}
+static s8 rtw_phy_get_dis_dpd_by_rate_diff(struct rtw_dev *rtwdev, u16 rate)
+{
+ struct rtw_chip_info *chip = rtwdev->chip;
+ s8 dpd_diff = 0;
+
+ if (!chip->en_dis_dpd)
+ return 0;
+
+#define RTW_DPD_RATE_CHECK(_rate) \
+ case DESC_RATE ## _rate: \
+ if (DIS_DPD_RATE ## _rate & chip->dpd_ratemask) \
+ dpd_diff = -6 * chip->txgi_factor; \
+ break
+
+ switch (rate) {
+ RTW_DPD_RATE_CHECK(6M);
+ RTW_DPD_RATE_CHECK(9M);
+ RTW_DPD_RATE_CHECK(MCS0);
+ RTW_DPD_RATE_CHECK(MCS1);
+ RTW_DPD_RATE_CHECK(MCS8);
+ RTW_DPD_RATE_CHECK(MCS9);
+ RTW_DPD_RATE_CHECK(VHT1SS_MCS0);
+ RTW_DPD_RATE_CHECK(VHT1SS_MCS1);
+ RTW_DPD_RATE_CHECK(VHT2SS_MCS0);
+ RTW_DPD_RATE_CHECK(VHT2SS_MCS1);
+ }
+#undef RTW_DPD_RATE_CHECK
+
+ return dpd_diff;
+}
+
static u8 rtw_phy_get_2g_tx_power_index(struct rtw_dev *rtwdev,
struct rtw_2g_txpwr_idx *pwr_idx_2g,
enum rtw_bandwidth bandwidth,
@@ -1638,6 +1687,9 @@ rtw_phy_get_tx_power_index(struct rtw_dev *rtwdev, u8 rf_path, u8 rate,
tx_power = pwr_param.pwr_base;
offset = min_t(s8, pwr_param.pwr_offset, pwr_param.pwr_limit);
+ if (rtwdev->chip->en_dis_dpd)
+ offset += rtw_phy_get_dis_dpd_by_rate_diff(rtwdev, rate);
+
tx_power += offset;
if (tx_power > rtwdev->chip->max_power_index)
diff --git a/drivers/net/wireless/realtek/rtw88/reg.h b/drivers/net/wireless/realtek/rtw88/reg.h
index 78ad053..fe793e2 100644
--- a/drivers/net/wireless/realtek/rtw88/reg.h
+++ b/drivers/net/wireless/realtek/rtw88/reg.h
@@ -341,6 +341,20 @@
#define REG_RFE_CTRL_E 0x0974
+#define REG_DIS_DPD 0x0a70
+#define DIS_DPD_MASK GENMASK(9, 0)
+#define DIS_DPD_RATE6M BIT(0)
+#define DIS_DPD_RATE9M BIT(1)
+#define DIS_DPD_RATEMCS0 BIT(2)
+#define DIS_DPD_RATEMCS1 BIT(3)
+#define DIS_DPD_RATEMCS8 BIT(4)
+#define DIS_DPD_RATEMCS9 BIT(5)
+#define DIS_DPD_RATEVHT1SS_MCS0 BIT(6)
+#define DIS_DPD_RATEVHT1SS_MCS1 BIT(7)
+#define DIS_DPD_RATEVHT2SS_MCS0 BIT(8)
+#define DIS_DPD_RATEVHT2SS_MCS1 BIT(9)
+#define DIS_DPD_RATEALL GENMASK(9, 0)
+
#define REG_RFE_CTRL8 0x0cb4
#define BIT_MASK_RFE_SEL89 GENMASK(7, 0)
#define REG_RFE_INV8 0x0cbd
@@ -471,6 +485,7 @@
#define RF_LUTWA 0x33
#define RF_LUTWD1 0x3e
#define RF_LUTWD0 0x3f
+#define RF_T_METER 0x42
#define RF_XTALX2 0xb8
#define RF_MALSEL 0xbe
#define RF_RCKD 0xde
diff --git a/drivers/net/wireless/realtek/rtw88/rtw8822b.c b/drivers/net/wireless/realtek/rtw88/rtw8822b.c
index 568033a..3679505 100644
--- a/drivers/net/wireless/realtek/rtw88/rtw8822b.c
+++ b/drivers/net/wireless/realtek/rtw88/rtw8822b.c
@@ -1001,6 +1001,10 @@ static void rtw8822b_do_iqk(struct rtw_dev *rtwdev)
counter, reload, ++do_iqk_cnt, iqk_fail_mask);
}
+static void rtw8822b_do_dpk(struct rtw_dev *rtwdev)
+{
+}
+
static void rtw8822b_coex_cfg_init(struct rtw_dev *rtwdev)
{
/* enable TBTT nterrupt */
@@ -1795,6 +1799,7 @@ static struct rtw_chip_ops rtw8822b_ops = {
.cfg_ldo25 = rtw8822b_cfg_ldo25,
.false_alarm_statistics = rtw8822b_false_alarm_statistics,
.do_iqk = rtw8822b_do_iqk,
+ .do_dpk = rtw8822b_do_dpk,
.coex_set_init = rtw8822b_coex_cfg_init,
.coex_set_ant_switch = rtw8822b_coex_cfg_ant_switch,
diff --git a/drivers/net/wireless/realtek/rtw88/rtw8822c.c b/drivers/net/wireless/realtek/rtw88/rtw8822c.c
index 176ca5f..cee12b1 100644
--- a/drivers/net/wireless/realtek/rtw88/rtw8822c.c
+++ b/drivers/net/wireless/realtek/rtw88/rtw8822c.c
@@ -13,6 +13,7 @@
#include "mac.h"
#include "reg.h"
#include "debug.h"
+#include "util.h"
static void rtw8822c_config_trx_mode(struct rtw_dev *rtwdev, u8 tx_path,
u8 rx_path, bool is_tx2_path);
@@ -1017,6 +1018,9 @@ static void rtw8822c_phy_set_param(struct rtw_dev *rtwdev)
BIT_RF_EN | BIT_RF_RSTB | BIT_RF_SDM_RSTB);
rtw_write32_set(rtwdev, REG_WLRF1, BIT_WLRF1_BBRF_EN);
+ /* disable low rate DPD */
+ rtw_write32_mask(rtwdev, REG_DIS_DPD, DIS_DPD_MASK, DIS_DPD_RATEALL);
+
/* pre init before header files config */
rtw8822c_header_file_init(rtwdev, true);
@@ -2049,6 +2053,1063 @@ static void rtw8822c_coex_cfg_wl_rx_gain(struct rtw_dev *rtwdev, bool low_gain)
}
}
+struct dpk_cfg_pair {
+ u32 addr;
+ u32 bitmask;
+ u32 data;
+};
+
+void rtw8822c_parse_tbl_dpk(struct rtw_dev *rtwdev,
+ const struct rtw_table *tbl)
+{
+ const struct dpk_cfg_pair *p = tbl->data;
+ const struct dpk_cfg_pair *end = p + tbl->size / 3;
+
+ BUILD_BUG_ON(sizeof(struct dpk_cfg_pair) != sizeof(u32) * 3);
+
+ for (; p < end; p++)
+ rtw_write32_mask(rtwdev, p->addr, p->bitmask, p->data);
+}
+
+static void rtw8822c_dpk_set_gnt_wl(struct rtw_dev *rtwdev, bool is_before_k)
+{
+ struct rtw_dpk_info *dpk_info = &rtwdev->dm_info.dpk_info;
+
+ if (is_before_k) {
+ dpk_info->gnt_control = rtw_read32(rtwdev, 0x70);
+ dpk_info->gnt_value = rtw_coex_read_indirect_reg(rtwdev, 0x38);
+ rtw_write32_mask(rtwdev, 0x70, BIT(26), 0x1);
+ rtw_coex_write_indirect_reg(rtwdev, 0x38, MASKBYTE1, 0x77);
+ } else {
+ rtw_coex_write_indirect_reg(rtwdev, 0x38, MASKDWORD,
+ dpk_info->gnt_value);
+ rtw_write32(rtwdev, 0x70, dpk_info->gnt_control);
+ }
+}
+
+static void
+rtw8822c_dpk_restore_registers(struct rtw_dev *rtwdev, u32 reg_num,
+ struct rtw_backup_info *bckp)
+{
+ rtw_restore_reg(rtwdev, bckp, reg_num);
+ rtw_write32_mask(rtwdev, REG_NCTL0, BIT_SUBPAGE, 0xc);
+ rtw_write32_mask(rtwdev, REG_RXSRAM_CTL, BIT_DPD_CLK, 0x4);
+}
+
+static void
+rtw8822c_dpk_backup_registers(struct rtw_dev *rtwdev, u32 *reg,
+ u32 reg_num, struct rtw_backup_info *bckp)
+{
+ u32 i;
+
+ for (i = 0; i < reg_num; i++) {
+ bckp[i].len = 4;
+ bckp[i].reg = reg[i];
+ bckp[i].val = rtw_read32(rtwdev, reg[i]);
+ }
+}
+
+static void rtw8822c_dpk_backup_rf_registers(struct rtw_dev *rtwdev,
+ u32 *rf_reg,
+ u32 rf_reg_bak[][2])
+{
+ u32 i;
+
+ for (i = 0; i < DPK_RF_REG_NUM; i++) {
+ rf_reg_bak[i][RF_PATH_A] = rtw_read_rf(rtwdev, RF_PATH_A,
+ rf_reg[i], RFREG_MASK);
+ rf_reg_bak[i][RF_PATH_B] = rtw_read_rf(rtwdev, RF_PATH_B,
+ rf_reg[i], RFREG_MASK);
+ }
+}
+
+static void rtw8822c_dpk_reload_rf_registers(struct rtw_dev *rtwdev,
+ u32 *rf_reg,
+ u32 rf_reg_bak[][2])
+{
+ u32 i;
+
+ for (i = 0; i < DPK_RF_REG_NUM; i++) {
+ rtw_write_rf(rtwdev, RF_PATH_A, rf_reg[i], RFREG_MASK,
+ rf_reg_bak[i][RF_PATH_A]);
+ rtw_write_rf(rtwdev, RF_PATH_B, rf_reg[i], RFREG_MASK,
+ rf_reg_bak[i][RF_PATH_B]);
+ }
+}
+
+static void rtw8822c_dpk_information(struct rtw_dev *rtwdev)
+{
+ struct rtw_dpk_info *dpk_info = &rtwdev->dm_info.dpk_info;
+ u32 reg;
+ u8 band_shift;
+
+ reg = rtw_read_rf(rtwdev, RF_PATH_A, 0x18, RFREG_MASK);
+
+ band_shift = FIELD_GET(BIT(16), reg);
+ dpk_info->dpk_band = 1 << band_shift;
+ dpk_info->dpk_ch = FIELD_GET(0xff, reg);
+ dpk_info->dpk_bw = FIELD_GET(0x3000, reg);
+}
+
+static void rtw8822c_dpk_rxbb_dc_cal(struct rtw_dev *rtwdev, u8 path)
+{
+ rtw_write_rf(rtwdev, path, 0x92, RFREG_MASK, 0x84800);
+ udelay(5);
+ rtw_write_rf(rtwdev, path, 0x92, RFREG_MASK, 0x84801);
+ usleep_range(600, 610);
+ rtw_write_rf(rtwdev, path, 0x92, RFREG_MASK, 0x84800);
+}
+
+static u8 rtw8822c_dpk_dc_corr_check(struct rtw_dev *rtwdev, u8 path)
+{
+ u16 dc_i, dc_q;
+ u8 corr_val, corr_idx;
+
+ rtw_write32(rtwdev, REG_RXSRAM_CTL, 0x000900f0);
+ dc_i = (u16)rtw_read32_mask(rtwdev, REG_STAT_RPT, GENMASK(27, 16));
+ dc_q = (u16)rtw_read32_mask(rtwdev, REG_STAT_RPT, GENMASK(11, 0));
+
+ if (dc_i & BIT(11))
+ dc_i = 0x1000 - dc_i;
+ if (dc_q & BIT(11))
+ dc_q = 0x1000 - dc_q;
+
+ rtw_write32(rtwdev, REG_RXSRAM_CTL, 0x000000f0);
+ corr_idx = (u8)rtw_read32_mask(rtwdev, REG_STAT_RPT, GENMASK(7, 0));
+ corr_val = (u8)rtw_read32_mask(rtwdev, REG_STAT_RPT, GENMASK(15, 8));
+
+ if (dc_i > 200 || dc_q > 200 || corr_idx < 40 || corr_idx > 65)
+ return 1;
+ else
+ return 0;
+
+}
+
+static void rtw8822c_dpk_tx_pause(struct rtw_dev *rtwdev)
+{
+ u8 reg_a, reg_b;
+ u16 count = 0;
+
+ rtw_write8(rtwdev, 0x522, 0xff);
+ rtw_write32_mask(rtwdev, 0x1e70, 0xf, 0x2);
+
+ do {
+ reg_a = (u8)rtw_read_rf(rtwdev, RF_PATH_A, 0x00, 0xf0000);
+ reg_b = (u8)rtw_read_rf(rtwdev, RF_PATH_B, 0x00, 0xf0000);
+ udelay(2);
+ count++;
+ } while ((reg_a == 2 || reg_b == 2) && count < 2500);
+}
+
+static void rtw8822c_dpk_mac_bb_setting(struct rtw_dev *rtwdev)
+{
+ rtw8822c_dpk_tx_pause(rtwdev);
+ rtw_load_table(rtwdev, &rtw8822c_dpk_mac_bb_tbl);
+}
+
+static void rtw8822c_dpk_afe_setting(struct rtw_dev *rtwdev, bool is_do_dpk)
+{
+ if (is_do_dpk)
+ rtw_load_table(rtwdev, &rtw8822c_dpk_afe_is_dpk_tbl);
+ else
+ rtw_load_table(rtwdev, &rtw8822c_dpk_afe_no_dpk_tbl);
+}
+
+static void rtw8822c_dpk_pre_setting(struct rtw_dev *rtwdev)
+{
+ u8 path;
+
+ for (path = 0; path < rtwdev->hal.rf_path_num; path++) {
+ rtw_write_rf(rtwdev, path, RF_RXAGC_OFFSET, RFREG_MASK, 0x0);
+ rtw_write32(rtwdev, REG_NCTL0, 0x8 | (path << 1));
+ if (rtwdev->dm_info.dpk_info.dpk_band == RTW_BAND_2G)
+ rtw_write32(rtwdev, REG_DPD_LUT3, 0x1f100000);
+ else
+ rtw_write32(rtwdev, REG_DPD_LUT3, 0x1f0d0000);
+ rtw_write32_mask(rtwdev, REG_DPD_LUT0, BIT_GLOSS_DB, 0x4);
+ rtw_write32_mask(rtwdev, REG_IQK_CTL1, BIT_TX_CFIR, 0x3);
+ }
+ rtw_write32_mask(rtwdev, REG_NCTL0, BIT_SUBPAGE, 0xc);
+ rtw_write32(rtwdev, REG_DPD_CTL11, 0x3b23170b);
+ rtw_write32(rtwdev, REG_DPD_CTL12, 0x775f5347);
+}
+
+static u32 rtw8822c_dpk_rf_setting(struct rtw_dev *rtwdev, u8 path)
+{
+ u32 ori_txbb;
+
+ rtw_write_rf(rtwdev, path, RF_MODE_TRXAGC, RFREG_MASK, 0x50017);
+ ori_txbb = rtw_read_rf(rtwdev, path, RF_TX_GAIN, RFREG_MASK);
+
+ rtw_write_rf(rtwdev, path, RF_DEBUG, BIT_DE_TX_GAIN, 0x1);
+ rtw_write_rf(rtwdev, path, RF_DEBUG, BIT_DE_PWR_TRIM, 0x1);
+ rtw_write_rf(rtwdev, path, RF_TX_GAIN_OFFSET, BIT_TX_OFFSET_VAL, 0x0);
+ rtw_write_rf(rtwdev, path, RF_TX_GAIN, RFREG_MASK, ori_txbb);
+
+ if (rtwdev->dm_info.dpk_info.dpk_band == RTW_BAND_2G) {
+ rtw_write_rf(rtwdev, path, RF_TX_GAIN_OFFSET, BIT_LB_ATT, 0x1);
+ rtw_write_rf(rtwdev, path, RF_RXG_GAIN, BIT_RXG_GAIN, 0x0);
+ } else {
+ rtw_write_rf(rtwdev, path, RF_TXA_LB_SW, BIT_TXA_LB_ATT, 0x0);
+ rtw_write_rf(rtwdev, path, RF_TXA_LB_SW, BIT_LB_ATT, 0x6);
+ rtw_write_rf(rtwdev, path, RF_TXA_LB_SW, BIT_LB_SW, 0x1);
+ rtw_write_rf(rtwdev, path, RF_RXA_MIX_GAIN, BIT_RXA_MIX_GAIN, 0);
+ }
+
+ rtw_write_rf(rtwdev, path, RF_MODE_TRXAGC, BIT_RXAGC, 0xf);
+ rtw_write_rf(rtwdev, path, RF_DEBUG, BIT_DE_TRXBW, 0x1);
+ rtw_write_rf(rtwdev, path, RF_BW_TRXBB, BIT_BW_RXBB, 0x0);
+
+ if (rtwdev->dm_info.dpk_info.dpk_bw == DPK_CHANNEL_WIDTH_80)
+ rtw_write_rf(rtwdev, path, RF_BW_TRXBB, BIT_BW_TXBB, 0x2);
+ else
+ rtw_write_rf(rtwdev, path, RF_BW_TRXBB, BIT_BW_TXBB, 0x1);
+
+ rtw_write_rf(rtwdev, path, RF_EXT_TIA_BW, BIT(1), 0x1);
+
+ usleep_range(100, 110);
+
+ return ori_txbb & 0x1f;
+}
+
+static u16 rtw8822c_dpk_get_cmd(struct rtw_dev *rtwdev, u8 action, u8 path)
+{
+ u16 cmd;
+ u8 bw = rtwdev->dm_info.dpk_info.dpk_bw == DPK_CHANNEL_WIDTH_80 ? 2 : 0;
+
+ switch (action) {
+ case RTW_DPK_GAIN_LOSS:
+ cmd = 0x14 + path;
+ break;
+ case RTW_DPK_DO_DPK:
+ cmd = 0x16 + path + bw;
+ break;
+ case RTW_DPK_DPK_ON:
+ cmd = 0x1a + path;
+ break;
+ case RTW_DPK_DAGC:
+ cmd = 0x1c + path + bw;
+ break;
+ default:
+ return 0;
+ }
+
+ return (cmd << 8) | 0x48;
+}
+
+static u8 rtw8822c_dpk_one_shot(struct rtw_dev *rtwdev, u8 path, u8 action)
+{
+ u16 dpk_cmd;
+ u8 result = 0;
+
+ rtw8822c_dpk_set_gnt_wl(rtwdev, true);
+
+ if (action == RTW_DPK_CAL_PWR) {
+ rtw_write32_mask(rtwdev, REG_DPD_CTL0, BIT(12), 0x1);
+ rtw_write32_mask(rtwdev, REG_DPD_CTL0, BIT(12), 0x0);
+ rtw_write32_mask(rtwdev, REG_RXSRAM_CTL, BIT_RPT_SEL, 0x0);
+ msleep(10);
+ if (!check_hw_ready(rtwdev, REG_STAT_RPT, BIT(31), 0x1)) {
+ result = 1;
+ rtw_dbg(rtwdev, RTW_DBG_RFK, "[DPK] one-shot over 20ms\n");
+ }
+ } else {
+ rtw_write32_mask(rtwdev, REG_NCTL0, BIT_SUBPAGE,
+ 0x8 | (path << 1));
+ rtw_write32_mask(rtwdev, REG_R_CONFIG, BIT_IQ_SWITCH, 0x9);
+
+ dpk_cmd = rtw8822c_dpk_get_cmd(rtwdev, action, path);
+ rtw_write32(rtwdev, REG_NCTL0, dpk_cmd);
+ rtw_write32(rtwdev, REG_NCTL0, dpk_cmd + 1);
+ msleep(10);
+ if (!check_hw_ready(rtwdev, 0x2d9c, 0xff, 0x55)) {
+ result = 1;
+ rtw_dbg(rtwdev, RTW_DBG_RFK, "[DPK] one-shot over 20ms\n");
+ }
+ rtw_write32_mask(rtwdev, REG_NCTL0, BIT_SUBPAGE,
+ 0x8 | (path << 1));
+ rtw_write32_mask(rtwdev, REG_R_CONFIG, BIT_IQ_SWITCH, 0x0);
+ }
+
+ rtw8822c_dpk_set_gnt_wl(rtwdev, false);
+
+ rtw_write8(rtwdev, 0x1b10, 0x0);
+
+ return result;
+}
+
+static u16 rtw8822c_dpk_dgain_read(struct rtw_dev *rtwdev, u8 path)
+{
+ u16 dgain;
+
+ rtw_write32_mask(rtwdev, REG_NCTL0, BIT_SUBPAGE, 0xc);
+ rtw_write32_mask(rtwdev, REG_RXSRAM_CTL, 0x00ff0000, 0x0);
+
+ dgain = (u16)rtw_read32_mask(rtwdev, REG_STAT_RPT, GENMASK(27, 16));
+
+ return dgain;
+}
+
+static u8 rtw8822c_dpk_thermal_read(struct rtw_dev *rtwdev, u8 path)
+{
+ rtw_write_rf(rtwdev, path, RF_T_METER, BIT(19), 0x1);
+ rtw_write_rf(rtwdev, path, RF_T_METER, BIT(19), 0x0);
+ rtw_write_rf(rtwdev, path, RF_T_METER, BIT(19), 0x1);
+ udelay(15);
+
+ return (u8)rtw_read_rf(rtwdev, path, RF_T_METER, 0x0007e);
+}
+
+static u32 rtw8822c_dpk_pas_read(struct rtw_dev *rtwdev, u8 path)
+{
+ u32 i_val, q_val;
+
+ rtw_write32(rtwdev, REG_NCTL0, 0x8 | (path << 1));
+ rtw_write32_mask(rtwdev, 0x1b48, BIT(14), 0x0);
+ rtw_write32(rtwdev, REG_RXSRAM_CTL, 0x00060001);
+ rtw_write32(rtwdev, 0x1b4c, 0x00000000);
+ rtw_write32(rtwdev, 0x1b4c, 0x00080000);
+
+ q_val = rtw_read32_mask(rtwdev, REG_STAT_RPT, MASKHWORD);
+ i_val = rtw_read32_mask(rtwdev, REG_STAT_RPT, MASKLWORD);
+
+ if (i_val & BIT(15))
+ i_val = 0x10000 - i_val;
+ if (q_val & BIT(15))
+ q_val = 0x10000 - q_val;
+
+ rtw_write32(rtwdev, 0x1b4c, 0x00000000);
+
+ return i_val * i_val + q_val * q_val;
+}
+
+static u32 rtw8822c_psd_log2base(u32 val)
+{
+ u32 tmp, val_integerd_b, tindex;
+ u32 result, val_fractiond_b;
+ u32 table_fraction[21] = {0, 432, 332, 274, 232, 200, 174,
+ 151, 132, 115, 100, 86, 74, 62, 51,
+ 42, 32, 23, 15, 7, 0};
+
+ if (val == 0)
+ return 0;
+
+ val_integerd_b = __fls(val) + 1;
+
+ tmp = (val * 100) / (1 << val_integerd_b);
+ tindex = tmp / 5;
+
+ if (tindex >= ARRAY_SIZE(table_fraction))
+ tindex = ARRAY_SIZE(table_fraction) - 1;
+
+ val_fractiond_b = table_fraction[tindex];
+
+ result = val_integerd_b * 100 - val_fractiond_b;
+
+ return result;
+}
+
+static u8 rtw8822c_dpk_gainloss_result(struct rtw_dev *rtwdev, u8 path)
+{
+ u8 result;
+
+ rtw_write32_mask(rtwdev, REG_NCTL0, BIT_SUBPAGE, 0x8 | (path << 1));
+ rtw_write32_mask(rtwdev, 0x1b48, BIT(14), 0x1);
+ rtw_write32(rtwdev, REG_RXSRAM_CTL, 0x00060000);
+
+ result = (u8)rtw_read32_mask(rtwdev, REG_STAT_RPT, 0x000000f0);
+
+ rtw_write32_mask(rtwdev, 0x1b48, BIT(14), 0x0);
+
+ return result;
+}
+
+static u8 rtw8822c_dpk_agc_gain_chk(struct rtw_dev *rtwdev, u8 path,
+ u8 limited_pga)
+{
+ u8 result = 0;
+ u16 dgain;
+
+ rtw8822c_dpk_one_shot(rtwdev, path, RTW_DPK_DAGC);
+ dgain = rtw8822c_dpk_dgain_read(rtwdev, path);
+
+ if (dgain > 1535 && !limited_pga)
+ return RTW_DPK_GAIN_LESS;
+ else if (dgain < 768 && !limited_pga)
+ return RTW_DPK_GAIN_LARGE;
+ else
+ return result;
+}
+
+static u8 rtw8822c_dpk_agc_loss_chk(struct rtw_dev *rtwdev, u8 path)
+{
+ u32 loss, loss_db;
+
+ loss = rtw8822c_dpk_pas_read(rtwdev, path);
+ if (loss < 0x4000000)
+ return RTW_DPK_GL_LESS;
+ loss_db = 3 * rtw8822c_psd_log2base(loss >> 13) - 3870;
+
+ if (loss_db > 1000)
+ return RTW_DPK_GL_LARGE;
+ else if (loss_db < 250)
+ return RTW_DPK_GL_LESS;
+ else
+ return RTW_DPK_AGC_OUT;
+}
+
+struct rtw8822c_dpk_data {
+ u8 txbb;
+ u8 pga;
+ u8 limited_pga;
+ u8 agc_cnt;
+ bool loss_only;
+ bool gain_only;
+ u8 path;
+};
+
+static u8 rtw8822c_gain_check_state(struct rtw_dev *rtwdev,
+ struct rtw8822c_dpk_data *data)
+{
+ u8 state;
+
+ data->txbb = (u8)rtw_read_rf(rtwdev, data->path, RF_TX_GAIN,
+ BIT_GAIN_TXBB);
+ data->pga = (u8)rtw_read_rf(rtwdev, data->path, RF_MODE_TRXAGC,
+ BIT_RXAGC);
+
+ if (data->loss_only) {
+ state = RTW_DPK_LOSS_CHECK;
+ goto check_end;
+ }
+
+ state = rtw8822c_dpk_agc_gain_chk(rtwdev, data->path,
+ data->limited_pga);
+ if (state == RTW_DPK_GAIN_CHECK && data->gain_only)
+ state = RTW_DPK_AGC_OUT;
+ else if (state == RTW_DPK_GAIN_CHECK)
+ state = RTW_DPK_LOSS_CHECK;
+
+check_end:
+ data->agc_cnt++;
+ if (data->agc_cnt >= 6)
+ state = RTW_DPK_AGC_OUT;
+
+ return state;
+}
+
+static u8 rtw8822c_gain_large_state(struct rtw_dev *rtwdev,
+ struct rtw8822c_dpk_data *data)
+{
+ u8 pga = data->pga;
+
+ if (pga > 0xe)
+ rtw_write_rf(rtwdev, data->path, RF_MODE_TRXAGC, BIT_RXAGC, 0xc);
+ else if (pga > 0xb && pga < 0xf)
+ rtw_write_rf(rtwdev, data->path, RF_MODE_TRXAGC, BIT_RXAGC, 0x0);
+ else if (pga < 0xc)
+ data->limited_pga = 1;
+
+ return RTW_DPK_GAIN_CHECK;
+}
+
+static u8 rtw8822c_gain_less_state(struct rtw_dev *rtwdev,
+ struct rtw8822c_dpk_data *data)
+{
+ u8 pga = data->pga;
+
+ if (pga < 0xc)
+ rtw_write_rf(rtwdev, data->path, RF_MODE_TRXAGC, BIT_RXAGC, 0xc);
+ else if (pga > 0xb && pga < 0xf)
+ rtw_write_rf(rtwdev, data->path, RF_MODE_TRXAGC, BIT_RXAGC, 0xf);
+ else if (pga > 0xe)
+ data->limited_pga = 1;
+
+ return RTW_DPK_GAIN_CHECK;
+}
+
+static u8 rtw8822c_gl_state(struct rtw_dev *rtwdev,
+ struct rtw8822c_dpk_data *data, u8 is_large)
+{
+ u8 txbb_bound[] = {0x1f, 0};
+
+ if (data->txbb == txbb_bound[is_large])
+ return RTW_DPK_AGC_OUT;
+
+ if (is_large == 1)
+ data->txbb -= 2;
+ else
+ data->txbb += 3;
+
+ rtw_write_rf(rtwdev, data->path, RF_TX_GAIN, BIT_GAIN_TXBB, data->txbb);
+ data->limited_pga = 0;
+
+ return RTW_DPK_GAIN_CHECK;
+}
+
+static u8 rtw8822c_gl_large_state(struct rtw_dev *rtwdev,
+ struct rtw8822c_dpk_data *data)
+{
+ return rtw8822c_gl_state(rtwdev, data, 1);
+}
+
+static u8 rtw8822c_gl_less_state(struct rtw_dev *rtwdev,
+ struct rtw8822c_dpk_data *data)
+{
+ return rtw8822c_gl_state(rtwdev, data, 0);
+}
+
+static u8 rtw8822c_loss_check_state(struct rtw_dev *rtwdev,
+ struct rtw8822c_dpk_data *data)
+{
+ u8 path = data->path;
+ u8 state;
+
+ rtw8822c_dpk_one_shot(rtwdev, path, RTW_DPK_GAIN_LOSS);
+ state = rtw8822c_dpk_agc_loss_chk(rtwdev, path);
+
+ return state;
+}
+
+static u8 (*dpk_state[])(struct rtw_dev *rtwdev,
+ struct rtw8822c_dpk_data *data) = {
+ rtw8822c_gain_check_state, rtw8822c_gain_large_state,
+ rtw8822c_gain_less_state, rtw8822c_gl_large_state,
+ rtw8822c_gl_less_state, rtw8822c_loss_check_state };
+
+static u8 rtw8822c_dpk_pas_agc(struct rtw_dev *rtwdev, u8 path,
+ bool gain_only, bool loss_only)
+{
+ struct rtw8822c_dpk_data data = {0};
+ u8 (*func)(struct rtw_dev *rtwdev, struct rtw8822c_dpk_data *data);
+ u8 state = RTW_DPK_GAIN_CHECK;
+
+ data.loss_only = loss_only;
+ data.gain_only = gain_only;
+ data.path = path;
+
+ for (;;) {
+ func = dpk_state[state];
+ state = func(rtwdev, &data);
+ if (state == RTW_DPK_AGC_OUT)
+ break;
+ }
+
+ return data.txbb;
+}
+
+static bool rtw8822c_dpk_coef_iq_check(struct rtw_dev *rtwdev,
+ u16 coef_i, u16 coef_q)
+{
+ if (coef_i == 0x1000 || coef_i == 0x0fff ||
+ coef_q == 0x1000 || coef_q == 0x0fff)
+ return 1;
+ else
+ return 0;
+}
+
+static u32 rtw8822c_dpk_coef_transfer(struct rtw_dev *rtwdev)
+{
+ u32 reg = 0;
+ u16 coef_i = 0, coef_q = 0;
+
+ reg = rtw_read32(rtwdev, REG_STAT_RPT);
+
+ coef_i = (u16)rtw_read32_mask(rtwdev, REG_STAT_RPT, MASKHWORD) & 0x1fff;
+ coef_q = (u16)rtw_read32_mask(rtwdev, REG_STAT_RPT, MASKLWORD) & 0x1fff;
+
+ coef_q = ((0x2000 - coef_q) & 0x1fff) - 1;
+
+ reg = (coef_i << 16) | coef_q;
+
+ return reg;
+}
+
+static const u32 rtw8822c_dpk_get_coef_tbl[] = {
+ 0x000400f0, 0x040400f0, 0x080400f0, 0x010400f0, 0x050400f0,
+ 0x090400f0, 0x020400f0, 0x060400f0, 0x0a0400f0, 0x030400f0,
+ 0x070400f0, 0x0b0400f0, 0x0c0400f0, 0x100400f0, 0x0d0400f0,
+ 0x110400f0, 0x0e0400f0, 0x120400f0, 0x0f0400f0, 0x130400f0,
+};
+
+static void rtw8822c_dpk_coef_tbl_apply(struct rtw_dev *rtwdev, u8 path)
+{
+ struct rtw_dpk_info *dpk_info = &rtwdev->dm_info.dpk_info;
+ int i;
+
+ for (i = 0; i < 20; i++) {
+ rtw_write32(rtwdev, REG_RXSRAM_CTL,
+ rtw8822c_dpk_get_coef_tbl[i]);
+ dpk_info->coef[path][i] = rtw8822c_dpk_coef_transfer(rtwdev);
+ }
+}
+
+static void rtw8822c_dpk_get_coef(struct rtw_dev *rtwdev, u8 path)
+{
+ rtw_write32(rtwdev, REG_NCTL0, 0x0000000c);
+
+ if (path == RF_PATH_A) {
+ rtw_write32_mask(rtwdev, REG_DPD_CTL0, BIT(24), 0x0);
+ rtw_write32(rtwdev, REG_DPD_CTL0_S0, 0x30000080);
+ } else if (path == RF_PATH_B) {
+ rtw_write32_mask(rtwdev, REG_DPD_CTL0, BIT(24), 0x1);
+ rtw_write32(rtwdev, REG_DPD_CTL0_S1, 0x30000080);
+ }
+
+ rtw8822c_dpk_coef_tbl_apply(rtwdev, path);
+}
+
+static u8 rtw8822c_dpk_coef_read(struct rtw_dev *rtwdev, u8 path)
+{
+ struct rtw_dpk_info *dpk_info = &rtwdev->dm_info.dpk_info;
+ u8 addr, result = 1;
+ u16 coef_i, coef_q;
+
+ for (addr = 0; addr < 20; addr++) {
+ coef_i = FIELD_GET(0x1fff0000, dpk_info->coef[path][addr]);
+ coef_q = FIELD_GET(0x1fff, dpk_info->coef[path][addr]);
+
+ if (rtw8822c_dpk_coef_iq_check(rtwdev, coef_i, coef_q)) {
+ result = 0;
+ break;
+ }
+ }
+ return result;
+}
+
+static void rtw8822c_dpk_coef_write(struct rtw_dev *rtwdev, u8 path, u8 result)
+{
+ struct rtw_dpk_info *dpk_info = &rtwdev->dm_info.dpk_info;
+ u16 reg[DPK_RF_PATH_NUM] = {0x1b0c, 0x1b64};
+ u32 coef;
+ u8 addr;
+
+ rtw_write32(rtwdev, REG_NCTL0, 0x0000000c);
+ rtw_write32(rtwdev, REG_RXSRAM_CTL, 0x000000f0);
+
+ for (addr = 0; addr < 20; addr++) {
+ if (result == 0) {
+ if (addr == 3)
+ coef = 0x04001fff;
+ else
+ coef = 0x00001fff;
+ } else {
+ coef = dpk_info->coef[path][addr];
+ }
+ rtw_write32(rtwdev, reg[path] + addr * 4, coef);
+ }
+}
+
+static void rtw8822c_dpk_fill_result(struct rtw_dev *rtwdev, u32 dpk_txagc,
+ u8 path, u8 result)
+{
+ struct rtw_dpk_info *dpk_info = &rtwdev->dm_info.dpk_info;
+
+ rtw_write32_mask(rtwdev, REG_NCTL0, BIT_SUBPAGE, 0x8 | (path << 1));
+
+ if (result)
+ rtw_write8(rtwdev, REG_DPD_AGC, (u8)(dpk_txagc - 6));
+ else
+ rtw_write8(rtwdev, REG_DPD_AGC, 0x00);
+
+ dpk_info->result[path] = result;
+ dpk_info->dpk_txagc[path] = rtw_read8(rtwdev, REG_DPD_AGC);
+
+ rtw8822c_dpk_coef_write(rtwdev, path, result);
+}
+
+static u32 rtw8822c_dpk_gainloss(struct rtw_dev *rtwdev, u8 path)
+{
+ struct rtw_dpk_info *dpk_info = &rtwdev->dm_info.dpk_info;
+ u8 tx_agc, tx_bb, ori_txbb, ori_txagc, tx_agc_search, t1, t2;
+
+ ori_txbb = rtw8822c_dpk_rf_setting(rtwdev, path);
+ ori_txagc = (u8)rtw_read_rf(rtwdev, path, RF_MODE_TRXAGC, BIT_TXAGC);
+
+ rtw8822c_dpk_rxbb_dc_cal(rtwdev, path);
+ rtw8822c_dpk_one_shot(rtwdev, path, RTW_DPK_DAGC);
+ rtw8822c_dpk_dgain_read(rtwdev, path);
+
+ if (rtw8822c_dpk_dc_corr_check(rtwdev, path)) {
+ rtw8822c_dpk_rxbb_dc_cal(rtwdev, path);
+ rtw8822c_dpk_one_shot(rtwdev, path, RTW_DPK_DAGC);
+ rtw8822c_dpk_dc_corr_check(rtwdev, path);
+ }
+
+ t1 = rtw8822c_dpk_thermal_read(rtwdev, path);
+ tx_bb = rtw8822c_dpk_pas_agc(rtwdev, path, false, true);
+ tx_agc_search = rtw8822c_dpk_gainloss_result(rtwdev, path);
+
+ if (tx_bb < tx_agc_search)
+ tx_bb = 0;
+ else
+ tx_bb = tx_bb - tx_agc_search;
+
+ rtw_write_rf(rtwdev, path, RF_TX_GAIN, BIT_GAIN_TXBB, tx_bb);
+
+ tx_agc = ori_txagc - (ori_txbb - tx_bb);
+
+ t2 = rtw8822c_dpk_thermal_read(rtwdev, path);
+
+ dpk_info->thermal_dpk_delta[path] = abs(t2 - t1);
+
+ return tx_agc;
+}
+
+static u8 rtw8822c_dpk_by_path(struct rtw_dev *rtwdev, u32 tx_agc, u8 path)
+{
+ u8 result;
+
+ result = rtw8822c_dpk_one_shot(rtwdev, path, RTW_DPK_DO_DPK);
+
+ rtw_write32_mask(rtwdev, REG_NCTL0, BIT_SUBPAGE, 0x8 | (path << 1));
+
+ result = result | (u8)rtw_read32_mask(rtwdev, REG_DPD_CTL1_S0, BIT(26));
+
+ rtw_write_rf(rtwdev, path, RF_MODE_TRXAGC, RFREG_MASK, 0x33e14);
+
+ rtw8822c_dpk_get_coef(rtwdev, path);
+
+ return result;
+}
+
+static void rtw8822c_dpk_cal_gs(struct rtw_dev *rtwdev, u8 path)
+{
+ struct rtw_dpk_info *dpk_info = &rtwdev->dm_info.dpk_info;
+ u32 tmp_gs = 0;
+
+ rtw_write32_mask(rtwdev, REG_NCTL0, BIT_SUBPAGE, 0x8 | (path << 1));
+ rtw_write32_mask(rtwdev, REG_IQK_CTL1, BIT_BYPASS_DPD, 0x0);
+ rtw_write32_mask(rtwdev, REG_IQK_CTL1, BIT_TX_CFIR, 0x0);
+ rtw_write32_mask(rtwdev, REG_R_CONFIG, BIT_IQ_SWITCH, 0x9);
+ rtw_write32_mask(rtwdev, REG_R_CONFIG, BIT_INNER_LB, 0x1);
+ rtw_write32_mask(rtwdev, REG_NCTL0, BIT_SUBPAGE, 0xc);
+ rtw_write32_mask(rtwdev, REG_RXSRAM_CTL, BIT_DPD_CLK, 0xf);
+
+ if (path == RF_PATH_A) {
+ rtw_write32_mask(rtwdev, REG_DPD_CTL0_S0, BIT_GS_PWSF,
+ 0x1066680);
+ rtw_write32_mask(rtwdev, REG_DPD_CTL1_S0, BIT_DPD_EN, 0x1);
+ } else {
+ rtw_write32_mask(rtwdev, REG_DPD_CTL0_S1, BIT_GS_PWSF,
+ 0x1066680);
+ rtw_write32_mask(rtwdev, REG_DPD_CTL1_S1, BIT_DPD_EN, 0x1);
+ }
+
+ if (dpk_info->dpk_bw == DPK_CHANNEL_WIDTH_80) {
+ rtw_write32(rtwdev, REG_DPD_CTL16, 0x80001310);
+ rtw_write32(rtwdev, REG_DPD_CTL16, 0x00001310);
+ rtw_write32(rtwdev, REG_DPD_CTL16, 0x810000db);
+ rtw_write32(rtwdev, REG_DPD_CTL16, 0x010000db);
+ rtw_write32(rtwdev, REG_DPD_CTL16, 0x0000b428);
+ rtw_write32(rtwdev, REG_DPD_CTL15,
+ 0x05020000 | (BIT(path) << 28));
+ } else {
+ rtw_write32(rtwdev, REG_DPD_CTL16, 0x8200190c);
+ rtw_write32(rtwdev, REG_DPD_CTL16, 0x0200190c);
+ rtw_write32(rtwdev, REG_DPD_CTL16, 0x8301ee14);
+ rtw_write32(rtwdev, REG_DPD_CTL16, 0x0301ee14);
+ rtw_write32(rtwdev, REG_DPD_CTL16, 0x0000b428);
+ rtw_write32(rtwdev, REG_DPD_CTL15,
+ 0x05020008 | (BIT(path) << 28));
+ }
+
+ rtw_write32_mask(rtwdev, REG_DPD_CTL0, MASKBYTE3, 0x8 | path);
+
+ rtw8822c_dpk_one_shot(rtwdev, path, RTW_DPK_CAL_PWR);
+
+ rtw_write32_mask(rtwdev, REG_DPD_CTL15, MASKBYTE3, 0x0);
+ rtw_write32_mask(rtwdev, REG_NCTL0, BIT_SUBPAGE, 0x8 | (path << 1));
+ rtw_write32_mask(rtwdev, REG_R_CONFIG, BIT_IQ_SWITCH, 0x0);
+ rtw_write32_mask(rtwdev, REG_R_CONFIG, BIT_INNER_LB, 0x0);
+ rtw_write32_mask(rtwdev, REG_NCTL0, BIT_SUBPAGE, 0xc);
+
+ if (path == RF_PATH_A)
+ rtw_write32_mask(rtwdev, REG_DPD_CTL0_S0, BIT_GS_PWSF, 0x5b);
+ else
+ rtw_write32_mask(rtwdev, REG_DPD_CTL0_S1, BIT_GS_PWSF, 0x5b);
+
+ rtw_write32_mask(rtwdev, REG_RXSRAM_CTL, BIT_RPT_SEL, 0x0);
+
+ tmp_gs = (u16)rtw_read32_mask(rtwdev, REG_STAT_RPT, BIT_RPT_DGAIN);
+ tmp_gs = (tmp_gs * 910) >> 10;
+ tmp_gs = DIV_ROUND_CLOSEST(tmp_gs, 10);
+
+ if (path == RF_PATH_A)
+ rtw_write32_mask(rtwdev, REG_DPD_CTL0_S0, BIT_GS_PWSF, tmp_gs);
+ else
+ rtw_write32_mask(rtwdev, REG_DPD_CTL0_S1, BIT_GS_PWSF, tmp_gs);
+
+ dpk_info->dpk_gs[path] = tmp_gs;
+}
+
+void rtw8822c_dpk_cal_coef1(struct rtw_dev *rtwdev)
+{
+ struct rtw_dpk_info *dpk_info = &rtwdev->dm_info.dpk_info;
+ u32 offset[DPK_RF_PATH_NUM] = {0, 0x58};
+ u32 i_scaling;
+ u8 path;
+
+ rtw_write32_mask(rtwdev, REG_NCTL0, BIT_SUBPAGE, 0x0000000c);
+ rtw_write32(rtwdev, REG_RXSRAM_CTL, 0x000000f0);
+ rtw_write32(rtwdev, REG_NCTL0, 0x00001148);
+ rtw_write32(rtwdev, REG_NCTL0, 0x00001149);
+
+ check_hw_ready(rtwdev, 0x2d9c, MASKBYTE0, 0x55);
+
+ rtw_write8(rtwdev, 0x1b10, 0x0);
+ rtw_write32_mask(rtwdev, REG_NCTL0, BIT_SUBPAGE, 0x0000000c);
+
+ for (path = 0; path < rtwdev->hal.rf_path_num; path++) {
+ i_scaling = 0x16c00 / dpk_info->dpk_gs[path];
+
+ rtw_write32_mask(rtwdev, 0x1b18 + offset[path], MASKHWORD,
+ i_scaling);
+ rtw_write32_mask(rtwdev, REG_DPD_CTL0_S0 + offset[path],
+ GENMASK(31, 28), 0x9);
+ rtw_write32_mask(rtwdev, REG_DPD_CTL0_S0 + offset[path],
+ GENMASK(31, 28), 0x1);
+ rtw_write32_mask(rtwdev, REG_DPD_CTL0_S0 + offset[path],
+ GENMASK(31, 28), 0x0);
+ rtw_write32_mask(rtwdev, REG_DPD_CTL1_S0 + offset[path],
+ BIT(14), 0x0);
+ }
+}
+
+static void rtw8822c_dpk_on(struct rtw_dev *rtwdev, u8 path)
+{
+ struct rtw_dpk_info *dpk_info = &rtwdev->dm_info.dpk_info;
+
+ rtw8822c_dpk_one_shot(rtwdev, path, RTW_DPK_DPK_ON);
+
+ rtw_write32_mask(rtwdev, REG_NCTL0, BIT_SUBPAGE, 0x8 | (path << 1));
+ rtw_write32_mask(rtwdev, REG_IQK_CTL1, BIT_TX_CFIR, 0x0);
+
+ if (test_bit(path, dpk_info->dpk_path_ok))
+ rtw8822c_dpk_cal_gs(rtwdev, path);
+}
+
+static bool rtw8822c_dpk_check_pass(struct rtw_dev *rtwdev, bool is_fail,
+ u32 dpk_txagc, u8 path)
+{
+ bool result;
+
+ if (!is_fail) {
+ if (rtw8822c_dpk_coef_read(rtwdev, path))
+ result = true;
+ else
+ result = false;
+ } else {
+ result = false;
+ }
+
+ rtw8822c_dpk_fill_result(rtwdev, dpk_txagc, path, result);
+
+ return result;
+}
+
+static void rtw8822c_dpk_result_reset(struct rtw_dev *rtwdev)
+{
+ struct rtw_dpk_info *dpk_info = &rtwdev->dm_info.dpk_info;
+ u8 path;
+
+ for (path = 0; path < rtwdev->hal.rf_path_num; path++) {
+ clear_bit(path, dpk_info->dpk_path_ok);
+ rtw_write32_mask(rtwdev, REG_NCTL0, BIT_SUBPAGE,
+ 0x8 | (path << 1));
+ rtw_write32_mask(rtwdev, 0x1b58, 0x0000007f, 0x0);
+
+ dpk_info->dpk_txagc[path] = 0;
+ dpk_info->result[path] = 0;
+ dpk_info->dpk_gs[path] = 0x5b;
+ dpk_info->pre_pwsf[path] = 0;
+ dpk_info->thermal_dpk[path] = rtw8822c_dpk_thermal_read(rtwdev,
+ path);
+ }
+}
+
+static void rtw8822c_dpk_calibrate(struct rtw_dev *rtwdev, u8 path)
+{
+ struct rtw_dpk_info *dpk_info = &rtwdev->dm_info.dpk_info;
+ u32 dpk_txagc;
+ u8 dpk_fail;
+
+ rtw_dbg(rtwdev, RTW_DBG_RFK, "[DPK] s%d dpk start\n", path);
+
+ dpk_txagc = rtw8822c_dpk_gainloss(rtwdev, path);
+
+ dpk_fail = rtw8822c_dpk_by_path(rtwdev, dpk_txagc, path);
+
+ if (!rtw8822c_dpk_check_pass(rtwdev, dpk_fail, dpk_txagc, path))
+ rtw_err(rtwdev, "failed to do dpk calibration\n");
+
+ rtw_dbg(rtwdev, RTW_DBG_RFK, "[DPK] s%d dpk finish\n", path);
+
+ if (dpk_info->result[path])
+ set_bit(path, dpk_info->dpk_path_ok);
+}
+
+static void rtw8822c_dpk_path_select(struct rtw_dev *rtwdev)
+{
+ rtw8822c_dpk_calibrate(rtwdev, RF_PATH_A);
+ rtw8822c_dpk_calibrate(rtwdev, RF_PATH_B);
+ rtw8822c_dpk_on(rtwdev, RF_PATH_A);
+ rtw8822c_dpk_on(rtwdev, RF_PATH_B);
+ rtw8822c_dpk_cal_coef1(rtwdev);
+}
+
+static void rtw8822c_dpk_enable_disable(struct rtw_dev *rtwdev)
+{
+ struct rtw_dpk_info *dpk_info = &rtwdev->dm_info.dpk_info;
+ u32 mask = BIT(15) | BIT(14);
+
+ rtw_write32_mask(rtwdev, REG_NCTL0, BIT_SUBPAGE, 0xc);
+
+ rtw_write32_mask(rtwdev, REG_DPD_CTL1_S0, BIT_DPD_EN,
+ dpk_info->is_dpk_pwr_on);
+ rtw_write32_mask(rtwdev, REG_DPD_CTL1_S1, BIT_DPD_EN,
+ dpk_info->is_dpk_pwr_on);
+
+ if (test_bit(RF_PATH_A, dpk_info->dpk_path_ok)) {
+ rtw_write32_mask(rtwdev, REG_DPD_CTL1_S0, mask, 0x0);
+ rtw_write8(rtwdev, REG_DPD_CTL0_S0, dpk_info->dpk_gs[RF_PATH_A]);
+ }
+ if (test_bit(RF_PATH_B, dpk_info->dpk_path_ok)) {
+ rtw_write32_mask(rtwdev, REG_DPD_CTL1_S1, mask, 0x0);
+ rtw_write8(rtwdev, REG_DPD_CTL0_S1, dpk_info->dpk_gs[RF_PATH_B]);
+ }
+}
+
+static void rtw8822c_dpk_reload_data(struct rtw_dev *rtwdev)
+{
+ struct rtw_dpk_info *dpk_info = &rtwdev->dm_info.dpk_info;
+ u8 path;
+
+ if (!test_bit(RF_PATH_A, dpk_info->dpk_path_ok) &&
+ !test_bit(RF_PATH_B, dpk_info->dpk_path_ok) &&
+ dpk_info->dpk_ch == 0)
+ return;
+
+ for (path = 0; path < rtwdev->hal.rf_path_num; path++) {
+ rtw_write32_mask(rtwdev, REG_NCTL0, BIT_SUBPAGE,
+ 0x8 | (path << 1));
+ if (dpk_info->dpk_band == RTW_BAND_2G)
+ rtw_write32(rtwdev, REG_DPD_LUT3, 0x1f100000);
+ else
+ rtw_write32(rtwdev, REG_DPD_LUT3, 0x1f0d0000);
+
+ rtw_write8(rtwdev, REG_DPD_AGC, dpk_info->dpk_txagc[path]);
+
+ rtw8822c_dpk_coef_write(rtwdev, path,
+ test_bit(path, dpk_info->dpk_path_ok));
+
+ rtw8822c_dpk_one_shot(rtwdev, path, RTW_DPK_DPK_ON);
+
+ rtw_write32_mask(rtwdev, REG_NCTL0, BIT_SUBPAGE, 0xc);
+
+ if (path == RF_PATH_A)
+ rtw_write32_mask(rtwdev, REG_DPD_CTL0_S0, BIT_GS_PWSF,
+ dpk_info->dpk_gs[path]);
+ else
+ rtw_write32_mask(rtwdev, REG_DPD_CTL0_S1, BIT_GS_PWSF,
+ dpk_info->dpk_gs[path]);
+ }
+ rtw8822c_dpk_cal_coef1(rtwdev);
+}
+
+static bool rtw8822c_dpk_reload(struct rtw_dev *rtwdev)
+{
+ struct rtw_dpk_info *dpk_info = &rtwdev->dm_info.dpk_info;
+ u8 channel;
+
+ dpk_info->is_reload = false;
+
+ channel = (u8)(rtw_read_rf(rtwdev, RF_PATH_A, 0x18, RFREG_MASK) & 0xff);
+
+ if (channel == dpk_info->dpk_ch) {
+ rtw_dbg(rtwdev, RTW_DBG_RFK,
+ "[DPK] DPK reload for CH%d!!\n", dpk_info->dpk_ch);
+ rtw8822c_dpk_reload_data(rtwdev);
+ dpk_info->is_reload = true;
+ }
+
+ return dpk_info->is_reload;
+}
+
+static void rtw8822c_do_dpk(struct rtw_dev *rtwdev)
+{
+ struct rtw_dpk_info *dpk_info = &rtwdev->dm_info.dpk_info;
+ struct rtw_backup_info bckp[DPK_BB_REG_NUM];
+ u32 rf_reg_backup[DPK_RF_REG_NUM][DPK_RF_PATH_NUM];
+ u32 bb_reg[DPK_BB_REG_NUM] = {
+ 0x520, 0x820, 0x824, 0x1c3c, 0x1d58, 0x1864,
+ 0x4164, 0x180c, 0x410c, 0x186c, 0x416c,
+ 0x1a14, 0x1e70, 0x80c, 0x1d70, 0x1e7c, 0x18a4, 0x41a4};
+ u32 rf_reg[DPK_RF_REG_NUM] = {
+ 0x0, 0x1a, 0x55, 0x63, 0x87, 0x8f, 0xde};
+ u8 path;
+
+ if (!dpk_info->is_dpk_pwr_on) {
+ rtw_dbg(rtwdev, RTW_DBG_RFK, "[DPK] Skip DPK due to DPD PWR off\n");
+ return;
+ } else if (rtw8822c_dpk_reload(rtwdev)) {
+ return;
+ }
+
+ for (path = RF_PATH_A; path < DPK_RF_PATH_NUM; path++)
+ ewma_thermal_init(&dpk_info->avg_thermal[path]);
+
+ rtw8822c_dpk_information(rtwdev);
+
+ rtw8822c_dpk_backup_registers(rtwdev, bb_reg, DPK_BB_REG_NUM, bckp);
+ rtw8822c_dpk_backup_rf_registers(rtwdev, rf_reg, rf_reg_backup);
+
+ rtw8822c_dpk_mac_bb_setting(rtwdev);
+ rtw8822c_dpk_afe_setting(rtwdev, true);
+ rtw8822c_dpk_pre_setting(rtwdev);
+ rtw8822c_dpk_result_reset(rtwdev);
+ rtw8822c_dpk_path_select(rtwdev);
+ rtw8822c_dpk_afe_setting(rtwdev, false);
+ rtw8822c_dpk_enable_disable(rtwdev);
+
+ rtw8822c_dpk_reload_rf_registers(rtwdev, rf_reg, rf_reg_backup);
+ for (path = 0; path < rtwdev->hal.rf_path_num; path++)
+ rtw8822c_dpk_rxbb_dc_cal(rtwdev, path);
+ rtw8822c_dpk_restore_registers(rtwdev, DPK_BB_REG_NUM, bckp);
+}
+
+void rtw8822c_dpk_track(struct rtw_dev *rtwdev)
+{
+ struct rtw_dpk_info *dpk_info = &rtwdev->dm_info.dpk_info;
+ u8 path;
+ u8 thermal_value[DPK_RF_PATH_NUM] = {0};
+ s8 offset[DPK_RF_PATH_NUM], delta_dpk[DPK_RF_PATH_NUM];
+
+ if (dpk_info->thermal_dpk[0] == 0 && dpk_info->thermal_dpk[1] == 0)
+ return;
+
+ for (path = 0; path < DPK_RF_PATH_NUM; path++) {
+ thermal_value[path] = rtw8822c_dpk_thermal_read(rtwdev, path);
+ ewma_thermal_add(&dpk_info->avg_thermal[path],
+ thermal_value[path]);
+ thermal_value[path] =
+ ewma_thermal_read(&dpk_info->avg_thermal[path]);
+ delta_dpk[path] = dpk_info->thermal_dpk[path] -
+ thermal_value[path];
+ offset[path] = delta_dpk[path] -
+ dpk_info->thermal_dpk_delta[path];
+ offset[path] &= 0x7f;
+
+ if (offset[path] != dpk_info->pre_pwsf[path]) {
+ rtw_write32_mask(rtwdev, REG_NCTL0, BIT_SUBPAGE,
+ 0x8 | (path << 1));
+ rtw_write32_mask(rtwdev, 0x1b58, GENMASK(6, 0),
+ offset[path]);
+ dpk_info->pre_pwsf[path] = offset[path];
+ }
+ }
+}
+
static struct rtw_pwr_seq_cmd trans_carddis_to_cardemu_8822c[] = {
{0x0086,
RTW_PWR_CUT_ALL_MSK,
@@ -2427,6 +3488,8 @@ static struct rtw_chip_ops rtw8822c_ops = {
.cfg_ldo25 = rtw8822c_cfg_ldo25,
.false_alarm_statistics = rtw8822c_false_alarm_statistics,
.do_iqk = rtw8822c_do_iqk,
+ .do_dpk = rtw8822c_do_dpk,
+ .dpk_track = rtw8822c_dpk_track,
.coex_set_init = rtw8822c_coex_cfg_init,
.coex_set_ant_switch = NULL,
@@ -2619,6 +3682,8 @@ struct rtw_chip_info rtw8822c_hw_spec = {
.rf_tbl = {&rtw8822c_rf_a_tbl, &rtw8822c_rf_b_tbl},
.rfe_defs = rtw8822c_rfe_defs,
.rfe_defs_size = ARRAY_SIZE(rtw8822c_rfe_defs),
+ .en_dis_dpd = true,
+ .dpd_ratemask = DIS_DPD_RATEALL,
.coex_para_ver = 0x19062706,
.bt_desired_ver = 0x6,
diff --git a/drivers/net/wireless/realtek/rtw88/rtw8822c.h b/drivers/net/wireless/realtek/rtw88/rtw8822c.h
index 14a8894..438db74 100644
--- a/drivers/net/wireless/realtek/rtw88/rtw8822c.h
+++ b/drivers/net/wireless/realtek/rtw88/rtw8822c.h
@@ -96,6 +96,35 @@ struct rtw8822c_efuse {
};
};
+enum rtw8822c_dpk_agc_phase {
+ RTW_DPK_GAIN_CHECK,
+ RTW_DPK_GAIN_LARGE,
+ RTW_DPK_GAIN_LESS,
+ RTW_DPK_GL_LARGE,
+ RTW_DPK_GL_LESS,
+ RTW_DPK_LOSS_CHECK,
+ RTW_DPK_AGC_OUT,
+};
+
+enum rtw8822c_dpk_one_shot_action {
+ RTW_DPK_CAL_PWR,
+ RTW_DPK_GAIN_LOSS,
+ RTW_DPK_DO_DPK,
+ RTW_DPK_DPK_ON,
+ RTW_DPK_DAGC,
+ RTW_DPK_ACTION_MAX
+};
+
+void rtw8822c_parse_tbl_dpk(struct rtw_dev *rtwdev,
+ const struct rtw_table *tbl);
+
+#define RTW_DECL_TABLE_DPK(name) \
+const struct rtw_table name ## _tbl = { \
+ .data = name, \
+ .size = ARRAY_SIZE(name), \
+ .parse = rtw8822c_parse_tbl_dpk, \
+}
+
#define DACK_PATH_8822C 2
#define DACK_REG_8822C 16
#define DACK_RF_8822C 1
@@ -208,4 +237,59 @@ struct rtw8822c_efuse {
#define REG_DCKB_Q_0 0x41d8
#define REG_DCKB_Q_1 0x41dc
+#define RF_MODE_TRXAGC 0x00
+#define RF_RXAGC_OFFSET 0x19
+#define RF_BW_TRXBB 0x1a
+#define RF_TX_GAIN_OFFSET 0x55
+#define RF_TX_GAIN 0x56
+#define RF_TXA_LB_SW 0x63
+#define RF_RXG_GAIN 0x87
+#define RF_RXA_MIX_GAIN 0x8a
+#define RF_EXT_TIA_BW 0x8f
+#define RF_DEBUG 0xde
+
+#define REG_NCTL0 0x1b00
+#define REG_DPD_CTL0_S0 0x1b04
+#define REG_DPD_CTL1_S0 0x1b08
+#define REG_IQK_CTL1 0x1b20
+#define REG_DPD_LUT0 0x1b44
+#define REG_DPD_CTL0_S1 0x1b5c
+#define REG_DPD_LUT3 0x1b60
+#define REG_DPD_CTL1_S1 0x1b60
+#define REG_DPD_AGC 0x1b67
+#define REG_DPD_CTL0 0x1bb4
+#define REG_R_CONFIG 0x1bcc
+#define REG_RXSRAM_CTL 0x1bd4
+#define REG_DPD_CTL11 0x1be4
+#define REG_DPD_CTL12 0x1be8
+#define REG_DPD_CTL15 0x1bf4
+#define REG_DPD_CTL16 0x1bf8
+#define REG_STAT_RPT 0x1bfc
+
+#define BIT_EXT_TIA_BW BIT(1)
+#define BIT_DE_TRXBW BIT(2)
+#define BIT_DE_TX_GAIN BIT(16)
+#define BIT_RXG_GAIN BIT(18)
+#define BIT_DE_PWR_TRIM BIT(19)
+#define BIT_INNER_LB BIT(21)
+#define BIT_BYPASS_DPD BIT(25)
+#define BIT_DPD_EN BIT(31)
+#define BIT_SUBPAGE GENMASK(3, 0)
+#define BIT_TXAGC GENMASK(4, 0)
+#define BIT_GAIN_TXBB GENMASK(4, 0)
+#define BIT_LB_ATT GENMASK(4, 2)
+#define BIT_RXA_MIX_GAIN GENMASK(4, 3)
+#define BIT_IQ_SWITCH GENMASK(5, 0)
+#define BIT_DPD_CLK GENMASK(7, 4)
+#define BIT_RXAGC GENMASK(9, 5)
+#define BIT_BW_RXBB GENMASK(11, 10)
+#define BIT_LB_SW GENMASK(13, 12)
+#define BIT_BW_TXBB GENMASK(14, 12)
+#define BIT_GLOSS_DB GENMASK(14, 12)
+#define BIT_TXA_LB_ATT GENMASK(15, 14)
+#define BIT_TX_OFFSET_VAL GENMASK(18, 14)
+#define BIT_RPT_SEL GENMASK(20, 16)
+#define BIT_GS_PWSF GENMASK(27, 0)
+#define BIT_RPT_DGAIN GENMASK(27, 16)
+#define BIT_TX_CFIR GENMASK(31, 30)
#endif
diff --git a/drivers/net/wireless/realtek/rtw88/rtw8822c_table.c b/drivers/net/wireless/realtek/rtw88/rtw8822c_table.c
index 24df772..e2dd4c7 100644
--- a/drivers/net/wireless/realtek/rtw88/rtw8822c_table.c
+++ b/drivers/net/wireless/realtek/rtw88/rtw8822c_table.c
@@ -4,6 +4,7 @@
#include "main.h"
#include "phy.h"
+#include "rtw8822c.h"
#include "rtw8822c_table.h"
static const u32 rtw8822c_mac[] = {
@@ -13473,6 +13474,109 @@ static const struct rtw_txpwr_lmt_cfg_pair rtw8822c_txpwr_lmt_type0[] = {
RTW_DECL_TABLE_TXPWR_LMT(rtw8822c_txpwr_lmt_type0);
+static const u32 rtw8822c_dpk_afe_no_dpk[] = {
+ 0x18a4, BIT(7), 0,
+ 0x41a4, BIT(7), 0,
+ 0x1c38, MASKDWORD, 0xffa1005e,
+ 0x1830, MASKDWORD, 0x700b8041,
+ 0x1830, MASKDWORD, 0x70144041,
+ 0x1830, MASKDWORD, 0x70244041,
+ 0x1830, MASKDWORD, 0x70344041,
+ 0x1830, MASKDWORD, 0x70444041,
+ 0x1830, MASKDWORD, 0x705b8041,
+ 0x1830, MASKDWORD, 0x70644041,
+ 0x4130, MASKDWORD, 0x700b8041,
+ 0x4130, MASKDWORD, 0x70144041,
+ 0x4130, MASKDWORD, 0x70244041,
+ 0x4130, MASKDWORD, 0x70344041,
+ 0x4130, MASKDWORD, 0x70444041,
+ 0x4130, MASKDWORD, 0x705b8041,
+ 0x4130, MASKDWORD, 0x70644041,
+ 0x1830, MASKDWORD, 0x707b8041,
+ 0x1830, MASKDWORD, 0x708b8041,
+ 0x1830, MASKDWORD, 0x709b8041,
+ 0x1830, MASKDWORD, 0x70ab8041,
+ 0x1830, MASKDWORD, 0x70bb8041,
+ 0x1830, MASKDWORD, 0x70cb8041,
+ 0x1830, MASKDWORD, 0x70db8041,
+ 0x1830, MASKDWORD, 0x70eb8041,
+ 0x1830, MASKDWORD, 0x70fb8041,
+ 0x4130, MASKDWORD, 0x707b8041,
+ 0x4130, MASKDWORD, 0x708b8041,
+ 0x4130, MASKDWORD, 0x709b8041,
+ 0x4130, MASKDWORD, 0x70ab8041,
+ 0x4130, MASKDWORD, 0x70bb8041,
+ 0x4130, MASKDWORD, 0x70cb8041,
+ 0x4130, MASKDWORD, 0x70db8041,
+ 0x4130, MASKDWORD, 0x70eb8041,
+ 0x4130, MASKDWORD, 0x70fb8041,
+};
+
+RTW_DECL_TABLE_DPK(rtw8822c_dpk_afe_no_dpk);
+
+static const u32 rtw8822c_dpk_afe_is_dpk[] = {
+ 0x1c38, MASKDWORD, 0xFFFFFFFF,
+ 0x1830, MASKDWORD, 0x700f0001,
+ 0x1830, MASKDWORD, 0x700f0001,
+ 0x1830, MASKDWORD, 0x701f0001,
+ 0x1830, MASKDWORD, 0x702f0001,
+ 0x1830, MASKDWORD, 0x703f0001,
+ 0x1830, MASKDWORD, 0x704f0001,
+ 0x1830, MASKDWORD, 0x705f0001,
+ 0x1830, MASKDWORD, 0x706f0001,
+ 0x1830, MASKDWORD, 0x707f0001,
+ 0x1830, MASKDWORD, 0x708f0001,
+ 0x1830, MASKDWORD, 0x709f0001,
+ 0x1830, MASKDWORD, 0x70af0001,
+ 0x1830, MASKDWORD, 0x70bf0001,
+ 0x1830, MASKDWORD, 0x70cf0001,
+ 0x1830, MASKDWORD, 0x70df0001,
+ 0x1830, MASKDWORD, 0x70ef0001,
+ 0x1830, MASKDWORD, 0x70ff0001,
+ 0x1830, MASKDWORD, 0x70ff0001,
+ 0x4130, MASKDWORD, 0x700f0001,
+ 0x4130, MASKDWORD, 0x700f0001,
+ 0x4130, MASKDWORD, 0x701f0001,
+ 0x4130, MASKDWORD, 0x702f0001,
+ 0x4130, MASKDWORD, 0x703f0001,
+ 0x4130, MASKDWORD, 0x704f0001,
+ 0x4130, MASKDWORD, 0x705f0001,
+ 0x4130, MASKDWORD, 0x706f0001,
+ 0x4130, MASKDWORD, 0x707f0001,
+ 0x4130, MASKDWORD, 0x708f0001,
+ 0x4130, MASKDWORD, 0x709f0001,
+ 0x4130, MASKDWORD, 0x70af0001,
+ 0x4130, MASKDWORD, 0x70bf0001,
+ 0x4130, MASKDWORD, 0x70cf0001,
+ 0x4130, MASKDWORD, 0x70df0001,
+ 0x4130, MASKDWORD, 0x70ef0001,
+ 0x4130, MASKDWORD, 0x70ff0001,
+ 0x4130, MASKDWORD, 0x70ff0001,
+ 0x18a4, BIT(7), 1,
+ 0x41a4, BIT(7), 1,
+};
+
+RTW_DECL_TABLE_DPK(rtw8822c_dpk_afe_is_dpk);
+
+static const u32 rtw8822c_dpk_mac_bb[] = {
+ 0x1e24, BIT(17), 0x1,
+ 0x1d58, GENMASK(11, 3), 0x1ff,
+ 0x1864, BIT(31), 0x1,
+ 0x4164, BIT(31), 0x1,
+ 0x180c, BIT(27), 0x1,
+ 0x410c, BIT(27), 0x1,
+ 0x186c, BIT(7), 0x1,
+ 0x416c, BIT(7), 0x1,
+ 0x180c, GENMASK(1, 0), 0x0,
+ 0x410c, GENMASK(1, 0), 0x0,
+ 0x1a14, GENMASK(9, 8), 0x3,
+ 0x80c, GENMASK(3, 0), 0x8,
+ 0x824, GENMASK(19, 16), 0x3,
+ 0x824, GENMASK(27, 24), 0x3,
+};
+
+RTW_DECL_TABLE_DPK(rtw8822c_dpk_mac_bb);
+
static const u32 rtw8822c_array_mp_cal_init[] = {
0x1b00, 0x00000008,
0x1b00, 0x00A70008,
@@ -13497,6 +13601,7 @@ static const u32 rtw8822c_array_mp_cal_init[] = {
0x1b9c, 0x00000000,
0x1bc0, 0x01000000,
0x1bcc, 0x00000000,
+ 0x1bd8, 0xe0000001,
0x1be4, 0x00000000,
0x1bec, 0x40000000,
0x1b40, 0x40000000,
@@ -13760,6 +13865,7 @@ static const u32 rtw8822c_array_mp_cal_init[] = {
0x1b9c, 0x00000000,
0x1bc0, 0x01000000,
0x1bcc, 0x00000000,
+ 0x1bd8, 0xe0000001,
0x1be4, 0x00000000,
0x1bec, 0x40000000,
0x1b60, 0x1F100000,
@@ -13966,1656 +14072,1970 @@ static const u32 rtw8822c_array_mp_cal_init[] = {
0x1b80, 0x00020257,
0x1b80, 0x30000265,
0x1b80, 0x30000267,
- 0x1b80, 0xa5100275,
- 0x1b80, 0xa5100277,
- 0x1b80, 0xe3520285,
- 0x1b80, 0xe3520287,
- 0x1b80, 0xf01d0295,
- 0x1b80, 0xf01d0297,
- 0x1b80, 0xf11d02a5,
- 0x1b80, 0xf11d02a7,
- 0x1b80, 0xf21d02b5,
- 0x1b80, 0xf21d02b7,
- 0x1b80, 0xf31d02c5,
- 0x1b80, 0xf31d02c7,
- 0x1b80, 0xf41d02d5,
- 0x1b80, 0xf41d02d7,
- 0x1b80, 0xf51d02e5,
- 0x1b80, 0xf51d02e7,
- 0x1b80, 0xf61d02f5,
- 0x1b80, 0xf61d02f7,
- 0x1b80, 0xf71d0305,
- 0x1b80, 0xf71d0307,
- 0x1b80, 0xf81d0315,
- 0x1b80, 0xf81d0317,
- 0x1b80, 0xf91d0325,
- 0x1b80, 0xf91d0327,
- 0x1b80, 0xfa1d0335,
- 0x1b80, 0xfa1d0337,
- 0x1b80, 0xfb1d0345,
- 0x1b80, 0xfb1d0347,
- 0x1b80, 0xfc1d0355,
- 0x1b80, 0xfc1d0357,
- 0x1b80, 0xfd1d0365,
- 0x1b80, 0xfd1d0367,
- 0x1b80, 0xf21d0375,
- 0x1b80, 0xf21d0377,
- 0x1b80, 0xf31d0385,
- 0x1b80, 0xf31d0387,
- 0x1b80, 0xf41d0395,
- 0x1b80, 0xf41d0397,
- 0x1b80, 0xf51d03a5,
- 0x1b80, 0xf51d03a7,
- 0x1b80, 0xf61d03b5,
- 0x1b80, 0xf61d03b7,
- 0x1b80, 0xf71d03c5,
- 0x1b80, 0xf71d03c7,
- 0x1b80, 0xf81d03d5,
- 0x1b80, 0xf81d03d7,
- 0x1b80, 0xf91d03e5,
- 0x1b80, 0xf91d03e7,
- 0x1b80, 0xfa1d03f5,
- 0x1b80, 0xfa1d03f7,
- 0x1b80, 0xfb1d0405,
- 0x1b80, 0xfb1d0407,
- 0x1b80, 0xfc1d0415,
- 0x1b80, 0xfc1d0417,
- 0x1b80, 0xfd1d0425,
- 0x1b80, 0xfd1d0427,
- 0x1b80, 0xfe1d0435,
- 0x1b80, 0xfe1d0437,
- 0x1b80, 0xff1d0445,
- 0x1b80, 0xff1d0447,
- 0x1b80, 0x00010455,
- 0x1b80, 0x00010457,
- 0x1b80, 0x30620465,
- 0x1b80, 0x30620467,
- 0x1b80, 0x307a0475,
- 0x1b80, 0x307a0477,
- 0x1b80, 0x307c0485,
- 0x1b80, 0x307c0487,
- 0x1b80, 0x30eb0495,
- 0x1b80, 0x30eb0497,
- 0x1b80, 0x308004a5,
- 0x1b80, 0x308004a7,
- 0x1b80, 0x308c04b5,
- 0x1b80, 0x308c04b7,
- 0x1b80, 0x309804c5,
- 0x1b80, 0x309804c7,
- 0x1b80, 0x307f04d5,
- 0x1b80, 0x307f04d7,
- 0x1b80, 0x308b04e5,
- 0x1b80, 0x308b04e7,
- 0x1b80, 0x309704f5,
- 0x1b80, 0x309704f7,
- 0x1b80, 0x30ef0505,
- 0x1b80, 0x30ef0507,
- 0x1b80, 0x30fa0515,
- 0x1b80, 0x30fa0517,
- 0x1b80, 0x31050525,
- 0x1b80, 0x31050527,
- 0x1b80, 0x316a0535,
- 0x1b80, 0x316a0537,
- 0x1b80, 0x307a0545,
- 0x1b80, 0x307a0547,
- 0x1b80, 0x30e90555,
- 0x1b80, 0x30e90557,
- 0x1b80, 0x31870565,
- 0x1b80, 0x31870567,
- 0x1b80, 0x31a00575,
- 0x1b80, 0x31a00577,
- 0x1b80, 0x31ba0585,
- 0x1b80, 0x31ba0587,
- 0x1b80, 0x31c20595,
- 0x1b80, 0x31c20597,
- 0x1b80, 0x31ca05a5,
- 0x1b80, 0x31ca05a7,
- 0x1b80, 0x31d205b5,
- 0x1b80, 0x31d205b7,
- 0x1b80, 0x31da05c5,
- 0x1b80, 0x31da05c7,
- 0x1b80, 0x31e905d5,
- 0x1b80, 0x31e905d7,
- 0x1b80, 0x31f805e5,
- 0x1b80, 0x31f805e7,
- 0x1b80, 0x31fe05f5,
- 0x1b80, 0x31fe05f7,
- 0x1b80, 0x32040605,
- 0x1b80, 0x32040607,
- 0x1b80, 0x320a0615,
- 0x1b80, 0x320a0617,
- 0x1b80, 0xe2eb0625,
- 0x1b80, 0xe2eb0627,
- 0x1b80, 0x4d040635,
- 0x1b80, 0x4d040637,
- 0x1b80, 0x20800645,
- 0x1b80, 0x20800647,
- 0x1b80, 0x00000655,
- 0x1b80, 0x00000657,
- 0x1b80, 0x4d000665,
- 0x1b80, 0x4d000667,
- 0x1b80, 0x55070675,
- 0x1b80, 0x55070677,
- 0x1b80, 0xe2e30685,
- 0x1b80, 0xe2e30687,
- 0x1b80, 0xe2e30695,
- 0x1b80, 0xe2e30697,
- 0x1b80, 0x4d0406a5,
- 0x1b80, 0x4d0406a7,
- 0x1b80, 0x208806b5,
- 0x1b80, 0x208806b7,
- 0x1b80, 0x020006c5,
- 0x1b80, 0x020006c7,
- 0x1b80, 0x4d0006d5,
- 0x1b80, 0x4d0006d7,
- 0x1b80, 0x550f06e5,
- 0x1b80, 0x550f06e7,
- 0x1b80, 0xe2e306f5,
- 0x1b80, 0xe2e306f7,
- 0x1b80, 0x4f020705,
- 0x1b80, 0x4f020707,
- 0x1b80, 0x4e000715,
- 0x1b80, 0x4e000717,
- 0x1b80, 0x53020725,
- 0x1b80, 0x53020727,
- 0x1b80, 0x52010735,
- 0x1b80, 0x52010737,
- 0x1b80, 0xe2e70745,
- 0x1b80, 0xe2e70747,
- 0x1b80, 0x4d080755,
- 0x1b80, 0x4d080757,
- 0x1b80, 0x57100765,
- 0x1b80, 0x57100767,
- 0x1b80, 0x57000775,
- 0x1b80, 0x57000777,
- 0x1b80, 0x4d000785,
- 0x1b80, 0x4d000787,
- 0x1b80, 0x00010795,
- 0x1b80, 0x00010797,
- 0x1b80, 0xe2eb07a5,
- 0x1b80, 0xe2eb07a7,
- 0x1b80, 0x000107b5,
- 0x1b80, 0x000107b7,
- 0x1b80, 0x620607c5,
- 0x1b80, 0x620607c7,
- 0x1b80, 0xe2eb07d5,
- 0x1b80, 0xe2eb07d7,
- 0x1b80, 0x000107e5,
- 0x1b80, 0x000107e7,
- 0x1b80, 0x620607f5,
- 0x1b80, 0x620607f7,
- 0x1b80, 0x30ad0805,
- 0x1b80, 0x30ad0807,
- 0x1b80, 0x00260815,
- 0x1b80, 0x00260817,
- 0x1b80, 0xe3450825,
- 0x1b80, 0xe3450827,
- 0x1b80, 0x00020835,
- 0x1b80, 0x00020837,
- 0x1b80, 0x54ec0845,
- 0x1b80, 0x54ec0847,
- 0x1b80, 0x0ba60855,
- 0x1b80, 0x0ba60857,
- 0x1b80, 0x00260865,
- 0x1b80, 0x00260867,
- 0x1b80, 0xe3450875,
- 0x1b80, 0xe3450877,
- 0x1b80, 0x00020885,
- 0x1b80, 0x00020887,
- 0x1b80, 0x63c30895,
- 0x1b80, 0x63c30897,
- 0x1b80, 0x30d908a5,
- 0x1b80, 0x30d908a7,
- 0x1b80, 0x620608b5,
- 0x1b80, 0x620608b7,
- 0x1b80, 0x30a508c5,
- 0x1b80, 0x30a508c7,
- 0x1b80, 0x002408d5,
- 0x1b80, 0x002408d7,
- 0x1b80, 0xe34508e5,
- 0x1b80, 0xe34508e7,
- 0x1b80, 0x000208f5,
- 0x1b80, 0x000208f7,
- 0x1b80, 0x54ea0905,
- 0x1b80, 0x54ea0907,
- 0x1b80, 0x0ba60915,
- 0x1b80, 0x0ba60917,
- 0x1b80, 0x00240925,
- 0x1b80, 0x00240927,
- 0x1b80, 0xe3450935,
- 0x1b80, 0xe3450937,
- 0x1b80, 0x00020945,
- 0x1b80, 0x00020947,
- 0x1b80, 0x63c30955,
- 0x1b80, 0x63c30957,
- 0x1b80, 0x30d90965,
- 0x1b80, 0x30d90967,
+ 0x1b80, 0xa5110275,
+ 0x1b80, 0xa5110277,
+ 0x1b80, 0xe3ef0285,
+ 0x1b80, 0xe3ef0287,
+ 0x1b80, 0xf01f0295,
+ 0x1b80, 0xf01f0297,
+ 0x1b80, 0xf11f02a5,
+ 0x1b80, 0xf11f02a7,
+ 0x1b80, 0xf21f02b5,
+ 0x1b80, 0xf21f02b7,
+ 0x1b80, 0xf31f02c5,
+ 0x1b80, 0xf31f02c7,
+ 0x1b80, 0xf41f02d5,
+ 0x1b80, 0xf41f02d7,
+ 0x1b80, 0xf51f02e5,
+ 0x1b80, 0xf51f02e7,
+ 0x1b80, 0xf61f02f5,
+ 0x1b80, 0xf61f02f7,
+ 0x1b80, 0xf71f0305,
+ 0x1b80, 0xf71f0307,
+ 0x1b80, 0xf81f0315,
+ 0x1b80, 0xf81f0317,
+ 0x1b80, 0xf91f0325,
+ 0x1b80, 0xf91f0327,
+ 0x1b80, 0xfa1f0335,
+ 0x1b80, 0xfa1f0337,
+ 0x1b80, 0xfb1f0345,
+ 0x1b80, 0xfb1f0347,
+ 0x1b80, 0xfc1f0355,
+ 0x1b80, 0xfc1f0357,
+ 0x1b80, 0xfd1f0365,
+ 0x1b80, 0xfd1f0367,
+ 0x1b80, 0xfe1f0375,
+ 0x1b80, 0xfe1f0377,
+ 0x1b80, 0xf11f0385,
+ 0x1b80, 0xf11f0387,
+ 0x1b80, 0xf21f0395,
+ 0x1b80, 0xf21f0397,
+ 0x1b80, 0xf31f03a5,
+ 0x1b80, 0xf31f03a7,
+ 0x1b80, 0xf41f03b5,
+ 0x1b80, 0xf41f03b7,
+ 0x1b80, 0xf51f03c5,
+ 0x1b80, 0xf51f03c7,
+ 0x1b80, 0xf61f03d5,
+ 0x1b80, 0xf61f03d7,
+ 0x1b80, 0xf71f03e5,
+ 0x1b80, 0xf71f03e7,
+ 0x1b80, 0xf81f03f5,
+ 0x1b80, 0xf81f03f7,
+ 0x1b80, 0xf91f0405,
+ 0x1b80, 0xf91f0407,
+ 0x1b80, 0xfa1f0415,
+ 0x1b80, 0xfa1f0417,
+ 0x1b80, 0xfb1f0425,
+ 0x1b80, 0xfb1f0427,
+ 0x1b80, 0xfc1f0435,
+ 0x1b80, 0xfc1f0437,
+ 0x1b80, 0xfd1f0445,
+ 0x1b80, 0xfd1f0447,
+ 0x1b80, 0xfe1f0455,
+ 0x1b80, 0xfe1f0457,
+ 0x1b80, 0xff1f0465,
+ 0x1b80, 0xff1f0467,
+ 0x1b80, 0x00010475,
+ 0x1b80, 0x00010477,
+ 0x1b80, 0x30660485,
+ 0x1b80, 0x30660487,
+ 0x1b80, 0x307e0495,
+ 0x1b80, 0x307e0497,
+ 0x1b80, 0x308204a5,
+ 0x1b80, 0x308204a7,
+ 0x1b80, 0x310c04b5,
+ 0x1b80, 0x310c04b7,
+ 0x1b80, 0x308904c5,
+ 0x1b80, 0x308904c7,
+ 0x1b80, 0x309804d5,
+ 0x1b80, 0x309804d7,
+ 0x1b80, 0x30a704e5,
+ 0x1b80, 0x30a704e7,
+ 0x1b80, 0x308804f5,
+ 0x1b80, 0x308804f7,
+ 0x1b80, 0x30970505,
+ 0x1b80, 0x30970507,
+ 0x1b80, 0x30a60515,
+ 0x1b80, 0x30a60517,
+ 0x1b80, 0x31100525,
+ 0x1b80, 0x31100527,
+ 0x1b80, 0x311b0535,
+ 0x1b80, 0x311b0537,
+ 0x1b80, 0x31260545,
+ 0x1b80, 0x31260547,
+ 0x1b80, 0x31ae0555,
+ 0x1b80, 0x31ae0557,
+ 0x1b80, 0x318b0565,
+ 0x1b80, 0x318b0567,
+ 0x1b80, 0x31cb0575,
+ 0x1b80, 0x31cb0577,
+ 0x1b80, 0x307e0585,
+ 0x1b80, 0x307e0587,
+ 0x1b80, 0x310a0595,
+ 0x1b80, 0x310a0597,
+ 0x1b80, 0x31db05a5,
+ 0x1b80, 0x31db05a7,
+ 0x1b80, 0x31f405b5,
+ 0x1b80, 0x31f405b7,
+ 0x1b80, 0x320e05c5,
+ 0x1b80, 0x320e05c7,
+ 0x1b80, 0x321605d5,
+ 0x1b80, 0x321605d7,
+ 0x1b80, 0x321e05e5,
+ 0x1b80, 0x321e05e7,
+ 0x1b80, 0x322605f5,
+ 0x1b80, 0x322605f7,
+ 0x1b80, 0x322e0605,
+ 0x1b80, 0x322e0607,
+ 0x1b80, 0x323d0615,
+ 0x1b80, 0x323d0617,
+ 0x1b80, 0x324c0625,
+ 0x1b80, 0x324c0627,
+ 0x1b80, 0x32520635,
+ 0x1b80, 0x32520637,
+ 0x1b80, 0x32580645,
+ 0x1b80, 0x32580647,
+ 0x1b80, 0x325e0655,
+ 0x1b80, 0x325e0657,
+ 0x1b80, 0xe3880665,
+ 0x1b80, 0xe3880667,
+ 0x1b80, 0x4d040675,
+ 0x1b80, 0x4d040677,
+ 0x1b80, 0x20800685,
+ 0x1b80, 0x20800687,
+ 0x1b80, 0x00000695,
+ 0x1b80, 0x00000697,
+ 0x1b80, 0x4d0006a5,
+ 0x1b80, 0x4d0006a7,
+ 0x1b80, 0x550706b5,
+ 0x1b80, 0x550706b7,
+ 0x1b80, 0xe38006c5,
+ 0x1b80, 0xe38006c7,
+ 0x1b80, 0xe38006d5,
+ 0x1b80, 0xe38006d7,
+ 0x1b80, 0x4d0406e5,
+ 0x1b80, 0x4d0406e7,
+ 0x1b80, 0x208806f5,
+ 0x1b80, 0x208806f7,
+ 0x1b80, 0x02000705,
+ 0x1b80, 0x02000707,
+ 0x1b80, 0x4d000715,
+ 0x1b80, 0x4d000717,
+ 0x1b80, 0x550f0725,
+ 0x1b80, 0x550f0727,
+ 0x1b80, 0xe3800735,
+ 0x1b80, 0xe3800737,
+ 0x1b80, 0x4f020745,
+ 0x1b80, 0x4f020747,
+ 0x1b80, 0x4e000755,
+ 0x1b80, 0x4e000757,
+ 0x1b80, 0x53020765,
+ 0x1b80, 0x53020767,
+ 0x1b80, 0x52010775,
+ 0x1b80, 0x52010777,
+ 0x1b80, 0xe3840785,
+ 0x1b80, 0xe3840787,
+ 0x1b80, 0x4d080795,
+ 0x1b80, 0x4d080797,
+ 0x1b80, 0x571007a5,
+ 0x1b80, 0x571007a7,
+ 0x1b80, 0x570007b5,
+ 0x1b80, 0x570007b7,
+ 0x1b80, 0x4d0007c5,
+ 0x1b80, 0x4d0007c7,
+ 0x1b80, 0x000107d5,
+ 0x1b80, 0x000107d7,
+ 0x1b80, 0xe38807e5,
+ 0x1b80, 0xe38807e7,
+ 0x1b80, 0x0bbd07f5,
+ 0x1b80, 0x0bbd07f7,
+ 0x1b80, 0xe3e20805,
+ 0x1b80, 0xe3e20807,
+ 0x1b80, 0x00010815,
+ 0x1b80, 0x00010817,
+ 0x1b80, 0x62060825,
+ 0x1b80, 0x62060827,
+ 0x1b80, 0xe3880835,
+ 0x1b80, 0xe3880837,
+ 0x1b80, 0x0bbd0845,
+ 0x1b80, 0x0bbd0847,
+ 0x1b80, 0xe3e20855,
+ 0x1b80, 0xe3e20857,
+ 0x1b80, 0x00010865,
+ 0x1b80, 0x00010867,
+ 0x1b80, 0x00010875,
+ 0x1b80, 0x00010877,
+ 0x1b80, 0x62060885,
+ 0x1b80, 0x62060887,
+ 0x1b80, 0x30bc0895,
+ 0x1b80, 0x30bc0897,
+ 0x1b80, 0x002608a5,
+ 0x1b80, 0x002608a7,
+ 0x1b80, 0xe3e208b5,
+ 0x1b80, 0xe3e208b7,
+ 0x1b80, 0x000208c5,
+ 0x1b80, 0x000208c7,
+ 0x1b80, 0x54ec08d5,
+ 0x1b80, 0x54ec08d7,
+ 0x1b80, 0x0ba608e5,
+ 0x1b80, 0x0ba608e7,
+ 0x1b80, 0x002608f5,
+ 0x1b80, 0x002608f7,
+ 0x1b80, 0xe3e20905,
+ 0x1b80, 0xe3e20907,
+ 0x1b80, 0x00020915,
+ 0x1b80, 0x00020917,
+ 0x1b80, 0xf7f50925,
+ 0x1b80, 0xf7f50927,
+ 0x1b80, 0x00300935,
+ 0x1b80, 0x00300937,
+ 0x1b80, 0x63c30945,
+ 0x1b80, 0x63c30947,
+ 0x1b80, 0x00020955,
+ 0x1b80, 0x00020957,
+ 0x1b80, 0x318b0965,
+ 0x1b80, 0x318b0967,
0x1b80, 0x62060975,
0x1b80, 0x62060977,
- 0x1b80, 0x6c100985,
- 0x1b80, 0x6c100987,
- 0x1b80, 0x6d0f0995,
- 0x1b80, 0x6d0f0997,
- 0x1b80, 0xe2eb09a5,
- 0x1b80, 0xe2eb09a7,
- 0x1b80, 0xe34509b5,
- 0x1b80, 0xe34509b7,
- 0x1b80, 0x6c2409c5,
- 0x1b80, 0x6c2409c7,
- 0x1b80, 0xe2eb09d5,
- 0x1b80, 0xe2eb09d7,
- 0x1b80, 0xe34509e5,
- 0x1b80, 0xe34509e7,
- 0x1b80, 0x6c4409f5,
- 0x1b80, 0x6c4409f7,
- 0x1b80, 0xe2eb0a05,
- 0x1b80, 0xe2eb0a07,
- 0x1b80, 0xe3450a15,
- 0x1b80, 0xe3450a17,
- 0x1b80, 0x6c640a25,
- 0x1b80, 0x6c640a27,
- 0x1b80, 0xe2eb0a35,
- 0x1b80, 0xe2eb0a37,
- 0x1b80, 0xe3450a45,
- 0x1b80, 0xe3450a47,
- 0x1b80, 0x0baa0a55,
- 0x1b80, 0x0baa0a57,
- 0x1b80, 0x6c840a65,
- 0x1b80, 0x6c840a67,
- 0x1b80, 0x6d0f0a75,
- 0x1b80, 0x6d0f0a77,
- 0x1b80, 0xe2eb0a85,
- 0x1b80, 0xe2eb0a87,
- 0x1b80, 0xe3450a95,
- 0x1b80, 0xe3450a97,
- 0x1b80, 0x6ca40aa5,
- 0x1b80, 0x6ca40aa7,
- 0x1b80, 0xe2eb0ab5,
- 0x1b80, 0xe2eb0ab7,
- 0x1b80, 0xe3450ac5,
- 0x1b80, 0xe3450ac7,
- 0x1b80, 0x0bac0ad5,
- 0x1b80, 0x0bac0ad7,
- 0x1b80, 0x6cc40ae5,
- 0x1b80, 0x6cc40ae7,
- 0x1b80, 0x6d0f0af5,
- 0x1b80, 0x6d0f0af7,
- 0x1b80, 0xe2eb0b05,
- 0x1b80, 0xe2eb0b07,
- 0x1b80, 0xe3450b15,
- 0x1b80, 0xe3450b17,
- 0x1b80, 0x6ce40b25,
- 0x1b80, 0x6ce40b27,
- 0x1b80, 0xe2eb0b35,
- 0x1b80, 0xe2eb0b37,
- 0x1b80, 0xe3450b45,
- 0x1b80, 0xe3450b47,
- 0x1b80, 0x6cf40b55,
- 0x1b80, 0x6cf40b57,
- 0x1b80, 0xe2eb0b65,
- 0x1b80, 0xe2eb0b67,
- 0x1b80, 0xe3450b75,
- 0x1b80, 0xe3450b77,
- 0x1b80, 0x6c0c0b85,
- 0x1b80, 0x6c0c0b87,
- 0x1b80, 0x6d000b95,
- 0x1b80, 0x6d000b97,
- 0x1b80, 0xe2eb0ba5,
- 0x1b80, 0xe2eb0ba7,
- 0x1b80, 0xe3450bb5,
- 0x1b80, 0xe3450bb7,
- 0x1b80, 0x6c1c0bc5,
- 0x1b80, 0x6c1c0bc7,
- 0x1b80, 0xe2eb0bd5,
- 0x1b80, 0xe2eb0bd7,
- 0x1b80, 0xe3450be5,
- 0x1b80, 0xe3450be7,
- 0x1b80, 0x6c3c0bf5,
- 0x1b80, 0x6c3c0bf7,
- 0x1b80, 0xe2eb0c05,
- 0x1b80, 0xe2eb0c07,
- 0x1b80, 0xe3450c15,
- 0x1b80, 0xe3450c17,
- 0x1b80, 0xf4bf0c25,
- 0x1b80, 0xf4bf0c27,
- 0x1b80, 0xf7be0c35,
- 0x1b80, 0xf7be0c37,
- 0x1b80, 0x6c5c0c45,
- 0x1b80, 0x6c5c0c47,
- 0x1b80, 0xe2eb0c55,
- 0x1b80, 0xe2eb0c57,
- 0x1b80, 0xe3450c65,
- 0x1b80, 0xe3450c67,
- 0x1b80, 0x6c7c0c75,
- 0x1b80, 0x6c7c0c77,
- 0x1b80, 0xe2eb0c85,
- 0x1b80, 0xe2eb0c87,
- 0x1b80, 0xe3450c95,
- 0x1b80, 0xe3450c97,
- 0x1b80, 0xf5c30ca5,
- 0x1b80, 0xf5c30ca7,
- 0x1b80, 0xf8c20cb5,
- 0x1b80, 0xf8c20cb7,
- 0x1b80, 0x6c9c0cc5,
- 0x1b80, 0x6c9c0cc7,
- 0x1b80, 0xe2eb0cd5,
- 0x1b80, 0xe2eb0cd7,
- 0x1b80, 0xe3450ce5,
- 0x1b80, 0xe3450ce7,
- 0x1b80, 0x6cbc0cf5,
- 0x1b80, 0x6cbc0cf7,
- 0x1b80, 0xe2eb0d05,
- 0x1b80, 0xe2eb0d07,
- 0x1b80, 0xe3450d15,
- 0x1b80, 0xe3450d17,
- 0x1b80, 0x6cdc0d25,
- 0x1b80, 0x6cdc0d27,
- 0x1b80, 0xe2eb0d35,
- 0x1b80, 0xe2eb0d37,
- 0x1b80, 0xe3450d45,
- 0x1b80, 0xe3450d47,
- 0x1b80, 0x6cf00d55,
- 0x1b80, 0x6cf00d57,
- 0x1b80, 0xe2eb0d65,
- 0x1b80, 0xe2eb0d67,
- 0x1b80, 0xe3450d75,
- 0x1b80, 0xe3450d77,
- 0x1b80, 0x63c30d85,
- 0x1b80, 0x63c30d87,
- 0x1b80, 0x55010d95,
- 0x1b80, 0x55010d97,
- 0x1b80, 0x57040da5,
- 0x1b80, 0x57040da7,
- 0x1b80, 0x57000db5,
- 0x1b80, 0x57000db7,
- 0x1b80, 0x96000dc5,
- 0x1b80, 0x96000dc7,
- 0x1b80, 0x57080dd5,
- 0x1b80, 0x57080dd7,
- 0x1b80, 0x57000de5,
- 0x1b80, 0x57000de7,
- 0x1b80, 0x95000df5,
- 0x1b80, 0x95000df7,
- 0x1b80, 0x4d000e05,
- 0x1b80, 0x4d000e07,
- 0x1b80, 0x63050e15,
- 0x1b80, 0x63050e17,
- 0x1b80, 0x7b400e25,
- 0x1b80, 0x7b400e27,
- 0x1b80, 0x7a000e35,
- 0x1b80, 0x7a000e37,
- 0x1b80, 0x79000e45,
- 0x1b80, 0x79000e47,
- 0x1b80, 0x7f400e55,
- 0x1b80, 0x7f400e57,
- 0x1b80, 0x7e000e65,
- 0x1b80, 0x7e000e67,
- 0x1b80, 0x7d000e75,
- 0x1b80, 0x7d000e77,
- 0x1b80, 0x00010e85,
- 0x1b80, 0x00010e87,
- 0x1b80, 0xe3170e95,
- 0x1b80, 0xe3170e97,
- 0x1b80, 0x00010ea5,
- 0x1b80, 0x00010ea7,
- 0x1b80, 0x5c320eb5,
- 0x1b80, 0x5c320eb7,
- 0x1b80, 0xe3410ec5,
- 0x1b80, 0xe3410ec7,
- 0x1b80, 0xe3170ed5,
- 0x1b80, 0xe3170ed7,
- 0x1b80, 0x00010ee5,
- 0x1b80, 0x00010ee7,
- 0x1b80, 0x31260ef5,
- 0x1b80, 0x31260ef7,
- 0x1b80, 0x00260f05,
- 0x1b80, 0x00260f07,
- 0x1b80, 0xe34a0f15,
- 0x1b80, 0xe34a0f17,
- 0x1b80, 0x00020f25,
- 0x1b80, 0x00020f27,
- 0x1b80, 0x54ec0f35,
- 0x1b80, 0x54ec0f37,
- 0x1b80, 0x0ba60f45,
- 0x1b80, 0x0ba60f47,
- 0x1b80, 0x00260f55,
- 0x1b80, 0x00260f57,
- 0x1b80, 0xe34a0f65,
- 0x1b80, 0xe34a0f67,
- 0x1b80, 0x00020f75,
- 0x1b80, 0x00020f77,
- 0x1b80, 0x63830f85,
- 0x1b80, 0x63830f87,
- 0x1b80, 0x30d90f95,
- 0x1b80, 0x30d90f97,
- 0x1b80, 0x311a0fa5,
- 0x1b80, 0x311a0fa7,
- 0x1b80, 0x00240fb5,
- 0x1b80, 0x00240fb7,
- 0x1b80, 0xe34a0fc5,
- 0x1b80, 0xe34a0fc7,
- 0x1b80, 0x00020fd5,
- 0x1b80, 0x00020fd7,
- 0x1b80, 0x54ea0fe5,
- 0x1b80, 0x54ea0fe7,
- 0x1b80, 0x0ba60ff5,
- 0x1b80, 0x0ba60ff7,
- 0x1b80, 0x00241005,
- 0x1b80, 0x00241007,
- 0x1b80, 0xe34a1015,
- 0x1b80, 0xe34a1017,
- 0x1b80, 0x00021025,
- 0x1b80, 0x00021027,
- 0x1b80, 0x63831035,
- 0x1b80, 0x63831037,
- 0x1b80, 0x30d91045,
- 0x1b80, 0x30d91047,
- 0x1b80, 0x5c321055,
- 0x1b80, 0x5c321057,
- 0x1b80, 0x54e61065,
- 0x1b80, 0x54e61067,
- 0x1b80, 0x6e101075,
- 0x1b80, 0x6e101077,
- 0x1b80, 0x6f0f1085,
- 0x1b80, 0x6f0f1087,
- 0x1b80, 0xe3171095,
- 0x1b80, 0xe3171097,
- 0x1b80, 0xe34a10a5,
- 0x1b80, 0xe34a10a7,
- 0x1b80, 0x5c3210b5,
- 0x1b80, 0x5c3210b7,
- 0x1b80, 0x54e710c5,
- 0x1b80, 0x54e710c7,
- 0x1b80, 0x6e2410d5,
- 0x1b80, 0x6e2410d7,
- 0x1b80, 0xe31710e5,
- 0x1b80, 0xe31710e7,
- 0x1b80, 0xe34a10f5,
- 0x1b80, 0xe34a10f7,
- 0x1b80, 0x5c321105,
- 0x1b80, 0x5c321107,
- 0x1b80, 0x54e81115,
- 0x1b80, 0x54e81117,
- 0x1b80, 0x6e441125,
- 0x1b80, 0x6e441127,
- 0x1b80, 0xe3171135,
- 0x1b80, 0xe3171137,
- 0x1b80, 0xe34a1145,
- 0x1b80, 0xe34a1147,
- 0x1b80, 0x5c321155,
- 0x1b80, 0x5c321157,
- 0x1b80, 0x54e91165,
- 0x1b80, 0x54e91167,
- 0x1b80, 0x6e641175,
- 0x1b80, 0x6e641177,
- 0x1b80, 0xe3171185,
- 0x1b80, 0xe3171187,
- 0x1b80, 0xe34a1195,
- 0x1b80, 0xe34a1197,
- 0x1b80, 0x5c3211a5,
- 0x1b80, 0x5c3211a7,
- 0x1b80, 0x54ea11b5,
- 0x1b80, 0x54ea11b7,
- 0x1b80, 0x0baa11c5,
- 0x1b80, 0x0baa11c7,
- 0x1b80, 0x6e8411d5,
- 0x1b80, 0x6e8411d7,
- 0x1b80, 0x6f0f11e5,
- 0x1b80, 0x6f0f11e7,
- 0x1b80, 0xe31711f5,
- 0x1b80, 0xe31711f7,
- 0x1b80, 0xe34a1205,
- 0x1b80, 0xe34a1207,
- 0x1b80, 0x5c321215,
- 0x1b80, 0x5c321217,
- 0x1b80, 0x54eb1225,
- 0x1b80, 0x54eb1227,
- 0x1b80, 0x6ea41235,
- 0x1b80, 0x6ea41237,
- 0x1b80, 0xe3171245,
- 0x1b80, 0xe3171247,
- 0x1b80, 0xe34a1255,
- 0x1b80, 0xe34a1257,
+ 0x1b80, 0x30b40985,
+ 0x1b80, 0x30b40987,
+ 0x1b80, 0x00240995,
+ 0x1b80, 0x00240997,
+ 0x1b80, 0xe3e209a5,
+ 0x1b80, 0xe3e209a7,
+ 0x1b80, 0x000209b5,
+ 0x1b80, 0x000209b7,
+ 0x1b80, 0x54ea09c5,
+ 0x1b80, 0x54ea09c7,
+ 0x1b80, 0x0ba609d5,
+ 0x1b80, 0x0ba609d7,
+ 0x1b80, 0x002409e5,
+ 0x1b80, 0x002409e7,
+ 0x1b80, 0xe3e209f5,
+ 0x1b80, 0xe3e209f7,
+ 0x1b80, 0x00020a05,
+ 0x1b80, 0x00020a07,
+ 0x1b80, 0xf8e60a15,
+ 0x1b80, 0xf8e60a17,
+ 0x1b80, 0x00300a25,
+ 0x1b80, 0x00300a27,
+ 0x1b80, 0x63c30a35,
+ 0x1b80, 0x63c30a37,
+ 0x1b80, 0x00020a45,
+ 0x1b80, 0x00020a47,
+ 0x1b80, 0x318b0a55,
+ 0x1b80, 0x318b0a57,
+ 0x1b80, 0x62060a65,
+ 0x1b80, 0x62060a67,
+ 0x1b80, 0x6c100a75,
+ 0x1b80, 0x6c100a77,
+ 0x1b80, 0x6d0f0a85,
+ 0x1b80, 0x6d0f0a87,
+ 0x1b80, 0xe3880a95,
+ 0x1b80, 0xe3880a97,
+ 0x1b80, 0xe3e20aa5,
+ 0x1b80, 0xe3e20aa7,
+ 0x1b80, 0x6c240ab5,
+ 0x1b80, 0x6c240ab7,
+ 0x1b80, 0xe3880ac5,
+ 0x1b80, 0xe3880ac7,
+ 0x1b80, 0xe3e20ad5,
+ 0x1b80, 0xe3e20ad7,
+ 0x1b80, 0x6c440ae5,
+ 0x1b80, 0x6c440ae7,
+ 0x1b80, 0xe3880af5,
+ 0x1b80, 0xe3880af7,
+ 0x1b80, 0xe3e20b05,
+ 0x1b80, 0xe3e20b07,
+ 0x1b80, 0x6c640b15,
+ 0x1b80, 0x6c640b17,
+ 0x1b80, 0xe3880b25,
+ 0x1b80, 0xe3880b27,
+ 0x1b80, 0xe3e20b35,
+ 0x1b80, 0xe3e20b37,
+ 0x1b80, 0x0baa0b45,
+ 0x1b80, 0x0baa0b47,
+ 0x1b80, 0x6c840b55,
+ 0x1b80, 0x6c840b57,
+ 0x1b80, 0x6d0f0b65,
+ 0x1b80, 0x6d0f0b67,
+ 0x1b80, 0xe3880b75,
+ 0x1b80, 0xe3880b77,
+ 0x1b80, 0xe3e20b85,
+ 0x1b80, 0xe3e20b87,
+ 0x1b80, 0x6ca40b95,
+ 0x1b80, 0x6ca40b97,
+ 0x1b80, 0xe3880ba5,
+ 0x1b80, 0xe3880ba7,
+ 0x1b80, 0xe3e20bb5,
+ 0x1b80, 0xe3e20bb7,
+ 0x1b80, 0x0bac0bc5,
+ 0x1b80, 0x0bac0bc7,
+ 0x1b80, 0x6cc40bd5,
+ 0x1b80, 0x6cc40bd7,
+ 0x1b80, 0x6d0f0be5,
+ 0x1b80, 0x6d0f0be7,
+ 0x1b80, 0xe3880bf5,
+ 0x1b80, 0xe3880bf7,
+ 0x1b80, 0xe3e20c05,
+ 0x1b80, 0xe3e20c07,
+ 0x1b80, 0x6ce40c15,
+ 0x1b80, 0x6ce40c17,
+ 0x1b80, 0xe3880c25,
+ 0x1b80, 0xe3880c27,
+ 0x1b80, 0xe3e20c35,
+ 0x1b80, 0xe3e20c37,
+ 0x1b80, 0x6cf40c45,
+ 0x1b80, 0x6cf40c47,
+ 0x1b80, 0xe3880c55,
+ 0x1b80, 0xe3880c57,
+ 0x1b80, 0xe3e20c65,
+ 0x1b80, 0xe3e20c67,
+ 0x1b80, 0x6c0c0c75,
+ 0x1b80, 0x6c0c0c77,
+ 0x1b80, 0x6d000c85,
+ 0x1b80, 0x6d000c87,
+ 0x1b80, 0xe3880c95,
+ 0x1b80, 0xe3880c97,
+ 0x1b80, 0xe3e20ca5,
+ 0x1b80, 0xe3e20ca7,
+ 0x1b80, 0x6c1c0cb5,
+ 0x1b80, 0x6c1c0cb7,
+ 0x1b80, 0xe3880cc5,
+ 0x1b80, 0xe3880cc7,
+ 0x1b80, 0xe3e20cd5,
+ 0x1b80, 0xe3e20cd7,
+ 0x1b80, 0x6c3c0ce5,
+ 0x1b80, 0x6c3c0ce7,
+ 0x1b80, 0xe3880cf5,
+ 0x1b80, 0xe3880cf7,
+ 0x1b80, 0xe3e20d05,
+ 0x1b80, 0xe3e20d07,
+ 0x1b80, 0xf4b90d15,
+ 0x1b80, 0xf4b90d17,
+ 0x1b80, 0xf7b80d25,
+ 0x1b80, 0xf7b80d27,
+ 0x1b80, 0x6c5c0d35,
+ 0x1b80, 0x6c5c0d37,
+ 0x1b80, 0xe3880d45,
+ 0x1b80, 0xe3880d47,
+ 0x1b80, 0xe3e20d55,
+ 0x1b80, 0xe3e20d57,
+ 0x1b80, 0x6c7c0d65,
+ 0x1b80, 0x6c7c0d67,
+ 0x1b80, 0xe3880d75,
+ 0x1b80, 0xe3880d77,
+ 0x1b80, 0xe3e20d85,
+ 0x1b80, 0xe3e20d87,
+ 0x1b80, 0xf5c00d95,
+ 0x1b80, 0xf5c00d97,
+ 0x1b80, 0xf8bf0da5,
+ 0x1b80, 0xf8bf0da7,
+ 0x1b80, 0x6c9c0db5,
+ 0x1b80, 0x6c9c0db7,
+ 0x1b80, 0xe3880dc5,
+ 0x1b80, 0xe3880dc7,
+ 0x1b80, 0xe3e20dd5,
+ 0x1b80, 0xe3e20dd7,
+ 0x1b80, 0x6cbc0de5,
+ 0x1b80, 0x6cbc0de7,
+ 0x1b80, 0xe3880df5,
+ 0x1b80, 0xe3880df7,
+ 0x1b80, 0xe3e20e05,
+ 0x1b80, 0xe3e20e07,
+ 0x1b80, 0x6cdc0e15,
+ 0x1b80, 0x6cdc0e17,
+ 0x1b80, 0xe3880e25,
+ 0x1b80, 0xe3880e27,
+ 0x1b80, 0xe3e20e35,
+ 0x1b80, 0xe3e20e37,
+ 0x1b80, 0x6cf00e45,
+ 0x1b80, 0x6cf00e47,
+ 0x1b80, 0xe3880e55,
+ 0x1b80, 0xe3880e57,
+ 0x1b80, 0xe3e20e65,
+ 0x1b80, 0xe3e20e67,
+ 0x1b80, 0xf9a00e75,
+ 0x1b80, 0xf9a00e77,
+ 0x1b80, 0x00300e85,
+ 0x1b80, 0x00300e87,
+ 0x1b80, 0x63c30e95,
+ 0x1b80, 0x63c30e97,
+ 0x1b80, 0x00020ea5,
+ 0x1b80, 0x00020ea7,
+ 0x1b80, 0x318b0eb5,
+ 0x1b80, 0x318b0eb7,
+ 0x1b80, 0x00300ec5,
+ 0x1b80, 0x00300ec7,
+ 0x1b80, 0x00000ed5,
+ 0x1b80, 0x00000ed7,
+ 0x1b80, 0x00020ee5,
+ 0x1b80, 0x00020ee7,
+ 0x1b80, 0x55010ef5,
+ 0x1b80, 0x55010ef7,
+ 0x1b80, 0x57040f05,
+ 0x1b80, 0x57040f07,
+ 0x1b80, 0x57000f15,
+ 0x1b80, 0x57000f17,
+ 0x1b80, 0x96000f25,
+ 0x1b80, 0x96000f27,
+ 0x1b80, 0x00070f35,
+ 0x1b80, 0x00070f37,
+ 0x1b80, 0x5be00f45,
+ 0x1b80, 0x5be00f47,
+ 0x1b80, 0x5a000f55,
+ 0x1b80, 0x5a000f57,
+ 0x1b80, 0x59000f65,
+ 0x1b80, 0x59000f67,
+ 0x1b80, 0x58000f75,
+ 0x1b80, 0x58000f77,
+ 0x1b80, 0x00040f85,
+ 0x1b80, 0x00040f87,
+ 0x1b80, 0x57080f95,
+ 0x1b80, 0x57080f97,
+ 0x1b80, 0x57000fa5,
+ 0x1b80, 0x57000fa7,
+ 0x1b80, 0x95000fb5,
+ 0x1b80, 0x95000fb7,
+ 0x1b80, 0x00070fc5,
+ 0x1b80, 0x00070fc7,
+ 0x1b80, 0x58010fd5,
+ 0x1b80, 0x58010fd7,
+ 0x1b80, 0x00040fe5,
+ 0x1b80, 0x00040fe7,
+ 0x1b80, 0x00300ff5,
+ 0x1b80, 0x00300ff7,
+ 0x1b80, 0x00001005,
+ 0x1b80, 0x00001007,
+ 0x1b80, 0x00021015,
+ 0x1b80, 0x00021017,
+ 0x1b80, 0x63051025,
+ 0x1b80, 0x63051027,
+ 0x1b80, 0x7b401035,
+ 0x1b80, 0x7b401037,
+ 0x1b80, 0x7a001045,
+ 0x1b80, 0x7a001047,
+ 0x1b80, 0x79001055,
+ 0x1b80, 0x79001057,
+ 0x1b80, 0x7f401065,
+ 0x1b80, 0x7f401067,
+ 0x1b80, 0x7e001075,
+ 0x1b80, 0x7e001077,
+ 0x1b80, 0x7d001085,
+ 0x1b80, 0x7d001087,
+ 0x1b80, 0x00011095,
+ 0x1b80, 0x00011097,
+ 0x1b80, 0xe3b410a5,
+ 0x1b80, 0xe3b410a7,
+ 0x1b80, 0x000110b5,
+ 0x1b80, 0x000110b7,
+ 0x1b80, 0x5c3210c5,
+ 0x1b80, 0x5c3210c7,
+ 0x1b80, 0x54fd10d5,
+ 0x1b80, 0x54fd10d7,
+ 0x1b80, 0xe3b410e5,
+ 0x1b80, 0xe3b410e7,
+ 0x1b80, 0x000110f5,
+ 0x1b80, 0x000110f7,
+ 0x1b80, 0x31471105,
+ 0x1b80, 0x31471107,
+ 0x1b80, 0x00261115,
+ 0x1b80, 0x00261117,
+ 0x1b80, 0xe3e71125,
+ 0x1b80, 0xe3e71127,
+ 0x1b80, 0x00021135,
+ 0x1b80, 0x00021137,
+ 0x1b80, 0x54ec1145,
+ 0x1b80, 0x54ec1147,
+ 0x1b80, 0x0ba61155,
+ 0x1b80, 0x0ba61157,
+ 0x1b80, 0x00261165,
+ 0x1b80, 0x00261167,
+ 0x1b80, 0xe3e71175,
+ 0x1b80, 0xe3e71177,
+ 0x1b80, 0x00021185,
+ 0x1b80, 0x00021187,
+ 0x1b80, 0x63431195,
+ 0x1b80, 0x63431197,
+ 0x1b80, 0x30ec11a5,
+ 0x1b80, 0x30ec11a7,
+ 0x1b80, 0x313b11b5,
+ 0x1b80, 0x313b11b7,
+ 0x1b80, 0x002411c5,
+ 0x1b80, 0x002411c7,
+ 0x1b80, 0xe3e711d5,
+ 0x1b80, 0xe3e711d7,
+ 0x1b80, 0x000211e5,
+ 0x1b80, 0x000211e7,
+ 0x1b80, 0x54ea11f5,
+ 0x1b80, 0x54ea11f7,
+ 0x1b80, 0x0ba61205,
+ 0x1b80, 0x0ba61207,
+ 0x1b80, 0x00241215,
+ 0x1b80, 0x00241217,
+ 0x1b80, 0xe3e71225,
+ 0x1b80, 0xe3e71227,
+ 0x1b80, 0x00021235,
+ 0x1b80, 0x00021237,
+ 0x1b80, 0x63431245,
+ 0x1b80, 0x63431247,
+ 0x1b80, 0x30ec1255,
+ 0x1b80, 0x30ec1257,
0x1b80, 0x5c321265,
0x1b80, 0x5c321267,
- 0x1b80, 0x54ec1275,
- 0x1b80, 0x54ec1277,
- 0x1b80, 0x0bac1285,
- 0x1b80, 0x0bac1287,
- 0x1b80, 0x6ec41295,
- 0x1b80, 0x6ec41297,
- 0x1b80, 0x6f0f12a5,
- 0x1b80, 0x6f0f12a7,
- 0x1b80, 0xe31712b5,
- 0x1b80, 0xe31712b7,
- 0x1b80, 0xe34a12c5,
- 0x1b80, 0xe34a12c7,
- 0x1b80, 0x5c3212d5,
- 0x1b80, 0x5c3212d7,
- 0x1b80, 0x54ed12e5,
- 0x1b80, 0x54ed12e7,
- 0x1b80, 0x6ee412f5,
- 0x1b80, 0x6ee412f7,
- 0x1b80, 0xe3171305,
- 0x1b80, 0xe3171307,
- 0x1b80, 0xe34a1315,
- 0x1b80, 0xe34a1317,
- 0x1b80, 0x5c321325,
- 0x1b80, 0x5c321327,
- 0x1b80, 0x54ee1335,
- 0x1b80, 0x54ee1337,
- 0x1b80, 0x6ef41345,
- 0x1b80, 0x6ef41347,
- 0x1b80, 0xe3171355,
- 0x1b80, 0xe3171357,
- 0x1b80, 0xe34a1365,
- 0x1b80, 0xe34a1367,
- 0x1b80, 0x5c321375,
- 0x1b80, 0x5c321377,
- 0x1b80, 0x54ef1385,
- 0x1b80, 0x54ef1387,
- 0x1b80, 0x6e0c1395,
- 0x1b80, 0x6e0c1397,
- 0x1b80, 0x6f0013a5,
- 0x1b80, 0x6f0013a7,
- 0x1b80, 0xe31713b5,
- 0x1b80, 0xe31713b7,
- 0x1b80, 0xe34a13c5,
- 0x1b80, 0xe34a13c7,
- 0x1b80, 0x5c3213d5,
- 0x1b80, 0x5c3213d7,
- 0x1b80, 0x54f013e5,
- 0x1b80, 0x54f013e7,
- 0x1b80, 0x6e1c13f5,
- 0x1b80, 0x6e1c13f7,
- 0x1b80, 0xe3171405,
- 0x1b80, 0xe3171407,
- 0x1b80, 0xe34a1415,
- 0x1b80, 0xe34a1417,
+ 0x1b80, 0x54e61275,
+ 0x1b80, 0x54e61277,
+ 0x1b80, 0x6e101285,
+ 0x1b80, 0x6e101287,
+ 0x1b80, 0x6f0f1295,
+ 0x1b80, 0x6f0f1297,
+ 0x1b80, 0xe3b412a5,
+ 0x1b80, 0xe3b412a7,
+ 0x1b80, 0xe3e712b5,
+ 0x1b80, 0xe3e712b7,
+ 0x1b80, 0x5c3212c5,
+ 0x1b80, 0x5c3212c7,
+ 0x1b80, 0x54e712d5,
+ 0x1b80, 0x54e712d7,
+ 0x1b80, 0x6e2412e5,
+ 0x1b80, 0x6e2412e7,
+ 0x1b80, 0xe3b412f5,
+ 0x1b80, 0xe3b412f7,
+ 0x1b80, 0xe3e71305,
+ 0x1b80, 0xe3e71307,
+ 0x1b80, 0x5c321315,
+ 0x1b80, 0x5c321317,
+ 0x1b80, 0x54e81325,
+ 0x1b80, 0x54e81327,
+ 0x1b80, 0x6e441335,
+ 0x1b80, 0x6e441337,
+ 0x1b80, 0xe3b41345,
+ 0x1b80, 0xe3b41347,
+ 0x1b80, 0xe3e71355,
+ 0x1b80, 0xe3e71357,
+ 0x1b80, 0x5c321365,
+ 0x1b80, 0x5c321367,
+ 0x1b80, 0x54e91375,
+ 0x1b80, 0x54e91377,
+ 0x1b80, 0x6e641385,
+ 0x1b80, 0x6e641387,
+ 0x1b80, 0xe3b41395,
+ 0x1b80, 0xe3b41397,
+ 0x1b80, 0xe3e713a5,
+ 0x1b80, 0xe3e713a7,
+ 0x1b80, 0x5c3213b5,
+ 0x1b80, 0x5c3213b7,
+ 0x1b80, 0x54ea13c5,
+ 0x1b80, 0x54ea13c7,
+ 0x1b80, 0x0baa13d5,
+ 0x1b80, 0x0baa13d7,
+ 0x1b80, 0x6e8413e5,
+ 0x1b80, 0x6e8413e7,
+ 0x1b80, 0x6f0f13f5,
+ 0x1b80, 0x6f0f13f7,
+ 0x1b80, 0xe3b41405,
+ 0x1b80, 0xe3b41407,
+ 0x1b80, 0xe3e71415,
+ 0x1b80, 0xe3e71417,
0x1b80, 0x5c321425,
0x1b80, 0x5c321427,
- 0x1b80, 0x54f11435,
- 0x1b80, 0x54f11437,
- 0x1b80, 0x6e3c1445,
- 0x1b80, 0x6e3c1447,
- 0x1b80, 0xe3171455,
- 0x1b80, 0xe3171457,
- 0x1b80, 0xe34a1465,
- 0x1b80, 0xe34a1467,
- 0x1b80, 0xfaa91475,
- 0x1b80, 0xfaa91477,
- 0x1b80, 0x5c321485,
- 0x1b80, 0x5c321487,
- 0x1b80, 0x54f21495,
- 0x1b80, 0x54f21497,
- 0x1b80, 0x6e5c14a5,
- 0x1b80, 0x6e5c14a7,
- 0x1b80, 0xe31714b5,
- 0x1b80, 0xe31714b7,
- 0x1b80, 0xe34a14c5,
- 0x1b80, 0xe34a14c7,
- 0x1b80, 0x5c3214d5,
- 0x1b80, 0x5c3214d7,
- 0x1b80, 0x54f314e5,
- 0x1b80, 0x54f314e7,
- 0x1b80, 0x6e7c14f5,
- 0x1b80, 0x6e7c14f7,
- 0x1b80, 0xe3171505,
- 0x1b80, 0xe3171507,
- 0x1b80, 0xe34a1515,
- 0x1b80, 0xe34a1517,
- 0x1b80, 0xfba91525,
- 0x1b80, 0xfba91527,
+ 0x1b80, 0x54eb1435,
+ 0x1b80, 0x54eb1437,
+ 0x1b80, 0x6ea41445,
+ 0x1b80, 0x6ea41447,
+ 0x1b80, 0xe3b41455,
+ 0x1b80, 0xe3b41457,
+ 0x1b80, 0xe3e71465,
+ 0x1b80, 0xe3e71467,
+ 0x1b80, 0x5c321475,
+ 0x1b80, 0x5c321477,
+ 0x1b80, 0x54ec1485,
+ 0x1b80, 0x54ec1487,
+ 0x1b80, 0x0bac1495,
+ 0x1b80, 0x0bac1497,
+ 0x1b80, 0x6ec414a5,
+ 0x1b80, 0x6ec414a7,
+ 0x1b80, 0x6f0f14b5,
+ 0x1b80, 0x6f0f14b7,
+ 0x1b80, 0xe3b414c5,
+ 0x1b80, 0xe3b414c7,
+ 0x1b80, 0xe3e714d5,
+ 0x1b80, 0xe3e714d7,
+ 0x1b80, 0x5c3214e5,
+ 0x1b80, 0x5c3214e7,
+ 0x1b80, 0x54ed14f5,
+ 0x1b80, 0x54ed14f7,
+ 0x1b80, 0x6ee41505,
+ 0x1b80, 0x6ee41507,
+ 0x1b80, 0xe3b41515,
+ 0x1b80, 0xe3b41517,
+ 0x1b80, 0xe3e71525,
+ 0x1b80, 0xe3e71527,
0x1b80, 0x5c321535,
0x1b80, 0x5c321537,
- 0x1b80, 0x54f41545,
- 0x1b80, 0x54f41547,
- 0x1b80, 0x6e9c1555,
- 0x1b80, 0x6e9c1557,
- 0x1b80, 0xe3171565,
- 0x1b80, 0xe3171567,
- 0x1b80, 0xe34a1575,
- 0x1b80, 0xe34a1577,
+ 0x1b80, 0x54ee1545,
+ 0x1b80, 0x54ee1547,
+ 0x1b80, 0x6ef41555,
+ 0x1b80, 0x6ef41557,
+ 0x1b80, 0xe3b41565,
+ 0x1b80, 0xe3b41567,
+ 0x1b80, 0xe3e71575,
+ 0x1b80, 0xe3e71577,
0x1b80, 0x5c321585,
0x1b80, 0x5c321587,
- 0x1b80, 0x54f51595,
- 0x1b80, 0x54f51597,
- 0x1b80, 0x6ebc15a5,
- 0x1b80, 0x6ebc15a7,
- 0x1b80, 0xe31715b5,
- 0x1b80, 0xe31715b7,
- 0x1b80, 0xe34a15c5,
- 0x1b80, 0xe34a15c7,
- 0x1b80, 0x5c3215d5,
- 0x1b80, 0x5c3215d7,
- 0x1b80, 0x54f615e5,
- 0x1b80, 0x54f615e7,
- 0x1b80, 0x6edc15f5,
- 0x1b80, 0x6edc15f7,
- 0x1b80, 0xe3171605,
- 0x1b80, 0xe3171607,
- 0x1b80, 0xe34a1615,
- 0x1b80, 0xe34a1617,
- 0x1b80, 0x5c321625,
- 0x1b80, 0x5c321627,
- 0x1b80, 0x54f71635,
- 0x1b80, 0x54f71637,
- 0x1b80, 0x6ef01645,
- 0x1b80, 0x6ef01647,
- 0x1b80, 0xe3171655,
- 0x1b80, 0xe3171657,
- 0x1b80, 0xe34a1665,
- 0x1b80, 0xe34a1667,
- 0x1b80, 0x63831675,
- 0x1b80, 0x63831677,
- 0x1b80, 0x30d91685,
- 0x1b80, 0x30d91687,
- 0x1b80, 0x00011695,
- 0x1b80, 0x00011697,
- 0x1b80, 0x000416a5,
- 0x1b80, 0x000416a7,
- 0x1b80, 0x550116b5,
- 0x1b80, 0x550116b7,
- 0x1b80, 0x5c3116c5,
- 0x1b80, 0x5c3116c7,
- 0x1b80, 0x5f8216d5,
- 0x1b80, 0x5f8216d7,
- 0x1b80, 0x660516e5,
- 0x1b80, 0x660516e7,
- 0x1b80, 0x000616f5,
- 0x1b80, 0x000616f7,
- 0x1b80, 0x5d801705,
- 0x1b80, 0x5d801707,
- 0x1b80, 0x09001715,
- 0x1b80, 0x09001717,
- 0x1b80, 0x0a011725,
- 0x1b80, 0x0a011727,
- 0x1b80, 0x0b401735,
- 0x1b80, 0x0b401737,
- 0x1b80, 0x0d001745,
- 0x1b80, 0x0d001747,
- 0x1b80, 0x0f011755,
- 0x1b80, 0x0f011757,
- 0x1b80, 0x002a1765,
- 0x1b80, 0x002a1767,
- 0x1b80, 0x055a1775,
- 0x1b80, 0x055a1777,
- 0x1b80, 0x05db1785,
- 0x1b80, 0x05db1787,
- 0x1b80, 0xe3351795,
- 0x1b80, 0xe3351797,
- 0x1b80, 0xe2e317a5,
- 0x1b80, 0xe2e317a7,
- 0x1b80, 0x000617b5,
- 0x1b80, 0x000617b7,
- 0x1b80, 0x06da17c5,
- 0x1b80, 0x06da17c7,
- 0x1b80, 0x07db17d5,
- 0x1b80, 0x07db17d7,
- 0x1b80, 0xe33517e5,
- 0x1b80, 0xe33517e7,
- 0x1b80, 0xe2e317f5,
- 0x1b80, 0xe2e317f7,
- 0x1b80, 0xe32c1805,
- 0x1b80, 0xe32c1807,
- 0x1b80, 0x00021815,
- 0x1b80, 0x00021817,
- 0x1b80, 0xe3311825,
- 0x1b80, 0xe3311827,
- 0x1b80, 0x5d001835,
- 0x1b80, 0x5d001837,
- 0x1b80, 0x00041845,
- 0x1b80, 0x00041847,
- 0x1b80, 0x5fa21855,
- 0x1b80, 0x5fa21857,
- 0x1b80, 0x00011865,
- 0x1b80, 0x00011867,
- 0x1b80, 0xe2571875,
- 0x1b80, 0xe2571877,
- 0x1b80, 0x74081885,
- 0x1b80, 0x74081887,
- 0x1b80, 0xe2a11895,
- 0x1b80, 0xe2a11897,
- 0x1b80, 0xe28318a5,
- 0x1b80, 0xe28318a7,
- 0x1b80, 0xe2c118b5,
- 0x1b80, 0xe2c118b7,
- 0x1b80, 0xb90018c5,
- 0x1b80, 0xb90018c7,
- 0x1b80, 0x990018d5,
- 0x1b80, 0x990018d7,
- 0x1b80, 0x000618e5,
- 0x1b80, 0x000618e7,
- 0x1b80, 0x770018f5,
- 0x1b80, 0x770018f7,
- 0x1b80, 0x00041905,
- 0x1b80, 0x00041907,
- 0x1b80, 0x49041915,
- 0x1b80, 0x49041917,
- 0x1b80, 0x4bb01925,
- 0x1b80, 0x4bb01927,
- 0x1b80, 0x00061935,
- 0x1b80, 0x00061937,
- 0x1b80, 0x75041945,
- 0x1b80, 0x75041947,
- 0x1b80, 0x77081955,
- 0x1b80, 0x77081957,
- 0x1b80, 0x00071965,
- 0x1b80, 0x00071967,
- 0x1b80, 0x77101975,
- 0x1b80, 0x77101977,
- 0x1b80, 0x00041985,
- 0x1b80, 0x00041987,
- 0x1b80, 0x44801995,
- 0x1b80, 0x44801997,
- 0x1b80, 0x45ff19a5,
- 0x1b80, 0x45ff19a7,
- 0x1b80, 0x463f19b5,
- 0x1b80, 0x463f19b7,
- 0x1b80, 0x473119c5,
- 0x1b80, 0x473119c7,
- 0x1b80, 0x400819d5,
- 0x1b80, 0x400819d7,
- 0x1b80, 0xe23e19e5,
- 0x1b80, 0xe23e19e7,
- 0x1b80, 0x000119f5,
- 0x1b80, 0x000119f7,
- 0x1b80, 0xe2571a05,
- 0x1b80, 0xe2571a07,
- 0x1b80, 0x74081a15,
- 0x1b80, 0x74081a17,
- 0x1b80, 0xe2b11a25,
- 0x1b80, 0xe2b11a27,
- 0x1b80, 0xe2831a35,
- 0x1b80, 0xe2831a37,
- 0x1b80, 0xe2c71a45,
- 0x1b80, 0xe2c71a47,
- 0x1b80, 0xb9001a55,
- 0x1b80, 0xb9001a57,
- 0x1b80, 0x99001a65,
- 0x1b80, 0x99001a67,
- 0x1b80, 0x00061a75,
- 0x1b80, 0x00061a77,
- 0x1b80, 0x77001a85,
- 0x1b80, 0x77001a87,
- 0x1b80, 0x00051a95,
- 0x1b80, 0x00051a97,
- 0x1b80, 0x61041aa5,
- 0x1b80, 0x61041aa7,
- 0x1b80, 0x63b01ab5,
- 0x1b80, 0x63b01ab7,
- 0x1b80, 0x00061ac5,
- 0x1b80, 0x00061ac7,
- 0x1b80, 0x75081ad5,
- 0x1b80, 0x75081ad7,
- 0x1b80, 0x77081ae5,
- 0x1b80, 0x77081ae7,
- 0x1b80, 0x00071af5,
- 0x1b80, 0x00071af7,
- 0x1b80, 0x77201b05,
- 0x1b80, 0x77201b07,
- 0x1b80, 0x00051b15,
- 0x1b80, 0x00051b17,
- 0x1b80, 0x5c801b25,
- 0x1b80, 0x5c801b27,
- 0x1b80, 0x5dff1b35,
- 0x1b80, 0x5dff1b37,
- 0x1b80, 0x5e3f1b45,
- 0x1b80, 0x5e3f1b47,
- 0x1b80, 0x5f311b55,
- 0x1b80, 0x5f311b57,
- 0x1b80, 0x00041b65,
- 0x1b80, 0x00041b67,
- 0x1b80, 0x400a1b75,
- 0x1b80, 0x400a1b77,
- 0x1b80, 0xe23e1b85,
- 0x1b80, 0xe23e1b87,
- 0x1b80, 0x00011b95,
- 0x1b80, 0x00011b97,
- 0x1b80, 0xe2571ba5,
- 0x1b80, 0xe2571ba7,
- 0x1b80, 0x74081bb5,
- 0x1b80, 0x74081bb7,
- 0x1b80, 0xe2a11bc5,
- 0x1b80, 0xe2a11bc7,
- 0x1b80, 0xe2831bd5,
- 0x1b80, 0xe2831bd7,
- 0x1b80, 0xe2c11be5,
- 0x1b80, 0xe2c11be7,
- 0x1b80, 0xe2cd1bf5,
- 0x1b80, 0xe2cd1bf7,
- 0x1b80, 0xe2101c05,
- 0x1b80, 0xe2101c07,
- 0x1b80, 0x00011c15,
- 0x1b80, 0x00011c17,
- 0x1b80, 0xe2571c25,
- 0x1b80, 0xe2571c27,
- 0x1b80, 0x74081c35,
- 0x1b80, 0x74081c37,
- 0x1b80, 0xe2b11c45,
- 0x1b80, 0xe2b11c47,
- 0x1b80, 0xe2831c55,
- 0x1b80, 0xe2831c57,
- 0x1b80, 0xe2c71c65,
- 0x1b80, 0xe2c71c67,
- 0x1b80, 0xe2cd1c75,
- 0x1b80, 0xe2cd1c77,
- 0x1b80, 0xe2261c85,
- 0x1b80, 0xe2261c87,
- 0x1b80, 0x00011c95,
- 0x1b80, 0x00011c97,
- 0x1b80, 0xe26d1ca5,
- 0x1b80, 0xe26d1ca7,
- 0x1b80, 0x74001cb5,
- 0x1b80, 0x74001cb7,
- 0x1b80, 0xe2a11cc5,
- 0x1b80, 0xe2a11cc7,
- 0x1b80, 0xe2921cd5,
- 0x1b80, 0xe2921cd7,
- 0x1b80, 0xe2c11ce5,
- 0x1b80, 0xe2c11ce7,
- 0x1b80, 0xe2cd1cf5,
- 0x1b80, 0xe2cd1cf7,
- 0x1b80, 0xe2101d05,
- 0x1b80, 0xe2101d07,
- 0x1b80, 0x00011d15,
- 0x1b80, 0x00011d17,
- 0x1b80, 0xe26d1d25,
- 0x1b80, 0xe26d1d27,
- 0x1b80, 0x74001d35,
- 0x1b80, 0x74001d37,
- 0x1b80, 0xe2b11d45,
- 0x1b80, 0xe2b11d47,
- 0x1b80, 0xe2921d55,
- 0x1b80, 0xe2921d57,
- 0x1b80, 0xe2c71d65,
- 0x1b80, 0xe2c71d67,
- 0x1b80, 0xe2cd1d75,
- 0x1b80, 0xe2cd1d77,
- 0x1b80, 0xe2261d85,
- 0x1b80, 0xe2261d87,
- 0x1b80, 0x00011d95,
- 0x1b80, 0x00011d97,
- 0x1b80, 0x00041da5,
- 0x1b80, 0x00041da7,
- 0x1b80, 0x445b1db5,
- 0x1b80, 0x445b1db7,
- 0x1b80, 0x47b01dc5,
- 0x1b80, 0x47b01dc7,
- 0x1b80, 0x47301dd5,
- 0x1b80, 0x47301dd7,
- 0x1b80, 0x47001de5,
- 0x1b80, 0x47001de7,
- 0x1b80, 0x00061df5,
- 0x1b80, 0x00061df7,
- 0x1b80, 0x77081e05,
- 0x1b80, 0x77081e07,
- 0x1b80, 0x00041e15,
- 0x1b80, 0x00041e17,
- 0x1b80, 0x49401e25,
- 0x1b80, 0x49401e27,
- 0x1b80, 0x4bb01e35,
- 0x1b80, 0x4bb01e37,
- 0x1b80, 0x00071e45,
- 0x1b80, 0x00071e47,
- 0x1b80, 0x54401e55,
- 0x1b80, 0x54401e57,
- 0x1b80, 0x00041e65,
- 0x1b80, 0x00041e67,
- 0x1b80, 0x40081e75,
- 0x1b80, 0x40081e77,
- 0x1b80, 0x00011e85,
- 0x1b80, 0x00011e87,
- 0x1b80, 0x00051e95,
- 0x1b80, 0x00051e97,
- 0x1b80, 0x5c5b1ea5,
- 0x1b80, 0x5c5b1ea7,
- 0x1b80, 0x5fb01eb5,
- 0x1b80, 0x5fb01eb7,
- 0x1b80, 0x5f301ec5,
- 0x1b80, 0x5f301ec7,
- 0x1b80, 0x5f001ed5,
- 0x1b80, 0x5f001ed7,
- 0x1b80, 0x00061ee5,
- 0x1b80, 0x00061ee7,
- 0x1b80, 0x77081ef5,
- 0x1b80, 0x77081ef7,
- 0x1b80, 0x00051f05,
- 0x1b80, 0x00051f07,
- 0x1b80, 0x61401f15,
- 0x1b80, 0x61401f17,
- 0x1b80, 0x63b01f25,
- 0x1b80, 0x63b01f27,
- 0x1b80, 0x00071f35,
- 0x1b80, 0x00071f37,
- 0x1b80, 0x54401f45,
- 0x1b80, 0x54401f47,
- 0x1b80, 0x00041f55,
- 0x1b80, 0x00041f57,
- 0x1b80, 0x40081f65,
- 0x1b80, 0x40081f67,
- 0x1b80, 0x00011f75,
- 0x1b80, 0x00011f77,
- 0x1b80, 0xe2571f85,
- 0x1b80, 0xe2571f87,
- 0x1b80, 0x74081f95,
- 0x1b80, 0x74081f97,
- 0x1b80, 0xe2a11fa5,
- 0x1b80, 0xe2a11fa7,
- 0x1b80, 0x00041fb5,
- 0x1b80, 0x00041fb7,
- 0x1b80, 0x40081fc5,
- 0x1b80, 0x40081fc7,
- 0x1b80, 0x00011fd5,
- 0x1b80, 0x00011fd7,
- 0x1b80, 0xe2571fe5,
- 0x1b80, 0xe2571fe7,
- 0x1b80, 0x74081ff5,
- 0x1b80, 0x74081ff7,
- 0x1b80, 0xe2b12005,
- 0x1b80, 0xe2b12007,
- 0x1b80, 0x00042015,
- 0x1b80, 0x00042017,
- 0x1b80, 0x40082025,
- 0x1b80, 0x40082027,
- 0x1b80, 0x00012035,
- 0x1b80, 0x00012037,
- 0x1b80, 0xe26d2045,
- 0x1b80, 0xe26d2047,
- 0x1b80, 0x74002055,
- 0x1b80, 0x74002057,
- 0x1b80, 0xe2a12065,
- 0x1b80, 0xe2a12067,
- 0x1b80, 0x00042075,
- 0x1b80, 0x00042077,
- 0x1b80, 0x40082085,
- 0x1b80, 0x40082087,
- 0x1b80, 0x00012095,
- 0x1b80, 0x00012097,
- 0x1b80, 0xe26d20a5,
- 0x1b80, 0xe26d20a7,
- 0x1b80, 0x740020b5,
- 0x1b80, 0x740020b7,
- 0x1b80, 0xe2b120c5,
- 0x1b80, 0xe2b120c7,
- 0x1b80, 0x000420d5,
- 0x1b80, 0x000420d7,
- 0x1b80, 0x400820e5,
- 0x1b80, 0x400820e7,
- 0x1b80, 0x000120f5,
- 0x1b80, 0x000120f7,
- 0x1b80, 0x00042105,
- 0x1b80, 0x00042107,
- 0x1b80, 0x49042115,
- 0x1b80, 0x49042117,
- 0x1b80, 0x4bb02125,
- 0x1b80, 0x4bb02127,
- 0x1b80, 0x00062135,
- 0x1b80, 0x00062137,
- 0x1b80, 0x75042145,
- 0x1b80, 0x75042147,
- 0x1b80, 0x77082155,
- 0x1b80, 0x77082157,
- 0x1b80, 0x00042165,
- 0x1b80, 0x00042167,
- 0x1b80, 0x44802175,
- 0x1b80, 0x44802177,
- 0x1b80, 0x45ff2185,
- 0x1b80, 0x45ff2187,
- 0x1b80, 0x463f2195,
- 0x1b80, 0x463f2197,
- 0x1b80, 0x473121a5,
- 0x1b80, 0x473121a7,
- 0x1b80, 0x400821b5,
- 0x1b80, 0x400821b7,
- 0x1b80, 0xe23e21c5,
- 0x1b80, 0xe23e21c7,
- 0x1b80, 0x000421d5,
- 0x1b80, 0x000421d7,
- 0x1b80, 0x400c21e5,
- 0x1b80, 0x400c21e7,
- 0x1b80, 0x000621f5,
- 0x1b80, 0x000621f7,
- 0x1b80, 0x75002205,
- 0x1b80, 0x75002207,
- 0x1b80, 0x00042215,
- 0x1b80, 0x00042217,
- 0x1b80, 0x445b2225,
- 0x1b80, 0x445b2227,
- 0x1b80, 0x47002235,
- 0x1b80, 0x47002237,
- 0x1b80, 0x40082245,
- 0x1b80, 0x40082247,
+ 0x1b80, 0x54ef1595,
+ 0x1b80, 0x54ef1597,
+ 0x1b80, 0x6e0c15a5,
+ 0x1b80, 0x6e0c15a7,
+ 0x1b80, 0x6f0015b5,
+ 0x1b80, 0x6f0015b7,
+ 0x1b80, 0xe3b415c5,
+ 0x1b80, 0xe3b415c7,
+ 0x1b80, 0xe3e715d5,
+ 0x1b80, 0xe3e715d7,
+ 0x1b80, 0x5c3215e5,
+ 0x1b80, 0x5c3215e7,
+ 0x1b80, 0x54f015f5,
+ 0x1b80, 0x54f015f7,
+ 0x1b80, 0x6e1c1605,
+ 0x1b80, 0x6e1c1607,
+ 0x1b80, 0xe3b41615,
+ 0x1b80, 0xe3b41617,
+ 0x1b80, 0xe3e71625,
+ 0x1b80, 0xe3e71627,
+ 0x1b80, 0x5c321635,
+ 0x1b80, 0x5c321637,
+ 0x1b80, 0x54f11645,
+ 0x1b80, 0x54f11647,
+ 0x1b80, 0x6e3c1655,
+ 0x1b80, 0x6e3c1657,
+ 0x1b80, 0xe3b41665,
+ 0x1b80, 0xe3b41667,
+ 0x1b80, 0xe3e71675,
+ 0x1b80, 0xe3e71677,
+ 0x1b80, 0xfaa91685,
+ 0x1b80, 0xfaa91687,
+ 0x1b80, 0x5c321695,
+ 0x1b80, 0x5c321697,
+ 0x1b80, 0x54f216a5,
+ 0x1b80, 0x54f216a7,
+ 0x1b80, 0x6e5c16b5,
+ 0x1b80, 0x6e5c16b7,
+ 0x1b80, 0xe3b416c5,
+ 0x1b80, 0xe3b416c7,
+ 0x1b80, 0xe3e716d5,
+ 0x1b80, 0xe3e716d7,
+ 0x1b80, 0x5c3216e5,
+ 0x1b80, 0x5c3216e7,
+ 0x1b80, 0x54f316f5,
+ 0x1b80, 0x54f316f7,
+ 0x1b80, 0x6e7c1705,
+ 0x1b80, 0x6e7c1707,
+ 0x1b80, 0xe3b41715,
+ 0x1b80, 0xe3b41717,
+ 0x1b80, 0xe3e71725,
+ 0x1b80, 0xe3e71727,
+ 0x1b80, 0xfba91735,
+ 0x1b80, 0xfba91737,
+ 0x1b80, 0x5c321745,
+ 0x1b80, 0x5c321747,
+ 0x1b80, 0x54f41755,
+ 0x1b80, 0x54f41757,
+ 0x1b80, 0x6e9c1765,
+ 0x1b80, 0x6e9c1767,
+ 0x1b80, 0xe3b41775,
+ 0x1b80, 0xe3b41777,
+ 0x1b80, 0xe3e71785,
+ 0x1b80, 0xe3e71787,
+ 0x1b80, 0x5c321795,
+ 0x1b80, 0x5c321797,
+ 0x1b80, 0x54f517a5,
+ 0x1b80, 0x54f517a7,
+ 0x1b80, 0x6ebc17b5,
+ 0x1b80, 0x6ebc17b7,
+ 0x1b80, 0xe3b417c5,
+ 0x1b80, 0xe3b417c7,
+ 0x1b80, 0xe3e717d5,
+ 0x1b80, 0xe3e717d7,
+ 0x1b80, 0x5c3217e5,
+ 0x1b80, 0x5c3217e7,
+ 0x1b80, 0x54f617f5,
+ 0x1b80, 0x54f617f7,
+ 0x1b80, 0x6edc1805,
+ 0x1b80, 0x6edc1807,
+ 0x1b80, 0xe3b41815,
+ 0x1b80, 0xe3b41817,
+ 0x1b80, 0xe3e71825,
+ 0x1b80, 0xe3e71827,
+ 0x1b80, 0x5c321835,
+ 0x1b80, 0x5c321837,
+ 0x1b80, 0x54f71845,
+ 0x1b80, 0x54f71847,
+ 0x1b80, 0x6ef01855,
+ 0x1b80, 0x6ef01857,
+ 0x1b80, 0xe3b41865,
+ 0x1b80, 0xe3b41867,
+ 0x1b80, 0xe3e71875,
+ 0x1b80, 0xe3e71877,
+ 0x1b80, 0x63431885,
+ 0x1b80, 0x63431887,
+ 0x1b80, 0x30ec1895,
+ 0x1b80, 0x30ec1897,
+ 0x1b80, 0x000118a5,
+ 0x1b80, 0x000118a7,
+ 0x1b80, 0x63c318b5,
+ 0x1b80, 0x63c318b7,
+ 0x1b80, 0x003018c5,
+ 0x1b80, 0x003018c7,
+ 0x1b80, 0x000018d5,
+ 0x1b80, 0x000018d7,
+ 0x1b80, 0x000218e5,
+ 0x1b80, 0x000218e7,
+ 0x1b80, 0x550118f5,
+ 0x1b80, 0x550118f7,
+ 0x1b80, 0x57041905,
+ 0x1b80, 0x57041907,
+ 0x1b80, 0x57001915,
+ 0x1b80, 0x57001917,
+ 0x1b80, 0x96001925,
+ 0x1b80, 0x96001927,
+ 0x1b80, 0x00301935,
+ 0x1b80, 0x00301937,
+ 0x1b80, 0x00071945,
+ 0x1b80, 0x00071947,
+ 0x1b80, 0x5be01955,
+ 0x1b80, 0x5be01957,
+ 0x1b80, 0x5a001965,
+ 0x1b80, 0x5a001967,
+ 0x1b80, 0x59001975,
+ 0x1b80, 0x59001977,
+ 0x1b80, 0x58001985,
+ 0x1b80, 0x58001987,
+ 0x1b80, 0x00041995,
+ 0x1b80, 0x00041997,
+ 0x1b80, 0x000219a5,
+ 0x1b80, 0x000219a7,
+ 0x1b80, 0x570819b5,
+ 0x1b80, 0x570819b7,
+ 0x1b80, 0x570019c5,
+ 0x1b80, 0x570019c7,
+ 0x1b80, 0x950019d5,
+ 0x1b80, 0x950019d7,
+ 0x1b80, 0x003019e5,
+ 0x1b80, 0x003019e7,
+ 0x1b80, 0x000719f5,
+ 0x1b80, 0x000719f7,
+ 0x1b80, 0x58011a05,
+ 0x1b80, 0x58011a07,
+ 0x1b80, 0x00041a15,
+ 0x1b80, 0x00041a17,
+ 0x1b80, 0x00021a25,
+ 0x1b80, 0x00021a27,
+ 0x1b80, 0x00301a35,
+ 0x1b80, 0x00301a37,
+ 0x1b80, 0x00001a45,
+ 0x1b80, 0x00001a47,
+ 0x1b80, 0x00021a55,
+ 0x1b80, 0x00021a57,
+ 0x1b80, 0x63051a65,
+ 0x1b80, 0x63051a67,
+ 0x1b80, 0x7b401a75,
+ 0x1b80, 0x7b401a77,
+ 0x1b80, 0x7a001a85,
+ 0x1b80, 0x7a001a87,
+ 0x1b80, 0x79001a95,
+ 0x1b80, 0x79001a97,
+ 0x1b80, 0x7f401aa5,
+ 0x1b80, 0x7f401aa7,
+ 0x1b80, 0x7e001ab5,
+ 0x1b80, 0x7e001ab7,
+ 0x1b80, 0x7d001ac5,
+ 0x1b80, 0x7d001ac7,
+ 0x1b80, 0x00011ad5,
+ 0x1b80, 0x00011ad7,
+ 0x1b80, 0x00041ae5,
+ 0x1b80, 0x00041ae7,
+ 0x1b80, 0x55011af5,
+ 0x1b80, 0x55011af7,
+ 0x1b80, 0x5c311b05,
+ 0x1b80, 0x5c311b07,
+ 0x1b80, 0x5f821b15,
+ 0x1b80, 0x5f821b17,
+ 0x1b80, 0x66051b25,
+ 0x1b80, 0x66051b27,
+ 0x1b80, 0x00061b35,
+ 0x1b80, 0x00061b37,
+ 0x1b80, 0x5d801b45,
+ 0x1b80, 0x5d801b47,
+ 0x1b80, 0x09001b55,
+ 0x1b80, 0x09001b57,
+ 0x1b80, 0x0a011b65,
+ 0x1b80, 0x0a011b67,
+ 0x1b80, 0x0b401b75,
+ 0x1b80, 0x0b401b77,
+ 0x1b80, 0x0d001b85,
+ 0x1b80, 0x0d001b87,
+ 0x1b80, 0x0f011b95,
+ 0x1b80, 0x0f011b97,
+ 0x1b80, 0x002a1ba5,
+ 0x1b80, 0x002a1ba7,
+ 0x1b80, 0x055a1bb5,
+ 0x1b80, 0x055a1bb7,
+ 0x1b80, 0x05db1bc5,
+ 0x1b80, 0x05db1bc7,
+ 0x1b80, 0xe3d21bd5,
+ 0x1b80, 0xe3d21bd7,
+ 0x1b80, 0xe3801be5,
+ 0x1b80, 0xe3801be7,
+ 0x1b80, 0x00061bf5,
+ 0x1b80, 0x00061bf7,
+ 0x1b80, 0x06da1c05,
+ 0x1b80, 0x06da1c07,
+ 0x1b80, 0x07db1c15,
+ 0x1b80, 0x07db1c17,
+ 0x1b80, 0xe3d21c25,
+ 0x1b80, 0xe3d21c27,
+ 0x1b80, 0xe3801c35,
+ 0x1b80, 0xe3801c37,
+ 0x1b80, 0xe3c91c45,
+ 0x1b80, 0xe3c91c47,
+ 0x1b80, 0x00021c55,
+ 0x1b80, 0x00021c57,
+ 0x1b80, 0xe3ce1c65,
+ 0x1b80, 0xe3ce1c67,
+ 0x1b80, 0x5d001c75,
+ 0x1b80, 0x5d001c77,
+ 0x1b80, 0x00041c85,
+ 0x1b80, 0x00041c87,
+ 0x1b80, 0x5fa21c95,
+ 0x1b80, 0x5fa21c97,
+ 0x1b80, 0x00011ca5,
+ 0x1b80, 0x00011ca7,
+ 0x1b80, 0x00041cb5,
+ 0x1b80, 0x00041cb7,
+ 0x1b80, 0xe2711cc5,
+ 0x1b80, 0xe2711cc7,
+ 0x1b80, 0xe2821cd5,
+ 0x1b80, 0xe2821cd7,
+ 0x1b80, 0xe28b1ce5,
+ 0x1b80, 0xe28b1ce7,
+ 0x1b80, 0xe29c1cf5,
+ 0x1b80, 0xe29c1cf7,
+ 0x1b80, 0x00051d05,
+ 0x1b80, 0x00051d07,
+ 0x1b80, 0xe2641d15,
+ 0x1b80, 0xe2641d17,
+ 0x1b80, 0xe2711d25,
+ 0x1b80, 0xe2711d27,
+ 0x1b80, 0xe28b1d35,
+ 0x1b80, 0xe28b1d37,
+ 0x1b80, 0xe29c1d45,
+ 0x1b80, 0xe29c1d47,
+ 0x1b80, 0x00061d55,
+ 0x1b80, 0x00061d57,
+ 0x1b80, 0xe2641d65,
+ 0x1b80, 0xe2641d67,
+ 0x1b80, 0xe2711d75,
+ 0x1b80, 0xe2711d77,
+ 0x1b80, 0xe2821d85,
+ 0x1b80, 0xe2821d87,
+ 0x1b80, 0xe28b1d95,
+ 0x1b80, 0xe28b1d97,
+ 0x1b80, 0x00011da5,
+ 0x1b80, 0x00011da7,
+ 0x1b80, 0xe2f41db5,
+ 0x1b80, 0xe2f41db7,
+ 0x1b80, 0x74081dc5,
+ 0x1b80, 0x74081dc7,
+ 0x1b80, 0xe33e1dd5,
+ 0x1b80, 0xe33e1dd7,
+ 0x1b80, 0xe3201de5,
+ 0x1b80, 0xe3201de7,
+ 0x1b80, 0xe35e1df5,
+ 0x1b80, 0xe35e1df7,
+ 0x1b80, 0xb9001e05,
+ 0x1b80, 0xb9001e07,
+ 0x1b80, 0x99001e15,
+ 0x1b80, 0x99001e17,
+ 0x1b80, 0x00061e25,
+ 0x1b80, 0x00061e27,
+ 0x1b80, 0x77001e35,
+ 0x1b80, 0x77001e37,
+ 0x1b80, 0x00041e45,
+ 0x1b80, 0x00041e47,
+ 0x1b80, 0x49041e55,
+ 0x1b80, 0x49041e57,
+ 0x1b80, 0x4bb01e65,
+ 0x1b80, 0x4bb01e67,
+ 0x1b80, 0x00061e75,
+ 0x1b80, 0x00061e77,
+ 0x1b80, 0x75041e85,
+ 0x1b80, 0x75041e87,
+ 0x1b80, 0x77081e95,
+ 0x1b80, 0x77081e97,
+ 0x1b80, 0x00071ea5,
+ 0x1b80, 0x00071ea7,
+ 0x1b80, 0x77101eb5,
+ 0x1b80, 0x77101eb7,
+ 0x1b80, 0x00041ec5,
+ 0x1b80, 0x00041ec7,
+ 0x1b80, 0x44801ed5,
+ 0x1b80, 0x44801ed7,
+ 0x1b80, 0x45ff1ee5,
+ 0x1b80, 0x45ff1ee7,
+ 0x1b80, 0x463f1ef5,
+ 0x1b80, 0x463f1ef7,
+ 0x1b80, 0x47311f05,
+ 0x1b80, 0x47311f07,
+ 0x1b80, 0x40081f15,
+ 0x1b80, 0x40081f17,
+ 0x1b80, 0xe2db1f25,
+ 0x1b80, 0xe2db1f27,
+ 0x1b80, 0x00011f35,
+ 0x1b80, 0x00011f37,
+ 0x1b80, 0xe2f41f45,
+ 0x1b80, 0xe2f41f47,
+ 0x1b80, 0x74081f55,
+ 0x1b80, 0x74081f57,
+ 0x1b80, 0xe34e1f65,
+ 0x1b80, 0xe34e1f67,
+ 0x1b80, 0xe3201f75,
+ 0x1b80, 0xe3201f77,
+ 0x1b80, 0xe3641f85,
+ 0x1b80, 0xe3641f87,
+ 0x1b80, 0xb9001f95,
+ 0x1b80, 0xb9001f97,
+ 0x1b80, 0x99001fa5,
+ 0x1b80, 0x99001fa7,
+ 0x1b80, 0x00061fb5,
+ 0x1b80, 0x00061fb7,
+ 0x1b80, 0x77001fc5,
+ 0x1b80, 0x77001fc7,
+ 0x1b80, 0x00051fd5,
+ 0x1b80, 0x00051fd7,
+ 0x1b80, 0x61041fe5,
+ 0x1b80, 0x61041fe7,
+ 0x1b80, 0x63b01ff5,
+ 0x1b80, 0x63b01ff7,
+ 0x1b80, 0x00062005,
+ 0x1b80, 0x00062007,
+ 0x1b80, 0x75082015,
+ 0x1b80, 0x75082017,
+ 0x1b80, 0x77082025,
+ 0x1b80, 0x77082027,
+ 0x1b80, 0x00072035,
+ 0x1b80, 0x00072037,
+ 0x1b80, 0x77202045,
+ 0x1b80, 0x77202047,
+ 0x1b80, 0x00052055,
+ 0x1b80, 0x00052057,
+ 0x1b80, 0x5c802065,
+ 0x1b80, 0x5c802067,
+ 0x1b80, 0x5dff2075,
+ 0x1b80, 0x5dff2077,
+ 0x1b80, 0x5e3f2085,
+ 0x1b80, 0x5e3f2087,
+ 0x1b80, 0x5f312095,
+ 0x1b80, 0x5f312097,
+ 0x1b80, 0x000420a5,
+ 0x1b80, 0x000420a7,
+ 0x1b80, 0x400a20b5,
+ 0x1b80, 0x400a20b7,
+ 0x1b80, 0xe2db20c5,
+ 0x1b80, 0xe2db20c7,
+ 0x1b80, 0x000120d5,
+ 0x1b80, 0x000120d7,
+ 0x1b80, 0xe2f420e5,
+ 0x1b80, 0xe2f420e7,
+ 0x1b80, 0x740820f5,
+ 0x1b80, 0x740820f7,
+ 0x1b80, 0xe33e2105,
+ 0x1b80, 0xe33e2107,
+ 0x1b80, 0xe3202115,
+ 0x1b80, 0xe3202117,
+ 0x1b80, 0xe35e2125,
+ 0x1b80, 0xe35e2127,
+ 0x1b80, 0xe36a2135,
+ 0x1b80, 0xe36a2137,
+ 0x1b80, 0xe2ad2145,
+ 0x1b80, 0xe2ad2147,
+ 0x1b80, 0x00012155,
+ 0x1b80, 0x00012157,
+ 0x1b80, 0xe2f42165,
+ 0x1b80, 0xe2f42167,
+ 0x1b80, 0x74082175,
+ 0x1b80, 0x74082177,
+ 0x1b80, 0xe34e2185,
+ 0x1b80, 0xe34e2187,
+ 0x1b80, 0xe3202195,
+ 0x1b80, 0xe3202197,
+ 0x1b80, 0xe36421a5,
+ 0x1b80, 0xe36421a7,
+ 0x1b80, 0xe36a21b5,
+ 0x1b80, 0xe36a21b7,
+ 0x1b80, 0xe2c321c5,
+ 0x1b80, 0xe2c321c7,
+ 0x1b80, 0x000121d5,
+ 0x1b80, 0x000121d7,
+ 0x1b80, 0xe30a21e5,
+ 0x1b80, 0xe30a21e7,
+ 0x1b80, 0x740021f5,
+ 0x1b80, 0x740021f7,
+ 0x1b80, 0xe33e2205,
+ 0x1b80, 0xe33e2207,
+ 0x1b80, 0xe32f2215,
+ 0x1b80, 0xe32f2217,
+ 0x1b80, 0xe35e2225,
+ 0x1b80, 0xe35e2227,
+ 0x1b80, 0xe36a2235,
+ 0x1b80, 0xe36a2237,
+ 0x1b80, 0xe2ad2245,
+ 0x1b80, 0xe2ad2247,
0x1b80, 0x00012255,
0x1b80, 0x00012257,
- 0x1b80, 0x00052265,
- 0x1b80, 0x00052267,
- 0x1b80, 0x61042275,
- 0x1b80, 0x61042277,
- 0x1b80, 0x63b02285,
- 0x1b80, 0x63b02287,
- 0x1b80, 0x00062295,
- 0x1b80, 0x00062297,
- 0x1b80, 0x750822a5,
- 0x1b80, 0x750822a7,
- 0x1b80, 0x770822b5,
- 0x1b80, 0x770822b7,
- 0x1b80, 0x000522c5,
- 0x1b80, 0x000522c7,
- 0x1b80, 0x5c8022d5,
- 0x1b80, 0x5c8022d7,
- 0x1b80, 0x5dff22e5,
- 0x1b80, 0x5dff22e7,
- 0x1b80, 0x5e3f22f5,
- 0x1b80, 0x5e3f22f7,
- 0x1b80, 0x5f312305,
- 0x1b80, 0x5f312307,
- 0x1b80, 0x00042315,
- 0x1b80, 0x00042317,
- 0x1b80, 0x400a2325,
- 0x1b80, 0x400a2327,
- 0x1b80, 0xe23e2335,
- 0x1b80, 0xe23e2337,
- 0x1b80, 0x00042345,
- 0x1b80, 0x00042347,
- 0x1b80, 0x400c2355,
- 0x1b80, 0x400c2357,
- 0x1b80, 0x00062365,
- 0x1b80, 0x00062367,
- 0x1b80, 0x75002375,
- 0x1b80, 0x75002377,
- 0x1b80, 0x00052385,
- 0x1b80, 0x00052387,
- 0x1b80, 0x5c5b2395,
- 0x1b80, 0x5c5b2397,
- 0x1b80, 0x5f0023a5,
- 0x1b80, 0x5f0023a7,
- 0x1b80, 0x000423b5,
- 0x1b80, 0x000423b7,
- 0x1b80, 0x400823c5,
- 0x1b80, 0x400823c7,
- 0x1b80, 0x000123d5,
- 0x1b80, 0x000123d7,
- 0x1b80, 0x000723e5,
- 0x1b80, 0x000723e7,
- 0x1b80, 0x4c1223f5,
- 0x1b80, 0x4c1223f7,
- 0x1b80, 0x4e202405,
- 0x1b80, 0x4e202407,
- 0x1b80, 0x00052415,
- 0x1b80, 0x00052417,
- 0x1b80, 0x598f2425,
- 0x1b80, 0x598f2427,
- 0x1b80, 0x40022435,
- 0x1b80, 0x40022437,
- 0x1b80, 0x4c012445,
- 0x1b80, 0x4c012447,
- 0x1b80, 0x4c002455,
- 0x1b80, 0x4c002457,
- 0x1b80, 0xab002465,
- 0x1b80, 0xab002467,
- 0x1b80, 0x40032475,
- 0x1b80, 0x40032477,
- 0x1b80, 0x49802485,
- 0x1b80, 0x49802487,
- 0x1b80, 0x56c02495,
- 0x1b80, 0x56c02497,
- 0x1b80, 0x540224a5,
- 0x1b80, 0x540224a7,
- 0x1b80, 0x4c0124b5,
- 0x1b80, 0x4c0124b7,
- 0x1b80, 0x4c0024c5,
- 0x1b80, 0x4c0024c7,
- 0x1b80, 0xab0024d5,
- 0x1b80, 0xab0024d7,
- 0x1b80, 0x540024e5,
- 0x1b80, 0x540024e7,
- 0x1b80, 0x000724f5,
- 0x1b80, 0x000724f7,
- 0x1b80, 0x4c002505,
- 0x1b80, 0x4c002507,
- 0x1b80, 0x4e002515,
- 0x1b80, 0x4e002517,
- 0x1b80, 0x00052525,
- 0x1b80, 0x00052527,
- 0x1b80, 0x40042535,
- 0x1b80, 0x40042537,
- 0x1b80, 0x4c012545,
- 0x1b80, 0x4c012547,
- 0x1b80, 0x4c002555,
- 0x1b80, 0x4c002557,
- 0x1b80, 0x00012565,
- 0x1b80, 0x00012567,
- 0x1b80, 0x00042575,
- 0x1b80, 0x00042577,
- 0x1b80, 0x44802585,
- 0x1b80, 0x44802587,
- 0x1b80, 0x4b002595,
- 0x1b80, 0x4b002597,
- 0x1b80, 0x000525a5,
- 0x1b80, 0x000525a7,
- 0x1b80, 0x5c8025b5,
- 0x1b80, 0x5c8025b7,
- 0x1b80, 0x630025c5,
- 0x1b80, 0x630025c7,
- 0x1b80, 0x000725d5,
- 0x1b80, 0x000725d7,
- 0x1b80, 0x780c25e5,
- 0x1b80, 0x780c25e7,
- 0x1b80, 0x791925f5,
- 0x1b80, 0x791925f7,
- 0x1b80, 0x7a002605,
- 0x1b80, 0x7a002607,
- 0x1b80, 0x7b822615,
- 0x1b80, 0x7b822617,
- 0x1b80, 0x7b022625,
- 0x1b80, 0x7b022627,
- 0x1b80, 0x78142635,
- 0x1b80, 0x78142637,
- 0x1b80, 0x79ee2645,
- 0x1b80, 0x79ee2647,
- 0x1b80, 0x7a012655,
- 0x1b80, 0x7a012657,
- 0x1b80, 0x7b832665,
- 0x1b80, 0x7b832667,
- 0x1b80, 0x7b032675,
- 0x1b80, 0x7b032677,
- 0x1b80, 0x78282685,
- 0x1b80, 0x78282687,
- 0x1b80, 0x79b42695,
- 0x1b80, 0x79b42697,
- 0x1b80, 0x7a0026a5,
- 0x1b80, 0x7a0026a7,
- 0x1b80, 0x7b0026b5,
- 0x1b80, 0x7b0026b7,
- 0x1b80, 0x000126c5,
- 0x1b80, 0x000126c7,
- 0x1b80, 0x000426d5,
- 0x1b80, 0x000426d7,
- 0x1b80, 0x448026e5,
- 0x1b80, 0x448026e7,
+ 0x1b80, 0xe30a2265,
+ 0x1b80, 0xe30a2267,
+ 0x1b80, 0x74002275,
+ 0x1b80, 0x74002277,
+ 0x1b80, 0xe34e2285,
+ 0x1b80, 0xe34e2287,
+ 0x1b80, 0xe32f2295,
+ 0x1b80, 0xe32f2297,
+ 0x1b80, 0xe36422a5,
+ 0x1b80, 0xe36422a7,
+ 0x1b80, 0xe36a22b5,
+ 0x1b80, 0xe36a22b7,
+ 0x1b80, 0xe2c322c5,
+ 0x1b80, 0xe2c322c7,
+ 0x1b80, 0x000122d5,
+ 0x1b80, 0x000122d7,
+ 0x1b80, 0x000422e5,
+ 0x1b80, 0x000422e7,
+ 0x1b80, 0x445b22f5,
+ 0x1b80, 0x445b22f7,
+ 0x1b80, 0x47b02305,
+ 0x1b80, 0x47b02307,
+ 0x1b80, 0x47302315,
+ 0x1b80, 0x47302317,
+ 0x1b80, 0x47002325,
+ 0x1b80, 0x47002327,
+ 0x1b80, 0x00062335,
+ 0x1b80, 0x00062337,
+ 0x1b80, 0x77082345,
+ 0x1b80, 0x77082347,
+ 0x1b80, 0x00042355,
+ 0x1b80, 0x00042357,
+ 0x1b80, 0x49402365,
+ 0x1b80, 0x49402367,
+ 0x1b80, 0x4bb02375,
+ 0x1b80, 0x4bb02377,
+ 0x1b80, 0x00072385,
+ 0x1b80, 0x00072387,
+ 0x1b80, 0x54402395,
+ 0x1b80, 0x54402397,
+ 0x1b80, 0x000423a5,
+ 0x1b80, 0x000423a7,
+ 0x1b80, 0x400823b5,
+ 0x1b80, 0x400823b7,
+ 0x1b80, 0x000123c5,
+ 0x1b80, 0x000123c7,
+ 0x1b80, 0x000523d5,
+ 0x1b80, 0x000523d7,
+ 0x1b80, 0x5c5b23e5,
+ 0x1b80, 0x5c5b23e7,
+ 0x1b80, 0x5fb023f5,
+ 0x1b80, 0x5fb023f7,
+ 0x1b80, 0x5f302405,
+ 0x1b80, 0x5f302407,
+ 0x1b80, 0x5f002415,
+ 0x1b80, 0x5f002417,
+ 0x1b80, 0x00062425,
+ 0x1b80, 0x00062427,
+ 0x1b80, 0x77082435,
+ 0x1b80, 0x77082437,
+ 0x1b80, 0x00052445,
+ 0x1b80, 0x00052447,
+ 0x1b80, 0x61402455,
+ 0x1b80, 0x61402457,
+ 0x1b80, 0x63b02465,
+ 0x1b80, 0x63b02467,
+ 0x1b80, 0x00072475,
+ 0x1b80, 0x00072477,
+ 0x1b80, 0x54402485,
+ 0x1b80, 0x54402487,
+ 0x1b80, 0x00042495,
+ 0x1b80, 0x00042497,
+ 0x1b80, 0x400824a5,
+ 0x1b80, 0x400824a7,
+ 0x1b80, 0x000124b5,
+ 0x1b80, 0x000124b7,
+ 0x1b80, 0xe2f424c5,
+ 0x1b80, 0xe2f424c7,
+ 0x1b80, 0x740824d5,
+ 0x1b80, 0x740824d7,
+ 0x1b80, 0xe33e24e5,
+ 0x1b80, 0xe33e24e7,
+ 0x1b80, 0x000424f5,
+ 0x1b80, 0x000424f7,
+ 0x1b80, 0x40082505,
+ 0x1b80, 0x40082507,
+ 0x1b80, 0x00012515,
+ 0x1b80, 0x00012517,
+ 0x1b80, 0xe2f42525,
+ 0x1b80, 0xe2f42527,
+ 0x1b80, 0x74082535,
+ 0x1b80, 0x74082537,
+ 0x1b80, 0xe34e2545,
+ 0x1b80, 0xe34e2547,
+ 0x1b80, 0x00042555,
+ 0x1b80, 0x00042557,
+ 0x1b80, 0x40082565,
+ 0x1b80, 0x40082567,
+ 0x1b80, 0x00012575,
+ 0x1b80, 0x00012577,
+ 0x1b80, 0xe30a2585,
+ 0x1b80, 0xe30a2587,
+ 0x1b80, 0x74002595,
+ 0x1b80, 0x74002597,
+ 0x1b80, 0xe33e25a5,
+ 0x1b80, 0xe33e25a7,
+ 0x1b80, 0x000425b5,
+ 0x1b80, 0x000425b7,
+ 0x1b80, 0x400825c5,
+ 0x1b80, 0x400825c7,
+ 0x1b80, 0x000125d5,
+ 0x1b80, 0x000125d7,
+ 0x1b80, 0xe30a25e5,
+ 0x1b80, 0xe30a25e7,
+ 0x1b80, 0x740025f5,
+ 0x1b80, 0x740025f7,
+ 0x1b80, 0xe34e2605,
+ 0x1b80, 0xe34e2607,
+ 0x1b80, 0x00042615,
+ 0x1b80, 0x00042617,
+ 0x1b80, 0x40082625,
+ 0x1b80, 0x40082627,
+ 0x1b80, 0x00012635,
+ 0x1b80, 0x00012637,
+ 0x1b80, 0x40ff2645,
+ 0x1b80, 0x40ff2647,
+ 0x1b80, 0x411f2655,
+ 0x1b80, 0x411f2657,
+ 0x1b80, 0x42002665,
+ 0x1b80, 0x42002667,
+ 0x1b80, 0x43002675,
+ 0x1b80, 0x43002677,
+ 0x1b80, 0x44ff2685,
+ 0x1b80, 0x44ff2687,
+ 0x1b80, 0x451f2695,
+ 0x1b80, 0x451f2697,
+ 0x1b80, 0x460026a5,
+ 0x1b80, 0x460026a7,
+ 0x1b80, 0x470026b5,
+ 0x1b80, 0x470026b7,
+ 0x1b80, 0x48ff26c5,
+ 0x1b80, 0x48ff26c7,
+ 0x1b80, 0x491f26d5,
+ 0x1b80, 0x491f26d7,
+ 0x1b80, 0x4a0026e5,
+ 0x1b80, 0x4a0026e7,
0x1b80, 0x4b0026f5,
0x1b80, 0x4b0026f7,
- 0x1b80, 0x00052705,
- 0x1b80, 0x00052707,
- 0x1b80, 0x5c802715,
- 0x1b80, 0x5c802717,
- 0x1b80, 0x63002725,
- 0x1b80, 0x63002727,
- 0x1b80, 0x00072735,
- 0x1b80, 0x00072737,
- 0x1b80, 0x78102745,
- 0x1b80, 0x78102747,
- 0x1b80, 0x79132755,
- 0x1b80, 0x79132757,
- 0x1b80, 0x7a002765,
- 0x1b80, 0x7a002767,
- 0x1b80, 0x7b802775,
- 0x1b80, 0x7b802777,
- 0x1b80, 0x7b002785,
- 0x1b80, 0x7b002787,
- 0x1b80, 0x78db2795,
- 0x1b80, 0x78db2797,
- 0x1b80, 0x790027a5,
- 0x1b80, 0x790027a7,
- 0x1b80, 0x7a0027b5,
- 0x1b80, 0x7a0027b7,
- 0x1b80, 0x7b8127c5,
- 0x1b80, 0x7b8127c7,
- 0x1b80, 0x7b0127d5,
- 0x1b80, 0x7b0127d7,
- 0x1b80, 0x782827e5,
- 0x1b80, 0x782827e7,
- 0x1b80, 0x79b427f5,
- 0x1b80, 0x79b427f7,
- 0x1b80, 0x7a002805,
- 0x1b80, 0x7a002807,
- 0x1b80, 0x7b002815,
- 0x1b80, 0x7b002817,
- 0x1b80, 0x00012825,
- 0x1b80, 0x00012827,
- 0x1b80, 0x00072835,
- 0x1b80, 0x00072837,
- 0x1b80, 0x783e2845,
- 0x1b80, 0x783e2847,
- 0x1b80, 0x79f92855,
- 0x1b80, 0x79f92857,
- 0x1b80, 0x7a012865,
- 0x1b80, 0x7a012867,
- 0x1b80, 0x7b822875,
- 0x1b80, 0x7b822877,
- 0x1b80, 0x7b022885,
- 0x1b80, 0x7b022887,
- 0x1b80, 0x78a92895,
- 0x1b80, 0x78a92897,
- 0x1b80, 0x79ed28a5,
- 0x1b80, 0x79ed28a7,
- 0x1b80, 0x7b8328b5,
- 0x1b80, 0x7b8328b7,
- 0x1b80, 0x7b0328c5,
- 0x1b80, 0x7b0328c7,
- 0x1b80, 0x782828d5,
- 0x1b80, 0x782828d7,
- 0x1b80, 0x79b428e5,
- 0x1b80, 0x79b428e7,
- 0x1b80, 0x7a0028f5,
- 0x1b80, 0x7a0028f7,
- 0x1b80, 0x7b002905,
- 0x1b80, 0x7b002907,
- 0x1b80, 0x00012915,
- 0x1b80, 0x00012917,
- 0x1b80, 0x00072925,
- 0x1b80, 0x00072927,
- 0x1b80, 0x78ae2935,
- 0x1b80, 0x78ae2937,
- 0x1b80, 0x79fa2945,
- 0x1b80, 0x79fa2947,
- 0x1b80, 0x7a012955,
- 0x1b80, 0x7a012957,
- 0x1b80, 0x7b802965,
- 0x1b80, 0x7b802967,
- 0x1b80, 0x7b002975,
- 0x1b80, 0x7b002977,
- 0x1b80, 0x787a2985,
- 0x1b80, 0x787a2987,
- 0x1b80, 0x79f12995,
- 0x1b80, 0x79f12997,
- 0x1b80, 0x7b8129a5,
- 0x1b80, 0x7b8129a7,
- 0x1b80, 0x7b0129b5,
- 0x1b80, 0x7b0129b7,
- 0x1b80, 0x782829c5,
- 0x1b80, 0x782829c7,
- 0x1b80, 0x79b429d5,
- 0x1b80, 0x79b429d7,
- 0x1b80, 0x7a0029e5,
- 0x1b80, 0x7a0029e7,
- 0x1b80, 0x7b0029f5,
- 0x1b80, 0x7b0029f7,
- 0x1b80, 0x00012a05,
- 0x1b80, 0x00012a07,
- 0x1b80, 0x00072a15,
- 0x1b80, 0x00072a17,
- 0x1b80, 0x75002a25,
- 0x1b80, 0x75002a27,
- 0x1b80, 0x76022a35,
- 0x1b80, 0x76022a37,
- 0x1b80, 0x77152a45,
- 0x1b80, 0x77152a47,
- 0x1b80, 0x00062a55,
- 0x1b80, 0x00062a57,
- 0x1b80, 0x74002a65,
- 0x1b80, 0x74002a67,
- 0x1b80, 0x76002a75,
- 0x1b80, 0x76002a77,
- 0x1b80, 0x77002a85,
- 0x1b80, 0x77002a87,
- 0x1b80, 0x75102a95,
- 0x1b80, 0x75102a97,
- 0x1b80, 0x75002aa5,
- 0x1b80, 0x75002aa7,
- 0x1b80, 0xb3002ab5,
- 0x1b80, 0xb3002ab7,
- 0x1b80, 0x93002ac5,
- 0x1b80, 0x93002ac7,
- 0x1b80, 0x00072ad5,
- 0x1b80, 0x00072ad7,
- 0x1b80, 0x76002ae5,
- 0x1b80, 0x76002ae7,
- 0x1b80, 0x77002af5,
- 0x1b80, 0x77002af7,
- 0x1b80, 0x00012b05,
- 0x1b80, 0x00012b07,
- 0x1b80, 0x00072b15,
- 0x1b80, 0x00072b17,
- 0x1b80, 0x75002b25,
- 0x1b80, 0x75002b27,
- 0x1b80, 0x76022b35,
- 0x1b80, 0x76022b37,
- 0x1b80, 0x77252b45,
- 0x1b80, 0x77252b47,
- 0x1b80, 0x00062b55,
- 0x1b80, 0x00062b57,
- 0x1b80, 0x74002b65,
- 0x1b80, 0x74002b67,
- 0x1b80, 0x76002b75,
- 0x1b80, 0x76002b77,
- 0x1b80, 0x77012b85,
- 0x1b80, 0x77012b87,
- 0x1b80, 0x75102b95,
- 0x1b80, 0x75102b97,
- 0x1b80, 0x75002ba5,
- 0x1b80, 0x75002ba7,
- 0x1b80, 0xb3002bb5,
- 0x1b80, 0xb3002bb7,
- 0x1b80, 0x93002bc5,
- 0x1b80, 0x93002bc7,
- 0x1b80, 0x00072bd5,
- 0x1b80, 0x00072bd7,
- 0x1b80, 0x76002be5,
- 0x1b80, 0x76002be7,
- 0x1b80, 0x77002bf5,
- 0x1b80, 0x77002bf7,
- 0x1b80, 0x00012c05,
- 0x1b80, 0x00012c07,
- 0x1b80, 0x00042c15,
- 0x1b80, 0x00042c17,
- 0x1b80, 0x44802c25,
- 0x1b80, 0x44802c27,
- 0x1b80, 0x47302c35,
- 0x1b80, 0x47302c37,
- 0x1b80, 0x00062c45,
- 0x1b80, 0x00062c47,
- 0x1b80, 0x776c2c55,
- 0x1b80, 0x776c2c57,
- 0x1b80, 0x00012c65,
- 0x1b80, 0x00012c67,
- 0x1b80, 0x00052c75,
- 0x1b80, 0x00052c77,
- 0x1b80, 0x5c802c85,
- 0x1b80, 0x5c802c87,
- 0x1b80, 0x5f302c95,
- 0x1b80, 0x5f302c97,
- 0x1b80, 0x00062ca5,
- 0x1b80, 0x00062ca7,
- 0x1b80, 0x776d2cb5,
- 0x1b80, 0x776d2cb7,
- 0x1b80, 0x00012cc5,
- 0x1b80, 0x00012cc7,
- 0x1b80, 0xb9002cd5,
- 0x1b80, 0xb9002cd7,
- 0x1b80, 0x99002ce5,
- 0x1b80, 0x99002ce7,
- 0x1b80, 0x00062cf5,
- 0x1b80, 0x00062cf7,
- 0x1b80, 0x77002d05,
- 0x1b80, 0x77002d07,
- 0x1b80, 0x98052d15,
- 0x1b80, 0x98052d17,
- 0x1b80, 0x00042d25,
- 0x1b80, 0x00042d27,
- 0x1b80, 0x40082d35,
- 0x1b80, 0x40082d37,
- 0x1b80, 0x4a022d45,
- 0x1b80, 0x4a022d47,
- 0x1b80, 0x30192d55,
- 0x1b80, 0x30192d57,
- 0x1b80, 0x00012d65,
- 0x1b80, 0x00012d67,
- 0x1b80, 0x7b482d75,
- 0x1b80, 0x7b482d77,
- 0x1b80, 0x7a902d85,
- 0x1b80, 0x7a902d87,
- 0x1b80, 0x79002d95,
- 0x1b80, 0x79002d97,
- 0x1b80, 0x55032da5,
- 0x1b80, 0x55032da7,
- 0x1b80, 0x32e32db5,
- 0x1b80, 0x32e32db7,
- 0x1b80, 0x7b382dc5,
- 0x1b80, 0x7b382dc7,
- 0x1b80, 0x7a802dd5,
- 0x1b80, 0x7a802dd7,
- 0x1b80, 0x550b2de5,
- 0x1b80, 0x550b2de7,
- 0x1b80, 0x32e32df5,
- 0x1b80, 0x32e32df7,
- 0x1b80, 0x7b402e05,
- 0x1b80, 0x7b402e07,
- 0x1b80, 0x7a002e15,
- 0x1b80, 0x7a002e17,
- 0x1b80, 0x55132e25,
- 0x1b80, 0x55132e27,
- 0x1b80, 0x74012e35,
- 0x1b80, 0x74012e37,
- 0x1b80, 0x74002e45,
- 0x1b80, 0x74002e47,
- 0x1b80, 0x8e002e55,
- 0x1b80, 0x8e002e57,
- 0x1b80, 0x00012e65,
- 0x1b80, 0x00012e67,
- 0x1b80, 0x57022e75,
- 0x1b80, 0x57022e77,
- 0x1b80, 0x57002e85,
- 0x1b80, 0x57002e87,
- 0x1b80, 0x97002e95,
- 0x1b80, 0x97002e97,
- 0x1b80, 0x00012ea5,
- 0x1b80, 0x00012ea7,
- 0x1b80, 0x4f782eb5,
- 0x1b80, 0x4f782eb7,
- 0x1b80, 0x53882ec5,
- 0x1b80, 0x53882ec7,
- 0x1b80, 0xe2f72ed5,
- 0x1b80, 0xe2f72ed7,
- 0x1b80, 0x54802ee5,
- 0x1b80, 0x54802ee7,
- 0x1b80, 0x54002ef5,
- 0x1b80, 0x54002ef7,
- 0x1b80, 0x54812f05,
- 0x1b80, 0x54812f07,
- 0x1b80, 0x54002f15,
- 0x1b80, 0x54002f17,
- 0x1b80, 0x54822f25,
- 0x1b80, 0x54822f27,
- 0x1b80, 0x54002f35,
- 0x1b80, 0x54002f37,
- 0x1b80, 0xe3022f45,
- 0x1b80, 0xe3022f47,
- 0x1b80, 0xbf1d2f55,
- 0x1b80, 0xbf1d2f57,
- 0x1b80, 0x30192f65,
- 0x1b80, 0x30192f67,
- 0x1b80, 0xe2d72f75,
- 0x1b80, 0xe2d72f77,
- 0x1b80, 0xe2dc2f85,
- 0x1b80, 0xe2dc2f87,
- 0x1b80, 0xe2e02f95,
- 0x1b80, 0xe2e02f97,
- 0x1b80, 0xe2e72fa5,
- 0x1b80, 0xe2e72fa7,
- 0x1b80, 0xe3412fb5,
- 0x1b80, 0xe3412fb7,
- 0x1b80, 0x55132fc5,
- 0x1b80, 0x55132fc7,
- 0x1b80, 0xe2e32fd5,
- 0x1b80, 0xe2e32fd7,
- 0x1b80, 0x55152fe5,
- 0x1b80, 0x55152fe7,
- 0x1b80, 0xe2e72ff5,
- 0x1b80, 0xe2e72ff7,
- 0x1b80, 0xe3413005,
- 0x1b80, 0xe3413007,
- 0x1b80, 0x00013015,
- 0x1b80, 0x00013017,
- 0x1b80, 0x54bf3025,
- 0x1b80, 0x54bf3027,
- 0x1b80, 0x54c03035,
- 0x1b80, 0x54c03037,
- 0x1b80, 0x54a33045,
- 0x1b80, 0x54a33047,
- 0x1b80, 0x54c13055,
- 0x1b80, 0x54c13057,
- 0x1b80, 0x54a43065,
- 0x1b80, 0x54a43067,
- 0x1b80, 0x4c183075,
- 0x1b80, 0x4c183077,
- 0x1b80, 0xbf073085,
- 0x1b80, 0xbf073087,
- 0x1b80, 0x54c23095,
- 0x1b80, 0x54c23097,
- 0x1b80, 0x54a430a5,
- 0x1b80, 0x54a430a7,
- 0x1b80, 0xbf0430b5,
- 0x1b80, 0xbf0430b7,
- 0x1b80, 0x54c130c5,
- 0x1b80, 0x54c130c7,
- 0x1b80, 0x54a330d5,
- 0x1b80, 0x54a330d7,
- 0x1b80, 0xbf0130e5,
- 0x1b80, 0xbf0130e7,
- 0x1b80, 0xe34f30f5,
- 0x1b80, 0xe34f30f7,
- 0x1b80, 0x54df3105,
- 0x1b80, 0x54df3107,
- 0x1b80, 0x00013115,
- 0x1b80, 0x00013117,
- 0x1b80, 0x54bf3125,
- 0x1b80, 0x54bf3127,
- 0x1b80, 0x54e53135,
- 0x1b80, 0x54e53137,
- 0x1b80, 0x050a3145,
- 0x1b80, 0x050a3147,
- 0x1b80, 0x54df3155,
- 0x1b80, 0x54df3157,
- 0x1b80, 0x00013165,
- 0x1b80, 0x00013167,
- 0x1b80, 0x7f403175,
- 0x1b80, 0x7f403177,
- 0x1b80, 0x7e003185,
- 0x1b80, 0x7e003187,
- 0x1b80, 0x7d003195,
- 0x1b80, 0x7d003197,
- 0x1b80, 0x550131a5,
- 0x1b80, 0x550131a7,
- 0x1b80, 0x5c3131b5,
- 0x1b80, 0x5c3131b7,
- 0x1b80, 0xe2e331c5,
- 0x1b80, 0xe2e331c7,
- 0x1b80, 0xe2e731d5,
- 0x1b80, 0xe2e731d7,
- 0x1b80, 0x548031e5,
- 0x1b80, 0x548031e7,
- 0x1b80, 0x540031f5,
- 0x1b80, 0x540031f7,
- 0x1b80, 0x54813205,
- 0x1b80, 0x54813207,
- 0x1b80, 0x54003215,
- 0x1b80, 0x54003217,
- 0x1b80, 0x54823225,
- 0x1b80, 0x54823227,
- 0x1b80, 0x54003235,
- 0x1b80, 0x54003237,
- 0x1b80, 0xe3023245,
- 0x1b80, 0xe3023247,
- 0x1b80, 0xbfed3255,
- 0x1b80, 0xbfed3257,
- 0x1b80, 0x30193265,
- 0x1b80, 0x30193267,
- 0x1b80, 0x74023275,
- 0x1b80, 0x74023277,
- 0x1b80, 0x003f3285,
- 0x1b80, 0x003f3287,
- 0x1b80, 0x74003295,
- 0x1b80, 0x74003297,
- 0x1b80, 0x000232a5,
- 0x1b80, 0x000232a7,
- 0x1b80, 0x000132b5,
- 0x1b80, 0x000132b7,
- 0x1b80, 0x000632c5,
- 0x1b80, 0x000632c7,
- 0x1b80, 0x5a8032d5,
- 0x1b80, 0x5a8032d7,
- 0x1b80, 0x5a0032e5,
- 0x1b80, 0x5a0032e7,
- 0x1b80, 0x920032f5,
- 0x1b80, 0x920032f7,
- 0x1b80, 0x00013305,
- 0x1b80, 0x00013307,
- 0x1b80, 0x5b8f3315,
- 0x1b80, 0x5b8f3317,
- 0x1b80, 0x5b0f3325,
- 0x1b80, 0x5b0f3327,
- 0x1b80, 0x91003335,
- 0x1b80, 0x91003337,
- 0x1b80, 0x00013345,
- 0x1b80, 0x00013347,
- 0x1b80, 0x00063355,
- 0x1b80, 0x00063357,
- 0x1b80, 0x5d803365,
- 0x1b80, 0x5d803367,
- 0x1b80, 0x5e563375,
- 0x1b80, 0x5e563377,
- 0x1b80, 0x00043385,
- 0x1b80, 0x00043387,
- 0x1b80, 0x4d083395,
- 0x1b80, 0x4d083397,
- 0x1b80, 0x571033a5,
- 0x1b80, 0x571033a7,
- 0x1b80, 0x570033b5,
- 0x1b80, 0x570033b7,
- 0x1b80, 0x4d0033c5,
- 0x1b80, 0x4d0033c7,
- 0x1b80, 0x000633d5,
- 0x1b80, 0x000633d7,
- 0x1b80, 0x5d0033e5,
- 0x1b80, 0x5d0033e7,
- 0x1b80, 0x000433f5,
- 0x1b80, 0x000433f7,
- 0x1b80, 0x00013405,
- 0x1b80, 0x00013407,
- 0x1b80, 0x549f3415,
- 0x1b80, 0x549f3417,
- 0x1b80, 0x54ff3425,
- 0x1b80, 0x54ff3427,
- 0x1b80, 0x54003435,
- 0x1b80, 0x54003437,
- 0x1b80, 0x00013445,
- 0x1b80, 0x00013447,
- 0x1b80, 0x5c313455,
- 0x1b80, 0x5c313457,
- 0x1b80, 0x07143465,
- 0x1b80, 0x07143467,
- 0x1b80, 0x54003475,
- 0x1b80, 0x54003477,
- 0x1b80, 0x5c323485,
- 0x1b80, 0x5c323487,
- 0x1b80, 0x00013495,
- 0x1b80, 0x00013497,
- 0x1b80, 0x5c3234a5,
- 0x1b80, 0x5c3234a7,
- 0x1b80, 0x071434b5,
- 0x1b80, 0x071434b7,
- 0x1b80, 0x540034c5,
- 0x1b80, 0x540034c7,
- 0x1b80, 0x5c3134d5,
- 0x1b80, 0x5c3134d7,
- 0x1b80, 0x000134e5,
- 0x1b80, 0x000134e7,
- 0x1b80, 0x4c9834f5,
- 0x1b80, 0x4c9834f7,
- 0x1b80, 0x4c183505,
- 0x1b80, 0x4c183507,
- 0x1b80, 0x00013515,
- 0x1b80, 0x00013517,
- 0x1b80, 0x5c323525,
- 0x1b80, 0x5c323527,
- 0x1b80, 0x62043535,
- 0x1b80, 0x62043537,
- 0x1b80, 0x63033545,
- 0x1b80, 0x63033547,
- 0x1b80, 0x66073555,
- 0x1b80, 0x66073557,
- 0x1b80, 0x7b403565,
- 0x1b80, 0x7b403567,
- 0x1b80, 0x7a003575,
- 0x1b80, 0x7a003577,
- 0x1b80, 0x79003585,
- 0x1b80, 0x79003587,
- 0x1b80, 0x7f403595,
- 0x1b80, 0x7f403597,
- 0x1b80, 0x7e0035a5,
- 0x1b80, 0x7e0035a7,
- 0x1b80, 0x7d0035b5,
- 0x1b80, 0x7d0035b7,
- 0x1b80, 0x090135c5,
- 0x1b80, 0x090135c7,
- 0x1b80, 0x0c0135d5,
- 0x1b80, 0x0c0135d7,
- 0x1b80, 0x0ba635e5,
- 0x1b80, 0x0ba635e7,
- 0x1b80, 0x000135f5,
- 0x1b80, 0x000135f7,
+ 0x1b80, 0x00012705,
+ 0x1b80, 0x00012707,
+ 0x1b80, 0x4cff2715,
+ 0x1b80, 0x4cff2717,
+ 0x1b80, 0x4d1f2725,
+ 0x1b80, 0x4d1f2727,
+ 0x1b80, 0x4e002735,
+ 0x1b80, 0x4e002737,
+ 0x1b80, 0x4f002745,
+ 0x1b80, 0x4f002747,
+ 0x1b80, 0x50ff2755,
+ 0x1b80, 0x50ff2757,
+ 0x1b80, 0x511f2765,
+ 0x1b80, 0x511f2767,
+ 0x1b80, 0x52002775,
+ 0x1b80, 0x52002777,
+ 0x1b80, 0x53002785,
+ 0x1b80, 0x53002787,
+ 0x1b80, 0x54ff2795,
+ 0x1b80, 0x54ff2797,
+ 0x1b80, 0x551f27a5,
+ 0x1b80, 0x551f27a7,
+ 0x1b80, 0x560027b5,
+ 0x1b80, 0x560027b7,
+ 0x1b80, 0x570027c5,
+ 0x1b80, 0x570027c7,
+ 0x1b80, 0x58ff27d5,
+ 0x1b80, 0x58ff27d7,
+ 0x1b80, 0x591f27e5,
+ 0x1b80, 0x591f27e7,
+ 0x1b80, 0x5a0027f5,
+ 0x1b80, 0x5a0027f7,
+ 0x1b80, 0x5b002805,
+ 0x1b80, 0x5b002807,
+ 0x1b80, 0x00012815,
+ 0x1b80, 0x00012817,
+ 0x1b80, 0x5cff2825,
+ 0x1b80, 0x5cff2827,
+ 0x1b80, 0x5d1f2835,
+ 0x1b80, 0x5d1f2837,
+ 0x1b80, 0x5e002845,
+ 0x1b80, 0x5e002847,
+ 0x1b80, 0x5f002855,
+ 0x1b80, 0x5f002857,
+ 0x1b80, 0x60ff2865,
+ 0x1b80, 0x60ff2867,
+ 0x1b80, 0x611f2875,
+ 0x1b80, 0x611f2877,
+ 0x1b80, 0x62002885,
+ 0x1b80, 0x62002887,
+ 0x1b80, 0x63002895,
+ 0x1b80, 0x63002897,
+ 0x1b80, 0x000128a5,
+ 0x1b80, 0x000128a7,
+ 0x1b80, 0x64ff28b5,
+ 0x1b80, 0x64ff28b7,
+ 0x1b80, 0x651f28c5,
+ 0x1b80, 0x651f28c7,
+ 0x1b80, 0x660028d5,
+ 0x1b80, 0x660028d7,
+ 0x1b80, 0x670028e5,
+ 0x1b80, 0x670028e7,
+ 0x1b80, 0x68ff28f5,
+ 0x1b80, 0x68ff28f7,
+ 0x1b80, 0x691f2905,
+ 0x1b80, 0x691f2907,
+ 0x1b80, 0x6a002915,
+ 0x1b80, 0x6a002917,
+ 0x1b80, 0x6b002925,
+ 0x1b80, 0x6b002927,
+ 0x1b80, 0x6cff2935,
+ 0x1b80, 0x6cff2937,
+ 0x1b80, 0x6d1f2945,
+ 0x1b80, 0x6d1f2947,
+ 0x1b80, 0x6e002955,
+ 0x1b80, 0x6e002957,
+ 0x1b80, 0x6f002965,
+ 0x1b80, 0x6f002967,
+ 0x1b80, 0x70ff2975,
+ 0x1b80, 0x70ff2977,
+ 0x1b80, 0x711f2985,
+ 0x1b80, 0x711f2987,
+ 0x1b80, 0x72002995,
+ 0x1b80, 0x72002997,
+ 0x1b80, 0x730029a5,
+ 0x1b80, 0x730029a7,
+ 0x1b80, 0x000129b5,
+ 0x1b80, 0x000129b7,
+ 0x1b80, 0x70ff29c5,
+ 0x1b80, 0x70ff29c7,
+ 0x1b80, 0x711f29d5,
+ 0x1b80, 0x711f29d7,
+ 0x1b80, 0x720029e5,
+ 0x1b80, 0x720029e7,
+ 0x1b80, 0x730029f5,
+ 0x1b80, 0x730029f7,
+ 0x1b80, 0x74ff2a05,
+ 0x1b80, 0x74ff2a07,
+ 0x1b80, 0x751f2a15,
+ 0x1b80, 0x751f2a17,
+ 0x1b80, 0x76002a25,
+ 0x1b80, 0x76002a27,
+ 0x1b80, 0x77002a35,
+ 0x1b80, 0x77002a37,
+ 0x1b80, 0x78ff2a45,
+ 0x1b80, 0x78ff2a47,
+ 0x1b80, 0x791f2a55,
+ 0x1b80, 0x791f2a57,
+ 0x1b80, 0x7a002a65,
+ 0x1b80, 0x7a002a67,
+ 0x1b80, 0x7b002a75,
+ 0x1b80, 0x7b002a77,
+ 0x1b80, 0x7cff2a85,
+ 0x1b80, 0x7cff2a87,
+ 0x1b80, 0x7d1f2a95,
+ 0x1b80, 0x7d1f2a97,
+ 0x1b80, 0x7e002aa5,
+ 0x1b80, 0x7e002aa7,
+ 0x1b80, 0x7f002ab5,
+ 0x1b80, 0x7f002ab7,
+ 0x1b80, 0x00012ac5,
+ 0x1b80, 0x00012ac7,
+ 0x1b80, 0x00042ad5,
+ 0x1b80, 0x00042ad7,
+ 0x1b80, 0x49042ae5,
+ 0x1b80, 0x49042ae7,
+ 0x1b80, 0x4bb02af5,
+ 0x1b80, 0x4bb02af7,
+ 0x1b80, 0x00062b05,
+ 0x1b80, 0x00062b07,
+ 0x1b80, 0x75042b15,
+ 0x1b80, 0x75042b17,
+ 0x1b80, 0x77082b25,
+ 0x1b80, 0x77082b27,
+ 0x1b80, 0x00042b35,
+ 0x1b80, 0x00042b37,
+ 0x1b80, 0x44802b45,
+ 0x1b80, 0x44802b47,
+ 0x1b80, 0x45ff2b55,
+ 0x1b80, 0x45ff2b57,
+ 0x1b80, 0x463f2b65,
+ 0x1b80, 0x463f2b67,
+ 0x1b80, 0x47312b75,
+ 0x1b80, 0x47312b77,
+ 0x1b80, 0x40082b85,
+ 0x1b80, 0x40082b87,
+ 0x1b80, 0xe2db2b95,
+ 0x1b80, 0xe2db2b97,
+ 0x1b80, 0x00042ba5,
+ 0x1b80, 0x00042ba7,
+ 0x1b80, 0x400c2bb5,
+ 0x1b80, 0x400c2bb7,
+ 0x1b80, 0x00062bc5,
+ 0x1b80, 0x00062bc7,
+ 0x1b80, 0x75002bd5,
+ 0x1b80, 0x75002bd7,
+ 0x1b80, 0x00042be5,
+ 0x1b80, 0x00042be7,
+ 0x1b80, 0x445b2bf5,
+ 0x1b80, 0x445b2bf7,
+ 0x1b80, 0x47002c05,
+ 0x1b80, 0x47002c07,
+ 0x1b80, 0x40082c15,
+ 0x1b80, 0x40082c17,
+ 0x1b80, 0x00012c25,
+ 0x1b80, 0x00012c27,
+ 0x1b80, 0x00052c35,
+ 0x1b80, 0x00052c37,
+ 0x1b80, 0x61042c45,
+ 0x1b80, 0x61042c47,
+ 0x1b80, 0x63b02c55,
+ 0x1b80, 0x63b02c57,
+ 0x1b80, 0x00062c65,
+ 0x1b80, 0x00062c67,
+ 0x1b80, 0x75082c75,
+ 0x1b80, 0x75082c77,
+ 0x1b80, 0x77082c85,
+ 0x1b80, 0x77082c87,
+ 0x1b80, 0x00052c95,
+ 0x1b80, 0x00052c97,
+ 0x1b80, 0x5c802ca5,
+ 0x1b80, 0x5c802ca7,
+ 0x1b80, 0x5dff2cb5,
+ 0x1b80, 0x5dff2cb7,
+ 0x1b80, 0x5e3f2cc5,
+ 0x1b80, 0x5e3f2cc7,
+ 0x1b80, 0x5f312cd5,
+ 0x1b80, 0x5f312cd7,
+ 0x1b80, 0x00042ce5,
+ 0x1b80, 0x00042ce7,
+ 0x1b80, 0x400a2cf5,
+ 0x1b80, 0x400a2cf7,
+ 0x1b80, 0xe2db2d05,
+ 0x1b80, 0xe2db2d07,
+ 0x1b80, 0x00042d15,
+ 0x1b80, 0x00042d17,
+ 0x1b80, 0x400c2d25,
+ 0x1b80, 0x400c2d27,
+ 0x1b80, 0x00062d35,
+ 0x1b80, 0x00062d37,
+ 0x1b80, 0x75002d45,
+ 0x1b80, 0x75002d47,
+ 0x1b80, 0x00052d55,
+ 0x1b80, 0x00052d57,
+ 0x1b80, 0x5c5b2d65,
+ 0x1b80, 0x5c5b2d67,
+ 0x1b80, 0x5f002d75,
+ 0x1b80, 0x5f002d77,
+ 0x1b80, 0x00042d85,
+ 0x1b80, 0x00042d87,
+ 0x1b80, 0x40082d95,
+ 0x1b80, 0x40082d97,
+ 0x1b80, 0x00012da5,
+ 0x1b80, 0x00012da7,
+ 0x1b80, 0x00072db5,
+ 0x1b80, 0x00072db7,
+ 0x1b80, 0x4c122dc5,
+ 0x1b80, 0x4c122dc7,
+ 0x1b80, 0x4e202dd5,
+ 0x1b80, 0x4e202dd7,
+ 0x1b80, 0x00052de5,
+ 0x1b80, 0x00052de7,
+ 0x1b80, 0x598f2df5,
+ 0x1b80, 0x598f2df7,
+ 0x1b80, 0x40022e05,
+ 0x1b80, 0x40022e07,
+ 0x1b80, 0x4c012e15,
+ 0x1b80, 0x4c012e17,
+ 0x1b80, 0x4c002e25,
+ 0x1b80, 0x4c002e27,
+ 0x1b80, 0xab002e35,
+ 0x1b80, 0xab002e37,
+ 0x1b80, 0x40032e45,
+ 0x1b80, 0x40032e47,
+ 0x1b80, 0x49802e55,
+ 0x1b80, 0x49802e57,
+ 0x1b80, 0x56c02e65,
+ 0x1b80, 0x56c02e67,
+ 0x1b80, 0x54022e75,
+ 0x1b80, 0x54022e77,
+ 0x1b80, 0x4c012e85,
+ 0x1b80, 0x4c012e87,
+ 0x1b80, 0x4c002e95,
+ 0x1b80, 0x4c002e97,
+ 0x1b80, 0xab002ea5,
+ 0x1b80, 0xab002ea7,
+ 0x1b80, 0x54002eb5,
+ 0x1b80, 0x54002eb7,
+ 0x1b80, 0x00072ec5,
+ 0x1b80, 0x00072ec7,
+ 0x1b80, 0x4c002ed5,
+ 0x1b80, 0x4c002ed7,
+ 0x1b80, 0x4e002ee5,
+ 0x1b80, 0x4e002ee7,
+ 0x1b80, 0x00052ef5,
+ 0x1b80, 0x00052ef7,
+ 0x1b80, 0x40042f05,
+ 0x1b80, 0x40042f07,
+ 0x1b80, 0x4c012f15,
+ 0x1b80, 0x4c012f17,
+ 0x1b80, 0x4c002f25,
+ 0x1b80, 0x4c002f27,
+ 0x1b80, 0x00012f35,
+ 0x1b80, 0x00012f37,
+ 0x1b80, 0x00042f45,
+ 0x1b80, 0x00042f47,
+ 0x1b80, 0x44802f55,
+ 0x1b80, 0x44802f57,
+ 0x1b80, 0x4b002f65,
+ 0x1b80, 0x4b002f67,
+ 0x1b80, 0x00052f75,
+ 0x1b80, 0x00052f77,
+ 0x1b80, 0x5c802f85,
+ 0x1b80, 0x5c802f87,
+ 0x1b80, 0x63002f95,
+ 0x1b80, 0x63002f97,
+ 0x1b80, 0x00072fa5,
+ 0x1b80, 0x00072fa7,
+ 0x1b80, 0x780c2fb5,
+ 0x1b80, 0x780c2fb7,
+ 0x1b80, 0x79192fc5,
+ 0x1b80, 0x79192fc7,
+ 0x1b80, 0x7a002fd5,
+ 0x1b80, 0x7a002fd7,
+ 0x1b80, 0x7b822fe5,
+ 0x1b80, 0x7b822fe7,
+ 0x1b80, 0x7b022ff5,
+ 0x1b80, 0x7b022ff7,
+ 0x1b80, 0x78143005,
+ 0x1b80, 0x78143007,
+ 0x1b80, 0x79ee3015,
+ 0x1b80, 0x79ee3017,
+ 0x1b80, 0x7a013025,
+ 0x1b80, 0x7a013027,
+ 0x1b80, 0x7b833035,
+ 0x1b80, 0x7b833037,
+ 0x1b80, 0x7b033045,
+ 0x1b80, 0x7b033047,
+ 0x1b80, 0x78283055,
+ 0x1b80, 0x78283057,
+ 0x1b80, 0x79b43065,
+ 0x1b80, 0x79b43067,
+ 0x1b80, 0x7a003075,
+ 0x1b80, 0x7a003077,
+ 0x1b80, 0x7b003085,
+ 0x1b80, 0x7b003087,
+ 0x1b80, 0x00013095,
+ 0x1b80, 0x00013097,
+ 0x1b80, 0x000430a5,
+ 0x1b80, 0x000430a7,
+ 0x1b80, 0x448030b5,
+ 0x1b80, 0x448030b7,
+ 0x1b80, 0x4b0030c5,
+ 0x1b80, 0x4b0030c7,
+ 0x1b80, 0x000530d5,
+ 0x1b80, 0x000530d7,
+ 0x1b80, 0x5c8030e5,
+ 0x1b80, 0x5c8030e7,
+ 0x1b80, 0x630030f5,
+ 0x1b80, 0x630030f7,
+ 0x1b80, 0x00073105,
+ 0x1b80, 0x00073107,
+ 0x1b80, 0x78103115,
+ 0x1b80, 0x78103117,
+ 0x1b80, 0x79133125,
+ 0x1b80, 0x79133127,
+ 0x1b80, 0x7a003135,
+ 0x1b80, 0x7a003137,
+ 0x1b80, 0x7b803145,
+ 0x1b80, 0x7b803147,
+ 0x1b80, 0x7b003155,
+ 0x1b80, 0x7b003157,
+ 0x1b80, 0x78db3165,
+ 0x1b80, 0x78db3167,
+ 0x1b80, 0x79003175,
+ 0x1b80, 0x79003177,
+ 0x1b80, 0x7a003185,
+ 0x1b80, 0x7a003187,
+ 0x1b80, 0x7b813195,
+ 0x1b80, 0x7b813197,
+ 0x1b80, 0x7b0131a5,
+ 0x1b80, 0x7b0131a7,
+ 0x1b80, 0x782831b5,
+ 0x1b80, 0x782831b7,
+ 0x1b80, 0x79b431c5,
+ 0x1b80, 0x79b431c7,
+ 0x1b80, 0x7a0031d5,
+ 0x1b80, 0x7a0031d7,
+ 0x1b80, 0x7b0031e5,
+ 0x1b80, 0x7b0031e7,
+ 0x1b80, 0x000131f5,
+ 0x1b80, 0x000131f7,
+ 0x1b80, 0x00073205,
+ 0x1b80, 0x00073207,
+ 0x1b80, 0x783e3215,
+ 0x1b80, 0x783e3217,
+ 0x1b80, 0x79f93225,
+ 0x1b80, 0x79f93227,
+ 0x1b80, 0x7a013235,
+ 0x1b80, 0x7a013237,
+ 0x1b80, 0x7b823245,
+ 0x1b80, 0x7b823247,
+ 0x1b80, 0x7b023255,
+ 0x1b80, 0x7b023257,
+ 0x1b80, 0x78a93265,
+ 0x1b80, 0x78a93267,
+ 0x1b80, 0x79ed3275,
+ 0x1b80, 0x79ed3277,
+ 0x1b80, 0x7b833285,
+ 0x1b80, 0x7b833287,
+ 0x1b80, 0x7b033295,
+ 0x1b80, 0x7b033297,
+ 0x1b80, 0x782832a5,
+ 0x1b80, 0x782832a7,
+ 0x1b80, 0x79b432b5,
+ 0x1b80, 0x79b432b7,
+ 0x1b80, 0x7a0032c5,
+ 0x1b80, 0x7a0032c7,
+ 0x1b80, 0x7b0032d5,
+ 0x1b80, 0x7b0032d7,
+ 0x1b80, 0x000132e5,
+ 0x1b80, 0x000132e7,
+ 0x1b80, 0x000732f5,
+ 0x1b80, 0x000732f7,
+ 0x1b80, 0x78ae3305,
+ 0x1b80, 0x78ae3307,
+ 0x1b80, 0x79fa3315,
+ 0x1b80, 0x79fa3317,
+ 0x1b80, 0x7a013325,
+ 0x1b80, 0x7a013327,
+ 0x1b80, 0x7b803335,
+ 0x1b80, 0x7b803337,
+ 0x1b80, 0x7b003345,
+ 0x1b80, 0x7b003347,
+ 0x1b80, 0x787a3355,
+ 0x1b80, 0x787a3357,
+ 0x1b80, 0x79f13365,
+ 0x1b80, 0x79f13367,
+ 0x1b80, 0x7b813375,
+ 0x1b80, 0x7b813377,
+ 0x1b80, 0x7b013385,
+ 0x1b80, 0x7b013387,
+ 0x1b80, 0x78283395,
+ 0x1b80, 0x78283397,
+ 0x1b80, 0x79b433a5,
+ 0x1b80, 0x79b433a7,
+ 0x1b80, 0x7a0033b5,
+ 0x1b80, 0x7a0033b7,
+ 0x1b80, 0x7b0033c5,
+ 0x1b80, 0x7b0033c7,
+ 0x1b80, 0x000133d5,
+ 0x1b80, 0x000133d7,
+ 0x1b80, 0x000733e5,
+ 0x1b80, 0x000733e7,
+ 0x1b80, 0x750033f5,
+ 0x1b80, 0x750033f7,
+ 0x1b80, 0x76023405,
+ 0x1b80, 0x76023407,
+ 0x1b80, 0x77153415,
+ 0x1b80, 0x77153417,
+ 0x1b80, 0x00063425,
+ 0x1b80, 0x00063427,
+ 0x1b80, 0x74003435,
+ 0x1b80, 0x74003437,
+ 0x1b80, 0x76003445,
+ 0x1b80, 0x76003447,
+ 0x1b80, 0x77003455,
+ 0x1b80, 0x77003457,
+ 0x1b80, 0x75103465,
+ 0x1b80, 0x75103467,
+ 0x1b80, 0x75003475,
+ 0x1b80, 0x75003477,
+ 0x1b80, 0xb3003485,
+ 0x1b80, 0xb3003487,
+ 0x1b80, 0x93003495,
+ 0x1b80, 0x93003497,
+ 0x1b80, 0x000734a5,
+ 0x1b80, 0x000734a7,
+ 0x1b80, 0x760034b5,
+ 0x1b80, 0x760034b7,
+ 0x1b80, 0x770034c5,
+ 0x1b80, 0x770034c7,
+ 0x1b80, 0x000134d5,
+ 0x1b80, 0x000134d7,
+ 0x1b80, 0x000734e5,
+ 0x1b80, 0x000734e7,
+ 0x1b80, 0x750034f5,
+ 0x1b80, 0x750034f7,
+ 0x1b80, 0x76023505,
+ 0x1b80, 0x76023507,
+ 0x1b80, 0x77253515,
+ 0x1b80, 0x77253517,
+ 0x1b80, 0x00063525,
+ 0x1b80, 0x00063527,
+ 0x1b80, 0x74003535,
+ 0x1b80, 0x74003537,
+ 0x1b80, 0x76003545,
+ 0x1b80, 0x76003547,
+ 0x1b80, 0x77013555,
+ 0x1b80, 0x77013557,
+ 0x1b80, 0x75103565,
+ 0x1b80, 0x75103567,
+ 0x1b80, 0x75003575,
+ 0x1b80, 0x75003577,
+ 0x1b80, 0xb3003585,
+ 0x1b80, 0xb3003587,
+ 0x1b80, 0x93003595,
+ 0x1b80, 0x93003597,
+ 0x1b80, 0x000735a5,
+ 0x1b80, 0x000735a7,
+ 0x1b80, 0x760035b5,
+ 0x1b80, 0x760035b7,
+ 0x1b80, 0x770035c5,
+ 0x1b80, 0x770035c7,
+ 0x1b80, 0x000135d5,
+ 0x1b80, 0x000135d7,
+ 0x1b80, 0x000435e5,
+ 0x1b80, 0x000435e7,
+ 0x1b80, 0x448035f5,
+ 0x1b80, 0x448035f7,
+ 0x1b80, 0x47303605,
+ 0x1b80, 0x47303607,
+ 0x1b80, 0x00063615,
+ 0x1b80, 0x00063617,
+ 0x1b80, 0x776c3625,
+ 0x1b80, 0x776c3627,
+ 0x1b80, 0x00013635,
+ 0x1b80, 0x00013637,
+ 0x1b80, 0x00053645,
+ 0x1b80, 0x00053647,
+ 0x1b80, 0x5c803655,
+ 0x1b80, 0x5c803657,
+ 0x1b80, 0x5f303665,
+ 0x1b80, 0x5f303667,
+ 0x1b80, 0x00063675,
+ 0x1b80, 0x00063677,
+ 0x1b80, 0x776d3685,
+ 0x1b80, 0x776d3687,
+ 0x1b80, 0x00013695,
+ 0x1b80, 0x00013697,
+ 0x1b80, 0xb90036a5,
+ 0x1b80, 0xb90036a7,
+ 0x1b80, 0x990036b5,
+ 0x1b80, 0x990036b7,
+ 0x1b80, 0x000636c5,
+ 0x1b80, 0x000636c7,
+ 0x1b80, 0x770036d5,
+ 0x1b80, 0x770036d7,
+ 0x1b80, 0x980536e5,
+ 0x1b80, 0x980536e7,
+ 0x1b80, 0x000436f5,
+ 0x1b80, 0x000436f7,
+ 0x1b80, 0x40083705,
+ 0x1b80, 0x40083707,
+ 0x1b80, 0x4a023715,
+ 0x1b80, 0x4a023717,
+ 0x1b80, 0x30193725,
+ 0x1b80, 0x30193727,
+ 0x1b80, 0x00013735,
+ 0x1b80, 0x00013737,
+ 0x1b80, 0x7b483745,
+ 0x1b80, 0x7b483747,
+ 0x1b80, 0x7a903755,
+ 0x1b80, 0x7a903757,
+ 0x1b80, 0x79003765,
+ 0x1b80, 0x79003767,
+ 0x1b80, 0x55033775,
+ 0x1b80, 0x55033777,
+ 0x1b80, 0x33803785,
+ 0x1b80, 0x33803787,
+ 0x1b80, 0x7b383795,
+ 0x1b80, 0x7b383797,
+ 0x1b80, 0x7a8037a5,
+ 0x1b80, 0x7a8037a7,
+ 0x1b80, 0x550b37b5,
+ 0x1b80, 0x550b37b7,
+ 0x1b80, 0x338037c5,
+ 0x1b80, 0x338037c7,
+ 0x1b80, 0x7b4037d5,
+ 0x1b80, 0x7b4037d7,
+ 0x1b80, 0x7a0037e5,
+ 0x1b80, 0x7a0037e7,
+ 0x1b80, 0x551337f5,
+ 0x1b80, 0x551337f7,
+ 0x1b80, 0x74013805,
+ 0x1b80, 0x74013807,
+ 0x1b80, 0x74003815,
+ 0x1b80, 0x74003817,
+ 0x1b80, 0x8e003825,
+ 0x1b80, 0x8e003827,
+ 0x1b80, 0x00013835,
+ 0x1b80, 0x00013837,
+ 0x1b80, 0x57023845,
+ 0x1b80, 0x57023847,
+ 0x1b80, 0x57003855,
+ 0x1b80, 0x57003857,
+ 0x1b80, 0x97003865,
+ 0x1b80, 0x97003867,
+ 0x1b80, 0x00013875,
+ 0x1b80, 0x00013877,
+ 0x1b80, 0x4f783885,
+ 0x1b80, 0x4f783887,
+ 0x1b80, 0x53883895,
+ 0x1b80, 0x53883897,
+ 0x1b80, 0xe39438a5,
+ 0x1b80, 0xe39438a7,
+ 0x1b80, 0x548038b5,
+ 0x1b80, 0x548038b7,
+ 0x1b80, 0x540038c5,
+ 0x1b80, 0x540038c7,
+ 0x1b80, 0x548138d5,
+ 0x1b80, 0x548138d7,
+ 0x1b80, 0x540038e5,
+ 0x1b80, 0x540038e7,
+ 0x1b80, 0x548238f5,
+ 0x1b80, 0x548238f7,
+ 0x1b80, 0x54003905,
+ 0x1b80, 0x54003907,
+ 0x1b80, 0xe39f3915,
+ 0x1b80, 0xe39f3917,
+ 0x1b80, 0xbf1d3925,
+ 0x1b80, 0xbf1d3927,
+ 0x1b80, 0x30193935,
+ 0x1b80, 0x30193937,
+ 0x1b80, 0xe3743945,
+ 0x1b80, 0xe3743947,
+ 0x1b80, 0xe3793955,
+ 0x1b80, 0xe3793957,
+ 0x1b80, 0xe37d3965,
+ 0x1b80, 0xe37d3967,
+ 0x1b80, 0xe3843975,
+ 0x1b80, 0xe3843977,
+ 0x1b80, 0xe3de3985,
+ 0x1b80, 0xe3de3987,
+ 0x1b80, 0x55133995,
+ 0x1b80, 0x55133997,
+ 0x1b80, 0xe38039a5,
+ 0x1b80, 0xe38039a7,
+ 0x1b80, 0x551539b5,
+ 0x1b80, 0x551539b7,
+ 0x1b80, 0xe38439c5,
+ 0x1b80, 0xe38439c7,
+ 0x1b80, 0xe3de39d5,
+ 0x1b80, 0xe3de39d7,
+ 0x1b80, 0x000139e5,
+ 0x1b80, 0x000139e7,
+ 0x1b80, 0x54bf39f5,
+ 0x1b80, 0x54bf39f7,
+ 0x1b80, 0x54c03a05,
+ 0x1b80, 0x54c03a07,
+ 0x1b80, 0x54a33a15,
+ 0x1b80, 0x54a33a17,
+ 0x1b80, 0x54c13a25,
+ 0x1b80, 0x54c13a27,
+ 0x1b80, 0x54a43a35,
+ 0x1b80, 0x54a43a37,
+ 0x1b80, 0x4c183a45,
+ 0x1b80, 0x4c183a47,
+ 0x1b80, 0xbf073a55,
+ 0x1b80, 0xbf073a57,
+ 0x1b80, 0x54c23a65,
+ 0x1b80, 0x54c23a67,
+ 0x1b80, 0x54a43a75,
+ 0x1b80, 0x54a43a77,
+ 0x1b80, 0xbf043a85,
+ 0x1b80, 0xbf043a87,
+ 0x1b80, 0x54c13a95,
+ 0x1b80, 0x54c13a97,
+ 0x1b80, 0x54a33aa5,
+ 0x1b80, 0x54a33aa7,
+ 0x1b80, 0xbf013ab5,
+ 0x1b80, 0xbf013ab7,
+ 0x1b80, 0xe3ec3ac5,
+ 0x1b80, 0xe3ec3ac7,
+ 0x1b80, 0x54df3ad5,
+ 0x1b80, 0x54df3ad7,
+ 0x1b80, 0x00013ae5,
+ 0x1b80, 0x00013ae7,
+ 0x1b80, 0x54bf3af5,
+ 0x1b80, 0x54bf3af7,
+ 0x1b80, 0x54e53b05,
+ 0x1b80, 0x54e53b07,
+ 0x1b80, 0x050a3b15,
+ 0x1b80, 0x050a3b17,
+ 0x1b80, 0x54df3b25,
+ 0x1b80, 0x54df3b27,
+ 0x1b80, 0x00013b35,
+ 0x1b80, 0x00013b37,
+ 0x1b80, 0x7f403b45,
+ 0x1b80, 0x7f403b47,
+ 0x1b80, 0x7e003b55,
+ 0x1b80, 0x7e003b57,
+ 0x1b80, 0x7d003b65,
+ 0x1b80, 0x7d003b67,
+ 0x1b80, 0x55013b75,
+ 0x1b80, 0x55013b77,
+ 0x1b80, 0x5c313b85,
+ 0x1b80, 0x5c313b87,
+ 0x1b80, 0xe3803b95,
+ 0x1b80, 0xe3803b97,
+ 0x1b80, 0xe3843ba5,
+ 0x1b80, 0xe3843ba7,
+ 0x1b80, 0x54803bb5,
+ 0x1b80, 0x54803bb7,
+ 0x1b80, 0x54003bc5,
+ 0x1b80, 0x54003bc7,
+ 0x1b80, 0x54813bd5,
+ 0x1b80, 0x54813bd7,
+ 0x1b80, 0x54003be5,
+ 0x1b80, 0x54003be7,
+ 0x1b80, 0x54823bf5,
+ 0x1b80, 0x54823bf7,
+ 0x1b80, 0x54003c05,
+ 0x1b80, 0x54003c07,
+ 0x1b80, 0xe39f3c15,
+ 0x1b80, 0xe39f3c17,
+ 0x1b80, 0xbfed3c25,
+ 0x1b80, 0xbfed3c27,
+ 0x1b80, 0x30193c35,
+ 0x1b80, 0x30193c37,
+ 0x1b80, 0x74023c45,
+ 0x1b80, 0x74023c47,
+ 0x1b80, 0x003f3c55,
+ 0x1b80, 0x003f3c57,
+ 0x1b80, 0x74003c65,
+ 0x1b80, 0x74003c67,
+ 0x1b80, 0x00023c75,
+ 0x1b80, 0x00023c77,
+ 0x1b80, 0x00013c85,
+ 0x1b80, 0x00013c87,
+ 0x1b80, 0x00063c95,
+ 0x1b80, 0x00063c97,
+ 0x1b80, 0x5a803ca5,
+ 0x1b80, 0x5a803ca7,
+ 0x1b80, 0x5a003cb5,
+ 0x1b80, 0x5a003cb7,
+ 0x1b80, 0x92003cc5,
+ 0x1b80, 0x92003cc7,
+ 0x1b80, 0x00013cd5,
+ 0x1b80, 0x00013cd7,
+ 0x1b80, 0x5b8f3ce5,
+ 0x1b80, 0x5b8f3ce7,
+ 0x1b80, 0x5b0f3cf5,
+ 0x1b80, 0x5b0f3cf7,
+ 0x1b80, 0x91003d05,
+ 0x1b80, 0x91003d07,
+ 0x1b80, 0x00013d15,
+ 0x1b80, 0x00013d17,
+ 0x1b80, 0x00063d25,
+ 0x1b80, 0x00063d27,
+ 0x1b80, 0x5d803d35,
+ 0x1b80, 0x5d803d37,
+ 0x1b80, 0x5e563d45,
+ 0x1b80, 0x5e563d47,
+ 0x1b80, 0x00043d55,
+ 0x1b80, 0x00043d57,
+ 0x1b80, 0x4d083d65,
+ 0x1b80, 0x4d083d67,
+ 0x1b80, 0x57103d75,
+ 0x1b80, 0x57103d77,
+ 0x1b80, 0x57003d85,
+ 0x1b80, 0x57003d87,
+ 0x1b80, 0x4d003d95,
+ 0x1b80, 0x4d003d97,
+ 0x1b80, 0x00063da5,
+ 0x1b80, 0x00063da7,
+ 0x1b80, 0x5d003db5,
+ 0x1b80, 0x5d003db7,
+ 0x1b80, 0x00043dc5,
+ 0x1b80, 0x00043dc7,
+ 0x1b80, 0x00013dd5,
+ 0x1b80, 0x00013dd7,
+ 0x1b80, 0x549f3de5,
+ 0x1b80, 0x549f3de7,
+ 0x1b80, 0x54ff3df5,
+ 0x1b80, 0x54ff3df7,
+ 0x1b80, 0x54003e05,
+ 0x1b80, 0x54003e07,
+ 0x1b80, 0x00013e15,
+ 0x1b80, 0x00013e17,
+ 0x1b80, 0x5c313e25,
+ 0x1b80, 0x5c313e27,
+ 0x1b80, 0x07143e35,
+ 0x1b80, 0x07143e37,
+ 0x1b80, 0x54003e45,
+ 0x1b80, 0x54003e47,
+ 0x1b80, 0x5c323e55,
+ 0x1b80, 0x5c323e57,
+ 0x1b80, 0x00013e65,
+ 0x1b80, 0x00013e67,
+ 0x1b80, 0x5c323e75,
+ 0x1b80, 0x5c323e77,
+ 0x1b80, 0x07143e85,
+ 0x1b80, 0x07143e87,
+ 0x1b80, 0x54003e95,
+ 0x1b80, 0x54003e97,
+ 0x1b80, 0x5c313ea5,
+ 0x1b80, 0x5c313ea7,
+ 0x1b80, 0x00013eb5,
+ 0x1b80, 0x00013eb7,
+ 0x1b80, 0x4c983ec5,
+ 0x1b80, 0x4c983ec7,
+ 0x1b80, 0x4c183ed5,
+ 0x1b80, 0x4c183ed7,
+ 0x1b80, 0x00013ee5,
+ 0x1b80, 0x00013ee7,
+ 0x1b80, 0x5c323ef5,
+ 0x1b80, 0x5c323ef7,
+ 0x1b80, 0x62043f05,
+ 0x1b80, 0x62043f07,
+ 0x1b80, 0x63033f15,
+ 0x1b80, 0x63033f17,
+ 0x1b80, 0x66073f25,
+ 0x1b80, 0x66073f27,
+ 0x1b80, 0x7b403f35,
+ 0x1b80, 0x7b403f37,
+ 0x1b80, 0x7a003f45,
+ 0x1b80, 0x7a003f47,
+ 0x1b80, 0x79003f55,
+ 0x1b80, 0x79003f57,
+ 0x1b80, 0x7f403f65,
+ 0x1b80, 0x7f403f67,
+ 0x1b80, 0x7e003f75,
+ 0x1b80, 0x7e003f77,
+ 0x1b80, 0x7d003f85,
+ 0x1b80, 0x7d003f87,
+ 0x1b80, 0x09013f95,
+ 0x1b80, 0x09013f97,
+ 0x1b80, 0x0c013fa5,
+ 0x1b80, 0x0c013fa7,
+ 0x1b80, 0x0ba63fb5,
+ 0x1b80, 0x0ba63fb7,
+ 0x1b80, 0x00013fc5,
+ 0x1b80, 0x00013fc7,
0x1b80, 0x00000006,
0x1b80, 0x00000002,
};
diff --git a/drivers/net/wireless/realtek/rtw88/rtw8822c_table.h b/drivers/net/wireless/realtek/rtw88/rtw8822c_table.h
index 06e207d..80c06c4 100644
--- a/drivers/net/wireless/realtek/rtw88/rtw8822c_table.h
+++ b/drivers/net/wireless/realtek/rtw88/rtw8822c_table.h
@@ -12,6 +12,9 @@ extern const struct rtw_table rtw8822c_bb_pg_type0_tbl;
extern const struct rtw_table rtw8822c_rf_a_tbl;
extern const struct rtw_table rtw8822c_rf_b_tbl;
extern const struct rtw_table rtw8822c_txpwr_lmt_type0_tbl;
+extern const struct rtw_table rtw8822c_dpk_afe_no_dpk_tbl;
+extern const struct rtw_table rtw8822c_dpk_afe_is_dpk_tbl;
+extern const struct rtw_table rtw8822c_dpk_mac_bb_tbl;
extern const struct rtw_table rtw8822c_array_mp_cal_init_tbl;
#endif
--
2.7.4