i2c: mv64xxx: Set bus frequency to 100kHz if clock-frequency is not provided

This commit adds checking whether clock-frequency property acquisition
has succeeded. If not, the frequency is set to 100kHz by default.

The Device Tree binding documentation is updated accordingly.

Based on the intials patches from Zbigniew Bodek

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Zbigniew Bodek <zbb@semihalf.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
This commit is contained in:
Gregory CLEMENT
2013-06-21 15:32:06 +02:00
committed by Wolfram Sang
parent 2f641a8bdb
commit 4c730a06c1
2 changed files with 10 additions and 2 deletions

View File

@@ -578,7 +578,11 @@ mv64xxx_of_config(struct mv64xxx_i2c_data *drv_data,
goto out;
}
tclk = clk_get_rate(drv_data->clk);
of_property_read_u32(np, "clock-frequency", &bus_freq);
rc = of_property_read_u32(np, "clock-frequency", &bus_freq);
if (rc)
bus_freq = 100000; /* 100kHz by default */
if (!mv64xxx_find_baud_factors(bus_freq, tclk,
&drv_data->freq_n, &drv_data->freq_m)) {
rc = -EINVAL;