Message ID | 20210907094628.RESEND.2.Ibc87b4785709543c998cc852c1edaeb7a08edf5c@changeid (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [RESEND,1/2] clk: rockchip: rk3399: expose PCLK_COREDBG_{B,L} | expand |
On Tue, Sep 07, 2021 at 09:46:37AM -0700, Brian Norris wrote: > Per Documentation/devicetree/bindings/arm/coresight-cpu-debug.txt. > > This IP block can be used for sampling the PC of any given CPU, which is > useful in certain panic scenarios where you can't get the CPU to stop > cleanly (e.g., hard lockup). > > Signed-off-by: Brian Norris <briannorris@chromium.org> Looks good to me, FWIW: Reviewed-by: Leo Yan <leo.yan@linaro.org> > --- > > arch/arm64/boot/dts/rockchip/rk3399.dtsi | 48 ++++++++++++++++++++++++ > 1 file changed, 48 insertions(+) > > diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rockchip/rk3399.dtsi > index 3871c7fd83b0..c8c62637b600 100644 > --- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi > +++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi > @@ -433,6 +433,54 @@ usbdrd_dwc3_1: usb@fe900000 { > }; > }; > > + debug@fe430000 { > + compatible = "arm,coresight-cpu-debug", "arm,primecell"; > + reg = <0 0xfe430000 0 0x1000>; > + clocks = <&cru PCLK_COREDBG_L>; > + clock-names = "apb_pclk"; > + cpu = <&cpu_l0>; > + }; > + > + debug@fe432000 { > + compatible = "arm,coresight-cpu-debug", "arm,primecell"; > + reg = <0 0xfe432000 0 0x1000>; > + clocks = <&cru PCLK_COREDBG_L>; > + clock-names = "apb_pclk"; > + cpu = <&cpu_l1>; > + }; > + > + debug@fe434000 { > + compatible = "arm,coresight-cpu-debug", "arm,primecell"; > + reg = <0 0xfe434000 0 0x1000>; > + clocks = <&cru PCLK_COREDBG_L>; > + clock-names = "apb_pclk"; > + cpu = <&cpu_l2>; > + }; > + > + debug@fe436000 { > + compatible = "arm,coresight-cpu-debug", "arm,primecell"; > + reg = <0 0xfe436000 0 0x1000>; > + clocks = <&cru PCLK_COREDBG_L>; > + clock-names = "apb_pclk"; > + cpu = <&cpu_l3>; > + }; > + > + debug@fe610000 { > + compatible = "arm,coresight-cpu-debug", "arm,primecell"; > + reg = <0 0xfe610000 0 0x1000>; > + clocks = <&cru PCLK_COREDBG_B>; > + clock-names = "apb_pclk"; > + cpu = <&cpu_b0>; > + }; > + > + debug@fe710000 { > + compatible = "arm,coresight-cpu-debug", "arm,primecell"; > + reg = <0 0xfe710000 0 0x1000>; > + clocks = <&cru PCLK_COREDBG_B>; > + clock-names = "apb_pclk"; > + cpu = <&cpu_b1>; > + }; > + > cdn_dp: dp@fec00000 { > compatible = "rockchip,rk3399-cdn-dp"; > reg = <0x0 0xfec00000 0x0 0x100000>; > -- > 2.33.0.153.gba50c8fa24-goog >
On Wed, Sep 8, 2021 at 12:46 AM Brian Norris <briannorris@chromium.org> wrote: > > Per Documentation/devicetree/bindings/arm/coresight-cpu-debug.txt. > > This IP block can be used for sampling the PC of any given CPU, which is > useful in certain panic scenarios where you can't get the CPU to stop > cleanly (e.g., hard lockup). > > Signed-off-by: Brian Norris <briannorris@chromium.org> The datasheet isn't clear on whether the debug subsystem has a separate power domain or not, so that may bug us later. Otherwise, Reviewed-by: Chen-Yu Tsai <wenst@chromium.org>
Hi, On Tue, Sep 7, 2021 at 9:46 AM Brian Norris <briannorris@chromium.org> wrote: > > Per Documentation/devicetree/bindings/arm/coresight-cpu-debug.txt. > > This IP block can be used for sampling the PC of any given CPU, which is > useful in certain panic scenarios where you can't get the CPU to stop > cleanly (e.g., hard lockup). > > Signed-off-by: Brian Norris <briannorris@chromium.org> > --- > > arch/arm64/boot/dts/rockchip/rk3399.dtsi | 48 ++++++++++++++++++++++++ > 1 file changed, 48 insertions(+) > > diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rockchip/rk3399.dtsi > index 3871c7fd83b0..c8c62637b600 100644 > --- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi > +++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi > @@ -433,6 +433,54 @@ usbdrd_dwc3_1: usb@fe900000 { > }; > }; > > + debug@fe430000 { I think your sort order is wrong? 0xfe430000 comes before 0xfe900000? Other than that this looks good to me. Reviewed-by: Douglas Anderson <dianders@chromium.org>
On Wed, Sep 8, 2021 at 8:10 AM Doug Anderson <dianders@chromium.org> wrote: > On Tue, Sep 7, 2021 at 9:46 AM Brian Norris <briannorris@chromium.org> wrote: > > --- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi > > +++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi > > @@ -433,6 +433,54 @@ usbdrd_dwc3_1: usb@fe900000 { > > }; > > }; > > > > + debug@fe430000 { > > I think your sort order is wrong? 0xfe430000 comes before 0xfe900000? Yep... In attempt to explain my own brain: perhaps I assumed the USB-related nodes must be uninterrupted, which caused my sorting eyes to skip over. v2 is coming. Thanks, Brian
diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rockchip/rk3399.dtsi index 3871c7fd83b0..c8c62637b600 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi @@ -433,6 +433,54 @@ usbdrd_dwc3_1: usb@fe900000 { }; }; + debug@fe430000 { + compatible = "arm,coresight-cpu-debug", "arm,primecell"; + reg = <0 0xfe430000 0 0x1000>; + clocks = <&cru PCLK_COREDBG_L>; + clock-names = "apb_pclk"; + cpu = <&cpu_l0>; + }; + + debug@fe432000 { + compatible = "arm,coresight-cpu-debug", "arm,primecell"; + reg = <0 0xfe432000 0 0x1000>; + clocks = <&cru PCLK_COREDBG_L>; + clock-names = "apb_pclk"; + cpu = <&cpu_l1>; + }; + + debug@fe434000 { + compatible = "arm,coresight-cpu-debug", "arm,primecell"; + reg = <0 0xfe434000 0 0x1000>; + clocks = <&cru PCLK_COREDBG_L>; + clock-names = "apb_pclk"; + cpu = <&cpu_l2>; + }; + + debug@fe436000 { + compatible = "arm,coresight-cpu-debug", "arm,primecell"; + reg = <0 0xfe436000 0 0x1000>; + clocks = <&cru PCLK_COREDBG_L>; + clock-names = "apb_pclk"; + cpu = <&cpu_l3>; + }; + + debug@fe610000 { + compatible = "arm,coresight-cpu-debug", "arm,primecell"; + reg = <0 0xfe610000 0 0x1000>; + clocks = <&cru PCLK_COREDBG_B>; + clock-names = "apb_pclk"; + cpu = <&cpu_b0>; + }; + + debug@fe710000 { + compatible = "arm,coresight-cpu-debug", "arm,primecell"; + reg = <0 0xfe710000 0 0x1000>; + clocks = <&cru PCLK_COREDBG_B>; + clock-names = "apb_pclk"; + cpu = <&cpu_b1>; + }; + cdn_dp: dp@fec00000 { compatible = "rockchip,rk3399-cdn-dp"; reg = <0x0 0xfec00000 0x0 0x100000>;
Per Documentation/devicetree/bindings/arm/coresight-cpu-debug.txt. This IP block can be used for sampling the PC of any given CPU, which is useful in certain panic scenarios where you can't get the CPU to stop cleanly (e.g., hard lockup). Signed-off-by: Brian Norris <briannorris@chromium.org> --- arch/arm64/boot/dts/rockchip/rk3399.dtsi | 48 ++++++++++++++++++++++++ 1 file changed, 48 insertions(+)