Message ID | 1514202808-29747-4-git-send-email-oleksandrs@mellanox.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Mon, Dec 25, 2017 at 3:53 AM, Oleksandr Shamray <oleksandrs@mellanox.com> wrote: > It has been tested on Mellanox system with BMC equipped with > Aspeed 2520 SoC for programming CPLD devices. > > Signed-off-by: Oleksandr Shamray <oleksandrs@mellanox.com> > Signed-off-by: Jiri Pirko <jiri@mellanox.com> > Acked-by: Rob Herring <robh@kernel.org> > --- > v14->v15 > v13->v14 > v12->v13 > v11->v12 > v10->v11 > v9->v10 > v8->v9 > v7->v8 > Comments pointed by pointed by Joel Stanley <joel.stan@gmail.com> > - Change compatible string to ast2400 and ast2000 > > V6->v7 > Comments pointed by Tobias Klauser <tklauser@distanz.ch> > - Fix spell "Doccumentation" -> "Documentation" > > v5->v6 > Comments pointed by Tobias Klauser <tklauser@distanz.ch> > - Small nit: s/documentation/Documentation/ > > v4->v5 > > V3->v4 > Comments pointed by Rob Herring <robh@kernel.org> > - delete unnecessary "status" and "reg-shift" descriptions in > bndings file > > v2->v3 > Comments pointed by Rob Herring <robh@kernel.org> > - split Aspeed jtag driver and binding to sepatrate patches > - delete unnecessary "status" and "reg-shift" descriptions in > bndings file > --- > .../devicetree/bindings/jtag/aspeed-jtag.txt | 18 ++++++++++++++++++ > 1 files changed, 18 insertions(+), 0 deletions(-) > create mode 100644 Documentation/devicetree/bindings/jtag/aspeed-jtag.txt > > diff --git a/Documentation/devicetree/bindings/jtag/aspeed-jtag.txt b/Documentation/devicetree/bindings/jtag/aspeed-jtag.txt > new file mode 100644 > index 0000000..8cfc610 > --- /dev/null > +++ b/Documentation/devicetree/bindings/jtag/aspeed-jtag.txt > @@ -0,0 +1,18 @@ > +Aspeed JTAG driver for ast2400 and ast2500 SoC > + > +Required properties: > +- compatible: Should be one of > + - "aspeed,ast2400-jtag" > + - "aspeed,ast2500-jtag" > +- reg contains the offset and length of the JTAG memory > + region > +- clocks root clock of bus, should reference the APB clock > +- interrupts should contain JTAG controller interrupt > + > +Example: > +jtag: jtag@1e6e4000 { > + compatible = "aspeed,ast2500-jtag"; > + reg = <0x1e6e4000 0x1c>; > + clocks = <&clk_apb>; We've now got a proper clock driver upstream. Can you update the example to match the newly added bindings? clocks = <&syscon ASPEED_CLK_APB>; Cheers, Joel
On Thu, Jan 11, 2018 at 9:50 AM, Joel Stanley <joel@jms.id.au> wrote: > On Mon, Dec 25, 2017 at 3:53 AM, Oleksandr Shamray <oleksandrs@mellanox.com> wrote: >> +jtag: jtag@1e6e4000 { >> + compatible = "aspeed,ast2500-jtag"; >> + reg = <0x1e6e4000 0x1c>; >> + clocks = <&clk_apb>; > > We've now got a proper clock driver upstream. Can you update the > example to match the newly added bindings? > > clocks = <&syscon ASPEED_CLK_APB>; > I think we need to ensure the reset is deasserted as well. You will need: resets = <&syscon ASPEED_RESET_JTAG_MASTER>; In addition, we need to make sure the reset line is deasserted in the driver. Take a look at how I did this in the i2c driver: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=edd20e95bca4a5434f264d8ab40d729761479825 + bus->rst = devm_reset_control_get_shared(&pdev->dev, NULL); + if (IS_ERR(bus->rst)) { + dev_err(&pdev->dev, + "missing or invalid reset controller device tree entry"); + return PTR_ERR(bus->rst); + } + reset_control_deassert(bus->rst); Please give this a test with an upstream kernel from a fresh power on. Cheers, Joel
diff --git a/Documentation/devicetree/bindings/jtag/aspeed-jtag.txt b/Documentation/devicetree/bindings/jtag/aspeed-jtag.txt new file mode 100644 index 0000000..8cfc610 --- /dev/null +++ b/Documentation/devicetree/bindings/jtag/aspeed-jtag.txt @@ -0,0 +1,18 @@ +Aspeed JTAG driver for ast2400 and ast2500 SoC + +Required properties: +- compatible: Should be one of + - "aspeed,ast2400-jtag" + - "aspeed,ast2500-jtag" +- reg contains the offset and length of the JTAG memory + region +- clocks root clock of bus, should reference the APB clock +- interrupts should contain JTAG controller interrupt + +Example: +jtag: jtag@1e6e4000 { + compatible = "aspeed,ast2500-jtag"; + reg = <0x1e6e4000 0x1c>; + clocks = <&clk_apb>; + interrupts = <43>; +};