Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 174007
b: refs/heads/master
c: 2710814
h: refs/heads/master
i:
  174005: f84d59e
  174003: 070f68b
  173999: 6a0478d
v: v3
  • Loading branch information
Mike Isely authored and Mauro Carvalho Chehab committed Dec 5, 2009
1 parent 474019a commit c7d54fc
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 5 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 1b33185f5d944092576fc6562a842c603a2570d6
refs/heads/master: 271081475427f7d1acf5f8cdc51fc70afe662b17
1 change: 1 addition & 0 deletions trunk/drivers/media/video/pvrusb2/pvrusb2-hdw-internal.h
Original file line number Diff line number Diff line change
Expand Up @@ -270,6 +270,7 @@ struct pvr2_hdw {

int force_dirty; /* consider all controls dirty if true */
int flag_ok; /* device in known good state */
int flag_modulefail; /* true if at least one module failed to load */
int flag_disconnected; /* flag_ok == 0 due to disconnect */
int flag_init_ok; /* true if structure is fully initialized */
int fw1_state; /* current situation with fw1 */
Expand Down
28 changes: 24 additions & 4 deletions trunk/drivers/media/video/pvrusb2/pvrusb2-hdw.c
Original file line number Diff line number Diff line change
Expand Up @@ -2030,7 +2030,8 @@ static int pvr2_hdw_load_subdev(struct pvr2_hdw *hdw,
fname = (mid < ARRAY_SIZE(module_names)) ? module_names[mid] : NULL;
if (!fname) {
pvr2_trace(PVR2_TRACE_ERROR_LEGS,
"Module ID %u for device %s has no name",
"Module ID %u for device %s has no name?"
" The driver might have a configuration problem.",
mid,
hdw->hdw_desc->description);
return -EINVAL;
Expand Down Expand Up @@ -2058,7 +2059,8 @@ static int pvr2_hdw_load_subdev(struct pvr2_hdw *hdw,
if (!i2ccnt) {
pvr2_trace(PVR2_TRACE_ERROR_LEGS,
"Module ID %u (%s) for device %s:"
" No i2c addresses",
" No i2c addresses."
" The driver might have a configuration problem.",
mid, fname, hdw->hdw_desc->description);
return -EINVAL;
}
Expand Down Expand Up @@ -2090,7 +2092,9 @@ static int pvr2_hdw_load_subdev(struct pvr2_hdw *hdw,

if (!sd) {
pvr2_trace(PVR2_TRACE_ERROR_LEGS,
"Module ID %u (%s) for device %s failed to load",
"Module ID %u (%s) for device %s failed to load."
" Possible missing sub-device kernel module or"
" initialization failure within module.",
mid, fname, hdw->hdw_desc->description);
return -EIO;
}
Expand Down Expand Up @@ -2132,7 +2136,10 @@ static void pvr2_hdw_load_modules(struct pvr2_hdw *hdw)
for (idx = 0; idx < ct->cnt; idx++) {
if (pvr2_hdw_load_subdev(hdw, &ct->lst[idx]) < 0) okFl = 0;
}
if (!okFl) pvr2_hdw_render_useless(hdw);
if (!okFl) {
hdw->flag_modulefail = !0;
pvr2_hdw_render_useless(hdw);
}
}


Expand Down Expand Up @@ -2334,6 +2341,19 @@ static void pvr2_hdw_setup(struct pvr2_hdw *hdw)
break;
}
}
if (hdw->flag_modulefail) {
pvr2_trace(
PVR2_TRACE_ERROR_LEGS,
"***WARNING*** pvrusb2 driver initialization"
" failed due to the failure of one or more"
" sub-device kernel modules.");
pvr2_trace(
PVR2_TRACE_ERROR_LEGS,
"You need to resolve the failing condition"
" before this driver can function. There"
" should be some earlier messages giving more"
" information about the problem.");
}
if (procreload) {
pvr2_trace(
PVR2_TRACE_ERROR_LEGS,
Expand Down

0 comments on commit c7d54fc

Please sign in to comment.