From: Grant Likely Date: Sat, 22 May 2010 06:36:56 +0000 (-0600) Subject: Merge remote branch 'origin' into secretlab/next-devicetree X-Git-Tag: v2.6.35-rc1~420^2 X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?p=pandora-kernel.git;a=commitdiff_plain;h=cf9b59e9d3e008591d1f54830f570982bb307a0d Merge remote branch 'origin' into secretlab/next-devicetree Merging in current state of Linus' tree to deal with merge conflicts and build failures in vio.c after merge. Conflicts: drivers/i2c/busses/i2c-cpm.c drivers/i2c/busses/i2c-mpc.c drivers/net/gianfar.c Also fixed up one line in arch/powerpc/kernel/vio.c to use the correct node pointer. Signed-off-by: Grant Likely --- cf9b59e9d3e008591d1f54830f570982bb307a0d diff --cc arch/powerpc/kernel/vio.c index 4cdd0f6df8bf,9ce7b62dc3a4..00b9436f7652 --- a/arch/powerpc/kernel/vio.c +++ b/arch/powerpc/kernel/vio.c @@@ -1320,6 -1325,23 +1325,23 @@@ static ssize_t devspec_show(struct devi return sprintf(buf, "%s\n", of_node ? of_node->full_name : "none"); } + static ssize_t modalias_show(struct device *dev, struct device_attribute *attr, + char *buf) + { + const struct vio_dev *vio_dev = to_vio_dev(dev); + struct device_node *dn; + const char *cp; + - dn = dev->archdata.of_node; ++ dn = dev->of_node; + if (!dn) + return -ENODEV; + cp = of_get_property(dn, "compatible", NULL); + if (!cp) + return -ENODEV; + + return sprintf(buf, "vio:T%sS%s\n", vio_dev->type, cp); + } + static struct device_attribute vio_dev_attrs[] = { __ATTR_RO(name), __ATTR_RO(devspec), diff --cc drivers/i2c/busses/i2c-cpm.c index 7637e1234142,16948db38973..b02b4533651d --- a/drivers/i2c/busses/i2c-cpm.c +++ b/drivers/i2c/busses/i2c-cpm.c @@@ -440,8 -440,8 +440,8 @@@ static int __devinit cpm_i2c_setup(stru init_waitqueue_head(&cpm->i2c_wait); - cpm->irq = of_irq_to_resource(ofdev->node, 0, NULL); + cpm->irq = of_irq_to_resource(ofdev->dev.of_node, 0, NULL); - if (cpm->irq == NO_IRQ) + if (!cpm->irq) return -EINVAL; /* Install interrupt handler. */ diff --cc drivers/i2c/busses/i2c-mpc.c index 791b71f46f7b,e86cef300c7d..df00eb1f11f9 --- a/drivers/i2c/busses/i2c-mpc.c +++ b/drivers/i2c/busses/i2c-mpc.c @@@ -567,8 -567,8 +567,8 @@@ static int __devinit fsl_i2c_probe(stru goto fail_map; } - i2c->irq = irq_of_parse_and_map(op->node, 0); + i2c->irq = irq_of_parse_and_map(op->dev.of_node, 0); - if (i2c->irq != NO_IRQ) { /* i2c->irq = NO_IRQ implies polling */ + if (i2c->irq) { /* no i2c->irq implies polling */ result = request_irq(i2c->irq, mpc_i2c_isr, IRQF_SHARED, "i2c-mpc", i2c); if (result < 0) { diff --cc drivers/mtd/maps/physmap_of.c index 4147fe328c55,36dbcee1ac29..ba124baa646d --- a/drivers/mtd/maps/physmap_of.c +++ b/drivers/mtd/maps/physmap_of.c @@@ -177,10 -219,9 +219,9 @@@ static int __devinit of_flash_probe(str const struct of_device_id *match) { #ifdef CONFIG_MTD_PARTITIONS - static const char *part_probe_types[] - = { "cmdlinepart", "RedBoot", NULL }; + const char **part_probe_types; #endif - struct device_node *dp = dev->node; + struct device_node *dp = dev->dev.of_node; struct resource res; struct of_flash *info; const char *probe_type = match->data; diff --cc drivers/net/gianfar.c index c3b292a31328,c6791cd4ee05..1830f3199cb5 --- a/drivers/net/gianfar.c +++ b/drivers/net/gianfar.c @@@ -3054,16 -3167,12 +3167,14 @@@ MODULE_DEVICE_TABLE(of, gfar_match) /* Structure for a device driver */ static struct of_platform_driver gfar_driver = { - .name = "fsl-gianfar", - .match_table = gfar_match, - + .driver = { + .name = "fsl-gianfar", + .owner = THIS_MODULE, + .pm = GFAR_PM_OPS, + .of_match_table = gfar_match, + }, .probe = gfar_probe, .remove = gfar_remove, - .suspend = gfar_legacy_suspend, - .resume = gfar_legacy_resume, - .driver.pm = GFAR_PM_OPS, }; static int __init gfar_init(void) diff --cc drivers/serial/uartlite.c index 81073e3426e0,e6639a95d276..8acccd564378 --- a/drivers/serial/uartlite.c +++ b/drivers/serial/uartlite.c @@@ -597,11 -597,11 +597,11 @@@ ulite_of_probe(struct of_device *op, co return rc; } - irq = irq_of_parse_and_map(op->node, 0); + irq = irq_of_parse_and_map(op->dev.of_node, 0); - id = of_get_property(op->node, "port-number", NULL); + id = of_get_property(op->dev.of_node, "port-number", NULL); - return ulite_assign(&op->dev, id ? *id : -1, res.start+3, irq); + return ulite_assign(&op->dev, id ? *id : -1, res.start, irq); } static int __devexit ulite_of_remove(struct of_device *op)