)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"f3b00ba6820aa225ce330e41135fcdb83a5adbac","unresolved":true,"context_lines":[{"line_number":10,"context_line":"from FreeBSD, referenced file:"},{"line_number":11,"context_line":"- `src/tree/sys/compat/linuxkpi/common/include/linux/bitfield.h`"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Checkpatch-ignore: MACRO_ARG_REUSE,COMMIT_LOG_LONG_LINE"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change-Id: I6fdf4514d3f95d62fadf7654409a4878d470a600"},{"line_number":16,"context_line":"Signed-off-by: Walter Ji \u003cwalter.ji@oss.cipunited.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"b5080853_dbfc94a0","line":13,"updated":"2025-05-07 08:29:04.000000000","message":"No need anymore for `COMMIT_LOG_LONG_LINE`","commit_id":"b34feb119ab45d80aea306eb174f4ad9aa73f8a0"},{"author":{"_account_id":1002186,"name":"Walter J.","display_name":"Walter Ji","email":"walter.ji@oss.cipunited.com","username":"709924470","status":"Currently working at CIP United Co., Ltd."},"change_message_id":"66fff9cea8aa08de75ad8c351e7ca90d28539304","unresolved":false,"context_lines":[{"line_number":10,"context_line":"from FreeBSD, referenced file:"},{"line_number":11,"context_line":"- `src/tree/sys/compat/linuxkpi/common/include/linux/bitfield.h`"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Checkpatch-ignore: MACRO_ARG_REUSE,COMMIT_LOG_LONG_LINE"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change-Id: I6fdf4514d3f95d62fadf7654409a4878d470a600"},{"line_number":16,"context_line":"Signed-off-by: Walter Ji \u003cwalter.ji@oss.cipunited.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"39206377_3e0e3ac3","line":13,"in_reply_to":"b5080853_dbfc94a0","updated":"2025-05-07 09:17:00.000000000","message":"Done, I was trying to add the url to the commit message, sorry!","commit_id":"b34feb119ab45d80aea306eb174f4ad9aa73f8a0"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":1002186,"name":"Walter J.","display_name":"Walter Ji","email":"walter.ji@oss.cipunited.com","username":"709924470","status":"Currently working at CIP United Co., Ltd."},"change_message_id":"207f8c8ccc48cb90f3e444b6d4904947e164e94b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"334d6d7c_f8e91556","updated":"2024-03-04 09:52:51.000000000","message":"Hi! I have ported said bitfield helper macros from linux kernel, lmk if something is missing!\n\nI will fix the bitfileds in mips patches later.","commit_id":"83a229f5093beec55db964ee13fe29d27a32a239"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"9422872a335cf88cf1e8b671e35b5fa413cff507","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"0af58b48_332e88e7","updated":"2024-03-04 10:17:31.000000000","message":"Thanks, I was also thinking about introducing these macros.\nWhat about the license?","commit_id":"83a229f5093beec55db964ee13fe29d27a32a239"},{"author":{"_account_id":1000160,"name":"Paul Fertser","email":"fercerpav@gmail.com","username":"pfertser"},"change_message_id":"f5ddb6ec999f1a8be0bfe839b05caeb46c717c50","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"73c388cb_8460e56e","updated":"2024-03-09 11:29:41.000000000","message":"Hi,\n\nThank you for the patch.\n\nI personally see reasons for OpenOCD to be available both under GPLv2 and GPLv3 so that parts of it could be incorporated in projects requiring either (if OpenOCD fully becomes v2-only then it wouldn\u0027t be possible to use it as part of a GPLv3 software). Probably that\u0027s not really essential or practical, in this case depending on GPLv2-only code isn\u0027t that big of a deal.\n\nEither way this patch needs additional clarification I think.","commit_id":"e59b3a2b637422b97e057f06eb2a540ae6134779"},{"author":{"_account_id":1002186,"name":"Walter J.","display_name":"Walter Ji","email":"walter.ji@oss.cipunited.com","username":"709924470","status":"Currently working at CIP United Co., Ltd."},"change_message_id":"a77bf04e84cae2503dd1b0866129df9a8cb4b60c","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"ae4b53ab_87d05e80","updated":"2024-12-11 08:02:38.000000000","message":"Hi, I have changed the file according to [the discussion](https://review.openocd.org/c/openocd/+/7874/comment/0f295bb2_8ab0b13c/) in +7874.\n\nI have also removed the `FIELD_PREP_CONST` as it seems lika a proposal to introduce additional checks on the usage, and having the same code with `FIELD_PREP`.\n\nSorry for the late response, let me know if this patch still needs change!","commit_id":"e59b3a2b637422b97e057f06eb2a540ae6134779"},{"author":{"_account_id":1000160,"name":"Paul Fertser","email":"fercerpav@gmail.com","username":"pfertser"},"change_message_id":"2f8b97fb716f8c49a72c063489b40bc92a5033a6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"dad08a10_7a8d88f9","updated":"2024-03-09 13:28:41.000000000","message":"I like the idea of using FreeBSD code there, thank you for finding it!","commit_id":"e59b3a2b637422b97e057f06eb2a540ae6134779"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"bb7982982ed096506f11c6a4f089ec9090c2e596","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"7e2d57c5_987638a9","updated":"2024-03-09 12:45:18.000000000","message":"I\u0027m looking for other implementations to copy paste the same functionality:\n- Apache-2.0: https://docs.zephyrproject.org/apidoc/latest/util_8h_source.html\n- BSD-2-Clause: https://cgit.freebsd.org/src/tree/sys/compat/linuxkpi/common/include/linux/bitfield.h\n\nApache-2.0 is not compatible with GPL-2.0, even if I like the definition of LSB_GET() in place of the compiler extension __builtin_ffsll().\n\nWe can freely include BSD code in OpenOCD as it is compatible with both GPL-2.0 and later GPL versions.\n\nWould you mind replacing this code with the similar extract from FreeBSD?\n\nPaul, do you agree?","commit_id":"e59b3a2b637422b97e057f06eb2a540ae6134779"},{"author":{"_account_id":1000410,"name":"Oleksij Rempel","email":"linux@rempel-privat.de","username":"olerem"},"change_message_id":"491c1f82969fc471eda6500c843de823ffe8267e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"26f5061e_714988ca","updated":"2024-03-05 19:55:04.000000000","message":"Thank you!","commit_id":"e59b3a2b637422b97e057f06eb2a540ae6134779"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"baa3d42a2af36b02ea349b6d1e9413ec259bfe26","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"54c62f3d_8213a257","updated":"2024-03-09 13:11:29.000000000","message":"Under BSD there is also\nhttps://cgit.freebsd.org/src/tree/sys/compat/linuxkpi/common/include/linux/list.h\nthat can easily replace our GPL-2.0-only file\nsrc/helper/list.h\nOur file received one extra OpenOCD specific macro\nhttps://review.openocd.org/6784\nbut since I\u0027m the author, I can relicense it as BSD too.","commit_id":"e59b3a2b637422b97e057f06eb2a540ae6134779"},{"author":{"_account_id":1002186,"name":"Walter J.","display_name":"Walter Ji","email":"walter.ji@oss.cipunited.com","username":"709924470","status":"Currently working at CIP United Co., Ltd."},"change_message_id":"e365feb5b100d85f3eabac6e7d6a9a375409c609","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"2a9349be_675f1961","in_reply_to":"ae4b53ab_87d05e80","updated":"2025-02-14 10:58:18.000000000","message":"Done","commit_id":"e59b3a2b637422b97e057f06eb2a540ae6134779"},{"author":{"_account_id":1002186,"name":"Walter J.","display_name":"Walter Ji","email":"walter.ji@oss.cipunited.com","username":"709924470","status":"Currently working at CIP United Co., Ltd."},"change_message_id":"e365feb5b100d85f3eabac6e7d6a9a375409c609","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":3,"id":"007017f8_62e20319","updated":"2025-02-14 10:58:18.000000000","message":"Hi, I have updated this patch according to the comments, and I will update the MIPS patch after this one goes through.\nLet me know if there are any further changes needed, cheers!","commit_id":"ace841922e359021787826f1f18d5c22136e462b"},{"author":{"_account_id":1000410,"name":"Oleksij Rempel","email":"linux@rempel-privat.de","username":"olerem"},"change_message_id":"064bb793ebdb9a2b47f02492c2efdea06956299f","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":3,"id":"62c5e9e3_be003b56","updated":"2025-01-26 10:44:58.000000000","message":"I\u0027ll expext something like this:\n``` \n/**\n * FIELD_FIT() - Check if a value fits in the specified bitfield mask\n * @_mask: Bitfield mask\n * @_value: Value to check\n *\n * This macro checks whether a given value fits within the range defined by the\n * specified bitfield mask. It ensures that no bits outside the mask are set.\n *\n * Return: true if the value fits, false otherwise.\n */\n#define FIELD_FIT(_mask, _value) \\\n    (!(((typeof(_mask))(_value) \u003c\u003c __bf_shf(_mask)) \u0026 ~(_mask)))\n\n/**\n * FIELD_PREP() - Prepare a value for insertion into a bitfield\n * @_mask: Bitfield mask\n * @_value: Value to insert\n *\n * This macro prepares a value for insertion into a bitfield by shifting the\n * value into the position defined by the mask and applying the mask.\n *\n * Return: The prepared bitfield value.\n */\n#define FIELD_PREP(_mask, _value) \\\n    (((typeof(_mask))(_value) \u003c\u003c __bf_shf(_mask)) \u0026 (_mask))\n\n/**\n * FIELD_GET() - Extract a value from a bitfield\n * @_mask: Bitfield mask\n * @_value: Bitfield value to extract from\n *\n * This macro extracts a value from a bitfield by masking and shifting the\n * relevant bits down to the least significant position.\n *\n * Return: The extracted value.\n */\n#define FIELD_GET(_mask, _value) \\\n    ((typeof(_mask))(((_value) \u0026 (_mask)) \u003e\u003e __bf_shf(_mask)))\n```","commit_id":"ace841922e359021787826f1f18d5c22136e462b"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"4e678343942e9749356867707ac9e85fa37481a7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"5b729c69_7453dbc9","updated":"2025-01-25 15:15:21.000000000","message":"Perhaps a brief explanation of what these functions actually do?","commit_id":"ace841922e359021787826f1f18d5c22136e462b"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"8f893cca4bcc0d5815ce82b4b6b1ab5d7e3d1564","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"ea48b09e_f5960bc3","updated":"2025-01-25 11:05:27.000000000","message":"Some more cleanup below, otherwise I\u0027m quite happy with this version. Thanks","commit_id":"ace841922e359021787826f1f18d5c22136e462b"},{"author":{"_account_id":1000410,"name":"Oleksij Rempel","email":"linux@rempel-privat.de","username":"olerem"},"change_message_id":"21fc4acbb9fee682c99acef7ca62bcdb1921bea8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"7c931838_cffef33a","updated":"2025-01-26 10:46:09.000000000","message":"The usage can be potentially documented too:\n```\n/**\n * Example: FIELD_FIT usage\n *\n * This example demonstrates the use of FIELD_FIT to check if a value fits\n * within a specific bitfield defined by a mask.\n */\n#include \u003clinux/bitfield.h\u003e\n\n#define MASK GENMASK(3, 0)  // 4 bits mask\n\nvoid example_field_fit(void) {\n    int value \u003d 0x5;\n\n    if (FIELD_FIT(MASK, value)) {\n        pr_info(\"Value fits within mask\\n\");\n    } else {\n        pr_info(\"Value exceeds mask\\n\");\n    }\n}\n\n/**\n * Example: FIELD_PREP usage\n *\n * This example demonstrates how to prepare a value for insertion into a\n * bitfield using FIELD_PREP.\n */\n#include \u003clinux/bitfield.h\u003e\n\n#define FIELD_MASK GENMASK(7, 4)  // Mask for bits 4-7\n\nvoid example_field_prep(void) {\n    int value \u003d 0x3;\n    int result \u003d FIELD_PREP(FIELD_MASK, value);\n\n    pr_info(\"Prepared field: 0x%X\\n\", result);\n}\n\n/**\n * Example: FIELD_GET usage\n *\n * This example demonstrates how to extract a value from a bitfield using\n * FIELD_GET.\n */\n#include \u003clinux/bitfield.h\u003e\n\n#define FIELD_MASK GENMASK(7, 4)  // Mask for bits 4-7\n\nvoid example_field_get(void) {\n    int reg \u003d 0xA0;  // Binary: 1010 0000\n    int field \u003d FIELD_GET(FIELD_MASK, reg);\n\n    pr_info(\"Extracted field: 0x%X\\n\", field);\n}\n```","commit_id":"ace841922e359021787826f1f18d5c22136e462b"},{"author":{"_account_id":1002186,"name":"Walter J.","display_name":"Walter Ji","email":"walter.ji@oss.cipunited.com","username":"709924470","status":"Currently working at CIP United Co., Ltd."},"change_message_id":"c544cebd63267f1875480c4e8350d7443345e57f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"72c7f73a_cef305c9","in_reply_to":"007017f8_62e20319","updated":"2025-05-07 02:15:48.000000000","message":"Done","commit_id":"ace841922e359021787826f1f18d5c22136e462b"},{"author":{"_account_id":1002186,"name":"Walter J.","display_name":"Walter Ji","email":"walter.ji@oss.cipunited.com","username":"709924470","status":"Currently working at CIP United Co., Ltd."},"change_message_id":"e365feb5b100d85f3eabac6e7d6a9a375409c609","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"4a2ba509_ecfd1b5d","in_reply_to":"62c5e9e3_be003b56","updated":"2025-02-14 10:58:18.000000000","message":"Done","commit_id":"ace841922e359021787826f1f18d5c22136e462b"},{"author":{"_account_id":1002186,"name":"Walter J.","display_name":"Walter Ji","email":"walter.ji@oss.cipunited.com","username":"709924470","status":"Currently working at CIP United Co., Ltd."},"change_message_id":"c544cebd63267f1875480c4e8350d7443345e57f","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":4,"id":"de1f5510_dfafa042","updated":"2025-05-07 02:15:48.000000000","message":"Hi, sorry for the late update, lots of things happened.\n\nI have checked again to make sure the macros that they have the same alignment with the FreeBSD ones and changed the comment to the whole URL provided.\n\nLet me know if anything else still needs change, thanks!","commit_id":"df59b926d26aeb8e0dc27057e09fcbeef3dfc6b3"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"3c7bb4c61e64d3a124697fb1239f94df65b6fd90","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"77b6069e_62ee8d67","updated":"2025-02-16 09:56:38.000000000","message":"Thanks for the update. A more general question: where are these helper macros used? What is the motivation?","commit_id":"df59b926d26aeb8e0dc27057e09fcbeef3dfc6b3"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"ac4857048cc81de3210033c3d02ec8e8dfc1a466","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"dd8bd079_65be01fe","in_reply_to":"60c6e892_4daf6893","updated":"2025-02-16 10:09:31.000000000","message":"Thanks, just one little thing from my side.","commit_id":"df59b926d26aeb8e0dc27057e09fcbeef3dfc6b3"},{"author":{"_account_id":1000410,"name":"Oleksij Rempel","email":"linux@rempel-privat.de","username":"olerem"},"change_message_id":"14593eb8b50c4392f19b8eb003c784488bc28c15","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"60c6e892_4daf6893","in_reply_to":"77b6069e_62ee8d67","updated":"2025-02-16 09:59:39.000000000","message":"It should be used here https://review.openocd.org/c/openocd/+/7874","commit_id":"df59b926d26aeb8e0dc27057e09fcbeef3dfc6b3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"f3b00ba6820aa225ce330e41135fcdb83a5adbac","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"4e252c21_e60b5320","in_reply_to":"de1f5510_dfafa042","updated":"2025-05-07 08:29:04.000000000","message":"Fully busy here too. Understand!\nI still have some comment, hopefully the last ones.","commit_id":"df59b926d26aeb8e0dc27057e09fcbeef3dfc6b3"},{"author":{"_account_id":1002186,"name":"Walter J.","display_name":"Walter Ji","email":"walter.ji@oss.cipunited.com","username":"709924470","status":"Currently working at CIP United Co., Ltd."},"change_message_id":"66fff9cea8aa08de75ad8c351e7ca90d28539304","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"18484d40_f9f38f1a","updated":"2025-05-07 09:17:00.000000000","message":"All done, thanks for your effort on this patch! Hope everything goes well for you.\nI will be updating the MIPS patches with these macros here after.","commit_id":"9491113bf5be91818cd419c618c14cd4c5919042"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6faafa2aea2d398a55f414b085c824bc769aae35","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"ddc43376_cd4e5507","updated":"2025-05-07 09:40:16.000000000","message":"Thanks! It\u0027s fine for me","commit_id":"9491113bf5be91818cd419c618c14cd4c5919042"}],"src/helper/Makefile.am":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"f3b00ba6820aa225ce330e41135fcdb83a5adbac","unresolved":true,"context_lines":[{"line_number":18,"context_line":"\t%D%/jim-nvp.c \\"},{"line_number":19,"context_line":"\t%D%/nvp.c \\"},{"line_number":20,"context_line":"\t%D%/align.h \\"},{"line_number":21,"context_line":"\t%D%/binarybuffer.h \\"},{"line_number":22,"context_line":"\t%D%/bits.h \\"},{"line_number":23,"context_line":"\t%D%/configuration.h \\"},{"line_number":24,"context_line":"\t%D%/list.h \\"}],"source_content_type":"application/octet-stream","patch_set":6,"id":"5e95f0a6_d1177c83","line":21,"updated":"2025-05-07 08:29:04.000000000","message":"Sorry, I forgot it!\nYou need to add after this line\n`   %D%/bitfield.h`\notherwise next patch that use this include file will fail an `make distcheck`.\nIt is better to add it in this patch than fixing it when it gets used.","commit_id":"b34feb119ab45d80aea306eb174f4ad9aa73f8a0"},{"author":{"_account_id":1002186,"name":"Walter J.","display_name":"Walter Ji","email":"walter.ji@oss.cipunited.com","username":"709924470","status":"Currently working at CIP United Co., Ltd."},"change_message_id":"66fff9cea8aa08de75ad8c351e7ca90d28539304","unresolved":false,"context_lines":[{"line_number":18,"context_line":"\t%D%/jim-nvp.c \\"},{"line_number":19,"context_line":"\t%D%/nvp.c \\"},{"line_number":20,"context_line":"\t%D%/align.h \\"},{"line_number":21,"context_line":"\t%D%/binarybuffer.h \\"},{"line_number":22,"context_line":"\t%D%/bits.h \\"},{"line_number":23,"context_line":"\t%D%/configuration.h \\"},{"line_number":24,"context_line":"\t%D%/list.h \\"}],"source_content_type":"application/octet-stream","patch_set":6,"id":"43632c0c_38fdd7f2","line":21,"in_reply_to":"5e95f0a6_d1177c83","updated":"2025-05-07 09:17:00.000000000","message":"No worries, I thought I missed something, too.\nAdded, thanks!","commit_id":"b34feb119ab45d80aea306eb174f4ad9aa73f8a0"}],"src/helper/bitfield.h":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"9422872a335cf88cf1e8b671e35b5fa413cff507","unresolved":true,"context_lines":[{"line_number":1,"context_line":"/* SPDX-License-Identifier: GPL-2.0-or-later */"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"/*"},{"line_number":4,"context_line":" * Copyright (C) 2024 by Shixin \u0027Walter\u0027 Ji"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"cfc08575_0fa99da6","line":1,"updated":"2024-03-04 10:17:31.000000000","message":"Being so deeply inspired (not to say copied) from Linux kernel, I think the tag should be the same as Linux, so ```GPL-2.0-only```.\nI\u0027m also looking at\nhttps://review.openocd.org/c/openocd/+/8171/1/src/helper/bits.h#1\nthat is not correct (my bad).","commit_id":"83a229f5093beec55db964ee13fe29d27a32a239"},{"author":{"_account_id":1002186,"name":"Walter J.","display_name":"Walter Ji","email":"walter.ji@oss.cipunited.com","username":"709924470","status":"Currently working at CIP United Co., Ltd."},"change_message_id":"be56124ae921f5b74f7c5f18052000397bbbd60f","unresolved":false,"context_lines":[{"line_number":1,"context_line":"/* SPDX-License-Identifier: GPL-2.0-or-later */"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"/*"},{"line_number":4,"context_line":" * Copyright (C) 2024 by Shixin \u0027Walter\u0027 Ji"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"781d9d31_1fb04636","line":1,"in_reply_to":"cfc08575_0fa99da6","updated":"2024-03-04 10:25:23.000000000","message":"Thanks for the clarification, fixed.","commit_id":"83a229f5093beec55db964ee13fe29d27a32a239"},{"author":{"_account_id":1000160,"name":"Paul Fertser","email":"fercerpav@gmail.com","username":"pfertser"},"change_message_id":"f5ddb6ec999f1a8be0bfe839b05caeb46c717c50","unresolved":true,"context_lines":[{"line_number":1,"context_line":"/* SPDX-License-Identifier: GPL-2.0-only */"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"/*"},{"line_number":4,"context_line":" * Copyright (C) 2024 by Shixin \u0027Walter\u0027 Ji"},{"line_number":5,"context_line":" * walter.ji@cipunited.com"},{"line_number":6,"context_line":" */"},{"line_number":7,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":2,"id":"192d1345_78fa03ca","line":4,"updated":"2024-03-09 11:29:41.000000000","message":"If you\u0027re the only copyright holder please make it GPL-2.0-or-later. If not please mention all the copyright holders properly.","commit_id":"e59b3a2b637422b97e057f06eb2a540ae6134779"},{"author":{"_account_id":1002186,"name":"Walter J.","display_name":"Walter Ji","email":"walter.ji@oss.cipunited.com","username":"709924470","status":"Currently working at CIP United Co., Ltd."},"change_message_id":"7dcac1769a80d274a6ba96fcc5b9483ffa22eb8b","unresolved":false,"context_lines":[{"line_number":1,"context_line":"/* SPDX-License-Identifier: GPL-2.0-only */"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"/*"},{"line_number":4,"context_line":" * Copyright (C) 2024 by Shixin \u0027Walter\u0027 Ji"},{"line_number":5,"context_line":" * walter.ji@cipunited.com"},{"line_number":6,"context_line":" */"},{"line_number":7,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":2,"id":"a695f491_17e14260","line":4,"in_reply_to":"192d1345_78fa03ca","updated":"2024-03-18 09:52:15.000000000","message":"Thanks for explaining and it seems a conclusion has been made, the identifier stays unchanged and I have to replace the code with similar ones from FreeBSD(without macros and functions above `__bf_shf(x)` I assume). \n\nIf there are no misunderstanding I will update this patch and proceed to edit other patches in the MIPS patch chain to use these macros.","commit_id":"e59b3a2b637422b97e057f06eb2a540ae6134779"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"8f893cca4bcc0d5815ce82b4b6b1ab5d7e3d1564","unresolved":true,"context_lines":[{"line_number":1,"context_line":"/* SPDX-License-Identifier: BSD-2-Clause"},{"line_number":2,"context_line":" *"},{"line_number":3,"context_line":" * Copyright (c) 2020-2024 The FreeBSD Foundation"},{"line_number":4,"context_line":" *"}],"source_content_type":"text/x-csrc","patch_set":3,"id":"32981ce7_faa1d645","line":1,"updated":"2025-01-25 11:05:27.000000000","message":"Please put the SPDX tag in a single line\n`/* SPDX-License-Identifier: BSD-2-Clause */`\nThen keep the copyright and sponsorship in a dedicated comment\n```\n/*\n * Copyright (c) 2020-2024 The FreeBSD Foundation\n *\n * This software was developed by Björn Zeeb under sponsorship from\n * the FreeBSD Foundation.\n */\n```\n\nand drop the rest of the boilerplate BSD-2-Clause comment, as it is already in the file `LICENSES/preferred/BSD-2-Clause`","commit_id":"ace841922e359021787826f1f18d5c22136e462b"},{"author":{"_account_id":1002186,"name":"Walter J.","display_name":"Walter Ji","email":"walter.ji@oss.cipunited.com","username":"709924470","status":"Currently working at CIP United Co., Ltd."},"change_message_id":"e365feb5b100d85f3eabac6e7d6a9a375409c609","unresolved":false,"context_lines":[{"line_number":1,"context_line":"/* SPDX-License-Identifier: BSD-2-Clause"},{"line_number":2,"context_line":" *"},{"line_number":3,"context_line":" * Copyright (c) 2020-2024 The FreeBSD Foundation"},{"line_number":4,"context_line":" *"}],"source_content_type":"text/x-csrc","patch_set":3,"id":"ed00ec0d_85465c43","line":1,"in_reply_to":"32981ce7_faa1d645","updated":"2025-02-14 10:58:18.000000000","message":"Done","commit_id":"ace841922e359021787826f1f18d5c22136e462b"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"8f893cca4bcc0d5815ce82b4b6b1ab5d7e3d1564","unresolved":true,"context_lines":[{"line_number":27,"context_line":" * SUCH DAMAGE."},{"line_number":28,"context_line":" */"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"#ifndef\tOPENOCD_HELPER_BITFIELD_H"},{"line_number":31,"context_line":"#define\tOPENOCD_HELPER_BITFIELD_H"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"/**"}],"source_content_type":"text/x-csrc","patch_set":3,"id":"6826c589_faf8752f","line":30,"updated":"2025-01-25 11:05:27.000000000","message":"use a space, not a tab, after `#ifndef` here, after `#define` and `#endif` below","commit_id":"ace841922e359021787826f1f18d5c22136e462b"},{"author":{"_account_id":1002186,"name":"Walter J.","display_name":"Walter Ji","email":"walter.ji@oss.cipunited.com","username":"709924470","status":"Currently working at CIP United Co., Ltd."},"change_message_id":"e365feb5b100d85f3eabac6e7d6a9a375409c609","unresolved":false,"context_lines":[{"line_number":27,"context_line":" * SUCH DAMAGE."},{"line_number":28,"context_line":" */"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"#ifndef\tOPENOCD_HELPER_BITFIELD_H"},{"line_number":31,"context_line":"#define\tOPENOCD_HELPER_BITFIELD_H"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"/**"}],"source_content_type":"text/x-csrc","patch_set":3,"id":"a12731d4_f2e5514a","line":30,"in_reply_to":"6826c589_faf8752f","updated":"2025-02-14 10:58:18.000000000","message":"Done","commit_id":"ace841922e359021787826f1f18d5c22136e462b"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"bfb927f4c4dfc1419b6d4ab31f07f77e348a4f0c","unresolved":true,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"/**"},{"line_number":14,"context_line":" * These macros come from FreeBSD\u0027s"},{"line_number":15,"context_line":" * `sys/compat/linuxkpi/common/include/linux/bitfield.h`"},{"line_number":16,"context_line":" * Which does not include example usages of them."},{"line_number":17,"context_line":" *"},{"line_number":18,"context_line":" * You may find examples from linux\u0027s source here:"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"8f64537f_fdbdc871","line":15,"updated":"2025-02-16 15:28:39.000000000","message":"To track any change in FreeBSD upstream code, it could be better to change it with the whole URL:\nhttps://cgit.freebsd.org/src/tree/sys/compat/linuxkpi/common/include/linux/bitfield.h","commit_id":"df59b926d26aeb8e0dc27057e09fcbeef3dfc6b3"},{"author":{"_account_id":1002186,"name":"Walter J.","display_name":"Walter Ji","email":"walter.ji@oss.cipunited.com","username":"709924470","status":"Currently working at CIP United Co., Ltd."},"change_message_id":"c544cebd63267f1875480c4e8350d7443345e57f","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"/**"},{"line_number":14,"context_line":" * These macros come from FreeBSD\u0027s"},{"line_number":15,"context_line":" * `sys/compat/linuxkpi/common/include/linux/bitfield.h`"},{"line_number":16,"context_line":" * Which does not include example usages of them."},{"line_number":17,"context_line":" *"},{"line_number":18,"context_line":" * You may find examples from linux\u0027s source here:"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"f2024078_0b5bbab6","line":15,"in_reply_to":"8f64537f_fdbdc871","updated":"2025-05-07 02:15:48.000000000","message":"Done","commit_id":"df59b926d26aeb8e0dc27057e09fcbeef3dfc6b3"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"ac4857048cc81de3210033c3d02ec8e8dfc1a466","unresolved":true,"context_lines":[{"line_number":31,"context_line":" *"},{"line_number":32,"context_line":" * Return: true if the value fits, false otherwise."},{"line_number":33,"context_line":" */"},{"line_number":34,"context_line":"#define FIELD_FIT(_mask, _value) \\"},{"line_number":35,"context_line":"\t(!(((typeof(_mask))(_value) \u003c\u003c __bf_shf(_mask)) \u0026 ~(_mask)))"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"/**"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"38c90c46_47ec71a1","line":34,"updated":"2025-02-16 10:09:31.000000000","message":"Why do we use underscores as prefix here? Are they necessary?","commit_id":"df59b926d26aeb8e0dc27057e09fcbeef3dfc6b3"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"bfb927f4c4dfc1419b6d4ab31f07f77e348a4f0c","unresolved":true,"context_lines":[{"line_number":31,"context_line":" *"},{"line_number":32,"context_line":" * Return: true if the value fits, false otherwise."},{"line_number":33,"context_line":" */"},{"line_number":34,"context_line":"#define FIELD_FIT(_mask, _value) \\"},{"line_number":35,"context_line":"\t(!(((typeof(_mask))(_value) \u003c\u003c __bf_shf(_mask)) \u0026 ~(_mask)))"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"/**"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"78629852_e1b2dbe7","line":34,"in_reply_to":"38c90c46_47ec71a1","updated":"2025-02-16 15:28:39.000000000","message":"These are the same defines in FreeBSD. Just copy/paste.\nKeeping them aligned could help tracking and incorporating any change in FreeBSD file.\nWe are talking about 3 macros only, so not that hard to compare them.","commit_id":"df59b926d26aeb8e0dc27057e09fcbeef3dfc6b3"},{"author":{"_account_id":1002186,"name":"Walter J.","display_name":"Walter Ji","email":"walter.ji@oss.cipunited.com","username":"709924470","status":"Currently working at CIP United Co., Ltd."},"change_message_id":"c544cebd63267f1875480c4e8350d7443345e57f","unresolved":false,"context_lines":[{"line_number":31,"context_line":" *"},{"line_number":32,"context_line":" * Return: true if the value fits, false otherwise."},{"line_number":33,"context_line":" */"},{"line_number":34,"context_line":"#define FIELD_FIT(_mask, _value) \\"},{"line_number":35,"context_line":"\t(!(((typeof(_mask))(_value) \u003c\u003c __bf_shf(_mask)) \u0026 ~(_mask)))"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"/**"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"f39683e1_f0ea4eec","line":34,"in_reply_to":"78629852_e1b2dbe7","updated":"2025-05-07 02:15:48.000000000","message":"Looks to me there are no further questions about this part, marking resolved.","commit_id":"df59b926d26aeb8e0dc27057e09fcbeef3dfc6b3"}]}
