Commit 12ba145c authored by Stefan Richter's avatar Stefan Richter

ieee1394: dv1394: tidy up card removal

small coding style touch-up and terser coding
Signed-off-by: default avatarStefan Richter <stefanr@s5r6.in-berlin.de>
parent 88e7bf2a
...@@ -2255,47 +2255,37 @@ static int dv1394_init(struct ti_ohci *ohci, enum pal_or_ntsc format, enum modes ...@@ -2255,47 +2255,37 @@ static int dv1394_init(struct ti_ohci *ohci, enum pal_or_ntsc format, enum modes
return 0; return 0;
} }
static void dv1394_un_init(struct video_card *video) static void dv1394_remove_host(struct hpsb_host *host)
{ {
/* obviously nobody has the driver open at this point */ struct video_card *video, *tmp_video;
do_dv1394_shutdown(video, 1);
kfree(video);
}
static void dv1394_remove_host (struct hpsb_host *host)
{
struct video_card *video;
unsigned long flags; unsigned long flags;
int id = host->id, found_ohci_card = 0; int found_ohci_card = 0;
/* find the corresponding video_cards */
do { do {
struct video_card *tmp_vid;
video = NULL; video = NULL;
spin_lock_irqsave(&dv1394_cards_lock, flags); spin_lock_irqsave(&dv1394_cards_lock, flags);
list_for_each_entry(tmp_vid, &dv1394_cards, list) { list_for_each_entry(tmp_video, &dv1394_cards, list) {
if ((tmp_vid->id >> 2) == id) { if ((tmp_video->id >> 2) == host->id) {
list_del(&tmp_vid->list); list_del(&tmp_video->list);
video = tmp_vid; video = tmp_video;
found_ohci_card = 1; found_ohci_card = 1;
break; break;
} }
} }
spin_unlock_irqrestore(&dv1394_cards_lock, flags); spin_unlock_irqrestore(&dv1394_cards_lock, flags);
if (video) if (video) {
dv1394_un_init(video); do_dv1394_shutdown(video, 1);
} while (video != NULL); kfree(video);
}
} while (video);
if (found_ohci_card) if (found_ohci_card)
class_device_destroy(hpsb_protocol_class, MKDEV(IEEE1394_MAJOR, class_device_destroy(hpsb_protocol_class, MKDEV(IEEE1394_MAJOR,
IEEE1394_MINOR_BLOCK_DV1394 * 16 + (host->id << 2))); IEEE1394_MINOR_BLOCK_DV1394 * 16 + (host->id << 2)));
} }
static void dv1394_add_host (struct hpsb_host *host) static void dv1394_add_host(struct hpsb_host *host)
{ {
struct ti_ohci *ohci; struct ti_ohci *ohci;
int id = host->id; int id = host->id;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment