diff options
author | Stefan Richter <stefanr@s5r6.in-berlin.de> | 2006-11-19 18:05:05 -0500 |
---|---|---|
committer | Stefan Richter <stefanr@s5r6.in-berlin.de> | 2006-12-07 17:04:59 -0500 |
commit | 9868e0ec03fd4ac9cb3943e5dae0ad6a14faa5ff (patch) | |
tree | 7ee0e0bda6be7ec55c65e9b04abd5e1ffa6be79e | |
parent | 63cca59e89892497e95e1e9c7156d3345fb7e2e8 (diff) |
ieee1394: raw1394: defer feature removal of old isoch interface
Known to be affected:
- libdc1394: prefers video1394 for now, old-style raw1394 support might
be dropped eventually
- OpenH323 PWLib, AVC video input module: uses libraw1394's old API
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
-rw-r--r-- | Documentation/feature-removal-schedule.txt | 11 | ||||
-rw-r--r-- | drivers/ieee1394/raw1394.c | 17 |
2 files changed, 23 insertions, 5 deletions
diff --git a/Documentation/feature-removal-schedule.txt b/Documentation/feature-removal-schedule.txt index 226ecf2ffd5..3fef3444c76 100644 --- a/Documentation/feature-removal-schedule.txt +++ b/Documentation/feature-removal-schedule.txt | |||
@@ -30,11 +30,12 @@ Who: Adrian Bunk <bunk@stusta.de> | |||
30 | --------------------------- | 30 | --------------------------- |
31 | 31 | ||
32 | What: raw1394: requests of type RAW1394_REQ_ISO_SEND, RAW1394_REQ_ISO_LISTEN | 32 | What: raw1394: requests of type RAW1394_REQ_ISO_SEND, RAW1394_REQ_ISO_LISTEN |
33 | When: November 2006 | 33 | When: June 2007 |
34 | Why: Deprecated in favour of the new ioctl-based rawiso interface, which is | 34 | Why: Deprecated in favour of the more efficient and robust rawiso interface. |
35 | more efficient. You should really be using libraw1394 for raw1394 | 35 | Affected are applications which use the deprecated part of libraw1394 |
36 | access anyway. | 36 | (raw1394_iso_write, raw1394_start_iso_write, raw1394_start_iso_rcv, |
37 | Who: Jody McIntyre <scjody@modernduck.com> | 37 | raw1394_stop_iso_rcv) or bypass libraw1394. |
38 | Who: Dan Dennedy <dan@dennedy.org>, Stefan Richter <stefanr@s5r6.in-berlin.de> | ||
38 | 39 | ||
39 | --------------------------- | 40 | --------------------------- |
40 | 41 | ||
diff --git a/drivers/ieee1394/raw1394.c b/drivers/ieee1394/raw1394.c index bf71e069eaf..4889383d309 100644 --- a/drivers/ieee1394/raw1394.c +++ b/drivers/ieee1394/raw1394.c | |||
@@ -99,6 +99,21 @@ static struct hpsb_address_ops arm_ops = { | |||
99 | 99 | ||
100 | static void queue_complete_cb(struct pending_request *req); | 100 | static void queue_complete_cb(struct pending_request *req); |
101 | 101 | ||
102 | #include <asm/current.h> | ||
103 | static void print_old_iso_deprecation(void) | ||
104 | { | ||
105 | static pid_t p; | ||
106 | |||
107 | if (p == current->pid) | ||
108 | return; | ||
109 | p = current->pid; | ||
110 | printk(KERN_WARNING "raw1394: WARNING - Program \"%s\" uses unsupported" | ||
111 | " isochronous request types which will be removed in a next" | ||
112 | " kernel release\n", current->comm); | ||
113 | printk(KERN_WARNING "raw1394: Update your software to use libraw1394's" | ||
114 | " newer interface\n"); | ||
115 | } | ||
116 | |||
102 | static struct pending_request *__alloc_pending_request(gfp_t flags) | 117 | static struct pending_request *__alloc_pending_request(gfp_t flags) |
103 | { | 118 | { |
104 | struct pending_request *req; | 119 | struct pending_request *req; |
@@ -2292,6 +2307,7 @@ static int state_connected(struct file_info *fi, struct pending_request *req) | |||
2292 | return sizeof(struct raw1394_request); | 2307 | return sizeof(struct raw1394_request); |
2293 | 2308 | ||
2294 | case RAW1394_REQ_ISO_SEND: | 2309 | case RAW1394_REQ_ISO_SEND: |
2310 | print_old_iso_deprecation(); | ||
2295 | return handle_iso_send(fi, req, node); | 2311 | return handle_iso_send(fi, req, node); |
2296 | 2312 | ||
2297 | case RAW1394_REQ_ARM_REGISTER: | 2313 | case RAW1394_REQ_ARM_REGISTER: |
@@ -2310,6 +2326,7 @@ static int state_connected(struct file_info *fi, struct pending_request *req) | |||
2310 | return reset_notification(fi, req); | 2326 | return reset_notification(fi, req); |
2311 | 2327 | ||
2312 | case RAW1394_REQ_ISO_LISTEN: | 2328 | case RAW1394_REQ_ISO_LISTEN: |
2329 | print_old_iso_deprecation(); | ||
2313 | handle_iso_listen(fi, req); | 2330 | handle_iso_listen(fi, req); |
2314 | return sizeof(struct raw1394_request); | 2331 | return sizeof(struct raw1394_request); |
2315 | 2332 | ||