forked from Minki/linux
[POWERPC] of_serial: Fix possible null dereference.
The of_serial driver queries the current-speed property and attempts to use it to register the custom_divisor property of the uart_port. However, if current-speed is not set, then this code will dereference a bad pointer. The fix is to only set custom_divisor when a current-speed property appears in the device tree. Signed-off-by: Stephen Neuendorffer <stephen.neuendorffer@xilinx.com> Signed-off-by: John Linn <john.linn@xilinx.com> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
This commit is contained in:
parent
5f91925c89
commit
19a74263f4
@ -56,7 +56,9 @@ static int __devinit of_platform_serial_setup(struct of_device *ofdev,
|
|||||||
port->flags = UPF_SHARE_IRQ | UPF_BOOT_AUTOCONF | UPF_IOREMAP
|
port->flags = UPF_SHARE_IRQ | UPF_BOOT_AUTOCONF | UPF_IOREMAP
|
||||||
| UPF_FIXED_PORT;
|
| UPF_FIXED_PORT;
|
||||||
port->dev = &ofdev->dev;
|
port->dev = &ofdev->dev;
|
||||||
port->custom_divisor = *clk / (16 * (*spd));
|
/* If current-speed was set, then try not to change it. */
|
||||||
|
if (spd)
|
||||||
|
port->custom_divisor = *clk / (16 * (*spd));
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user