Reset controller on the Amlogic SoC board.

Neil Armstrong narmstrong at baylibre.com
Thu Jul 23 11:42:03 EDT 2020


Hi,

On 23/07/2020 17:14, Anand Moon wrote:
> Hi Neil,
> 
> On Thu, 23 Jul 2020 at 18:36, Neil Armstrong <narmstrong at baylibre.com> wrote:
>>
>> Hi Anand,
>>
>> On 23/07/2020 12:49, Anand Moon wrote:
>>> Hi Neil / Martin / Jerome / Kevin.
>>>
>>> I am a bit investigating the reset controller for the Amlogic SoC board.
>>> Each of thes reset controllers have different reset IP features.
>>> So we should map the reset controller to appropriate IP nodes
>>> in the DTS to make this work.
>>
>> Correct support is already done for Meson8/8b/GXL/GXBB/G12A/A1.
>>
>> Can you specify which features are missing ?
> 
> Yes, the reset controller is working fine.
> Currently we have only one reset controller _reset-controller at 1004_
> 
> But what observation is that we could have different reset controller

Sorry I don't see any good reasons for that, it's a single reset controller
with multiple lines split over 8 registers.

You are free to do the work and submit the changes, but it will break the current
bindings and offer no changes or new features over the actual design.

Neil

> reset-controller at 1004
> |--22  Sys_cpu_capb3
> |--21  Dos_capb3
> |--20  Mali_capb3
> |--19  Hdmitx_capb3
> |--18  Nand_capb3
> |--17  Capb3_decode
> |--16  Gic
> 
> reset-controller at 1008
> |--14   Sd_emmc_c
> |--13   Sd_emmc_b
> |--12   Sd_emmc_a
> |--11   Ethernet
> |--02  USB_OTG
> 
> reset-controllet at 4410
> |--8  Audio DAC
> |--6  AHB BRIDGE CNTL
> |--5  tvfe
> |--4  AIFIFO
> |--3  Sys_cpu_bvci
> |--2  EFUSE
> |--1  SYS CPU
> |--0  Ring oscillator
> 
> reset-controller at 4414
> |--15  I2C_Master 1
> |--14  I2C_Master 2
> |--33  VENCL
> |--12  VDI6
> |--10  RTC
> |--9   VDAC
> 
> This is what I would like to make it work.
> 
> -Anand
> 
>>
>>>
>>> Following are the reset controller reg ip blocks as per the Datasheet
>>> Datasheet :- S805_Datasheet V0.8 20150126
>>> Datasheet :- S905X_Datasheet V0.3 20170314publicversion-Wesion
>>> On GXBB / GLX
>>> RESET_REGISTER   ----> 0xc11004404
>>> RESET1_REGISTER ----> 0xc11004408
>>> RESET2_REGISTER ----> 0xc1100440c
>>> RESET3_REGISTER ----> 0xc11004410
>>> RESET4_REGISTER ----> 0xc11004414
>>> RESET5_REGISTER ----> 0xc1100441c
>>> RESET6_REGISTER ----> 0xc11004420
>>>
>>> DataSheet - S922X_Public_Datasheet_V0.2-Hardkernel.pdf
>>> G12B / S905X3
>>> RESET0_REGISTER ---> 0xFFD01004
>>> RESET1_REGISTER ---> 0xFFD01008
>>> RESET2_REGISTER ---> 0xFFD0100C
>>> RESET3_REGISTER ---> 0xFFD01010
>>> RESET4_REGISTER ---> 0xFFD01014
>>> RESET5_REGISTER ---> 0xFFD0101c
>>> RESET7_REGISTER ---> 0xFFD01020
>>>
>>> Each of the reset controllers have some different bit fields,
>>> For that we need to have reset binding macros accordingly.
>>
>> It's a documentation issue, the register layout is the same from Meson8
>> to G12A.
>>
>> Neil
>>
>>>
>>> Please share your thoughts and If you have some inputs or
>>> another approach please let me know.
>>> I just want your feedback before preparing
>>> and submitting some patches.
>>>
>>> Sorry my English is a bit poor to express hope you
>>> will understand what changes I am proposing.
>>>
>>> -Anand
>>>
>>




More information about the linux-arm-kernel mailing list