Lines Matching +full:0 +full:- +full:100
1 // SPDX-License-Identifier: GPL-2.0+
9 #define DEVICE_ID_REG 0x00
13 u8 val = 0; in check_pll_status()
16 ret = i2c_read(idt_addr, 0x17, 1, &val, 1); in check_pll_status()
17 if (ret < 0) { in check_pll_status()
18 printf("IDT:0x%x could not read status register from device.\n", in check_pll_status()
23 if (val & 0x04) { in check_pll_status()
27 return -1; in check_pll_status()
30 return 0; in check_pll_status()
37 u8 dev_id = 0; in set_serdes_refclk()
40 debug("IDT:Configuring idt8t49n222a device at I2C address: 0x%2x\n", in set_serdes_refclk()
44 if (ret < 0) { in set_serdes_refclk()
45 debug("IDT:0x%x could not read DEV_ID from device.\n", in set_serdes_refclk()
50 if ((dev_id != 0x00) && (dev_id != 0x24) && (dev_id != 0x2a)) { in set_serdes_refclk()
51 debug("IDT: device at address 0x%x is not idt8t49n222a.\n", in set_serdes_refclk()
58 return -1; in set_serdes_refclk()
67 return -1; in set_serdes_refclk()
73 debug("refclk1 should be 100MHZ, 122.88MHz, 125MHz" in set_serdes_refclk()
75 return -1; in set_serdes_refclk()
81 debug("refclk2 should be 100MHZ, 122.88MHz, 125MHz" in set_serdes_refclk()
83 return -1; in set_serdes_refclk()
86 if (feedback != 0 && feedback != 1) { in set_serdes_refclk()
87 debug("valid values for feedback are 0(default) or 1.\n"); in set_serdes_refclk()
88 return -1; in set_serdes_refclk()
97 for (i = 0; i < NUM_IDT_REGS; i++) in set_serdes_refclk()
98 i2c_reg_write(idt_addr, idt_conf_122_88[i][0], in set_serdes_refclk()
102 for (i = 0; i < NUM_IDT_REGS_FEEDBACK; i++) in set_serdes_refclk()
104 idt_conf_122_88_feedback[i][0], in set_serdes_refclk()
111 for (i = 0; i < NUM_IDT_REGS; i++) in set_serdes_refclk()
112 i2c_reg_write(idt_addr, idt_conf_not_122_88[i][0], in set_serdes_refclk()
117 * Refclk1 = 100MHz Refclk2 = 125MHz in set_serdes_refclk()
120 printf("Setting refclk1:100 and refclk2:125\n"); in set_serdes_refclk()
121 i2c_reg_write(idt_addr, 0x11, 0x10); in set_serdes_refclk()
129 i2c_reg_write(idt_addr, 0x10, 0x10); in set_serdes_refclk()
130 i2c_reg_write(idt_addr, 0x11, 0x10); in set_serdes_refclk()
134 * Refclk1 = 125MHz Refclk2 = 100MHz in set_serdes_refclk()
137 printf("Setting refclk1:125 and refclk2:100\n"); in set_serdes_refclk()
138 i2c_reg_write(idt_addr, 0x10, 0x10); in set_serdes_refclk()
147 for (i = 0; i < NUM_IDT_REGS_156_25; i++) in set_serdes_refclk()
148 i2c_reg_write(idt_addr, idt_conf_156_25[i][0], in set_serdes_refclk()
153 * Refclk1 = 100MHz Refclk2 = 156.25MHz in set_serdes_refclk()
157 printf("Setting refclk1:100 and refclk2:156.25\n"); in set_serdes_refclk()
158 for (i = 0; i < NUM_IDT_REGS_156_25; i++) in set_serdes_refclk()
159 i2c_reg_write(idt_addr, idt_conf_100_156_25[i][0], in set_serdes_refclk()
169 for (i = 0; i < NUM_IDT_REGS_156_25; i++) in set_serdes_refclk()
170 i2c_reg_write(idt_addr, idt_conf_125_156_25[i][0], in set_serdes_refclk()
175 * Refclk1 = 156.25MHz Refclk2 = 100MHz in set_serdes_refclk()
179 printf("Setting refclk1:156.25 and refclk2:100\n"); in set_serdes_refclk()
180 for (i = 0; i < NUM_IDT_REGS_156_25; i++) in set_serdes_refclk()
181 i2c_reg_write(idt_addr, idt_conf_156_25_100[i][0], in set_serdes_refclk()
191 for (i = 0; i < NUM_IDT_REGS_156_25; i++) in set_serdes_refclk()
192 i2c_reg_write(idt_addr, idt_conf_156_25_125[i][0], in set_serdes_refclk()
202 return -1; in set_serdes_refclk()
205 return 0; in set_serdes_refclk()