comparison src/cs/layer1/cust0/l1_rf12.c @ 155:ca705e7e03f8

l1_rf12.[ch]: additions for SE J100 target support
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 17 Mar 2019 07:04:00 +0000
parents df9c471ce9e9
children
comparison
equal deleted inserted replaced
154:9ae97f192d0b 155:ca705e7e03f8
450 * 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
451 * 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
452 * 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
453 * to apply to. The latter bug has been fixed. 453 * to apply to. The latter bug has been fixed.
454 * 454 *
455 * - For the Tx ramps tables we now select between 3 different versions 455 * - For the Tx ramps tables we now select between 4 different versions
456 * at compile time: the original version from OM is used for our own 456 * at compile time: the original version from OM is used for our own
457 * OM-based FC hardware, whereas Mot C1xx builds use one of two different 457 * OM-based FC hardware, whereas Compal-targeting builds use one of 3
458 * Mot/Compal versions: one version for C11x/12x and C155/156 (SKY77324 458 * different Compal versions: one version for C11x/12x and C155/156
459 * RF PA) and a different version for C139/140 (SKY77325 RF PA). 459 * (SKY77324 RF PA), a different version for C139/140 (SKY77325 RF PA),
460 * and yet another version for SE J100 (SKY77328 RF PA).
460 * 461 *
461 * NONE of these compiled-in tables matter if you are running the fw 462 * NONE of these compiled-in tables matter if you are running the fw
462 * on an Openmoko, Pirelli or FreeCalypso device that has already been 463 * on an Openmoko, Pirelli or FreeCalypso device that has already been
463 * fully calibrated at the respective factory: in all of these cases 464 * fully calibrated at the respective factory: in all of these cases
464 * all of these compiled-in tables are fully overridden by the factory- 465 * all of these compiled-in tables are fully overridden by the factory-
465 * calibrated ones read from FFS, or in the Pirelli DP-L10 case, 466 * calibrated ones read from FFS, or in the Pirelli DP-L10 case,
466 * read from Pirelli's factory data block and written into FreeCalypso FFS 467 * read from Pirelli's factory data block and written into FreeCalypso FFS
467 * by the pirelli-magnetite-init command you are supposed to issue 468 * by the pirelli-magnetite-init command you are supposed to issue
468 * in fc-fsio when you set up FC on this target. Instead these 469 * in fc-fsio when you set up FC on this target. Instead these
469 * compiled-in tables matter in the following use cases: 470 * compiled-in tables matter in the following two use cases:
470 * 471 *
471 * - When FC fw is run on a Mot C1xx phone, our c1xx-calextr tool 472 * - When FC fw is run on a Mot C1xx or SE J100 phone, our c1xx-calextr tool
472 * generates Rx agcparams, Rx channel calibration and Tx levels tables 473 * generates Rx agcparams, Rx channel calibration and Tx levels tables
473 * from Motorola's factory bits, but for the Tx ramp templates the tables 474 * from Compal's factory bits, but for the Tx ramp templates the tables
474 * compiled into our fw are used - hence these tables need to be correct 475 * compiled into our fw are used - hence these tables need to be correct
475 * for the target in question, which is why we have extracted and included 476 * for the target in question, which is why we have extracted and included
476 * the tables from two different Mot/Compal official fw versions. We also 477 * the tables from 3 different Compal official fw versions. We also
477 * weren't able to grok Compal's way of doing Tx channel corrections, hence 478 * weren't able to grok Compal's way of doing Tx channel corrections, hence
478 * we run without those - thus we rely on the compiled-in channel calibration 479 * we run without those - thus we rely on the compiled-in channel calibration
479 * tables providing a neutral set of correction values. 480 * tables providing a neutral set of correction values.
480 * 481 *
481 * - Firmware images that are programmed into newly made FreeCalypso hw 482 * - Firmware images that are programmed into newly made FreeCalypso hw
499 * calibration records, like our c1xx-calextr and pirelli-magnetite-init 500 * calibration records, like our c1xx-calextr and pirelli-magnetite-init
500 * tools do), and if the compiled-in tables are nothing but placeholders, 501 * tools do), and if the compiled-in tables are nothing but placeholders,
501 * it would be rather moot to argue whether set of numbers A or set of 502 * it would be rather moot to argue whether set of numbers A or set of
502 * numbers B would make a better placeholder. 503 * numbers B would make a better placeholder.
503 * 504 *
504 * All of our Tx ramp templates (the ones used on our own FCDEV3B and both 505 * All of our Tx ramp templates (the ones used on our own FCDEV3B and all 3
505 * Mot C1xx versions) have been verified with our CMU200 RF tester and 506 * of our Compal versions) have been verified with our CMU200 RF tester and
506 * found to produce correct in-tolerance ramps on all tested targets (FCDEV3B, 507 * found to produce correct in-tolerance ramps on all tested targets (FCDEV3B,
507 * EU-band Mot C118, US-band Mot C139, EU-band Mot C140 and US-band Mot C155) 508 * EU-band Mot C118, US-band Mot C139, EU-band Mot C140, US-band Mot C155 and
508 * for each power control level in all supported bands. 509 * EU-band SE J100i) for each power control level in all supported bands.
509 */ 510 */
510 511
511 const T_RF_BAND rf_900 = { 512 const T_RF_BAND rf_900 = {
512 { /* Rx structure */ 513 { /* Rx structure */
513 { /* T_RX_CAL_PARAMS */ 514 { /* T_RX_CAL_PARAMS */
813 { /* profile 15 */ 814 { /* profile 15 */
814 /* ramp-up */ 815 /* ramp-up */
815 { 0, 0, 0, 0, 30, 0, 0, 0, 0, 0, 31, 31, 31, 5, 0, 0}, 816 { 0, 0, 0, 0, 30, 0, 0, 0, 0, 0, 31, 31, 31, 5, 0, 0},
816 /* ramp-down */ 817 /* ramp-down */
817 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, 818 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
819 },
820 #elif defined(CONFIG_TARGET_J100)
821 /* from SE J100 fw version R1C004 */
822 { /* profile 0 */
823 /* ramp-up */
824 { 1, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0, 0},
825 /* ramp-down */
826 { 25, 25, 31, 16, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
827 },
828 { /* profile 1 */
829 /* ramp-up */
830 { 1, 0, 0, 0, 0, 0, 0, 0, 14, 31, 31, 31, 20, 0, 0, 0},
831 /* ramp-down */
832 { 27, 31, 31, 8, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
833 },
834 { /* profile 2 */
835 /* ramp-up */
836 { 1, 0, 0, 0, 0, 0, 0, 0, 14, 31, 31, 31, 20, 0, 0, 0},
837 /* ramp-down */
838 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
839 },
840 { /* profile 3 */
841 /* ramp-up */
842 { 1, 0, 0, 0, 0, 0, 0, 0, 9, 31, 31, 31, 25, 0, 0, 0},
843 /* ramp-down */
844 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
845 },
846 { /* profile 4 */
847 /* ramp-up */
848 { 1, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 31, 31, 0, 0, 0},
849 /* ramp-down */
850 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
851 },
852 { /* profile 5 */
853 /* ramp-up */
854 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 29, 31, 31, 31, 5, 0, 0},
855 /* ramp-down */
856 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
857 },
858 { /* profile 6 */
859 /* ramp-up */
860 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 29, 31, 31, 31, 5, 0, 0},
861 /* ramp-down */
862 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
863 },
864 { /* profile 7 */
865 /* ramp-up */
866 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 29, 31, 31, 31, 5, 0, 0},
867 /* ramp-down */
868 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
869 },
870 { /* profile 8 */
871 /* ramp-up */
872 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 29, 31, 31, 31, 5, 0, 0},
873 /* ramp-down */
874 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
875 },
876 { /* profile 9 */
877 /* ramp-up */
878 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 29, 31, 31, 31, 5, 0, 0},
879 /* ramp-down */
880 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
881 },
882 { /* profile 10 */
883 /* ramp-up */
884 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0},
885 /* ramp-down */
886 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
887 },
888 { /* profile 11 */
889 /* ramp-up */
890 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0},
891 /* ramp-down */
892 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
893 },
894 { /* profile 12 */
895 /* ramp-up */
896 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0},
897 /* ramp-down */
898 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
899 },
900 { /* profile 13 */
901 /* ramp-up */
902 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0},
903 /* ramp-down */
904 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
905 },
906 { /* profile 14 */
907 /* ramp-up */
908 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0},
909 /* ramp-down */
910 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
911 },
912 { /* profile 15 */
913 /* ramp-up */
914 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
915 /* ramp-down */
916 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
818 }, 917 },
819 #else 918 #else
820 /* TI/Openmoko version */ 919 /* TI/Openmoko version */
821 { /* profile 0 */ 920 { /* profile 0 */
822 /* ramp-up */ 921 /* ramp-up */
1242 /* ramp-up */ 1341 /* ramp-up */
1243 { 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 30, 30, 7, 0, 0}, 1342 { 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 30, 30, 7, 0, 0},
1244 /* ramp-down */ 1343 /* ramp-down */
1245 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, 1344 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1246 }, 1345 },
1346 #elif defined(CONFIG_TARGET_J100)
1347 /* from SE J100 fw version R1C004 */
1348 { /* profile 0 */
1349 /* ramp-up */
1350 { 1, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0, 0},
1351 /* ramp-down */
1352 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1353 },
1354 { /* profile 1 */
1355 /* ramp-up */
1356 { 1, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0, 0},
1357 /* ramp-down */
1358 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1359 },
1360 { /* profile 2 */
1361 /* ramp-up */
1362 { 1, 0, 0, 0, 0, 0, 0, 0, 14, 31, 31, 31, 20, 0, 0, 0},
1363 /* ramp-down */
1364 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1365 },
1366 { /* profile 3 */
1367 /* ramp-up */
1368 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 30, 31, 31, 31, 4, 0, 0},
1369 /* ramp-down */
1370 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1371 },
1372 { /* profile 4 */
1373 /* ramp-up */
1374 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 30, 31, 31, 31, 4, 0, 0},
1375 /* ramp-down */
1376 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1377 },
1378 { /* profile 5 */
1379 /* ramp-up */
1380 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 29, 31, 31, 31, 5, 0, 0},
1381 /* ramp-down */
1382 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1383 },
1384 { /* profile 6 */
1385 /* ramp-up */
1386 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0},
1387 /* ramp-down */
1388 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1389 },
1390 { /* profile 7 */
1391 /* ramp-up */
1392 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0},
1393 /* ramp-down */
1394 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1395 },
1396 { /* profile 8 */
1397 /* ramp-up */
1398 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0},
1399 /* ramp-down */
1400 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1401 },
1402 { /* profile 9 */
1403 /* ramp-up */
1404 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0},
1405 /* ramp-down */
1406 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1407 },
1408 { /* profile 10 */
1409 /* ramp-up */
1410 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0},
1411 /* ramp-down */
1412 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1413 },
1414 { /* profile 11 */
1415 /* ramp-up */
1416 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0},
1417 /* ramp-down */
1418 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1419 },
1420 { /* profile 12 */
1421 /* ramp-up */
1422 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 9, 31, 31, 31, 25, 0, 0},
1423 /* ramp-down */
1424 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1425 },
1426 { /* profile 13 */
1427 /* ramp-up */
1428 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 9, 31, 31, 31, 25, 0, 0},
1429 /* ramp-down */
1430 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1431 },
1432 { /* profile 14 */
1433 /* ramp-up */
1434 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 31, 31, 0, 0},
1435 /* ramp-down */
1436 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1437 },
1438 { /* profile 15 */
1439 /* ramp-up */
1440 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 31, 31, 0, 0},
1441 /* ramp-down */
1442 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1443 },
1247 #else 1444 #else
1248 /* TI/Openmoko version */ 1445 /* TI/Openmoko version */
1249 { /* profile 0 */ 1446 { /* profile 0 */
1250 /* ramp-up */ 1447 /* ramp-up */
1251 { 0, 0, 0, 0, 0, 0, 2, 3, 5, 16, 31, 31, 31, 9, 0, 0}, 1448 { 0, 0, 0, 0, 0, 0, 2, 3, 5, 16, 31, 31, 31, 9, 0, 0},
1670 /* ramp-up */ 1867 /* ramp-up */
1671 { 0, 0, 0, 28, 0, 0, 0, 0, 0, 0, 31, 31, 31, 7, 0, 0}, 1868 { 0, 0, 0, 28, 0, 0, 0, 0, 0, 0, 31, 31, 31, 7, 0, 0},
1672 /* ramp-down */ 1869 /* ramp-down */
1673 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, 1870 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1674 }, 1871 },
1872 #elif defined(CONFIG_TARGET_J100)
1873 /* from SE J100 fw version R1C004 */
1874 { /* profile 0 */
1875 /* ramp-up */
1876 { 1, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0, 0},
1877 /* ramp-down */
1878 { 15, 31, 31, 20, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1879 },
1880 { /* profile 1 */
1881 /* ramp-up */
1882 { 1, 0, 0, 0, 0, 0, 0, 0, 14, 31, 31, 31, 20, 0, 0, 0},
1883 /* ramp-down */
1884 { 20, 31, 31, 15, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1885 },
1886 { /* profile 2 */
1887 /* ramp-up */
1888 { 1, 0, 0, 0, 0, 0, 0, 0, 14, 31, 31, 31, 20, 0, 0, 0},
1889 /* ramp-down */
1890 { 25, 31, 31, 10, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1891 },
1892 { /* profile 3 */
1893 /* ramp-up */
1894 { 1, 0, 0, 0, 0, 0, 0, 0, 9, 31, 31, 31, 25, 0, 0, 0},
1895 /* ramp-down */
1896 { 29, 31, 31, 31, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1897 },
1898 { /* profile 4 */
1899 /* ramp-up */
1900 { 1, 0, 0, 0, 0, 0, 0, 0, 9, 31, 31, 31, 25, 0, 0, 0},
1901 /* ramp-down */
1902 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1903 },
1904 { /* profile 5 */
1905 /* ramp-up */
1906 { 1, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 31, 31, 0, 0, 0},
1907 /* ramp-down */
1908 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1909 },
1910 { /* profile 6 */
1911 /* ramp-up */
1912 { 1, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 31, 31, 0, 0, 0},
1913 /* ramp-down */
1914 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1915 },
1916 { /* profile 7 */
1917 /* ramp-up */
1918 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 29, 31, 31, 31, 5, 0, 0},
1919 /* ramp-down */
1920 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1921 },
1922 { /* profile 8 */
1923 /* ramp-up */
1924 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 29, 31, 31, 31, 5, 0, 0},
1925 /* ramp-down */
1926 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1927 },
1928 { /* profile 9 */
1929 /* ramp-up */
1930 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0},
1931 /* ramp-down */
1932 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1933 },
1934 { /* profile 10 */
1935 /* ramp-up */
1936 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0},
1937 /* ramp-down */
1938 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1939 },
1940 { /* profile 11 */
1941 /* ramp-up */
1942 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0},
1943 /* ramp-down */
1944 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1945 },
1946 { /* profile 12 */
1947 /* ramp-up */
1948 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0},
1949 /* ramp-down */
1950 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1951 },
1952 { /* profile 13 */
1953 /* ramp-up */
1954 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0},
1955 /* ramp-down */
1956 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1957 },
1958 { /* profile 14 */
1959 /* ramp-up */
1960 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0},
1961 /* ramp-down */
1962 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1963 },
1964 { /* profile 15 */
1965 /* ramp-up */
1966 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1967 /* ramp-down */
1968 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
1969 },
1675 #else 1970 #else
1676 /* TI/Openmoko version */ 1971 /* TI/Openmoko version */
1677 { /* profile 0 */ 1972 { /* profile 0 */
1678 /* ramp-up */ 1973 /* ramp-up */
1679 { 0, 0, 0, 0, 0, 0, 0, 0, 9, 18, 25, 31, 30, 15, 0, 0}, 1974 { 0, 0, 0, 0, 0, 0, 0, 0, 9, 18, 25, 31, 30, 15, 0, 0},
2095 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, 2390 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2096 }, 2391 },
2097 { /* profile 15 */ 2392 { /* profile 15 */
2098 /* ramp-up */ 2393 /* ramp-up */
2099 { 23, 0, 0, 0, 0, 0, 0, 0, 0, 25, 31, 31, 31, 7, 0, 0}, 2394 { 23, 0, 0, 0, 0, 0, 0, 0, 0, 25, 31, 31, 31, 7, 0, 0},
2395 /* ramp-down */
2396 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2397 },
2398 #elif defined(CONFIG_TARGET_J100)
2399 /* from SE J100 fw version R1C004 */
2400 { /* profile 0 */
2401 /* ramp-up */
2402 { 1, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0, 0},
2403 /* ramp-down */
2404 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2405 },
2406 { /* profile 1 */
2407 /* ramp-up */
2408 { 1, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0, 0},
2409 /* ramp-down */
2410 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2411 },
2412 { /* profile 2 */
2413 /* ramp-up */
2414 { 1, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0, 0},
2415 /* ramp-down */
2416 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2417 },
2418 { /* profile 3 */
2419 /* ramp-up */
2420 { 1, 0, 0, 0, 0, 0, 0, 0, 14, 31, 31, 31, 20, 0, 0, 0},
2421 /* ramp-down */
2422 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2423 },
2424 { /* profile 4 */
2425 /* ramp-up */
2426 { 1, 0, 0, 0, 0, 0, 0, 0, 14, 31, 31, 31, 20, 0, 0, 0},
2427 /* ramp-down */
2428 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2429 },
2430 { /* profile 5 */
2431 /* ramp-up */
2432 { 1, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 31, 31, 0, 0, 0},
2433 /* ramp-down */
2434 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2435 },
2436 { /* profile 6 */
2437 /* ramp-up */
2438 { 1, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 31, 31, 0, 0, 0},
2439 /* ramp-down */
2440 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2441 },
2442 { /* profile 7 */
2443 /* ramp-up */
2444 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 29, 31, 31, 31, 5, 0, 0},
2445 /* ramp-down */
2446 { 31, 31, 31, 4, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2447 },
2448 { /* profile 8 */
2449 /* ramp-up */
2450 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 29, 31, 31, 31, 5, 0, 0},
2451 /* ramp-down */
2452 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2453 },
2454 { /* profile 9 */
2455 /* ramp-up */
2456 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0},
2457 /* ramp-down */
2458 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2459 },
2460 { /* profile 10 */
2461 /* ramp-up */
2462 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 24, 31, 31, 31, 10, 0, 0},
2463 /* ramp-down */
2464 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2465 },
2466 { /* profile 11 */
2467 /* ramp-up */
2468 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 19, 31, 31, 31, 15, 0, 0},
2469 /* ramp-down */
2470 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2471 },
2472 { /* profile 12 */
2473 /* ramp-up */
2474 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 9, 31, 31, 31, 25, 0, 0},
2475 /* ramp-down */
2476 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2477 },
2478 { /* profile 13 */
2479 /* ramp-up */
2480 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 9, 31, 31, 31, 25, 0, 0},
2481 /* ramp-down */
2482 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2483 },
2484 { /* profile 14 */
2485 /* ramp-up */
2486 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 31, 0, 0},
2487 /* ramp-down */
2488 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2489 },
2490 { /* profile 15 */
2491 /* ramp-up */
2492 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 31, 31, 31, 0, 0},
2100 /* ramp-down */ 2493 /* ramp-down */
2101 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, 2494 { 31, 31, 31, 31, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
2102 }, 2495 },
2103 #else 2496 #else
2104 /* TI/Openmoko version */ 2497 /* TI/Openmoko version */