Geert Uytterhoeven | 28 Sep 11:26 2014

[PATCH 1/5] m68k: Disable/restore interrupts in hwreg_present()/hwreg_write()

hwreg_present() and hwreg_write() temporarily change the VBR register to
another vector table. This table contains a valid bus error handler
only, all other entries point to arbitrary addresses.

If an interrupt comes in while the temporary table is active, the
processor will start executing at such an arbitrary address, and the
kernel will crash.

While most callers run early, before interrupt are disabled, or
explicitly disable interrupts, Finn Thain pointed out that macsonic has
one callsite that doesn't, causing intermittent boot crashes.
There's another unsafe callsite in hilkbd.

Fix this for good by disabling and restoring interrupts inside
hwreg_present() and hwreg_write().

Explicitly disabling interrupts can be removed from the callsites later.

Reported-by: Finn Thain <fthain <at> telegraphics.com.au>
Signed-off-by: Geert Uytterhoeven <geert <at> linux-m68k.org>
Cc: stable <at> vger.kernel.org
---
 arch/m68k/mm/hwtest.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/arch/m68k/mm/hwtest.c b/arch/m68k/mm/hwtest.c
index 2c7dde3c6430fc3b..2a5259fd23ebc532 100644
--- a/arch/m68k/mm/hwtest.c
+++ b/arch/m68k/mm/hwtest.c
 <at>  <at>  -28,9 +28,11  <at>  <at> 
(Continue reading)

Paul Bolle | 26 Sep 19:40 2014
Picon

[PATCH] [TRIVIAL] m68k: Fix typo 'COFNIG_MBAR'

Signed-off-by: Paul Bolle <pebolle <at> tiscali.nl>
---
Untested!

Geert, PASR is obviously unused. Is it needed?

 arch/m68k/include/asm/m54xxpci.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/m68k/include/asm/m54xxpci.h b/arch/m68k/include/asm/m54xxpci.h
index 6fbf54f72f2e..4687f5aa3741 100644
--- a/arch/m68k/include/asm/m54xxpci.h
+++ b/arch/m68k/include/asm/m54xxpci.h
 <at>  <at>  -72,7 +72,7  <at>  <at> 
 #define	PCIRFWPR	(CONFIG_MBAR + 0x84d4)	/* RX FIFO write pointer */

 #define	PACR		(CONFIG_MBAR + 0xc00)	/* PCI arbiter control */
-#define	PASR		(COFNIG_MBAR + 0xc04)	/* PCI arbiter status */
+#define	PASR		(CONFIG_MBAR + 0xc04)	/* PCI arbiter status */

 /*
  *	Definitions for the Global status and control register.
--

-- 
1.9.3

DIAMOND SWISS LOAN COMPANY | 23 Sep 00:00 2014
Picon

Darlehen anbieten


-- 
Guten Tag,

  Wir sind Diamant Swiss Darlehen Unternehmen geben Kredite per Post  
Anzeige. Wir bieten verschiedene Arten von Darlehen (kurz-und  
langfristige Darlehen, persönliche Darlehen, Kredite an Unternehmen,  
etc.) um 3% Zins. Wir geben Darlehen an Menschen in Not nicht  
unabhängig von ihrem Standort, Geschlecht, Familienstand, Bildung,  
Job-Status, sondern muss eine juristische Mittel der Rückzahlung  
haben. Unsere Kredite liegen zwischen 5.000,00 bis 10.000.000,00  
US-Dollar oder Euro oder Pfund mit einer Laufzeit von 20 Jahren. Wenn  
Sie an weiteren Informationen interessiert sind, füllen Sie bitte das  
Formular aus und schicken Sie es an unsere E-Mail-Adresse:  
diamondswissloans51 <at> gmail.com

Bitte ausfüllen:

Name:

Adresse:

Alter:

Geschlecht:

Kontakt-Telefon:

Beruf:

(Continue reading)

gerg | 18 Sep 07:43 2014

[PATCH] m68knommu: add missing ioport_map() and ioport_unmap()

From: Greg Ungerer <gerg <at> uclinux.org>

Add the missing ioport_map() and ioport_unmap() functions for the
non-MMU platforms.

Signed-off-by: Greg Ungerer <gerg <at> uclinux.org>
---
 arch/m68k/include/asm/io_no.h | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/arch/m68k/include/asm/io_no.h b/arch/m68k/include/asm/io_no.h
index 52f7e84..be4b5a8 100644
--- a/arch/m68k/include/asm/io_no.h
+++ b/arch/m68k/include/asm/io_no.h
 <at>  <at>  -179,6 +179,15  <at>  <at>  static inline void *ioremap_fullcache(unsigned long physaddr, unsigned long size
  */
 #define xlate_dev_kmem_ptr(p)	p

