URE_MCU_TYPE_USB
URE_CLRBIT_2(sc, URE_USB_UPS_CTRL, URE_MCU_TYPE_USB, URE_POWER_CUT);
URE_CLRBIT_2(sc, URE_USB_PM_CTRL_STATUS, URE_MCU_TYPE_USB,
URE_CLRBIT_2(sc, URE_USB_USB_CTRL, URE_MCU_TYPE_USB,
URE_CLRBIT_2(sc, URE_USB_U2P3_CTRL, URE_MCU_TYPE_USB, URE_U2P3_ENABLE);
reg = ure_read_2(sc, URE_USB_SSPHYLINK2, URE_MCU_TYPE_USB);
ure_write_2(sc, URE_USB_SSPHYLINK2, URE_MCU_TYPE_USB, reg);
URE_SETBIT_1(sc, URE_USB_USB2PHY, URE_MCU_TYPE_USB,
if (ure_read_2(sc, URE_USB_BURST_SIZE, URE_MCU_TYPE_USB))
URE_SETBIT_1(sc, URE_USB_CSR_DUMMY1, URE_MCU_TYPE_USB,
URE_CLRBIT_1(sc, URE_USB_CSR_DUMMY1, URE_MCU_TYPE_USB,
URE_SETBIT_1(sc, URE_USB_CSR_DUMMY2, URE_MCU_TYPE_USB, URE_EP4_FULL_FC);
URE_CLRBIT_2(sc, URE_USB_WDT11_CTRL, URE_MCU_TYPE_USB, URE_TIMER11_EN);
ure_write_1(sc, URE_USB_LPM_CTRL, URE_MCU_TYPE_USB,
reg = ure_read_2(sc, URE_USB_AFE_CTRL2, URE_MCU_TYPE_USB);
ure_write_2(sc, URE_USB_AFE_CTRL2, URE_MCU_TYPE_USB, reg);
ure_write_2(sc, URE_USB_CONNECT_TIMER, URE_MCU_TYPE_USB, 0x0001);
URE_CLRBIT_2(sc, URE_USB_POWER_CUT, URE_MCU_TYPE_USB,
URE_CLRBIT_2(sc, URE_USB_MISC_0, URE_MCU_TYPE_USB, URE_PCUT_STATUS);
URE_CLRBIT_2(sc, URE_USB_USB_CTRL, URE_MCU_TYPE_USB,
URE_CLRBIT_1(sc, URE_USB_ECM_OP, URE_MCU_TYPE_USB,
ure_write_2(sc, URE_USB_SPEED_OPTION, URE_MCU_TYPE_USB, 0);
URE_SETBIT_2(sc, URE_USB_ECM_OPTION, URE_MCU_TYPE_USB,
URE_SETBIT_2(sc, URE_USB_U2P3_CTRL, URE_MCU_TYPE_USB,
URE_CLRBIT_2(sc, URE_USB_LPM_CONFIG, URE_MCU_TYPE_USB, LPM_U1U2_EN);
URE_CLRBIT_2(sc, URE_USB_U2P3_CTRL, URE_MCU_TYPE_USB, URE_U2P3_ENABLE);
ure_write_2(sc, URE_USB_MSC_TIMER, URE_MCU_TYPE_USB, 4095);
ure_write_2(sc, URE_USB_U1U2_TIMER, URE_MCU_TYPE_USB, 500);
URE_CLRBIT_2(sc, URE_USB_POWER_CUT, URE_MCU_TYPE_USB, URE_PWR_EN);
URE_CLRBIT_2(sc, URE_USB_MISC_0, URE_MCU_TYPE_USB, URE_PCUT_STATUS);
URE_CLRBIT_1(sc, URE_USB_POWER_CUT, URE_MCU_TYPE_USB,
URE_CLRBIT_1(sc, URE_USB_MISC_2, URE_MCU_TYPE_USB,
URE_SETBIT_2(sc, URE_USB_LPM_CONFIG, URE_MCU_TYPE_USB,
ure_write_2(sc, URE_USB_FC_TIMER, URE_MCU_TYPE_USB,
reg = ure_read_2(sc, URE_USB_FW_CTRL, URE_MCU_TYPE_USB);
ure_write_2(sc, URE_USB_FW_CTRL, URE_MCU_TYPE_USB, reg);
URE_SETBIT_2(sc, URE_USB_FW_TASK, URE_MCU_TYPE_USB,
URE_CLRBIT_2(sc, URE_USB_USB_CTRL, URE_MCU_TYPE_USB,
URE_SETBIT_1(sc, URE_USB_BMU_CONFIG, URE_MCU_TYPE_USB,
URE_SETBIT_1(sc, 0xcffe, URE_MCU_TYPE_USB, 0x0008);
URE_CLRBIT_1(sc, 0xd3ca, URE_MCU_TYPE_USB, 0x0001);
URE_CLRBIT_1(sc, URE_USB_ECM_OP, URE_MCU_TYPE_USB, URE_EN_ALL_SPEED);
URE_SETBIT_2(sc, URE_USB_ECM_OPTION, URE_MCU_TYPE_USB,
URE_SETBIT_2(sc, URE_USB_U2P3_CTRL, URE_MCU_TYPE_USB, URE_RX_DETECT8);
URE_CLRBIT_2(sc, URE_USB_LPM_CONFIG, URE_MCU_TYPE_USB, LPM_U1U2_EN);
URE_CLRBIT_1(sc, 0xcf04, URE_MCU_TYPE_USB, 0x87);
URE_CLRBIT_2(sc, URE_USB_SPEED_OPTION, URE_MCU_TYPE_USB,
URE_SETBIT_2(sc, URE_USB_FW_CTRL, URE_MCU_TYPE_USB, URE_AUTO_SPEEDUP);
ure_write_2(sc, URE_USB_MSC_TIMER, URE_MCU_TYPE_USB, 4095);
ure_write_2(sc, URE_USB_U1U2_TIMER, URE_MCU_TYPE_USB, 500);
URE_CLRBIT_2(sc, URE_USB_POWER_CUT, URE_MCU_TYPE_USB, URE_PWR_EN);
URE_CLRBIT_2(sc, URE_USB_MISC_0, URE_MCU_TYPE_USB, URE_PCUT_STATUS);
URE_CLRBIT_1(sc, URE_USB_MISC_2, URE_MCU_TYPE_USB, 0x02);
ure_write_2(sc, URE_USB_FC_TIMER, URE_MCU_TYPE_USB,
reg = ure_read_2(sc, URE_USB_FW_CTRL, URE_MCU_TYPE_USB);
ure_write_2(sc, URE_USB_FW_CTRL, URE_MCU_TYPE_USB, reg);
URE_SETBIT_2(sc, URE_USB_FW_TASK, URE_MCU_TYPE_USB, URE_FC_PATCH_TASK);
URE_CLRBIT_2(sc, URE_USB_USB_CTRL, URE_MCU_TYPE_USB,
URE_CLRBIT_1(sc, 0xd4ae, URE_MCU_TYPE_USB, 0x02);
ure_write_1(sc, URE_USB_TX_AGG, URE_MCU_TYPE_USB,
ure_write_4(sc, URE_USB_RX_BUF_TH, URE_MCU_TYPE_USB, URE_RX_THR_HIGH);
ure_write_4(sc, URE_USB_TX_DMA, URE_MCU_TYPE_USB,
URE_CLRBIT_2(sc, URE_USB_LPM_CONFIG, URE_MCU_TYPE_USB,
URE_CLRBIT_2(sc, URE_USB_U2P3_CTRL, URE_MCU_TYPE_USB, URE_U2P3_ENABLE);
URE_SETBIT_2(sc, URE_USB_BMU_CONFIG, URE_MCU_TYPE_USB,
URE_CLRBIT_2(sc, URE_USB_SPEED_OPTION, URE_MCU_TYPE_USB,
ure_write_4(sc, URE_USB_RX_BUF_TH, URE_MCU_TYPE_USB,
ure_write_4(sc, URE_USB_RX_BUF_TH, URE_MCU_TYPE_USB,
URE_CLRBIT_2(sc, URE_USB_SSPHYLINK1, URE_MCU_TYPE_USB,
URE_SETBIT_1(sc, 0xd378, URE_MCU_TYPE_USB, 0x0080);
URE_CLRBIT_2(sc, 0xcd06, URE_MCU_TYPE_USB, 0x8000);
URE_SETBIT_2(sc, URE_USB_U2P3_CTRL, URE_MCU_TYPE_USB,
URE_SETBIT_2(sc, URE_USB_LPM_CONFIG, URE_MCU_TYPE_USB,
!(ure_read_2(sc, URE_USB_GPHY_CTRL, URE_MCU_TYPE_USB) &
URE_MCU_TYPE_USB) & URE_GPHY_PATCH_DONE)
reg = ure_read_1(sc, URE_USB_BMU_RESET, URE_MCU_TYPE_USB);
ure_write_1(sc, URE_USB_BMU_RESET, URE_MCU_TYPE_USB, reg);
ure_write_1(sc, URE_USB_BMU_RESET, URE_MCU_TYPE_USB, reg);
if (!(ure_read_2(sc, URE_USB_TGPHY_CMD, URE_MCU_TYPE_USB) &
ure_write_2(sc, URE_USB_TGPHY_ADDR, URE_MCU_TYPE_USB, addr);
ure_write_2(sc, URE_USB_TGPHY_CMD, URE_MCU_TYPE_USB,
if (!(ure_read_2(sc, URE_USB_TGPHY_CMD, URE_MCU_TYPE_USB) &
return (ure_read_2(sc, URE_USB_TGPHY_DATA, URE_MCU_TYPE_USB));
ure_write_2(sc, URE_USB_TGPHY_DATA, URE_MCU_TYPE_USB, data);
ure_write_2(sc, URE_USB_TGPHY_ADDR, URE_MCU_TYPE_USB, addr);
ure_write_2(sc, URE_USB_TGPHY_CMD, URE_MCU_TYPE_USB,
if (!(ure_read_2(sc, URE_USB_TGPHY_CMD, URE_MCU_TYPE_USB) &
if (!(ure_read_2(sc, URE_USB_CMD, URE_MCU_TYPE_USB) &
ure_write_2(sc, URE_USB_CMD_ADDR, URE_MCU_TYPE_USB, addr);
ure_write_2(sc, URE_USB_CMD, URE_MCU_TYPE_USB, cmd | URE_CMD_BUSY);
if (!(ure_read_2(sc, URE_USB_CMD, URE_MCU_TYPE_USB) &
return (ure_read_4(sc, URE_USB_CMD_DATA, URE_MCU_TYPE_USB));
if (!(ure_read_2(sc, URE_USB_CMD, URE_MCU_TYPE_USB) &
ure_write_4(sc, URE_USB_CMD_DATA, URE_MCU_TYPE_USB, data);
ure_write_2(sc, URE_USB_CMD_ADDR, URE_MCU_TYPE_USB, addr);
ure_write_2(sc, URE_USB_CMD, URE_MCU_TYPE_USB,
URE_CLRBIT_2(sc, URE_USB_RX_AGGR_NUM, URE_MCU_TYPE_USB,
ure_write_2(sc, URE_USB_RX_EARLY_SIZE, URE_MCU_TYPE_USB,
ure_write_2(sc, URE_USB_RX_EARLY_AGG, URE_MCU_TYPE_USB,
URE_MCU_TYPE_USB, 1875);
URE_MCU_TYPE_USB);
URE_MCU_TYPE_USB, reg | 0x01);
ure_write_2(sc, URE_USB_RX_EARLY_SIZE, URE_MCU_TYPE_USB,
ure_write_2(sc, URE_USB_RX_EARLY_AGG, URE_MCU_TYPE_USB,
URE_CLRBIT_2(sc, URE_USB_FW_TASK, URE_MCU_TYPE_USB,
URE_SETBIT_2(sc, URE_USB_FW_TASK, URE_MCU_TYPE_USB,
ure_write_1(sc, URE_USB_UPT_RXDMA_OWN, URE_MCU_TYPE_USB,
URE_CLRBIT_2(sc, URE_USB_BMU_RESET, URE_MCU_TYPE_USB,
URE_SETBIT_2(sc, URE_USB_USB_CTRL, URE_MCU_TYPE_USB,
URE_SETBIT_2(sc, URE_USB_BMU_RESET, URE_MCU_TYPE_USB,
URE_CLRBIT_2(sc, URE_USB_USB_CTRL, URE_MCU_TYPE_USB,