lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <81e9c0ea-ca06-4cb9-8f5f-08fec370812b@tuxon.dev>
Date: Sat, 10 Jan 2026 17:03:20 +0200
From: Claudiu Beznea <claudiu.beznea@...on.dev>
To: Ryan.Wanner@...rochip.com, mturquette@...libre.com, sboyd@...nel.org,
 alexandre.belloni@...tlin.com, Nicolas.Ferre@...rochip.com
Cc: linux-clk@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
 linux-kernel@...r.kernel.org, Varshini.Rajendran@...rochip.com
Subject: Re: [PATCH v4 11/31] clk: at91: clk-usb: add support for
 clk_parent_data

Hi, Ryan,

Sorry for the late reply, I was off for a while.

On 1/5/26 19:58, Ryan.Wanner@...rochip.com wrote:
> On 12/23/25 07:00, claudiu beznea wrote:
>> EXTERNAL EMAIL: Do not click links or open attachments unless you know
>> the content is safe
>>
>> On 12/18/25 18:23, Ryan.Wanner@...rochip.com wrote:
>>> On 10/20/25 12:17, Claudiu Beznea wrote:
>>>> EXTERNAL EMAIL: Do not click links or open attachments unless you
>>>> know the content is safe
>>>>
>>>> Hi, Ryan,
>>>>
>>>> On 9/19/25 00:15, Ryan.Wanner@...rochip.com wrote:
>>>>> From: Claudiu Beznea <claudiu.beznea@...on.dev>
>>>>>
>>>>> Add support for clk_parent_data in usb clock driver.
>>>>>
>>>>> All the SoC based drivers that rely on clk-usb were adapted
>>>>> to the new API change. The switch itself for SoCs will be done
>>>>> in subsequent patches.
>>>>>
>>>>> Remove the use of __clk_get_hw() for the slow clocks.
>>>>>
>>>>> Signed-off-by: Claudiu Beznea <claudiu.beznea@...on.dev>
>>>>> [ryan.wanner@...rochip: Add SAMA7D65 and SAM9X75 SoCs to the changes.
>>>>> Change how the main_xtal and slcks are initialized so they match the
>>>>> parent_data API]
>>>>> Signed-off-by: Ryan Wanner <Ryan.Wanner@...rochip.com>
>>>>> ---
>>>>>    drivers/clk/at91/at91rm9200.c  |  2 +-
>>>>>    drivers/clk/at91/at91sam9260.c |  2 +-
>>>>>    drivers/clk/at91/at91sam9g45.c |  2 +-
>>>>>    drivers/clk/at91/at91sam9n12.c |  2 +-
>>>>>    drivers/clk/at91/at91sam9x5.c  |  2 +-
>>>>>    drivers/clk/at91/clk-usb.c     | 41 +++++++++++++++++++++
>>>>> +------------
>>>>>    drivers/clk/at91/dt-compat.c   |  6 ++---
>>>>>    drivers/clk/at91/pmc.h         | 11 +++++----
>>>>>    drivers/clk/at91/sam9x60.c     |  2 +-
>>>>>    drivers/clk/at91/sam9x7.c      | 21 +++++++++--------
>>>>>    drivers/clk/at91/sama5d2.c     |  2 +-
>>>>>    drivers/clk/at91/sama5d3.c     |  2 +-
>>>>>    drivers/clk/at91/sama5d4.c     |  2 +-
>>>>>    drivers/clk/at91/sama7d65.c    | 24 +++++++++++---------
>>>>>    14 files changed, 72 insertions(+), 49 deletions(-)
>>>>>
>>>>
>>>> [ ... ]
>>>>
>>>>> @@ -882,10 +885,10 @@ static void __init sam9x7_pmc_setup(struct
>>>>> device_node *np)
>>>>>
>>>>>         sam9x7_pmc->chws[PMC_MCK] = hw;
>>>>>
>>>>> -     parent_names[0] = "plla_divpmcck";
>>>>> -     parent_names[1] = "upll_divpmcck";
>>>>> -     parent_names[2] = "main_osc";
>>>>> -     usbck_hw = sam9x60_clk_register_usb(regmap, "usbck",
>>>>> parent_names, 3);
>>>>> +     parent_data[0] = AT91_CLK_PD_HW(sam9x7_plls[PLL_ID_PLLA]
>>>>> [PLL_COMPID_DIV0].hw);
>>>>> +     parent_data[1] = AT91_CLK_PD_HW(sam9x7_plls[PLL_ID_UPLL]
>>>>> [PLL_COMPID_DIV0].hw);
>>>>> +     parent_data[2] = AT91_CLK_PD_HW(main_osc_hw);
>>>>> +     usbck_hw = sam9x60_clk_register_usb(regmap, "usbck", NULL,
>>>>> parent_data, 3);
>>>>
>>>> sam9x60_clk_register_usb() could be converted to use parent_hws
>>>> member of
>>>> struct clk_init_data instead of parent_data.
>>>
>>> So this would mean that I would pass in an array of the plls as
>>> parent_hws, and use that to load the clk_init_data struct instead of
>>> filling the array of parent_data as it is changed to in this patch set?
>>>
>>> And this would be functionally the same since parent_data points to
>>> clk_hw?>
>>>
>>
>> It should be something like:
> 
> I see, I guess my question is why the usbclk system only? Is it just due
> to how little parents there are for the usbclk? Or is it because this is
> the only clock that only uses clk_hw for all of its parents?
Because this is the only clock that uses clk_hw for all of its parents.

Thank you,
Claudiu

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