Skip to content

Commit

Permalink
Merge branch 'for-2.6.25' of master.kernel.org:/pub/scm/linux/kernel/…
Browse files Browse the repository at this point in the history
…git/jwboyer/powerpc-4xx
  • Loading branch information
Paul Mackerras committed Feb 7, 2008
2 parents 52b8048 + 256ae6a commit 5ab3e84
Show file tree
Hide file tree
Showing 20 changed files with 2,102 additions and 64 deletions.
42 changes: 42 additions & 0 deletions Documentation/powerpc/booting-without-of.txt
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ Table of Contents
n) 4xx/Axon EMAC ethernet nodes
o) Xilinx IP cores
p) Freescale Synchronous Serial Interface
q) USB EHCI controllers

VII - Specifying interrupt information for devices
1) interrupts property
Expand Down Expand Up @@ -2577,6 +2578,20 @@ platforms are moved over to use the flattened-device-tree model.
Requred properties:
- current-speed : Baud rate of uartlite

v) Xilinx hwicap

Xilinx hwicap devices provide access to the configuration logic
of the FPGA through the Internal Configuration Access Port
(ICAP). The ICAP enables partial reconfiguration of the FPGA,
readback of the configuration information, and some control over
'warm boots' of the FPGA fabric.

Required properties:
- xlnx,family : The family of the FPGA, necessary since the
capabilities of the underlying ICAP hardware
differ between different families. May be
'virtex2p', 'virtex4', or 'virtex5'.

p) Freescale Synchronous Serial Interface

The SSI is a serial device that communicates with audio codecs. It can
Expand Down Expand Up @@ -2775,6 +2790,33 @@ platforms are moved over to use the flattened-device-tree model.
interrupt-parent = < &ipic >;
};

q) USB EHCI controllers

Required properties:
- compatible : should be "usb-ehci".
- reg : should contain at least address and length of the standard EHCI
register set for the device. Optional platform-dependent registers
(debug-port or other) can be also specified here, but only after
definition of standard EHCI registers.
- interrupts : one EHCI interrupt should be described here.
If device registers are implemented in big endian mode, the device
node should have "big-endian-regs" property.
If controller implementation operates with big endian descriptors,
"big-endian-desc" property should be specified.
If both big endian registers and descriptors are used by the controller
implementation, "big-endian" property can be specified instead of having
both "big-endian-regs" and "big-endian-desc".

Example (Sequoia 440EPx):
ehci@e0000300 {
compatible = "ibm,usb-ehci-440epx", "usb-ehci";
interrupt-parent = <&UIC0>;
interrupts = <1a 4>;
reg = <0 e0000300 90 0 e0000390 70>;
big-endian;
};


More devices will be defined as this spec matures.

VII - Specifying interrupt information for devices
Expand Down
8 changes: 8 additions & 0 deletions arch/powerpc/boot/dts/sequoia.dts
Original file line number Diff line number Diff line change
Expand Up @@ -138,6 +138,14 @@
interrupts = <15 8>;
};

USB0: ehci@e0000300 {
compatible = "ibm,usb-ehci-440epx", "usb-ehci";
interrupt-parent = <&UIC0>;
interrupts = <1a 4>;
reg = <0 e0000300 90 0 e0000390 70>;
big-endian;
};

POB0: opb {
compatible = "ibm,opb-440epx", "ibm,opb";
#address-cells = <1>;
Expand Down
1 change: 1 addition & 0 deletions arch/powerpc/platforms/40x/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ config WALNUT
default y
select 405GP
select PCI
select OF_RTC
help
This option enables support for the IBM PPC405GP evaluation board.

Expand Down
2 changes: 1 addition & 1 deletion arch/powerpc/platforms/40x/virtex.c
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ static int __init virtex_probe(void)
{
unsigned long root = of_get_flat_dt_root();

if (!of_flat_dt_is_compatible(root, "xilinx,virtex"))
if (!of_flat_dt_is_compatible(root, "xlnx,virtex"))
return 0;

return 1;
Expand Down
1 change: 1 addition & 0 deletions arch/powerpc/platforms/40x/walnut.c
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@

#include <linux/init.h>
#include <linux/of_platform.h>
#include <linux/rtc.h>

#include <asm/machdep.h>
#include <asm/prom.h>
Expand Down
2 changes: 1 addition & 1 deletion arch/powerpc/platforms/44x/warp.c
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ static int __init pika_dtm_start(void)
}
of_node_put(np);

fpga = ioremap(res.start + 0x20, 4);
fpga = ioremap(res.start, 0x24);
if (fpga == NULL)
return -ENOENT;

Expand Down
5 changes: 3 additions & 2 deletions arch/powerpc/sysdev/dcr.c
Original file line number Diff line number Diff line change
Expand Up @@ -137,5 +137,6 @@ void dcr_unmap(dcr_host_t host, unsigned int dcr_c)
h.token = NULL;
}
EXPORT_SYMBOL_GPL(dcr_unmap);

#endif /* !defined(CONFIG_PPC_DCR_NATIVE) */
#else /* defined(CONFIG_PPC_DCR_NATIVE) */
DEFINE_SPINLOCK(dcr_ind_lock);
#endif /* !defined(CONFIG_PPC_DCR_NATIVE) */
6 changes: 4 additions & 2 deletions drivers/block/xsysace.c
Original file line number Diff line number Diff line change
Expand Up @@ -1202,8 +1202,10 @@ static int __devexit ace_of_remove(struct of_device *op)
}

/* Match table for of_platform binding */
static struct of_device_id __devinit ace_of_match[] = {
{ .compatible = "xilinx,xsysace", },
static struct of_device_id ace_of_match[] __devinitdata = {
{ .compatible = "xlnx,opb-sysace-1.00.b", },
{ .compatible = "xlnx,opb-sysace-1.00.c", },
{ .compatible = "xlnx,xps-sysace-1.00.a", },
{},
};
MODULE_DEVICE_TABLE(of, ace_of_match);
Expand Down
10 changes: 10 additions & 0 deletions drivers/char/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -841,6 +841,16 @@ config DTLK
To compile this driver as a module, choose M here: the
module will be called dtlk.

config XILINX_HWICAP
tristate "Xilinx HWICAP Support"
depends on XILINX_VIRTEX
help
This option enables support for Xilinx Internal Configuration
Access Port (ICAP) driver. The ICAP is used on Xilinx Virtex
FPGA platforms to partially reconfigure the FPGA at runtime.

If unsure, say N.

config R3964
tristate "Siemens R3964 line discipline"
---help---
Expand Down
1 change: 1 addition & 0 deletions drivers/char/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,7 @@ obj-$(CONFIG_EFI_RTC) += efirtc.o
obj-$(CONFIG_SGI_DS1286) += ds1286.o
obj-$(CONFIG_SGI_IP27_RTC) += ip27-rtc.o
obj-$(CONFIG_DS1302) += ds1302.o
obj-$(CONFIG_XILINX_HWICAP) += xilinx_hwicap/
ifeq ($(CONFIG_GENERIC_NVRAM),y)
obj-$(CONFIG_NVRAM) += generic_nvram.o
else
Expand Down
7 changes: 7 additions & 0 deletions drivers/char/xilinx_hwicap/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#
# Makefile for the Xilinx OPB hwicap driver
#

obj-$(CONFIG_XILINX_HWICAP) += xilinx_hwicap_m.o

xilinx_hwicap_m-y := xilinx_hwicap.o fifo_icap.o buffer_icap.o
Loading

0 comments on commit 5ab3e84

Please sign in to comment.