lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 24 Nov 2014 21:22:24 +0200
From:	Grygorii Strashko <grygorii.strashko@...com>
To:	Mike Looijmans <info@...osoftware.com>,
	Uwe Kleine-König 
	<u.kleine-koenig@...gutronix.de>
CC:	Wolfram Sang <wsa@...-dreams.de>, <linux-i2c@...r.kernel.org>,
	<linux-kernel@...r.kernel.org>, Sekhar Nori <nsekhar@...com>,
	Kevin Hilman <khilman@...prootsystems.com>,
	Santosh Shilimkar <ssantosh@...nel.org>,
	Murali Karicheri <m-karicheri2@...com>,
	Ben Gardiner <bengardiner@...ometrics.ca>,
	Mike Looijmans <milo-software@...rs.sourceforge.net>
Subject: Re: [5/5] i2c: davinci: use ICPFUNC to toggle I2C as gpio for bus
 recovery

On 11/24/2014 08:13 PM, Mike Looijmans wrote:
> On 24-11-2014 14:15, Grygorii Strashko wrote:
>> Hi Uwe,
>> On 11/23/2014 07:04 PM, Uwe Kleine-König wrote:
>>> On Thu, Nov 20, 2014 at 12:03:08PM +0200, Grygorii Strashko wrote:
>>>> @@ -664,6 +759,7 @@ static int davinci_i2c_probe(struct 
>>>> platform_device *pdev)
>>>>            if (!of_property_read_u32(pdev->dev.of_node, 
>>>> "clock-frequency",
>>>>                &prop))
>>>>                dev->pdata->bus_freq = prop / 1000;
>>>> +        dev->pdata->has_pfunc = true;
>>> I don't understand this. Why does this ICPFUNC recovery work if the bus
>>> is probed by oftree, but doesn't if not?
>> I've mentioned this in commit message:
>>   Allow platforms to indicate the presence of the ICPFUNC registers 
>> with a has_pfunc
>>   platform data flag and enable this mode for platforms which supports 
>> DT (da850 and
>>   Keystone 2 are two SoCs which support DT now and they also support 
>> ICPFUNC registers).
>>
>> I'll add proper comment here.
> 
> Just thinking: What happens if you try to use the ICPFUNC registers on 
> platforms that don't support it? If the answer is "nothing bad", then 
> you might as well assume that if the platform doesn't specify its own 
> GPIOs, you can always try using the ICPFUNC registers to shake the I2C 
> bus. Better to try and fail than to never try at all...
> 

I think the right answer is !"nothing bad".

My intention was to enable this feature by default, because current DT-compatible
SoCs support it and the possibility that older SoCs will migrate to DT is low.
But now I think that the right way will be to add proper compatible strings
and use them to detect if ICPFUNC registers are supported or not.

[...]

regards,
-grygorii
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