162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */ 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * 462306a36Sopenharmony_ci * Copyright (C) 2013 Freescale Semiconductor, Inc. 562306a36Sopenharmony_ci */ 662306a36Sopenharmony_ci 762306a36Sopenharmony_ci#ifndef __FSL_PAMU_DOMAIN_H 862306a36Sopenharmony_ci#define __FSL_PAMU_DOMAIN_H 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci#include "fsl_pamu.h" 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_cistruct fsl_dma_domain { 1362306a36Sopenharmony_ci /* list of devices associated with the domain */ 1462306a36Sopenharmony_ci struct list_head devices; 1562306a36Sopenharmony_ci u32 stash_id; 1662306a36Sopenharmony_ci struct iommu_domain iommu_domain; 1762306a36Sopenharmony_ci spinlock_t domain_lock; 1862306a36Sopenharmony_ci}; 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_ci/* domain-device relationship */ 2162306a36Sopenharmony_cistruct device_domain_info { 2262306a36Sopenharmony_ci struct list_head link; /* link to domain siblings */ 2362306a36Sopenharmony_ci struct device *dev; 2462306a36Sopenharmony_ci u32 liodn; 2562306a36Sopenharmony_ci struct fsl_dma_domain *domain; /* pointer to domain */ 2662306a36Sopenharmony_ci}; 2762306a36Sopenharmony_ci#endif /* __FSL_PAMU_DOMAIN_H */ 28