From: Stephen Rothwell <sfr@canb•auug.org.au>
To: Kumar Gala <galak@kernel•crashing.org>
Cc: linux-next@vger•kernel.org, linux-kernel@vger•kernel.org,
Li Yang <leoli@freescale•com>,
Grant Likely <grant.likely@secretlab•ca>
Subject: linux-next: manual merge of the galak tree with Linus' tree
Date: Wed, 26 May 2010 11:23:41 +1000 [thread overview]
Message-ID: <20100526112341.1a808fa5.sfr@canb.auug.org.au> (raw)
Hi Kumar,
Today's linux-next merge of the galak tree got a conflict in
arch/powerpc/sysdev/fsl_msi.c between commit
61c7a080a5a061c976988fd4b844dfb468dda255 ("of: Always use 'struct
device.of_node' to get device node pointer") from Linus' tree and commits
061ca4adfb2e3c986a182fd30f7e939a1ff8d29d ("powerpc/fsl_msi: enable msi
sharing through AMP OSes") and 480599933a69a8a8dc1390c2164e49e20a1593b9
("powerpc/fsl_msi: add removal path and probe failing path") from the
galak tree.
I fixed it up (see below) and can carry the fix for a while.
--
Cheers,
Stephen Rothwell sfr@canb•auug.org.au
diff --cc arch/powerpc/sysdev/fsl_msi.c
index a7be144,f7ca9e6..0000000
--- a/arch/powerpc/sysdev/fsl_msi.c
+++ b/arch/powerpc/sysdev/fsl_msi.c
@@@ -245,11 -293,11 +293,11 @@@ static int __devinit fsl_of_msi_probe(s
msi = kzalloc(sizeof(struct fsl_msi), GFP_KERNEL);
if (!msi) {
dev_err(&dev->dev, "No memory for MSI structure\n");
- err = -ENOMEM;
- goto error_out;
+ return -ENOMEM;
}
+ dev->dev.platform_data = msi;
- msi->irqhost = irq_alloc_host(dev->node, IRQ_HOST_MAP_LINEAR,
+ msi->irqhost = irq_alloc_host(dev->dev.of_node, IRQ_HOST_MAP_LINEAR,
NR_MSI_IRQS, &fsl_msi_host_ops, 0);
if (msi->irqhost == NULL) {
@@@ -298,14 -346,28 +346,28 @@@
err = -EINVAL;
goto error_out;
}
+ offset = 0;
- p = of_get_property(dev->node, "msi-available-ranges", &len);
++ p = of_get_property(dev->dev.of_node, "msi-available-ranges", &len);
+ if (p)
+ offset = *p / IRQS_PER_MSI_REG;
count /= sizeof(u32);
- for (i = 0; i < count / 2; i++) {
- if (i > NR_MSI_REG)
- break;
+ for (i = 0; i < min(count / 2, NR_MSI_REG); i++) {
- virt_msir = irq_of_parse_and_map(dev->node, i);
+ virt_msir = irq_of_parse_and_map(dev->dev.of_node, i);
if (virt_msir != NO_IRQ) {
- set_irq_data(virt_msir, (void *)i);
+ cascade_data = kzalloc(
+ sizeof(struct fsl_msi_cascade_data),
+ GFP_KERNEL);
+ if (!cascade_data) {
+ dev_err(&dev->dev,
+ "No memory for MSI cascade data\n");
+ err = -ENOMEM;
+ goto error_out;
+ }
+ msi->msi_virqs[i] = virt_msir;
+ cascade_data->index = i + offset;
+ cascade_data->msi_data = msi;
+ set_irq_data(virt_msir, (void *)cascade_data);
set_irq_chained_handler(virt_msir, fsl_msi_cascade);
}
}
@@@ -345,12 -413,10 +413,13 @@@ static const struct of_device_id fsl_of
};
static struct of_platform_driver fsl_of_msi_driver = {
- .name = "fsl-msi",
- .match_table = fsl_of_msi_ids,
+ .driver = {
+ .name = "fsl-msi",
+ .owner = THIS_MODULE,
+ .of_match_table = fsl_of_msi_ids,
+ },
.probe = fsl_of_msi_probe,
+ .remove = fsl_of_msi_remove,
};
static __init int fsl_of_msi_init(void)
http://www.canb.auug.org.au/~sfr/
reply other threads:[~2010-05-26 1:23 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=20100526112341.1a808fa5.sfr@canb.auug.org.au \
--to=sfr@canb$(echo .)auug.org.au \
--cc=galak@kernel$(echo .)crashing.org \
--cc=grant.likely@secretlab$(echo .)ca \
--cc=leoli@freescale$(echo .)com \
--cc=linux-kernel@vger$(echo .)kernel.org \
--cc=linux-next@vger$(echo .)kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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