Patent ID: 7506343
Filing Date: 2009-03-17
Classification: G06F

Abstract:
1. A computer-implemented method, in a data processing system for directly passing data between a first device driver and a second device driver, comprising: identifying, in the first device driver, data to be provided to the second device driver; invoking, by the first device driver, a data exchange interface within a kernel space, wherein the data exchange interface initializes a physical to Direct Memory Access (DMA) address translation table for the first device driver based on an identifier of a direct memory access window; and providing the data to the data exchange interface, wherein the data exchange interface, in the kernel space, writes the data to a data structure maintained and used by the second device drivers, wherein the first device driver is associated with a child device in a device tree and the second device driver is associated with a parent device of the child device in the device tree, wherein the data to be provided to the second device driver includes the identifier of the direct memory access window associated with the child device, wherein the identifier of the direct memory access window is obtained from a device dependent structure generated by a configuration method associated with the child device, and wherein the identifier of the direct memory access window is maintained in a memory associated with the parent device for use in writing and reading from the physical to the DMA address translation table entries as direct memory access requests arrive from the first device driver.