#include "clk-sun50iw2.h" /* * freq table from hardware, need follow rules * 1) each table named as * factor_pll1_tbl * factor_pll2_tbl * ... * 2) for each table line * a) follow the format PLLx(n, k, m, p, d1, d2, freq), and keep the * factors order * b) if any factor not used, skip it * c) the factor is the value to write registers, not means factor + 1 * * example * PLL1(9, 0, 0, 2, 60000000) means PLL1(n, k, m, p, freq) * PLLVIDEO0(3, 0, 96000000) means PLLVIDEO0(n, m, freq) * */ /* PLLCPU(n, k, m, p, freq) F_N8X5_K4X2_M0X2_P16x2 */ struct sunxi_clk_factor_freq factor_pllcpu_tbl[] = { PLLCPU(9 , 0 , 0 , 2 , 60000000U), PLLCPU(10 , 0 , 0 , 2 , 66000000U), PLLCPU(11 , 0 , 0 , 2 , 72000000U), PLLCPU(12 , 0 , 0 , 2 , 78000000U), PLLCPU(13 , 0 , 0 , 2 , 84000000U), PLLCPU(14 , 0 , 0 , 2 , 90000000U), PLLCPU(15 , 0 , 0 , 2 , 96000000U), PLLCPU(16 , 0 , 0 , 2 , 102000000U), PLLCPU(17 , 0 , 0 , 2 , 108000000U), PLLCPU(18 , 0 , 0 , 2 , 114000000U), PLLCPU(9 , 0 , 0 , 1 , 120000000U), PLLCPU(10 , 0 , 0 , 1 , 132000000U), PLLCPU(11 , 0 , 0 , 1 , 144000000U), PLLCPU(12 , 0 , 0 , 1 , 156000000U), PLLCPU(13 , 0 , 0 , 1 , 168000000U), PLLCPU(14 , 0 , 0 , 1 , 180000000U), PLLCPU(15 , 0 , 0 , 1 , 192000000U), PLLCPU(16 , 0 , 0 , 1 , 204000000U), PLLCPU(17 , 0 , 0 , 1 , 216000000U), PLLCPU(18 , 0 , 0 , 1 , 228000000U), PLLCPU(9 , 0 , 0 , 0 , 240000000U), PLLCPU(10 , 0 , 0 , 0 , 264000000U), PLLCPU(11 , 0 , 0 , 0 , 288000000U), PLLCPU(12 , 0 , 0 , 0 , 312000000U), PLLCPU(13 , 0 , 0 , 0 , 336000000U), PLLCPU(14 , 0 , 0 , 0 , 360000000U), PLLCPU(15 , 0 , 0 , 0 , 384000000U), PLLCPU(16 , 0 , 0 , 0 , 408000000U), PLLCPU(17 , 0 , 0 , 0 , 432000000U), PLLCPU(18 , 0 , 0 , 0 , 456000000U), PLLCPU(19 , 0 , 0 , 0 , 480000000U), PLLCPU(20 , 0 , 0 , 0 , 504000000U), PLLCPU(21 , 0 , 0 , 0 , 528000000U), PLLCPU(22 , 0 , 0 , 0 , 552000000U), PLLCPU(23 , 0 , 0 , 0 , 576000000U), PLLCPU(24 , 0 , 0 , 0 , 600000000U), PLLCPU(25 , 0 , 0 , 0 , 624000000U), PLLCPU(26 , 0 , 0 , 0 , 648000000U), PLLCPU(27 , 0 , 0 , 0 , 672000000U), PLLCPU(28 , 0 , 0 , 0 , 696000000U), PLLCPU(29 , 0 , 0 , 0 , 720000000U), PLLCPU(15 , 1 , 0 , 0 , 768000000U), PLLCPU(10 , 2 , 0 , 0 , 792000000U), PLLCPU(16 , 1 , 0 , 0 , 816000000U), PLLCPU(17 , 1 , 0 , 0 , 864000000U), PLLCPU(18 , 1 , 0 , 0 , 912000000U), PLLCPU(12 , 2 , 0 , 0 , 936000000U), PLLCPU(19 , 1 , 0 , 0 , 960000000U), PLLCPU(20 , 1 , 0 , 0 , 1008000000U), PLLCPU(21 , 1 , 0 , 0 , 1056000000U), PLLCPU(14 , 2 , 0 , 0 , 1080000000U), PLLCPU(22 , 1 , 0 , 0 , 1104000000U), PLLCPU(23 , 1 , 0 , 0 , 1152000000U), PLLCPU(24 , 1 , 0 , 0 , 1200000000U), PLLCPU(16 , 2 , 0 , 0 , 1224000000U), PLLCPU(25 , 1 , 0 , 0 , 1248000000U), PLLCPU(26 , 1 , 0 , 0 , 1296000000U), PLLCPU(27 , 1 , 0 , 0 , 1344000000U), PLLCPU(18 , 2 , 0 , 0 , 1368000000U), PLLCPU(19 , 2 , 0 , 0 , 1440000000U), PLLCPU(20 , 2 , 0 , 0 , 1512000000U), PLLCPU(15 , 3 , 0 , 0 , 1536000000U), PLLCPU(21 , 2 , 0 , 0 , 1584000000U), PLLCPU(16 , 3 , 0 , 0 , 1632000000U), PLLCPU(22 , 2 , 0 , 0 , 1656000000U), PLLCPU(23 , 2 , 0 , 0 , 1728000000U), PLLCPU(24 , 2 , 0 , 0 , 1800000000U), PLLCPU(25 , 2 , 0 , 0 , 1872000000U), }; /* PLLVIDEO(n, m, freq) F_N8X7_M0X4 */ struct sunxi_clk_factor_freq factor_pllvideo_tbl[] = { PLLVIDEO(6 , 0 , 168000000U), PLLVIDEO(7 , 0 , 192000000U), PLLVIDEO(16 , 1 , 204000000U), PLLVIDEO(25 , 2 , 208000000U), PLLVIDEO(8 , 0 , 216000000U), PLLVIDEO(36 , 3 , 222000000U), PLLVIDEO(27 , 2 , 224000000U), PLLVIDEO(18 , 1 , 228000000U), PLLVIDEO(28 , 2 , 232000000U), PLLVIDEO(38 , 3 , 234000000U), PLLVIDEO(9 , 0 , 240000000U), PLLVIDEO(40 , 3 , 246000000U), PLLVIDEO(30 , 2 , 248000000U), PLLVIDEO(20 , 1 , 252000000U), PLLVIDEO(31 , 2 , 256000000U), PLLVIDEO(42 , 3 , 258000000U), PLLVIDEO(10 , 0 , 264000000U), PLLVIDEO(88 , 7 , 267000000U), PLLVIDEO(44 , 3 , 270000000U), PLLVIDEO(33 , 2 , 272000000U), PLLVIDEO(90 , 7 , 273000000U), PLLVIDEO(22 , 1 , 276000000U), PLLVIDEO(92 , 7 , 279000000U), PLLVIDEO(34 , 2 , 280000000U), PLLVIDEO(46 , 3 , 282000000U), PLLVIDEO(94 , 7 , 285000000U), PLLVIDEO(23 , 1 , 288000000U), PLLVIDEO(96 , 7 , 291000000U), PLLVIDEO(48 , 3 , 294000000U), PLLVIDEO(36 , 2 , 296000000U), PLLVIDEO(98 , 7 , 297000000U), PLLVIDEO(24 , 1 , 300000000U), PLLVIDEO(100, 7 , 303000000U), PLLVIDEO(37 , 2 , 304000000U), PLLVIDEO(50 , 3 , 306000000U), PLLVIDEO(102, 7 , 309000000U), PLLVIDEO(12 , 0 , 312000000U), PLLVIDEO(104, 7 , 315000000U), PLLVIDEO(52 , 3 , 318000000U), PLLVIDEO(39 , 2 , 320000000U), PLLVIDEO(106, 7 , 321000000U), PLLVIDEO(26 , 1 , 324000000U), PLLVIDEO(108, 7 , 327000000U), PLLVIDEO(40 , 2 , 328000000U), PLLVIDEO(54 , 3 , 330000000U), PLLVIDEO(110, 7 , 333000000U), PLLVIDEO(13 , 0 , 336000000U), PLLVIDEO(112, 7 , 339000000U), PLLVIDEO(56 , 3 , 342000000U), PLLVIDEO(114, 7 , 345000000U), PLLVIDEO(28 , 1 , 348000000U), PLLVIDEO(116, 7 , 351000000U), PLLVIDEO(58 , 3 , 354000000U), PLLVIDEO(118, 7 , 357000000U), PLLVIDEO(14 , 0 , 360000000U), PLLVIDEO(121, 7 , 366000000U), PLLVIDEO(122, 7 , 369000000U), PLLVIDEO(30 , 1 , 372000000U), PLLVIDEO(124, 7 , 375000000U), PLLVIDEO(62 , 3 , 378000000U), PLLVIDEO(126, 7 , 381000000U), PLLVIDEO(15 , 0 , 384000000U), PLLVIDEO(64 , 3 , 390000000U), PLLVIDEO(32 , 1 , 396000000U), PLLVIDEO(66 , 3 , 402000000U), PLLVIDEO(16 , 0 , 408000000U), PLLVIDEO(68 , 3 , 414000000U), PLLVIDEO(34 , 1 , 420000000U), PLLVIDEO(70 , 3 , 426000000U), PLLVIDEO(17 , 0 , 432000000U), PLLVIDEO(72 , 3 , 438000000U), PLLVIDEO(36 , 1 , 444000000U), PLLVIDEO(74 , 3 , 450000000U), PLLVIDEO(18 , 0 , 456000000U), PLLVIDEO(76 , 3 , 462000000U), PLLVIDEO(38 , 1 , 468000000U), PLLVIDEO(78 , 3 , 474000000U), PLLVIDEO(19 , 0 , 480000000U), PLLVIDEO(80 , 3 , 486000000U), PLLVIDEO(40 , 1 , 492000000U), PLLVIDEO(82 , 3 , 498000000U), PLLVIDEO(20 , 0 , 504000000U), PLLVIDEO(84 , 3 , 510000000U), PLLVIDEO(85 , 3 , 516000000U), PLLVIDEO(86 , 3 , 522000000U), PLLVIDEO(21 , 0 , 528000000U), PLLVIDEO(88 , 3 , 534000000U), PLLVIDEO(89 , 3 , 540000000U), PLLVIDEO(90 , 3 , 546000000U), PLLVIDEO(22 , 0 , 552000000U), PLLVIDEO(92 , 3 , 558000000U), PLLVIDEO(93 , 3 , 564000000U), PLLVIDEO(94 , 3 , 570000000U), PLLVIDEO(23 , 0 , 576000000U), PLLVIDEO(96 , 3 , 582000000U), PLLVIDEO(97 , 3 , 588000000U), PLLVIDEO(98 , 3 , 594000000U), PLLVIDEO(24 , 0 , 600000000U), PLLVIDEO(100, 3 , 606000000U), PLLVIDEO(101, 3 , 612000000U), PLLVIDEO(102, 3 , 618000000U), PLLVIDEO(25 , 0 , 624000000U), PLLVIDEO(104, 3 , 630000000U), PLLVIDEO(105, 3 , 636000000U), PLLVIDEO(106, 3 , 642000000U), PLLVIDEO(26 , 0 , 648000000U), PLLVIDEO(108, 3 , 654000000U), PLLVIDEO(109, 3 , 660000000U), PLLVIDEO(110, 3 , 666000000U), PLLVIDEO(27 , 0 , 672000000U), PLLVIDEO(112, 3 , 678000000U), PLLVIDEO(113, 3 , 684000000U), PLLVIDEO(114, 3 , 690000000U), PLLVIDEO(28 , 0 , 696000000U), PLLVIDEO(116, 3 , 702000000U), PLLVIDEO(117, 3 , 708000000U), PLLVIDEO(118, 3 , 714000000U), PLLVIDEO(29 , 0 , 720000000U), PLLVIDEO(120, 3 , 726000000U), PLLVIDEO(121, 3 , 732000000U), PLLVIDEO(122, 3 , 738000000U), PLLVIDEO(30 , 0 , 744000000U), PLLVIDEO(124, 3 , 750000000U), PLLVIDEO(125, 3 , 756000000U), PLLVIDEO(126, 3 , 762000000U), PLLVIDEO(31 , 0 , 768000000U), PLLVIDEO(32 , 0 , 792000000U), PLLVIDEO(33 , 0 , 816000000U), PLLVIDEO(34 , 0 , 840000000U), PLLVIDEO(35 , 0 , 864000000U), PLLVIDEO(36 , 0 , 888000000U), PLLVIDEO(37 , 0 , 912000000U), PLLVIDEO(38 , 0 , 936000000U), PLLVIDEO(39 , 0 , 960000000U), PLLVIDEO(40 , 0 , 984000000U), PLLVIDEO(41 , 0 , 1008000000U), }; /* PLLVE(n, m, freq) F_N8X7_M0X4 */ struct sunxi_clk_factor_freq factor_pllve_tbl[] = { PLLVE(11 , 1 , 144000000U), PLLVE(18 , 2 , 152000000U), PLLVE(12 , 1 , 156000000U), PLLVE(19 , 2 , 160000000U), PLLVE(26 , 3 , 162000000U), PLLVE(6 , 0 , 168000000U), PLLVE(28 , 3 , 174000000U), PLLVE(21 , 2 , 176000000U), PLLVE(14 , 1 , 180000000U), PLLVE(22 , 2 , 184000000U), PLLVE(30 , 3 , 186000000U), PLLVE(62 , 7 , 189000000U), PLLVE(15 , 1 , 192000000U), PLLVE(64 , 7 , 195000000U), PLLVE(32 , 3 , 198000000U), PLLVE(24 , 2 , 200000000U), PLLVE(66 , 7 , 201000000U), PLLVE(33 , 3 , 204000000U), PLLVE(68 , 7 , 207000000U), PLLVE(25 , 2 , 208000000U), PLLVE(34 , 3 , 210000000U), PLLVE(70 , 7 , 213000000U), PLLVE(17 , 1 , 216000000U), PLLVE(72 , 7 , 219000000U), PLLVE(36 , 3 , 222000000U), PLLVE(27 , 2 , 224000000U), PLLVE(74 , 7 , 225000000U), PLLVE(18 , 1 , 228000000U), PLLVE(76 , 7 , 231000000U), PLLVE(28 , 2 , 232000000U), PLLVE(38 , 3 , 234000000U), PLLVE(78 , 7 , 237000000U), PLLVE(29 , 2 , 240000000U), PLLVE(80 , 7 , 243000000U), PLLVE(40 , 3 , 246000000U), PLLVE(30 , 2 , 248000000U), PLLVE(82 , 7 , 249000000U), PLLVE(41 , 3 , 252000000U), PLLVE(84 , 7 , 255000000U), PLLVE(31 , 2 , 256000000U), PLLVE(42 , 3 , 258000000U), PLLVE(86 , 7 , 261000000U), PLLVE(32 , 2 , 264000000U), PLLVE(88 , 7 , 267000000U), PLLVE(33 , 2 , 272000000U), PLLVE(45 , 3 , 276000000U), PLLVE(92 , 7 , 279000000U), PLLVE(34 , 2 , 280000000U), PLLVE(46 , 3 , 282000000U), PLLVE(94 , 7 , 285000000U), PLLVE(11 , 0 , 288000000U), PLLVE(96 , 7 , 291000000U), PLLVE(48 , 3 , 294000000U), PLLVE(36 , 2 , 296000000U), PLLVE(98 , 7 , 297000000U), PLLVE(24 , 1 , 300000000U), PLLVE(100, 7 , 303000000U), PLLVE(37 , 2 , 304000000U), PLLVE(50 , 3 , 306000000U), PLLVE(102, 7 , 309000000U), PLLVE(38 , 2 , 312000000U), PLLVE(104, 7 , 315000000U), PLLVE(52 , 3 , 318000000U), PLLVE(39 , 2 , 320000000U), PLLVE(106, 7 , 321000000U), PLLVE(26 , 1 , 324000000U), PLLVE(108, 7 , 327000000U), PLLVE(40 , 2 , 328000000U), PLLVE(54 , 3 , 330000000U), PLLVE(110, 7 , 333000000U), PLLVE(13 , 0 , 336000000U), PLLVE(112, 7 , 339000000U), PLLVE(56 , 3 , 342000000U), PLLVE(114, 7 , 345000000U), PLLVE(28 , 1 , 348000000U), PLLVE(116, 7 , 351000000U), PLLVE(58 , 3 , 354000000U), PLLVE(118, 7 , 357000000U), PLLVE(14 , 0 , 360000000U), PLLVE(120, 7 , 363000000U), PLLVE(60 , 3 , 366000000U), PLLVE(122, 7 , 369000000U), PLLVE(30 , 1 , 372000000U), PLLVE(124, 7 , 375000000U), PLLVE(62 , 3 , 378000000U), PLLVE(126, 7 , 381000000U), PLLVE(15 , 0 , 384000000U), PLLVE(64 , 3 , 390000000U), PLLVE(32 , 1 , 396000000U), PLLVE(66 , 3 , 402000000U), PLLVE(33 , 1 , 408000000U), PLLVE(68 , 3 , 414000000U), PLLVE(34 , 1 , 420000000U), PLLVE(70 , 3 , 426000000U), PLLVE(35 , 1 , 432000000U), PLLVE(72 , 3 , 438000000U), PLLVE(36 , 1 , 444000000U), PLLVE(74 , 3 , 450000000U), PLLVE(37 , 1 , 456000000U), PLLVE(76 , 3 , 462000000U), PLLVE(38 , 1 , 468000000U), PLLVE(78 , 3 , 474000000U), PLLVE(19 , 0 , 480000000U), PLLVE(80 , 3 , 486000000U), PLLVE(40 , 1 , 492000000U), PLLVE(82 , 3 , 498000000U), PLLVE(20 , 0 , 504000000U), PLLVE(84 , 3 , 510000000U), PLLVE(85 , 3 , 516000000U), PLLVE(86 , 3 , 522000000U), PLLVE(87 , 3 , 528000000U), PLLVE(88 , 3 , 534000000U), PLLVE(89 , 3 , 540000000U), PLLVE(90 , 3 , 546000000U), PLLVE(22 , 0 , 552000000U), PLLVE(92 , 3 , 558000000U), PLLVE(93 , 3 , 564000000U), PLLVE(94 , 3 , 570000000U), PLLVE(23 , 0 , 576000000U), PLLVE(96 , 3 , 582000000U), PLLVE(97 , 3 , 588000000U), PLLVE(98 , 3 , 594000000U), PLLVE(24 , 0 , 600000000U), PLLVE(100, 3 , 606000000U), PLLVE(101, 3 , 612000000U), PLLVE(102, 3 , 618000000U), PLLVE(25 , 0 , 624000000U), PLLVE(104, 3 , 630000000U), PLLVE(105, 3 , 636000000U), PLLVE(106, 3 , 642000000U), PLLVE(26 , 0 , 648000000U), PLLVE(108, 3 , 654000000U), PLLVE(109, 3 , 660000000U), PLLVE(110, 3 , 666000000U), PLLVE(27 , 0 , 672000000U), PLLVE(112, 3 , 678000000U), PLLVE(113, 3 , 684000000U), PLLVE(114, 3 , 690000000U), PLLVE(28 , 0 , 696000000U), PLLVE(116, 3 , 702000000U), PLLVE(117, 3 , 708000000U), PLLVE(118, 3 , 714000000U), PLLVE(29 , 0 , 720000000U), PLLVE(120, 3 , 726000000U), PLLVE(121, 3 , 732000000U), PLLVE(122, 3 , 738000000U), PLLVE(30 , 0 , 744000000U), PLLVE(124, 3 , 750000000U), PLLVE(125, 3 , 756000000U), PLLVE(126, 3 , 762000000U), PLLVE(31 , 0 , 768000000U), PLLVE(32 , 0 , 792000000U), PLLVE(33 , 0 , 816000000U), PLLVE(34 , 0 , 840000000U), PLLVE(35 , 0 , 864000000U), PLLVE(36 , 0 , 888000000U), PLLVE(37 , 0 , 912000000U), PLLVE(38 , 0 , 936000000U), PLLVE(39 , 0 , 960000000U), PLLVE(40 , 0 , 984000000U), PLLVE(41 , 0 , 1008000000U), }; /* PLLDDR(n, k, m, freq) F_N8X5_K4X2_M0X2 */ struct sunxi_clk_factor_freq factor_pllddr_tbl[] = { PLLDDR(4 , 1 , 3 , 60000000U), PLLDDR(10 , 0 , 3 , 66000000U), PLLDDR(11 , 0 , 3 , 72000000U), PLLDDR(12 , 0 , 3 , 78000000U), PLLDDR(4 , 1 , 2 , 80000000U), PLLDDR(13 , 0 , 3 , 84000000U), PLLDDR(10 , 0 , 2 , 88000000U), PLLDDR(4 , 2 , 3 , 90000000U), PLLDDR(7 , 1 , 3 , 96000000U), PLLDDR(16 , 0 , 3 , 102000000U), PLLDDR(12 , 0 , 2 , 104000000U), PLLDDR(17 , 0 , 3 , 108000000U), PLLDDR(13 , 0 , 2 , 112000000U), PLLDDR(18 , 0 , 3 , 114000000U), PLLDDR(19 , 0 , 3 , 120000000U), PLLDDR(6 , 2 , 3 , 126000000U), PLLDDR(3 , 3 , 2 , 128000000U), PLLDDR(10 , 1 , 3 , 132000000U), PLLDDR(16 , 0 , 2 , 136000000U), PLLDDR(22 , 0 , 3 , 138000000U), PLLDDR(11 , 1 , 3 , 144000000U), PLLDDR(24 , 0 , 3 , 150000000U), PLLDDR(18 , 0 , 2 , 152000000U), PLLDDR(12 , 1 , 3 , 156000000U), PLLDDR(4 , 3 , 2 , 160000000U), PLLDDR(26 , 0 , 3 , 162000000U), PLLDDR(13 , 1 , 3 , 168000000U), PLLDDR(28 , 0 , 3 , 174000000U), PLLDDR(10 , 1 , 2 , 176000000U), PLLDDR(14 , 1 , 3 , 180000000U), PLLDDR(22 , 0 , 2 , 184000000U), PLLDDR(30 , 0 , 3 , 186000000U), PLLDDR(5 , 3 , 2 , 192000000U), PLLDDR(10 , 2 , 3 , 198000000U), PLLDDR(24 , 0 , 2 , 200000000U), PLLDDR(16 , 1 , 3 , 204000000U), PLLDDR(25 , 0 , 2 , 208000000U), PLLDDR(11 , 2 , 3 , 216000000U), PLLDDR(27 , 0 , 2 , 224000000U), PLLDDR(18 , 1 , 3 , 228000000U), PLLDDR(28 , 0 , 2 , 232000000U), PLLDDR(12 , 2 , 3 , 234000000U), PLLDDR(9 , 3 , 3 , 240000000U), PLLDDR(30 , 0 , 2 , 248000000U), PLLDDR(20 , 1 , 3 , 252000000U), PLLDDR(31 , 0 , 2 , 256000000U), PLLDDR(10 , 3 , 3 , 264000000U), PLLDDR(14 , 2 , 3 , 270000000U), PLLDDR(16 , 1 , 2 , 272000000U), PLLDDR(22 , 1 , 3 , 276000000U), PLLDDR(11 , 3 , 3 , 288000000U), PLLDDR(24 , 1 , 3 , 300000000U), PLLDDR(18 , 1 , 2 , 304000000U), PLLDDR(16 , 2 , 3 , 306000000U), PLLDDR(12 , 2 , 2 , 312000000U), PLLDDR(9 , 3 , 2 , 320000000U), PLLDDR(17 , 2 , 3 , 324000000U), PLLDDR(20 , 1 , 2 , 336000000U), PLLDDR(18 , 2 , 3 , 342000000U), PLLDDR(28 , 1 , 3 , 348000000U), PLLDDR(10 , 3 , 2 , 352000000U), PLLDDR(14 , 2 , 2 , 360000000U), PLLDDR(22 , 1 , 2 , 368000000U), PLLDDR(30 , 0 , 1 , 372000000U), PLLDDR(20 , 2 , 3 , 378000000U), PLLDDR(15 , 2 , 2 , 384000000U), PLLDDR(21 , 2 , 3 , 396000000U), PLLDDR(24 , 1 , 2 , 400000000U), PLLDDR(16 , 2 , 2 , 408000000U), PLLDDR(22 , 2 , 3 , 414000000U), PLLDDR(25 , 1 , 2 , 416000000U), PLLDDR(26 , 1 , 2 , 432000000U), PLLDDR(13 , 3 , 2 , 448000000U), PLLDDR(24 , 2 , 3 , 450000000U), PLLDDR(18 , 2 , 2 , 456000000U), PLLDDR(28 , 1 , 2 , 464000000U), PLLDDR(12 , 2 , 1 , 468000000U), PLLDDR(9 , 1 , 0 , 480000000U), PLLDDR(26 , 2 , 3 , 486000000U), PLLDDR(30 , 1 , 2 , 496000000U), PLLDDR(20 , 0 , 0 , 504000000U), PLLDDR(15 , 3 , 2 , 512000000U), PLLDDR(28 , 2 , 3 , 522000000U), PLLDDR(10 , 1 , 0 , 528000000U), PLLDDR(29 , 2 , 3 , 540000000U), PLLDDR(16 , 3 , 2 , 544000000U), PLLDDR(22 , 1 , 1 , 552000000U), PLLDDR(23 , 1 , 1 , 576000000U), PLLDDR(24 , 2 , 2 , 600000000U), PLLDDR(18 , 3 , 2 , 608000000U), PLLDDR(16 , 2 , 1 , 612000000U), PLLDDR(25 , 0 , 0 , 624000000U), PLLDDR(19 , 3 , 2 , 640000000U), PLLDDR(17 , 2 , 1 , 648000000U), PLLDDR(13 , 1 , 0 , 672000000U), PLLDDR(18 , 2 , 1 , 684000000U), PLLDDR(28 , 2 , 2 , 696000000U), PLLDDR(21 , 3 , 2 , 704000000U), PLLDDR(9 , 2 , 0 , 720000000U), PLLDDR(30 , 0 , 0 , 744000000U), PLLDDR(20 , 2 , 1 , 756000000U), PLLDDR(7 , 3 , 0 , 768000000U), PLLDDR(10 , 2 , 0 , 792000000U), PLLDDR(16 , 1 , 0 , 816000000U), PLLDDR(22 , 2 , 1 , 828000000U), PLLDDR(8 , 3 , 0 , 864000000U), PLLDDR(24 , 2 , 1 , 900000000U), PLLDDR(18 , 1 , 0 , 912000000U), PLLDDR(12 , 2 , 0 , 936000000U), PLLDDR(9 , 3 , 0 , 960000000U), PLLDDR(26 , 2 , 1 , 972000000U), PLLDDR(20 , 1 , 0 , 1008000000U), PLLDDR(28 , 2 , 1 , 1044000000U), PLLDDR(21 , 1 , 0 , 1056000000U), PLLDDR(29 , 2 , 1 , 1080000000U), PLLDDR(22 , 1 , 0 , 1104000000U), PLLDDR(15 , 2 , 0 , 1152000000U), PLLDDR(24 , 1 , 0 , 1200000000U), PLLDDR(16 , 2 , 0 , 1224000000U), PLLDDR(25 , 1 , 0 , 1248000000U), PLLDDR(26 , 1 , 0 , 1296000000U), PLLDDR(27 , 1 , 0 , 1344000000U), PLLDDR(18 , 2 , 0 , 1368000000U), PLLDDR(28 , 1 , 0 , 1392000000U), PLLDDR(19 , 2 , 0 , 1440000000U), PLLDDR(30 , 1 , 0 , 1488000000U), PLLDDR(20 , 2 , 0 , 1512000000U), PLLDDR(15 , 3 , 0 , 1536000000U), PLLDDR(21 , 2 , 0 , 1584000000U), PLLDDR(16 , 3 , 0 , 1632000000U), PLLDDR(22 , 2 , 0 , 1656000000U), PLLDDR(23 , 2 , 0 , 1728000000U), PLLDDR(24 , 2 , 0 , 1800000000U), PLLDDR(18 , 3 , 0 , 1824000000U), PLLDDR(25 , 2 , 0 , 1872000000U), PLLDDR(19 , 3 , 0 , 1920000000U), PLLDDR(26 , 2 , 0 , 1944000000U), PLLDDR(20 , 3 , 0 , 2016000000U), PLLDDR(28 , 2 , 0 , 2088000000U), PLLDDR(21 , 3 , 0 , 2112000000U), PLLDDR(29 , 2 , 0 , 2160000000U), }; /* PLLPERIPH0(n, k, freq) F_N8X5_K4X2 */ struct sunxi_clk_factor_freq factor_pllperiph0_tbl[] = { PLLPERIPH0(7 , 0 , 96000000U), PLLPERIPH0(8 , 0 , 108000000U), PLLPERIPH0(4 , 1 , 120000000U), PLLPERIPH0(10 , 0 , 132000000U), PLLPERIPH0(3 , 2 , 144000000U), PLLPERIPH0(12 , 0 , 156000000U), PLLPERIPH0(6 , 1 , 168000000U), PLLPERIPH0(14 , 0 , 180000000U), PLLPERIPH0(3 , 3 , 192000000U), PLLPERIPH0(16 , 0 , 204000000U), PLLPERIPH0(17 , 0 , 216000000U), PLLPERIPH0(18 , 0 , 228000000U), PLLPERIPH0(9 , 1 , 240000000U), PLLPERIPH0(20 , 0 , 252000000U), PLLPERIPH0(10 , 1 , 264000000U), PLLPERIPH0(22 , 0 , 276000000U), PLLPERIPH0(5 , 3 , 288000000U), PLLPERIPH0(24 , 0 , 300000000U), PLLPERIPH0(25 , 0 , 312000000U), PLLPERIPH0(8 , 2 , 324000000U), PLLPERIPH0(13 , 1 , 336000000U), PLLPERIPH0(28 , 0 , 348000000U), PLLPERIPH0(9 , 2 , 360000000U), PLLPERIPH0(30 , 0 , 372000000U), PLLPERIPH0(7 , 3 , 384000000U), PLLPERIPH0(10 , 2 , 396000000U), PLLPERIPH0(16 , 1 , 408000000U), PLLPERIPH0(8 , 3 , 432000000U), PLLPERIPH0(18 , 1 , 456000000U), PLLPERIPH0(12 , 2 , 468000000U), PLLPERIPH0(19 , 1 , 480000000U), PLLPERIPH0(20 , 1 , 504000000U), PLLPERIPH0(21 , 1 , 528000000U), PLLPERIPH0(14 , 2 , 540000000U), PLLPERIPH0(22 , 1 , 552000000U), PLLPERIPH0(23 , 1 , 576000000U), PLLPERIPH0(24 , 1 , 600000000U), PLLPERIPH0(16 , 2 , 612000000U), PLLPERIPH0(12 , 3 , 624000000U), PLLPERIPH0(17 , 2 , 648000000U), PLLPERIPH0(27 , 1 , 672000000U), PLLPERIPH0(18 , 2 , 684000000U), PLLPERIPH0(28 , 1 , 696000000U), PLLPERIPH0(14 , 3 , 720000000U), PLLPERIPH0(30 , 1 , 744000000U), PLLPERIPH0(20 , 2 , 756000000U), PLLPERIPH0(15 , 3 , 768000000U), PLLPERIPH0(21 , 2 , 792000000U), PLLPERIPH0(16 , 3 , 816000000U), PLLPERIPH0(22 , 2 , 828000000U), PLLPERIPH0(23 , 2 , 864000000U), PLLPERIPH0(24 , 2 , 900000000U), PLLPERIPH0(18 , 3 , 912000000U), PLLPERIPH0(25 , 2 , 936000000U), PLLPERIPH0(19 , 3 , 960000000U), PLLPERIPH0(26 , 2 , 972000000U), PLLPERIPH0(27 , 2 , 1008000000U), PLLPERIPH0(28 , 2 , 1044000000U), PLLPERIPH0(21 , 3 , 1056000000U), PLLPERIPH0(29 , 2 , 1080000000U), }; /* PLLPERIPH1(n, k, freq) F_N8X5_K4X2 */ struct sunxi_clk_factor_freq factor_pllperiph1_tbl[] = { PLLPERIPH1(6 , 0 , 84000000U), PLLPERIPH1(7 , 0 , 96000000U), PLLPERIPH1(2 , 2 , 108000000U), PLLPERIPH1(9 , 0 , 120000000U), PLLPERIPH1(10 , 0 , 132000000U), PLLPERIPH1(11 , 0 , 144000000U), PLLPERIPH1(12 , 0 , 156000000U), PLLPERIPH1(6 , 1 , 168000000U), PLLPERIPH1(14 , 0 , 180000000U), PLLPERIPH1(7 , 1 , 192000000U), PLLPERIPH1(16 , 0 , 204000000U), PLLPERIPH1(17 , 0 , 216000000U), PLLPERIPH1(18 , 0 , 228000000U), PLLPERIPH1(4 , 3 , 240000000U), PLLPERIPH1(6 , 2 , 252000000U), PLLPERIPH1(21 , 0 , 264000000U), PLLPERIPH1(22 , 0 , 276000000U), PLLPERIPH1(5 , 3 , 288000000U), PLLPERIPH1(24 , 0 , 300000000U), PLLPERIPH1(12 , 1 , 312000000U), PLLPERIPH1(26 , 0 , 324000000U), PLLPERIPH1(13 , 1 , 336000000U), PLLPERIPH1(28 , 0 , 348000000U), PLLPERIPH1(14 , 1 , 360000000U), PLLPERIPH1(30 , 0 , 372000000U), PLLPERIPH1(10 , 2 , 396000000U), PLLPERIPH1(16 , 1 , 408000000U), PLLPERIPH1(17 , 1 , 432000000U), PLLPERIPH1(18 , 1 , 456000000U), PLLPERIPH1(12 , 2 , 468000000U), PLLPERIPH1(19 , 1 , 480000000U), PLLPERIPH1(20 , 1 , 504000000U), PLLPERIPH1(21 , 1 , 528000000U), PLLPERIPH1(14 , 2 , 540000000U), PLLPERIPH1(22 , 1 , 552000000U), PLLPERIPH1(11 , 3 , 576000000U), PLLPERIPH1(24 , 1 , 600000000U), PLLPERIPH1(16 , 2 , 612000000U), PLLPERIPH1(12 , 3 , 624000000U), PLLPERIPH1(26 , 1 , 648000000U), PLLPERIPH1(13 , 3 , 672000000U), PLLPERIPH1(18 , 2 , 684000000U), PLLPERIPH1(28 , 1 , 696000000U), PLLPERIPH1(14 , 3 , 720000000U), PLLPERIPH1(30 , 1 , 744000000U), PLLPERIPH1(20 , 2 , 756000000U), PLLPERIPH1(15 , 3 , 768000000U), PLLPERIPH1(21 , 2 , 792000000U), PLLPERIPH1(16 , 3 , 816000000U), PLLPERIPH1(22 , 2 , 828000000U), PLLPERIPH1(17 , 3 , 864000000U), PLLPERIPH1(24 , 2 , 900000000U), PLLPERIPH1(18 , 3 , 912000000U), PLLPERIPH1(25 , 2 , 936000000U), PLLPERIPH1(19 , 3 , 960000000U), PLLPERIPH1(26 , 2 , 972000000U), PLLPERIPH1(20 , 3 , 1008000000U), PLLPERIPH1(28 , 2 , 1044000000U), }; /* PLLGPU(n, m, freq) F_N8X7_M0X4 */ struct sunxi_clk_factor_freq factor_pllgpu_tbl[] = { PLLGPU(5 , 0 , 144000000U), PLLGPU(24 , 3 , 150000000U), PLLGPU(18 , 2 , 152000000U), PLLGPU(12 , 1 , 156000000U), PLLGPU(19 , 2 , 160000000U), PLLGPU(26 , 3 , 162000000U), PLLGPU(6 , 0 , 168000000U), PLLGPU(28 , 3 , 174000000U), PLLGPU(21 , 2 , 176000000U), PLLGPU(14 , 1 , 180000000U), PLLGPU(60 , 7 , 183000000U), PLLGPU(22 , 2 , 184000000U), PLLGPU(30 , 3 , 186000000U), PLLGPU(62 , 7 , 189000000U), PLLGPU(23 , 2 , 192000000U), PLLGPU(64 , 7 , 195000000U), PLLGPU(32 , 3 , 198000000U), PLLGPU(24 , 2 , 200000000U), PLLGPU(66 , 7 , 201000000U), PLLGPU(16 , 1 , 204000000U), PLLGPU(68 , 7 , 207000000U), PLLGPU(25 , 2 , 208000000U), PLLGPU(69 , 7 , 210000000U), PLLGPU(70 , 7 , 213000000U), PLLGPU(8 , 0 , 216000000U), PLLGPU(72 , 7 , 219000000U), PLLGPU(36 , 3 , 222000000U), PLLGPU(27 , 2 , 224000000U), PLLGPU(74 , 7 , 225000000U), PLLGPU(37 , 3 , 228000000U), PLLGPU(76 , 7 , 231000000U), PLLGPU(28 , 2 , 232000000U), PLLGPU(38 , 3 , 234000000U), PLLGPU(78 , 7 , 237000000U), PLLGPU(19 , 1 , 240000000U), PLLGPU(80 , 7 , 243000000U), PLLGPU(40 , 3 , 246000000U), PLLGPU(30 , 2 , 248000000U), PLLGPU(82 , 7 , 249000000U), PLLGPU(20 , 1 , 252000000U), PLLGPU(84 , 7 , 255000000U), PLLGPU(31 , 2 , 256000000U), PLLGPU(42 , 3 , 258000000U), PLLGPU(86 , 7 , 261000000U), PLLGPU(10 , 0 , 264000000U), PLLGPU(88 , 7 , 267000000U), PLLGPU(44 , 3 , 270000000U), PLLGPU(33 , 2 , 272000000U), PLLGPU(90 , 7 , 273000000U), PLLGPU(45 , 3 , 276000000U), PLLGPU(92 , 7 , 279000000U), PLLGPU(34 , 2 , 280000000U), PLLGPU(46 , 3 , 282000000U), PLLGPU(94 , 7 , 285000000U), PLLGPU(23 , 1 , 288000000U), PLLGPU(96 , 7 , 291000000U), PLLGPU(48 , 3 , 294000000U), PLLGPU(36 , 2 , 296000000U), PLLGPU(98 , 7 , 297000000U), PLLGPU(24 , 1 , 300000000U), PLLGPU(100, 7 , 303000000U), PLLGPU(37 , 2 , 304000000U), PLLGPU(50 , 3 , 306000000U), PLLGPU(102, 7 , 309000000U), PLLGPU(25 , 1 , 312000000U), PLLGPU(104, 7 , 315000000U), PLLGPU(52 , 3 , 318000000U), PLLGPU(39 , 2 , 320000000U), PLLGPU(106, 7 , 321000000U), PLLGPU(26 , 1 , 324000000U), PLLGPU(108, 7 , 327000000U), PLLGPU(40 , 2 , 328000000U), PLLGPU(54 , 3 , 330000000U), PLLGPU(110, 7 , 333000000U), PLLGPU(13 , 0 , 336000000U), PLLGPU(112, 7 , 339000000U), PLLGPU(56 , 3 , 342000000U), PLLGPU(114, 7 , 345000000U), PLLGPU(28 , 1 , 348000000U), PLLGPU(116, 7 , 351000000U), PLLGPU(58 , 3 , 354000000U), PLLGPU(118, 7 , 357000000U), PLLGPU(14 , 0 , 360000000U), PLLGPU(120, 7 , 363000000U), PLLGPU(60 , 3 , 366000000U), PLLGPU(122, 7 , 369000000U), PLLGPU(30 , 1 , 372000000U), PLLGPU(124, 7 , 375000000U), PLLGPU(62 , 3 , 378000000U), PLLGPU(126, 7 , 381000000U), PLLGPU(31 , 1 , 384000000U), PLLGPU(64 , 3 , 390000000U), PLLGPU(32 , 1 , 396000000U), PLLGPU(66 , 3 , 402000000U), PLLGPU(16 , 0 , 408000000U), PLLGPU(68 , 3 , 414000000U), PLLGPU(34 , 1 , 420000000U), PLLGPU(70 , 3 , 426000000U), PLLGPU(17 , 0 , 432000000U), PLLGPU(72 , 3 , 438000000U), PLLGPU(36 , 1 , 444000000U), PLLGPU(74 , 3 , 450000000U), PLLGPU(18 , 0 , 456000000U), PLLGPU(76 , 3 , 462000000U), PLLGPU(38 , 1 , 468000000U), PLLGPU(78 , 3 , 474000000U), PLLGPU(19 , 0 , 480000000U), PLLGPU(80 , 3 , 486000000U), PLLGPU(40 , 1 , 492000000U), PLLGPU(82 , 3 , 498000000U), PLLGPU(20 , 0 , 504000000U), PLLGPU(84 , 3 , 510000000U), PLLGPU(85 , 3 , 516000000U), PLLGPU(86 , 3 , 522000000U), PLLGPU(21 , 0 , 528000000U), PLLGPU(88 , 3 , 534000000U), PLLGPU(89 , 3 , 540000000U), PLLGPU(90 , 3 , 546000000U), PLLGPU(22 , 0 , 552000000U), PLLGPU(92 , 3 , 558000000U), PLLGPU(93 , 3 , 564000000U), PLLGPU(94 , 3 , 570000000U), PLLGPU(23 , 0 , 576000000U), PLLGPU(96 , 3 , 582000000U), PLLGPU(97 , 3 , 588000000U), PLLGPU(98 , 3 , 594000000U), PLLGPU(24 , 0 , 600000000U), PLLGPU(100, 3 , 606000000U), PLLGPU(101, 3 , 612000000U), PLLGPU(102, 3 , 618000000U), PLLGPU(25 , 0 , 624000000U), PLLGPU(104, 3 , 630000000U), PLLGPU(105, 3 , 636000000U), PLLGPU(106, 3 , 642000000U), PLLGPU(26 , 0 , 648000000U), PLLGPU(108, 3 , 654000000U), PLLGPU(109, 3 , 660000000U), PLLGPU(110, 3 , 666000000U), PLLGPU(27 , 0 , 672000000U), PLLGPU(112, 3 , 678000000U), PLLGPU(113, 3 , 684000000U), PLLGPU(114, 3 , 690000000U), PLLGPU(28 , 0 , 696000000U), PLLGPU(116, 3 , 702000000U), PLLGPU(117, 3 , 708000000U), PLLGPU(118, 3 , 714000000U), PLLGPU(29 , 0 , 720000000U), PLLGPU(120, 3 , 726000000U), PLLGPU(121, 3 , 732000000U), PLLGPU(122, 3 , 738000000U), PLLGPU(30 , 0 , 744000000U), PLLGPU(124, 3 , 750000000U), PLLGPU(125, 3 , 756000000U), PLLGPU(126, 3 , 762000000U), PLLGPU(31 , 0 , 768000000U), PLLGPU(32 , 0 , 792000000U), PLLGPU(33 , 0 , 816000000U), PLLGPU(34 , 0 , 840000000U), PLLGPU(35 , 0 , 864000000U), PLLGPU(36 , 0 , 888000000U), PLLGPU(37 , 0 , 912000000U), PLLGPU(38 , 0 , 936000000U), PLLGPU(39 , 0 , 960000000U), PLLGPU(40 , 0 , 984000000U), PLLGPU(41 , 0 , 1008000000U), }; /* PLLDE(n, m, freq) F_N8X7_M0X4 */ struct sunxi_clk_factor_freq factor_pllde_tbl[] = { PLLDE(4 , 0 , 120000000U), PLLDE(15 , 2 , 128000000U), PLLDE(10 , 1 , 132000000U), PLLDE(16 , 2 , 136000000U), PLLDE(5 , 0 , 144000000U), PLLDE(18 , 2 , 152000000U), PLLDE(12 , 1 , 156000000U), PLLDE(19 , 2 , 160000000U), PLLDE(26 , 3 , 162000000U), PLLDE(13 , 1 , 168000000U), PLLDE(28 , 3 , 174000000U), PLLDE(21 , 2 , 176000000U), PLLDE(58 , 7 , 177000000U), PLLDE(14 , 1 , 180000000U), PLLDE(60 , 7 , 183000000U), PLLDE(22 , 2 , 184000000U), PLLDE(30 , 3 , 186000000U), PLLDE(62 , 7 , 189000000U), PLLDE(7 , 0 , 192000000U), PLLDE(64 , 7 , 195000000U), PLLDE(32 , 3 , 198000000U), PLLDE(24 , 2 , 200000000U), PLLDE(66 , 7 , 201000000U), PLLDE(16 , 1 , 204000000U), PLLDE(68 , 7 , 207000000U), PLLDE(25 , 2 , 208000000U), PLLDE(34 , 3 , 210000000U), PLLDE(70 , 7 , 213000000U), PLLDE(8 , 0 , 216000000U), PLLDE(72 , 7 , 219000000U), PLLDE(36 , 3 , 222000000U), PLLDE(27 , 2 , 224000000U), PLLDE(74 , 7 , 225000000U), PLLDE(18 , 1 , 228000000U), PLLDE(76 , 7 , 231000000U), PLLDE(28 , 2 , 232000000U), PLLDE(38 , 3 , 234000000U), PLLDE(78 , 7 , 237000000U), PLLDE(9 , 0 , 240000000U), PLLDE(80 , 7 , 243000000U), PLLDE(40 , 3 , 246000000U), PLLDE(30 , 2 , 248000000U), PLLDE(82 , 7 , 249000000U), PLLDE(20 , 1 , 252000000U), PLLDE(84 , 7 , 255000000U), PLLDE(31 , 2 , 256000000U), PLLDE(42 , 3 , 258000000U), PLLDE(86 , 7 , 261000000U), PLLDE(10 , 0 , 264000000U), PLLDE(88 , 7 , 267000000U), PLLDE(44 , 3 , 270000000U), PLLDE(33 , 2 , 272000000U), PLLDE(90 , 7 , 273000000U), PLLDE(22 , 1 , 276000000U), PLLDE(92 , 7 , 279000000U), PLLDE(34 , 2 , 280000000U), PLLDE(46 , 3 , 282000000U), PLLDE(94 , 7 , 285000000U), PLLDE(11 , 0 , 288000000U), PLLDE(96 , 7 , 291000000U), PLLDE(48 , 3 , 294000000U), PLLDE(36 , 2 , 296000000U), PLLDE(98 , 7 , 297000000U), PLLDE(24 , 1 , 300000000U), PLLDE(100, 7 , 303000000U), PLLDE(37 , 2 , 304000000U), PLLDE(50 , 3 , 306000000U), PLLDE(102, 7 , 309000000U), PLLDE(12 , 0 , 312000000U), PLLDE(104, 7 , 315000000U), PLLDE(52 , 3 , 318000000U), PLLDE(39 , 2 , 320000000U), PLLDE(106, 7 , 321000000U), PLLDE(26 , 1 , 324000000U), PLLDE(108, 7 , 327000000U), PLLDE(40 , 2 , 328000000U), PLLDE(54 , 3 , 330000000U), PLLDE(110, 7 , 333000000U), PLLDE(13 , 0 , 336000000U), PLLDE(112, 7 , 339000000U), PLLDE(56 , 3 , 342000000U), PLLDE(114, 7 , 345000000U), PLLDE(28 , 1 , 348000000U), PLLDE(116, 7 , 351000000U), PLLDE(58 , 3 , 354000000U), PLLDE(118, 7 , 357000000U), PLLDE(29 , 1 , 360000000U), PLLDE(120, 7 , 363000000U), PLLDE(121, 7 , 366000000U), PLLDE(122, 7 , 369000000U), PLLDE(30 , 1 , 372000000U), PLLDE(124, 7 , 375000000U), PLLDE(62 , 3 , 378000000U), PLLDE(126, 7 , 381000000U), PLLDE(31 , 1 , 384000000U), PLLDE(64 , 3 , 390000000U), PLLDE(32 , 1 , 396000000U), PLLDE(66 , 3 , 402000000U), PLLDE(33 , 1 , 408000000U), PLLDE(68 , 3 , 414000000U), PLLDE(34 , 1 , 420000000U), PLLDE(70 , 3 , 426000000U), PLLDE(35 , 1 , 432000000U), PLLDE(72 , 3 , 438000000U), PLLDE(36 , 1 , 444000000U), PLLDE(74 , 3 , 450000000U), PLLDE(18 , 0 , 456000000U), PLLDE(76 , 3 , 462000000U), PLLDE(38 , 1 , 468000000U), PLLDE(78 , 3 , 474000000U), PLLDE(19 , 0 , 480000000U), PLLDE(80 , 3 , 486000000U), PLLDE(40 , 1 , 492000000U), PLLDE(82 , 3 , 498000000U), PLLDE(41 , 1 , 504000000U), PLLDE(84 , 3 , 510000000U), PLLDE(85 , 3 , 516000000U), PLLDE(86 , 3 , 522000000U), PLLDE(21 , 0 , 528000000U), PLLDE(88 , 3 , 534000000U), PLLDE(89 , 3 , 540000000U), PLLDE(90 , 3 , 546000000U), PLLDE(22 , 0 , 552000000U), PLLDE(92 , 3 , 558000000U), PLLDE(93 , 3 , 564000000U), PLLDE(94 , 3 , 570000000U), PLLDE(23 , 0 , 576000000U), PLLDE(96 , 3 , 582000000U), PLLDE(97 , 3 , 588000000U), PLLDE(98 , 3 , 594000000U), PLLDE(24 , 0 , 600000000U), PLLDE(100, 3 , 606000000U), PLLDE(101, 3 , 612000000U), PLLDE(102, 3 , 618000000U), PLLDE(25 , 0 , 624000000U), PLLDE(104, 3 , 630000000U), PLLDE(105, 3 , 636000000U), PLLDE(106, 3 , 642000000U), PLLDE(26 , 0 , 648000000U), PLLDE(108, 3 , 654000000U), PLLDE(109, 3 , 660000000U), PLLDE(110, 3 , 666000000U), PLLDE(27 , 0 , 672000000U), PLLDE(112, 3 , 678000000U), PLLDE(113, 3 , 684000000U), PLLDE(114, 3 , 690000000U), PLLDE(28 , 0 , 696000000U), PLLDE(116, 3 , 702000000U), PLLDE(117, 3 , 708000000U), PLLDE(118, 3 , 714000000U), PLLDE(29 , 0 , 720000000U), PLLDE(120, 3 , 726000000U), PLLDE(121, 3 , 732000000U), PLLDE(122, 3 , 738000000U), PLLDE(30 , 0 , 744000000U), PLLDE(124, 3 , 750000000U), PLLDE(125, 3 , 756000000U), PLLDE(126, 3 , 762000000U), PLLDE(31 , 0 , 768000000U), PLLDE(32 , 0 , 792000000U), PLLDE(33 , 0 , 816000000U), PLLDE(34 , 0 , 840000000U), PLLDE(35 , 0 , 864000000U), PLLDE(36 , 0 , 888000000U), PLLDE(37 , 0 , 912000000U), PLLDE(38 , 0 , 936000000U), PLLDE(39 , 0 , 960000000U), PLLDE(40 , 0 , 984000000U), PLLDE(41 , 0 , 1008000000U), }; static unsigned int pllcpu_max, pllvideo_max, pllve_max, pllddr_max, pllperiph0_max, pllperiph1_max, pllgpu_max, pllde_max; #define PLL_MAX_ASSIGN(name) (pll##name##_max = \ factor_pll##name##_tbl[ARRAY_SIZE(factor_pll##name##_tbl)-1].freq) void sunxi_clk_factor_initlimits(void) { PLL_MAX_ASSIGN(cpu); PLL_MAX_ASSIGN(video); PLL_MAX_ASSIGN(ve); PLL_MAX_ASSIGN(ddr); PLL_MAX_ASSIGN(periph0); PLL_MAX_ASSIGN(periph1); PLL_MAX_ASSIGN(gpu); PLL_MAX_ASSIGN(de); }