[PATCH v3 0/8] phy: rockchip-usb: correct pll handling and usb-uart

Heiko Stübner heiko at sntech.de
Wed Dec 2 07:32:13 PST 2015


Hi Kishon,

Am Donnerstag, 19. November 2015, 22:22:21 schrieb Heiko Stuebner:
> changes in v3:
> - rebase on top of Julias of_node_put fix
> - address comments from Kishon Vijay Abraham
>   - position of the devm_action in the first patch
>   - separate compatible-addition into separate patch
>   - don't rephrase comment when moving stuff around
> - address Doug's comment and keep clk-tree change and assigned-clocks
>   setting together
> - add Doug's review-tag to patches 5,6,7
> changes in v2:
> - add Doug's review-tag to patches 1 and 3
> - address comment and add the missing transistional rk_phy->base
>   assignment in patch2

do you have any further comments for this series?


Thanks
Heiko

> Patch 1 might be nice to go in as fix together with Julia's patch?
> 
> Patches 2-7 fix a long-standing issue with the clock-tree of Rockchip SoCs
> namely our ignorance of the usbphy-internal pll that creates the needed
> 480MHz but is also a supply-clock back to the core clock-controller in
> Rockchip SoCs.
> 
> Till now that was worked around using a virtual clock in the cru itself,
> but that is of course ignorant of other parts then disabling the phy
> behind the cru's back, thus breaking potential users of these clocks.
> 
> 
> Patch 8, while not associated with the new pll handling, also builds
> on the groundwork introduced there and adds support for the function
> repurposing one of the phys as passthrough for uart-data. This enables
> attaching a ttl converter to the D+ and D- pins of an usb cable to
> receive uart data this way, when it is not really possible to attach
> a regular serial console to a board.
> 
> One point of critique in my first iteration [0] of this was, that
> due to when the reconfiguration happens we may miss parts of the logs
> when earlycon is enabled. So far early_initcall gets used as the
> unflattened devicetree is necessary to set this up. Doing this for
> example in the early_param directly would require parsing the flattened
> devicetree to get needed nodes and properties.
> 
> I still maintain that if you're working on anything before smp-bringup
> you should use a real dev-board instead or try to solder uart cables
> on hopefully available test-points :-) .
> 
> 
> In any case, if patch 8 causes to much headache, it could be dropped
> to not hinder the earlier 7 patches.
> 
> [0] http://comments.gmane.org/gmane.linux.ports.arm.rockchip/715
> 
> Heiko Stuebner (8):
>   phy: rockchip-usb: fix clock get-put mismatch
>   phy: rockchip-usb: introduce a common data-struct for the device
>   phy: rockchip-usb: move per-phy init into a separate function
>   phy: rockchip-usb: add compatible values for rk3066a and rk3188
>   phy: rockchip-usb: expose the phy-internal PLLs
>   ARM: dts: rockchip: add clock-cells for usb phy nodes
>   clk: rockchip: fix usbphy-related clocks
>   phy: rockchip-usb: add handler for usb-uart functionality
> 
>  .../devicetree/bindings/phy/rockchip-usb-phy.txt   |   6 +-
>  Documentation/kernel-parameters.txt                |   6 +
>  arch/arm/boot/dts/rk3066a.dtsi                     |   2 +
>  arch/arm/boot/dts/rk3188.dtsi                      |   2 +
>  arch/arm/boot/dts/rk3288-veyron.dtsi               |   2 +-
>  arch/arm/boot/dts/rk3288.dtsi                      |   3 +
>  drivers/clk/rockchip/clk-rk3188.c                  |  11 +-
>  drivers/clk/rockchip/clk-rk3288.c                  |  16 +-
>  drivers/phy/phy-rockchip-usb.c                     | 458
> ++++++++++++++++++--- 9 files changed, 417 insertions(+), 89 deletions(-)




More information about the Linux-rockchip mailing list