[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1065611: Additional support for SolidRun HoneyComb



Hi Diederik,

Thank you for taking care of this!
First the additional changes you found seem reasonable.

Regarding edac - I checked NXPs reference BSP for LX2160,
and their linux fork has the same status, driver can not be enabled on arm64.

However I also agree it should be enabled if it were possible.
The driver appears to setup ecc bit error interrupts so that hey can be reported by Linux.

Here is what other qoriq drivers do:
drivers/crypto/caam/Kconfig:    depends on FSL_SOC || ARCH_MXC || ARCH_LAYERSCAPE

I may have access to an lx2160a system with ecc memory within the coming week,
so I could test (on vendor kernel based on 5.10 only) whether any problems show up.
If not, perhaps a patch to the kernel is advisable.

Am 07.03.24 um 13:34 schrieb Diederik de Haas:

> Hi Josua,
>
> On Thursday, 18 January 2024 17:40:38 CET Josua Mayer wrote:
>> LX2160 SoC early silicon revisions have a pci-e generation 4 controller.
>> It requires a different driver from newer gen-3 silicon.
>>
>> This affects the SolidRun Honeycomb Workstation which
>> is otherwise fully supported in Debian.
> I cloned bug report #1061116 into #1065611 to discuss some additional support 
> for the SolidRun HoneyComb.
>
> I analyzed the HoneyComb dts file and the following included .dtsi files:
> - arch/arm64/boot/dts/freescale/fsl-lx2160a-clearfog-itx.dtsi
> - arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dtsi
> - arch/arm64/boot/dts/freescale/fsl-lx2160a.dtsi
>
> If I exclude the kernel modules from 1061116 and 1061117, then I still have 
> the following list of additional modules to enable:
> - drivers/edac: Enable EDAC_MPC85XX
> - drivers/hwmon/pmbus: Enable PMBUS, SENSORS_PMBUS and
>   SENSORS_LTC2978 as modules
> - drivers/nvmem: Enable NVMEM_LAYERSCAPE_SFP as module
> - drivers/rtc: Enable RTC_DRV_FSL_FTM_ALARM as module
> - drivers/soc/fsl: Enable FSL_RCPM
>
> If you agree that this is a good list I can make a MR to get them enabled.
> A MR for 1061116 and 1061117 has just been merged in our 'master' branch.
>
> But I ran into an issue when looking at the ``EDAC_MPC85XX`` stanza 
> in``drivers/edac/Kconfig``:
> ``depends on FSL_SOC && EDAC=y``
>
> But ``FSL_SOC`` is (only) defined in ``arch/powerpc/Kconfig``, which means 
> ``EDAC_MPC85XX`` can not be enabled on ``arm64``. 
> That module was found based on ``compatible = "fsl,qoriq-memory-controller"``, 
> which sounds like something you would want to have.
>
> Upstream commit ea2eb9a8b6207ee4 has the following commit message:
> ```
>     EDAC, fsl-ddr: Separate FSL DDR driver from MPC85xx
>     
>     The mpc85xx-compatible DDR controllers are used on ARM-based SoCs too.
>     Carve out the DDR part from the mpc85xx EDAC driver in preparation to
>     support both architectures.
> ```
> Which I interpret as all (?) the preparations for supporting both powerpc and 
> ARM were made, but they forgot to update the strict dependency of 
> ``EDAC_MPC85XX`` to powerpc to actually support both architectures?
>
> Can you shed some light on this?
>
> Cheers,
>   Diederik

Reply to: