/* SPDX-License-Identifier: GPL-2.0-only */
/*
* (c) Copyright 2002-2010, Ralink Technology, Inc.
* Copyright (C) 2015 Jakub Kicinski <kubakici@wp.pl>
* Copyright (C) 2018 Stanislaw Gruszka <stf_xl@wp.pl>
*/
#ifndef __MT76X0U_PHY_INITVALS_H
#define __MT76X0U_PHY_INITVALS_H
static const struct mt76_reg_pair mt76x0_rf_central_tab[] = {
{ MT_RF(0, 1), 0x01 },
{ MT_RF(0, 2), 0x11 },
/* R3 ~ R7: VCO Cal */
{ MT_RF(0, 3), 0x73 }, /* VCO Freq Cal */
{ MT_RF(0, 4), 0x30 }, /* R4 b<7>=1, VCO cal */
{ MT_RF(0, 5), 0x00 },
{ MT_RF(0, 6), 0x41 },
{ MT_RF(0, 7), 0x00 },
{ MT_RF(0, 8), 0x00 },
{ MT_RF(0, 9), 0x00 },
{ MT_RF(0, 10), 0x0C },
{ MT_RF(0, 11), 0x00 },
{ MT_RF(0, 12), 0x00 },
/* BG */
{ MT_RF(0, 13), 0x00 },
{ MT_RF(0, 14), 0x00 },
{ MT_RF(0, 15), 0x00 },
/* LDO */
{ MT_RF(0, 19), 0x20 },
{ MT_RF(0, 20), 0x22 },
{ MT_RF(0, 21), 0x12 },
{ MT_RF(0, 23), 0x00 },
{ MT_RF(0, 24), 0x33 },
{ MT_RF(0, 25), 0x00 },
/* PLL */
{ MT_RF(0, 26), 0x00 },
{ MT_RF(0, 27), 0x00 },
{ MT_RF(0, 28), 0x00 },
{ MT_RF(0, 29), 0x00 },
{ MT_RF(0, 30), 0x00 },
{ MT_RF(0, 31), 0x00 },
{ MT_RF(0, 32), 0x00 },
{ MT_RF(0, 33), 0x00 },
{ MT_RF(0, 34), 0x00 },
{ MT_RF(0, 35), 0x00 },
{ MT_RF(0, 36), 0x00 },
{ MT_RF(0, 37), 0x00 },
/* LO Buffer */
{ MT_RF(0, 38), 0x2F },
/* Test Ports */
{ MT_RF(0, 64), 0x00 },
{ MT_RF(0, 65), 0x80 },
{ MT_RF(0, 66), 0x01 },
{ MT_RF(0, 67), 0x04 },
/* ADC-DAC */
{ MT_RF(0, 68), 0x00 },
{ MT_RF(0, 69), 0x08 },
{ MT_RF(0, 70), 0x08 },
{ MT_RF(0, 71), 0x40 },
{ MT_RF(0, 72), 0xD0 },
{ MT_RF(0, 73), 0x93 },
};
static const struct mt76_reg_pair mt76x0_rf_2g_channel_0_tab[] = {
/* RX logic operation */
{ MT_RF(5, 2), 0x0C }, /* 5G+2G */
{ MT_RF(5, 3), 0x00 },
/* TX logic operation */
{ MT_RF(5, 4), 0x00 },
{ MT_RF(5, 5), 0x84 },
{ MT_RF(5, 6), 0x02 },
/* LDO */
{ MT_RF(5, 7), 0x00 },
{ MT_RF(5, 8), 0x00 },
{ MT_RF(5, 9), 0x00 },
/* RX */
{ MT_RF(5, 10), 0x51 },
{ MT_RF(5, 11), 0x22 },
{ MT_RF(5, 12), 0x22 },
{ MT_RF(5, 13), 0x0F },
{ MT_RF(5, 14), 0x47 },
{ MT_RF(5, 15), 0x25 },
{ MT_RF(5, 16), 0xC7 },
{ MT_RF(5, 17), 0x00 },
{ MT_RF(5, 18), 0x00 },
{ MT_RF(5, 19), 0x30 },
{ MT_RF(5, 20), 0x33 },
{ MT_RF(5, 21), 0x02 },
{ MT_RF(5, 22), 0x32 },
{ MT_RF(5, 23), 0x00 },
{ MT_RF(5, 24), 0x25 },
{ MT_RF(5, 26), 0x00 },
{ MT_RF(5, 27), 0x12 },
{ MT_RF(5, 28), 0x0F },
{ MT_RF(5, 29), 0x00 },
/* LOGEN */
{ MT_RF(5, 30), 0x51 },
{ MT_RF(5, 31), 0x35 },
{ MT_RF(5, 32), 0x31 },
{ MT_RF(5, 33), 0x31 },
{ MT_RF(5, 34), 0x34 },
{ MT_RF(5, 35), 0x03 },
{ MT_RF(5, 36), 0x00 },
/* TX */
{ MT_RF(5, 37), 0xDD },
{ MT_RF(5, 38), 0xB3 },
{ MT_RF(5, 39), 0x33 },
{ MT_RF(5, 40), 0xB1 },
{ MT_RF(5, 41), 0x71 },
{ MT_RF(5, 42), 0xF2 },
{ MT_RF(5, 43), 0x47 },
{ MT_RF(5, 44), 0x77 },
{ MT_RF(5, 45), 0x0E },
{ MT_RF(5, 46), 0x10 },
{ MT_RF(5, 47), 0x00 },
{ MT_RF(5, 48), 0x53 },
{ MT_RF(5, 49), 0x03 },
{ MT_RF(5, 50), 0xEF },
{ MT_RF(5, 51