)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"ae565291009b68110e379ad5137bf2eca9f62f71","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"3827b251_2f955fa9","updated":"2026-04-15 12:50:14.000000000","message":"Bot messages are all about the outdated parent commit.","commit_id":"6b129b2add95a96e26e6146d5a6d17f23b2ca420"},{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"65e8037a7069aa606f7cbdd43a53a3077c5fe2ef","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"dca196a5_6dcf5555","updated":"2026-06-07 10:24:25.000000000","message":"Just a few minor things and it needs a rebase. Looks quite nice overall 😁","commit_id":"6b129b2add95a96e26e6146d5a6d17f23b2ca420"},{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"1005911bfe34eafecb763f8dc25c34cd89b1b4d8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"12d6204f_4a722307","updated":"2026-06-09 17:59:36.000000000","message":"Ouch, looks like I opened a can of worms with the GTT_Offset... sorry about that.\nIt also shows that we were about to miss things around the various possible\nconfigurations (DYN_CPU\u003dy/n, STATIC_MMIO vs DYNAMIC_MMIO).\n\nIf you rather see this as something annoying than a challenge, I could try\nto refactor this ahead. So you\u0027d only have to add the new GTT constants. Let\nme know if I should. My strategy would be to avoid runtime detection of G45\nvs. i965.","commit_id":"570ae692e98c6dcea118ec596c9d9fced6ab411e"},{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"af4532eb4cc521b6d2b1ae5a78adb6f7a7082dbf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"6109b079_2e6820f4","updated":"2026-06-17 19:14:37.000000000","message":"Push pending? 🤨","commit_id":"570ae692e98c6dcea118ec596c9d9fced6ab411e"},{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"1b90410110be3b13709d8f9919644e6cf1e91cc2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"2288ebd6_6f49be01","in_reply_to":"12d6204f_4a722307","updated":"2026-06-09 18:14:46.000000000","message":"Had another thought after looking at the i945 situation. This currently\ncan only work with DYNAMIC_MMIO, because of the `Config.Default_MMIO_Base`\nused in the istantiation of `GMA.Registers.GTT_32`.\n\nWe could add another config variable, e.g. `CONFIG_GFX_GMA_DEFAULT_GTT`,\nand use that for the static initialization. When its built for STATIC_MMIO\n(i.e. address has to be known at compile time) the integrator would be\nresponsible to set the correct value that includes the offset. And the\ncode would only have to deal with offsets on the dynamic paths.\n\nIf I don\u0027t miss anything, this could serve both i945 and i965 well enough\n(and we could allow DYN_CPU\u003dy w/ DYNAMIC_MMIO for G45 and i965, though\nprobably YAGNI).","commit_id":"570ae692e98c6dcea118ec596c9d9fced6ab411e"},{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"f3d8b6c35016bcf9dea8db5c39338a95d1bd2d07","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"d69de48c_d8edd3bc","in_reply_to":"2288ebd6_6f49be01","updated":"2026-06-09 18:17:01.000000000","message":"NB. if we want to track the dependencies between these configs and\ngenerations, it\u0027s time for Kconfig.","commit_id":"570ae692e98c6dcea118ec596c9d9fced6ab411e"}],"common/g45/hw-gfx-gma-plls.adb":[{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"65e8037a7069aa606f7cbdd43a53a3077c5fe2ef","unresolved":true,"context_lines":[{"line_number":162,"context_line":"      P1_Lower     \u003d\u003e   1,           P1_Upper  \u003d\u003e   8,"},{"line_number":163,"context_line":"      P2_Fast      \u003d\u003e   7,           P2_Slow   \u003d\u003e  14,"},{"line_number":164,"context_line":"      P2_Threshold \u003d\u003e 112_000_000,"},{"line_number":165,"context_line":"      VCO_Lower    \u003d\u003e 1_400_000_000, VCO_Upper \u003d\u003e 2_800_000_000);"},{"line_number":166,"context_line":""},{"line_number":167,"context_line":"   ----------------------------------------------------------------------------"},{"line_number":168,"context_line":""}],"source_content_type":"application/octet-stream","patch_set":1,"id":"d7fe32b0_051ee4bb","line":165,"updated":"2026-06-07 10:24:25.000000000","message":"Shouldn\u0027t `I9XX_LVDS_Limits` be added above with the comment? i.e. keeping\n`All_Other_Limits` at the bottom.","commit_id":"6b129b2add95a96e26e6146d5a6d17f23b2ca420"},{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"1005911bfe34eafecb763f8dc25c34cd89b1b4d8","unresolved":false,"context_lines":[{"line_number":162,"context_line":"      P1_Lower     \u003d\u003e   1,           P1_Upper  \u003d\u003e   8,"},{"line_number":163,"context_line":"      P2_Fast      \u003d\u003e   7,           P2_Slow   \u003d\u003e  14,"},{"line_number":164,"context_line":"      P2_Threshold \u003d\u003e 112_000_000,"},{"line_number":165,"context_line":"      VCO_Lower    \u003d\u003e 1_400_000_000, VCO_Upper \u003d\u003e 2_800_000_000);"},{"line_number":166,"context_line":""},{"line_number":167,"context_line":"   ----------------------------------------------------------------------------"},{"line_number":168,"context_line":""}],"source_content_type":"application/octet-stream","patch_set":1,"id":"09bb7cde_a0824ef3","line":165,"in_reply_to":"d7fe32b0_051ee4bb","updated":"2026-06-09 17:59:36.000000000","message":"Done","commit_id":"6b129b2add95a96e26e6146d5a6d17f23b2ca420"}],"common/g45/hw-gfx-gma-port_detect.adb":[{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"65e8037a7069aa606f7cbdd43a53a3077c5fe2ef","unresolved":true,"context_lines":[{"line_number":75,"context_line":"   begin"},{"line_number":76,"context_line":"      Config.Valid_Port (Analog) :\u003d True;"},{"line_number":77,"context_line":"      Config.Valid_Port (LVDS)   :\u003d Config.CPU_GM45 or Config.CPU_GM965;"},{"line_number":78,"context_line":"      for HDMI_Port in GMCH_HDMI_Port loop"},{"line_number":79,"context_line":"         Registers.Is_Set_Mask"},{"line_number":80,"context_line":"           (Register \u003d\u003e GMCH_HDMI (HDMI_Port),"},{"line_number":81,"context_line":"            Mask     \u003d\u003e PORT_DETECTED,"},{"line_number":82,"context_line":"            Result   \u003d\u003e Detected);"},{"line_number":83,"context_line":"         Config.Valid_Port (To_HDMI_Port (HDMI_Port)) :\u003d Detected;"},{"line_number":84,"context_line":"         hotplug_mask_set :\u003d hotplug_mask_set or"},{"line_number":85,"context_line":"           (if Detected then HDMI_PORT_HOTPLUG_EN (HDMI_Port) else 0);"},{"line_number":86,"context_line":"      end loop;"},{"line_number":87,"context_line":"      for DP_Port in GMCH_DP_Port loop"},{"line_number":88,"context_line":"         Registers.Is_Set_Mask"},{"line_number":89,"context_line":"           (Register \u003d\u003e GMCH_DP (DP_Port),"},{"line_number":90,"context_line":"            Mask     \u003d\u003e PORT_DETECTED,"},{"line_number":91,"context_line":"            Result   \u003d\u003e Detected);"},{"line_number":92,"context_line":"         Config.Valid_Port (To_DP_Port (DP_Port)) :\u003d Detected;"},{"line_number":93,"context_line":"         hotplug_mask_set :\u003d hotplug_mask_set or"},{"line_number":94,"context_line":"           (if Detected then DP_PORT_HOTPLUG_EN (DP_Port) else 0);"},{"line_number":95,"context_line":"      end loop;"},{"line_number":96,"context_line":"      Registers.Write"},{"line_number":97,"context_line":"        (Register \u003d\u003e Registers.PORT_HOTPLUG_EN,"},{"line_number":98,"context_line":"         Value \u003d\u003e hotplug_mask_set);"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"6e283279_e145ca92","line":95,"range":{"start_line":78,"start_character":0,"end_line":95,"end_character":15},"updated":"2026-06-07 10:24:25.000000000","message":"Shouldn\u0027t this be guarded? i.e. don\u0027t try to access these registers on GM965.","commit_id":"6b129b2add95a96e26e6146d5a6d17f23b2ca420"},{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"1005911bfe34eafecb763f8dc25c34cd89b1b4d8","unresolved":false,"context_lines":[{"line_number":75,"context_line":"   begin"},{"line_number":76,"context_line":"      Config.Valid_Port (Analog) :\u003d True;"},{"line_number":77,"context_line":"      Config.Valid_Port (LVDS)   :\u003d Config.CPU_GM45 or Config.CPU_GM965;"},{"line_number":78,"context_line":"      for HDMI_Port in GMCH_HDMI_Port loop"},{"line_number":79,"context_line":"         Registers.Is_Set_Mask"},{"line_number":80,"context_line":"           (Register \u003d\u003e GMCH_HDMI (HDMI_Port),"},{"line_number":81,"context_line":"            Mask     \u003d\u003e PORT_DETECTED,"},{"line_number":82,"context_line":"            Result   \u003d\u003e Detected);"},{"line_number":83,"context_line":"         Config.Valid_Port (To_HDMI_Port (HDMI_Port)) :\u003d Detected;"},{"line_number":84,"context_line":"         hotplug_mask_set :\u003d hotplug_mask_set or"},{"line_number":85,"context_line":"           (if Detected then HDMI_PORT_HOTPLUG_EN (HDMI_Port) else 0);"},{"line_number":86,"context_line":"      end loop;"},{"line_number":87,"context_line":"      for DP_Port in GMCH_DP_Port loop"},{"line_number":88,"context_line":"         Registers.Is_Set_Mask"},{"line_number":89,"context_line":"           (Register \u003d\u003e GMCH_DP (DP_Port),"},{"line_number":90,"context_line":"            Mask     \u003d\u003e PORT_DETECTED,"},{"line_number":91,"context_line":"            Result   \u003d\u003e Detected);"},{"line_number":92,"context_line":"         Config.Valid_Port (To_DP_Port (DP_Port)) :\u003d Detected;"},{"line_number":93,"context_line":"         hotplug_mask_set :\u003d hotplug_mask_set or"},{"line_number":94,"context_line":"           (if Detected then DP_PORT_HOTPLUG_EN (DP_Port) else 0);"},{"line_number":95,"context_line":"      end loop;"},{"line_number":96,"context_line":"      Registers.Write"},{"line_number":97,"context_line":"        (Register \u003d\u003e Registers.PORT_HOTPLUG_EN,"},{"line_number":98,"context_line":"         Value \u003d\u003e hotplug_mask_set);"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"a5c3a00e_b8b9355d","line":95,"range":{"start_line":78,"start_character":0,"end_line":95,"end_character":15},"in_reply_to":"6e283279_e145ca92","updated":"2026-06-09 17:59:36.000000000","message":"Done","commit_id":"6b129b2add95a96e26e6146d5a6d17f23b2ca420"}],"common/g45/hw-gfx-gma-power_and_clocks.adb":[{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"65e8037a7069aa606f7cbdd43a53a3077c5fe2ef","unresolved":true,"context_lines":[{"line_number":119,"context_line":"            if (Shift_Right (GCFGC, 8) and 16#1f#) in 1 .. 3 then"},{"line_number":120,"context_line":"               CDClk_Sel :\u003d Natural (Shift_Right (GCFGC, 8) and 16#1f#) - 1;"},{"line_number":121,"context_line":"            else"},{"line_number":122,"context_line":"               CDClk_Sel :\u003d 0;"},{"line_number":123,"context_line":"            end if;"},{"line_number":124,"context_line":"         elsif Config.Has_GMCH_Mobile_VCO then"},{"line_number":125,"context_line":"            CDClk_Sel :\u003d Natural (Shift_Right (GCFGC, 12) and 1);"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"1b8ec834_fa21c29d","line":122,"range":{"start_line":122,"start_character":28,"end_line":122,"end_character":29},"updated":"2026-06-07 10:24:25.000000000","message":"Changing this to a 7 (or `Div_Array\u0027Last`) would give us a divisor of 1\nand then the `in Config.CDClk_Range` check should fail. I think this\nwould be closer to what Linux does, i.e. use the 200MHz default on any\nunknown value.","commit_id":"6b129b2add95a96e26e6146d5a6d17f23b2ca420"},{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"1005911bfe34eafecb763f8dc25c34cd89b1b4d8","unresolved":false,"context_lines":[{"line_number":119,"context_line":"            if (Shift_Right (GCFGC, 8) and 16#1f#) in 1 .. 3 then"},{"line_number":120,"context_line":"               CDClk_Sel :\u003d Natural (Shift_Right (GCFGC, 8) and 16#1f#) - 1;"},{"line_number":121,"context_line":"            else"},{"line_number":122,"context_line":"               CDClk_Sel :\u003d 0;"},{"line_number":123,"context_line":"            end if;"},{"line_number":124,"context_line":"         elsif Config.Has_GMCH_Mobile_VCO then"},{"line_number":125,"context_line":"            CDClk_Sel :\u003d Natural (Shift_Right (GCFGC, 12) and 1);"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"0ed0c78e_d8a40c64","line":122,"range":{"start_line":122,"start_character":28,"end_line":122,"end_character":29},"in_reply_to":"1b8ec834_fa21c29d","updated":"2026-06-09 17:59:36.000000000","message":"Done","commit_id":"6b129b2add95a96e26e6146d5a6d17f23b2ca420"}],"common/hw-gfx-gma-config.ads.template":[{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"1005911bfe34eafecb763f8dc25c34cd89b1b4d8","unresolved":true,"context_lines":[{"line_number":460,"context_line":"      elsif Gen_Ironlake  then 16#0e_5020#"},{"line_number":461,"context_line":"      else                     16#06_5020#);"},{"line_number":462,"context_line":""},{"line_number":463,"context_line":"   MMIO_GTT_Offset : \u003chswvar\u003e Natural :\u003d"},{"line_number":464,"context_line":"     (if Has_I945_GTT_BAR then 16#00_0000#"},{"line_number":465,"context_line":"      elsif Has_64bit_GTT then 16#80_0000#"},{"line_number":466,"context_line":"      else 16#20_0000#);"}],"source_content_type":"application/octet-stream","patch_set":5,"id":"b7627a63_26ba4d0a","line":463,"range":{"start_line":463,"start_character":22,"end_line":463,"end_character":28},"updated":"2026-06-09 17:59:36.000000000","message":"Broadwell is seriously lowering my mood here... I was hoping we could make this\na constant.\n\nStill, we had separate `MMIO_GTT_32_` and `MMIO_GTT_64_Offset` constants before,\nI guess it would be easier to keep them separate. Then to have the i965 offset\nin a `MMIO_GTT_32_Offest` here and keep it a constant, we would have to enforce\n`DYN_CPU\u003dn` for it. WDYT? The thought is fresh, but I think it would solve the\ntrouble with GNATprove complaining about depending on `Config.Variable_State`.\n\nOverall that would seem more consistent. So far we had everything constant that\nis sitting on a mainboard. And no mainboard can have both i965GM and GM45. We\ncould also make i965 a new Generation that uses the G45 source files. That\u0027s\nlike what I have in the queue for ADL-P.","commit_id":"570ae692e98c6dcea118ec596c9d9fced6ab411e"},{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"07b59f093fe7a1487e90f3872a7995b607b4b37e","unresolved":false,"context_lines":[{"line_number":460,"context_line":"      elsif Gen_Ironlake  then 16#0e_5020#"},{"line_number":461,"context_line":"      else                     16#06_5020#);"},{"line_number":462,"context_line":""},{"line_number":463,"context_line":"   MMIO_GTT_Offset : \u003chswvar\u003e Natural :\u003d"},{"line_number":464,"context_line":"     (if Has_I945_GTT_BAR then 16#00_0000#"},{"line_number":465,"context_line":"      elsif Has_64bit_GTT then 16#80_0000#"},{"line_number":466,"context_line":"      else 16#20_0000#);"}],"source_content_type":"application/octet-stream","patch_set":5,"id":"56e71af5_b368218f","line":463,"range":{"start_line":463,"start_character":22,"end_line":463,"end_character":28},"in_reply_to":"b7627a63_26ba4d0a","updated":"2026-06-28 09:23:56.000000000","message":"Done","commit_id":"570ae692e98c6dcea118ec596c9d9fced6ab411e"},{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"de191f892ab6e5ccecb249855b73023effaf22f5","unresolved":true,"context_lines":[{"line_number":461,"context_line":"      else                     16#06_5020#);"},{"line_number":462,"context_line":""},{"line_number":463,"context_line":"   MMIO_GTT_32_Offset : constant Natural :\u003d"},{"line_number":464,"context_line":"     (if Has_I945_GTT_BAR then 16#00_0000# else 16#20_0000#);"},{"line_number":465,"context_line":"   MMIO_GTT_64_Offset : constant Natural :\u003d 16#80_0000#;"},{"line_number":466,"context_line":"   MMIO_GTT_Offset : \u003chswvar\u003e Natural :\u003d"},{"line_number":467,"context_line":"     (if Has_64bit_GTT then MMIO_GTT_64_Offset else MMIO_GTT_32_Offset);"}],"source_content_type":"application/octet-stream","patch_set":6,"id":"19400d50_dd1a3d00","line":464,"updated":"2026-06-18 11:09:01.000000000","message":"Aren\u0027t we missing the `16#0008_0000#` for GM965 from PS1 now?\n\nI was a bit confused that GNATprove doesn\u0027t complain about variable state\naccess in `Set_Register_Base ()` anymore. Well, maybe still am confused.\n\nIf the current patchset works, it\u0027s fine. If not, maybe it\u0027s best we return\nto the solution from PS1. Leave a TODO comment that it only works with\n`CONFIG_GFX_GMA_DYN_CPU\u003dy` and clean things up later when somebody\nhas the time?","commit_id":"ddac5912cbc8a44bcbe8de086016255ab36af93e"},{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"07b59f093fe7a1487e90f3872a7995b607b4b37e","unresolved":false,"context_lines":[{"line_number":461,"context_line":"      else                     16#06_5020#);"},{"line_number":462,"context_line":""},{"line_number":463,"context_line":"   MMIO_GTT_32_Offset : constant Natural :\u003d"},{"line_number":464,"context_line":"     (if Has_I945_GTT_BAR then 16#00_0000# else 16#20_0000#);"},{"line_number":465,"context_line":"   MMIO_GTT_64_Offset : constant Natural :\u003d 16#80_0000#;"},{"line_number":466,"context_line":"   MMIO_GTT_Offset : \u003chswvar\u003e Natural :\u003d"},{"line_number":467,"context_line":"     (if Has_64bit_GTT then MMIO_GTT_64_Offset else MMIO_GTT_32_Offset);"}],"source_content_type":"application/octet-stream","patch_set":6,"id":"f531d4ee_4b14c7ee","line":464,"in_reply_to":"19400d50_dd1a3d00","updated":"2026-06-28 09:23:56.000000000","message":"Done","commit_id":"ddac5912cbc8a44bcbe8de086016255ab36af93e"}],"common/hw-gfx-gma-display_probing.adb":[{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"e443b98b1a3c0da5cc6a1b152efe4a3c1c62a0a9","unresolved":false,"context_lines":[{"line_number":21,"context_line":"with HW.GFX.GMA.Panel;"},{"line_number":22,"context_line":"with HW.GFX.GMA.Connectors;"},{"line_number":23,"context_line":"with HW.GFX.GMA.Port_Detect;"},{"line_number":24,"context_line":"with HW.GFX.GMA.Power_And_Clocks;"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"with HW.Debug;"},{"line_number":27,"context_line":"with GNAT.Source_Info;"}],"source_content_type":"application/octet-stream","patch_set":3,"id":"88cd68d3_935dd5fd","line":24,"updated":"2026-06-09 13:16:28.000000000","message":"Config(s): gm965\n```\nhw-gfx-gma-display_probing.adb:24: error: file \"hw-gfx-gma-power_and_clocks.ads\" not found\n```","commit_id":"da4dcc36387482d91a10e73b66fb992a265da3cb"}],"common/hw-gfx-gma-dp_aux_request.adb":[{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"e443b98b1a3c0da5cc6a1b152efe4a3c1c62a0a9","unresolved":false,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"with HW.GFX.GMA.Config;"},{"line_number":21,"context_line":"with HW.GFX.GMA.Registers;"},{"line_number":22,"context_line":"with HW.GFX.GMA.Power_And_Clocks;"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"use type HW.Word8;"},{"line_number":25,"context_line":"use type HW.GFX.GMA.Registers.Registers_Invalid_Index;"}],"source_content_type":"application/octet-stream","patch_set":3,"id":"01c3e58d_c57fcce5","line":22,"updated":"2026-06-09 13:16:28.000000000","message":"Config(s): gm965\n```\nhw-gfx-gma-dp_aux_request.adb:22: error: file \"hw-gfx-gma-power_and_clocks.ads\" not found\n```","commit_id":"da4dcc36387482d91a10e73b66fb992a265da3cb"}],"common/hw-gfx-gma-pipe_setup.adb":[{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"d4922b9cb5b5235d7cb0cc886b69a7eaeb678147","unresolved":false,"context_lines":[{"line_number":313,"context_line":"            pragma Assert_And_Cut (True);"},{"line_number":314,"context_line":"            declare"},{"line_number":315,"context_line":"               Linear_Offset : constant Pixel_Type :\u003d"},{"line_number":316,"context_line":"                  FB.Start_Y * FB.Stride + FB.Start_X;"},{"line_number":317,"context_line":"            begin"},{"line_number":318,"context_line":"               Registers.Write"},{"line_number":319,"context_line":"                 (Register \u003d\u003e Controller.DSPLINOFF,"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"92fe6e7b_24ad4e4c","line":316,"updated":"2026-06-09 13:11:57.000000000","message":"Config(s): i945\n```\nhw-gfx-gma-pipe_setup.adb:316: medium: range check might fail\n  316 |                  FB.Start_Y * FB.Stride + FB.Start_X;\n      |                                         ^ here\n  reason for check: default component value must fit in the type\n```\nConfig(s): ironlake_edp ironlake\n```\nhw-gfx-gma-pipe_setup.adb:316: medium: range check might fail\n  316 |                  FB.Start_Y * FB.Stride + FB.Start_X;\n      |                                         ^ here\n  e.g. when FB \u003d (Start_Y \u003d\u003e 0, Tiling \u003d\u003e Linear, Rotation \u003d\u003e No_Rotation, Offset \u003d\u003e 0, others \u003d\u003e ?)\n  reason for check: default component value must fit in the type\n```","commit_id":"613423e1a761aaf3963d11c9c9fe4e322601a6fe"},{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"e443b98b1a3c0da5cc6a1b152efe4a3c1c62a0a9","unresolved":false,"context_lines":[{"line_number":313,"context_line":"            pragma Assert_And_Cut (True);"},{"line_number":314,"context_line":"            declare"},{"line_number":315,"context_line":"               Linear_Offset : constant Pixel_Type :\u003d"},{"line_number":316,"context_line":"                  FB.Start_Y * FB.Stride + FB.Start_X;"},{"line_number":317,"context_line":"            begin"},{"line_number":318,"context_line":"               Registers.Write"},{"line_number":319,"context_line":"                 (Register \u003d\u003e Controller.DSPLINOFF,"}],"source_content_type":"application/octet-stream","patch_set":3,"id":"d89f4d0f_1ccf716f","line":316,"updated":"2026-06-09 13:16:28.000000000","message":"Config(s): ironlake ironlake_edp\n```\nhw-gfx-gma-pipe_setup.adb:316: medium: range check might fail\n  316 |                  FB.Start_Y * FB.Stride + FB.Start_X;\n      |                                         ^ here\n  reason for check: default component value must fit in the type\n```\nConfig(s): i945\n```\nhw-gfx-gma-pipe_setup.adb:316: medium: range check might fail\n  316 |                  FB.Start_Y * FB.Stride + FB.Start_X;\n      |                                         ^ here\n  e.g. when FB \u003d (Start_Y \u003d\u003e 0, Tiling \u003d\u003e Linear, Rotation \u003d\u003e No_Rotation, Offset \u003d\u003e 0, others \u003d\u003e ?)\n  reason for check: default component value must fit in the type\n```","commit_id":"da4dcc36387482d91a10e73b66fb992a265da3cb"},{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"69095b723b1c163fa7fa8ab44278df37abc14a37","unresolved":false,"context_lines":[{"line_number":313,"context_line":"            pragma Assert_And_Cut (True);"},{"line_number":314,"context_line":"            declare"},{"line_number":315,"context_line":"               Linear_Offset : constant Pixel_Type :\u003d"},{"line_number":316,"context_line":"                  FB.Start_Y * FB.Stride + FB.Start_X;"},{"line_number":317,"context_line":"            begin"},{"line_number":318,"context_line":"               Registers.Write"},{"line_number":319,"context_line":"                 (Register \u003d\u003e Controller.DSPLINOFF,"}],"source_content_type":"application/octet-stream","patch_set":4,"id":"7311422c_df00a0d9","line":316,"updated":"2026-06-09 13:48:54.000000000","message":"Config(s): i945 ironlake_edp\n```\nhw-gfx-gma-pipe_setup.adb:316: medium: range check might fail\n  316 |                  FB.Start_Y * FB.Stride + FB.Start_X;\n      |                                         ^ here\n  reason for check: default component value must fit in the type\n```\nConfig(s): ironlake\n```\nhw-gfx-gma-pipe_setup.adb:316: medium: range check might fail\n  316 |                  FB.Start_Y * FB.Stride + FB.Start_X;\n      |                                         ^ here\n  e.g. when FB \u003d (Start_Y \u003d\u003e 0, Tiling \u003d\u003e Linear, Rotation \u003d\u003e No_Rotation, Offset \u003d\u003e 0, others \u003d\u003e ?)\n  reason for check: default component value must fit in the type\n```","commit_id":"e5f42bf4fa5976f0ba8d94c8e7c049b517d551f3"},{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"aaefbab8186dd27d3aa08c3f685d3a59fdc05e25","unresolved":false,"context_lines":[{"line_number":311,"context_line":""},{"line_number":312,"context_line":"         if Config.Has_DSP_Linoff and then FB.Tiling \u003d Linear then"},{"line_number":313,"context_line":"            pragma Assert_And_Cut"},{"line_number":314,"context_line":"              (FB.Start_Y * FB.Stride + FB.Start_X in Pixel_Type);"},{"line_number":315,"context_line":"            declare"},{"line_number":316,"context_line":"               Linear_Offset : constant Pixel_Type :\u003d"},{"line_number":317,"context_line":"                  FB.Start_Y * FB.Stride + FB.Start_X;"}],"source_content_type":"application/octet-stream","patch_set":5,"id":"d7de17ae_44f42f05","line":314,"updated":"2026-06-09 14:42:33.000000000","message":"Config(s): ironlake_edp ironlake\n```\nhw-gfx-gma-pipe_setup.adb:314: medium: assertion might fail, cannot prove FB.Start_Y * FB.Stride + FB.Start_X in Pixel_Type\n  314 |              (FB.Start_Y * FB.Stride + FB.Start_X in Pixel_Type);\n      |               ^ here\n```\nConfig(s): i945\n```\nhw-gfx-gma-pipe_setup.adb:314: medium: assertion might fail, cannot prove FB.Start_Y * FB.Stride + FB.Start_X in Pixel_Type\n  314 |              (FB.Start_Y * FB.Stride + FB.Start_X in Pixel_Type);\n      |               ^ here\n  e.g. when FB \u003d (Start_Y \u003d\u003e 0, Tiling \u003d\u003e Linear, Rotation \u003d\u003e No_Rotation, Offset \u003d\u003e 0, others \u003d\u003e ?)\n```","commit_id":"570ae692e98c6dcea118ec596c9d9fced6ab411e"},{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"1005911bfe34eafecb763f8dc25c34cd89b1b4d8","unresolved":false,"context_lines":[{"line_number":311,"context_line":""},{"line_number":312,"context_line":"         if Config.Has_DSP_Linoff and then FB.Tiling \u003d Linear then"},{"line_number":313,"context_line":"            pragma Assert_And_Cut"},{"line_number":314,"context_line":"              (FB.Start_Y * FB.Stride + FB.Start_X in Pixel_Type);"},{"line_number":315,"context_line":"            declare"},{"line_number":316,"context_line":"               Linear_Offset : constant Pixel_Type :\u003d"},{"line_number":317,"context_line":"                  FB.Start_Y * FB.Stride + FB.Start_X;"}],"source_content_type":"application/octet-stream","patch_set":5,"id":"4a3e49b7_6186fb08","line":314,"in_reply_to":"d7de17ae_44f42f05","updated":"2026-06-09 17:59:36.000000000","message":"This again... please ignore! It\u0027s spurious and I don\u0027t have a clue why it\npops up sometimes. The proof seems trivial and works most of the time. I\nguess the whole procedure is becoming too long for (the old) gnatprove.\n\nThe `Assert_And_Cut (True)` is supposed to help with such cases as gnatprove\nshould not consider all the possible paths that could get here. But no idea\nwhy it doesn\u0027t help 🫤","commit_id":"570ae692e98c6dcea118ec596c9d9fced6ab411e"},{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"3206f29e6c637b9c5a22839006cef01d56fc9f17","unresolved":false,"context_lines":[{"line_number":311,"context_line":""},{"line_number":312,"context_line":"         if Config.Has_DSP_Linoff and then FB.Tiling \u003d Linear then"},{"line_number":313,"context_line":"            pragma Assert_And_Cut"},{"line_number":314,"context_line":"              (FB.Start_Y * FB.Stride + FB.Start_X in Pixel_Type);"},{"line_number":315,"context_line":"            declare"},{"line_number":316,"context_line":"               Linear_Offset : constant Pixel_Type :\u003d"},{"line_number":317,"context_line":"                  FB.Start_Y * FB.Stride + FB.Start_X;"}],"source_content_type":"application/octet-stream","patch_set":6,"id":"232b9386_b6e8eb04","line":314,"updated":"2026-06-17 20:45:52.000000000","message":"Config(s): ironlake ironlake_edp i945\n```\nhw-gfx-gma-pipe_setup.adb:314: medium: assertion might fail, cannot prove FB.Start_Y * FB.Stride + FB.Start_X in Pixel_Type\n  314 |              (FB.Start_Y * FB.Stride + FB.Start_X in Pixel_Type);\n      |               ^ here\n```","commit_id":"ddac5912cbc8a44bcbe8de086016255ab36af93e"},{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"8bae5f2b96e36c9d102599ba4192f7eb4bf6d37f","unresolved":false,"context_lines":[{"line_number":311,"context_line":""},{"line_number":312,"context_line":"         if Config.Has_DSP_Linoff and then FB.Tiling \u003d Linear then"},{"line_number":313,"context_line":"            pragma Assert_And_Cut"},{"line_number":314,"context_line":"              (FB.Start_Y * FB.Stride + FB.Start_X in Pixel_Type);"},{"line_number":315,"context_line":"            declare"},{"line_number":316,"context_line":"               Linear_Offset : constant Pixel_Type :\u003d"},{"line_number":317,"context_line":"                  FB.Start_Y * FB.Stride + FB.Start_X;"}],"source_content_type":"application/octet-stream","patch_set":7,"id":"9d5a6855_d6845594","line":314,"updated":"2026-06-26 13:18:25.000000000","message":"Config(s): ironlake_edp i945 ironlake\n```\nhw-gfx-gma-pipe_setup.adb:314: medium: assertion might fail, cannot prove FB.Start_Y * FB.Stride + FB.Start_X in Pixel_Type\n  314 |              (FB.Start_Y * FB.Stride + FB.Start_X in Pixel_Type);\n      |               ^ here\n```","commit_id":"6c15faac7a5bccfda3c9de9a52fea70840498a0e"}],"common/hw-gfx-gma-pipe_setup.ads":[{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"c67efbae7b1c195c02fa5b7df493d2ba05cd15a6","unresolved":false,"context_lines":[{"line_number":16,"context_line":"with HW.GFX.GMA.Config_Helpers;"},{"line_number":17,"context_line":"with HW.GFX.GMA.Registers;"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"use type HW.Int32;"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"private package HW.GFX.GMA.Pipe_Setup"},{"line_number":22,"context_line":"is"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"aed53bbc_6eb0c061","line":19,"updated":"2026-04-15 12:38:20.000000000","message":"Config(s): alderlake gm965 ironlake_edp haswell g45 broxton tigerlake ironlake skylake\n```\nhw-gfx-gma-pipe_setup.ads:19: warning: \"Pos32\" is already use-visible through previous use_type_clause at hw.ads:72 [-gnatwr]\n```","commit_id":"6b129b2add95a96e26e6146d5a6d17f23b2ca420"}],"common/hw-gfx-gma-registers.adb":[{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"65e8037a7069aa606f7cbdd43a53a3077c5fe2ef","unresolved":true,"context_lines":[{"line_number":456,"context_line":"            GTT_32.Set_Base_Address (Base + 16#8_0000#);"},{"line_number":457,"context_line":"         else"},{"line_number":458,"context_line":"            GTT_32.Set_Base_Address (Base + MMIO_GTT_32_Offset);"},{"line_number":459,"context_line":"         end if;"},{"line_number":460,"context_line":"         GTT_64.Set_Base_Address (Base + MMIO_GTT_64_Offset);"},{"line_number":461,"context_line":"      else"},{"line_number":462,"context_line":"         GTT_32.Set_Base_Address (GTT_Base);"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"00bf5acd_3a3435b3","line":459,"updated":"2026-06-07 10:24:25.000000000","message":"See comment in `hw-gfx-gma.adb`, could be handle with the offsets in `Config` package.","commit_id":"6b129b2add95a96e26e6146d5a6d17f23b2ca420"},{"author":{"_account_id":1000003,"name":"Arthur Heymans","email":"arthur@aheymans.xyz","username":"arthurheymans","avatars":[{"url":"https://www.gravatar.com/avatar/518bb7353a0a42df698e1736723abc9f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/518bb7353a0a42df698e1736723abc9f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/518bb7353a0a42df698e1736723abc9f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/518bb7353a0a42df698e1736723abc9f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"5f24b228be74e832454d0b64f3405a671c44a8c3","unresolved":false,"context_lines":[{"line_number":456,"context_line":"            GTT_32.Set_Base_Address (Base + 16#8_0000#);"},{"line_number":457,"context_line":"         else"},{"line_number":458,"context_line":"            GTT_32.Set_Base_Address (Base + MMIO_GTT_32_Offset);"},{"line_number":459,"context_line":"         end if;"},{"line_number":460,"context_line":"         GTT_64.Set_Base_Address (Base + MMIO_GTT_64_Offset);"},{"line_number":461,"context_line":"      else"},{"line_number":462,"context_line":"         GTT_32.Set_Base_Address (GTT_Base);"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"4d2e2013_c9e6f1ea","line":459,"in_reply_to":"00bf5acd_3a3435b3","updated":"2026-06-16 17:17:35.000000000","message":"Done","commit_id":"6b129b2add95a96e26e6146d5a6d17f23b2ca420"},{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"e443b98b1a3c0da5cc6a1b152efe4a3c1c62a0a9","unresolved":false,"context_lines":[{"line_number":56,"context_line":"      Volatile_Components,"},{"line_number":57,"context_line":"      Size \u003d\u003e MMIO_GTT_32_Size * 8;"},{"line_number":58,"context_line":"   package GTT_32 is new MMIO_Range"},{"line_number":59,"context_line":"     (Base_Addr   \u003d\u003e Config.Default_MMIO_Base + Word64 (Config.MMIO_GTT_Offset),"},{"line_number":60,"context_line":"      Element_T   \u003d\u003e GTT_PTE_32,"},{"line_number":61,"context_line":"      Index_T     \u003d\u003e GTT_Range,"},{"line_number":62,"context_line":"      Array_T     \u003d\u003e GTT_Registers_32);"}],"source_content_type":"application/octet-stream","patch_set":3,"id":"2679d2c6_1d2f7f2f","line":59,"updated":"2026-06-09 13:16:28.000000000","message":"Config(s): i945 alderlake haswell ironlake tigerlake skylake ironlake_edp g45\n```\nhw-gfx-gma-registers.adb:59: actual for formal object with mode in cannot depend on variable input \"Config.Variable\" constituent of \"GMA.State\" (SPARK RM 4.4(2))\n   59 |     (Base_Addr   \u003d\u003e Config.Default_MMIO_Base + Word64 (Config.MMIO_GTT_Offset),\n      |                                              ^ here\n```","commit_id":"da4dcc36387482d91a10e73b66fb992a265da3cb"},{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"e443b98b1a3c0da5cc6a1b152efe4a3c1c62a0a9","unresolved":false,"context_lines":[{"line_number":67,"context_line":"      Volatile_Components,"},{"line_number":68,"context_line":"      Size \u003d\u003e MMIO_GTT_64_Size * 8;"},{"line_number":69,"context_line":"   package GTT_64 is new MMIO_Range"},{"line_number":70,"context_line":"     (Base_Addr   \u003d\u003e Config.Default_MMIO_Base + Word64 (Config.MMIO_GTT_Offset),"},{"line_number":71,"context_line":"      Element_T   \u003d\u003e GTT_PTE_64,"},{"line_number":72,"context_line":"      Index_T     \u003d\u003e GTT_Range,"},{"line_number":73,"context_line":"      Array_T     \u003d\u003e GTT_Registers_64);"}],"source_content_type":"application/octet-stream","patch_set":3,"id":"511c69ba_127f93e5","line":70,"updated":"2026-06-09 13:16:28.000000000","message":"Config(s): i945 skylake ironlake_edp ironlake tigerlake g45 haswell alderlake\n```\nhw-gfx-gma-registers.adb:70: actual for formal object with mode in cannot depend on variable input \"Config.Variable\" constituent of \"GMA.State\" (SPARK RM 4.4(2))\n   70 |     (Base_Addr   \u003d\u003e Config.Default_MMIO_Base + Word64 (Config.MMIO_GTT_Offset),\n      |                                              ^ here\n```","commit_id":"da4dcc36387482d91a10e73b66fb992a265da3cb"},{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"e443b98b1a3c0da5cc6a1b152efe4a3c1c62a0a9","unresolved":false,"context_lines":[{"line_number":571,"context_line":"   begin"},{"line_number":572,"context_line":"      Regs.Set_Base_Address (Base);"},{"line_number":573,"context_line":"      if GTT_Base \u003d 0 then"},{"line_number":574,"context_line":"         GTT_32.Set_Base_Address (Base + Word64 (Config.MMIO_GTT_Offset));"},{"line_number":575,"context_line":"         GTT_64.Set_Base_Address (Base + Word64 (Config.MMIO_GTT_Offset));"},{"line_number":576,"context_line":"      else"},{"line_number":577,"context_line":"         GTT_32.Set_Base_Address (GTT_Base);"}],"source_content_type":"application/octet-stream","patch_set":3,"id":"8bc84b55_94cfe997","line":574,"updated":"2026-06-09 13:16:28.000000000","message":"Config(s): ironlake_edp ironlake g45 haswell tigerlake alderlake i945 skylake\n```\nhw-gfx-gma-registers.adb:574: high: \"Config.Variable\" constituent of \"GMA.State\" must be listed in the Global aspect of \"Set_Register_Base\" (SPARK RM 6.1.4(14))\n  574 |         GTT_32.Set_Base_Address (Base + Word64 (Config.MMIO_GTT_Offset));\n      |                                                       ^ here\n```","commit_id":"da4dcc36387482d91a10e73b66fb992a265da3cb"},{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"69095b723b1c163fa7fa8ab44278df37abc14a37","unresolved":false,"context_lines":[{"line_number":56,"context_line":"      Volatile_Components,"},{"line_number":57,"context_line":"      Size \u003d\u003e MMIO_GTT_32_Size * 8;"},{"line_number":58,"context_line":"   package GTT_32 is new MMIO_Range"},{"line_number":59,"context_line":"     (Base_Addr   \u003d\u003e Config.Default_MMIO_Base + Word64 (Config.MMIO_GTT_Offset),"},{"line_number":60,"context_line":"      Element_T   \u003d\u003e GTT_PTE_32,"},{"line_number":61,"context_line":"      Index_T     \u003d\u003e GTT_Range,"},{"line_number":62,"context_line":"      Array_T     \u003d\u003e GTT_Registers_32);"}],"source_content_type":"application/octet-stream","patch_set":4,"id":"f6dbfc0f_b8b5117a","line":59,"updated":"2026-06-09 13:48:54.000000000","message":"Config(s): i945 ironlake alderlake tigerlake g45 haswell ironlake_edp skylake\n```\nhw-gfx-gma-registers.adb:59: actual for formal object with mode in cannot depend on variable input \"Config.Variable\" constituent of \"GMA.State\" (SPARK RM 4.4(2))\n   59 |     (Base_Addr   \u003d\u003e Config.Default_MMIO_Base + Word64 (Config.MMIO_GTT_Offset),\n      |                                              ^ here\n```","commit_id":"e5f42bf4fa5976f0ba8d94c8e7c049b517d551f3"},{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"69095b723b1c163fa7fa8ab44278df37abc14a37","unresolved":false,"context_lines":[{"line_number":67,"context_line":"      Volatile_Components,"},{"line_number":68,"context_line":"      Size \u003d\u003e MMIO_GTT_64_Size * 8;"},{"line_number":69,"context_line":"   package GTT_64 is new MMIO_Range"},{"line_number":70,"context_line":"     (Base_Addr   \u003d\u003e Config.Default_MMIO_Base + Word64 (Config.MMIO_GTT_Offset),"},{"line_number":71,"context_line":"      Element_T   \u003d\u003e GTT_PTE_64,"},{"line_number":72,"context_line":"      Index_T     \u003d\u003e GTT_Range,"},{"line_number":73,"context_line":"      Array_T     \u003d\u003e GTT_Registers_64);"}],"source_content_type":"application/octet-stream","patch_set":4,"id":"b863b4d0_51f0f6b0","line":70,"updated":"2026-06-09 13:48:54.000000000","message":"Config(s): tigerlake alderlake i945 ironlake_edp g45 skylake haswell ironlake\n```\nhw-gfx-gma-registers.adb:70: actual for formal object with mode in cannot depend on variable input \"Config.Variable\" constituent of \"GMA.State\" (SPARK RM 4.4(2))\n   70 |     (Base_Addr   \u003d\u003e Config.Default_MMIO_Base + Word64 (Config.MMIO_GTT_Offset),\n      |                                              ^ here\n```","commit_id":"e5f42bf4fa5976f0ba8d94c8e7c049b517d551f3"},{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"69095b723b1c163fa7fa8ab44278df37abc14a37","unresolved":false,"context_lines":[{"line_number":579,"context_line":"   begin"},{"line_number":580,"context_line":"      Regs.Set_Base_Address (Base);"},{"line_number":581,"context_line":"      if GTT_Base \u003d 0 then"},{"line_number":582,"context_line":"         GTT_32.Set_Base_Address (Base + Word64 (Config.MMIO_GTT_Offset));"},{"line_number":583,"context_line":"         GTT_64.Set_Base_Address (Base + Word64 (Config.MMIO_GTT_Offset));"},{"line_number":584,"context_line":"      else"},{"line_number":585,"context_line":"         GTT_32.Set_Base_Address (GTT_Base);"}],"source_content_type":"application/octet-stream","patch_set":4,"id":"ee65537b_2f013dfb","line":582,"updated":"2026-06-09 13:48:54.000000000","message":"Config(s): g45 tigerlake skylake haswell i945 alderlake ironlake ironlake_edp\n```\nhw-gfx-gma-registers.adb:582: high: \"Config.Variable\" constituent of \"GMA.State\" must be listed in the Global aspect of \"Set_Register_Base\" (SPARK RM 6.1.4(14))\n  582 |         GTT_32.Set_Base_Address (Base + Word64 (Config.MMIO_GTT_Offset));\n      |                                                       ^ here\n```","commit_id":"e5f42bf4fa5976f0ba8d94c8e7c049b517d551f3"},{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"aaefbab8186dd27d3aa08c3f685d3a59fdc05e25","unresolved":false,"context_lines":[{"line_number":56,"context_line":"      Volatile_Components,"},{"line_number":57,"context_line":"      Size \u003d\u003e MMIO_GTT_32_Size * 8;"},{"line_number":58,"context_line":"   package GTT_32 is new MMIO_Range"},{"line_number":59,"context_line":"     (Base_Addr   \u003d\u003e Config.Default_MMIO_Base + Word64 (Config.MMIO_GTT_Offset),"},{"line_number":60,"context_line":"      Element_T   \u003d\u003e GTT_PTE_32,"},{"line_number":61,"context_line":"      Index_T     \u003d\u003e GTT_Range,"},{"line_number":62,"context_line":"      Array_T     \u003d\u003e GTT_Registers_32);"}],"source_content_type":"application/octet-stream","patch_set":5,"id":"cd3e6fbc_20107c51","line":59,"updated":"2026-06-09 14:42:33.000000000","message":"Config(s): tigerlake ironlake ironlake_edp g45 alderlake haswell skylake i945\n```\nhw-gfx-gma-registers.adb:59: actual for formal object with mode in cannot depend on variable input \"Config.Variable\" constituent of \"GMA.State\" (SPARK RM 4.4(2))\n   59 |     (Base_Addr   \u003d\u003e Config.Default_MMIO_Base + Word64 (Config.MMIO_GTT_Offset),\n      |                                              ^ here\n```","commit_id":"570ae692e98c6dcea118ec596c9d9fced6ab411e"},{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"aaefbab8186dd27d3aa08c3f685d3a59fdc05e25","unresolved":false,"context_lines":[{"line_number":67,"context_line":"      Volatile_Components,"},{"line_number":68,"context_line":"      Size \u003d\u003e MMIO_GTT_64_Size * 8;"},{"line_number":69,"context_line":"   package GTT_64 is new MMIO_Range"},{"line_number":70,"context_line":"     (Base_Addr   \u003d\u003e Config.Default_MMIO_Base + Word64 (Config.MMIO_GTT_Offset),"},{"line_number":71,"context_line":"      Element_T   \u003d\u003e GTT_PTE_64,"},{"line_number":72,"context_line":"      Index_T     \u003d\u003e GTT_Range,"},{"line_number":73,"context_line":"      Array_T     \u003d\u003e GTT_Registers_64);"}],"source_content_type":"application/octet-stream","patch_set":5,"id":"5fa623ed_c42f4c68","line":70,"updated":"2026-06-09 14:42:33.000000000","message":"Config(s): alderlake haswell skylake ironlake ironlake_edp tigerlake g45 i945\n```\nhw-gfx-gma-registers.adb:70: actual for formal object with mode in cannot depend on variable input \"Config.Variable\" constituent of \"GMA.State\" (SPARK RM 4.4(2))\n   70 |     (Base_Addr   \u003d\u003e Config.Default_MMIO_Base + Word64 (Config.MMIO_GTT_Offset),\n      |                                              ^ here\n```","commit_id":"570ae692e98c6dcea118ec596c9d9fced6ab411e"},{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"07b59f093fe7a1487e90f3872a7995b607b4b37e","unresolved":true,"context_lines":[{"line_number":579,"context_line":"   is"},{"line_number":580,"context_line":"   begin"},{"line_number":581,"context_line":"      Regs.Set_Base_Address (Base);"},{"line_number":582,"context_line":"      if GTT_Base \u003d 0 then"},{"line_number":583,"context_line":"         GTT_32.Set_Base_Address"},{"line_number":584,"context_line":"           (Base + Word64 (Config.Default_MMIO_GTT_32_Offset));"},{"line_number":585,"context_line":"         GTT_64.Set_Base_Address (Base + Word64 (Config.MMIO_GTT_64_Offset));"},{"line_number":586,"context_line":"      else"},{"line_number":587,"context_line":"         GTT_32.Set_Base_Address (GTT_Base);"},{"line_number":588,"context_line":"         GTT_64.Set_Base_Address (GTT_Base);"},{"line_number":589,"context_line":"      end if;"}],"source_content_type":"application/octet-stream","patch_set":7,"id":"6e3b3cc3_ebb5a75f","line":586,"range":{"start_line":582,"start_character":0,"end_line":586,"end_character":10},"updated":"2026-06-28 09:23:56.000000000","message":"With the changes around `GMA.Initialize ()`, we probably don\u0027t need\nthis case anymore. I\u0027ll check our internal API usage and clean it up\nif reasonable. Leaving this unresolved for myself todo.","commit_id":"6c15faac7a5bccfda3c9de9a52fea70840498a0e"}],"common/hw-gfx-gma-registers.ads":[{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"aaefbab8186dd27d3aa08c3f685d3a59fdc05e25","unresolved":false,"context_lines":[{"line_number":2437,"context_line":"   procedure Set_Register_Base (Base : Word64; GTT_Base : Word64 :\u003d 0)"},{"line_number":2438,"context_line":"   with"},{"line_number":2439,"context_line":"      Global   \u003d\u003e"},{"line_number":2440,"context_line":"        (Input  \u003d\u003e Config.Variable,"},{"line_number":2441,"context_line":"         Output \u003d\u003e Address_State),"},{"line_number":2442,"context_line":"      Depends  \u003d\u003e (Address_State \u003d\u003e (Config.Variable, Base, GTT_Base)),"},{"line_number":2443,"context_line":"      Pre      \u003d\u003e True,"}],"source_content_type":"application/octet-stream","patch_set":5,"id":"dc968750_d0f80498","line":2440,"updated":"2026-06-09 14:42:33.000000000","message":"Config(s): broxton\n```\nhw-gfx-gma-registers.ads:2440: low: unused global \"Config.Variable\" constituent of \"GMA.State\"\n 2440 |        (Input  \u003d\u003e Config.Variable,\n      |                         ^ here\n```","commit_id":"570ae692e98c6dcea118ec596c9d9fced6ab411e"},{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"aaefbab8186dd27d3aa08c3f685d3a59fdc05e25","unresolved":false,"context_lines":[{"line_number":2439,"context_line":"      Global   \u003d\u003e"},{"line_number":2440,"context_line":"        (Input  \u003d\u003e Config.Variable,"},{"line_number":2441,"context_line":"         Output \u003d\u003e Address_State),"},{"line_number":2442,"context_line":"      Depends  \u003d\u003e (Address_State \u003d\u003e (Config.Variable, Base, GTT_Base)),"},{"line_number":2443,"context_line":"      Pre      \u003d\u003e True,"},{"line_number":2444,"context_line":"      Post     \u003d\u003e True;"},{"line_number":2445,"context_line":""}],"source_content_type":"application/octet-stream","patch_set":5,"id":"56d81d0c_7c6323bd","line":2442,"updated":"2026-06-09 14:42:33.000000000","message":"Config(s): broxton\n```\nhw-gfx-gma-registers.ads:2442: medium: incorrect dependency \"Registers.Address_State constituent of GMA.State \u003d\u003e Config.Variable constituent of GMA.State\"\n 2442 |      Depends  \u003d\u003e (Address_State \u003d\u003e (Config.Variable, Base, GTT_Base)),\n      |                                     ^ here\n```\nConfig(s): broxton\n```\nhw-gfx-gma-registers.ads:2442: medium: missing dependency \"null \u003d\u003e Config.Variable constituent of GMA.State\"\n 2442 |      Depends  \u003d\u003e (Address_State \u003d\u003e (Config.Variable, Base, GTT_Base)),\n      |      ^ here\n```","commit_id":"570ae692e98c6dcea118ec596c9d9fced6ab411e"}],"common/hw-gfx-gma.adb":[{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"c67efbae7b1c195c02fa5b7df493d2ba05cd15a6","unresolved":false,"context_lines":[{"line_number":33,"context_line":"with HW.Debug;"},{"line_number":34,"context_line":"with GNAT.Source_Info;"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"use type HW.Int32;"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"package body HW.GFX.GMA"},{"line_number":39,"context_line":"   with Refined_State \u003d\u003e"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"fd1ee109_3fcb329c","line":36,"updated":"2026-04-15 12:38:20.000000000","message":"Config(s): ironlake_edp haswell alderlake broxton g45 ironlake skylake tigerlake gm965\n```\nhw-gfx-gma.adb:36: warning: \"Pos32\" is already use-visible through previous use_type_clause at hw.ads:72 [-gnatwr]\n```","commit_id":"6b129b2add95a96e26e6146d5a6d17f23b2ca420"},{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"65e8037a7069aa606f7cbdd43a53a3077c5fe2ef","unresolved":true,"context_lines":[{"line_number":502,"context_line":"        (if Config.Has_64bit_GTT"},{"line_number":503,"context_line":"         then Registers.MMIO_GTT_64_Offset"},{"line_number":504,"context_line":"         elsif Config.CPU_GM965"},{"line_number":505,"context_line":"         then MMIO_GTT_32_Offset_GM965"},{"line_number":506,"context_line":"         else Registers.MMIO_GTT_32_Offset);"},{"line_number":507,"context_line":"      PCI_MMIO_Base, PCI_GTT_Base : Word64;"},{"line_number":508,"context_line":""},{"line_number":509,"context_line":"      Now : constant Time.T :\u003d Time.Now;"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"363ba73d_a7d40106","line":506,"range":{"start_line":505,"start_character":0,"end_line":506,"end_character":44},"updated":"2026-06-07 10:24:25.000000000","message":"Seems a bit odd to have one constant locally here and the other in `Registers`.\nA good solution would be to move them into the `Config` package, so we wouldn\u0027t\nneed any local `if`.","commit_id":"6b129b2add95a96e26e6146d5a6d17f23b2ca420"},{"author":{"_account_id":1000003,"name":"Arthur Heymans","email":"arthur@aheymans.xyz","username":"arthurheymans","avatars":[{"url":"https://www.gravatar.com/avatar/518bb7353a0a42df698e1736723abc9f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/518bb7353a0a42df698e1736723abc9f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/518bb7353a0a42df698e1736723abc9f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/518bb7353a0a42df698e1736723abc9f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"5f24b228be74e832454d0b64f3405a671c44a8c3","unresolved":false,"context_lines":[{"line_number":502,"context_line":"        (if Config.Has_64bit_GTT"},{"line_number":503,"context_line":"         then Registers.MMIO_GTT_64_Offset"},{"line_number":504,"context_line":"         elsif Config.CPU_GM965"},{"line_number":505,"context_line":"         then MMIO_GTT_32_Offset_GM965"},{"line_number":506,"context_line":"         else Registers.MMIO_GTT_32_Offset);"},{"line_number":507,"context_line":"      PCI_MMIO_Base, PCI_GTT_Base : Word64;"},{"line_number":508,"context_line":""},{"line_number":509,"context_line":"      Now : constant Time.T :\u003d Time.Now;"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"281769d5_a40c3791","line":506,"range":{"start_line":505,"start_character":0,"end_line":506,"end_character":44},"in_reply_to":"363ba73d_a7d40106","updated":"2026-06-16 17:17:35.000000000","message":"Done","commit_id":"6b129b2add95a96e26e6146d5a6d17f23b2ca420"},{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"1005911bfe34eafecb763f8dc25c34cd89b1b4d8","unresolved":true,"context_lines":[{"line_number":843,"context_line":"         if Config.CPU_GM965 then"},{"line_number":844,"context_line":"            -- GM965 has no GGMS field in GGC. The GTT is a fixed 512KB"},{"line_number":845,"context_line":"            -- region in the upper half of the 1MB GTTMMADR BAR."},{"line_number":846,"context_line":"            GTT_Size :\u003d 512 * 2 ** 10;"},{"line_number":847,"context_line":"         else"},{"line_number":848,"context_line":"            GTT_Size :\u003d GTT_Size_Gen4 (GGC);"},{"line_number":849,"context_line":"         end if;"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"3947ba8c_6007a2c8","line":846,"updated":"2026-06-09 17:59:36.000000000","message":"Did this change on purpose, or lost during rebase?","commit_id":"6b129b2add95a96e26e6146d5a6d17f23b2ca420"},{"author":{"_account_id":1000003,"name":"Arthur Heymans","email":"arthur@aheymans.xyz","username":"arthurheymans","avatars":[{"url":"https://www.gravatar.com/avatar/518bb7353a0a42df698e1736723abc9f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/518bb7353a0a42df698e1736723abc9f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/518bb7353a0a42df698e1736723abc9f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/518bb7353a0a42df698e1736723abc9f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"5f24b228be74e832454d0b64f3405a671c44a8c3","unresolved":false,"context_lines":[{"line_number":843,"context_line":"         if Config.CPU_GM965 then"},{"line_number":844,"context_line":"            -- GM965 has no GGMS field in GGC. The GTT is a fixed 512KB"},{"line_number":845,"context_line":"            -- region in the upper half of the 1MB GTTMMADR BAR."},{"line_number":846,"context_line":"            GTT_Size :\u003d 512 * 2 ** 10;"},{"line_number":847,"context_line":"         else"},{"line_number":848,"context_line":"            GTT_Size :\u003d GTT_Size_Gen4 (GGC);"},{"line_number":849,"context_line":"         end if;"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"07252aef_ac6dc999","line":846,"in_reply_to":"3947ba8c_6007a2c8","updated":"2026-06-16 17:17:35.000000000","message":"\u003e Did this change on purpose, or lost during rebase?\n\now... yes thanks","commit_id":"6b129b2add95a96e26e6146d5a6d17f23b2ca420"},{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"e443b98b1a3c0da5cc6a1b152efe4a3c1c62a0a9","unresolved":false,"context_lines":[{"line_number":22,"context_line":"with HW.GFX.GMA.Config_Helpers;"},{"line_number":23,"context_line":"with HW.GFX.GMA.Registers;"},{"line_number":24,"context_line":"with HW.GFX.GMA.PCode;"},{"line_number":25,"context_line":"with HW.GFX.GMA.Power_And_Clocks;"},{"line_number":26,"context_line":"with HW.GFX.GMA.Panel;"},{"line_number":27,"context_line":"with HW.GFX.GMA.PLLs;"},{"line_number":28,"context_line":"with HW.GFX.GMA.Port_Detect;"}],"source_content_type":"application/octet-stream","patch_set":3,"id":"32cd7dbb_fbca9fa5","line":25,"updated":"2026-06-09 13:16:28.000000000","message":"Config(s): gm965\n```\nhw-gfx-gma.adb:25: error: file \"hw-gfx-gma-power_and_clocks.ads\" not found\n```","commit_id":"da4dcc36387482d91a10e73b66fb992a265da3cb"},{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"e443b98b1a3c0da5cc6a1b152efe4a3c1c62a0a9","unresolved":false,"context_lines":[{"line_number":24,"context_line":"with HW.GFX.GMA.PCode;"},{"line_number":25,"context_line":"with HW.GFX.GMA.Power_And_Clocks;"},{"line_number":26,"context_line":"with HW.GFX.GMA.Panel;"},{"line_number":27,"context_line":"with HW.GFX.GMA.PLLs;"},{"line_number":28,"context_line":"with HW.GFX.GMA.Port_Detect;"},{"line_number":29,"context_line":"with HW.GFX.GMA.Connectors;"},{"line_number":30,"context_line":"with HW.GFX.GMA.Connector_Info;"}],"source_content_type":"application/octet-stream","patch_set":3,"id":"096c094a_fa5ef222","line":27,"updated":"2026-06-09 13:16:28.000000000","message":"Config(s): gm965\n```\nhw-gfx-gma.adb:27: error: file \"hw-gfx-gma-plls.ads\" not found\n```","commit_id":"da4dcc36387482d91a10e73b66fb992a265da3cb"},{"author":{"_account_id":1000003,"name":"Arthur Heymans","email":"arthur@aheymans.xyz","username":"arthurheymans","avatars":[{"url":"https://www.gravatar.com/avatar/518bb7353a0a42df698e1736723abc9f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/518bb7353a0a42df698e1736723abc9f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/518bb7353a0a42df698e1736723abc9f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/518bb7353a0a42df698e1736723abc9f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"1c537cd327da9b34462c93205e7be6c830b8cfb1","unresolved":true,"context_lines":[{"line_number":530,"context_line":"              Config.CPU_Sandybridge)  and (Audio_VID_DID \u003d 16#8086_2806# or"},{"line_number":531,"context_line":"                                            Audio_VID_DID \u003d 16#8086_2805#)) or"},{"line_number":532,"context_line":"            (Config.CPU_Ironlake       and Audio_VID_DID \u003d 16#0000_0000#) or"},{"line_number":533,"context_line":"            -- GM965 has no G4X HD Audio, register reads as 0"},{"line_number":534,"context_line":"            (Config.GMCH_GM965         and Audio_VID_DID \u003d 16#0000_0000#) or"},{"line_number":535,"context_line":"            (Config.Gen_G45            and (Audio_VID_DID \u003d 16#8086_2801# or"},{"line_number":536,"context_line":"                                            Audio_VID_DID \u003d 16#8086_2802# or"}],"source_content_type":"application/octet-stream","patch_set":5,"id":"31cbc4d2_e3850421","line":533,"updated":"2026-06-09 19:39:04.000000000","message":"This is wrong...","commit_id":"570ae692e98c6dcea118ec596c9d9fced6ab411e"},{"author":{"_account_id":1000003,"name":"Arthur Heymans","email":"arthur@aheymans.xyz","username":"arthurheymans","avatars":[{"url":"https://www.gravatar.com/avatar/518bb7353a0a42df698e1736723abc9f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/518bb7353a0a42df698e1736723abc9f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/518bb7353a0a42df698e1736723abc9f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/518bb7353a0a42df698e1736723abc9f.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"5f24b228be74e832454d0b64f3405a671c44a8c3","unresolved":false,"context_lines":[{"line_number":530,"context_line":"              Config.CPU_Sandybridge)  and (Audio_VID_DID \u003d 16#8086_2806# or"},{"line_number":531,"context_line":"                                            Audio_VID_DID \u003d 16#8086_2805#)) or"},{"line_number":532,"context_line":"            (Config.CPU_Ironlake       and Audio_VID_DID \u003d 16#0000_0000#) or"},{"line_number":533,"context_line":"            -- GM965 has no G4X HD Audio, register reads as 0"},{"line_number":534,"context_line":"            (Config.GMCH_GM965         and Audio_VID_DID \u003d 16#0000_0000#) or"},{"line_number":535,"context_line":"            (Config.Gen_G45            and (Audio_VID_DID \u003d 16#8086_2801# or"},{"line_number":536,"context_line":"                                            Audio_VID_DID \u003d 16#8086_2802# or"}],"source_content_type":"application/octet-stream","patch_set":5,"id":"6ed7bc78_aaa300f8","line":533,"in_reply_to":"31cbc4d2_e3850421","updated":"2026-06-16 17:17:35.000000000","message":"Done","commit_id":"570ae692e98c6dcea118ec596c9d9fced6ab411e"}],"common/tigerlake/hw-gfx-gma-plls.adb":[{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"c67efbae7b1c195c02fa5b7df493d2ba05cd15a6","unresolved":false,"context_lines":[{"line_number":27,"context_line":"   end record;"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"   type PLL_State_Array is array (Configurable_DPLLs) of PLL_State;"},{"line_number":30,"context_line":"   PLLs : PLL_State_Array;"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"   procedure Initialize is"},{"line_number":33,"context_line":"   begin"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"771fe3b5_dde40887","line":30,"updated":"2026-04-15 12:38:20.000000000","message":"Config(s): alderlake tigerlake\n```\nhw-gfx-gma-plls.adb:30: warning: variable \"PLLs\" is assigned but never read [-gnatwm]\n```","commit_id":"6b129b2add95a96e26e6146d5a6d17f23b2ca420"}],"configs/gm965":[{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"65e8037a7069aa606f7cbdd43a53a3077c5fe2ef","unresolved":true,"context_lines":[{"line_number":1,"context_line":"CONFIG_GFX_GMA_DYN_CPU\t\t\u003d y"},{"line_number":2,"context_line":"CONFIG_GFX_GMA_GENERATION\t\u003d G45"},{"line_number":3,"context_line":"CONFIG_GFX_GMA_PANEL_1_PORT\t\u003d LVDS"},{"line_number":4,"context_line":"CONFIG_GFX_GMA_ANALOG_I2C_PORT\t\u003d PCH_DAC"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"c45596f1_e4cecc33","line":1,"updated":"2026-06-07 10:24:25.000000000","message":"I\u0027d rather disable this (just leave it empty) and set the CPU explicitly.\nOtherwise this is just a copy of `configs/g45`. Not having another config\nfile would also be fine, e.g. we could rename `g45 -\u003e i965_g45`.","commit_id":"6b129b2add95a96e26e6146d5a6d17f23b2ca420"},{"author":{"_account_id":1000000,"name":"Nico Huber","email":"nico.h@gmx.de","username":"icon","avatars":[{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/60d420b5d650d48b86d6921a9f683b64.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"07b59f093fe7a1487e90f3872a7995b607b4b37e","unresolved":false,"context_lines":[{"line_number":1,"context_line":"CONFIG_GFX_GMA_DYN_CPU\t\t\u003d y"},{"line_number":2,"context_line":"CONFIG_GFX_GMA_GENERATION\t\u003d G45"},{"line_number":3,"context_line":"CONFIG_GFX_GMA_PANEL_1_PORT\t\u003d LVDS"},{"line_number":4,"context_line":"CONFIG_GFX_GMA_ANALOG_I2C_PORT\t\u003d PCH_DAC"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"77c4124f_b97ea94a","line":1,"in_reply_to":"c45596f1_e4cecc33","updated":"2026-06-28 09:23:56.000000000","message":"Done","commit_id":"6b129b2add95a96e26e6146d5a6d17f23b2ca420"}],"proof-allconfigs/gm965/common/hw-gfx-gma-config.ads":[{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"e443b98b1a3c0da5cc6a1b152efe4a3c1c62a0a9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"cb4888d8_877ff8c8","line":17,"updated":"2026-06-09 13:16:28.000000000","message":"Config(s): gm965\n```\nhw-gfx-gma-config.ads:17: error: missing operand\n```","commit_id":"da4dcc36387482d91a10e73b66fb992a265da3cb"},{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"e443b98b1a3c0da5cc6a1b152efe4a3c1c62a0a9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"08fb957c_fe8ba99d","line":44,"updated":"2026-06-09 13:16:28.000000000","message":"Config(s): gm965\n```\nhw-gfx-gma-config.ads:44: error: missing operand\n```","commit_id":"da4dcc36387482d91a10e73b66fb992a265da3cb"},{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"e443b98b1a3c0da5cc6a1b152efe4a3c1c62a0a9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"f7e7a508_42846caf","line":46,"updated":"2026-06-09 13:16:28.000000000","message":"Config(s): gm965\n```\nhw-gfx-gma-config.ads:46: error: missing operand\n```","commit_id":"da4dcc36387482d91a10e73b66fb992a265da3cb"},{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"e443b98b1a3c0da5cc6a1b152efe4a3c1c62a0a9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"2b920fed_13f1ebdd","line":71,"updated":"2026-06-09 13:16:28.000000000","message":"Config(s): gm965\n```\nhw-gfx-gma-config.ads:71: error: missing operand\n```","commit_id":"da4dcc36387482d91a10e73b66fb992a265da3cb"},{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"e443b98b1a3c0da5cc6a1b152efe4a3c1c62a0a9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"2383353a_1871024f","line":74,"updated":"2026-06-09 13:16:28.000000000","message":"Config(s): gm965\n```\nhw-gfx-gma-config.ads:74: error: missing operand\n```","commit_id":"da4dcc36387482d91a10e73b66fb992a265da3cb"},{"author":{"_account_id":1000029,"name":"Ada SPARK","email":"gnatbot@sourcearcade.org","username":"gnatbot","avatars":[{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c244ab97f43ca382a72e76784b616a4b.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"e443b98b1a3c0da5cc6a1b152efe4a3c1c62a0a9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"dfcdd7f1_3a5bb879","line":80,"updated":"2026-06-09 13:16:28.000000000","message":"Config(s): gm965\n```\nhw-gfx-gma-config.ads:80: error: missing operand\n```","commit_id":"da4dcc36387482d91a10e73b66fb992a265da3cb"}]}
