coreboot: sizeof doesn't always return long, it seems
Correct for size_t would be %zx, but coreboot's printf doesn't support this. Trying to keep it simple: Two sizes are expected equal so use same %x for both. Cast to unsigned int to make sure it fits.
Signed-off-by: Jens Rottmann JRottmann@LiPPERTEmbedded.de ---
Hi Myles,
you have changed this from %x to %lx with rev 5603. But my gcc 4.3.2 (32 bits) appearently doesn't like it. Maybe you have a 64 bit system?
If my approach is ok for you, would you please commit?
Thanks, Jens
--- src/arch/i386/boot/pirq_routing.c (revision 5697) +++ src/arch/i386/boot/pirq_routing.c (working copy) @@ -13,8 +13,8 @@ printk(BIOS_INFO, "Checking Interrupt Routing Table consistency...\n");
if (sizeof(struct irq_routing_table) != rt->size) { - printk(BIOS_WARNING, "Inconsistent Interrupt Routing Table size (0x%lx/0x%x).\n", - sizeof(struct irq_routing_table), + printk(BIOS_WARNING, "Inconsistent Interrupt Routing Table size (0x%x/0x%x).\n", + (unsigned int)sizeof(struct irq_routing_table), rt->size ); rt->size=sizeof(struct irq_routing_table); _
On Tue, Aug 17, 2010 at 7:31 AM, Jens Rottmann JRottmann@lippertembedded.de wrote:
coreboot: sizeof doesn't always return long, it seems
Correct for size_t would be %zx, but coreboot's printf doesn't support this. Trying to keep it simple: Two sizes are expected equal so use same %x for both. Cast to unsigned int to make sure it fits.
Signed-off-by: Jens Rottmann JRottmann@LiPPERTEmbedded.de
Acked-by: Myles Watson mylesgw@gmail.com Rev 5719.
Thanks, Myles