summaryrefslogtreecommitdiff
path: root/arch/sh/boards
diff options
context:
space:
mode:
authorArtur Rojek <contact@artur-rojek.eu>2024-05-11 22:16:14 +0300
committerJohn Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>2024-05-13 10:13:26 +0300
commit10c88ca5c9aeb51f2608507ca259f8b1176a4723 (patch)
treeaf3b4576a36bf97d8db7c6be3498f6c28246a8c3 /arch/sh/boards
parent21b8651502d5989576f9ca4849f40ff3bf1271ff (diff)
downloadlinux-10c88ca5c9aeb51f2608507ca259f8b1176a4723.tar.xz
sh: dreamcast: Fix GAPS PCI bridge addressing
The G2-to-PCI bridge chip found in SEGA Dreamcast assumes P2 area relative addresses. Set the appropriate IOPORT base offset. Tested-by: Paul Cercueil <paul@crapouillou.net> Signed-off-by: Artur Rojek <contact@artur-rojek.eu> Reviewed-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de> Link: https://lore.kernel.org/r/20240511191614.68561-2-contact@artur-rojek.eu Signed-off-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
Diffstat (limited to 'arch/sh/boards')
-rw-r--r--arch/sh/boards/mach-dreamcast/setup.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/sh/boards/mach-dreamcast/setup.c b/arch/sh/boards/mach-dreamcast/setup.c
index 2d966c1c2cc1..daa8455549fa 100644
--- a/arch/sh/boards/mach-dreamcast/setup.c
+++ b/arch/sh/boards/mach-dreamcast/setup.c
@@ -25,10 +25,13 @@
#include <asm/irq.h>
#include <asm/rtc.h>
#include <asm/machvec.h>
+#include <cpu/addrspace.h>
#include <mach/sysasic.h>
static void __init dreamcast_setup(char **cmdline_p)
{
+ /* GAPS PCI bridge assumes P2 area relative addresses. */
+ __set_io_port_base(P2SEG);
}
static struct sh_machine_vector mv_dreamcast __initmv = {