- 22 11月, 2014 1 次提交
-
-
由 Heikki Krogerus 提交于
The users of the old method are now converted to the new one. Signed-off-by: NHeikki Krogerus <heikki.krogerus@linux.intel.com> [ kishon@ti.com : made phy-berlin-usb.c and phy-miphy28lp.c to use the updated devm_phy_create API.] Signed-off-by: NKishon Vijay Abraham I <kishon@ti.com>
-
- 21 11月, 2014 1 次提交
-
-
由 Heikki Krogerus 提交于
Separates registration of the phy and the lookup. The method is copied from clkdev.c, Signed-off-by: NHeikki Krogerus <heikki.krogerus@linux.intel.com> Signed-off-by: NKishon Vijay Abraham I <kishon@ti.com>
-
- 12 11月, 2014 1 次提交
-
-
由 Kishon Vijay Abraham I 提交于
Instead of using the node pointer of the PHY provider and then scanning its child nodes to get a reference to the PHY, directly use the node pointer present in of_phandle_args to get a reference to the PHY. Signed-off-by: NKishon Vijay Abraham I <kishon@ti.com>
-
- 22 7月, 2014 3 次提交
-
-
由 Kishon Vijay Abraham I 提交于
In case of multi-phy PHY providers, each PHY should be modeled as a sub node of the PHY provider. Then each PHY will have a different node pointer (node pointer of sub node) than that of PHY provider. Added this provision in the PHY core. Also fixed all drivers to use the updated API. Signed-off-by: NKishon Vijay Abraham I <kishon@ti.com> Acked-by: NLee Jones <lee.jones@linaro.org>
-
由 Kishon Vijay Abraham I 提交于
Fixed of_phy_provider_lookup to return 'phy_provider' if _of_phy_get passes the node pointer of the sub-node of phy provider node. This is needed when phy provider implements multiple PHYs and each PHY is modelled as the sub-node of PHY provider device node. Signed-off-by: NKishon Vijay Abraham I <kishon@ti.com> Acked-by: NLee Jones <lee.jones@linaro.org>
-
由 Roger Quadros 提交于
Some PHYs can be powered by an external power regulator. e.g. USB_HS PHY on DRA7 SoC. Make the PHY core support a power regulator. Signed-off-by: NRoger Quadros <rogerq@ti.com> Signed-off-by: NKishon Vijay Abraham I <kishon@ti.com>
-
- 12 7月, 2014 1 次提交
-
-
由 Roger Quadros 提交于
Prevent resources from being freed twice in case device_add() call fails within phy_create(). Also use ida_simple_remove() instead of ida_remove() as we had used ida_simple_get() to allocate the ida. Cc: 3.13+ <stable@vger.kernel.org> # 3.13+ Signed-off-by: NRoger Quadros <rogerq@ti.com> Signed-off-by: NKishon Vijay Abraham I <kishon@ti.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 25 4月, 2014 1 次提交
-
-
由 Sergei Shtylyov 提交于
The kernel oopses in phy_lookup() due to 'phy->init_data' being NULL if we register PHYs from a device tree probing driver and then call phy_get() on a device that has no representation in the device tree (e.g. a PCI device). Checking the pointer before dereferening it and skipping an interation if it's NULL prevents this kernel oops. Signed-off-by: NSergei Shtylyov <sergei.shtylyov@cogentembedded.com> Signed-off-by: NKishon Vijay Abraham I <kishon@ti.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 08 3月, 2014 2 次提交
-
-
由 Kamil Debski 提交于
Adding devm_of_phy_get will allow to get phys by supplying a pointer to the struct device_node instead of struct device. Signed-off-by: NKamil Debski <k.debski@samsung.com> Reviewed-by: NTomasz Figa <t.figa@samsung.com> Signed-off-by: NKishon Vijay Abraham I <kishon@ti.com>
-
由 Kamil Debski 提交于
Previously the of_phy_get function took a struct device * and was declared static. It was impossible to call it from another driver and thus it was impossible to get phy defined for a given node. The old function was renamed to _of_phy_get and was left for internal use. of_phy_get function was added and it was exported. The function enables to get a phy for a given device tree node. Signed-off-by: NKamil Debski <k.debski@samsung.com> Reviewed-by: NTomasz Figa <t.figa@samsung.com> Signed-off-by: NKishon Vijay Abraham I <kishon@ti.com>
-
- 19 2月, 2014 2 次提交
-
-
由 Hans de Goede 提交于
The phy-core allows phy_init and phy_power_on to be called multiple times, but before this patch -ENOSUPP from phy_pm_runtime_get_sync would be propagated to the caller for the 2nd and later calls. Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NKishon Vijay Abraham I <kishon@ti.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
由 Hans de Goede 提交于
In various cases errors may be expected, ie probe-deferral or a call to phy_get from a driver where the use of a phy is optional. Rather then adding all sort of complicated checks for this, and/or adding special functions like devm_phy_get_optional, simply don't log an error, and let deciding if get_phy returning an error really should result in a dev_err up to the caller. Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NKishon Vijay Abraham I <kishon@ti.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 05 2月, 2014 2 次提交
-
-
由 Andrew Lunn 提交于
Add devm_phy_optional_get and phy_optional_get, which should be used when the phy is optional. They does not return an error when the phy does not exist, rather they returns NULL, which is considered as a valid phy, but results in NOPs when used with the consumer API. Signed-off-by: NAndrew Lunn <andrew@lunn.ch> Tested-by: NGregory CLEMENT <gregory.clement@free-electrons.com> Acked-by: NKishon Vijay Abraham I <kishon@ti.com> Signed-off-by: NJason Cooper <jason@lakedaemon.net>
-
由 Andrew Lunn 提交于
The common clock framework considers NULL a valid clock reference. This makes handling optional clocks simple, in that if the optional clock is not available, a NULL reference can be used in the place of a real clock, simplifying the clock consumer. Extend this concept to the phy consumer API. A NULL can be passed to the release calls, the phy_init() and phy_exit() calls, and phy_power_on() and phy_power_off() and a NOP is performed. Signed-off-by: NAndrew Lunn <andrew@lunn.ch> Tested-by: NGregory CLEMENT <gregory.clement@free-electrons.com> Acked-by: NKishon Vijay Abraham I <kishon@ti.com> Signed-off-by: NJason Cooper <jason@lakedaemon.net>
-
- 25 12月, 2013 3 次提交
-
-
由 Kishon Vijay Abraham I 提交于
There were a few places where variables are initialized unncessarily. Remove those initializations. Signed-off-by: NKishon Vijay Abraham I <kishon@ti.com>
-
由 Kishon Vijay Abraham I 提交于
Increment 'init_count' only if the 'init' callback succeeded and decrement 'init_count' only if the 'exit' callback succeded. Increment 'power_count' only if 'power_on' callback succeded and if it failed disable the clocks using phy_pm_runtime_put_sync(). Also decrement 'power_count' only if 'power_off' callback succeded and if it failed do not disable the clocks. Reported-by: NGeorge Cherian <george.cherian@ti.com> Signed-off-by: NKishon Vijay Abraham I <kishon@ti.com>
-
由 Felipe Balbi 提交于
In case pm_runtime_get*() fails, it still increments pm usage counter, so we *must* make sure to pm_runtime_put() even in those cases. This patch fixes that mistake the same way usbcore treats those possible failures. Signed-off-by: NFelipe Balbi <balbi@ti.com> Signed-off-by: NKishon Vijay Abraham I <kishon@ti.com>
-
- 11 12月, 2013 2 次提交
-
-
由 Dan Carpenter 提交于
If this was called with a NULL "dev" then it lead to a NULL dereference when we called dev_WARN(). I have changed it to WARN_ON() so that we get a stack dump and can fix the caller. The rest of this patch is just cleanup like returning directly instead of having do-nothing gotos. Using descriptive labels instead of GW-BASIC style "err0" and "err1". I also flipped the order of put_device() and ida_remove() so they are a mirror reflection of the order they were allocated. Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com> Signed-off-by: NKishon Vijay Abraham I <kishon@ti.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
由 Sachin Kamat 提交于
'phy' was not being freed upon error in one of the cases. Adjust the 'goto's to fix this. Signed-off-by: NSachin Kamat <sachin.kamat@linaro.org> Signed-off-by: NKishon Vijay Abraham I <kishon@ti.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 28 9月, 2013 1 次提交
-
-
由 Kishon Vijay Abraham I 提交于
The PHY framework provides a set of APIs for the PHY drivers to create/destroy a PHY and APIs for the PHY users to obtain a reference to the PHY with or without using phandle. For dt-boot, the PHY drivers should also register *PHY provider* with the framework. PHY drivers should create the PHY by passing id and ops like init, exit, power_on and power_off. This framework is also pm runtime enabled. The documentation for the generic PHY framework is added in Documentation/phy.txt and the documentation for dt binding can be found at Documentation/devicetree/bindings/phy/phy-bindings.txt Cc: Tomasz Figa <t.figa@samsung.com> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: NKishon Vijay Abraham I <kishon@ti.com> Acked-by: NFelipe Balbi <balbi@ti.com> Tested-by: NSylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-