/* * Copyright (c) 2016, NVIDIA CORPORATION. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for * more details. */ #undef TRACE_SYSTEM #define TRACE_SYSTEM tegra_smmu #if !defined(_TRACE_TEGRA_SMMU_H) || defined(TRACE_HEADER_MULTI_READ) #define _TRACE_TEGRA_SMMU_H #include TRACE_EVENT(smmu_set_pte, TP_PROTO(int asid, dma_addr_t iova, phys_addr_t phys, size_t bytes, int attrs), TP_ARGS(asid, iova, phys, bytes, attrs), TP_STRUCT__entry( __field(int, asid) __field(dma_addr_t, iova) __field(phys_addr_t, phys) __field(size_t, bytes) __field(int, attrs) ), TP_fast_assign( __entry->asid = asid; __entry->iova = iova; __entry->phys = phys; __entry->bytes = bytes; __entry->attrs = attrs; ), TP_printk("asid=%d iova=%pad phys=%pap size=%zu attrs=0x%x", __entry->asid, &__entry->iova, &__entry->phys, __entry->bytes, __entry->attrs) ); #endif /* _TRACE_TEGRA_SMMU_H */ #include