world leader in high performance signal processing
Trace: » net2272

NET2272 USB 2.0 Driver

The Net2272 is USB 2.0 compliant and supports high speed mode. It allows you to quickly turn your board into a USB device.

This page contains information specific to the net2272 driver. For general USB gadget documentation, please refer to the USB Gadget page.

Settings

Config

First enable the driver in your kernel configuration:

Device Drivers  --->
  [*] USB support  --->
    <*> USB Gadget Support  --->
      USB Peripheral Controller (PLX NET2272)  --->

Further, you will probably want to tweak the bus timings for the async bank where the part is connected. An example is below, but the exact timings depend on your hardware.

Blackfin Processor Options --->
  --- Asynchronous Memory Configuration
      EBIU_AMBCTL Control  --->
        (0x55c2) Bank 3

Resources

Now you'll have to declare proper platform resources for the part. In your boards file:

file: arch/blackfin/mach-bf561/boards/ezkit.c

scm failed with exit code 1:
file does not exist in git

You will also have to add a reference to the net2272_bfin_device platform device to your platform_device array that is registered via platform_add_devices.

The IORESOURCE_MEM is required and declares the range of memory where this device is mapped.

The IORESOURCE_IRQ is required and declares the pin which is connected to the interrupt line of the net2272.

The IORESOURCE_BUS is optional and is used only if your device's memory map is bit shifted. The Blackfin USB-LAN extender card for example is shifted by 1.

Reset

If you have the reset line of the net2272 part connected to a pin, you will probably want to issue a hard reset during boot and then make sure the line stays low.

file: arch/blackfin/mach-bf561/boards/ezkit.c

scm failed with exit code 1:
file does not exist in git

Then simply call this from your board's init function.