File tree Expand file tree Collapse file tree 1 file changed +15
-4
lines changed Expand file tree Collapse file tree 1 file changed +15
-4
lines changed Original file line number Diff line number Diff line change @@ -73,6 +73,11 @@ static int pnw_setup(struct mid8250 *mid, struct uart_port *p)
7373 return 0 ;
7474}
7575
76+ static void pnw_exit (struct mid8250 * mid )
77+ {
78+ pci_dev_put (mid -> dma_dev );
79+ }
80+
7681static int tng_handle_irq (struct uart_port * p )
7782{
7883 struct mid8250 * mid = p -> private_data ;
@@ -124,6 +129,11 @@ static int tng_setup(struct mid8250 *mid, struct uart_port *p)
124129 return 0 ;
125130}
126131
132+ static void tng_exit (struct mid8250 * mid )
133+ {
134+ pci_dev_put (mid -> dma_dev );
135+ }
136+
127137static int dnv_handle_irq (struct uart_port * p )
128138{
129139 struct mid8250 * mid = p -> private_data ;
@@ -328,9 +338,9 @@ static int mid8250_probe(struct pci_dev *pdev, const struct pci_device_id *id)
328338
329339 pci_set_drvdata (pdev , mid );
330340 return 0 ;
341+
331342err :
332- if (mid -> board -> exit )
333- mid -> board -> exit (mid );
343+ mid -> board -> exit (mid );
334344 return ret ;
335345}
336346
@@ -340,22 +350,23 @@ static void mid8250_remove(struct pci_dev *pdev)
340350
341351 serial8250_unregister_port (mid -> line );
342352
343- if (mid -> board -> exit )
344- mid -> board -> exit (mid );
353+ mid -> board -> exit (mid );
345354}
346355
347356static const struct mid8250_board pnw_board = {
348357 .flags = FL_BASE0 ,
349358 .freq = 50000000 ,
350359 .base_baud = 115200 ,
351360 .setup = pnw_setup ,
361+ .exit = pnw_exit ,
352362};
353363
354364static const struct mid8250_board tng_board = {
355365 .flags = FL_BASE0 ,
356366 .freq = 38400000 ,
357367 .base_baud = 1843200 ,
358368 .setup = tng_setup ,
369+ .exit = tng_exit ,
359370};
360371
361372static const struct mid8250_board dnv_board = {
You can’t perform that action at this time.
0 commit comments