Font Size: a A A

USB Driver Programming Implementation Based On ARM And Linux Platform

Posted on:2009-12-19Degree:MasterType:Thesis
Country:ChinaCandidate:Z H GeFull Text:PDF
GTID:2178360245471089Subject:Communication and Information System
Abstract/Summary:PDF Full Text Request
With the improvement of USB interface performance, USB interface had been widely used in lots of devices. Today the work of driver programming for USB device has taken more and more attentions in Linux operating system. This subject researched the principle of USB device driver in Linux operating system based on the S3C2410 processor. After understanding the USB protocol, we completed the works which include coding and testing the firmware and driver program for the on-chip USB device controller.The firmware works in the device, which makes the hardware to work correctly and in charge of the communication sessions with the host. For the USB device controller in this subject is an on-chip device on S3C2410 processor, the firmware should manage the whole process's work. In case the device powered on, firmware initializes the whole process including the USB device controller, enumerates the USB device with the host, then traps in a dead loop and waits for the host to launch the communication. At the moment host launches the communication, the processor generates an interrupt then the firmware calls the interrupt handling function.In Linux operating system, kernel maps the device operations of application program by calling some standard interfaces which provide by driver programs. The driver programs include driver registration, support devices list, implementations of system calls and so on. USB interface supports four kinds of transmission and block transmission was selected which was based on the function property of the on-chip USB device controller of S3C2410. The reading and writing operation are carried out by URB.Finally a simple file transmission system was designed to test the firmware and the driver program. In the test system, host side sends an audio file through the USB interface and device saves the received data in memory.
Keywords/Search Tags:USB interface, Linux operating system, Driver programming, Firmware, S3C2410 processor
PDF Full Text Request
Related items