FreeCalypso > hg > fc-selenite
comparison src/cs/layer1/cust0/l1_rf12.c @ 153:df9c471ce9e9
l1_rf12.c and tpudrv12.[ch]: updates from Magnetite
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sun, 10 Mar 2019 20:28:06 +0000 |
parents | a312d83bb20c |
children | ca705e7e03f8 |
comparison
equal
deleted
inserted
replaced
152:d3668a47b969 | 153:df9c471ce9e9 |
---|---|
9 #include "rf.cfg" | 9 #include "rf.cfg" |
10 //#define RF_PA 3 // Hitachi | 10 //#define RF_PA 3 // Hitachi |
11 #endif | 11 #endif |
12 | 12 |
13 /* | 13 /* |
14 * FreeCalypso: the following T_RF table perfectly matches | 14 * FreeCalypso: the following T_RF table was originally taken from the MV100 |
15 * between the MV100 source and the Leonardo binary object. | 15 * source; it perfectly matched Openmoko's binary object prior to our own |
16 * FC modification. We have made one change to it: the low_agc field in the | |
17 * T_AGC structure was originally set to 6 in TI's code, which is clearly an | |
18 * overlooked remnant from Clara RF, as Rita AGC cannot go below 14 dB. We | |
19 * have changed this number to 14 to reflect our current hardware reality. | |
16 */ | 20 */ |
17 | 21 |
18 T_RF rf = | 22 T_RF rf = |
19 { | 23 { |
20 RF_RITA_10, //RF revision | 24 RF_RITA_10, //RF revision |
22 | 26 |
23 { //RX structure | 27 { //RX structure |
24 { //AGC structure | 28 { //AGC structure |
25 140, // low_agc_noise_thr; | 29 140, // low_agc_noise_thr; |
26 110, // high_agc_sat_thr; | 30 110, // high_agc_sat_thr; |
27 6, // low_agc; | 31 14, // low_agc; |
28 34, // high_agc; | 32 34, // high_agc; |
29 //IL2AGC tables | 33 //IL2AGC tables |
30 { // below is: il2agc_pwr[121]; | 34 { // below is: il2agc_pwr[121]; |
31 // il2agc_max[121]; | 35 // il2agc_max[121]; |
32 // il2agc_av[121]; | 36 // il2agc_av[121]; |
446 * channel corrections to neutral (0 for Rx and 128 for Tx), which the | 450 * channel corrections to neutral (0 for Rx and 128 for Tx), which the |
447 * original blob versions already did, but many of those copy-n-pasted | 451 * original blob versions already did, but many of those copy-n-pasted |
448 * tables had ARFCNs that are invalid for the band they are supposed | 452 * tables had ARFCNs that are invalid for the band they are supposed |
449 * to apply to. The latter bug has been fixed. | 453 * to apply to. The latter bug has been fixed. |
450 * | 454 * |
451 * - For the Tx ramps tables we now select between two different versions | 455 * - For the Tx ramps tables we now select between 3 different versions |
452 * at compile time: for Mot C1xx targets (CONFIG_TARGET_COMPAL) we use | 456 * at compile time: the original version from OM is used for our own |
453 * the version extracted from Mot's official C139 fw, whereas for all | 457 * OM-based FC hardware, whereas Mot C1xx builds use one of two different |
454 * other targets (principally FreeCalypso hw) we continue to use the | 458 * Mot/Compal versions: one version for C11x/12x and C155/156 (SKY77324 |
455 * version extracted from OM's l1_cust.obj blob. | 459 * RF PA) and a different version for C139/140 (SKY77325 RF PA). |
456 * | 460 * |
457 * NONE of these compiled-in tables matter if you are running the fw | 461 * NONE of these compiled-in tables matter if you are running the fw |
458 * on an Openmoko, Pirelli or FreeCalypso device that has already been | 462 * on an Openmoko, Pirelli or FreeCalypso device that has already been |
459 * fully calibrated at the respective factory: in all of these cases | 463 * fully calibrated at the respective factory: in all of these cases |
460 * all of these compiled-in tables are fully overridden by the factory- | 464 * all of these compiled-in tables are fully overridden by the factory- |
467 * - When FC fw is run on a Mot C1xx phone, our c1xx-calextr tool | 471 * - When FC fw is run on a Mot C1xx phone, our c1xx-calextr tool |
468 * generates Rx agcparams, Rx channel calibration and Tx levels tables | 472 * generates Rx agcparams, Rx channel calibration and Tx levels tables |
469 * from Motorola's factory bits, but for the Tx ramp templates the tables | 473 * from Motorola's factory bits, but for the Tx ramp templates the tables |
470 * compiled into our fw are used - hence these tables need to be correct | 474 * compiled into our fw are used - hence these tables need to be correct |
471 * for the target in question, which is why we have extracted and included | 475 * for the target in question, which is why we have extracted and included |
472 * the tables from Mot C139 official fw. We also weren't able to grok | 476 * the tables from two different Mot/Compal official fw versions. We also |
473 * Mot's way of doing Tx channel corrections, hence we run without those | 477 * weren't able to grok Compal's way of doing Tx channel corrections, hence |
474 * - thus we rely on the compiled-in channel calibration tables providing | 478 * we run without those - thus we rely on the compiled-in channel calibration |
475 * a neutral set of correction values. | 479 * tables providing a neutral set of correction values. |
476 * | 480 * |
477 * - Firmware images that are programmed into newly made FreeCalypso hw | 481 * - Firmware images that are programmed into newly made FreeCalypso hw |
478 * devices in the factory production environment prior to RF calibration | 482 * devices in the factory production environment prior to RF calibration |
479 * need to have correct Tx ramp template tables in them, as well as | 483 * need to have correct Tx ramp template tables in them, as well as |
480 * indices in the Tx levels tables pointing to these ramps, plus the | 484 * indices in the Tx levels tables pointing to these ramps, plus the |
495 * calibration records, like our c1xx-calextr and pirelli-magnetite-init | 499 * calibration records, like our c1xx-calextr and pirelli-magnetite-init |
496 * tools do), and if the compiled-in tables are nothing but placeholders, | 500 * tools do), and if the compiled-in tables are nothing but placeholders, |
497 * it would be rather moot to argue whether set of numbers A or set of | 501 * it would be rather moot to argue whether set of numbers A or set of |
498 * numbers B would make a better placeholder. | 502 * numbers B would make a better placeholder. |
499 * | 503 * |
500 * For the Tx ramp templates on our newly made FreeCalypso hw we currently | 504 * All of our Tx ramp templates (the ones used on our own FCDEV3B and both |
501 * use the ramps tables extracted from OM's l1_cust.obj blob: they were | 505 * Mot C1xx versions) have been verified with our CMU200 RF tester and |
502 * used by OM, and our current RF hw is unchanged from OM GTA02. However, | 506 * found to produce correct in-tolerance ramps on all tested targets (FCDEV3B, |
503 * these Tx ramp templates are currently only *assumed* to be correct, | 507 * EU-band Mot C118, US-band Mot C139, EU-band Mot C140 and US-band Mot C155) |
504 * and no actual testing has been done yet - these Tx power ramps will | 508 * for each power control level in all supported bands. |
505 * need to be revisited and tested empirically before we apply for type | |
506 * approval certification. | |
507 */ | 509 */ |
508 | 510 |
509 const T_RF_BAND rf_900 = { | 511 const T_RF_BAND rf_900 = { |
510 { /* Rx structure */ | 512 { /* Rx structure */ |
511 { /* T_RX_CAL_PARAMS */ | 513 { /* T_RX_CAL_PARAMS */ |
616 { 885, 128}, | 618 { 885, 128}, |
617 { 1023, 128}, | 619 { 1023, 128}, |
618 }, | 620 }, |
619 }, | 621 }, |
620 { /* ramps */ | 622 { /* ramps */ |
621 #ifdef CONFIG_TARGET_COMPAL | 623 #if defined(CONFIG_TARGET_C11X) || defined(CONFIG_TARGET_C155) |
624 /* from Motorola R87.2.1.03.m0 fw for the C11x family */ | |
625 { /* profile 0 */ | |
626 /* ramp-up */ | |
627 { 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 31, 5, 0}, | |
628 /* ramp-down */ | |
629 { 31, 31, 28, 15, 2, 0, 19, 2, 0, 0, 0, 0, 0, 0, 0, 0}, | |
630 }, | |
631 { /* profile 1 */ | |
632 /* ramp-up */ | |
633 { 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 26, 29, 8, 0}, | |
634 /* ramp-down */ | |
635 { 31, 31, 29, 14, 2, 1, 15, 2, 3, 0, 0, 0, 0, 0, 0, 0}, | |
636 }, | |
637 { /* profile 2 */ | |
638 /* ramp-up */ | |
639 { 31, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 27, 24, 1, 0}, | |
640 /* ramp-down */ | |
641 { 30, 31, 25, 14, 2, 2, 15, 7, 2, 0, 0, 0, 0, 0, 0, 0}, | |
642 }, | |
643 { /* profile 3 */ | |
644 /* ramp-up */ | |
645 { 31, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 14, 29, 1, 0}, | |
646 /* ramp-down */ | |
647 { 31, 29, 31, 13, 2, 2, 15, 2, 3, 0, 0, 0, 0, 0, 0, 0}, | |
648 }, | |
649 { /* profile 4 */ | |
650 /* ramp-up */ | |
651 { 31, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 17, 19, 0, 0}, | |
652 /* ramp-down */ | |
653 { 31, 30, 30, 15, 1, 2, 17, 2, 0, 0, 0, 0, 0, 0, 0, 0}, | |
654 }, | |
655 { /* profile 5 */ | |
656 /* ramp-up */ | |
657 { 31, 31, 7, 0, 0, 0, 0, 0, 0, 0, 0, 31, 19, 7, 2, 0}, | |
658 /* ramp-down */ | |
659 { 29, 31, 29, 16, 4, 0, 14, 2, 1, 2, 0, 0, 0, 0, 0, 0}, | |
660 }, | |
661 { /* profile 6 */ | |
662 /* ramp-up */ | |
663 { 31, 31, 16, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 20, 0, 0}, | |
664 /* ramp-down */ | |
665 { 19, 26, 26, 28, 10, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
666 }, | |
667 { /* profile 7 */ | |
668 /* ramp-up */ | |
669 { 31, 31, 25, 0, 0, 0, 0, 0, 0, 0, 0, 31, 0, 8, 2, 0}, | |
670 /* ramp-down */ | |
671 { 19, 28, 31, 24, 4, 0, 19, 3, 0, 0, 0, 0, 0, 0, 0, 0}, | |
672 }, | |
673 { /* profile 8 */ | |
674 /* ramp-up */ | |
675 { 31, 31, 31, 2, 0, 0, 0, 0, 0, 0, 0, 31, 2, 0, 0, 0}, | |
676 /* ramp-down */ | |
677 { 19, 28, 31, 24, 4, 0, 17, 5, 0, 0, 0, 0, 0, 0, 0, 0}, | |
678 }, | |
679 { /* profile 9 */ | |
680 /* ramp-up */ | |
681 { 31, 31, 31, 9, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0}, | |
682 /* ramp-down */ | |
683 { 18, 25, 28, 31, 2, 2, 19, 3, 0, 0, 0, 0, 0, 0, 0, 0}, | |
684 }, | |
685 { /* profile 10 */ | |
686 /* ramp-up */ | |
687 { 31, 31, 31, 16, 0, 0, 0, 0, 0, 0, 0, 0, 19, 0, 0, 0}, | |
688 /* ramp-down */ | |
689 { 14, 21, 24, 29, 6, 2, 23, 5, 4, 0, 0, 0, 0, 0, 0, 0}, | |
690 }, | |
691 { /* profile 11 */ | |
692 /* ramp-up */ | |
693 { 31, 31, 31, 22, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 1, 0}, | |
694 /* ramp-down */ | |
695 { 8, 26, 26, 28, 12, 12, 5, 5, 0, 6, 0, 0, 0, 0, 0, 0}, | |
696 }, | |
697 { /* profile 12 */ | |
698 /* ramp-up */ | |
699 { 31, 31, 31, 27, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0}, | |
700 /* ramp-down */ | |
701 { 8, 14, 27, 30, 20, 19, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
702 }, | |
703 { /* profile 13 */ | |
704 /* ramp-up */ | |
705 { 31, 31, 31, 31, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 1, 0}, | |
706 /* ramp-down */ | |
707 { 9, 10, 15, 26, 25, 10, 17, 13, 3, 0, 0, 0, 0, 0, 0, 0}, | |
708 }, | |
709 { /* profile 14 */ | |
710 /* ramp-up */ | |
711 { 31, 31, 30, 30, 1, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
712 /* ramp-down */ | |
713 { 0, 4, 15, 21, 21, 21, 21, 15, 10, 0, 0, 0, 0, 0, 0, 0}, | |
714 }, | |
715 { /* profile 15 */ | |
716 /* ramp-up */ | |
717 { 31, 31, 30, 30, 1, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
718 /* ramp-down */ | |
719 { 0, 4, 15, 21, 21, 21, 21, 15, 10, 0, 0, 0, 0, 0, 0, 0}, | |
720 }, | |
721 #elif defined(CONFIG_TARGET_C139) | |
622 /* from Mot C139 official fw */ | 722 /* from Mot C139 official fw */ |
623 { /* profile 0 */ | 723 { /* profile 0 */ |
624 /* ramp-up */ | 724 /* ramp-up */ |
625 { 0, 0, 2, 0, 0, 0, 0, 0, 13, 24, 24, 25, 26, 14, 0, 0}, | 725 { 0, 0, 2, 0, 0, 0, 0, 0, 13, 24, 24, 25, 26, 14, 0, 0}, |
626 /* ramp-down */ | 726 /* ramp-down */ |
946 { 870, 128}, | 1046 { 870, 128}, |
947 { 885, 128}, | 1047 { 885, 128}, |
948 }, | 1048 }, |
949 }, | 1049 }, |
950 { /* ramps */ | 1050 { /* ramps */ |
951 #ifdef CONFIG_TARGET_COMPAL | 1051 #if defined(CONFIG_TARGET_C11X) || defined(CONFIG_TARGET_C155) |
1052 /* from Motorola R87.2.1.03.m0 fw for the C11x family */ | |
1053 { /* profile 0 */ | |
1054 /* ramp-up */ | |
1055 { 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 27, 4, 0}, | |
1056 /* ramp-down */ | |
1057 { 28, 31, 18, 8, 8, 13, 9, 13, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1058 }, | |
1059 { /* profile 1 */ | |
1060 /* ramp-up */ | |
1061 { 31, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 24, 0, 0}, | |
1062 /* ramp-down */ | |
1063 { 10, 30, 30, 20, 8, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1064 }, | |
1065 { /* profile 2 */ | |
1066 /* ramp-up */ | |
1067 { 31, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 16, 0, 0}, | |
1068 /* ramp-down */ | |
1069 { 10, 30, 31, 24, 31, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1070 }, | |
1071 { /* profile 3 */ | |
1072 /* ramp-up */ | |
1073 { 31, 27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28, 23, 19, 0, 0}, | |
1074 /* ramp-down */ | |
1075 { 31, 14, 31, 5, 24, 13, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1076 }, | |
1077 { /* profile 4 */ | |
1078 /* ramp-up */ | |
1079 { 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 10, 21, 31, 0, 0}, | |
1080 /* ramp-down */ | |
1081 { 20, 22, 31, 10, 22, 13, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1082 }, | |
1083 { /* profile 5 */ | |
1084 /* ramp-up */ | |
1085 { 31, 31, 13, 0, 0, 0, 0, 0, 0, 0, 0, 31, 22, 0, 0, 0}, | |
1086 /* ramp-down */ | |
1087 { 22, 14, 26, 22, 22, 17, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1088 }, | |
1089 { /* profile 6 */ | |
1090 /* ramp-up */ | |
1091 { 31, 31, 21, 0, 0, 0, 0, 0, 0, 0, 0, 24, 21, 0, 0, 0}, | |
1092 /* ramp-down */ | |
1093 { 10, 31, 31, 25, 17, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1094 }, | |
1095 { /* profile 7 */ | |
1096 /* ramp-up */ | |
1097 { 31, 31, 28, 0, 0, 0, 0, 0, 0, 0, 0, 28, 10, 0, 0, 0}, | |
1098 /* ramp-down */ | |
1099 { 17, 24, 28, 21, 24, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1100 }, | |
1101 { /* profile 8 */ | |
1102 /* ramp-up */ | |
1103 { 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 27, 4, 0, 0, 0}, | |
1104 /* ramp-down */ | |
1105 { 9, 23, 31, 24, 24, 13, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1106 }, | |
1107 { /* profile 9 */ | |
1108 /* ramp-up */ | |
1109 { 31, 31, 31, 12, 0, 0, 0, 0, 0, 0, 0, 0, 13, 10, 0, 0}, | |
1110 /* ramp-down */ | |
1111 { 9, 23, 31, 24, 24, 13, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1112 }, | |
1113 { /* profile 10 */ | |
1114 /* ramp-up */ | |
1115 { 31, 31, 31, 17, 0, 0, 0, 0, 0, 0, 0, 0, 12, 6, 0, 0}, | |
1116 /* ramp-down */ | |
1117 { 10, 10, 31, 31, 24, 13, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1118 }, | |
1119 { /* profile 11 */ | |
1120 /* ramp-up */ | |
1121 { 31, 31, 31, 21, 0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 0}, | |
1122 /* ramp-down */ | |
1123 { 4, 14, 31, 31, 26, 13, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1124 }, | |
1125 { /* profile 12 */ | |
1126 /* ramp-up */ | |
1127 { 31, 31, 31, 27, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0}, | |
1128 /* ramp-down */ | |
1129 { 2, 14, 31, 31, 28, 13, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1130 }, | |
1131 { /* profile 13 */ | |
1132 /* ramp-up */ | |
1133 { 31, 31, 31, 29, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0}, | |
1134 /* ramp-down */ | |
1135 { 0, 6, 14, 31, 31, 24, 13, 5, 4, 0, 0, 0, 0, 0, 0, 0}, | |
1136 }, | |
1137 { /* profile 14 */ | |
1138 /* ramp-up */ | |
1139 { 31, 31, 31, 31, 1, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0}, | |
1140 /* ramp-down */ | |
1141 { 2, 4, 4, 18, 31, 31, 24, 5, 5, 4, 0, 0, 0, 0, 0, 0}, | |
1142 }, | |
1143 { /* profile 15 */ | |
1144 /* ramp-up */ | |
1145 { 31, 31, 31, 31, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1146 /* ramp-down */ | |
1147 { 3, 2, 2, 22, 22, 21, 21, 21, 9, 5, 0, 0, 0, 0, 0, 0}, | |
1148 }, | |
1149 #elif defined(CONFIG_TARGET_C139) | |
952 /* from Mot C139 official fw */ | 1150 /* from Mot C139 official fw */ |
953 { /* profile 0 */ | 1151 { /* profile 0 */ |
954 /* ramp-up */ | 1152 /* ramp-up */ |
955 { 6, 0, 0, 0, 0, 0, 0, 0, 0, 26, 26, 30, 30, 10, 0, 0}, | 1153 { 6, 0, 0, 0, 0, 0, 0, 0, 0, 26, 26, 30, 30, 10, 0, 0}, |
956 /* ramp-down */ | 1154 /* ramp-down */ |
1276 { 229, 128}, | 1474 { 229, 128}, |
1277 { 251, 128}, | 1475 { 251, 128}, |
1278 }, | 1476 }, |
1279 }, | 1477 }, |
1280 { /* ramps */ | 1478 { /* ramps */ |
1281 #ifdef CONFIG_TARGET_COMPAL | 1479 #if defined(CONFIG_TARGET_C11X) || defined(CONFIG_TARGET_C155) |
1480 /* from Motorola R87.2.1.03.m0 fw for the C11x family */ | |
1481 { /* profile 0 */ | |
1482 /* ramp-up */ | |
1483 { 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 31, 31, 31, 3, 0}, | |
1484 /* ramp-down */ | |
1485 { 31, 31, 18, 22, 6, 10, 2, 1, 1, 3, 3, 0, 0, 0, 0, 0}, | |
1486 }, | |
1487 { /* profile 1 */ | |
1488 /* ramp-up */ | |
1489 { 31, 1, 0, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 31, 0, 0}, | |
1490 /* ramp-down */ | |
1491 { 31, 31, 31, 6, 8, 8, 9, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1492 }, | |
1493 { /* profile 2 */ | |
1494 /* ramp-up */ | |
1495 { 31, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 29, 0, 0}, | |
1496 /* ramp-down */ | |
1497 { 31, 25, 21, 20, 13, 14, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1498 }, | |
1499 { /* profile 3 */ | |
1500 /* ramp-up */ | |
1501 { 31, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 22, 0, 0}, | |
1502 /* ramp-down */ | |
1503 { 27, 28, 23, 19, 13, 14, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1504 }, | |
1505 { /* profile 4 */ | |
1506 /* ramp-up */ | |
1507 { 31, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 14, 0, 0}, | |
1508 /* ramp-down */ | |
1509 { 31, 21, 31, 2, 31, 4, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1510 }, | |
1511 { /* profile 5 */ | |
1512 /* ramp-up */ | |
1513 { 31, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 31, 5, 0, 0}, | |
1514 /* ramp-down */ | |
1515 { 21, 31, 31, 2, 31, 4, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1516 }, | |
1517 { /* profile 6 */ | |
1518 /* ramp-up */ | |
1519 { 31, 31, 7, 0, 0, 0, 0, 0, 0, 0, 0, 31, 28, 0, 0, 0}, | |
1520 /* ramp-down */ | |
1521 { 31, 31, 28, 14, 3, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1522 }, | |
1523 { /* profile 7 */ | |
1524 /* ramp-up */ | |
1525 { 31, 31, 16, 0, 0, 0, 0, 0, 0, 0, 0, 31, 19, 0, 0, 0}, | |
1526 /* ramp-down */ | |
1527 { 20, 30, 30, 10, 28, 10, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1528 }, | |
1529 { /* profile 8 */ | |
1530 /* ramp-up */ | |
1531 { 31, 31, 26, 0, 0, 0, 0, 0, 0, 0, 0, 31, 9, 0, 0, 0}, | |
1532 /* ramp-down */ | |
1533 { 20, 26, 26, 18, 18, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1534 }, | |
1535 { /* profile 9 */ | |
1536 /* ramp-up */ | |
1537 { 31, 31, 31, 2, 0, 0, 0, 0, 0, 0, 0, 31, 2, 0, 0, 0}, | |
1538 /* ramp-down */ | |
1539 { 16, 16, 26, 26, 26, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1540 }, | |
1541 { /* profile 10 */ | |
1542 /* ramp-up */ | |
1543 { 31, 31, 31, 11, 0, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0}, | |
1544 /* ramp-down */ | |
1545 { 10, 12, 31, 26, 29, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1546 }, | |
1547 { /* profile 11 */ | |
1548 /* ramp-up */ | |
1549 { 31, 31, 31, 18, 0, 0, 0, 0, 0, 0, 0, 0, 17, 0, 0, 0}, | |
1550 /* ramp-down */ | |
1551 { 2, 20, 31, 26, 31, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1552 }, | |
1553 { /* profile 12 */ | |
1554 /* ramp-up */ | |
1555 { 31, 31, 31, 25, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0, 0}, | |
1556 /* ramp-down */ | |
1557 { 2, 20, 31, 26, 31, 0, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0}, | |
1558 }, | |
1559 { /* profile 13 */ | |
1560 /* ramp-up */ | |
1561 { 31, 31, 31, 30, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0}, | |
1562 /* ramp-down */ | |
1563 { 1, 16, 31, 31, 31, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1564 }, | |
1565 { /* profile 14 */ | |
1566 /* ramp-up */ | |
1567 { 31, 31, 31, 31, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0}, | |
1568 /* ramp-down */ | |
1569 { 4, 8, 10, 20, 31, 31, 20, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1570 }, | |
1571 { /* profile 15 */ | |
1572 /* ramp-up */ | |
1573 { 31, 31, 31, 31, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0}, | |
1574 /* ramp-down */ | |
1575 { 4, 8, 10, 20, 31, 31, 20, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1576 }, | |
1577 #elif defined(CONFIG_TARGET_C139) | |
1282 /* from Mot C139 official fw */ | 1578 /* from Mot C139 official fw */ |
1283 { /* profile 0 */ | 1579 { /* profile 0 */ |
1284 /* ramp-up */ | 1580 /* ramp-up */ |
1285 { 0, 0, 3, 0, 0, 0, 0, 0, 2, 31, 30, 31, 31, 0, 0, 0}, | 1581 { 0, 0, 3, 0, 0, 0, 0, 0, 2, 31, 30, 31, 31, 0, 0, 0}, |
1286 /* ramp-down */ | 1582 /* ramp-down */ |
1606 { 810, 128}, | 1902 { 810, 128}, |
1607 { 810, 128}, | 1903 { 810, 128}, |
1608 }, | 1904 }, |
1609 }, | 1905 }, |
1610 { /* ramps */ | 1906 { /* ramps */ |
1611 #ifdef CONFIG_TARGET_COMPAL | 1907 #if defined(CONFIG_TARGET_C11X) || defined(CONFIG_TARGET_C155) |
1908 /* from Motorola R87.2.1.03.m0 fw for the C11x family */ | |
1909 { /* profile 0 */ | |
1910 /* ramp-up */ | |
1911 { 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 14, 31, 31, 17, 0, 0}, | |
1912 /* ramp-down */ | |
1913 { 31, 31, 15, 25, 8, 10, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1914 }, | |
1915 { /* profile 1 */ | |
1916 /* ramp-up */ | |
1917 { 31, 8, 0, 0, 0, 0, 0, 0, 0, 0, 5, 31, 31, 22, 0, 0}, | |
1918 /* ramp-down */ | |
1919 { 31, 21, 31, 20, 4, 0, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1920 }, | |
1921 { /* profile 2 */ | |
1922 /* ramp-up */ | |
1923 { 31, 16, 0, 0, 0, 0, 0, 0, 0, 0, 6, 31, 31, 13, 0, 0}, | |
1924 /* ramp-down */ | |
1925 { 30, 31, 24, 31, 10, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1926 }, | |
1927 { /* profile 3 */ | |
1928 /* ramp-up */ | |
1929 { 31, 24, 0, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 8, 0, 0}, | |
1930 /* ramp-down */ | |
1931 { 31, 31, 19, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1932 }, | |
1933 { /* profile 4 */ | |
1934 /* ramp-up */ | |
1935 { 31, 31, 2, 0, 0, 0, 0, 0, 0, 0, 6, 31, 22, 5, 0, 0}, | |
1936 /* ramp-down */ | |
1937 { 31, 31, 14, 24, 5, 13, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1938 }, | |
1939 { /* profile 5 */ | |
1940 /* ramp-up */ | |
1941 { 31, 31, 10, 0, 0, 0, 0, 0, 0, 0, 0, 31, 25, 0, 0, 0}, | |
1942 /* ramp-down */ | |
1943 { 31, 19, 20, 8, 24, 17, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1944 }, | |
1945 { /* profile 6 */ | |
1946 /* ramp-up */ | |
1947 { 31, 30, 19, 0, 0, 0, 0, 0, 0, 0, 0, 31, 17, 0, 0, 0}, | |
1948 /* ramp-down */ | |
1949 { 2, 31, 31, 25, 17, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1950 }, | |
1951 { /* profile 7 */ | |
1952 /* ramp-up */ | |
1953 { 31, 31, 26, 0, 0, 0, 0, 0, 0, 0, 0, 31, 9, 0, 0, 0}, | |
1954 /* ramp-down */ | |
1955 { 14, 24, 25, 30, 24, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1956 }, | |
1957 { /* profile 8 */ | |
1958 /* ramp-up */ | |
1959 { 31, 31, 31, 2, 0, 0, 0, 0, 0, 0, 0, 31, 2, 0, 0, 0}, | |
1960 /* ramp-down */ | |
1961 { 12, 17, 27, 31, 24, 13, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1962 }, | |
1963 { /* profile 9 */ | |
1964 /* ramp-up */ | |
1965 { 31, 31, 30, 10, 0, 0, 0, 0, 0, 0, 0, 25, 1, 0, 0, 0}, | |
1966 /* ramp-down */ | |
1967 { 21, 31, 31, 26, 13, 4, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1968 }, | |
1969 { /* profile 10 */ | |
1970 /* ramp-up */ | |
1971 { 31, 31, 31, 11, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0}, | |
1972 /* ramp-down */ | |
1973 { 14, 31, 31, 28, 13, 5, 4, 2, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1974 }, | |
1975 { /* profile 11 */ | |
1976 /* ramp-up */ | |
1977 { 31, 31, 31, 19, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0}, | |
1978 /* ramp-down */ | |
1979 { 6, 14, 31, 31, 24, 13, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1980 }, | |
1981 { /* profile 12 */ | |
1982 /* ramp-up */ | |
1983 { 31, 31, 31, 25, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0, 0}, | |
1984 /* ramp-down */ | |
1985 { 6, 14, 31, 31, 24, 13, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1986 }, | |
1987 { /* profile 13 */ | |
1988 /* ramp-up */ | |
1989 { 31, 31, 31, 29, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0}, | |
1990 /* ramp-down */ | |
1991 { 6, 14, 31, 31, 24, 13, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1992 }, | |
1993 { /* profile 14 */ | |
1994 /* ramp-up */ | |
1995 { 31, 31, 31, 31, 1, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0}, | |
1996 /* ramp-down */ | |
1997 { 3, 16, 31, 31, 24, 14, 5, 4, 0, 0, 0, 0, 0, 0, 0, 0}, | |
1998 }, | |
1999 { /* profile 15 */ | |
2000 /* ramp-up */ | |
2001 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, | |
2002 /* ramp-down */ | |
2003 { 4, 6, 21, 21, 21, 21, 15, 15, 4, 0, 0, 0, 0, 0, 0, 0}, | |
2004 }, | |
2005 #elif defined(CONFIG_TARGET_C139) | |
1612 /* from Mot C139 official fw */ | 2006 /* from Mot C139 official fw */ |
1613 { /* profile 0 */ | 2007 { /* profile 0 */ |
1614 /* ramp-up */ | 2008 /* ramp-up */ |
1615 { 10, 0, 0, 0, 0, 0, 0, 0, 6, 15, 31, 31, 23, 12, 0, 0}, | 2009 { 10, 0, 0, 0, 0, 0, 0, 0, 6, 15, 31, 31, 23, 12, 0, 0}, |
1616 /* ramp-down */ | 2010 /* ramp-down */ |