Re: [RFC PATCH 3/5] efi/gop: Convert GOP structures to typedef and cleanup some types

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 12 Dec 2019 at 23:41, Arvind Sankar <nivedita@xxxxxxxxxxxx> wrote:
>
> On Thu, Dec 12, 2019 at 10:35:56PM +0000, Ard Biesheuvel wrote:
> > On Thu, 12 Dec 2019 at 22:34, Arvind Sankar <nivedita@xxxxxxxxxxxx> wrote:
> > >
> > > Use typedef for the GOP structures, in anticipation of unifying
> > > 32/64-bit code. Also use more appropriate types in the non-bitness
> > > specific structures for the framebuffer address and pointers.
> > >
> > > Signed-off-by: Arvind Sankar <nivedita@xxxxxxxxxxxx>
> >
> >
> > This gives me
> >
> > /home/ardbie01/linux/drivers/firmware/efi/libstub/gop.c: In function
> > ‘setup_gop32’:
> > /home/ardbie01/linux/drivers/firmware/efi/libstub/gop.c:96:27: error:
> > storage size of ‘pixel_info’ isn’t known
> >   struct efi_pixel_bitmask pixel_info;
> >                            ^~~~~~~~~~
> > /home/ardbie01/linux/drivers/firmware/efi/libstub/gop.c:125:38: error:
> > dereferencing pointer to incomplete type ‘struct
> > efi_graphics_output_protocol_32’
> >    mode = (void *)(unsigned long)gop32->mode;
> >                                       ^~
> > /home/ardbie01/linux/scripts/Makefile.build:265: recipe for target
> > 'drivers/firmware/efi/libstub/gop.o' failed
> > make[5]: *** [drivers/firmware/efi/libstub/gop.o] Error 1
> > make[5]: *** Waiting for unfinished jobs....
>
> Something must be wrong with the application of the patch. The patch
> does change the declaration of pixel_info and gop32 as seen below.
>

Yeah, indeed. Sorry for the noise.


> > > @@ -87,13 +87,13 @@ static efi_status_t
> > >  setup_gop32(efi_system_table_t *sys_table_arg, struct screen_info *si,
> > >              efi_guid_t *proto, unsigned long size, void **gop_handle)
> > >  {
> > > -       struct efi_graphics_output_protocol_32 *gop32, *first_gop;
> > > +       efi_graphics_output_protocol_32_t *gop32, *first_gop;
> > >         unsigned long nr_gops;
> > >         u16 width, height;
> > >         u32 pixels_per_scan_line;
> > >         u32 ext_lfb_base;
> > > -       u64 fb_base;
> > > -       struct efi_pixel_bitmask pixel_info;
> > > +       efi_physical_addr_t fb_base;
> > > +       efi_pixel_bitmask_t pixel_info;
> > >         int pixel_format;




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux