aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Richter <stefanr@s5r6.in-berlin.de>2006-11-19 18:05:05 -0500
committerStefan Richter <stefanr@s5r6.in-berlin.de>2006-12-07 17:04:59 -0500
commit9868e0ec03fd4ac9cb3943e5dae0ad6a14faa5ff (patch)
tree7ee0e0bda6be7ec55c65e9b04abd5e1ffa6be79e
parent63cca59e89892497e95e1e9c7156d3345fb7e2e8 (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.txt11
-rw-r--r--drivers/ieee1394/raw1394.c17
2 files changed, 23 insertions, 5 deletions
diff --git a/Documentation/feature-removal-schedule.txt b/Documentation/feature-removal-schedule.txt
index 226ecf2ffd56..3fef3444c761 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
32What: raw1394: requests of type RAW1394_REQ_ISO_SEND, RAW1394_REQ_ISO_LISTEN 32What: raw1394: requests of type RAW1394_REQ_ISO_SEND, RAW1394_REQ_ISO_LISTEN
33When: November 2006 33When: June 2007
34Why: Deprecated in favour of the new ioctl-based rawiso interface, which is 34Why: 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,
37Who: Jody McIntyre <scjody@modernduck.com> 37 raw1394_stop_iso_rcv) or bypass libraw1394.
38Who: 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 bf71e069eaf5..4889383d3091 100644
--- a/drivers/ieee1394/raw1394.c
+++ b/drivers/ieee1394/raw1394.c
@@ -99,6 +99,21 @@ static struct hpsb_address_ops arm_ops = {
99 99
100static void queue_complete_cb(struct pending_request *req); 100static void queue_complete_cb(struct pending_request *req);
101 101
102#include <asm/current.h>
103static 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
102static struct pending_request *__alloc_pending_request(gfp_t flags) 117static 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