aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/m68k/atari/config.c8
-rw-r--r--arch/m68k/include/asm/irq.h13
-rw-r--r--arch/m68k/kernel/process_mm.c2
-rw-r--r--arch/m68k/kernel/process_no.c4
-rw-r--r--arch/m68k/kernel/traps.c36
-rw-r--r--arch/m68k/mm/cache.c6
-rw-r--r--drivers/scsi/mac_esp.c3
-rw-r--r--drivers/scsi/mac_scsi.c6
-rw-r--r--drivers/video/macfb.c60
9 files changed, 56 insertions, 82 deletions
diff --git a/arch/m68k/atari/config.c b/arch/m68k/atari/config.c
index 4203d101363c..c4ac15c4f065 100644
--- a/arch/m68k/atari/config.c
+++ b/arch/m68k/atari/config.c
@@ -414,9 +414,9 @@ void __init config_atari(void)
414 * FDC val = 4 -> Supervisor only */ 414 * FDC val = 4 -> Supervisor only */
415 asm volatile ("\n" 415 asm volatile ("\n"
416 " .chip 68030\n" 416 " .chip 68030\n"
417 " pmove %0@,%/tt1\n" 417 " pmove %0,%/tt1\n"
418 " .chip 68k" 418 " .chip 68k"
419 : : "a" (&tt1_val)); 419 : : "m" (tt1_val));
420 } else { 420 } else {
421 asm volatile ("\n" 421 asm volatile ("\n"
422 " .chip 68040\n" 422 " .chip 68040\n"
@@ -569,10 +569,10 @@ static void atari_reset(void)
569 : "d0"); 569 : "d0");
570 } else 570 } else
571 asm volatile ("\n" 571 asm volatile ("\n"
572 " pmove %0@,%%tc\n" 572 " pmove %0,%%tc\n"
573 " jmp %1@" 573 " jmp %1@"
574 : /* no outputs */ 574 : /* no outputs */
575 : "a" (&tc_val), "a" (reset_addr)); 575 : "m" (tc_val), "a" (reset_addr));
576} 576}
577 577
578 578
diff --git a/arch/m68k/include/asm/irq.h b/arch/m68k/include/asm/irq.h
index 0e89fa05de0e..c1155f0e22cc 100644
--- a/arch/m68k/include/asm/irq.h
+++ b/arch/m68k/include/asm/irq.h
@@ -50,19 +50,6 @@
50 50
51#define IRQ_USER 8 51#define IRQ_USER 8
52 52
53/*
54 * various flags for request_irq() - the Amiga now uses the standard
55 * mechanism like all other architectures - IRQF_DISABLED and
56 * IRQF_SHARED are your friends.
57 */
58#ifndef MACH_AMIGA_ONLY
59#define IRQ_FLG_LOCK (0x0001) /* handler is not replaceable */
60#define IRQ_FLG_REPLACE (0x0002) /* replace existing handler */
61#define IRQ_FLG_FAST (0x0004)
62#define IRQ_FLG_SLOW (0x0008)
63#define IRQ_FLG_STD (0x8000) /* internally used */
64#endif
65
66struct irq_data; 53struct irq_data;
67struct irq_chip; 54struct irq_chip;
68struct irq_desc; 55struct irq_desc;
diff --git a/arch/m68k/kernel/process_mm.c b/arch/m68k/kernel/process_mm.c
index 125f34e00bf0..099283ee1a8f 100644
--- a/arch/m68k/kernel/process_mm.c
+++ b/arch/m68k/kernel/process_mm.c
@@ -172,7 +172,7 @@ void flush_thread(void)
172 172
173 current->thread.fs = __USER_DS; 173 current->thread.fs = __USER_DS;
174 if (!FPU_IS_EMU) 174 if (!FPU_IS_EMU)
175 asm volatile ("frestore %0@" : : "a" (&zero) : "memory"); 175 asm volatile("frestore %0": :"m" (zero));
176} 176}
177 177
178/* 178/*
diff --git a/arch/m68k/kernel/process_no.c b/arch/m68k/kernel/process_no.c
index 69c1803fcf1b..5e1078cabe0e 100644
--- a/arch/m68k/kernel/process_no.c
+++ b/arch/m68k/kernel/process_no.c
@@ -163,8 +163,8 @@ void flush_thread(void)
163#ifdef CONFIG_FPU 163#ifdef CONFIG_FPU
164 if (!FPU_IS_EMU) 164 if (!FPU_IS_EMU)
165 asm volatile (".chip 68k/68881\n\t" 165 asm volatile (".chip 68k/68881\n\t"
166 "frestore %0@\n\t" 166 "frestore %0\n\t"
167 ".chip 68k" : : "a" (&zero)); 167 ".chip 68k" : : "m" (zero));
168#endif 168#endif
169} 169}
170 170
diff --git a/arch/m68k/kernel/traps.c b/arch/m68k/kernel/traps.c
index a76452ca964e..daaa9187654c 100644
--- a/arch/m68k/kernel/traps.c
+++ b/arch/m68k/kernel/traps.c
@@ -552,13 +552,13 @@ static inline void bus_error030 (struct frame *fp)
552 552
553#ifdef DEBUG 553#ifdef DEBUG
554 asm volatile ("ptestr %3,%2@,#7,%0\n\t" 554 asm volatile ("ptestr %3,%2@,#7,%0\n\t"
555 "pmove %%psr,%1@" 555 "pmove %%psr,%1"
556 : "=a&" (desc) 556 : "=a&" (desc), "=m" (temp)
557 : "a" (&temp), "a" (addr), "d" (ssw)); 557 : "a" (addr), "d" (ssw));
558#else 558#else
559 asm volatile ("ptestr %2,%1@,#7\n\t" 559 asm volatile ("ptestr %2,%1@,#7\n\t"
560 "pmove %%psr,%0@" 560 "pmove %%psr,%0"
561 : : "a" (&temp), "a" (addr), "d" (ssw)); 561 : "=m" (temp) : "a" (addr), "d" (ssw));
562#endif 562#endif
563 mmusr = temp; 563 mmusr = temp;
564 564
@@ -605,20 +605,18 @@ static inline void bus_error030 (struct frame *fp)
605 !(ssw & RW) ? "write" : "read", addr, 605 !(ssw & RW) ? "write" : "read", addr,
606 fp->ptregs.pc, ssw); 606 fp->ptregs.pc, ssw);
607 asm volatile ("ptestr #1,%1@,#0\n\t" 607 asm volatile ("ptestr #1,%1@,#0\n\t"
608 "pmove %%psr,%0@" 608 "pmove %%psr,%0"
609 : /* no outputs */ 609 : "=m" (temp)
610 : "a" (&temp), "a" (addr)); 610 : "a" (addr));
611 mmusr = temp; 611 mmusr = temp;
612 612
613 printk ("level 0 mmusr is %#x\n", mmusr); 613 printk ("level 0 mmusr is %#x\n", mmusr);
614#if 0 614#if 0
615 asm volatile ("pmove %%tt0,%0@" 615 asm volatile ("pmove %%tt0,%0"
616 : /* no outputs */ 616 : "=m" (tlong));
617 : "a" (&tlong));
618 printk("tt0 is %#lx, ", tlong); 617 printk("tt0 is %#lx, ", tlong);
619 asm volatile ("pmove %%tt1,%0@" 618 asm volatile ("pmove %%tt1,%0"
620 : /* no outputs */ 619 : "=m" (tlong));
621 : "a" (&tlong));
622 printk("tt1 is %#lx\n", tlong); 620 printk("tt1 is %#lx\n", tlong);
623#endif 621#endif
624#ifdef DEBUG 622#ifdef DEBUG
@@ -668,13 +666,13 @@ static inline void bus_error030 (struct frame *fp)
668 666
669#ifdef DEBUG 667#ifdef DEBUG
670 asm volatile ("ptestr #1,%2@,#7,%0\n\t" 668 asm volatile ("ptestr #1,%2@,#7,%0\n\t"
671 "pmove %%psr,%1@" 669 "pmove %%psr,%1"
672 : "=a&" (desc) 670 : "=a&" (desc), "=m" (temp)
673 : "a" (&temp), "a" (addr)); 671 : "a" (addr));
674#else 672#else
675 asm volatile ("ptestr #1,%1@,#7\n\t" 673 asm volatile ("ptestr #1,%1@,#7\n\t"
676 "pmove %%psr,%0@" 674 "pmove %%psr,%0"
677 : : "a" (&temp), "a" (addr)); 675 : "=m" (temp) : "a" (addr));
678#endif 676#endif
679 mmusr = temp; 677 mmusr = temp;
680 678
diff --git a/arch/m68k/mm/cache.c b/arch/m68k/mm/cache.c
index 95d0bf66e2e2..3d84c1f2ffb2 100644
--- a/arch/m68k/mm/cache.c
+++ b/arch/m68k/mm/cache.c
@@ -52,9 +52,9 @@ static unsigned long virt_to_phys_slow(unsigned long vaddr)
52 unsigned long *descaddr; 52 unsigned long *descaddr;
53 53
54 asm volatile ("ptestr %3,%2@,#7,%0\n\t" 54 asm volatile ("ptestr %3,%2@,#7,%0\n\t"
55 "pmove %%psr,%1@" 55 "pmove %%psr,%1"
56 : "=a&" (descaddr) 56 : "=a&" (descaddr), "=m" (mmusr)
57 : "a" (&mmusr), "a" (vaddr), "d" (get_fs().seg)); 57 : "a" (vaddr), "d" (get_fs().seg));
58 if (mmusr & (MMU_I|MMU_B|MMU_L)) 58 if (mmusr & (MMU_I|MMU_B|MMU_L))
59 return 0; 59 return 0;
60 descaddr = phys_to_virt((unsigned long)descaddr); 60 descaddr = phys_to_virt((unsigned long)descaddr);
diff --git a/drivers/scsi/mac_esp.c b/drivers/scsi/mac_esp.c
index 4ceeace80453..70eb1f79b1ba 100644
--- a/drivers/scsi/mac_esp.c
+++ b/drivers/scsi/mac_esp.c
@@ -565,8 +565,7 @@ static int __devinit esp_mac_probe(struct platform_device *dev)
565 esp_chips[dev->id] = esp; 565 esp_chips[dev->id] = esp;
566 mb(); 566 mb();
567 if (esp_chips[!dev->id] == NULL) { 567 if (esp_chips[!dev->id] == NULL) {
568 err = request_irq(host->irq, mac_scsi_esp_intr, 0, 568 err = request_irq(host->irq, mac_scsi_esp_intr, 0, "ESP", NULL);
569 "Mac ESP", NULL);
570 if (err < 0) { 569 if (err < 0) {
571 esp_chips[dev->id] = NULL; 570 esp_chips[dev->id] = NULL;
572 goto fail_free_priv; 571 goto fail_free_priv;
diff --git a/drivers/scsi/mac_scsi.c b/drivers/scsi/mac_scsi.c
index ea2bde206f7f..2bccfbe5661e 100644
--- a/drivers/scsi/mac_scsi.c
+++ b/drivers/scsi/mac_scsi.c
@@ -339,9 +339,6 @@ static void mac_scsi_reset_boot(struct Scsi_Host *instance)
339 339
340 printk(KERN_INFO "Macintosh SCSI: resetting the SCSI bus..." ); 340 printk(KERN_INFO "Macintosh SCSI: resetting the SCSI bus..." );
341 341
342 /* switch off SCSI IRQ - catch an interrupt without IRQ bit set else */
343 disable_irq(IRQ_MAC_SCSI);
344
345 /* get in phase */ 342 /* get in phase */
346 NCR5380_write( TARGET_COMMAND_REG, 343 NCR5380_write( TARGET_COMMAND_REG,
347 PHASE_SR_TO_TCR( NCR5380_read(STATUS_REG) )); 344 PHASE_SR_TO_TCR( NCR5380_read(STATUS_REG) ));
@@ -357,9 +354,6 @@ static void mac_scsi_reset_boot(struct Scsi_Host *instance)
357 for( end = jiffies + AFTER_RESET_DELAY; time_before(jiffies, end); ) 354 for( end = jiffies + AFTER_RESET_DELAY; time_before(jiffies, end); )
358 barrier(); 355 barrier();
359 356
360 /* switch on SCSI IRQ again */
361 enable_irq(IRQ_MAC_SCSI);
362
363 printk(KERN_INFO " done\n" ); 357 printk(KERN_INFO " done\n" );
364} 358}
365#endif 359#endif
diff --git a/drivers/video/macfb.c b/drivers/video/macfb.c
index 43207cc6cc19..fe01add3700e 100644
--- a/drivers/video/macfb.c
+++ b/drivers/video/macfb.c
@@ -592,12 +592,12 @@ static int __init macfb_init(void)
592 if (!fb_info.screen_base) 592 if (!fb_info.screen_base)
593 return -ENODEV; 593 return -ENODEV;
594 594
595 printk("macfb: framebuffer at 0x%08lx, mapped to 0x%p, size %dk\n", 595 pr_info("macfb: framebuffer at 0x%08lx, mapped to 0x%p, size %dk\n",
596 macfb_fix.smem_start, fb_info.screen_base, 596 macfb_fix.smem_start, fb_info.screen_base,
597 macfb_fix.smem_len / 1024); 597 macfb_fix.smem_len / 1024);
598 printk("macfb: mode is %dx%dx%d, linelength=%d\n", 598 pr_info("macfb: mode is %dx%dx%d, linelength=%d\n",
599 macfb_defined.xres, macfb_defined.yres, 599 macfb_defined.xres, macfb_defined.yres,
600 macfb_defined.bits_per_pixel, macfb_fix.line_length); 600 macfb_defined.bits_per_pixel, macfb_fix.line_length);
601 601
602 /* Fill in the available video resolution */ 602 /* Fill in the available video resolution */
603 macfb_defined.xres_virtual = macfb_defined.xres; 603 macfb_defined.xres_virtual = macfb_defined.xres;
@@ -613,14 +613,10 @@ static int __init macfb_init(void)
613 613
614 switch (macfb_defined.bits_per_pixel) { 614 switch (macfb_defined.bits_per_pixel) {
615 case 1: 615 case 1:
616 /*
617 * XXX: I think this will catch any program that tries
618 * to do FBIO_PUTCMAP when the visual is monochrome.
619 */
620 macfb_defined.red.length = macfb_defined.bits_per_pixel; 616 macfb_defined.red.length = macfb_defined.bits_per_pixel;
621 macfb_defined.green.length = macfb_defined.bits_per_pixel; 617 macfb_defined.green.length = macfb_defined.bits_per_pixel;
622 macfb_defined.blue.length = macfb_defined.bits_per_pixel; 618 macfb_defined.blue.length = macfb_defined.bits_per_pixel;
623 video_cmap_len = 0; 619 video_cmap_len = 2;
624 macfb_fix.visual = FB_VISUAL_MONO01; 620 macfb_fix.visual = FB_VISUAL_MONO01;
625 break; 621 break;
626 case 2: 622 case 2:
@@ -660,11 +656,10 @@ static int __init macfb_init(void)
660 macfb_fix.visual = FB_VISUAL_TRUECOLOR; 656 macfb_fix.visual = FB_VISUAL_TRUECOLOR;
661 break; 657 break;
662 default: 658 default:
663 video_cmap_len = 0; 659 pr_err("macfb: unknown or unsupported bit depth: %d\n",
664 macfb_fix.visual = FB_VISUAL_MONO01;
665 printk("macfb: unknown or unsupported bit depth: %d\n",
666 macfb_defined.bits_per_pixel); 660 macfb_defined.bits_per_pixel);
667 break; 661 err = -EINVAL;
662 goto fail_unmap;
668 } 663 }
669 664
670 /* 665 /*
@@ -734,8 +729,8 @@ static int __init macfb_init(void)
734 case MAC_MODEL_Q950: 729 case MAC_MODEL_Q950:
735 strcpy(macfb_fix.id, "DAFB"); 730 strcpy(macfb_fix.id, "DAFB");
736 macfb_setpalette = dafb_setpalette; 731 macfb_setpalette = dafb_setpalette;
737 macfb_defined.activate = FB_ACTIVATE_NOW;
738 dafb_cmap_regs = ioremap(DAFB_BASE, 0x1000); 732 dafb_cmap_regs = ioremap(DAFB_BASE, 0x1000);
733 macfb_defined.activate = FB_ACTIVATE_NOW;
739 break; 734 break;
740 735
741 /* 736 /*
@@ -744,8 +739,8 @@ static int __init macfb_init(void)
744 case MAC_MODEL_LCII: 739 case MAC_MODEL_LCII:
745 strcpy(macfb_fix.id, "V8"); 740 strcpy(macfb_fix.id, "V8");
746 macfb_setpalette = v8_brazil_setpalette; 741 macfb_setpalette = v8_brazil_setpalette;
747 macfb_defined.activate = FB_ACTIVATE_NOW;
748 v8_brazil_cmap_regs = ioremap(DAC_BASE, 0x1000); 742 v8_brazil_cmap_regs = ioremap(DAC_BASE, 0x1000);
743 macfb_defined.activate = FB_ACTIVATE_NOW;
749 break; 744 break;
750 745
751 /* 746 /*
@@ -758,8 +753,8 @@ static int __init macfb_init(void)
758 case MAC_MODEL_P600: 753 case MAC_MODEL_P600:
759 strcpy(macfb_fix.id, "Brazil"); 754 strcpy(macfb_fix.id, "Brazil");
760 macfb_setpalette = v8_brazil_setpalette; 755 macfb_setpalette = v8_brazil_setpalette;
761 macfb_defined.activate = FB_ACTIVATE_NOW;
762 v8_brazil_cmap_regs = ioremap(DAC_BASE, 0x1000); 756 v8_brazil_cmap_regs = ioremap(DAC_BASE, 0x1000);
757 macfb_defined.activate = FB_ACTIVATE_NOW;
763 break; 758 break;
764 759
765 /* 760 /*
@@ -773,10 +768,10 @@ static int __init macfb_init(void)
773 case MAC_MODEL_P520: 768 case MAC_MODEL_P520:
774 case MAC_MODEL_P550: 769 case MAC_MODEL_P550:
775 case MAC_MODEL_P460: 770 case MAC_MODEL_P460:
776 macfb_setpalette = v8_brazil_setpalette;
777 macfb_defined.activate = FB_ACTIVATE_NOW;
778 strcpy(macfb_fix.id, "Sonora"); 771 strcpy(macfb_fix.id, "Sonora");
772 macfb_setpalette = v8_brazil_setpalette;
779 v8_brazil_cmap_regs = ioremap(DAC_BASE, 0x1000); 773 v8_brazil_cmap_regs = ioremap(DAC_BASE, 0x1000);
774 macfb_defined.activate = FB_ACTIVATE_NOW;
780 break; 775 break;
781 776
782 /* 777 /*
@@ -786,10 +781,10 @@ static int __init macfb_init(void)
786 */ 781 */
787 case MAC_MODEL_IICI: 782 case MAC_MODEL_IICI:
788 case MAC_MODEL_IISI: 783 case MAC_MODEL_IISI:
789 macfb_setpalette = rbv_setpalette;
790 macfb_defined.activate = FB_ACTIVATE_NOW;
791 strcpy(macfb_fix.id, "RBV"); 784 strcpy(macfb_fix.id, "RBV");
785 macfb_setpalette = rbv_setpalette;
792 rbv_cmap_regs = ioremap(DAC_BASE, 0x1000); 786 rbv_cmap_regs = ioremap(DAC_BASE, 0x1000);
787 macfb_defined.activate = FB_ACTIVATE_NOW;
793 break; 788 break;
794 789
795 /* 790 /*
@@ -797,10 +792,10 @@ static int __init macfb_init(void)
797 */ 792 */
798 case MAC_MODEL_Q840: 793 case MAC_MODEL_Q840:
799 case MAC_MODEL_C660: 794 case MAC_MODEL_C660:
800 macfb_setpalette = civic_setpalette;
801 macfb_defined.activate = FB_ACTIVATE_NOW;
802 strcpy(macfb_fix.id, "Civic"); 795 strcpy(macfb_fix.id, "Civic");
796 macfb_setpalette = civic_setpalette;
803 civic_cmap_regs = ioremap(CIVIC_BASE, 0x1000); 797 civic_cmap_regs = ioremap(CIVIC_BASE, 0x1000);
798 macfb_defined.activate = FB_ACTIVATE_NOW;
804 break; 799 break;
805 800
806 801
@@ -809,26 +804,26 @@ static int __init macfb_init(void)
809 * We think this may be like the LC II 804 * We think this may be like the LC II
810 */ 805 */
811 case MAC_MODEL_LC: 806 case MAC_MODEL_LC:
807 strcpy(macfb_fix.id, "LC");
812 if (vidtest) { 808 if (vidtest) {
813 macfb_setpalette = v8_brazil_setpalette; 809 macfb_setpalette = v8_brazil_setpalette;
814 macfb_defined.activate = FB_ACTIVATE_NOW;
815 v8_brazil_cmap_regs = 810 v8_brazil_cmap_regs =
816 ioremap(DAC_BASE, 0x1000); 811 ioremap(DAC_BASE, 0x1000);
812 macfb_defined.activate = FB_ACTIVATE_NOW;
817 } 813 }
818 strcpy(macfb_fix.id, "LC");
819 break; 814 break;
820 815
821 /* 816 /*
822 * We think this may be like the LC II 817 * We think this may be like the LC II
823 */ 818 */
824 case MAC_MODEL_CCL: 819 case MAC_MODEL_CCL:
820 strcpy(macfb_fix.id, "Color Classic");
825 if (vidtest) { 821 if (vidtest) {
826 macfb_setpalette = v8_brazil_setpalette; 822 macfb_setpalette = v8_brazil_setpalette;
827 macfb_defined.activate = FB_ACTIVATE_NOW;
828 v8_brazil_cmap_regs = 823 v8_brazil_cmap_regs =
829 ioremap(DAC_BASE, 0x1000); 824 ioremap(DAC_BASE, 0x1000);
825 macfb_defined.activate = FB_ACTIVATE_NOW;
830 } 826 }
831 strcpy(macfb_fix.id, "Color Classic");
832 break; 827 break;
833 828
834 /* 829 /*
@@ -893,10 +888,10 @@ static int __init macfb_init(void)
893 case MAC_MODEL_PB270C: 888 case MAC_MODEL_PB270C:
894 case MAC_MODEL_PB280: 889 case MAC_MODEL_PB280:
895 case MAC_MODEL_PB280C: 890 case MAC_MODEL_PB280C:
896 macfb_setpalette = csc_setpalette;
897 macfb_defined.activate = FB_ACTIVATE_NOW;
898 strcpy(macfb_fix.id, "CSC"); 891 strcpy(macfb_fix.id, "CSC");
892 macfb_setpalette = csc_setpalette;
899 csc_cmap_regs = ioremap(CSC_BASE, 0x1000); 893 csc_cmap_regs = ioremap(CSC_BASE, 0x1000);
894 macfb_defined.activate = FB_ACTIVATE_NOW;
900 break; 895 break;
901 896
902 default: 897 default:
@@ -918,8 +913,9 @@ static int __init macfb_init(void)
918 if (err) 913 if (err)
919 goto fail_dealloc; 914 goto fail_dealloc;
920 915
921 printk("fb%d: %s frame buffer device\n", 916 pr_info("fb%d: %s frame buffer device\n",
922 fb_info.node, fb_info.fix.id); 917 fb_info.node, fb_info.fix.id);
918
923 return 0; 919 return 0;
924 920
925fail_dealloc: 921fail_dealloc: