phy_parameter
struct phy_parameter *phy_parameter;
struct phy_parameter *phy_parameter, u8 data)
+ phy_parameter->efuse_usb_dc_dis
+ phy_parameter->disconnection_compensate;
struct phy_parameter *phy_parameter, bool update)
phy_reg = &phy_parameter->phy_reg;
data = __updated_dc_disconnect_level_page0_0xe4(phy_cfg, phy_parameter, data);
struct phy_parameter *phy_parameter, u8 data)
+ phy_parameter->efuse_usb_dc_dis
+ phy_parameter->disconnection_compensate;
if (phy_parameter->efuse_usb_dc_dis)
val = (s32)(phy_parameter->efuse_usb_dc_dis +
phy_parameter->disconnection_compensate);
phy_parameter->disconnection_compensate);
struct phy_parameter *phy_parameter, bool update)
phy_reg = &phy_parameter->phy_reg;
data = __updated_dc_disconnect_level_page1_0xe2(phy_cfg, phy_parameter, data);
struct phy_parameter *phy_parameter, bool update)
update_dc_disconnect_level_at_page0(rtk_phy, phy_parameter, update);
update_dc_disconnect_level_at_page1(rtk_phy, phy_parameter, update);
struct phy_parameter *phy_parameter, u8 data)
s32 driving_level_compensate = phy_parameter->driving_level_compensate;
+ phy_parameter->efuse_usb_dc_cal;
if (phy_parameter->efuse_usb_dc_cal)
val = (s32)((phy_parameter->efuse_usb_dc_cal & dc_driving_mask)
struct phy_parameter *phy_parameter)
phy_reg = &phy_parameter->phy_reg;
if (phy_parameter->driving_level != DEFAULT_DC_DRIVING_VALUE) {
__func__, driving_level, phy_parameter->driving_level);
(phy_parameter->driving_level & dc_driving_mask);
phy_parameter,
struct phy_parameter *phy_parameter)
phy_reg = &phy_parameter->phy_reg;
if (phy_parameter->inverse_hstx_sync_clock) {
struct phy_parameter *phy_parameter;
phy_parameter = &((struct phy_parameter *)rtk_phy->phy_parameter)[index];
phy_reg = &phy_parameter->phy_reg;
update_dc_disconnect_level(rtk_phy, phy_parameter, false);
update_dc_disconnect_level(rtk_phy, phy_parameter, true);
struct phy_parameter *phy_parameter;
phy_parameter = &((struct phy_parameter *)rtk_phy->phy_parameter)[index];
phy_reg = &phy_parameter->phy_reg;
struct phy_parameter *phy_parameter;
phy_parameter = &((struct phy_parameter *)rtk_phy->phy_parameter)[index];
phy_reg = &phy_parameter->phy_reg;
(int)phy_parameter->efuse_usb_dc_cal);
(int)phy_parameter->efuse_usb_dc_dis);
phy_parameter->inverse_hstx_sync_clock ? "Enable" : "Disable");
phy_parameter->driving_level);
phy_parameter->driving_level_compensate);
phy_parameter->disconnection_compensate);
struct phy_parameter *phy_parameter, int index)
phy_parameter->efuse_usb_dc_cal = (int8_t)(value * rate);
phy_parameter->efuse_usb_dc_cal = -(int8_t)
phy_parameter->efuse_usb_dc_cal = (int8_t)(value);
phy_parameter->efuse_usb_dc_cal = (int8_t)(value + 1);
phy_parameter->efuse_usb_dc_cal = value & phy_cfg->dc_driving_mask;
phy_parameter->efuse_usb_dc_dis = (int8_t)(value * rate);
phy_parameter->efuse_usb_dc_dis = -(int8_t)
phy_parameter->efuse_usb_dc_dis = value & phy_cfg->dc_disconnect_mask;
struct phy_parameter *phy_parameter;
rtk_phy->phy_parameter = devm_kzalloc(dev, sizeof(struct phy_parameter) *
if (!rtk_phy->phy_parameter)
phy_parameter = &((struct phy_parameter *)rtk_phy->phy_parameter)[index];
phy_parameter->phy_reg.reg_wrap_vstatus = of_iomap(np, 0);
phy_parameter->phy_reg.reg_gusb2phyacc0 = of_iomap(np, 1) + index;
phy_parameter->phy_reg.vstatus_index = index;
phy_parameter->inverse_hstx_sync_clock = true;
phy_parameter->inverse_hstx_sync_clock = false;
index, &phy_parameter->driving_level))
phy_parameter->driving_level = DEFAULT_DC_DRIVING_VALUE;
index, &phy_parameter->driving_level_compensate))
phy_parameter->driving_level_compensate = 0;
index, &phy_parameter->disconnection_compensate))
phy_parameter->disconnection_compensate = 0;
get_phy_data_by_efuse(rtk_phy, phy_parameter, index);
update_dc_driving_level(rtk_phy, phy_parameter);
update_hs_clk_select(rtk_phy, phy_parameter);
struct phy_parameter *phy_parameter;
phy_parameter = &((struct phy_parameter *)rtk_phy->phy_parameter)[index];
phy_reg = &phy_parameter->phy_reg;
struct phy_parameter *phy_parameter;
phy_parameter = &((struct phy_parameter *)rtk_phy->phy_parameter)[index];
phy_reg = &phy_parameter->phy_reg;
struct phy_parameter *phy_parameter;
phy_parameter = &((struct phy_parameter *)rtk_phy->phy_parameter)[index];
phy_reg = &phy_parameter->phy_reg;
(int)phy_parameter->efuse_usb_u3_tx_lfps_swing_trim);
(int)phy_parameter->amplitude_control_coarse);
(int)phy_parameter->amplitude_control_fine);
struct phy_parameter *phy_parameter, int index)
phy_parameter->efuse_usb_u3_tx_lfps_swing_trim = 0x8;
phy_parameter->efuse_usb_u3_tx_lfps_swing_trim = (u8)value;
struct phy_parameter *phy_parameter)
phy_reg = &phy_parameter->phy_reg;
if (phy_parameter->amplitude_control_coarse != AMPLITUDE_CONTROL_COARSE_DEFAULT) {
data |= (phy_parameter->amplitude_control_coarse & val_mask);
if (phy_parameter->efuse_usb_u3_tx_lfps_swing_trim) {
u8 efuse_val = phy_parameter->efuse_usb_u3_tx_lfps_swing_trim;
if (phy_parameter->amplitude_control_fine != AMPLITUDE_CONTROL_FINE_DEFAULT) {
phy_parameter->amplitude_control_fine & val_mask;
struct phy_parameter *phy_parameter;
rtk_phy->phy_parameter = devm_kzalloc(dev, sizeof(struct phy_parameter) *
if (!rtk_phy->phy_parameter)
phy_parameter = &((struct phy_parameter *)rtk_phy->phy_parameter)[index];
phy_parameter->phy_reg.reg_mdio_ctl = of_iomap(dev->of_node, 0) + index;
&phy_parameter->amplitude_control_coarse))
phy_parameter->amplitude_control_coarse = AMPLITUDE_CONTROL_COARSE_DEFAULT;
&phy_parameter->amplitude_control_fine))
phy_parameter->amplitude_control_fine = AMPLITUDE_CONTROL_FINE_DEFAULT;
get_phy_data_by_efuse(rtk_phy, phy_parameter, index);
update_amplitude_control_value(rtk_phy, phy_parameter);
struct phy_parameter *phy_parameter;