diff options
Diffstat (limited to 'xpp/card_global.h')
-rw-r--r-- | xpp/card_global.h | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/xpp/card_global.h b/xpp/card_global.h index 94e073b..ecf137e 100644 --- a/xpp/card_global.h +++ b/xpp/card_global.h @@ -43,10 +43,12 @@ DEF_RPACKET_DATA(GLOBAL, PCM_READ, byte pcm[PCM_CHUNKSIZE]; ); DEF_RPACKET_DATA(GLOBAL, SYNC_SOURCE, - byte mask; + byte sync_mode; + byte drift; ); DEF_RPACKET_DATA(GLOBAL, SYNC_REPLY, - byte mask; + byte sync_mode; + byte drift; ); DEF_RPACKET_DATA(GLOBAL, ERROR_CODE, byte errorcode; @@ -55,9 +57,15 @@ DEF_RPACKET_DATA(GLOBAL, ERROR_CODE, } info; ); +enum sync_mode { + SYNC_MODE_HOST = 0x00, + SYNC_MODE_AB = 0x01, /* Astribank sync */ + SYNC_MODE_PLL = 0x03, /* Adjust XPD's PLL according to HOST */ + SYNC_MODE_QUERY = 0x80, +}; /* 0x04 */ DECLARE_CMD(GLOBAL, DESC_REQ, int xpd_num); -/* 0x19 */ DECLARE_CMD(GLOBAL, SYNC_SOURCE, bool setit, bool is_master); +/* 0x19 */ DECLARE_CMD(GLOBAL, SYNC_SOURCE, enum sync_mode mode, int drift); /* 0x11 */ DECLARE_CMD(GLOBAL, PCM_WRITE, xpp_line_t lines, volatile byte *buf); extern xproto_table_t PROTO_TABLE(GLOBAL); |