51 lines
995 B
Plaintext
51 lines
995 B
Plaintext
package yellowstone;
|
|
|
|
interface Yellowstone {
|
|
method RegisterEndpoint(RegisterEndpointRequest) -> ();
|
|
method GetEndpoint(GetEndpointRequest) -> (Endpoint);
|
|
method GetAhciInfo() -> (AhciInfo);
|
|
method GetFramebufferInfo() -> (FramebufferInfo);
|
|
method GetDenali() -> (DenaliInfo);
|
|
}
|
|
|
|
message RegisterEndpointRequest {
|
|
string endpoint_name;
|
|
capability endpoint_capability;
|
|
}
|
|
|
|
message GetEndpointRequest {
|
|
string endpoint_name;
|
|
}
|
|
|
|
message Endpoint {
|
|
capability endpoint;
|
|
}
|
|
|
|
message AhciInfo {
|
|
capability ahci_region;
|
|
u64 region_length;
|
|
}
|
|
|
|
message FramebufferInfo {
|
|
u64 address_phys;
|
|
u64 width;
|
|
u64 height;
|
|
u64 pitch;
|
|
// TODO: Add u16 & u8 to the yunq language so
|
|
// the following can be appropriate widths.
|
|
u64 bpp;
|
|
u64 memory_model;
|
|
u64 red_mask_size;
|
|
u64 red_mask_shift;
|
|
u64 green_mask_size;
|
|
u64 green_mask_shift;
|
|
u64 blue_mask_size;
|
|
u64 blue_mask_shift;
|
|
}
|
|
|
|
message DenaliInfo {
|
|
capability denali_endpoint;
|
|
u64 device_id;
|
|
u64 lba_offset;
|
|
}
|