On Tue, Jan 09, 2007 at 12:26:20PM -0500, Benjamin Romer wrote:
> While working with the IO-APIC problem I've been having on the ES-7000,
> I noticed something that confuses me about the IO-APIC table entry
> structure. If you look in include/asm-x86_64/io_apic.h, it lists the
> destination field as a union declared like this:
>
> union { struct { __u32
> __reserved_1 : 24,
> physical_dest : 4,
> __reserved_2 : 4;
> } physical;
>
> struct { __u32
> __reserved_1 : 24,
> logical_dest : 8;
> } logical;
> } dest;
>
> So, when calling print_IO_APIC(), I would have thought that there would
> be overlap in the Log and Phy fields if there's data in the logical_dest
> field. For instance, my IO-APIC prints out
>
> .... IRQ redirection table:
> NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect:
> 00 020 00 0 0 0 0 0 0 7 00
> ^^^ ^^
>
> Since there's an 0x020 in the logical_dest field, shouldn't the Phy
> field be printing out as 0x02, rather than 0x00? Is there a byte
> ordering issue here maybe?
I think this behaviour might be ok. I think it will stored as follows.
MSB LSB
0010 0000 (Rest 24 bits)
<---> (physical_dest, 4bits)
<-----------> (logical_dest, 8bits)
So in above arrangement physical_dest is 0x0 and logical_dest is 0x20.
Thanks
Vivek
_______________________________________________
fastboot mailing list
[email protected]
https://lists.osdl.org/mailman/listinfo/fastboot