15a7eeb8bSRodrigo ViviASM sources for auto generated shaders 25a7eeb8bSRodrigo Vivi====================================== 35a7eeb8bSRodrigo Vivi 45a7eeb8bSRodrigo ViviThe i915/gt/hsw_clear_kernel.c and i915/gt/ivb_clear_kernel.c files contain 55a7eeb8bSRodrigo Vivipre-compiled batch chunks that will clear any residual render cache during 65a7eeb8bSRodrigo Vivicontext switch. 75a7eeb8bSRodrigo Vivi 85a7eeb8bSRodrigo ViviThey are generated from their respective platform ASM files present on 95a7eeb8bSRodrigo Vivii915/gt/shaders/clear_kernel directory. 105a7eeb8bSRodrigo Vivi 115a7eeb8bSRodrigo ViviThe generated .c files should never be modified directly. Instead, any modification 125a7eeb8bSRodrigo Vivineeds to be done on the on their respective ASM files and build instructions below 13*c156ef57SNitin Goteneeds to be followed. 145a7eeb8bSRodrigo Vivi 155a7eeb8bSRodrigo ViviBuilding 165a7eeb8bSRodrigo Vivi======== 175a7eeb8bSRodrigo Vivi 185a7eeb8bSRodrigo ViviEnvironment 195a7eeb8bSRodrigo Vivi----------- 205a7eeb8bSRodrigo Vivi 215a7eeb8bSRodrigo ViviIGT GPU tool scripts and the Mesa's i965 instruction assembler tool are used 225a7eeb8bSRodrigo Vivion building. 235a7eeb8bSRodrigo Vivi 245a7eeb8bSRodrigo ViviPlease make sure your Mesa tool is compiled with "-Dtools=intel" and 255a7eeb8bSRodrigo Vivi"-Ddri-drivers=i965", and run this script from IGT source root directory" 265a7eeb8bSRodrigo Vivi 27*c156ef57SNitin GoteThe instructions below assume: 285a7eeb8bSRodrigo Vivi * IGT gpu tools source code is located on your home directory (~) as ~/igt 295a7eeb8bSRodrigo Vivi * Mesa source code is located on your home directory (~) as ~/mesa 305a7eeb8bSRodrigo Vivi and built under the ~/mesa/build directory 315a7eeb8bSRodrigo Vivi * Linux kernel source code is under your home directory (~) as ~/linux 325a7eeb8bSRodrigo Vivi 335a7eeb8bSRodrigo ViviInstructions 345a7eeb8bSRodrigo Vivi------------ 355a7eeb8bSRodrigo Vivi 365a7eeb8bSRodrigo Vivi~ $ cp ~/linux/drivers/gpu/drm/i915/gt/shaders/clear_kernel/ivb.asm \ 375a7eeb8bSRodrigo Vivi ~/igt/lib/i915/shaders/clear_kernel/ivb.asm 385a7eeb8bSRodrigo Vivi~ $ cd ~/igt 395a7eeb8bSRodrigo Viviigt $ ./scripts/generate_clear_kernel.sh -g ivb \ 405a7eeb8bSRodrigo Vivi -m ~/mesa/build/src/intel/tools/i965_asm 415a7eeb8bSRodrigo Vivi 425a7eeb8bSRodrigo Vivi~ $ cp ~/linux/drivers/gpu/drm/i915/gt/shaders/clear_kernel/hsw.asm \ 435a7eeb8bSRodrigo Vivi ~/igt/lib/i915/shaders/clear_kernel/hsw.asm 445a7eeb8bSRodrigo Vivi~ $ cd ~/igt 455a7eeb8bSRodrigo Viviigt $ ./scripts/generate_clear_kernel.sh -g hsw \ 465a7eeb8bSRodrigo Vivi -m ~/mesa/build/src/intel/tools/i965_asm 47