Merge tag 'dma-mapping-5.10' of git://git.infradead.org/users/hch/dma-mapping
Pull dma-mapping updates from Christoph Hellwig:
- rework the non-coherent DMA allocator
- move private definitions out of <linux/dma-mapping.h>
- lower CMA_ALIGNMENT (Paul Cercueil)
- remove the omap1 dma address translation in favor of the common code
- make dma-direct aware of multiple dma offset ranges (Jim Quinlan)
- support per-node DMA CMA areas (Barry Song)
- increase the default seg boundary limit (Nicolin Chen)
- misc fixes (Robin Murphy, Thomas Tai, Xu Wang)
- various cleanups
* tag 'dma-mapping-5.10' of git://git.infradead.org/users/hch/dma-mapping: (63 commits)
ARM/ixp4xx: add a missing include of dma-map-ops.h
dma-direct: simplify the DMA_ATTR_NO_KERNEL_MAPPING handling
dma-direct: factor out a dma_direct_alloc_from_pool helper
dma-direct check for highmem pages in dma_direct_alloc_pages
dma-mapping: merge <linux/dma-noncoherent.h> into <linux/dma-map-ops.h>
dma-mapping: move large parts of <linux/dma-direct.h> to kernel/dma
dma-mapping: move dma-debug.h to kernel/dma/
dma-mapping: remove <asm/dma-contiguous.h>
dma-mapping: merge <linux/dma-contiguous.h> into <linux/dma-map-ops.h>
dma-contiguous: remove dma_contiguous_set_default
dma-contiguous: remove dev_set_cma_area
dma-contiguous: remove dma_declare_contiguous
dma-mapping: split <linux/dma-mapping.h>
cma: decrease CMA_ALIGNMENT lower limit to 2
firewire-ohci: use dma_alloc_pages
dma-iommu: implement ->alloc_noncoherent
dma-mapping: add new {alloc,free}_noncoherent dma_map_ops methods
dma-mapping: add a new dma_alloc_pages API
dma-mapping: remove dma_cache_sync
53c700: convert to dma_alloc_noncoherent
...
This commit is contained in:
@@ -2087,12 +2087,6 @@ free_interfaces:
|
||||
intf->dev.bus = &usb_bus_type;
|
||||
intf->dev.type = &usb_if_device_type;
|
||||
intf->dev.groups = usb_interface_groups;
|
||||
/*
|
||||
* Please refer to usb_alloc_dev() to see why we set
|
||||
* dma_mask and dma_pfn_offset.
|
||||
*/
|
||||
intf->dev.dma_mask = dev->dev.dma_mask;
|
||||
intf->dev.dma_pfn_offset = dev->dev.dma_pfn_offset;
|
||||
INIT_WORK(&intf->reset_ws, __usb_queue_reset_device);
|
||||
intf->minor = -1;
|
||||
device_initialize(&intf->dev);
|
||||
|
||||
@@ -599,18 +599,6 @@ struct usb_device *usb_alloc_dev(struct usb_device *parent,
|
||||
dev->dev.bus = &usb_bus_type;
|
||||
dev->dev.type = &usb_device_type;
|
||||
dev->dev.groups = usb_device_groups;
|
||||
/*
|
||||
* Fake a dma_mask/offset for the USB device:
|
||||
* We cannot really use the dma-mapping API (dma_alloc_* and
|
||||
* dma_map_*) for USB devices but instead need to use
|
||||
* usb_alloc_coherent and pass data in 'urb's, but some subsystems
|
||||
* manually look into the mask/offset pair to determine whether
|
||||
* they need bounce buffers.
|
||||
* Note: calling dma_set_mask() on a USB device would set the
|
||||
* mask for the entire HCD, so don't do that.
|
||||
*/
|
||||
dev->dev.dma_mask = bus->sysdev->dma_mask;
|
||||
dev->dev.dma_pfn_offset = bus->sysdev->dma_pfn_offset;
|
||||
set_dev_node(&dev->dev, dev_to_node(bus->sysdev));
|
||||
dev->state = USB_STATE_ATTACHED;
|
||||
dev->lpm_disable_count = 1;
|
||||
|
||||
Reference in New Issue
Block a user