This structure is returned by the lv1_gpu_context_allocate function as a substructure of gpu_driver_info
struct display_head {
u64 be_time_stamp;
u32 status;
u32 offset;
u32 res1;
u32 res2;
u32 field;
u32 reserved1;
u64 res3;
u32 raster;
u64 vblank_count;
u32 field_vsync;
u32 reserved2;
};
| Member | Description |
|---|---|
| be_time_stamp | Unknown, unused by Kernel. Presumably a Big Endian time_stamp of some description |
| status | Unknown, Unused by the Kernel. |
| offset | Unknown, Unused by the Kernel. |
| res1 | Unknown, Unused by the Kernel. |
| res2 | Unknown, Unused by the Kernel. |
| field | Unknown, Unused by the Kernel. |
| reserved1 | Unknown, Unused by the Kernel. |
| res3 | Unknown, Unused by the Kernel. |
| raster | Unknown, Unused by the Kernel. Maybe the number of the current raster in the refresh cycle. |
| vblank_count | KNOWN: A count of full frame refreshes. |
| field_vsync | Unknown, Unused by the Kernel. Maybe an indicator of the odd or even field being refreshed in an interlaced display mode. |
| reserved2 | Unknown, Unused by the Kernel. |
This structure seems to hold the current “real time” status of the “display head” it references. Remember the original PS3 specs stated 2 Independent HDMI ports, which would be seperate “heads”, so it is likely the PS3 still incorporates the multiple “heads” in its architecture, but only has 1 fitted. Maybe a future PS3 version will have 8 heads? That would be interesting. That could also be why “head” 1 is the only head used, “head 0” may be the extra HDMI port that was removed.