From: Josh Boyer <jwboyer@linux.vnet.ibm.com>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: linuxppc-dev@ozlabs.org
Subject: Re: [PATCH 16/25] powerpc: EP405 boards support for arch/powerpc
Date: Thu, 6 Dec 2007 21:05:50 -0600 [thread overview]
Message-ID: <20071206210550.520e5131@zod.rchland.ibm.com> (raw)
In-Reply-To: <20071206080127.1F2ACDDED0@ozlabs.org>
On Thu, 06 Dec 2007 19:00:15 +1100
Benjamin Herrenschmidt <benh@kernel.crashing.org> wrote:
>
> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> ---
> Index: linux-work/arch/powerpc/boot/dts/ep405.dts
> ===================================================================
> --- /dev/null 1970-01-01 00:00:00.000000000 +0000
> +++ linux-work/arch/powerpc/boot/dts/ep405.dts 2007-12-03 12:58:45.000000000 +1100
> @@ -0,0 +1,221 @@
> +/*
> + * Device Tree Source for EP405
> + *
> + * Copyright 2007 IBM Corp.
> + * Josh Boyer <jwboyer@linux.vnet.ibm.com>
I still don't think I wrote this ;)
<snip>
> +static struct of_device_id ep405_of_bus[] = {
> + { .compatible = "ibm,plb3", },
> + { .compatible = "ibm,opb", },
> + { .compatible = "ibm,ebc", },
> + {},
> +};
> +
> +static int __init ep405_device_probe(void)
> +{
> + if (!machine_is(ep405))
> + return 0;
> +
> + /* FIXME: do bus probe here */
I should really remove this stupid FIXME from my files so people stop
copying it into theirs ;)
> + of_platform_bus_probe(NULL, ep405_of_bus, NULL);
> +
> + return 0;
> +}
> +device_initcall(ep405_device_probe);
> +
> +static void __init ep405_init_bcsr(void)
> +{
> + const u8 *irq_routing;
> + int i;
> +
> + /* Find the bloody thing & map it */
> + bcsr_node = of_find_compatible_node(NULL, NULL, "ep405-bcsr");
> + if (bcsr_node == NULL) {
> + printk(KERN_ERR "EP405 BCSR not found !\n");
> + return;
> + }
> + bcsr_regs = of_iomap(bcsr_node, 0);
> + if (bcsr_regs == NULL) {
> + printk(KERN_ERR "EP405 BCSR failed to map !\n");
> + return;
> + }
Is there a reason you have bcsr_node and bcsr_regs as static globals
and leave the mapping present? I can't see another use of them outside
of this function, which only gets called once.
> +
> + /* Get the irq-routing property and apply the routing to the CPLD */
> + irq_routing = of_get_property(bcsr_node, "irq-routing", NULL);
> + if (irq_routing == NULL)
> + return;
> + for (i = 0; i < 16; i++) {
> + u8 irq = irq_routing[i];
> + out_8(bcsr_regs + BCSR_XIRQ_SELECT, i);
> + out_8(bcsr_regs + BCSR_XIRQ_ROUTING, irq);
> + }
> + in_8(bcsr_regs + BCSR_XIRQ_SELECT);
> + mb();
> + out_8(bcsr_regs + BCSR_GPIO_IRQ_PAR_CTRL, 0xfe);
> +}
> +
> +static void __init ep405_setup_arch(void)
> +{
> + /* Find & init the BCSR CPLD */
> + ep405_init_bcsr();
> +}
> +
> +static int __init ep405_probe(void)
> +{
> + unsigned long root = of_get_flat_dt_root();
> +
> + if (!of_flat_dt_is_compatible(root, "ep405"))
> + return 0;
> +
> + return 1;
> +}
> +
> +define_machine(ep405) {
> + .name = "EP405",
> + .probe = ep405_probe,
> + .setup_arch = ep405_setup_arch,
> + .progress = udbg_progress,
> + .init_IRQ = uic_init_tree,
> + .get_irq = uic_get_irq,
> + .calibrate_decr = generic_calibrate_decr,
> +};
josh
next prev parent reply other threads:[~2007-12-07 3:08 UTC|newest]
Thread overview: 60+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-12-06 7:59 [PATCH 0/25] powerpc: 4xx PCI, PCI-X and PCI-Express support among others Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 2/25] powerpc: Merge pci_process_bridge_OF_ranges() Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 1/25] powerpc: Make isa_mem_base common to 32 and 64 bits Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 3/25] powerpc: Fix powerpc 32 bits resource fixup for 64 bits resources Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 4/25] powerpc: Reworking machine check handling and Fix 440/440A Benjamin Herrenschmidt
2007-12-10 17:59 ` Josh Boyer
2007-12-10 20:33 ` Benjamin Herrenschmidt
2007-12-10 20:44 ` Josh Boyer
2007-12-06 8:00 ` [PATCH 5/25] powerpc: Add xmon function to dump 44x TLB Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 6/25] powerpc: Change 32 bits PCI message about resource allocation Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 7/25] powerpc: Add of_translate_dma_address Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 8/25] powerpc: Improve support for 4xx indirect DCRs Benjamin Herrenschmidt
2007-12-07 2:19 ` Josh Boyer
2007-12-10 4:54 ` Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 9/25] powerpc: 4xx PLB to PCI-X support Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 10/25] powerpc: 4xx PLB to PCI 2.x support Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 11/25] powerpc: 4xx PLB to PCI Express support Benjamin Herrenschmidt
2007-12-06 9:26 ` Stefan Roese
2007-12-06 22:21 ` Benjamin Herrenschmidt
2007-12-07 7:02 ` Stefan Roese
2007-12-09 7:07 ` Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 12/25] powerpc: PCI support for 4xx Ebony board Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 13/25] powerpc: Remove useless volatiles in udbg_16550.c Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 14/25] powerpc: Add early udbg support for 40x processors Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 15/25] powerpc: early debug forces console log level to max Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 16/25] powerpc: EP405 boards support for arch/powerpc Benjamin Herrenschmidt
2007-12-07 3:05 ` Josh Boyer [this message]
2007-12-09 6:57 ` Benjamin Herrenschmidt
2007-12-10 4:56 ` Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 17/25] powerpc: Add PCI to Walnut platform Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 18/25] powerpc: Base support for 440GX Taishan eval board Benjamin Herrenschmidt
2007-12-06 19:56 ` Josh Boyer
2007-12-07 3:17 ` Josh Boyer
2007-12-09 7:01 ` Benjamin Herrenschmidt
2007-12-09 17:24 ` Olof Johansson
2007-12-09 18:24 ` Josh Boyer
2007-12-09 20:20 ` Olof Johansson
2007-12-09 19:58 ` Benjamin Herrenschmidt
2007-12-10 1:29 ` Josh Boyer
2007-12-09 23:43 ` CC munging by mailman lists (Was: Re: [PATCH 18/25] powerpc: Base support for 440GX Taishan eval board) Stephen Rothwell
2007-12-10 5:39 ` [PATCH 18/25] powerpc: Base support for 440GX Taishan eval board Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 20/25] powerpc: Wire up 440EP USB controlle support to Bamboo board Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 19/25] powerpc: Wire up PCI on " Benjamin Herrenschmidt
2007-12-07 3:19 ` Josh Boyer
2007-12-09 7:03 ` Benjamin Herrenschmidt
2007-12-10 5:40 ` Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 21/25] powerpc: Adds decoding of 440SPE memory size to boot wrapper library Benjamin Herrenschmidt
2007-12-07 3:22 ` Josh Boyer
2007-12-09 7:04 ` Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 22/25] powerpc: Add mfspr/mtspr inline macros to 4xx bootwrapper Benjamin Herrenschmidt
2007-12-06 8:00 ` [PATCH 23/25] powerpc: Rework 4xx clock probing in boot wrapper Benjamin Herrenschmidt
2007-12-07 3:27 ` Josh Boyer
2007-12-09 7:05 ` Benjamin Herrenschmidt
2007-12-10 5:43 ` Benjamin Herrenschmidt
2007-12-10 11:54 ` Josh Boyer
2007-12-06 8:00 ` [PATCH 24/25] powerpc: Base support for 440SPe "Katmai" eval board Benjamin Herrenschmidt
2007-12-06 9:42 ` Stefan Roese
2007-12-06 8:00 ` [PATCH 25/25] powerpc: 4xx PCI-E Link setup improvements Benjamin Herrenschmidt
2007-12-06 13:32 ` [PATCH 0/25] powerpc: 4xx PCI, PCI-X and PCI-Express support among others Josh Boyer
2007-12-06 20:25 ` Josh Boyer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20071206210550.520e5131@zod.rchland.ibm.com \
--to=jwboyer@linux.vnet.ibm.com \
--cc=benh@kernel.crashing.org \
--cc=linuxppc-dev@ozlabs.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).