changeset: 10389:7516fd47bc5950fc4d30b2626872529fc9ec2bc0
tag: tip
user: jimix@xxxxxxxxxxxxxxxxxxxxx
date: Thu May 25 15:42:29 2006 -0400
files: xen/arch/ppc/Rules.mk xen/arch/ppc/boot_of.c xen/arch/ppc/setup.c
xen/arch/ppc/uart.h xen/drivers/char/Makefile xen/drivers/char/pmac_zilog.c
xen/include/asm-ppc/uart.h
description:
[ppc] make zilog optional and some other cleanups
- pman_zilog is configd only for PPC
- make uart.h local to arch/ppc
- Zilog does not use parse_parity()
diff -r 834543106cfc1e1e67da1995d22cd771cc98a2e5 -r
7516fd47bc5950fc4d30b2626872529fc9ec2bc0 xen/arch/ppc/Rules.mk
--- a/xen/arch/ppc/Rules.mk Thu May 25 15:39:05 2006 -0400
+++ b/xen/arch/ppc/Rules.mk Thu May 25 15:42:29 2006 -0400
@@ -1,4 +1,5 @@ HAS_PPC64 := y
HAS_PPC64 := y
+pmac_zilog := y
CC := $(CROSS_COMPILE)gcc
LD := $(CROSS_COMPILE)ld
@@ -12,6 +13,7 @@ CFLAGS += -msoft-float -O2
CFLAGS += -msoft-float -O2
CFLAGS-$(debug) += -O0 # last one wins
CFLAGS-$(papr_vterm) += -DPAPR_VDEVICE -DPAPR_VTERM
+CFLAGS-$(pmac_zilog) += -DPMAC_ZILOG
#
# command to embed a binary inside a .o
diff -r 834543106cfc1e1e67da1995d22cd771cc98a2e5 -r
7516fd47bc5950fc4d30b2626872529fc9ec2bc0 xen/arch/ppc/boot_of.c
--- a/xen/arch/ppc/boot_of.c Thu May 25 15:39:05 2006 -0400
+++ b/xen/arch/ppc/boot_of.c Thu May 25 15:42:29 2006 -0400
@@ -24,12 +24,11 @@
#include <xen/compile.h>
#include <xen/spinlock.h>
#include <xen/serial.h>
+#include <xen/string.h>
#include <public/of-devtree.h>
#include <asm/page.h>
#include <asm/io.h>
-#include <xen/string.h>
-#include <xen/serial.h>
-#include <asm-ppc/uart.h>
+#include "uart.h"
#include "exceptions.h"
static ulong of_vec;
@@ -42,8 +41,10 @@ struct uart uarts[] = {
struct uart uarts[] = {
{ .type = ns16550, .uart_name = "ns16550", .p_sign = "isa",
.gp_sign = "ht", .uart_init_func = ns16550_init },
+#ifdef PMAC_ZILOG
{ .type = pmac_zilog, .uart_name = "zilog", .p_sign = "escc",
.gp_sign = "mac-io", .uart_init_func = pmac_zilog_init },
+#endif
};
struct platform_serial_port global_serial_port;
diff -r 834543106cfc1e1e67da1995d22cd771cc98a2e5 -r
7516fd47bc5950fc4d30b2626872529fc9ec2bc0 xen/arch/ppc/setup.c
--- a/xen/arch/ppc/setup.c Thu May 25 15:39:05 2006 -0400
+++ b/xen/arch/ppc/setup.c Thu May 25 15:42:29 2006 -0400
@@ -37,7 +37,7 @@
#include <asm/cache.h>
#include <asm/debugger.h>
#include <asm/delay.h>
-#include <asm-ppc/uart.h>
+#include "uart.h"
#include "exceptions.h"
#define DEBUG
diff -r 834543106cfc1e1e67da1995d22cd771cc98a2e5 -r
7516fd47bc5950fc4d30b2626872529fc9ec2bc0 xen/drivers/char/Makefile
--- a/xen/drivers/char/Makefile Thu May 25 15:39:05 2006 -0400
+++ b/xen/drivers/char/Makefile Thu May 25 15:42:29 2006 -0400
@@ -1,6 +1,6 @@ obj-y += console.o
obj-y += console.o
obj-y += ns16550.o
-obj-y += pmac_zilog.o
+obj-$(pmac_zilog) += pmac_zilog.o
obj-y += serial.o
# Object file contains changeset and compiler information.
diff -r 834543106cfc1e1e67da1995d22cd771cc98a2e5 -r
7516fd47bc5950fc4d30b2626872529fc9ec2bc0 xen/drivers/char/pmac_zilog.c
--- a/xen/drivers/char/pmac_zilog.c Thu May 25 15:39:05 2006 -0400
+++ b/xen/drivers/char/pmac_zilog.c Thu May 25 15:42:29 2006 -0400
@@ -410,7 +410,6 @@ void pmac_zilog_init(int index, struct n
{
uaps[index].port.baud = defaults->baud;
uaps[index].port.data_bits = defaults->data_bits;
- uaps[index].port.parity = parse_parity_char(defaults->parity);
uaps[index].port.stop_bits = defaults->stop_bits;
uaps[index].port.irq = defaults->irq;
uaps[index].port.io_base = defaults->io_base;
diff -r 834543106cfc1e1e67da1995d22cd771cc98a2e5 -r
7516fd47bc5950fc4d30b2626872529fc9ec2bc0 xen/arch/ppc/uart.h
--- /dev/null Thu Jan 1 00:00:00 1970 +0000
+++ b/xen/arch/ppc/uart.h Thu May 25 15:42:29 2006 -0400
@@ -0,0 +1,22 @@
+#ifndef _UART_H
+#define _UART_H
+#include <xen/serial.h>
+
+enum uart_type { ns16550 = 1, pmac_zilog = 2 };
+
+struct uart {
+ enum uart_type type;
+ char *uart_name;
+ char *p_sign; // parernt directory signature
+ char *gp_sign; // grandparent directory signature
+ void (* uart_init_func) (int i, struct ns16550_defaults * init_struct);
+};
+
+struct platform_serial_port {
+ unsigned long uart_io_base;
+ struct uart *uart_p;
+ u32 interrupts;
+ u32 clock;
+ u32 baud;
+};
+#endif /* #ifndef _UART_H */
diff -r 834543106cfc1e1e67da1995d22cd771cc98a2e5 -r
7516fd47bc5950fc4d30b2626872529fc9ec2bc0 xen/include/asm-ppc/uart.h
--- a/xen/include/asm-ppc/uart.h Thu May 25 15:39:05 2006 -0400
+++ /dev/null Thu Jan 1 00:00:00 1970 +0000
@@ -1,22 +0,0 @@
-#ifndef _UART_H
-#define _UART_H
-#include <xen/serial.h>
-
-enum uart_type { ns16550 = 1, pmac_zilog = 2 };
-
-struct uart {
- enum uart_type type;
- char *uart_name;
- char *p_sign; // parernt directory signature
- char *gp_sign; // grandparent directory signature
- void (* uart_init_func) (int i, struct ns16550_defaults * init_struct);
-};
-
-struct platform_serial_port {
- unsigned long uart_io_base;
- struct uart *uart_p;
- u32 interrupts;
- u32 clock;
- u32 baud;
-};
-#endif /* #ifndef _UART_H */
_______________________________________________
Xen-ppc-devel mailing list
Xen-ppc-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ppc-devel
|