[PATCH 3/6] mv643xx.c: Add basic device tree support.
From: Ben Dooks <hidden>
Date: 2012-07-31 14:30:00
On 31/07/12 08:14, Arnaud Patard (Rtp) wrote:
Ian Molton[off-list ref] writes: Hi, [...]quoted
@@ -2873,7 +2913,31 @@ static int mv643xx_eth_probe(struct platform_device *pdev) struct resource *res; int err; - pd = pdev->dev.platform_data; + if (pdev->dev.of_node) { + struct device_node *np = NULL; + + /* when all users of this driver use FDT, we can remove this */ + pd = kzalloc(sizeof(*pd), GFP_ATOMIC); + if (!pd) { + dev_dbg(&pdev->dev, "Could not allocate platform data\n"); + return -ENOMEM; + } + + of_property_read_u32(pdev->dev.of_node, + "port_number",&pd->port_number); + of_property_read_u32(pdev->dev.of_node, + "phy_addr",&pd->phy_addr);I guess we need something for tx_csum_limit in the device tree too. It's important for kirkwood and dove.
Is this something for all kirkwood devices? I think the best way of doing this is to give the driver a new device-tree name and having it set this field in the init sequence. However we could also do with some of these as dt parameters just in case people want to try and alter them for their own systems. -- Ben Dooks http://www.codethink.co.uk/ Senior Engineer Codethink - Providing Genius