diff options
author | Mauro Carvalho Chehab <mchehab@redhat.com> | 2008-12-22 15:06:33 -0200 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2008-12-22 15:06:33 -0200 |
commit | 5b8cbae207001dd7cd7e4a4f09a987b4194d0a8f (patch) | |
tree | 8fcb32bdc6f1fbb48bf4a7f59e4d27f82176c8e5 /v4l2-apps/util/v4l2-dbg.cpp | |
parent | 1d183a32a6fbcd8812f35d0eeca02347de4223bf (diff) | |
download | mediapointer-dvb-s2-5b8cbae207001dd7cd7e4a4f09a987b4194d0a8f.tar.gz mediapointer-dvb-s2-5b8cbae207001dd7cd7e4a4f09a987b4194d0a8f.tar.bz2 |
v4l2-dbg: Add support for get/set ac97 registers
From: Mauro Carvalho Chehab <mchehab@redhat.com>
em28xx devices can have an ac97 anciliary chip. This patch allows
get/set ac97 registers
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'v4l2-apps/util/v4l2-dbg.cpp')
-rw-r--r-- | v4l2-apps/util/v4l2-dbg.cpp | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/v4l2-apps/util/v4l2-dbg.cpp b/v4l2-apps/util/v4l2-dbg.cpp index e05be1f03..412d3bea5 100644 --- a/v4l2-apps/util/v4l2-dbg.cpp +++ b/v4l2-apps/util/v4l2-dbg.cpp @@ -45,6 +45,7 @@ #include "v4l2-dbg-bttv.h" #include "v4l2-dbg-saa7134.h" #include "v4l2-dbg-em28xx.h" +#include "v4l2-dbg-ac97.h" #define ARRAY_SIZE(arr) ((int)(sizeof(arr) / sizeof((arr)[0]))) @@ -58,6 +59,15 @@ struct board_list { }; static const struct board_list boards[] = { +#define AC97_BOARD 0 + { /* From ac97-dbg.h */ + AC97_IDENT, + sizeof(AC97_PREFIX) - 1, + ac97_regs, + ARRAY_SIZE(ac97_regs), + NULL, + 0, + }, { /* From bttv-dbg.h */ BTTV_IDENT, sizeof(BTTV_PREFIX) - 1, @@ -451,7 +461,6 @@ int main(int argc, char **argv) } if (!strcasecmp(optarg, "ac97")) { match_type = V4L2_CHIP_MATCH_AC97; - match_chip = strtoul(optarg + 4, NULL, 0); break; } match_type = V4L2_CHIP_MATCH_I2C_DRIVER; @@ -537,10 +546,14 @@ int main(int argc, char **argv) printf("%s", cap2s(vcap.capabilities).c_str()); } - for (int board = ARRAY_SIZE(boards) - 1; board >= 0; board--) { - if (!strcasecmp((char *)vcap.driver, boards[board].name)) { - curr_bd = &boards[board]; - break; + if (match_type == V4L2_CHIP_MATCH_AC97) { + curr_bd = &boards[AC97_BOARD]; + } else { + for (int board = ARRAY_SIZE(boards) - 1; board >= 0; board--) { + if (!strcasecmp((char *)vcap.driver, boards[board].name)) { + curr_bd = &boards[board]; + break; + } } } |