mirror of
https://github.com/torvalds/linux.git
synced 2024-12-23 11:21:33 +00:00
5e92946c39
Hisilicon SMMUv3 devices treat CMD_PREFETCH_CONFIG as a illegal command, execute it will trigger GERROR interrupt. Although the gerror code manage to turn the prefetch into a SYNC, and the system can continue to run normally, but it's ugly to print error information. Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com> [will: extended binding documentation] Signed-off-by: Will Deacon <will.deacon@arm.com>
41 lines
1.6 KiB
Plaintext
41 lines
1.6 KiB
Plaintext
* ARM SMMUv3 Architecture Implementation
|
|
|
|
The SMMUv3 architecture is a significant deparature from previous
|
|
revisions, replacing the MMIO register interface with in-memory command
|
|
and event queues and adding support for the ATS and PRI components of
|
|
the PCIe specification.
|
|
|
|
** SMMUv3 required properties:
|
|
|
|
- compatible : Should include:
|
|
|
|
* "arm,smmu-v3" for any SMMUv3 compliant
|
|
implementation. This entry should be last in the
|
|
compatible list.
|
|
|
|
- reg : Base address and size of the SMMU.
|
|
|
|
- interrupts : Non-secure interrupt list describing the wired
|
|
interrupt sources corresponding to entries in
|
|
interrupt-names. If no wired interrupts are
|
|
present then this property may be omitted.
|
|
|
|
- interrupt-names : When the interrupts property is present, should
|
|
include the following:
|
|
* "eventq" - Event Queue not empty
|
|
* "priq" - PRI Queue not empty
|
|
* "cmdq-sync" - CMD_SYNC complete
|
|
* "gerror" - Global Error activated
|
|
|
|
** SMMUv3 optional properties:
|
|
|
|
- dma-coherent : Present if DMA operations made by the SMMU (page
|
|
table walks, stream table accesses etc) are cache
|
|
coherent with the CPU.
|
|
|
|
NOTE: this only applies to the SMMU itself, not
|
|
masters connected upstream of the SMMU.
|
|
|
|
- hisilicon,broken-prefetch-cmd
|
|
: Avoid sending CMD_PREFETCH_* commands to the SMMU.
|