view se_k200i/rf_900.c @ 407:183e81c8f6c0

hr-bits: sid-count program written
author Mychaela Falconia <falcon@freecalypso.org>
date Mon, 22 Jul 2024 10:00:58 +0000
parents 07000c2d21cd
children
line wrap: on
line source

/*
 * This compiled-in RF parameter default table has been extracted
 * out of Vadim's flash1.bin firmware image.  This SE K200i version
 * equals Openmoko's l1_cust.obj version (which is in turn believed
 * to be unchanged TI's internal mainline) in all parameters except
 * Tx ramp templates.
 *
 * Tx ramp templates depend on the PA type and they are generally not
 * calibrated per unit, hence most fw designs will incorporate correct
 * ramp templates for their PA into their compiled-in RF tables.
 * The same principle appears to hold here as well.
 */

const T_RF_BAND rf_900 = {
  { /* Rx structure */
    { /* T_RX_CAL_PARAMS */
       193,
        40,
        40,
        44,
    },
    { /* T_RF_AGC_BANDs */
      {   10,     0},
      {   30,     0},
      {   51,     0},
      {   71,     0},
      {   90,     0},
      {  112,     0},
      {  124,     0},
      {  991,     0},
      {  992,     0},
      { 1023,     0},
    },
    { /* Rx temperature compensation */
      {   -15,     0},
      {    -5,     0},
      {     6,     0},
      {    16,     0},
      {    25,     0},
      {    35,     0},
      {    45,     0},
      {    56,     0},
      {    66,     0},
      {    75,     0},
      {   100,     0},
    },
  },
  { /* Tx structure */
    { /* levels */
      {  465,  0,  0}, /* 0 */
      {  465,  0,  0}, /* 1 */
      {  465,  0,  0}, /* 2 */
      {  465,  0,  0}, /* 3 */
      {  465,  0,  0}, /* 4 */
      {  465,  0,  0}, /* 5 */
      {  387,  1,  0}, /* 6 */
      {  324,  2,  0}, /* 7 */
      {  260,  3,  0}, /* 8 */
      {  210,  4,  0}, /* 9 */
      {  170,  5,  0}, /* 10 */
      {  138,  6,  0}, /* 11 */
      {  113,  7,  0}, /* 12 */
      {   92,  8,  0}, /* 13 */
      {   76,  9,  0}, /* 14 */
      {   62, 10,  0}, /* 15 */
      {   51, 11,  0}, /* 16 */
      {   42, 12,  0}, /* 17 */
      {   34, 13,  0}, /* 18 */
      {   27, 14,  0}, /* 19 */
      {   27, 14,  0}, /* 20 */
      {   27, 14,  0}, /* 21 */
      {   27, 14,  0}, /* 22 */
      {   27, 14,  0}, /* 23 */
      {   27, 14,  0}, /* 24 */
      {   27, 14,  0}, /* 25 */
      {   27, 14,  0}, /* 26 */
      {   27, 14,  0}, /* 27 */
      {   27, 14,  0}, /* 28 */
      {   27, 14,  0}, /* 29 */
      {   27, 14,  0}, /* 30 */
      {   27, 14,  0}, /* 31 */
    },
    { /* channel calibration tables */
      { /* calibration table 0 */
	{   40,   128},
	{   80,   128},
	{  124,   128},
	{  586,   128},
	{  661,   128},
	{  736,   128},
	{  885,   128},
	{ 1023,   128},
      },
      { /* calibration table 1 */
	{   40,   128},
	{   80,   128},
	{  124,   128},
	{  586,   128},
	{  661,   128},
	{  736,   128},
	{  885,   128},
	{ 1023,   128},
      },
      { /* calibration table 2 */
	{   40,   128},
	{   80,   128},
	{  124,   128},
	{  586,   128},
	{  661,   128},
	{  736,   128},
	{  885,   128},
	{ 1023,   128},
      },
      { /* calibration table 3 */
	{   40,   128},
	{   80,   128},
	{  124,   128},
	{  586,   128},
	{  661,   128},
	{  736,   128},
	{  885,   128},
	{ 1023,   128},
      },
    },
    { /* ramps */
      { /* profile 0 */
	/* ramp-up */
	{  0,  0,  0,  0,  0,  0,  0,  0, 10, 28, 30, 30, 30,  0,  0,  0},
	/* ramp-down */
	{  0, 15, 31, 31, 31, 20,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
      },
      { /* profile 1 */
	/* ramp-up */
	{  0,  0,  0,  0,  0,  0,  0,  0, 10, 28, 30, 30, 30,  0,  0,  0},
	/* ramp-down */
	{  0, 15, 31, 31, 31, 20,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
      },
      { /* profile 2 */
	/* ramp-up */
	{  0,  0,  0,  0,  0,  0,  0,  0, 10, 28, 30, 30, 30,  0,  0,  0},
	/* ramp-down */
	{  0, 15, 31, 31, 31, 20,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
      },
      { /* profile 3 */
	/* ramp-up */
	{  0,  0,  0,  0,  0,  0,  0,  0, 10, 28, 30, 30, 30,  0,  0,  0},
	/* ramp-down */
	{  0, 15, 31, 31, 31, 20,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
      },
      { /* profile 4 */
	/* ramp-up */
	{  0,  0,  0,  0,  0,  0,  0,  0, 10, 28, 30, 30, 30,  0,  0,  0},
	/* ramp-down */
	{  0, 15, 31, 31, 31, 20,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
      },
      { /* profile 5 */
	/* ramp-up */
	{  0,  0,  0,  0,  0,  0,  0,  0, 10, 28, 30, 30, 30,  0,  0,  0},
	/* ramp-down */
	{  0, 15, 31, 31, 31, 20,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
      },
      { /* profile 6 */
	/* ramp-up */
	{  0,  0,  0,  0,  0,  0,  0,  0, 10, 28, 30, 30, 30,  0,  0,  0},
	/* ramp-down */
	{  0, 15, 31, 31, 31, 20,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
      },
      { /* profile 7 */
	/* ramp-up */
	{  0,  0,  0,  0,  0,  0,  0,  0, 10, 28, 30, 30, 30,  0,  0,  0},
	/* ramp-down */
	{  0, 15, 31, 31, 31, 20,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
      },
      { /* profile 8 */
	/* ramp-up */
	{  0,  0,  0,  0,  0,  0,  0,  0, 10, 28, 30, 30, 30,  0,  0,  0},
	/* ramp-down */
	{  0, 15, 31, 31, 31, 20,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
      },
      { /* profile 9 */
	/* ramp-up */
	{  0,  0,  0,  0,  0,  0,  0,  0, 10, 28, 30, 30, 30,  0,  0,  0},
	/* ramp-down */
	{  0, 15, 31, 31, 31, 20,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
      },
      { /* profile 10 */
	/* ramp-up */
	{  0,  0,  0,  0,  0,  0,  0,  0, 10, 28, 30, 30, 30,  0,  0,  0},
	/* ramp-down */
	{  0, 15, 31, 31, 31, 20,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
      },
      { /* profile 11 */
	/* ramp-up */
	{  0,  0,  0,  0,  0,  0,  0,  0, 10, 28, 30, 30, 30,  0,  0,  0},
	/* ramp-down */
	{  0, 15, 31, 31, 31, 20,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
      },
      { /* profile 12 */
	/* ramp-up */
	{  0,  0,  0,  0,  0,  0,  0,  0, 10, 28, 30, 30, 30,  0,  0,  0},
	/* ramp-down */
	{  0, 15, 31, 31, 31, 20,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
      },
      { /* profile 13 */
	/* ramp-up */
	{  0,  0,  0,  0,  0,  0,  0,  0, 10, 28, 30, 30, 30,  0,  0,  0},
	/* ramp-down */
	{  0, 15, 31, 31, 31, 20,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
      },
      { /* profile 14 */
	/* ramp-up */
	{  0,  0,  0,  0,  0,  0,  0,  0, 10, 28, 30, 30, 30,  0,  0,  0},
	/* ramp-down */
	{  0, 15, 31, 31, 31, 20,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
      },
      { /* profile 15 */
	/* ramp-up */
	{  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
	/* ramp-down */
	{  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0},
      },
    },
    { /* Tx temperature compensation */
      {   -11,     0,     0,     0},
      {     9,     0,     0,     0},
      {    39,     0,     0,     0},
      {    59,     0,     0,     0},
      {   127,     0,     0,     0},
    },
  },
  0
};