Lines Matching +full:- +full:- +full:exclude

1 // SPDX-License-Identifier: GPL-2.0-or-later
8 #include <linux/dma-mapping.h>
23 * The BCM1250, etc. PCI host bridge does not support DAC on its 32-bit
25 * down the artificial PCI-HT bridge supports 40-bit addressing and the
26 * SP1011 HT-PCI bridge downstream supports both DAC and a 64-bit bus
27 * width, so we record the PCI-HT bridge's secondary and subordinate bus
39 struct sb1250_bus_dma_limit_exclude *exclude = data; in sb1250_bus_dma_limit() local
43 exclude_this = exclude->set && (dev->bus->number >= exclude->start && in sb1250_bus_dma_limit()
44 dev->bus->number <= exclude->end); in sb1250_bus_dma_limit()
45 ht_bridge = !exclude->set && (dev->vendor == PCI_VENDOR_ID_SIBYTE && in sb1250_bus_dma_limit()
46 dev->device == PCI_DEVICE_ID_BCM1250_HT); in sb1250_bus_dma_limit()
49 dev_dbg(&dev->dev, "not disabling DAC for device"); in sb1250_bus_dma_limit()
51 exclude->start = dev->subordinate->number; in sb1250_bus_dma_limit()
52 exclude->end = pci_bus_max_busnr(dev->subordinate); in sb1250_bus_dma_limit()
53 exclude->set = true; in sb1250_bus_dma_limit()
54 dev_dbg(&dev->dev, "not disabling DAC for [bus %02x-%02x]", in sb1250_bus_dma_limit()
55 exclude->start, exclude->end); in sb1250_bus_dma_limit()
57 dev_dbg(&dev->dev, "disabling DAC for device"); in sb1250_bus_dma_limit()
58 dev->dev.bus_dma_limit = DMA_BIT_MASK(32); in sb1250_bus_dma_limit()
66 struct sb1250_bus_dma_limit_exclude exclude = { .set = false }; in quirk_sb1250_pci_dac() local
68 pci_walk_bus(dev->bus, sb1250_bus_dma_limit, &exclude); in quirk_sb1250_pci_dac()
78 dev->class = PCI_CLASS_BRIDGE_PCI << 8; in quirk_sb1250_ht()