summaryrefslogtreecommitdiff
path: root/util/i915tool/spatches/i915_drv.cocci
diff options
context:
space:
mode:
authorStefan Reinauer <reinauer@chromium.org>2012-05-04 15:37:18 -0700
committerStefan Reinauer <stefan.reinauer@coreboot.org>2012-05-08 00:40:36 +0200
commit564e90f57185274130aba7b157a7dca1941dcfef (patch)
treef71985b7f878f83d7e5773675ca27a4a2da94cdf /util/i915tool/spatches/i915_drv.cocci
parent44a89b34f85492c48a19db1b9b2c2c44ab29c9ae (diff)
downloadcoreboot-564e90f57185274130aba7b157a7dca1941dcfef.tar.xz
Add a tool to work on i915 hardware in user mode
This is the beginning of a tool that transforms the i9x5 code to user mode code. Consider this a very early stage although it does produce two programs. Requires spatch 1.0 or greater. To try it out, assuming you have an up-to-date spatch, sh transform make make broken Please don't fall to the temptation to auto-magicize this process. It's primitive for a reason. That said, suggestions welcome of course. Change-Id: I0188e36637b198b06c17f6d3c714d990e88bd57d Signed-off-by: Ronald G. Minnich <rminnich@chromium.org> Reviewed-on: http://review.coreboot.org/1003 Tested-by: build bot (Jenkins) Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
Diffstat (limited to 'util/i915tool/spatches/i915_drv.cocci')
-rw-r--r--util/i915tool/spatches/i915_drv.cocci178
1 files changed, 178 insertions, 0 deletions
diff --git a/util/i915tool/spatches/i915_drv.cocci b/util/i915tool/spatches/i915_drv.cocci
new file mode 100644
index 0000000000..633e270067
--- /dev/null
+++ b/util/i915tool/spatches/i915_drv.cocci
@@ -0,0 +1,178 @@
+@@
+identifier d;
+@@
+(
+-struct drm_i915_fence_reg{...};
+|
+-struct drm_i915_error_state{...};
+|
+-struct drm_i915_gem_object{...};
+|
+-struct drm_i915_display_funcs {...};
+|
+-struct drm_i915_gem_phys_object{...};
+|
+-struct mem_block{...};
+|
+-struct drm_i915_gem_request{...};
+|
+-struct drm_i915_file_private{...};
+|
+-struct drm_i915_master_private{...};
+|
+-struct intel_gmbus{...};
+|
+-struct work_struct d;
+|
+-struct mem_*d;
+|
+-struct timer_list d;
+|
+-struct intel_fbc_work *d;
+|
+-struct drm_i915_error_state *d;
+|
+-struct i2c_adapter d;
+|
+-struct i2c_adapter *d;
+|
+-struct intel_hw_status_page{...};
+|
+-struct intel_hw_status_page d;
+)
+@@
+@@
+-#include<...>
+@@
+identifier d;
+@@
+struct s {...
+- struct drm_i915_display_funcs d;
+...
+};
+@@
+identifier d;
+@@
+struct s {...
+-struct notifier_block d;
+...
+};
+@@
+identifier s;
+identifier d;
+@@
+struct s {...
+-spinlock_t d;
+...
+};
+@@
+identifier s;
+identifier d;
+@@
+struct s {...
+-atomic_t d;
+...
+};
+@@
+identifier s;
+identifier d;
+@@
+struct s {...
+-drm_dma_handle_t *d;
+...
+};
+@@
+identifier s;
+identifier d;
+@@
+struct s {...
+-drm_local_map_t d;
+...
+};
+@@
+identifier s;
+identifier d;
+@@
+struct s {...
+-spinlock_t *d;
+...
+};
+@@
+identifier s;
+identifier d;
+@@
+struct s {...
+-struct i2c_adapter d;
+...
+};
+@@
+identifier s;
+identifier d;
+@@
+struct s {...
+-struct i2c_adapter *d;
+...
+};
+@@
+identifier s;
+identifier d;
+@@
+struct s {...
+(
+-struct inteL_gmbus {...} *d;
+|
+-struct drm_i915_gem_object *d;
+)
+...
+};
+@@
+identifier s;
+identifier d;
+@@
+struct s {...
+-struct work_struct d;
+...
+};
+@@
+identifier s;
+identifier d;
+@@
+struct s {...
+-struct resource d;
+...
+};
+@@
+identifier s;
+identifier d;
+@@
+struct s {...
+-struct timer_list d;
+...
+};
+@@
+identifier s;
+identifier d;
+@@
+struct s {...
+-wait_queue_head_t d;
+...
+};
+@@
+identifier s;
+identifier d;
+constant c;
+@@
+struct s {...
+-struct intel_ring_buffer d[c];
+...
+};
+@@
+identifier s;
+identifier d;
+constant c;
+@@
+struct s {...
+-struct drm_i915_fence_reg d[c];
+...
+};
+