Download BIOS User`s Manual
Transcript
BIOS User’s Manual 1.7.3.1 Interrupt 50 (OTG_STATE) The BIOS uses this location as the variable for the OTG state machine i.e., b_idle and a_idle state machines from the On-The-Go (OTG) supplement to the USB 2.0 Specification. This variable will be updated when users call the OTG_STATE_INT. The defined state will be shown as follows: a_idle a_wait_bcon a_host a_suspend a_peripheral a_wait_vfall b_idle b_peripheral b_host equ equ equ equ equ equ equ equ equ 0 1 2 3 4 5 6 7 8 Note: This variable is used by the BIOS. Users should not write to this location. 1.7.3.2 Interrupt 112 (OTG_STATE_INT) The BIOS supports both a_idle and b_idle state machines for USB-portA only. This interrupt provides support for Session Request Protocol (SRP) and Host Negotiation Protocol (HNP). The BIOS controls and monitors all the low-level interface i.e. VBUS, OTG_ID, D+/D- pull-up/down, VBUS pump charge, VBUS pull-up, VBUS-discharge and user’s request (i.e. a_bus_drop, a_bus_req, b_bus_req etc.). The results of this interrupt will return the state transition from the current to the next state that follow the OTG supplement to the USB 2.0 specification. 1.7.3.2.1 Software Interface Entry: R0 [15:0] bits are defined as follow: a_bus_drop a_set_b_hnp_en bus_req a_suspend_req equ equ equ equ 0x0001 0x0002 0x0004 0x0008 b_do_srp b_hnp_en b_speed equ 0x0010 equ 0x0040 equ 0x0080 ;from ;from ;from ;from application: application: application: application: A-device request bus drop enable hnp for both a_bus_req & b_bus_req A-device request bus suspend ;from app: must call otg_srp then set this variable ;from app: Slave needs to detect the SET_FEATURE ;from app: 0=full, 1=low Registers Usage: None. Return: R0 = OTG_STATE (location at address 50*2 = 0x0064) R0 = return one of the value define as shown below: Page 1-26 BIOS User’s Manual v1.1