[Cbe-oss-dev] ps3av.h user space build errors

Geert Uytterhoeven Geert.Uytterhoeven at sonycom.com
Wed Jan 9 02:24:16 EST 2008


On Mon, 7 Jan 2008, Arnd Bergmann wrote:
> On Sunday 06 January 2008, Geoff Levand wrote:
> > I noticed we get these when building with ps3av.h from the
> > SDK 3.0.  
> > 
> >   /opt/cell/sysroot/usr/include/asm/ps3av.h:321: error: expected specifier-qualifier-list before 'u16'
> >   /opt/cell/sysroot/usr/include/asm/ps3av.h:327: error: expected specifier-qualifier-list before 'u16'
> >   /opt/cell/sysroot/usr/include/asm/ps3av.h:336: error: expected specifier-qualifier-list before 'u32'
> >   ...
> > 
> > ps3-utils (libps3-utils) uses configure to check for a usable
> > ps3av.h, then falls back to using its own defines.  It seems
> > we either need to make ps3av.h usable, or not included it
> > in the system headers and expect users to use ps3-av.h from
> > libps3-utils.
> > 
> > ps3-utils is here:
> > 
> >   http://git.kernel.org/?p=linux/kernel/git/geoff/ps3-utils.git
> 
> asm/ps3av.h is currently not exported to user space in the mainline
> kernel, and has lots of stuff in it that make it unsuitable for
> exporting, e.g. extern declarations for kernel internal functions.
> 
> I'd have to check how the file got into the sysroot, there is
> probably a bug in the sysroot creation script that does not
> run 'make headers_install', but it could be some patch that
> put this file on the list of exported headers.
> Did you have such a patch in any of your ps3-linux releases?

Yes, between Jun 1, 2007, and Sep 11, 2007, we had it exported
(after cleanup). Probably that's how it ended up in the sysroot.

> For ps3-utils, the easiest solution should be to always use its
> own copy. There is no point to rely on the kernel version when
> we have to maintain backwards compatibility with binary copies
> of the ps3-utils anyway.

But the export was dropped due to the discussion with HCH quoted below,
and because ps3-utils already handled the case where the include was not
present anyway.

On Thu, 7 Jun 2007, Christoph Hellwig wrote:
> On Wed, Jun 06, 2007 at 09:44:03AM -0700, Geoff Levand wrote:
> > Christoph Hellwig wrote:
> > > On Tue, Jun 05, 2007 at 08:00:07PM -0700, Geoff Levand wrote:
> > >> The user applications to manage the PS3 AV modes can use values
> > >> defined in this header.
> > > 
> > > NACK.  First please don't introduce new unifdef-y headers but always
> > > separated them.  Second I don't see any of the values actually used
> > > in a user<->kerne interface.  If the application only happens to use
> > > the same values it should ship a copy of the header intead.
> > 
> > Yes, they are currently used with ioctl for video mode selection
> > by the ps3videomode utility.
> > 
> > OK, you recommend having two headers one for the kernel and one for
> > the application or library, then keeping them in sync.  I think
> > in some ways that is easier for the package user also, since there
> > is no dependency on kernel headers.  It does mean that the package
> > definitions need to be kept up to date.
> 
> Now that we're actually using it for the ioctls it's fine to export
> it.  But please use a separate header that contains just these bits
> instead of introducing more headers that need unifdefing.

With kind regards,

Geert Uytterhoeven
Software Architect

Sony Network and Software Technology Center Europe
The Corporate Village · Da Vincilaan 7-D1 · B-1935 Zaventem · Belgium

Phone:    +32 (0)2 700 8453
Fax:      +32 (0)2 700 8622
E-mail:   Geert.Uytterhoeven at sonycom.com
Internet: http://www.sony-europe.com/

Sony Network and Software Technology Center Europe
A division of Sony Service Centre (Europe) N.V.
Registered office: Technologielaan 7 · B-1840 Londerzeel · Belgium
VAT BE 0413.825.160 · RPR Brussels
Fortis Bank Zaventem · Swift GEBABEBB08A · IBAN BE39001382358619


More information about the cbe-oss-dev mailing list