<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Tue, Mar 6, 2018 at 1:54 AM, Pohjolainen, Topi <span dir="ltr"><<a href="mailto:topi.pohjolainen@gmail.com" target="_blank">topi.pohjolainen@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On Fri, Jan 26, 2018 at 05:59:49PM -0800, Jason Ekstrand wrote:<br>
> ---<br>
>  src/intel/isl/gen_format_<wbr>layout.py | 16 +++++++++++++---<br>
>  src/intel/isl/isl.h                |  1 +<br>
>  2 files changed, 14 insertions(+), 3 deletions(-)<br>
><br>
> diff --git a/src/intel/isl/gen_format_<wbr>layout.py b/src/intel/isl/gen_format_<wbr>layout.py<br>
> index 535f38c..633498b 100644<br>
> --- a/src/intel/isl/gen_format_<wbr>layout.py<br>
> +++ b/src/intel/isl/gen_format_<wbr>layout.py<br>
> @@ -76,7 +76,7 @@ isl_format_layouts[] = {<br>
>      % for mask in ['r', 'g', 'b', 'a', 'l', 'i', 'p']:<br>
>        <% channel = getattr(format, mask, None) %>\\<br>
>        % if channel.type is not None:<br>
> -        .${mask} = { ISL_${channel.type}, ${channel.size} },<br>
> +        .${mask} = { ISL_${channel.type}, ${channel.start}, ${channel.size} },<br>
>        % else:<br>
>          .${mask} = {},<br>
>        % endif<br>
> @@ -139,7 +139,10 @@ class Channel(object):<br>
>          else:<br>
>              grouped = self._splitter.match(line)<br>
>              self.type = self._types[grouped.group('<wbr>type')].upper()<br>
> -            self.size = grouped.group('size')<br>
> +            self.size = int(grouped.group('size'))<br>
> +<br>
> +        # Default the start big to -1<br>
<br>
</div></div>                               bit<br>
<span class=""><br>
> +        self.start = -1;<br>
><br>
><br>
>  class Format(object):<br>
> @@ -160,7 +163,14 @@ class Format(object):<br>
>          self.l = Channel(line[9])<br>
>          self.i = Channel(line[10])<br>
>          self.p = Channel(line[11])<br>
> -        self.order = line[12]<br>
> +<br>
> +        # Set the start bit value for each channel<br>
> +        order = line[12].strip()<br>
<br>
</span>You aren't setting "self.order" anymore?<span class=""><br></span></blockquote><div><br></div><div>No.  Nothing was using it.  It doesn't really matter to me whether we store it in the Format object or not.<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">
> +        bit = 0<br>
> +        for c in order:<br>
> +            chan = getattr(self, c)<br>
> +            chan.start = bit;<br>
> +            bit = bit + chan.size<br>
><br>
>          # alpha doesn't have a colorspace of it's own.<br>
>          self.colorspace = line[13].strip().upper()<br>
> diff --git a/src/intel/isl/isl.h b/src/intel/isl/isl.h<br>
> index 277998f..04d0f0b 100644<br>
> --- a/src/intel/isl/isl.h<br>
> +++ b/src/intel/isl/isl.h<br>
> @@ -975,6 +975,7 @@ struct isl_extent4d {<br>
><br>
>  struct isl_channel_layout {<br>
>     enum isl_base_type type;<br>
> +   uint8_t start_bit; /**< Bit at which this channel starts */<br>
>     uint8_t bits; /**< Size in bits */<br>
>  };<br>
><br>
> --<br>
> 2.5.0.400.gff86faf<br>
><br>
</span>> ______________________________<wbr>_________________<br>
> mesa-dev mailing list<br>
> <a href="mailto:mesa-dev@lists.freedesktop.org">mesa-dev@lists.freedesktop.org</a><br>
> <a href="https://lists.freedesktop.org/mailman/listinfo/mesa-dev" rel="noreferrer" target="_blank">https://lists.freedesktop.org/<wbr>mailman/listinfo/mesa-dev</a><br>
</blockquote></div><br></div></div>