FreeCalypso > hg > fc-magnetite
changeset 585:c3377f023e7a
l1_rf12.c: corrected Tx ramp templates for Mot C11x/12x and C155/156 targets
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sun, 10 Mar 2019 02:32:14 +0000 |
parents | 257b1c14db87 |
children | 64fba3fc09c6 |
files | src/cs/layer1/cust0/l1_rf12.c |
diffstat | 1 files changed, 410 insertions(+), 20 deletions(-) [+] |
line wrap: on
line diff
--- a/src/cs/layer1/cust0/l1_rf12.c Thu Mar 07 21:21:20 2019 +0000 +++ b/src/cs/layer1/cust0/l1_rf12.c Sun Mar 10 02:32:14 2019 +0000 @@ -452,11 +452,11 @@ * tables had ARFCNs that are invalid for the band they are supposed * to apply to. The latter bug has been fixed. * - * - For the Tx ramps tables we now select between two different versions - * at compile time: for Mot C1xx targets (CONFIG_TARGET_COMPAL) we use - * the version extracted from Mot's official C139 fw, whereas for all - * other targets (principally FreeCalypso hw) we continue to use the - * version extracted from OM's l1_cust.obj blob. + * - For the Tx ramps tables we now select between 3 different versions + * at compile time: the original version from OM is used for our own + * OM-based FC hardware, whereas Mot C1xx builds use one of two different + * Mot/Compal versions: one version for C11x/12x and C155/156 (SKY77324 + * RF PA) and a different version for C139/140 (SKY77325 RF PA). * * NONE of these compiled-in tables matter if you are running the fw * on an Openmoko, Pirelli or FreeCalypso device that has already been @@ -473,10 +473,10 @@ * from Motorola's factory bits, but for the Tx ramp templates the tables * compiled into our fw are used - hence these tables need to be correct * for the target in question, which is why we have extracted and included - * the tables from Mot C139 official fw. We also weren't able to grok - * Mot's way of doing Tx channel corrections, hence we run without those - * - thus we rely on the compiled-in channel calibration tables providing - * a neutral set of correction values. + * the tables from two different Mot/Compal official fw versions. We also + * weren't able to grok Compal's way of doing Tx channel corrections, hence + * we run without those - thus we rely on the compiled-in channel calibration + * tables providing a neutral set of correction values. * * - Firmware images that are programmed into newly made FreeCalypso hw * devices in the factory production environment prior to RF calibration @@ -501,13 +501,11 @@ * it would be rather moot to argue whether set of numbers A or set of * numbers B would make a better placeholder. * - * For the Tx ramp templates on our newly made FreeCalypso hw we currently - * use the ramps tables extracted from OM's l1_cust.obj blob: they were - * used by OM, and our current RF hw is unchanged from OM GTA02. However, - * these Tx ramp templates are currently only *assumed* to be correct, - * and no actual testing has been done yet - these Tx power ramps will - * need to be revisited and tested empirically before we apply for type - * approval certification. + * All of our Tx ramp templates (the ones used on our own FCDEV3B and both + * Mot C1xx versions) have been verified with our CMU200 RF tester and + * found to produce correct in-tolerance ramps on all tested targets (FCDEV3B, + * EU-band Mot C118, US-band Mot C139, EU-band Mot C140 and US-band Mot C155) + * for each power control level in all supported bands. */ const T_RF_BAND rf_900 = { @@ -622,7 +620,105 @@ }, }, { /* ramps */ -#ifdef CONFIG_TARGET_COMPAL +#if defined(CONFIG_TARGET_C11X) || defined(CONFIG_TARGET_C155) + /* from Motorola R87.2.1.03.m0 fw for the C11x family */ + { /* profile 0 */ + /* ramp-up */ + { 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 31, 5, 0}, + /* ramp-down */ + { 31, 31, 28, 15, 2, 0, 19, 2, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 1 */ + /* ramp-up */ + { 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 26, 29, 8, 0}, + /* ramp-down */ + { 31, 31, 29, 14, 2, 1, 15, 2, 3, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 2 */ + /* ramp-up */ + { 31, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 27, 24, 1, 0}, + /* ramp-down */ + { 30, 31, 25, 14, 2, 2, 15, 7, 2, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 3 */ + /* ramp-up */ + { 31, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 14, 29, 1, 0}, + /* ramp-down */ + { 31, 29, 31, 13, 2, 2, 15, 2, 3, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 4 */ + /* ramp-up */ + { 31, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 17, 19, 0, 0}, + /* ramp-down */ + { 31, 30, 30, 15, 1, 2, 17, 2, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 5 */ + /* ramp-up */ + { 31, 31, 7, 0, 0, 0, 0, 0, 0, 0, 0, 31, 19, 7, 2, 0}, + /* ramp-down */ + { 29, 31, 29, 16, 4, 0, 14, 2, 1, 2, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 6 */ + /* ramp-up */ + { 31, 31, 16, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 20, 0, 0}, + /* ramp-down */ + { 19, 26, 26, 28, 10, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 7 */ + /* ramp-up */ + { 31, 31, 25, 0, 0, 0, 0, 0, 0, 0, 0, 31, 0, 8, 2, 0}, + /* ramp-down */ + { 19, 28, 31, 24, 4, 0, 19, 3, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 8 */ + /* ramp-up */ + { 31, 31, 31, 2, 0, 0, 0, 0, 0, 0, 0, 31, 2, 0, 0, 0}, + /* ramp-down */ + { 19, 28, 31, 24, 4, 0, 17, 5, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 9 */ + /* ramp-up */ + { 31, 31, 31, 9, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0}, + /* ramp-down */ + { 18, 25, 28, 31, 2, 2, 19, 3, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 10 */ + /* ramp-up */ + { 31, 31, 31, 16, 0, 0, 0, 0, 0, 0, 0, 0, 19, 0, 0, 0}, + /* ramp-down */ + { 14, 21, 24, 29, 6, 2, 23, 5, 4, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 11 */ + /* ramp-up */ + { 31, 31, 31, 22, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 1, 0}, + /* ramp-down */ + { 8, 26, 26, 28, 12, 12, 5, 5, 0, 6, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 12 */ + /* ramp-up */ + { 31, 31, 31, 27, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0}, + /* ramp-down */ + { 8, 14, 27, 30, 20, 19, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 13 */ + /* ramp-up */ + { 31, 31, 31, 31, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 1, 0}, + /* ramp-down */ + { 9, 10, 15, 26, 25, 10, 17, 13, 3, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 14 */ + /* ramp-up */ + { 31, 31, 30, 30, 1, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + /* ramp-down */ + { 0, 4, 15, 21, 21, 21, 21, 15, 10, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 15 */ + /* ramp-up */ + { 31, 31, 30, 30, 1, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + /* ramp-down */ + { 0, 4, 15, 21, 21, 21, 21, 15, 10, 0, 0, 0, 0, 0, 0, 0}, + }, +#elif defined(CONFIG_TARGET_C139) /* from Mot C139 official fw */ { /* profile 0 */ /* ramp-up */ @@ -952,7 +1048,105 @@ }, }, { /* ramps */ -#ifdef CONFIG_TARGET_COMPAL +#if defined(CONFIG_TARGET_C11X) || defined(CONFIG_TARGET_C155) + /* from Motorola R87.2.1.03.m0 fw for the C11x family */ + { /* profile 0 */ + /* ramp-up */ + { 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 27, 4, 0}, + /* ramp-down */ + { 28, 31, 18, 8, 8, 13, 9, 13, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 1 */ + /* ramp-up */ + { 31, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 24, 0, 0}, + /* ramp-down */ + { 10, 30, 30, 20, 8, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 2 */ + /* ramp-up */ + { 31, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 16, 0, 0}, + /* ramp-down */ + { 10, 30, 31, 24, 31, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 3 */ + /* ramp-up */ + { 31, 27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28, 23, 19, 0, 0}, + /* ramp-down */ + { 31, 14, 31, 5, 24, 13, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 4 */ + /* ramp-up */ + { 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 10, 21, 31, 0, 0}, + /* ramp-down */ + { 20, 22, 31, 10, 22, 13, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 5 */ + /* ramp-up */ + { 31, 31, 13, 0, 0, 0, 0, 0, 0, 0, 0, 31, 22, 0, 0, 0}, + /* ramp-down */ + { 22, 14, 26, 22, 22, 17, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 6 */ + /* ramp-up */ + { 31, 31, 21, 0, 0, 0, 0, 0, 0, 0, 0, 24, 21, 0, 0, 0}, + /* ramp-down */ + { 10, 31, 31, 25, 17, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 7 */ + /* ramp-up */ + { 31, 31, 28, 0, 0, 0, 0, 0, 0, 0, 0, 28, 10, 0, 0, 0}, + /* ramp-down */ + { 17, 24, 28, 21, 24, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 8 */ + /* ramp-up */ + { 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 27, 4, 0, 0, 0}, + /* ramp-down */ + { 9, 23, 31, 24, 24, 13, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 9 */ + /* ramp-up */ + { 31, 31, 31, 12, 0, 0, 0, 0, 0, 0, 0, 0, 13, 10, 0, 0}, + /* ramp-down */ + { 9, 23, 31, 24, 24, 13, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 10 */ + /* ramp-up */ + { 31, 31, 31, 17, 0, 0, 0, 0, 0, 0, 0, 0, 12, 6, 0, 0}, + /* ramp-down */ + { 10, 10, 31, 31, 24, 13, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 11 */ + /* ramp-up */ + { 31, 31, 31, 21, 0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0}, + /* ramp-down */ + { 4, 14, 31, 31, 26, 13, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 12 */ + /* ramp-up */ + { 31, 31, 31, 27, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0}, + /* ramp-down */ + { 2, 14, 31, 31, 28, 13, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 13 */ + /* ramp-up */ + { 31, 31, 31, 29, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0}, + /* ramp-down */ + { 0, 6, 14, 31, 31, 24, 13, 5, 4, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 14 */ + /* ramp-up */ + { 31, 31, 31, 31, 1, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0}, + /* ramp-down */ + { 2, 4, 4, 18, 31, 31, 24, 5, 5, 4, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 15 */ + /* ramp-up */ + { 31, 31, 31, 31, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + /* ramp-down */ + { 3, 2, 2, 22, 22, 21, 21, 21, 9, 5, 0, 0, 0, 0, 0, 0}, + }, +#elif defined(CONFIG_TARGET_C139) /* from Mot C139 official fw */ { /* profile 0 */ /* ramp-up */ @@ -1282,7 +1476,105 @@ }, }, { /* ramps */ -#ifdef CONFIG_TARGET_COMPAL +#if defined(CONFIG_TARGET_C11X) || defined(CONFIG_TARGET_C155) + /* from Motorola R87.2.1.03.m0 fw for the C11x family */ + { /* profile 0 */ + /* ramp-up */ + { 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 31, 31, 31, 3, 0}, + /* ramp-down */ + { 31, 31, 18, 22, 6, 10, 2, 1, 1, 3, 3, 0, 0, 0, 0, 0}, + }, + { /* profile 1 */ + /* ramp-up */ + { 31, 1, 0, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 31, 0, 0}, + /* ramp-down */ + { 31, 31, 31, 6, 8, 8, 9, 4, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 2 */ + /* ramp-up */ + { 31, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 29, 0, 0}, + /* ramp-down */ + { 31, 25, 21, 20, 13, 14, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 3 */ + /* ramp-up */ + { 31, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 22, 0, 0}, + /* ramp-down */ + { 27, 28, 23, 19, 13, 14, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 4 */ + /* ramp-up */ + { 31, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 14, 0, 0}, + /* ramp-down */ + { 31, 21, 31, 2, 31, 4, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 5 */ + /* ramp-up */ + { 31, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 5, 0, 0}, + /* ramp-down */ + { 21, 31, 31, 2, 31, 4, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 6 */ + /* ramp-up */ + { 31, 31, 7, 0, 0, 0, 0, 0, 0, 0, 0, 31, 28, 0, 0, 0}, + /* ramp-down */ + { 31, 31, 28, 14, 3, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 7 */ + /* ramp-up */ + { 31, 31, 16, 0, 0, 0, 0, 0, 0, 0, 0, 31, 19, 0, 0, 0}, + /* ramp-down */ + { 20, 30, 30, 10, 28, 10, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 8 */ + /* ramp-up */ + { 31, 31, 26, 0, 0, 0, 0, 0, 0, 0, 0, 31, 9, 0, 0, 0}, + /* ramp-down */ + { 20, 26, 26, 18, 18, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 9 */ + /* ramp-up */ + { 31, 31, 31, 2, 0, 0, 0, 0, 0, 0, 0, 31, 2, 0, 0, 0}, + /* ramp-down */ + { 16, 16, 26, 26, 26, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 10 */ + /* ramp-up */ + { 31, 31, 31, 11, 0, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0}, + /* ramp-down */ + { 10, 12, 31, 26, 29, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 11 */ + /* ramp-up */ + { 31, 31, 31, 18, 0, 0, 0, 0, 0, 0, 0, 0, 17, 0, 0, 0}, + /* ramp-down */ + { 2, 20, 31, 26, 31, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 12 */ + /* ramp-up */ + { 31, 31, 31, 25, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0, 0}, + /* ramp-down */ + { 2, 20, 31, 26, 31, 0, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 13 */ + /* ramp-up */ + { 31, 31, 31, 30, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0}, + /* ramp-down */ + { 1, 16, 31, 31, 31, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 14 */ + /* ramp-up */ + { 31, 31, 31, 31, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0}, + /* ramp-down */ + { 4, 8, 10, 20, 31, 31, 20, 4, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 15 */ + /* ramp-up */ + { 31, 31, 31, 31, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0}, + /* ramp-down */ + { 4, 8, 10, 20, 31, 31, 20, 4, 0, 0, 0, 0, 0, 0, 0, 0}, + }, +#elif defined(CONFIG_TARGET_C139) /* from Mot C139 official fw */ { /* profile 0 */ /* ramp-up */ @@ -1612,7 +1904,105 @@ }, }, { /* ramps */ -#ifdef CONFIG_TARGET_COMPAL +#if defined(CONFIG_TARGET_C11X) || defined(CONFIG_TARGET_C155) + /* from Motorola R87.2.1.03.m0 fw for the C11x family */ + { /* profile 0 */ + /* ramp-up */ + { 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 14, 31, 31, 17, 0, 0}, + /* ramp-down */ + { 31, 31, 15, 25, 8, 10, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 1 */ + /* ramp-up */ + { 31, 8, 0, 0, 0, 0, 0, 0, 0, 0, 5, 31, 31, 22, 0, 0}, + /* ramp-down */ + { 31, 21, 31, 20, 4, 0, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 2 */ + /* ramp-up */ + { 31, 16, 0, 0, 0, 0, 0, 0, 0, 0, 6, 31, 31, 13, 0, 0}, + /* ramp-down */ + { 30, 31, 24, 31, 10, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 3 */ + /* ramp-up */ + { 31, 24, 0, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 8, 0, 0}, + /* ramp-down */ + { 31, 31, 19, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 4 */ + /* ramp-up */ + { 31, 31, 2, 0, 0, 0, 0, 0, 0, 0, 6, 31, 22, 5, 0, 0}, + /* ramp-down */ + { 31, 31, 14, 24, 5, 13, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 5 */ + /* ramp-up */ + { 31, 31, 10, 0, 0, 0, 0, 0, 0, 0, 0, 31, 25, 0, 0, 0}, + /* ramp-down */ + { 31, 19, 20, 8, 24, 17, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 6 */ + /* ramp-up */ + { 31, 30, 19, 0, 0, 0, 0, 0, 0, 0, 0, 31, 17, 0, 0, 0}, + /* ramp-down */ + { 2, 31, 31, 25, 17, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 7 */ + /* ramp-up */ + { 31, 31, 26, 0, 0, 0, 0, 0, 0, 0, 0, 31, 9, 0, 0, 0}, + /* ramp-down */ + { 14, 24, 25, 30, 24, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 8 */ + /* ramp-up */ + { 31, 31, 31, 2, 0, 0, 0, 0, 0, 0, 0, 31, 2, 0, 0, 0}, + /* ramp-down */ + { 12, 17, 27, 31, 24, 13, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 9 */ + /* ramp-up */ + { 31, 31, 30, 10, 0, 0, 0, 0, 0, 0, 0, 25, 1, 0, 0, 0}, + /* ramp-down */ + { 21, 31, 31, 26, 13, 4, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 10 */ + /* ramp-up */ + { 31, 31, 31, 11, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0}, + /* ramp-down */ + { 14, 31, 31, 28, 13, 5, 4, 2, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 11 */ + /* ramp-up */ + { 31, 31, 31, 19, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0}, + /* ramp-down */ + { 6, 14, 31, 31, 24, 13, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 12 */ + /* ramp-up */ + { 31, 31, 31, 25, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0, 0}, + /* ramp-down */ + { 6, 14, 31, 31, 24, 13, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 13 */ + /* ramp-up */ + { 31, 31, 31, 29, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0}, + /* ramp-down */ + { 6, 14, 31, 31, 24, 13, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 14 */ + /* ramp-up */ + { 31, 31, 31, 31, 1, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0}, + /* ramp-down */ + { 3, 16, 31, 31, 24, 14, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, + }, + { /* profile 15 */ + /* ramp-up */ + { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, + /* ramp-down */ + { 4, 6, 21, 21, 21, 21, 15, 15, 4, 0, 0, 0, 0, 0, 0, 0}, + }, +#elif defined(CONFIG_TARGET_C139) /* from Mot C139 official fw */ { /* profile 0 */ /* ramp-up */