Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-only */
0002 /*
0003  * Tegra host1x Job
0004  *
0005  * Copyright (c) 2011-2013, NVIDIA Corporation.
0006  */
0007 
0008 #ifndef __HOST1X_JOB_H
0009 #define __HOST1X_JOB_H
0010 
0011 #include <linux/dma-direction.h>
0012 
0013 struct host1x_job_gather {
0014     unsigned int words;
0015     dma_addr_t base;
0016     struct host1x_bo *bo;
0017     unsigned int offset;
0018     bool handled;
0019 };
0020 
0021 struct host1x_job_wait {
0022     u32 id;
0023     u32 threshold;
0024     u32 next_class;
0025     bool relative;
0026 };
0027 
0028 struct host1x_job_cmd {
0029     bool is_wait;
0030 
0031     union {
0032         struct host1x_job_gather gather;
0033         struct host1x_job_wait wait;
0034     };
0035 };
0036 
0037 struct host1x_job_unpin_data {
0038     struct host1x_bo_mapping *map;
0039 };
0040 
0041 /*
0042  * Dump contents of job to debug output.
0043  */
0044 void host1x_job_dump(struct device *dev, struct host1x_job *job);
0045 
0046 #endif