1*55fd7e02SRodrigo ViviASM sources for auto generated shaders 2*55fd7e02SRodrigo Vivi====================================== 3*55fd7e02SRodrigo Vivi 4*55fd7e02SRodrigo ViviThe i915/gt/hsw_clear_kernel.c and i915/gt/ivb_clear_kernel.c files contain 5*55fd7e02SRodrigo Vivipre-compiled batch chunks that will clear any residual render cache during 6*55fd7e02SRodrigo Vivicontext switch. 7*55fd7e02SRodrigo Vivi 8*55fd7e02SRodrigo ViviThey are generated from their respective platform ASM files present on 9*55fd7e02SRodrigo Vivii915/gt/shaders/clear_kernel directory. 10*55fd7e02SRodrigo Vivi 11*55fd7e02SRodrigo ViviThe generated .c files should never be modified directly. Instead, any modification 12*55fd7e02SRodrigo Vivineeds to be done on the on their respective ASM files and build instructions below 13*55fd7e02SRodrigo Vivineedes to be followed. 14*55fd7e02SRodrigo Vivi 15*55fd7e02SRodrigo ViviBuilding 16*55fd7e02SRodrigo Vivi======== 17*55fd7e02SRodrigo Vivi 18*55fd7e02SRodrigo ViviEnvironment 19*55fd7e02SRodrigo Vivi----------- 20*55fd7e02SRodrigo Vivi 21*55fd7e02SRodrigo ViviIGT GPU tool scripts and the Mesa's i965 instruction assembler tool are used 22*55fd7e02SRodrigo Vivion building. 23*55fd7e02SRodrigo Vivi 24*55fd7e02SRodrigo ViviPlease make sure your Mesa tool is compiled with "-Dtools=intel" and 25*55fd7e02SRodrigo Vivi"-Ddri-drivers=i965", and run this script from IGT source root directory" 26*55fd7e02SRodrigo Vivi 27*55fd7e02SRodrigo ViviThe instructions bellow assume: 28*55fd7e02SRodrigo Vivi * IGT gpu tools source code is located on your home directory (~) as ~/igt 29*55fd7e02SRodrigo Vivi * Mesa source code is located on your home directory (~) as ~/mesa 30*55fd7e02SRodrigo Vivi and built under the ~/mesa/build directory 31*55fd7e02SRodrigo Vivi * Linux kernel source code is under your home directory (~) as ~/linux 32*55fd7e02SRodrigo Vivi 33*55fd7e02SRodrigo ViviInstructions 34*55fd7e02SRodrigo Vivi------------ 35*55fd7e02SRodrigo Vivi 36*55fd7e02SRodrigo Vivi~ $ cp ~/linux/drivers/gpu/drm/i915/gt/shaders/clear_kernel/ivb.asm \ 37*55fd7e02SRodrigo Vivi ~/igt/lib/i915/shaders/clear_kernel/ivb.asm 38*55fd7e02SRodrigo Vivi~ $ cd ~/igt 39*55fd7e02SRodrigo Viviigt $ ./scripts/generate_clear_kernel.sh -g ivb \ 40*55fd7e02SRodrigo Vivi -m ~/mesa/build/src/intel/tools/i965_asm 41*55fd7e02SRodrigo Vivi 42*55fd7e02SRodrigo Vivi~ $ cp ~/linux/drivers/gpu/drm/i915/gt/shaders/clear_kernel/hsw.asm \ 43*55fd7e02SRodrigo Vivi ~/igt/lib/i915/shaders/clear_kernel/hsw.asm 44*55fd7e02SRodrigo Vivi~ $ cd ~/igt 45*55fd7e02SRodrigo Viviigt $ ./scripts/generate_clear_kernel.sh -g hsw \ 46*55fd7e02SRodrigo Vivi -m ~/mesa/build/src/intel/tools/i965_asm