summaryrefslogtreecommitdiff
path: root/backend/genesys/tables_gpo.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'backend/genesys/tables_gpo.cpp')
-rw-r--r--backend/genesys/tables_gpo.cpp85
1 files changed, 76 insertions, 9 deletions
diff --git a/backend/genesys/tables_gpo.cpp b/backend/genesys/tables_gpo.cpp
index 2c9ad5e..5c1c54f 100644
--- a/backend/genesys/tables_gpo.cpp
+++ b/backend/genesys/tables_gpo.cpp
@@ -131,6 +131,18 @@ void genesys_init_gpo_tables()
gpo = Genesys_Gpo();
+ gpo.id = GpioId::CANON_LIDE_90;
+ gpo.regs = {
+ { 0x6b, 0x03 },
+ { 0x6c, 0x74 },
+ { 0x6d, 0x80 },
+ { 0x6e, 0x7f },
+ { 0x6f, 0xe0 },
+ };
+ s_gpo->push_back(gpo);
+
+
+ gpo = Genesys_Gpo();
gpo.id = GpioId::XP200;
gpo.regs = {
{ 0x66, 0x30 },
@@ -188,10 +200,15 @@ void genesys_init_gpo_tables()
gpo = Genesys_Gpo();
gpo.id = GpioId::CANON_LIDE_200;
gpo.regs = {
- { 0x6c, 0xfb }, // 0xfb when idle , 0xf9/0xe9 (1200) when scanning
+ { 0x6b, 0x02 },
+ { 0x6c, 0xf9 }, // 0xfb when idle , 0xf9/0xe9 (1200) when scanning
{ 0x6d, 0x20 },
{ 0x6e, 0xff },
{ 0x6f, 0x00 },
+ { 0xa6, 0x04 },
+ { 0xa7, 0x04 },
+ { 0xa8, 0x00 },
+ { 0xa9, 0x00 },
};
s_gpo->push_back(gpo);
@@ -199,10 +216,15 @@ void genesys_init_gpo_tables()
gpo = Genesys_Gpo();
gpo.id = GpioId::CANON_LIDE_700F;
gpo.regs = {
+ { 0x6b, 0x06 },
{ 0x6c, 0xdb },
{ 0x6d, 0xff },
{ 0x6e, 0xff },
{ 0x6f, 0x80 },
+ { 0xa6, 0x15 },
+ { 0xa7, 0x07 },
+ { 0xa8, 0x20 },
+ { 0xa9, 0x10 },
};
s_gpo->push_back(gpo);
@@ -293,6 +315,19 @@ void genesys_init_gpo_tables()
gpo = Genesys_Gpo();
+ gpo.id = GpioId::PLUSTEK_OPTICFILM_7200;
+ gpo.regs = {
+ { 0x6b, 0x33 },
+ { 0x6c, 0x00 },
+ { 0x6d, 0x80 },
+ { 0x6e, 0x0c },
+ { 0x6f, 0x80 },
+ { 0x7e, 0x00 }
+ };
+ s_gpo->push_back(gpo);
+
+
+ gpo = Genesys_Gpo();
gpo.id = GpioId::PLUSTEK_OPTICFILM_7200I;
gpo.regs = {
{ 0x6c, 0x4c },
@@ -320,6 +355,16 @@ void genesys_init_gpo_tables()
};
s_gpo->push_back(gpo);
+
+ gpo = Genesys_Gpo();
+ gpo.id = GpioId::PLUSTEK_OPTICFILM_7400;
+ gpo.regs = {
+ { 0x6b, 0x30 }, { 0x6c, 0x4c }, { 0x6d, 0x80 }, { 0x6e, 0x4c }, { 0x6f, 0x80 },
+ { 0xa6, 0x00 }, { 0xa7, 0x07 }, { 0xa8, 0x20 }, { 0xa9, 0x01 },
+ };
+ s_gpo->push_back(gpo);
+
+
gpo = Genesys_Gpo();
gpo.id = GpioId::PLUSTEK_OPTICFILM_7500I;
gpo.regs = {
@@ -334,6 +379,16 @@ void genesys_init_gpo_tables()
};
s_gpo->push_back(gpo);
+
+ gpo = Genesys_Gpo();
+ gpo.id = GpioId::PLUSTEK_OPTICFILM_8200I;
+ gpo.regs = {
+ { 0x6b, 0x30 }, { 0x6c, 0x4c }, { 0x6d, 0x80 }, { 0x6e, 0x4c }, { 0x6f, 0x80 },
+ { 0xa6, 0x00 }, { 0xa7, 0x07 }, { 0xa8, 0x20 }, { 0xa9, 0x01 },
+ };
+ s_gpo->push_back(gpo);
+
+
gpo = Genesys_Gpo();
gpo.id = GpioId::CANON_4400F;
gpo.regs = {
@@ -350,6 +405,22 @@ void genesys_init_gpo_tables()
gpo = Genesys_Gpo();
+ gpo.id = GpioId::CANON_5600F;
+ gpo.regs = {
+ { 0x6b, 0x87 },
+ { 0x6c, 0xf0 },
+ { 0x6d, 0x5f },
+ { 0x6e, 0x7f },
+ { 0x6f, 0xa0 },
+ { 0xa6, 0x07 },
+ { 0xa7, 0x1c },
+ { 0xa8, 0x00 },
+ { 0xa9, 0x04 },
+ };
+ s_gpo->push_back(gpo);
+
+
+ gpo = Genesys_Gpo();
gpo.id = GpioId::CANON_8400F;
gpo.regs = {
{ 0x6c, 0x9a },
@@ -382,10 +453,8 @@ void genesys_init_gpo_tables()
gpo = Genesys_Gpo();
gpo.id = GpioId::IMG101;
gpo.regs = {
- { 0x6c, 0x41 },
- { 0x6d, 0xa4 },
- { 0x6e, 0x13 },
- { 0x6f, 0xa7 },
+ { 0x6b, 0x72 }, { 0x6c, 0x1f }, { 0x6d, 0xa4 }, { 0x6e, 0x13 }, { 0x6f, 0xa7 },
+ { 0xa6, 0x11 }, { 0xa7, 0xff }, { 0xa8, 0x19 }, { 0xa9, 0x05 },
};
s_gpo->push_back(gpo);
@@ -393,10 +462,8 @@ void genesys_init_gpo_tables()
gpo = Genesys_Gpo();
gpo.id = GpioId::PLUSTEK_OPTICBOOK_3800;
gpo.regs = {
- { 0x6c, 0x41 },
- { 0x6d, 0xa4 },
- { 0x6e, 0x13 },
- { 0x6f, 0xa7 },
+ { 0x6b, 0x30 }, { 0x6c, 0x01 }, { 0x6d, 0x80 }, { 0x6e, 0x2d }, { 0x6f, 0x80 },
+ { 0xa6, 0x0c }, { 0xa7, 0x8f }, { 0xa8, 0x08 }, { 0xa9, 0x04 },
};
s_gpo->push_back(gpo);