Changeset 2246
- Timestamp:
- 11/04/12 07:07:09 (11 years ago)
- Files:
-
- trunk/libffado/src/dice/focusrite/focusrite_eap.h (modified) (1 diff)
- trunk/libffado/src/dice/focusrite/saffire_pro14.h (modified) (1 diff)
- trunk/libffado/src/dice/focusrite/saffire_pro24.h (modified) (1 diff)
- trunk/libffado/src/dice/focusrite/saffire_pro40.h (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/libffado/src/dice/focusrite/focusrite_eap.h
r1766 r2246 29 29 30 30 #include "libieee1394/configrom.h" 31 32 /** 33 * Focusrite EAP application space 34 * Prescribed values common to all devices 35 */ 36 // The limit of the monitoring setting register space in the EAP application space 37 // (included) 38 // All subsequent addresses can not be beyond this limit 39 #define FOCUSRITE_EAP_REGISTER_APP_MONITORING_LIMIT 0x68 40 41 // To be sent after any message set 42 #define FOCUSRITE_EAP_MESSAGE_SET_NO_MESSAGE 0 43 44 // Global switches 45 // One register for each 46 #define FOCUSRITE_EAP_GLOBAL_MUTE_SWITCH_VALUE 1 47 #define FOCUSRITE_EAP_GLOBAL_DIM_SWITCH_VALUE 1 48 49 // Per Line/Out switch monitor registers; bit encoding 50 // Each register controls two (left and rigth) Line/Out 51 #define FOCUSRITE_EAP_SWITCH_BIT_1 1 // Activate left Line/Out 52 #define FOCUSRITE_EAP_SWITCH_BIT_2 2 // Activate right Line/Out 53 #define FOCUSRITE_EAP_SWITCH_BIT_1_2 3 // Activate both 54 #define FOCUSRITE_EAP_SWITCH_BIT_3 4 // Mute left Line/Out 55 #define FOCUSRITE_EAP_SWITCH_BIT_4 8 // Mute right Line/Out 56 57 // Per Line/Out mute, dim and mono register; bit encoding 58 // One register controls all Line/Out 59 #define FOCUSRITE_EAP_SWITCH_CONTROL_MUTE_SHIFT 0 60 #define FOCUSRITE_EAP_SWITCH_CONTROL_DIM_SHIFT 10 61 #define FOCUSRITE_EAP_SWITCH_CONTROL_MONO_SHIFT 20 62 #define FOCUSRITE_EAP_GLOBAL_MUTE_SWITCH_VALUE 1 63 #define FOCUSRITE_EAP_GLOBAL_DIM_SWITCH_VALUE 1 64 #define FOCUSRITE_EAP_SWITCH_CONTROL_VALUE 1 65 66 // Per Line/Out volume monitor registers 67 // Each register controls two (left and rigth) Line/Out 68 // The two last bytes (little endian) of each Line/Out volume register 69 // control the right and line line respectively 70 #define FOCUSRITE_EAP_LINEOUT_VOLUME_SET_1 0 71 #define FOCUSRITE_EAP_LINEOUT_VOLUME_SET_2 8 72 73 // Per Line/Out Instrument/Line and Hi/Lo gain switches 74 // Each register controls two (left and rigth) Line/Out 75 #define FOCUSRITE_EAP_LINEOUT_SWITCH_INST_SHIFT 16 76 #define FOCUSRITE_EAP_LINEOUT_SWITCH_GAIN_SHIFT 16 31 77 32 78 namespace Dice { trunk/libffado/src/dice/focusrite/saffire_pro14.h
r2239 r2246 32 32 #include "focusrite_eap.h" 33 33 34 /** 35 * Saffire Pro 14 EAP application space 36 */ 37 // Versioning registers 38 #define SAFFIRE_PRO14_REGISTER_APP_VERSION 0x00 39 #define SAFFIRE_PRO14_REGISTER_APP_RELEASE 0x04 40 #define SAFFIRE_PRO14_REGISTER_APP_BUILDNR 0x08 41 34 42 // Nickname register 35 43 #define SAFFIRE_PRO14_REGISTER_APP_NICK_NAME 0x44 36 44 // NOTE: in bytes 37 45 #define SAFFIRE_PRO14_APP_NICK_NAME_SIZE 16 46 47 // Global monitor registers (application space) 48 #define SAFFIRE_PRO14_REGISTER_APP_GLOBAL_MUTE_SWITCH 0x10 49 #define SAFFIRE_PRO14_REGISTER_APP_GLOBAL_DIM_SWITCH 0x14 50 #define SAFFIRE_PRO14_REGISTER_APP_GLOBAL_DIM_VOLUME 0x58 51 #define SAFFIRE_PRO14_REGISTER_APP_GLOBAL_MONITOR_VOLUME 0x54 52 53 // Per line/out monitor volume and switches: registers are expected to be one after the other 54 // each register controlling two output lines 55 // This is indeed the number of analog output controlled by the monitor 56 #define SAFFIRE_PRO14_APP_STEREO_LINEOUT_SIZE 2 57 58 // Volume and switch monitor register 59 #define SAFFIRE_PRO14_REGISTER_APP_LINEOUT_MONITOR_VOLUME 0x18 60 #define SAFFIRE_PRO14_REGISTER_APP_LINEOUT_MONITOR_SWITCH 0x2C 61 62 // Switch control (per line/out mute, dim and mono) 63 #define SAFFIRE_PRO14_REGISTER_APP_LINEOUT_SWITCH_CONTROL 0x40 64 65 // Message set 66 // The location of the message register and the values for each setting 67 #define SAFFIRE_PRO14_REGISTER_APP_MESSAGE_SET 0x0C 68 #define SAFFIRE_PRO14_MESSAGE_SET_NO_MESSAGE 0 69 #define SAFFIRE_PRO14_MESSAGE_SET_LINEOUT_MONITOR_VOLUME 1 70 #define SAFFIRE_PRO14_MESSAGE_SET_GLOBAL_DIM_MUTE_SWITCH 2 71 #define SAFFIRE_PRO14_MESSAGE_SET_LINEOUT_SWITCH_CONTROL 3 72 #define SAFFIRE_PRO14_MESSAGE_SET_INSTLINE 4 73 #define SAFFIRE_PRO14_MESSAGE_SET_MESSAGE_END 5 74 75 // Standalone 76 #define SAFFIRE_PRO14_REGISTER_STANDALONE_SWITCH 0x64 77 #define SAFFIRE_PRO14_REGISTER_STANDALONE_SRC_SMPL 0x68 // Automatically stored 78 79 // Inst/Line and Hi/Lo gain control 80 // each register controls two (mono) output lines 81 #define SAFFIRE_PRO14_REGISTER_APP_LINEOUT_INST_SWITCH 0x5C 82 #define SAFFIRE_PRO14_LINEOUT_SWITCH_INST_NUMBER 1 83 #define SAFFIRE_PRO14_LINEOUT_SWITCH_INST_VALUE 2 84 #define SAFFIRE_PRO14_REGISTER_APP_LINEOUT_GAIN_SWITCH 0x60 85 #define SAFFIRE_PRO14_LINEOUT_SWITCH_GAIN_NUMBER 1 86 #define SAFFIRE_PRO14_LINEOUT_SWITCH_GAIN_VALUE 1 38 87 39 88 namespace Dice { trunk/libffado/src/dice/focusrite/saffire_pro24.h
r2240 r2246 32 32 #include "focusrite_eap.h" 33 33 34 /** 35 * Saffire Pro 24 EAP application space 36 */ 37 // Versioning registers 38 #define SAFFIRE_PRO24_REGISTER_APP_VERSION 0x00 39 #define SAFFIRE_PRO24_REGISTER_APP_RELEASE 0x04 40 #define SAFFIRE_PRO24_REGISTER_APP_BUILDNR 0x08 41 34 42 // Nickname register 35 43 #define SAFFIRE_PRO24_REGISTER_APP_NICK_NAME 0x40 36 44 // NOTE: in bytes 37 45 #define SAFFIRE_PRO24_APP_NICK_NAME_SIZE 16 46 47 // Global monitor registers (application space) 48 #define SAFFIRE_PRO24_REGISTER_APP_GLOBAL_MUTE_SWITCH 0x0C 49 #define SAFFIRE_PRO24_REGISTER_APP_GLOBAL_DIM_SWITCH 0x10 50 #define SAFFIRE_PRO24_REGISTER_APP_GLOBAL_DIM_VOLUME 0x58 51 #define SAFFIRE_PRO24_REGISTER_APP_GLOBAL_MONITOR_VOLUME 0x54 52 53 // Per line/out monitor volume and switches: registers are expected to be one after the other 54 // each register controlling two output lines 55 // The whole number of physical analog output is thus 2*SAFFIRE_PRO24_APP_STEREO_LINEOUT_SIZE 56 #define SAFFIRE_PRO24_APP_STEREO_LINEOUT_SIZE 3 57 58 // Volume and switch monitor register 59 #define SAFFIRE_PRO24_REGISTER_APP_LINEOUT_MONITOR_VOLUME 0x14 60 #define SAFFIRE_PRO24_REGISTER_APP_LINEOUT_MONITOR_SWITCH 0x28 61 62 // Switch control (per line/out mute, dim and mono) 63 #define SAFFIRE_PRO24_REGISTER_APP_LINEOUT_SWITCH_CONTROL 0x3C 64 65 // Message set 66 // The location of the message register and the values for each setting 67 #define SAFFIRE_PRO24_REGISTER_APP_MESSAGE_SET 0x68 68 #define SAFFIRE_PRO24_MESSAGE_SET_NO_MESSAGE 0 69 #define SAFFIRE_PRO24_MESSAGE_SET_LINEOUT_MONITOR_VOLUME 1 70 #define SAFFIRE_PRO24_MESSAGE_SET_GLOBAL_DIM_MUTE_SWITCH 2 71 #define SAFFIRE_PRO24_MESSAGE_SET_LINEOUT_SWITCH_CONTROL 3 72 #define SAFFIRE_PRO24_MESSAGE_SET_INSTLINE 4 73 #define SAFFIRE_PRO24_MESSAGE_SET_MESSAGE_END 5 74 75 // Standalone 76 #define SAFFIRE_PRO24_REGISTER_STANDALONE_SWITCH 0x60 77 #define SAFFIRE_PRO24_REGISTER_STANDALONE_SRC_SMPL 0x64 // Automatically stored 78 79 // Inst/Line and Hi/Lo gain control 80 // each register controls two (mono) output lines 81 #define SAFFIRE_PRO24_REGISTER_APP_LINEOUT_INST_SWITCH 0x58 82 #define SAFFIRE_PRO24_LINEOUT_SWITCH_INST_NUMBER 1 83 #define SAFFIRE_PRO24_LINEOUT_SWITCH_INST_VALUE 2 84 #define SAFFIRE_PRO24_REGISTER_APP_LINEOUT_GAIN_SWITCH 0x5C 85 #define SAFFIRE_PRO24_LINEOUT_SWITCH_GAIN_NUMBER 1 86 #define SAFFIRE_PRO24_LINEOUT_SWITCH_GAIN_VALUE 1 38 87 39 88 namespace Dice { trunk/libffado/src/dice/focusrite/saffire_pro40.h
r2238 r2246 31 31 #include "focusrite_eap.h" 32 32 33 /** 34 * Saffire Pro 40 EAP application space 35 */ 36 // Versioning registers 37 #define SAFFIRE_PRO40_REGISTER_APP_VERSION 0x00 38 #define SAFFIRE_PRO40_REGISTER_APP_RELEASE 0x04 39 #define SAFFIRE_PRO40_REGISTER_APP_BUILDNR 0x08 40 33 41 // Nickname register 34 42 #define SAFFIRE_PRO40_REGISTER_APP_NICK_NAME 0x44 … … 36 44 #define SAFFIRE_PRO40_APP_NICK_NAME_SIZE 16 37 45 46 // Global monitor registers (application space) 47 #define SAFFIRE_PRO40_REGISTER_APP_GLOBAL_MUTE_SWITCH 0x0C 48 #define SAFFIRE_PRO40_REGISTER_APP_GLOBAL_DIM_SWITCH 0x10 49 #define SAFFIRE_PRO40_REGISTER_APP_GLOBAL_DIM_VOLUME 0x58 50 #define SAFFIRE_PRO40_REGISTER_APP_GLOBAL_MONITOR_VOLUME 0x54 51 52 // Per line/out monitor volume and switches: registers are expected to be one after the other 53 // each register controlling two output lines 54 // The whole number of physical analog output is thus 2*SAFFIRE_PRO40_APP_STEREO_LINEOUT_SIZE 55 #define SAFFIRE_PRO40_APP_STEREO_LINEOUT_SIZE 5 56 57 // Volume and switch monitor register 58 #define SAFFIRE_PRO40_REGISTER_APP_LINEOUT_MONITOR_VOLUME 0x14 59 #define SAFFIRE_PRO40_REGISTER_APP_LINEOUT_MONITOR_SWITCH 0x28 60 61 // Switch control (per line/out mute, dim and mono) 62 #define SAFFIRE_PRO40_REGISTER_APP_LINEOUT_SWITCH_CONTROL 0x3C 63 64 // Message set 65 // The location of the message register and the values for each setting 66 #define SAFFIRE_PRO40_REGISTER_APP_MESSAGE_SET 0x68 67 #define SAFFIRE_PRO40_MESSAGE_SET_NO_MESSAGE 0 68 #define SAFFIRE_PRO40_MESSAGE_SET_LINEOUT_MONITOR_VOLUME 1 69 #define SAFFIRE_PRO40_MESSAGE_SET_GLOBAL_DIM_MUTE_SWITCH 2 70 #define SAFFIRE_PRO40_MESSAGE_SET_LINEOUT_SWITCH_CONTROL 3 71 #define SAFFIRE_PRO40_MESSAGE_SET_INSTLINE 4 72 #define SAFFIRE_PRO40_MESSAGE_SET_MESSAGE_END 5 73 74 // Standalone 75 #define SAFFIRE_PRO40_REGISTER_STANDALONE_SWITCH 0x60 76 #define SAFFIRE_PRO40_REGISTER_STANDALONE_SRC_SMPL 0x64 // Automatically stored 38 77 39 78 namespace Dice {