Re: [PATCH] drm/msm: remove python 3.9 dependency for compiling msm

Abhinav Kumar
2024-05-08T16:52:46Z

On 5/8/2024 1:43 AM, Jani Nikula wrote:
> On Tue, 07 May 2024, Abhinav Kumar <quic_abhinavk@quicinc.com> wrote:
>> Since commit 5acf49119630 ("drm/msm: import gen_header.py script from Mesa"),
>> compilation is broken on machines having python versions older than 3.9
>> due to dependency on argparse.BooleanOptionalAction.
>
> Is it now okay to require Python for the build? Not listed in
> Documentation/process/changes.rst.
>
> BR,
> Jani.
>

The change to move gen_header.py to kernel is already part of the v6.10
pull request.

This change only fixes the version dependency.

But, I agree we should update the changes.rst (better late than never).

Dmitry, can you pls suggest which version we want to list there?

I am hoping that after this change there are no further dependencies on
python versions, so anything > EOL should be fine.

I am leaning towards v3.8

>
>
>>
>> Switch to use simple bool for the validate flag to remove the dependency.
>>
>> Fixes: 5acf49119630 ("drm/msm: import gen_header.py script from Mesa")
>> Signed-off-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
>> ---
>> drivers/gpu/drm/msm/registers/gen_header.py | 5 +++--
>> 1 file changed, 3 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/msm/registers/gen_header.py b/drivers/gpu/drm/msm/registers/gen_header.py
>> index fc3bfdc991d2..3926485bb197 100644
>> --- a/drivers/gpu/drm/msm/registers/gen_header.py
>> +++ b/drivers/gpu/drm/msm/registers/gen_header.py
>> @@ -538,7 +538,7 @@ class Parser(object):
>> self.variants.add(reg.domain)
>>
>> def do_validate(self, schemafile):
>> - if self.validate == False:
>> + if not self.validate:
>> return
>>
>> try:
>> @@ -948,7 +948,8 @@ def main():
>> parser = argparse.ArgumentParser()
>> parser.add_argument('--rnn', type=str, required=True)
>> parser.add_argument('--xml', type=str, required=True)
>> - parser.add_argument('--validate', action=argparse.BooleanOptionalAction)
>> + parser.add_argument('--validate', default=False, action='store_true')
>> + parser.add_argument('--no-validate', dest='validate', action='store_false')
>>
>> subparsers = parser.add_subparsers()
>> subparsers.required = True
>