+static inline void __iomem *ioport_map(unsigned long port, unsigned int nr)
+{
+	return (void __iomem *) port;
+}
+
+static inline void ioport_unmap(void __iomem *p)
+{
+}
+
 #endif /* __KERNEL__ */

 #endif /* _M68KNOMMU_IO_H */
(Continue reading)

Fabian Frederick | 16 Sep 20:43 2014
Picon

[PATCH 1/1 linux-next] m68k/coldfire: remove second asm/mcfclk.h inclusion in m54xx.c

asm/mcfclk.h was included twice.

Signed-off-by: Fabian Frederick <fabf <at> skynet.be>
---
 arch/m68k/coldfire/m54xx.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/arch/m68k/coldfire/m54xx.c b/arch/m68k/coldfire/m54xx.c
index eec7f71..075aaab 100644
--- a/arch/m68k/coldfire/m54xx.c
+++ b/arch/m68k/coldfire/m54xx.c
 <at>  <at>  -23,7 +23,6  <at>  <at> 
 #include <asm/mcfuart.h>
 #include <asm/mcfclk.h>
 #include <asm/m54xxgpt.h>
-#include <asm/mcfclk.h>
 #ifdef CONFIG_MMU
 #include <asm/mmu_context.h>
 #endif
--

-- 
2.1.0

Geert Uytterhoeven | 14 Sep 11:48 2014

[PATCH] video: valkyriefb: Fix unused variable warning in set_valkyrie_clock()

If CONFIG_ADB_CUDA=n:

drivers/video/fbdev/valkyriefb.c: In function ‘set_valkyrie_clock’:
drivers/video/fbdev/valkyriefb.c:267: warning: unused variable ‘i’
drivers/video/fbdev/valkyriefb.c:266: warning: unused variable ‘req’

Move the variable declarations inside the existing #ifdef section to fix
this.

Signed-off-by: Geert Uytterhoeven <geert <at> linux-m68k.org>
---
 drivers/video/fbdev/valkyriefb.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/video/fbdev/valkyriefb.c b/drivers/video/fbdev/valkyriefb.c
