System.out.println("Act. freq=" + freq);
	public final void calcForConfiguration(FBInfo fbinfo, int freq, PLLInfo info) {		final FPIBlock fpi = fbinfo.getFpi();		if ((fpi != null) && fpi.useBiosDividers() && false) {			this.ppll_ref_div = fpi.getBiosRefDivider();			this.ppll_div_3 = (fpi.getBiosFeedbackDivider() | (fpi.getBiosPostDivider() << 16));			this.htotal_cntl = 0;		} else {			// formula is for generated frequency is:			//   (ref_freq * feedback_div) / (ref_div * post_div )			System.out.println("Req. freq=" + freq);			int pll_output_freq = 0;			final int ppll_max = info.getMaxPllFreq();			final int ppll_min = info.getMinPllFreq();			freq = Math.min(freq, ppll_max);			if (freq * 12 < ppll_min) {				freq = ppll_min / 12;			}			System.out.println("Act. freq=" + freq);			// find proper divider by trial-and-error			int bitvalue;			for (bitvalue = 0; bitvalue < DIVIDERS.length; bitvalue++) {				pll_output_freq = DIVIDERS[bitvalue] * freq;				System.out.println("bitvalue=" + bitvalue + ", post_div="						+ pll_output_freq);				if (pll_output_freq >= ppll_min && pll_output_freq <= ppll_max) {					break;				}			}			if (bitvalue >= DIVIDERS.length) {				throw new IllegalArgumentException("Frequency (" + freq						+ " kHz) is out of PLL range!");			}			final int ref_clk = info.getRef_clk();			final int ref_div = info.getRef_div();			final int feedback_div = (ref_div * pll_output_freq) / ref_clk;			this.ppll_ref_div = ref_div;			this.ppll_div_3 = (feedback_div | (bitvalue << 16));			this.htotal_cntl = 0;			final int vclk_freq = (ref_clk * feedback_div)					/ (ref_div * pll_output_freq);			System.out.println("vclk_freq=" + vclk_freq + ", fbdiv="					+ feedback_div + ", postdiv=" + pll_output_freq					+ ", bitvalue=" + bitvalue);		}	}