From 96c466bef0e3fa7dd88e695f89bd657b9b218f5f Mon Sep 17 00:00:00 2001 From: Hans Verkuil Date: Thu, 15 Jan 2009 06:09:05 -0300 Subject: [PATCH] --- yaml --- r: 137705 b: refs/heads/master c: f5360bdc5539ccd7644df7acf27e8c740ba8cf6e h: refs/heads/master i: 137703: 6a312cb3274fabb6e63f7a56f0960ada5221f8b5 v: v3 --- [refs] | 2 +- trunk/Documentation/video4linux/v4l2-framework.txt | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 00a952619f0f..84d4c1dfa5ae 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 6ca187abb2fc1a52b2a8e0422f3ffce2e3bb7ad0 +refs/heads/master: f5360bdc5539ccd7644df7acf27e8c740ba8cf6e diff --git a/trunk/Documentation/video4linux/v4l2-framework.txt b/trunk/Documentation/video4linux/v4l2-framework.txt index ff124374e9ba..cc350624237d 100644 --- a/trunk/Documentation/video4linux/v4l2-framework.txt +++ b/trunk/Documentation/video4linux/v4l2-framework.txt @@ -340,6 +340,12 @@ Make sure to call v4l2_device_unregister_subdev(sd) when the remove() callback is called. This will unregister the sub-device from the bridge driver. It is safe to call this even if the sub-device was never registered. +You need to do this because when the bridge driver destroys the i2c adapter +the remove() callbacks are called of the i2c devices on that adapter. +After that the corresponding v4l2_subdev structures are invalid, so they +have to be unregistered first. Calling v4l2_device_unregister_subdev(sd) +from the remove() callback ensures that this is always done correctly. + The bridge driver also has some helper functions it can use: