mirror of https://gitee.com/openkylin/linux.git
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>
This commit is contained in:
parent
63cca59e89
commit
9868e0ec03
|
@ -30,11 +30,12 @@ Who: Adrian Bunk <bunk@stusta.de>
|
|||
---------------------------
|
||||
|
||||
What: raw1394: requests of type RAW1394_REQ_ISO_SEND, RAW1394_REQ_ISO_LISTEN
|
||||
When: November 2006
|
||||
Why: Deprecated in favour of the new ioctl-based rawiso interface, which is
|
||||
more efficient. You should really be using libraw1394 for raw1394
|
||||
access anyway.
|
||||
Who: Jody McIntyre <scjody@modernduck.com>
|
||||
When: June 2007
|
||||
Why: Deprecated in favour of the more efficient and robust rawiso interface.
|
||||
Affected are applications which use the deprecated part of libraw1394
|
||||
(raw1394_iso_write, raw1394_start_iso_write, raw1394_start_iso_rcv,
|
||||
raw1394_stop_iso_rcv) or bypass libraw1394.
|
||||
Who: Dan Dennedy <dan@dennedy.org>, Stefan Richter <stefanr@s5r6.in-berlin.de>
|
||||
|
||||
---------------------------
|
||||
|
||||
|
|
|
@ -99,6 +99,21 @@ static struct hpsb_address_ops arm_ops = {
|
|||
|
||||
static void queue_complete_cb(struct pending_request *req);
|
||||
|
||||
#include <asm/current.h>
|
||||
static void print_old_iso_deprecation(void)
|
||||
{
|
||||
static pid_t p;
|
||||
|
||||
if (p == current->pid)
|
||||
return;
|
||||
p = current->pid;
|
||||
printk(KERN_WARNING "raw1394: WARNING - Program \"%s\" uses unsupported"
|
||||
" isochronous request types which will be removed in a next"
|
||||
" kernel release\n", current->comm);
|
||||
printk(KERN_WARNING "raw1394: Update your software to use libraw1394's"
|
||||
" newer interface\n");
|
||||
}
|
||||
|
||||
static struct pending_request *__alloc_pending_request(gfp_t flags)
|
||||
{
|
||||
struct pending_request *req;
|
||||
|
@ -2292,6 +2307,7 @@ static int state_connected(struct file_info *fi, struct pending_request *req)
|
|||
return sizeof(struct raw1394_request);
|
||||
|
||||
case RAW1394_REQ_ISO_SEND:
|
||||
print_old_iso_deprecation();
|
||||
return handle_iso_send(fi, req, node);
|
||||
|
||||
case RAW1394_REQ_ARM_REGISTER:
|
||||
|
@ -2310,6 +2326,7 @@ static int state_connected(struct file_info *fi, struct pending_request *req)
|
|||
return reset_notification(fi, req);
|
||||
|
||||
case RAW1394_REQ_ISO_LISTEN:
|
||||
print_old_iso_deprecation();
|
||||
handle_iso_listen(fi, req);
|
||||
return sizeof(struct raw1394_request);
|
||||
|
||||
|
|
Loading…
Reference in New Issue