sonypi: try to detect if sony-laptop has already taken one of the known ioports

Get the IO resources list in sony-laptop in the same order as listed
in sonypi and make sonypi check if one of those is already busy.
The sonypi check can be disabled by a module parameter in case the user
thinks we are plainly wrong (check_ioport=0).

Signed-off-by: Mattia Dongili <malattia@linux.it>
Signed-off-by: Len Brown <len.brown@intel.com>
diff --git a/drivers/misc/sony-laptop.c b/drivers/misc/sony-laptop.c
index 141284d..2787e1c 100644
--- a/drivers/misc/sony-laptop.c
+++ b/drivers/misc/sony-laptop.c
@@ -1801,7 +1801,7 @@
 				if (!interrupt)
 					return AE_ERROR;
 
-				list_add(&interrupt->list, &dev->interrupts);
+				list_add_tail(&interrupt->list, &dev->interrupts);
 				interrupt->irq.triggering = p->triggering;
 				interrupt->irq.polarity = p->polarity;
 				interrupt->irq.sharable = p->sharable;
@@ -1823,7 +1823,7 @@
 			if (!ioport)
 				return AE_ERROR;
 
-			list_add(&ioport->list, &dev->ioports);
+			list_add_tail(&ioport->list, &dev->ioports);
 			memcpy(&ioport->io, io, sizeof(*io));
 			return AE_OK;
 		}