index 97cb9bd1d1dd..b6ed09f16355 100644
--- a/drivers/video/fbdev/valkyriefb.c
+++ b/drivers/video/fbdev/valkyriefb.c
 <at>  <at>  -263,10 +263,10  <at>  <at>  static inline int valkyrie_vram_reqd(int video_mode, int color_mode)

 static void set_valkyrie_clock(unsigned char *params)
 {
+#ifdef CONFIG_ADB_CUDA
 	struct adb_request req;
 	int i;

-#ifdef CONFIG_ADB_CUDA
 	for (i = 0; i < 3; ++i) {
 		cuda_request(&req, NULL, 5, CUDA_PACKET, CUDA_GET_SET_IIC,
 			     0x50, i + 1, params[i]);
(Continue reading)

Geert Uytterhoeven | 14 Sep 11:45 2014

[PATCH] m68k: Add missing ioport_unmap()

drivers/net/ethernet/cirrus/cs89x0.c: In function ‘cs89x0_ioport_probe’:
drivers/net/ethernet/cirrus/cs89x0.c:1629: error: implicit declaration of function ‘ioport_unmap’

Add the missing ioport_unmap() implementation, and convert ioport_map()
from a macro to a static inline function while we're at it (both copied
from asm-generic).

Signed-off-by: Geert Uytterhoeven <geert <at> linux-m68k.org>
---
 arch/m68k/include/asm/io_mm.h | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/arch/m68k/include/asm/io_mm.h b/arch/m68k/include/asm/io_mm.h
index ffdf54f44bc6..8955b40a5dc4 100644
--- a/arch/m68k/include/asm/io_mm.h
+++ b/arch/m68k/include/asm/io_mm.h
 <at>  <at>  -510,6 +510,13  <at>  <at>  static inline void memcpy_toio(volatile void __iomem *dst, const void *src, int
  */
 #define xlate_dev_kmem_ptr(p)	p

-#define ioport_map(port, nr)	((void __iomem *)(port))
+static inline void __iomem *ioport_map(unsigned long port, unsigned int nr)
+{
+	return (void __iomem *) port;
+}
+
+static inline void ioport_unmap(void __iomem *p)
+{
+}

(Continue reading)

Geert Uytterhoeven | 14 Sep 11:42 2014

[PATCH] m68k: AMIGA_BUILTIN_SERIAL should depend on TTY

If CONFIG_TTY=n:

drivers/built-in.o: In function `rs_flush_buffer':
amiserial.c:(.text+0x1f626): undefined reference to `tty_wakeup'
drivers/built-in.o: In function `transmit_chars':
amiserial.c:(.text+0x1f6c8): undefined reference to `tty_wakeup'
drivers/built-in.o: In function `change_speed':
amiserial.c:(.text+0x1f80a): undefined reference to `tty_termios_baud_rate'
amiserial.c:(.text+0x1f88c): undefined reference to `tty_termios_baud_rate'
drivers/built-in.o: In function `check_modem_status':
amiserial.c:(.text+0x1faa6): undefined reference to `tty_hangup'
amiserial.c:(.text+0x1faec): undefined reference to `tty_wakeup'
drivers/built-in.o: In function `get_serial_info':
amiserial.c:(.text+0x1fb88): undefined reference to `tty_lock'
amiserial.c:(.text+0x1fbc0): undefined reference to `tty_unlock'
drivers/built-in.o: In function `rs_open':
amiserial.c:(.text+0x1fdc6): undefined reference to `tty_port_block_til_ready'
drivers/built-in.o: In function `set_serial_info':
amiserial.c:(.text+0x1fe0c): undefined reference to `tty_lock'
amiserial.c:(.text+0x1fea0): undefined reference to `tty_unlock'
amiserial.c:(.text+0x1fed0): undefined reference to `tty_unlock'
amiserial.c:(.text+0x1ffaa): undefined reference to `tty_unlock'
drivers/built-in.o: In function `receive_chars':
amiserial.c:(.text+0x2005c): undefined reference to `do_SAK'
amiserial.c:(.text+0x200e0): undefined reference to `tty_insert_flip_string_flags'
amiserial.c:(.text+0x2013c): undefined reference to `tty_insert_flip_string_flags'
amiserial.c:(.text+0x20148): undefined reference to `tty_flip_buffer_push'
drivers/built-in.o: In function `rs_close':
amiserial.c:(.text+0x20744): undefined reference to `tty_port_close_start'
amiserial.c:(.text+0x2078a): undefined reference to `tty_ldisc_flush'
(Continue reading)

Geert Uytterhoeven | 14 Sep 11:39 2014

[PATCH] USB: isp116x: Fix EtherNAT if !CONFIG_ATARI_ROM_ISA

Commit eece8a651c96a2a3 ("USB: isp116x: isa_rom_*() calls should depend
on CONFIG_ATARI_ROM_ISA") broke USB on EtherNAT if CONFIG_ATARI_ROM_ISA
is not set, as USB on EtherNAT requires byte-swapped I/O accessors.

Add a separate #elif section for Atari without ROM port ISA to fix this.

Signed-off-by: Geert Uytterhoeven <geert <at> linux-m68k.org>
---
To be folded into "m68k/atari: USB - add ISP1160 USB host controller
support"
---
 drivers/usb/host/isp116x.h | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/drivers/usb/host/isp116x.h b/drivers/usb/host/isp116x.h
index 634258df159b..adebe0251574 100644
--- a/drivers/usb/host/isp116x.h
+++ b/drivers/usb/host/isp116x.h
 <at>  <at>  -369,6 +369,14  <at>  <at>  struct isp116x_ep {
 #define isp_writew(v, p)	((((unsigned long)(__pa(p)) & 0x00000F00) == 0x00000300UL) ?
isa_rom_writew_raw((v), __pa(p)) : __raw_writew((v), (p)))
 #define isp_raw_readw(p)	((((unsigned long)(__pa(p)) & 0x00000F00) == 0x00000300UL) ?
isa_rom_readw(__pa(p)) : readw((p)))
 #define isp_raw_writew(v, p)	((((unsigned long)(__pa(p)) & 0x00000F00) == 0x00000300UL) ?
isa_rom_writew((v), __pa(p)) : writew((v), (p)))
+#elif defined(CONFIG_ATARI)
+  /*
+   * 16 bit data bus byte swapped in hardware on EtherNAT only.
+   */
+#define isp_readw		__raw_readw
(Continue reading)

Michael Schmitz | 13 Sep 02:44 2014
Picon

[PATCH/RESENT] m68k/atari - update Kconfig.bus help text

Add NetUSBee to users of ATARI_ROM_ISA option (thanks Geert for
spotting this in randconfig builds).

Add note to ATARI_USB option to alert user to enable ATARI_ROM_ISA
if they want support for the NetUSBee USB driver.

Signed-off-by: Michael Schmitz <schmitzmic <at> gmail.com>
---
 arch/m68k/Kconfig.bus |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/arch/m68k/Kconfig.bus b/arch/m68k/Kconfig.bus
index b473f40..a934018 100644
--- a/arch/m68k/Kconfig.bus
+++ b/arch/m68k/Kconfig.bus
 <at>  <at>  -52,8 +52,10  <at>  <at>  config ATARI_ROM_ISA
 	  This option enables support for the ROM port ISA adapter used to
 	  operate ISA cards on Atari. Only 8  bit cards are supported, and
 	  no interrupt lines are connected.
-	  The only driver currently using this adapter is the EtherNEC
-	  driver for RTL8019AS based NE2000 compatible network cards.
+	  The only drivers currently using this adapter are the NE2000 ISA
+	  driver for EtherNEC (RTL8019AS based NE2000 compatible network
+	  cards), and drivers for the NetUSBee (RTL8019AS / ISP1160 ethernet/
+	  USB combo card).

 config ATARI_USB
 	bool "Atari USB host controller support"
 <at>  <at>  -64,6 +66,8  <at>  <at>  config ATARI_USB
 	  the EtherNAT and NetUSBee cards for Atari. You will have to select
(Continue reading)

Michael Schmitz | 10 Sep 10:26 2014
Picon

[PATCH] m68k/atari - update Kconfig.bus help text

Add NetUSBee to users of ATARI_ROM_ISA option (thanks Geert for
spotting this in randconfig builds).

Add note to ATARI_USB option to alert user to enable ATARI_ROM_ISA
if they want support for the NetUSBee USB driver.

Signed-off-by: Michael Schmitz <schmitzmic <at> gmail.com>
---
 arch/m68k/Kconfig.bus |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/arch/m68k/Kconfig.bus b/arch/m68k/Kconfig.bus
index b473f40..fea83ca 100644
--- a/arch/m68k/Kconfig.bus
+++ b/arch/m68k/Kconfig.bus
 <at>  <at>  -52,8 +52,10  <at>  <at>  config ATARI_ROM_ISA
 	  This option enables support for the ROM port ISA adapter used to
 	  operate ISA cards on Atari. Only 8  bit cards are supported, and
 	  no interrupt lines are connected.
-	  The only driver currently using this adapter is the EtherNEC
-	  driver for RTL8019AS based NE2000 compatible network cards.
+	  The only drivers currently using this adapter are the NE2000 ISA
+	  driver for EtherNEC (RTL8019AS based NE2000 compatible network
+          cards), and drivers for the NetUSBee (RTL8019AS / ISP1160 ethernet/
+          USB combo card).

 config ATARI_USB
 	bool "Atari USB host controller support"
 <at>  <at>  -64,6 +66,8  <at>  <at>  config ATARI_USB
 	  the EtherNAT and NetUSBee cards for Atari. You will have to select
(Continue reading)


Gmane