{"id":6005,"url":"https://patchwork.libcamera.org/api/1.1/series/6005/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=6005","project":{"id":1,"url":"https://patchwork.libcamera.org/api/1.1/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"name":"RFC/RFT: gpuisp: Multipass with speed optimisations on top","date":"2026-06-18T12:22:13","submitter":{"id":175,"url":"https://patchwork.libcamera.org/api/1.1/people/175/?format=json","name":"Bryan O'Donoghue","email":"bryan.odonoghue@linaro.org"},"version":1,"total":30,"received_total":30,"received_all":true,"mbox":"https://patchwork.libcamera.org/series/6005/mbox/","cover_letter":{"id":26933,"url":"https://patchwork.libcamera.org/api/1.1/covers/26933/?format=json","web_url":"https://patchwork.libcamera.org/cover/26933/","msgid":"<20260618122245.946138-1-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:13","name":"[00/30] RFC/RFT: gpuisp: Multipass with speed optimisations on top","mbox":"https://patchwork.libcamera.org/cover/26933/mbox/"},"patches":[{"id":26935,"url":"https://patchwork.libcamera.org/api/1.1/patches/26935/?format=json","web_url":"https://patchwork.libcamera.org/patch/26935/","msgid":"<20260618122245.946138-2-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:14","name":"[01/30] libcamera: software_isp: Rename Bayer classes to SoftwareIspPipeline","mbox":"https://patchwork.libcamera.org/patch/26935/mbox/"},{"id":26934,"url":"https://patchwork.libcamera.org/api/1.1/patches/26934/?format=json","web_url":"https://patchwork.libcamera.org/patch/26934/","msgid":"<20260618122245.946138-3-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:15","name":"[02/30] libcamera: software_isp: gpu: Change the name of eglImageBayerOut_ to eglImageRGBAOut_","mbox":"https://patchwork.libcamera.org/patch/26934/mbox/"},{"id":26936,"url":"https://patchwork.libcamera.org/api/1.1/patches/26936/?format=json","web_url":"https://patchwork.libcamera.org/patch/26936/","msgid":"<20260618122245.946138-4-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:16","name":"[03/30] libcamera: software_isp: gpu: rename debayerGPU to processGPU","mbox":"https://patchwork.libcamera.org/patch/26936/mbox/"},{"id":26937,"url":"https://patchwork.libcamera.org/api/1.1/patches/26937/?format=json","web_url":"https://patchwork.libcamera.org/patch/26937/","msgid":"<20260618122245.946138-5-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:17","name":"[04/30] libcamera: software_isp: egl: Add new helper attachTextureToFBO","mbox":"https://patchwork.libcamera.org/patch/26937/mbox/"},{"id":26938,"url":"https://patchwork.libcamera.org/api/1.1/patches/26938/?format=json","web_url":"https://patchwork.libcamera.org/patch/26938/","msgid":"<20260618122245.946138-6-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:18","name":"[05/30] libcamera: software_isp: gpu_pipeline_shader_pass: Add base class GpuPipelineShaderPass","mbox":"https://patchwork.libcamera.org/patch/26938/mbox/"},{"id":26940,"url":"https://patchwork.libcamera.org/api/1.1/patches/26940/?format=json","web_url":"https://patchwork.libcamera.org/patch/26940/","msgid":"<20260618122245.946138-7-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:19","name":"[06/30] libcamera: software_isp: gpu_pipeline_shader_pass: Add GpuPipelineShaderPassDemosiac","mbox":"https://patchwork.libcamera.org/patch/26940/mbox/"},{"id":26939,"url":"https://patchwork.libcamera.org/api/1.1/patches/26939/?format=json","web_url":"https://patchwork.libcamera.org/patch/26939/","msgid":"<20260618122245.946138-8-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:20","name":"[07/30] libcamera: software_isp: gpu: Switch to using GpuIspShaderPassDemosiac","mbox":"https://patchwork.libcamera.org/patch/26939/mbox/"},{"id":26941,"url":"https://patchwork.libcamera.org/api/1.1/patches/26941/?format=json","web_url":"https://patchwork.libcamera.org/patch/26941/","msgid":"<20260618122245.946138-9-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:21","name":"[08/30] libcamera: software_isp: gpu: Drop unused method definitions","mbox":"https://patchwork.libcamera.org/patch/26941/mbox/"},{"id":26942,"url":"https://patchwork.libcamera.org/api/1.1/patches/26942/?format=json","web_url":"https://patchwork.libcamera.org/patch/26942/","msgid":"<20260618122245.946138-10-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:22","name":"[09/30] libcamera: software_isp: gpu: Make Rectangle window_ a local variable in configure()","mbox":"https://patchwork.libcamera.org/patch/26942/mbox/"},{"id":26943,"url":"https://patchwork.libcamera.org/api/1.1/patches/26943/?format=json","web_url":"https://patchwork.libcamera.org/patch/26943/","msgid":"<20260618122245.946138-11-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:23","name":"[10/30] libcamera: software_isp: gpu_pipeline_shader_pass: Move common attribute and uniform variables to base shader class","mbox":"https://patchwork.libcamera.org/patch/26943/mbox/"},{"id":26944,"url":"https://patchwork.libcamera.org/api/1.1/patches/26944/?format=json","web_url":"https://patchwork.libcamera.org/patch/26944/","msgid":"<20260618122245.946138-12-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:24","name":"[11/30] libcamera: software_isp: gpu_pipeline_shader_pass: Move common shader selection logic into base class in new method initShaders()","mbox":"https://patchwork.libcamera.org/patch/26944/mbox/"},{"id":26945,"url":"https://patchwork.libcamera.org/api/1.1/patches/26945/?format=json","web_url":"https://patchwork.libcamera.org/patch/26945/","msgid":"<20260618122245.946138-13-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:25","name":"[12/30] libcamera: shaders: Split packed and unpacked demosiac up","mbox":"https://patchwork.libcamera.org/patch/26945/mbox/"},{"id":26946,"url":"https://patchwork.libcamera.org/api/1.1/patches/26946/?format=json","web_url":"https://patchwork.libcamera.org/patch/26946/","msgid":"<20260618122245.946138-14-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:26","name":"[13/30] libcamera: shaders: bayer_glr16_to_rgba.frag: Use bilinear filtering","mbox":"https://patchwork.libcamera.org/patch/26946/mbox/"},{"id":26947,"url":"https://patchwork.libcamera.org/api/1.1/patches/26947/?format=json","web_url":"https://patchwork.libcamera.org/patch/26947/","msgid":"<20260618122245.946138-15-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:27","name":"[14/30] libcamera: software_isp: gpu: Add GpuIspShaderPassBlcNormalise","mbox":"https://patchwork.libcamera.org/patch/26947/mbox/"},{"id":26948,"url":"https://patchwork.libcamera.org/api/1.1/patches/26948/?format=json","web_url":"https://patchwork.libcamera.org/patch/26948/","msgid":"<20260618122245.946138-16-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:28","name":"[15/30] libcamera: software_isp: egl: Extend eGL::createTexture2D to understand floats","mbox":"https://patchwork.libcamera.org/patch/26948/mbox/"},{"id":26949,"url":"https://patchwork.libcamera.org/api/1.1/patches/26949/?format=json","web_url":"https://patchwork.libcamera.org/patch/26949/","msgid":"<20260618122245.946138-17-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:29","name":"[16/30] libcamera: software_isp: egl: Move to GLES 3.0","mbox":"https://patchwork.libcamera.org/patch/26949/mbox/"},{"id":26950,"url":"https://patchwork.libcamera.org/api/1.1/patches/26950/?format=json","web_url":"https://patchwork.libcamera.org/patch/26950/","msgid":"<20260618122245.946138-18-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:30","name":"[17/30] libcamera: software_isp: egl: Rename createTexture2D to createInputTexture2D","mbox":"https://patchwork.libcamera.org/patch/26950/mbox/"},{"id":26952,"url":"https://patchwork.libcamera.org/api/1.1/patches/26952/?format=json","web_url":"https://patchwork.libcamera.org/patch/26952/","msgid":"<20260618122245.946138-19-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:31","name":"[18/30] libcamera: software_isp: egl: Use Texture Unit 3 for final output texture","mbox":"https://patchwork.libcamera.org/patch/26952/mbox/"},{"id":26951,"url":"https://patchwork.libcamera.org/api/1.1/patches/26951/?format=json","web_url":"https://patchwork.libcamera.org/patch/26951/","msgid":"<20260618122245.946138-20-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:32","name":"[19/30] libcamera: software_isp: egl: Add Ping/Pong buffers with start/stop bindings only","mbox":"https://patchwork.libcamera.org/patch/26951/mbox/"},{"id":26953,"url":"https://patchwork.libcamera.org/api/1.1/patches/26953/?format=json","web_url":"https://patchwork.libcamera.org/patch/26953/","msgid":"<20260618122245.946138-21-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:33","name":"[20/30] libcamera: software_isp: gpu: Include GpuIspShaderPassBlcNormalise in init sequence","mbox":"https://patchwork.libcamera.org/patch/26953/mbox/"},{"id":26954,"url":"https://patchwork.libcamera.org/api/1.1/patches/26954/?format=json","web_url":"https://patchwork.libcamera.org/patch/26954/","msgid":"<20260618122245.946138-22-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:34","name":"[21/30] libcamera: software_isp: egl: Add createOutputTexture2D","mbox":"https://patchwork.libcamera.org/patch/26954/mbox/"},{"id":26955,"url":"https://patchwork.libcamera.org/api/1.1/patches/26955/?format=json","web_url":"https://patchwork.libcamera.org/patch/26955/","msgid":"<20260618122245.946138-23-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:35","name":"[22/30] libcamera: software_isp: gpu: Swtich to two pass logic","mbox":"https://patchwork.libcamera.org/patch/26955/mbox/"},{"id":26956,"url":"https://patchwork.libcamera.org/api/1.1/patches/26956/?format=json","web_url":"https://patchwork.libcamera.org/patch/26956/","msgid":"<20260618122245.946138-24-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:36","name":"[23/30] libcamera: software_isp: egl: Add method lookups for GPU benchmark rountines","mbox":"https://patchwork.libcamera.org/patch/26956/mbox/"},{"id":26957,"url":"https://patchwork.libcamera.org/api/1.1/patches/26957/?format=json","web_url":"https://patchwork.libcamera.org/patch/26957/","msgid":"<20260618122245.946138-25-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:37","name":"[24/30] libcamera: software_isp: egl: Add eglBenchMark","mbox":"https://patchwork.libcamera.org/patch/26957/mbox/"},{"id":26958,"url":"https://patchwork.libcamera.org/api/1.1/patches/26958/?format=json","web_url":"https://patchwork.libcamera.org/patch/26958/","msgid":"<20260618122245.946138-26-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:38","name":"[25/30] libcamera: software_isp: gpu_pipeline_shader_pass: Add shader DEBUG time logging","mbox":"https://patchwork.libcamera.org/patch/26958/mbox/"},{"id":26960,"url":"https://patchwork.libcamera.org/api/1.1/patches/26960/?format=json","web_url":"https://patchwork.libcamera.org/patch/26960/","msgid":"<20260618122245.946138-27-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:39","name":"[26/30] libcamera: software_isp: gpu: Do a synchronous BenchMark print after syncOutput","mbox":"https://patchwork.libcamera.org/patch/26960/mbox/"},{"id":26959,"url":"https://patchwork.libcamera.org/api/1.1/patches/26959/?format=json","web_url":"https://patchwork.libcamera.org/patch/26959/","msgid":"<20260618122245.946138-28-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:40","name":"[27/30] libcamera: software_isp: egl: Add updateInputTexture2D","mbox":"https://patchwork.libcamera.org/patch/26959/mbox/"},{"id":26961,"url":"https://patchwork.libcamera.org/api/1.1/patches/26961/?format=json","web_url":"https://patchwork.libcamera.org/patch/26961/","msgid":"<20260618122245.946138-29-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:41","name":"[28/30] libcamera: software_isp: gpu: Switch to using glTexSubImage2D on slow path upload","mbox":"https://patchwork.libcamera.org/patch/26961/mbox/"},{"id":26962,"url":"https://patchwork.libcamera.org/api/1.1/patches/26962/?format=json","web_url":"https://patchwork.libcamera.org/patch/26962/","msgid":"<20260618122245.946138-30-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:42","name":"[29/30] libcamera: software_isp: gpu: Cache output framebuffers, only recreate when necessary","mbox":"https://patchwork.libcamera.org/patch/26962/mbox/"},{"id":26963,"url":"https://patchwork.libcamera.org/api/1.1/patches/26963/?format=json","web_url":"https://patchwork.libcamera.org/patch/26963/","msgid":"<20260618122245.946138-31-bryan.odonoghue@linaro.org>","date":"2026-06-18T12:22:43","name":"[30/30] libcamera: software_isp: gpu: Cache input framebuffers, only do texture creation when required","mbox":"https://patchwork.libcamera.org/patch/26963/mbox/"}]}