Commit bf2ee8d
ACPI: scan: Support multiple DMA windows with different offsets
In DT systems configurations, of_dma_get_range() returns struct
bus_dma_region DMA regions; they are used to set-up devices
DMA windows with different offset available for translation between DMA
address and CPU address.
In ACPI systems configuration, acpi_dma_get_range() does not return
DMA regions yet and that precludes setting up the dev->dma_range_map
pointer and therefore DMA regions with multiple offsets.
Update acpi_dma_get_range() to return struct bus_dma_region
DMA regions like of_dma_get_range() does.
After updating acpi_dma_get_range(), acpi_arch_dma_setup() is changed for
ARM64, where the original dma_addr and size are removed as these
arguments are now redundant, and pass 0 and U64_MAX for dma_base
and size of arch_setup_dma_ops; this is a simplification consistent
with what other ACPI architectures also pass to iommu_setup_dma_ops().
Reviewed-by: Robin Murphy <[email protected]>
Signed-off-by: Jianmin Lv <[email protected]>
Reviewed-by: Lorenzo Pieralisi <[email protected]>
Signed-off-by: Rafael J. Wysocki <[email protected]>1 parent 521a547 commit bf2ee8d
File tree
4 files changed
+44
-47
lines changed- drivers/acpi
- arm64
- include
- acpi
- linux
4 files changed
+44
-47
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
7 | | - | |
| 7 | + | |
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
11 | | - | |
| 11 | + | |
| 12 | + | |
12 | 13 | | |
13 | 14 | | |
14 | 15 | | |
| |||
26 | 27 | | |
27 | 28 | | |
28 | 29 | | |
29 | | - | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
30 | 43 | | |
31 | 44 | | |
32 | 45 | | |
33 | 46 | | |
34 | 47 | | |
35 | 48 | | |
36 | 49 | | |
37 | | - | |
| 50 | + | |
38 | 51 | | |
39 | 52 | | |
40 | 53 | | |
41 | 54 | | |
42 | 55 | | |
43 | | - | |
44 | | - | |
45 | | - | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | 56 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
| 23 | + | |
23 | 24 | | |
24 | 25 | | |
25 | 26 | | |
| |||
1467 | 1468 | | |
1468 | 1469 | | |
1469 | 1470 | | |
1470 | | - | |
1471 | | - | |
1472 | | - | |
| 1471 | + | |
1473 | 1472 | | |
1474 | | - | |
1475 | | - | |
1476 | | - | |
| 1473 | + | |
| 1474 | + | |
1477 | 1475 | | |
1478 | 1476 | | |
1479 | 1477 | | |
1480 | | - | |
1481 | | - | |
| 1478 | + | |
1482 | 1479 | | |
1483 | 1480 | | |
1484 | 1481 | | |
1485 | 1482 | | |
1486 | 1483 | | |
1487 | 1484 | | |
1488 | | - | |
| 1485 | + | |
1489 | 1486 | | |
1490 | 1487 | | |
1491 | 1488 | | |
| |||
1510 | 1507 | | |
1511 | 1508 | | |
1512 | 1509 | | |
| 1510 | + | |
| 1511 | + | |
| 1512 | + | |
| 1513 | + | |
| 1514 | + | |
| 1515 | + | |
1513 | 1516 | | |
1514 | | - | |
| 1517 | + | |
| 1518 | + | |
1515 | 1519 | | |
1516 | | - | |
| 1520 | + | |
1517 | 1521 | | |
1518 | 1522 | | |
1519 | | - | |
1520 | 1523 | | |
1521 | | - | |
1522 | | - | |
1523 | | - | |
1524 | | - | |
1525 | | - | |
1526 | | - | |
1527 | | - | |
1528 | | - | |
1529 | | - | |
1530 | | - | |
1531 | | - | |
| 1524 | + | |
| 1525 | + | |
| 1526 | + | |
| 1527 | + | |
| 1528 | + | |
1532 | 1529 | | |
1533 | 1530 | | |
1534 | | - | |
1535 | | - | |
1536 | | - | |
1537 | | - | |
| 1531 | + | |
1538 | 1532 | | |
1539 | 1533 | | |
1540 | 1534 | | |
| |||
1624 | 1618 | | |
1625 | 1619 | | |
1626 | 1620 | | |
1627 | | - | |
1628 | 1621 | | |
1629 | 1622 | | |
1630 | 1623 | | |
1631 | 1624 | | |
1632 | 1625 | | |
1633 | 1626 | | |
1634 | | - | |
| 1627 | + | |
1635 | 1628 | | |
1636 | 1629 | | |
1637 | 1630 | | |
1638 | 1631 | | |
1639 | 1632 | | |
1640 | | - | |
| 1633 | + | |
1641 | 1634 | | |
1642 | 1635 | | |
1643 | 1636 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
613 | 613 | | |
614 | 614 | | |
615 | 615 | | |
616 | | - | |
617 | | - | |
| 616 | + | |
618 | 617 | | |
619 | 618 | | |
620 | 619 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
281 | 281 | | |
282 | 282 | | |
283 | 283 | | |
284 | | - | |
| 284 | + | |
285 | 285 | | |
286 | 286 | | |
287 | 287 | | |
288 | 288 | | |
289 | | - | |
| 289 | + | |
290 | 290 | | |
291 | 291 | | |
292 | 292 | | |
| |||
977 | 977 | | |
978 | 978 | | |
979 | 979 | | |
980 | | - | |
981 | | - | |
| 980 | + | |
982 | 981 | | |
983 | 982 | | |
984 | 983 | | |
| |||
0 commit comments