1 #ifndef __NVKM_DEVICE_TEGRA_H__ 2 #define __NVKM_DEVICE_TEGRA_H__ 3 #include <core/device.h> 4 #include <core/mm.h> 5 6 struct nvkm_device_tegra { 7 struct nvkm_device device; 8 struct platform_device *pdev; 9 int irq; 10 11 struct reset_control *rst; 12 struct clk *clk; 13 struct clk *clk_pwr; 14 15 struct regulator *vdd; 16 17 struct { 18 /* 19 * Protects accesses to mm from subsystems 20 */ 21 struct mutex mutex; 22 23 struct nvkm_mm mm; 24 struct iommu_domain *domain; 25 unsigned long pgshift; 26 } iommu; 27 28 int gpu_speedo; 29 }; 30 31 int nvkm_device_tegra_new(struct platform_device *, 32 const char *cfg, const char *dbg, 33 bool detect, bool mmio, u64 subdev_mask, 34 struct nvkm_device **); 35 #endif 36