Thread (16 messages) 16 messages, 3 authors, 2013-08-04

Re: [PATCH RESEND 0/8] x86 platform framebuffers

From: David Herrmann <hidden>
Date: 2013-08-04 17:30:28
Also in: lkml

Hi

On Sat, Aug 3, 2013 at 5:53 PM, H. Peter Anvin [off-list ref] wrote:
When compiled for i386 PAE phys_addr_t is 64 bits but pointers are 32 bits.
Yepp, that makes sense. I am not really comfortable fixing this as I
have no idea how PAE actually works, but I digged through git history
and sent a patch to linux-fbdev (I put you on CC). The (long)-cast
should be sufficient, I guess.

Were there any other build warnings you encountered?

Thanks
David
David Herrmann [off-list ref] wrote:
quoted
Hi

On Sat, Aug 3, 2013 at 1:39 AM, H. Peter Anvin [off-list ref] wrote:
quoted
On 08/02/2013 05:05 AM, David Herrmann wrote:
quoted
Hi

I cut down my previous series to no longer include the SimpleDRM
driver. If
quoted
quoted
anyone is interested, you can find it here:
  http://lwn.net/Articles/558104/
I will resend it once these preparation patches are in.

Changes since v2:
 - added common x86 formats (reported by hpa) (patch #5)

This whole series (including simpledrm) is tested by Stephen and me.
I would be
quoted
quoted
glad if maintainers could ack/nack this so I can continue my work.

This series is pretty small and just converts x86 to use
platform-devices
quoted
quoted
instead of global objects to pass framebuffer data to drivers. The
commit
quoted
quoted
messages explain everything in detail.
The idea is to create a "platform-framebuffer" device which drivers
can bind to.
quoted
quoted
If x86 boot code detectes efi or vesa framebuffers, it creates
efi-framebuffer
quoted
quoted
or vesa-framebuffer devices instead.

Additionally, if the modes are compatible, "simple-framebuffer"
devices are
quoted
quoted
created so simplefb can be used on x86. This feature is only enabled
if
quoted
quoted
CONFIG_X86_SYSFB is selected (off by default) so users without
simplefb still
quoted
quoted
get boot logs.

 @Stephen: I wasn't sure whether you tested the efi/vesa framebuffer
changes,
quoted
quoted
too, so I didn't add your tested-by there. And I changed patch #5 so
I dropped
quoted
quoted
it there, too. Thanks for testing!
I am getting a bunch of new warnings with this patchset, typically of
the form:


/home/hpa/kernel/distwork/drivers/video/arkfb.c:1019:23: warning:
cast
quoted
to pointer from integer of different size [-Wint-to-pointer-cast]
  par->state.vgabase = (void __iomem *) vga_res.start;
                       ^
/home/hpa/kernel/distwork/drivers/video/s3fb.c: In function
‘s3_pci_probe’:
quoted
/home/hpa/kernel/distwork/drivers/video/s3fb.c:1186:23: warning: cast
to
quoted
pointer from integer of different size [-Wint-to-pointer-cast]
  par->state.vgabase = (void __iomem *) vga_res.start;
                       ^
I have pushed it out to a topic branch in the tip tree, partly to
give
quoted
Fengguang's build bot a run at it (it is excellent at spotting the
origin of new warnings), but this needs to be fixed; we will not
merge
quoted
this branch in its current form.
Thanks for looking at it. However, these warnings seem unrelated to my
patchset. I didn't change any vga/fb headers nor did I touch
arkfb/s3fb. Furthermore, I cannot reproduce these warnings. "vga_res"
is a "struct resource", "->start" is of type "resource_size_t" which
is typedef'ed to "phys_addr_t". Seems like the build-bot used some
random config with CONFIG_PHYS_ADDR_T_64BIT set but building on 32bit
(or something like that).

Is there any place where I can see the compiler log? Or the used
.config file?

Thanks
David
--
Sent from my mobile phone. Please excuse brevity and lack of formatting.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help