© 2015 Exar Corporation
XR22804
10 / 47 exar.com/XR22804
Rev 1B
Functional Description
USB Interface
The XR22804 is a USB compound device with an embedded hub and 7 downstream functions. The downstream functions
of the XR22804 are 10/100 Ethernet, 4 UART functions, an I
2
C function, and an Enhanced Dedicated GPIO Entity (EDGE)
function. The upstream USB interface of the XR22804 is compliant with both USB 2.0 full and hi-speed specifications. All
functions downstream of the hub are hi-speed functions.
The XR22804 will have a single vendor ID and vendor string. Each function in the XR22804 will have an individual product
string and serial string. The default serial number strings will be based upon the uniquely assigned Ethernet MAC address
for each XR22804 device. The serial strings for multiple functions within the same device will differ only by a single charac-
ter which will be assigned a value between 0 and 7. All string and ID values can be overridden via OTP.
The XR22804 can be placed into a low power or suspended state by the USB host. By default the XR22804 hub is config-
ured for bus powered mode with a maximum power of 250 mA. All other functions in the XR22804 are configured for self-
powered mode. In bus powered mode, the Ethernet Phy must be powered down during suspended state to meet USB sus-
pend power requirements. The Ethernet Phy may remain enabled to support Ethernet remote wakeup during suspend if the
the device is self-powered and the the OTP is modified to report the hub function as self-powered in the USB descriptors.
See Ethernet Remote Wakeup section on page 13.
Each function of the XR22804 supports one configuration and utilizes the following USB endpoints:
• USB hub
• Control endpoint
• Interrupt-in endpoint
• Ethernet function
• Control endpoint
• Interrupt-in endpoint
• Bulk-in and bulk-out endpoints
• I
2
C function
• Control endpoint
• Interrupt-in and interrupt-out endpoints
• EDGE Controller function
• Control endpoint
• Interrupt-in and interrupt-out endpoints
• UART function
• Control endpoint
• Interrupt-in endpoint
• Bulk-in and bulk-out endpoints
USB Vendor ID
Exars USB vendor ID is 0x04E2. This is the default vendor ID that is used for the XR22804. Companies may obtain their
own vendor ID, by becoming members of USB.org. The XR22804 OTP can then be modified to report this vendor ID in the
USB descriptors.
USB Product ID
Each function in the XR22804 has an individual USB product ID. The default product IDs for each of the functions are
shown in Table1. These values can be modified by programming the OTP. Companies using their own vendor ID may also
© 2015 Exar Corporation
XR22804
11 / 47 exar.com/XR22804
Rev 1B
select their own product IDs. Additionally, upon request Exar will provide a selection of different product IDs for use with
Exars vendor ID for companies that do not wish to become members of USB.org, but wish to use their own product ID.
USB Suspend
All USB peripheral devices must support the USB suspend mode. Per USB standard, the XR22804 device will begin to
enter the suspend state if it does not detect any activity, (including Start of Frame or SOF packets) on its USB data lines for
3 ms. The peripheral device must then reduce power consumption from VBUS power within the next 7 ms to the allowed
limit of 2.5 mA per function for the suspended state. Because the XR22804 is a compound device with 8 functions, the sus-
pend state power limit is 20 mA for the device. Note that in this context, the "device" is all circuitry (including the XR22804)
that draws power from the host VBUS.
Remote Wakeup
When the XR22804 is suspended, the E0/RIA#/RWKA#/GA0, E8/RIB#/RWKB#/GB0, E16/RIC#/RWKC#/GC0 or the E24/
RID#/RWKD#/GD0 pins may be used to request that the host exit the suspend state if configured as an input. A high to low
transition on any of these pins may be used to signal a remote wakeup request to the host via Exar’s custom driver. How-
ever, because the four pins are internally logically ANDed, a logic ‘0’ on any of the four inputs will prevent the resume signal-
ing. Note that the CDC-ACM driver does not support the remote wakeup feature. The E0/RIA#/RWKA#/GA0, E8/RIB#/
RWKB#/GB0, E16/RIC#/RWKC#/GC0 or the E24/RID#/RWKD#/GD0 pins may be used to signal remote wakeup by
default. Additionally, the E6/RXA/RWKA#, E14/RXB/RWKB#, E22/RXC/RWKC# or E30/RXD/RWKD# pins, if configured as
an input, may also be used for remote wakeup if enabled using the REMOTE_WAKEUP register. The Ethernet function in
the XR22804 can also be used for remote wakeup under certain conditions. Refer to Ethernet Remote Wakeup on page 13.
USB Strings
USB specifies three character string descriptors that are provided to the USB host during enumeration in string descriptors:
the manufacturer, product and serial strings. In a compound device such as the XR22804, each function provides these
strings to the USB host. The default manufacturer string for the XR22804 device is "Exar Corp.". The default product strings
for the hub, Ethernet function, UART functions, I
2
C function and EDGE function are shown in Ta bl e 2. The serial number
string is a unique alpha-numeric ASCII string programmed into the device at the factory.
Table 1: Default XR22804 Product IDs
XR22804 Function Default Product ID
Hub 0x0804
Ethernet 10/100 0x1300
UART Channel A 0x1400
UART Channel B 0x1401
UART Channel C 0x1402
UART Channel D 0x1403
I
2
C
0x1100
EDGE 0x1200
Table 2: Default XR22804 Product Strings
XR22804 Function Default Product String
Hub Exar’s XR22804 Hub
Ethernet 10/100 Exar USB Ethernet
© 2015 Exar Corporation
XR22804
12 / 47 exar.com/XR22804
Rev 1B
The OTP may be used to override these strings. However, to ensure unique serial numbers for each device, it is recom-
mended that the factory pre-programmed serial number string be used and not be overwritten via OTP.
USB Device Drivers
Each of the functions in the XR22804 require a USB device driver for operation. Both the I
2
C and EDGE functions conform
to the HID device class and as such, utilize the embedded HID driver that is native to each Operating System. The embed-
ded hub also uses the native hub driver. The Ethernet function conforms to the CDC device class and as such can utilize an
embedded CDC-ECM driver. However, at the time of this writing, none of the Microsoft OS provide support for CDC-ECM
embedded drivers. Both Linux and Mac OS-X platforms do support CDC-ECM drivers.
The CDC-ECM is a "standard" driver which implements functionality on a specific class of devices. Exar provides a custom
Ethernet device driver for Windows operating systems which has been optimized for the best possible data through-put.
The UART function can be used with either a standard CDC-ACM driver or a custom driver. When the CDC-ACM driver is
used, the driver has no ability to read or write the XR22804 device registers. Because of this, the XR22804 device is initial-
ized to the settings in Table3. With a custom driver, all GPIOs default in hardware to inputs but these settings may be mod-
ified by a custom driver.
These default settings can be overridden by programming the OTP.
If a custom driver is used, the CUSTOM_DRIVER_ACTIVE bit should be immediately set to ’1’ by the USB UART driver.
Once the CUSTOM_DRIVER_ACTIVE bit is set, the custom driver can use standard CDC-ACM commands without config-
uring the device to the default register settings used with the CDC-ACM driver. Any changes to the register settings for the
GPIOs and flow control will specifically need to be configured by the driver / application software. Although there is no ability
to read / write registers when using the CDC-ACM driver, basic UART functions, including setting baud rate, character for-
mat and sending line break is supported by the CDC driver. Refer to the 4 CDC_ACM_IF USB Control Commands listed in
Tabl e 4 .
10/100 Ethernet
The Ethernet port is a 10/100 Ethernet MAC and Phy compliant with IEEE 802.3. The Ethernet port supports speed /
duplex auto-negotiation, auto-MDIX, 10 Mbps data auto-polarity, full and half duplex data rates at 10 and 100 Mbps, gener-
ates and validates the 32-bit FCS, and performs unicast and multicast filtering. The XR22804 also performs TCP, UDP and
UARTs Exar USB UART
I
2
C
Exar USB I2C
EDGE Exar USB EDGE
Table 3: XR22804 Register Defaults With CDC-ACM Driver
Register Value Notes
Flow Control 0x001 Hardware Flow Control
GPIO_MODE 0x001 RTS / CTS Flow Control
GPIO_DIRECTION 0x008 E3/DTRA#/GA3, E11/DTRB#/GB3, E19/DTRC#/GC3 and E27/
DTRD#/GD3 are configured as outputs. All other GPIOs as inputs.
GPIO_INT_MASK 0x030 E[n]/RI#/RWK#/G[n], E[n]/CD#/G[n] and E[n]/DSR#/G[n] for all
UART channels are interrupt sensitive, i.e. can cause a USB inter-
rupt to be generated
Table 2: Default XR22804 Product Strings
XR22804 Function Default Product String

XR22804IL56-F

Mfr. #:
Manufacturer:
MaxLinear
Description:
I/O Controller Interface IC Hi-Speed USB 10/100 Eth Brdg w 4CH UART
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union

Products related to this Datasheet