X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=carlfw%2Fusb%2Fmain.c;h=95aac88b86b1d8d2a5d9f0027260495fa6365196;hb=007045ac7c9822009b704b856e2f92934cca2401;hp=dc48bf2115a4537fb3477ade2a33e4a124f5850b;hpb=dc294e837216a4b10470b63203cc3b0070444b45;p=carl9170fw.git diff --git a/carlfw/usb/main.c b/carlfw/usb/main.c index dc48bf2..95aac88 100644 --- a/carlfw/usb/main.c +++ b/carlfw/usb/main.c @@ -244,7 +244,7 @@ static void turn_power_off(void) AR9170_PWR_RESET_WLAN_MASK); set(AR9170_PWR_REG_RESET, 0x0); - clock_set(false, AHB_20_22MHZ); + set(AR9170_PWR_REG_CLOCK_SEL, AHB_40MHZ_OSC); set(AR9170_PWR_REG_PLL_ADDAC, 0x5163); /* 0x502b; */ set(AR9170_PHY_REG_ADC_SERIAL_CTL, AR9170_PHY_ADC_SCTL_SEL_EXTERNAL_RADIO); @@ -328,21 +328,22 @@ static void usb_handler(uint8_t usb_interrupt_level1) if (usb_interrupt_level1 & BIT(0)) { usb_interrupt_level2 = getb(AR9170_USB_REG_INTR_SOURCE_0); - if (usb_interrupt_level2 & BIT(0)) + if (usb_interrupt_level2 & AR9170_USB_INTR_SRC0_SETUP) usb_ep0setup(); - if (usb_interrupt_level2 & BIT(1)) + if (usb_interrupt_level2 & AR9170_USB_INTR_SRC0_IN) usb_ep0tx(); - if (usb_interrupt_level2 & BIT(2)) + if (usb_interrupt_level2 & AR9170_USB_INTR_SRC0_OUT) usb_ep0rx(); - if (usb_interrupt_level2 & BIT(7)) { + if (usb_interrupt_level2 & AR9170_USB_INTR_SRC0_ABORT) { /* Clear the command abort interrupt */ - andb(AR9170_USB_REG_INTR_SOURCE_0, 0x7f); + andb(AR9170_USB_REG_INTR_SOURCE_0, (uint8_t) + ~AR9170_USB_INTR_SRC0_ABORT); } - if (usb_interrupt_level2 & BIT(3) || + if (usb_interrupt_level2 & AR9170_USB_INTR_SRC0_FAIL || fw.usb.ep0_action & CARL9170_EP0_STALL) { /* * transmission failure. @@ -352,7 +353,7 @@ static void usb_handler(uint8_t usb_interrupt_level1) fw.usb.ep0_action &= ~CARL9170_EP0_STALL; } - if (usb_interrupt_level2 & BIT(4) || + if (usb_interrupt_level2 & AR9170_USB_INTR_SRC0_END || fw.usb.ep0_action & CARL9170_EP0_TRIGGER) { /* * transmission done. @@ -366,18 +367,18 @@ static void usb_handler(uint8_t usb_interrupt_level1) if (usb_interrupt_level1 & BIT(7)) { usb_interrupt_level2 = getb(AR9170_USB_REG_INTR_SOURCE_7); - if (usb_interrupt_level2 & BIT(7)) + if (usb_interrupt_level2 & AR9170_USB_INTR_SRC7_RX0BYTE) usb_data_out0Byte(); - if (usb_interrupt_level2 & BIT(6)) + if (usb_interrupt_level2 & AR9170_USB_INTR_SRC7_TX0BYTE) usb_data_in0Byte(); - if (usb_interrupt_level2 & BIT(1)) { + if (usb_interrupt_level2 & AR9170_USB_INTR_SRC7_USB_RESET) { usb_reset_ack(); reboot(); } - if (usb_interrupt_level2 & BIT(2)) { + if (usb_interrupt_level2 & AR9170_USB_INTR_SRC7_USB_SUSPEND) { usb_suspend_ack(); disable_watchdog(); @@ -386,7 +387,7 @@ static void usb_handler(uint8_t usb_interrupt_level1) orb(AR9170_USB_REG_MAIN_CTRL, AR9170_USB_MAIN_CTRL_GO_TO_SUSPEND); } - if (usb_interrupt_level2 & BIT(3)) { + if (usb_interrupt_level2 & AR9170_USB_INTR_SRC7_USB_RESUME) { usb_resume_ack(); reboot(); }