2 * This file is part of linux driver the digital TV devices equipped with B2C2 FlexcopII(b)/III
4 * flexcop-misc.c - miscellaneous functions.
6 * see flexcop.c for copyright information.
10 void flexcop_determine_revision(struct flexcop_device
*fc
)
12 flexcop_ibi_value v
= fc
->read_ibi_reg(fc
,misc_204
);
14 switch (v
.misc_204
.Rev_N_sig_revision_hi
) {
16 deb_info("found a FlexCopII.\n");
20 deb_info("found a FlexCopIIb.\n");
21 fc
->rev
= FLEXCOP_IIB
;
24 deb_info("found a FlexCopIII.\n");
25 fc
->rev
= FLEXCOP_III
;
28 err("unkown FlexCop Revision: %x. Please report the linux-dvb@linuxtv.org.",v
.misc_204
.Rev_N_sig_revision_hi
);
32 if ((fc
->has_32_hw_pid_filter
= v
.misc_204
.Rev_N_sig_caps
))
33 deb_info("this FlexCop has the additional 32 hardware pid filter.\n");
35 deb_info("this FlexCop has only the 6 basic main hardware pid filter.\n");
36 /* bus parts have to decide if hw pid filtering is used or not. */
39 const char *flexcop_revision_names
[] = {
46 const char *flexcop_device_names
[] = {
51 "SkyStar 2 DVB-S (old version)",
55 const char *flexcop_bus_names
[] = {
60 void flexcop_device_name(struct flexcop_device
*fc
,const char *prefix
,const
63 info("%s '%s' at the '%s' bus controlled by a '%s' %s",prefix
,
64 flexcop_device_names
[fc
->dev_type
],flexcop_bus_names
[fc
->bus_type
],
65 flexcop_revision_names
[fc
->rev
],suffix
);