155fd7e02SRodrigo ViviASM sources for auto generated shaders 255fd7e02SRodrigo Vivi====================================== 355fd7e02SRodrigo Vivi 455fd7e02SRodrigo ViviThe i915/gt/hsw_clear_kernel.c and i915/gt/ivb_clear_kernel.c files contain 555fd7e02SRodrigo Vivipre-compiled batch chunks that will clear any residual render cache during 655fd7e02SRodrigo Vivicontext switch. 755fd7e02SRodrigo Vivi 855fd7e02SRodrigo ViviThey are generated from their respective platform ASM files present on 955fd7e02SRodrigo Vivii915/gt/shaders/clear_kernel directory. 1055fd7e02SRodrigo Vivi 1155fd7e02SRodrigo ViviThe generated .c files should never be modified directly. Instead, any modification 1255fd7e02SRodrigo Vivineeds to be done on the on their respective ASM files and build instructions below 1355fd7e02SRodrigo Vivineedes to be followed. 1455fd7e02SRodrigo Vivi 1555fd7e02SRodrigo ViviBuilding 1655fd7e02SRodrigo Vivi======== 1755fd7e02SRodrigo Vivi 1855fd7e02SRodrigo ViviEnvironment 1955fd7e02SRodrigo Vivi----------- 2055fd7e02SRodrigo Vivi 2155fd7e02SRodrigo ViviIGT GPU tool scripts and the Mesa's i965 instruction assembler tool are used 2255fd7e02SRodrigo Vivion building. 2355fd7e02SRodrigo Vivi 2455fd7e02SRodrigo ViviPlease make sure your Mesa tool is compiled with "-Dtools=intel" and 2555fd7e02SRodrigo Vivi"-Ddri-drivers=i965", and run this script from IGT source root directory" 2655fd7e02SRodrigo Vivi 2755fd7e02SRodrigo ViviThe instructions bellow assume: 2855fd7e02SRodrigo Vivi * IGT gpu tools source code is located on your home directory (~) as ~/igt 2955fd7e02SRodrigo Vivi * Mesa source code is located on your home directory (~) as ~/mesa 3055fd7e02SRodrigo Vivi and built under the ~/mesa/build directory 3155fd7e02SRodrigo Vivi * Linux kernel source code is under your home directory (~) as ~/linux 3255fd7e02SRodrigo Vivi 3355fd7e02SRodrigo ViviInstructions 3455fd7e02SRodrigo Vivi------------ 3555fd7e02SRodrigo Vivi 3655fd7e02SRodrigo Vivi~ $ cp ~/linux/drivers/gpu/drm/i915/gt/shaders/clear_kernel/ivb.asm \ 3755fd7e02SRodrigo Vivi ~/igt/lib/i915/shaders/clear_kernel/ivb.asm 3855fd7e02SRodrigo Vivi~ $ cd ~/igt 3955fd7e02SRodrigo Viviigt $ ./scripts/generate_clear_kernel.sh -g ivb \ 4055fd7e02SRodrigo Vivi -m ~/mesa/build/src/intel/tools/i965_asm 4155fd7e02SRodrigo Vivi 4255fd7e02SRodrigo Vivi~ $ cp ~/linux/drivers/gpu/drm/i915/gt/shaders/clear_kernel/hsw.asm \ 4355fd7e02SRodrigo Vivi ~/igt/lib/i915/shaders/clear_kernel/hsw.asm 4455fd7e02SRodrigo Vivi~ $ cd ~/igt 4555fd7e02SRodrigo Viviigt $ ./scripts/generate_clear_kernel.sh -g hsw \ 4655fd7e02SRodrigo Vivi -m ~/mesa/build/src/intel/tools/i965_asm