diff options
author | Mike Isely <isely@pobox.com> | 2009-03-06 21:58:15 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2009-03-30 11:43:33 -0400 |
commit | 446dfdc6cc62890098a1b92a4a84019a34dce0cc (patch) | |
tree | 512816f62a161646d3835c10b3255572ab8041d7 /drivers/media/video/pvrusb2/pvrusb2-hdw.c | |
parent | 15b474423f0642e6ff78f1963b816155e80fc932 (diff) |
V4L/DVB (11162): pvrusb2: Tie up loose ends with v4l2-subdev setup
Tie up loose ends with v4l2-subdev setup. Set attached module's group
ID to match our internal ID, emit a few useful messages when
sub-devices are dealt with, implement better error legs, and fix an
error in the old i2c layer (caused by changes related to the
v4l2-subdev work here).
Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/pvrusb2/pvrusb2-hdw.c')
-rw-r--r-- | drivers/media/video/pvrusb2/pvrusb2-hdw.c | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/drivers/media/video/pvrusb2/pvrusb2-hdw.c b/drivers/media/video/pvrusb2/pvrusb2-hdw.c index 0e0d086bb278..c764f360a774 100644 --- a/drivers/media/video/pvrusb2/pvrusb2-hdw.c +++ b/drivers/media/video/pvrusb2/pvrusb2-hdw.c | |||
@@ -2020,17 +2020,26 @@ static void pvr2_hdw_load_subdev(struct pvr2_hdw *hdw, | |||
2020 | i2caddr); | 2020 | i2caddr); |
2021 | } | 2021 | } |
2022 | 2022 | ||
2023 | if (!sd) { | ||
2024 | pvr2_trace(PVR2_TRACE_ERROR_LEGS, | ||
2025 | "Module ID %u for device %s failed to load" | ||
2026 | " (this is probably a bad thing...)", | ||
2027 | mid, hdw->hdw_desc->description); | ||
2028 | return; | ||
2029 | } | ||
2030 | |||
2031 | /* Tag this sub-device instance with the module ID we know about. | ||
2032 | In other places we'll use that tag to determine if the instance | ||
2033 | requires special handling. */ | ||
2034 | sd->grp_id = mid; | ||
2035 | |||
2023 | /* If we have both old and new i2c layers enabled, make sure that | 2036 | /* If we have both old and new i2c layers enabled, make sure that |
2024 | old layer isn't also tracking this module. This is a debugging | 2037 | old layer isn't also tracking this module. This is a debugging |
2025 | aid, in normal situations there's no reason for both mechanisms | 2038 | aid, in normal situations there's no reason for both mechanisms |
2026 | to be enabled. */ | 2039 | to be enabled. */ |
2027 | pvr2_i2c_untrack_subdev(hdw, sd); | 2040 | pvr2_i2c_untrack_subdev(hdw, sd); |
2041 | pvr2_trace(PVR2_TRACE_INIT, "Attached sub-driver %s", fname); | ||
2028 | 2042 | ||
2029 | // ????? | ||
2030 | /* Based on module ID, we should remember subdev pointers | ||
2031 | so that we can send certain custom commands where | ||
2032 | needed. */ | ||
2033 | // ????? | ||
2034 | 2043 | ||
2035 | } | 2044 | } |
2036 | 2045 | ||