[PATCH v3 0/3] Add RISC-V 32 NOMMU support
Jesse Taube
mr.bossman075 at gmail.com
Tue Mar 14 11:35:39 PDT 2023
On 3/7/23 23:11, Damien Le Moal wrote:
> On 3/8/23 12:46, Jesse Taube wrote:
>>
>>
>> On 3/7/23 22:42, Damien Le Moal wrote:
>>> On 3/8/23 12:23, Randy Dunlap wrote:
>>>>>> OK, I don't know how it happened. I cannot reproduce it now.
>>>>>> The failing .config files has CONFIG_MMU is not set (for RV32I), which
>>>>>> appears to be impossible.
>>>>> These patches add `CONFIG_MMU is not set` (for RV32I).
>>>>> But no worries it seems to be a non issue now.
>>>>>
>>>>> Your thoughts Damien?
>>>>>
>>>>
>>>> Thanks for reminding me.
>>>>
>>>> With these 3 patches applied to linux-next-20230307,
>>>> I still get this build error.
>>>
>>> Does this help ?
>>>
>>> diff --git a/drivers/soc/canaan/Kconfig b/drivers/soc/canaan/Kconfig
>>> index 2527cf5757ec..7796c5f1d109 100644
>>> --- a/drivers/soc/canaan/Kconfig
>>> +++ b/drivers/soc/canaan/Kconfig
>>> @@ -4,7 +4,8 @@ config SOC_K210_SYSCTL
>>> bool "Canaan Kendryte K210 SoC system controller"
>>> depends on RISCV && SOC_CANAAN && OF
>>> default SOC_CANAAN
>>> - select PM
>>> - select MFD_SYSCON
>>> + select COMMON_CLK_K210
Ok so this has nothing to do with my patch-set actually and will happen
on 64BIT as well.
the commit that brought in this bug is:
RISC-V: stop directly selecting drivers for SOC_CANAAN
3af577f9826fdddefac42b35fc5eb3912c5b7d85
I have tested the patches Damien here they work on 64BIT and 32BIT.
The change to drivers/clk/Kconfig is not strictly necessary but makes
scene. I don't think they need to be tested on 32bit so we can omit
COMPILE_TEST.
If needed i can submit the patches, which I will author under Damien.
As far as I can see there is nothing holding back this set as the issue
found has no relation to this set.
Thanks,
Jesse Taube
>>> + select PM
>>> + select MFD_SYSCON
>>> help
>>> Canaan Kendryte K210 SoC system controller driver.
>>>
>>> (just noticed that there are whitespace errors here...)
>>>
>>> Note that both the sysctl and clk driver depend on RISCV. I think these should
>>> probably also depend on 64BIT, and eventually add a "|| COMPILE_TEST" as well.
>>> So something like this:
>>>
>>> diff --git a/drivers/clk/Kconfig b/drivers/clk/Kconfig
>>> index b6c5bf69a2b2..657a36d2640d 100644
>>> --- a/drivers/clk/Kconfig
>>> +++ b/drivers/clk/Kconfig
>>> @@ -431,7 +431,7 @@ config COMMON_CLK_FIXED_MMIO
>>>
>>> config COMMON_CLK_K210
>>> bool "Clock driver for the Canaan Kendryte K210 SoC"
>>> - depends on OF && RISCV && SOC_CANAAN
>>> + depends on OF && RISCV && SOC_CANAAN && (64BIT || COMPILE_TEST)
>>> default SOC_CANAAN
>>> help
>>> Support for the Canaan Kendryte K210 RISC-V SoC clocks.
>>> diff --git a/drivers/soc/canaan/Kconfig b/drivers/soc/canaan/Kconfig
>>> index 2527cf5757ec..1745a614d2a7 100644
>>> --- a/drivers/soc/canaan/Kconfig
>>> +++ b/drivers/soc/canaan/Kconfig
>>> @@ -2,9 +2,10 @@
>>>
>>> config SOC_K210_SYSCTL
>>> bool "Canaan Kendryte K210 SoC system controller"
>>> - depends on RISCV && SOC_CANAAN && OF
>>> + depends on RISCV && SOC_CANAAN && OF && (64BIT || COMPILE_TEST)
>>> default SOC_CANAAN
>>> - select PM
>>> - select MFD_SYSCON
>>> + select COMMON_CLK_K210
>>> + select PM
>>> + select MFD_SYSCON
>>> help
>>> Canaan Kendryte K210 SoC system controller driver.
>>>
>>> COMPILE_TEST is optional though, but I do not see any reason why not eventhough
>>> in practice these drivers will likely never end up in 32-bits SoC.
>>>
>>>
>>
>> Oh thanks I was in the in the midst of making a similar patch.
>> Do you want to submit it or shall I. Also thanks for the help with this,
>> was using tag 6.2.
>
> I am busy with other stuff and do not have time to properly test this. So please
> feel free to go ahead and send something fully tested.
>
More information about the linux-riscv
mailing list