summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorMiod Vallat <miod@cvs.openbsd.org>2010-03-02 20:54:52 +0000
committerMiod Vallat <miod@cvs.openbsd.org>2010-03-02 20:54:52 +0000
commitb9c4e2ed8e8350aa2c6fdbb8e673148e5f0b93a4 (patch)
tree11804003e5395604670e301f3654cbe181022e28 /sys
parent457544956b17414db0a843c5b6abb9d208b6e10d (diff)
Add support for the Lemote Lynloong all-in-one PC (basically a Fuloong without
the serial and IR ports, built into a mac-like case). At least PMON initializes the frame buffer in a much friendlier video mode (1360x768x16), but there is still no frame buffer acceleration yet. Tested by wvdputte.
Diffstat (limited to 'sys')
-rw-r--r--sys/arch/loongson/conf/GENERIC6
-rw-r--r--sys/arch/loongson/conf/RAMDISK6
-rw-r--r--sys/arch/loongson/loongson/machdep.c6
-rw-r--r--sys/arch/loongson/loongson/yeeloong_machdep.c40
-rw-r--r--sys/arch/mips64/include/archtype.h3
5 files changed, 50 insertions, 11 deletions
diff --git a/sys/arch/loongson/conf/GENERIC b/sys/arch/loongson/conf/GENERIC
index beb0b8ac699..3946cf5142f 100644
--- a/sys/arch/loongson/conf/GENERIC
+++ b/sys/arch/loongson/conf/GENERIC
@@ -1,4 +1,4 @@
-# $OpenBSD: GENERIC,v 1.18 2010/02/28 22:39:13 miod Exp $
+# $OpenBSD: GENERIC,v 1.19 2010/03/02 20:54:51 miod Exp $
#
# For further information on compiling OpenBSD kernels, see the config(8)
# man page.
@@ -36,7 +36,7 @@ apm0 at mainbus0
bonito* at mainbus0
pci* at bonito?
-# Lemote Fuloong 2F and Lemote Yeeloong devices
+# Lemote Lynloong, Lemote Fuloong 2F and Lemote Yeeloong devices
glxpcib* at pci?
isa0 at glxpcib?
mcclock0 at isa? port 0x70
@@ -50,7 +50,7 @@ com0 at isa? port 0x2f8 irq 3 # Fuloong 2F only
com1 at isa? port 0x3f8 irq 4 # Fuloong 2F only (IR port)
pciide* at pci?
wd* at pciide? flags 0x0000
-sisfb* at pci? # Fuloong 2F only
+sisfb* at pci? # Lynloong/Fuloong 2F only
wsdisplay* at sisfb?
smfb* at pci? # Yeeloong only
wsdisplay* at smfb?
diff --git a/sys/arch/loongson/conf/RAMDISK b/sys/arch/loongson/conf/RAMDISK
index d0d834b9be9..eea22315c1c 100644
--- a/sys/arch/loongson/conf/RAMDISK
+++ b/sys/arch/loongson/conf/RAMDISK
@@ -1,4 +1,4 @@
-# $OpenBSD: RAMDISK,v 1.10 2010/02/28 22:32:50 miod Exp $
+# $OpenBSD: RAMDISK,v 1.11 2010/03/02 20:54:51 miod Exp $
#
# For further information on compiling OpenBSD kernels, see the config(8)
# man page.
@@ -47,7 +47,7 @@ clock0 at mainbus0
bonito* at mainbus0
pci* at bonito?
-# Lemote Fuloong 2F and Lemote Yeeloong devices
+# Lemote Lynloong, Lemote Fuloong 2F and Lemote Yeeloong devices
glxpcib* at pci?
isa0 at glxpcib?
mcclock0 at isa? port 0x70
@@ -59,7 +59,7 @@ wsmouse* at pmsi? mux 0 # Yeeloong only
com0 at isa? port 0x2f8 irq 3 # Fuloong 2F only
pciide* at pci?
wd* at pciide? flags 0x0000
-sisfb* at pci? # Fuloong 2F only
+sisfb* at pci? # Lynloong/Fuloong 2F only
wsdisplay* at sisfb?
smfb* at pci? # Yeeloong only
wsdisplay* at smfb?
diff --git a/sys/arch/loongson/loongson/machdep.c b/sys/arch/loongson/loongson/machdep.c
index dc62898e656..f8d15e6244e 100644
--- a/sys/arch/loongson/loongson/machdep.c
+++ b/sys/arch/loongson/loongson/machdep.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: machdep.c,v 1.16 2010/02/17 17:17:35 jasper Exp $ */
+/* $OpenBSD: machdep.c,v 1.17 2010/03/02 20:54:51 miod Exp $ */
/*
* Copyright (c) 2009, 2010 Miodrag Vallat.
@@ -155,10 +155,12 @@ struct bonito_flavour {
extern const struct platform fuloong_platform;
extern const struct platform gdium_platform;
+extern const struct platform lynloong_platform;
extern const struct platform yeeloong_platform;
const struct bonito_flavour bonito_flavours[] = {
/* Lemote Fuloong 2F mini-PC */
+ /* how different is LM6003 ? */
{ "LM6004", &fuloong_platform },
/* EMTEC Gdium Liberty 1000 */
{ "Gdium", &gdium_platform },
@@ -167,6 +169,8 @@ const struct bonito_flavour bonito_flavours[] = {
/* supposedly Lemote Yeeloong 10.1" netbook, but those found so far
report themselves as LM8089 */
{ "LM8101", &yeeloong_platform },
+ /* Lemote Lynloong all-in-one computer */
+ { "LM9001", &lynloong_platform },
{ NULL }
};
diff --git a/sys/arch/loongson/loongson/yeeloong_machdep.c b/sys/arch/loongson/loongson/yeeloong_machdep.c
index d413711f458..5d25381f039 100644
--- a/sys/arch/loongson/loongson/yeeloong_machdep.c
+++ b/sys/arch/loongson/loongson/yeeloong_machdep.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: yeeloong_machdep.c,v 1.10 2010/03/01 09:29:37 otto Exp $ */
+/* $OpenBSD: yeeloong_machdep.c,v 1.11 2010/03/02 20:54:51 miod Exp $ */
/*
* Copyright (c) 2009, 2010 Miodrag Vallat.
@@ -17,7 +17,8 @@
*/
/*
- * Lemote Fuloong 2F and Yeeloong specific code and configuration data.
+ * Lemote {Fu,Lyn,Yee}loong specific code and configuration data.
+ * (this file really ought to be named lemote_machdep.c by now)
*/
#include <sys/param.h>
@@ -85,8 +86,26 @@ const struct legacy_io_range fuloong_legacy_ranges[] = {
{ 0x376, 0x376 },
{ 0x3f6, 0x3f6 },
/* com */
- { IO_COM1, IO_COM1 + 8 },
+ { IO_COM1, IO_COM1 + 8 }, /* IR port */
+ { IO_COM2, IO_COM2 + 8 }, /* serial port */
+
+ { 0 }
+};
+
+const struct legacy_io_range lynloong_legacy_ranges[] = {
+ /* isa */
+ { IO_DMAPG + 4, IO_DMAPG + 4 },
+ /* mcclock */
+ { IO_RTC, IO_RTC + 1 },
+ /* pciide */
+ { 0x170, 0x170 + 7 },
+ { 0x1f0, 0x1f0 + 7 },
+ { 0x376, 0x376 },
+ { 0x3f6, 0x3f6 },
+#if 0 /* no external connector */
+ /* com */
{ IO_COM2, IO_COM2 + 8 },
+#endif
{ 0 }
};
@@ -125,6 +144,21 @@ const struct platform fuloong_platform = {
.reset = lemote_reset
};
+const struct platform lynloong_platform = {
+ .system_type = LOONGSON_LYNLOONG,
+ .vendor = "Lemote",
+ .product = "Lynloong",
+
+ .bonito_config = &lemote_bonito,
+ .legacy_io_ranges = lynloong_legacy_ranges,
+
+ .setup = fuloong_setup,
+ .device_register = lemote_device_register,
+
+ .powerdown = fuloong_powerdown,
+ .reset = lemote_reset
+};
+
const struct platform yeeloong_platform = {
.system_type = LOONGSON_YEELOONG,
.vendor = "Lemote",
diff --git a/sys/arch/mips64/include/archtype.h b/sys/arch/mips64/include/archtype.h
index e24f352ad67..55d5d45efd9 100644
--- a/sys/arch/mips64/include/archtype.h
+++ b/sys/arch/mips64/include/archtype.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: archtype.h,v 1.10 2010/02/11 20:13:11 otto Exp $ */
+/* $OpenBSD: archtype.h,v 1.11 2010/03/02 20:54:51 miod Exp $ */
/*
* Copyright (c) 1997-2004 Opsycon AB, Sweden (www.opsycon.se)
*
@@ -81,6 +81,7 @@
#define LOONGSON_YEELOONG 0x0061 /* Lemote Yeeloong */
#define LOONGSON_GDIUM 0x0062 /* EMTEC Gdium Liberty */
#define LOONGSON_FULOONG 0x0063 /* Lemote Fuloong */
+#define LOONGSON_LYNLOONG 0x0064 /* Lemote Lynloong */
#define MISC_CLASS 0x00f0 /* Misc machines... */
#define LAGUNA 0x00f1 /* Heurikon Laguna VME board */