[PW_SID:1083262] [v1] riscv: dts: microchip: fix icicle i2c pinctrl configuration#1794
[PW_SID:1083262] [v1] riscv: dts: microchip: fix icicle i2c pinctrl configuration#1794linux-riscv-bot wants to merge 2 commits into
Conversation
Unfortunately, an erratum with engineering sample that I was not aware of was exposed by adding pinctrl configuration to the icicle kit. When routed to MSS IOs, i2c signals are never anything other than tied low. Being an FPGA, a Libero workaround for this problem was created, that involves routing i2c signals to the FPGA fabric when the MSS IO option is selected in the configurator and then back to the intended pin using the debug "fabric test" capability. This is invisible to user facing information in the tooling and not mentioned in reference designs documentation. It manifests solely in the .xml output from the MSS configuration that the HSS firmware uses to configure the device, which Linux now overwrites using the pinctrl information. As a result, I never noticed this. My original submission had the engineering sample configuration, but I modified it on application after I was told it didn't work, not realising that the report came from a colleague with a production device, where the erratum was fixed and the workaround not automatically implemented by Libero when creating a design. Move this part of the pinctrl configuration out of the shared portion of the icicle device trees, into the portions that are specific to engineering sample and production devices so that the different settings for i2c pins can be dealt with. Although the reference design only has this workaround in place for i2c1, as i2c0 is genuinely fabric routed, move it too since the erratum affects both controllers. Link: https://ww1.microchip.com/downloads/aemDocuments/documents/FPGA/ProductDocuments/Errata/polarfiresoc/microsemi_polarfire_soc_fpga_egineering_samples_errata_er0219_v1.pdf [3.3] Fixes: 123f427 ("riscv: dts: microchip: add pinctrl nodes for mpfs/icicle kit") Signed-off-by: Conor Dooley <conor.dooley@microchip.com> Signed-off-by: Linux RISC-V bot <linux.riscv.bot@gmail.com>
|
Patch 1: "[v1] riscv: dts: microchip: fix icicle i2c pinctrl configuration" |
|
Patch 1: "[v1] riscv: dts: microchip: fix icicle i2c pinctrl configuration" |
|
Patch 1: "[v1] riscv: dts: microchip: fix icicle i2c pinctrl configuration" |
|
Patch 1: "[v1] riscv: dts: microchip: fix icicle i2c pinctrl configuration" |
|
Patch 1: "[v1] riscv: dts: microchip: fix icicle i2c pinctrl configuration" |
|
Patch 1: "[v1] riscv: dts: microchip: fix icicle i2c pinctrl configuration" |
|
Patch 1: "[v1] riscv: dts: microchip: fix icicle i2c pinctrl configuration" |
|
Patch 1: "[v1] riscv: dts: microchip: fix icicle i2c pinctrl configuration" |
|
Patch 1: "[v1] riscv: dts: microchip: fix icicle i2c pinctrl configuration" |
|
Patch 1: "[v1] riscv: dts: microchip: fix icicle i2c pinctrl configuration" |
|
Patch 1: "[v1] riscv: dts: microchip: fix icicle i2c pinctrl configuration" |
|
Patch 1: "[v1] riscv: dts: microchip: fix icicle i2c pinctrl configuration" |
89f146e to
7e679ca
Compare
da65025 to
50e3f1e
Compare
PR for series 1083262 applied to workflow
Name: [v1] riscv: dts: microchip: fix icicle i2c pinctrl configuration
URL: https://patchwork.kernel.org/project/linux-riscv/list/?series=1083262
Version: 1