Subject: Re: [PATCH] ps3: add vuart support

From: Geoff Levand <[email-masked]>
Date: Thu, 07 Dec 2006 12:29:50 -0800

Arnd Bergmann wrote:
> On Thursday 07 December 2006 01:17, Geoff Levand wrote:
>> Adds support for the PS3 virtual UART (vuart).  The vuart provides a
>> bi-directional byte stream data link between logical partitions.
> 
> Looks good now, just a few minor comments:
> 
>> +struct ports_bmp
>> +{
>> +	u64 status;
>> +	u64 unused[3];
>> +} __attribute__ ((packed));
> 
> Do you really want to have this structure packed? It will produce
> better code if it isn't.

Yes, it is a little obscure in the code, but the address of the ports_bmp
instance is passed to ps3_alloc_vuart_irq(), which in turn calls
lv1_configure_virtual_uart_irq().  The HV (actually the vuart service
in the policy module) uses this as a 256 bit bitmap to indicate the
interrupt status of the ports.  The system supports 256 ports, but
currently just two ports, 1 and 3, are used, so I took advantage of
that to simplify the code and just used the first word of the bitmap.

I'll post an updated patch to address your other comments.

-Geoff