aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorGeoff Levand <geoffrey.levand@am.sony.com>2007-04-30 17:01:01 -0400
committerPaul Mackerras <paulus@samba.org>2007-05-02 06:04:31 -0400
commitdc4f60c25ae71e8278dcf909486e4aa34de7eecb (patch)
treeb6715d447588d05038cc1f655874df513d312f86 /drivers
parent12828856630e616742e092c8ccbda6ebc56a9375 (diff)
[POWERPC] PS3: Interrupt routine fixups.
Fixups for the ps3 interrupt routines to support all HV device in a generic way. Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/ps3/vuart.c8
-rw-r--r--drivers/usb/host/ehci-ps3.c4
-rw-r--r--drivers/usb/host/ohci-ps3.c4
-rw-r--r--drivers/video/ps3fb.c12
4 files changed, 14 insertions, 14 deletions
diff --git a/drivers/ps3/vuart.c b/drivers/ps3/vuart.c
index 7d7cab1d91b4..ec2d36a1bc67 100644
--- a/drivers/ps3/vuart.c
+++ b/drivers/ps3/vuart.c
@@ -886,12 +886,12 @@ static int ps3_vuart_probe(struct device *_dev)
886 886
887 if (++vuart_bus_priv.use_count == 1) { 887 if (++vuart_bus_priv.use_count == 1) {
888 888
889 result = ps3_alloc_vuart_irq(PS3_BINDING_CPU_ANY, 889 result = ps3_vuart_irq_setup(PS3_BINDING_CPU_ANY,
890 (void*)&vuart_bus_priv.bmp.status, &vuart_bus_priv.virq); 890 (void*)&vuart_bus_priv.bmp.status, &vuart_bus_priv.virq);
891 891
892 if (result) { 892 if (result) {
893 dev_dbg(&dev->core, 893 dev_dbg(&dev->core,
894 "%s:%d: ps3_alloc_vuart_irq failed (%d)\n", 894 "%s:%d: ps3_vuart_irq_setup failed (%d)\n",
895 __func__, __LINE__, result); 895 __func__, __LINE__, result);
896 result = -EPERM; 896 result = -EPERM;
897 goto fail_alloc_irq; 897 goto fail_alloc_irq;
@@ -937,7 +937,7 @@ static int ps3_vuart_probe(struct device *_dev)
937fail_probe: 937fail_probe:
938 ps3_vuart_set_interrupt_mask(dev, 0); 938 ps3_vuart_set_interrupt_mask(dev, 0);
939fail_request_irq: 939fail_request_irq:
940 ps3_free_vuart_irq(vuart_bus_priv.virq); 940 ps3_vuart_irq_destroy(vuart_bus_priv.virq);
941 vuart_bus_priv.virq = NO_IRQ; 941 vuart_bus_priv.virq = NO_IRQ;
942fail_alloc_irq: 942fail_alloc_irq:
943 --vuart_bus_priv.use_count; 943 --vuart_bus_priv.use_count;
@@ -975,7 +975,7 @@ static int ps3_vuart_remove(struct device *_dev)
975 if (--vuart_bus_priv.use_count == 0) { 975 if (--vuart_bus_priv.use_count == 0) {
976 BUG(); 976 BUG();
977 free_irq(vuart_bus_priv.virq, &vuart_bus_priv); 977 free_irq(vuart_bus_priv.virq, &vuart_bus_priv);
978 ps3_free_vuart_irq(vuart_bus_priv.virq); 978 ps3_vuart_irq_destroy(vuart_bus_priv.virq);
979 vuart_bus_priv.virq = NO_IRQ; 979 vuart_bus_priv.virq = NO_IRQ;
980 } 980 }
981 981
diff --git a/drivers/usb/host/ehci-ps3.c b/drivers/usb/host/ehci-ps3.c
index 4d781a2a9807..29dcd27b55de 100644
--- a/drivers/usb/host/ehci-ps3.c
+++ b/drivers/usb/host/ehci-ps3.c
@@ -104,7 +104,7 @@ static int ps3_ehci_sb_probe(struct ps3_system_bus_device *dev)
104 dev_dbg(&dev->core, "%s:%d: mmio mapped_addr %lxh\n", __func__, 104 dev_dbg(&dev->core, "%s:%d: mmio mapped_addr %lxh\n", __func__,
105 __LINE__, dev->m_region->lpar_addr); 105 __LINE__, dev->m_region->lpar_addr);
106 106
107 result = ps3_alloc_io_irq(PS3_BINDING_CPU_ANY, dev->interrupt_id, &virq); 107 result = ps3_io_irq_setup(PS3_BINDING_CPU_ANY, dev->interrupt_id, &virq);
108 108
109 if (result) { 109 if (result) {
110 dev_dbg(&dev->core, "%s:%d: ps3_construct_io_irq(%d) failed.\n", 110 dev_dbg(&dev->core, "%s:%d: ps3_construct_io_irq(%d) failed.\n",
@@ -162,7 +162,7 @@ fail_add_hcd:
162fail_ioremap: 162fail_ioremap:
163 usb_put_hcd(hcd); 163 usb_put_hcd(hcd);
164fail_create_hcd: 164fail_create_hcd:
165 ps3_free_io_irq(virq); 165 ps3_io_irq_destroy(virq);
166fail_irq: 166fail_irq:
167 ps3_free_mmio_region(dev->m_region); 167 ps3_free_mmio_region(dev->m_region);
168fail_mmio: 168fail_mmio:
diff --git a/drivers/usb/host/ohci-ps3.c b/drivers/usb/host/ohci-ps3.c
index 62283a3926de..93a6eb0de2d1 100644
--- a/drivers/usb/host/ohci-ps3.c
+++ b/drivers/usb/host/ohci-ps3.c
@@ -107,7 +107,7 @@ static int ps3_ohci_sb_probe(struct ps3_system_bus_device *dev)
107 dev_dbg(&dev->core, "%s:%d: mmio mapped_addr %lxh\n", __func__, 107 dev_dbg(&dev->core, "%s:%d: mmio mapped_addr %lxh\n", __func__,
108 __LINE__, dev->m_region->lpar_addr); 108 __LINE__, dev->m_region->lpar_addr);
109 109
110 result = ps3_alloc_io_irq(PS3_BINDING_CPU_ANY, dev->interrupt_id, &virq); 110 result = ps3_io_irq_setup(PS3_BINDING_CPU_ANY, dev->interrupt_id, &virq);
111 111
112 if (result) { 112 if (result) {
113 dev_dbg(&dev->core, "%s:%d: ps3_construct_io_irq(%d) failed.\n", 113 dev_dbg(&dev->core, "%s:%d: ps3_construct_io_irq(%d) failed.\n",
@@ -165,7 +165,7 @@ fail_add_hcd:
165fail_ioremap: 165fail_ioremap:
166 usb_put_hcd(hcd); 166 usb_put_hcd(hcd);
167fail_create_hcd: 167fail_create_hcd:
168 ps3_free_io_irq(virq); 168 ps3_io_irq_destroy(virq);
169fail_irq: 169fail_irq:
170 ps3_free_mmio_region(dev->m_region); 170 ps3_free_mmio_region(dev->m_region);
171fail_mmio: 171fail_mmio:
diff --git a/drivers/video/ps3fb.c b/drivers/video/ps3fb.c
index 81e43cda7d8b..a9ca4986645c 100644
--- a/drivers/video/ps3fb.c
+++ b/drivers/video/ps3fb.c
@@ -885,8 +885,8 @@ static int ps3fb_vsync_settings(struct gpu_driver_info *dinfo, void *dev)
885 } 885 }
886 886
887 ps3fb.dev = dev; 887 ps3fb.dev = dev;
888 error = ps3_alloc_irq(PS3_BINDING_CPU_ANY, dinfo->irq.irq_outlet, 888 error = ps3_irq_plug_setup(PS3_BINDING_CPU_ANY, dinfo->irq.irq_outlet,
889 &ps3fb.irq_no); 889 &ps3fb.irq_no);
890 if (error) { 890 if (error) {
891 printk(KERN_ERR "%s: ps3_alloc_irq failed %d\n", __FUNCTION__, 891 printk(KERN_ERR "%s: ps3_alloc_irq failed %d\n", __FUNCTION__,
892 error); 892 error);
@@ -898,7 +898,7 @@ static int ps3fb_vsync_settings(struct gpu_driver_info *dinfo, void *dev)
898 if (error) { 898 if (error) {
899 printk(KERN_ERR "%s: request_irq failed %d\n", __FUNCTION__, 899 printk(KERN_ERR "%s: request_irq failed %d\n", __FUNCTION__,
900 error); 900 error);
901 ps3_free_irq(ps3fb.irq_no); 901 ps3_irq_plug_destroy(ps3fb.irq_no);
902 return error; 902 return error;
903 } 903 }
904 904
@@ -1059,7 +1059,7 @@ err_framebuffer_release:
1059 framebuffer_release(info); 1059 framebuffer_release(info);
1060err_free_irq: 1060err_free_irq:
1061 free_irq(ps3fb.irq_no, ps3fb.dev); 1061 free_irq(ps3fb.irq_no, ps3fb.dev);
1062 ps3_free_irq(ps3fb.irq_no); 1062 ps3_irq_plug_destroy(ps3fb.irq_no);
1063err_iounmap_dinfo: 1063err_iounmap_dinfo:
1064 iounmap((u8 __iomem *)ps3fb.dinfo); 1064 iounmap((u8 __iomem *)ps3fb.dinfo);
1065err_gpu_context_free: 1065err_gpu_context_free:
@@ -1075,7 +1075,7 @@ static void ps3fb_shutdown(struct platform_device *dev)
1075 ps3fb_flip_ctl(0); /* flip off */ 1075 ps3fb_flip_ctl(0); /* flip off */
1076 ps3fb.dinfo->irq.mask = 0; 1076 ps3fb.dinfo->irq.mask = 0;
1077 free_irq(ps3fb.irq_no, ps3fb.dev); 1077 free_irq(ps3fb.irq_no, ps3fb.dev);
1078 ps3_free_irq(ps3fb.irq_no); 1078 ps3_irq_plug_destroy(ps3fb.irq_no);
1079 iounmap((u8 __iomem *)ps3fb.dinfo); 1079 iounmap((u8 __iomem *)ps3fb.dinfo);
1080} 1080}
1081 1081
@@ -1085,7 +1085,7 @@ void ps3fb_cleanup(void)
1085 1085
1086 if (ps3fb.irq_no) { 1086 if (ps3fb.irq_no) {
1087 free_irq(ps3fb.irq_no, ps3fb.dev); 1087 free_irq(ps3fb.irq_no, ps3fb.dev);
1088 ps3_free_irq(ps3fb.irq_no); 1088 ps3_irq_plug_destroy(ps3fb.irq_no);
1089 } 1089 }
1090 iounmap((u8 __iomem *)ps3fb.dinfo); 1090 iounmap((u8 __iomem *)ps3fb.dinfo);
1091 1091