RE: [PATCH v2 2/3] firmware: Keem Bay: Add support for Arm Trusted Firmware Service call
From: Zulkifli, Muhammad Husaini
Date: Mon Oct 05 2020 - 21:14:26 EST
Hi Michal,
>-----Original Message-----
>From: Sudeep Holla <sudeep.holla@xxxxxxx>
>Sent: Tuesday, October 6, 2020 4:08 AM
>To: Zulkifli, Muhammad Husaini <muhammad.husaini.zulkifli@xxxxxxxxx>
>Cc: Michal Simek <michal.simek@xxxxxxxxxx>; Hunter, Adrian
><adrian.hunter@xxxxxxxxx>; ulf.hansson@xxxxxxxxxx; linux-
>mmc@xxxxxxxxxxxxxxx; linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; linux-
>kernel@xxxxxxxxxxxxxxx; Raja Subramanian, Lakshmi Bai
><lakshmi.bai.raja.subramanian@xxxxxxxxx>; arnd@xxxxxxxx; Wan Mohamad,
>Wan Ahmad Zainie <wan.ahmad.zainie.wan.mohamad@xxxxxxxxx>
>Subject: Re: [PATCH v2 2/3] firmware: Keem Bay: Add support for Arm Trusted
>Firmware Service call
>
>On Mon, Oct 05, 2020 at 05:04:10PM +0000, Zulkifli, Muhammad Husaini wrote:
>
>> To be clarify keembay_sd_voltage_selection function as Michal's
>> prefers is actually using the firmware driver. This function located
>> in firmware driver.
>
>OK, it can be just one function place it in any file you think is more appropriate
>need not be arasan controller driver. Any reasons why this can't work ? Can even
>be in some header.
>
>int keembay_sd_voltage_selection(int volt) {
> int res;
>
> arm_smccc_1_1_invoke(KEEMBAY_SET_SD_VOLTAGE_FUNC_ID, volt,
>&res)
>
> /* appropriate error check if needed here */
>
> return res;
>}
>
>> I will call this func during voltage switching from arasan controller.
>> I believe this implementation require DT to specify the compatible
>> name and method use either smc/hvc.
>
>No, use the standard one as detected by arm_smccc_1_1_invoke (It calls
>arm_smccc_get_conduit internally and use SMC/HVC based on that)
>
>>
>> Are you saying that by using simple smcc based function library I
>> should call below func() in arasan controller. For example
>> 1) arm_smccc_get_version(void)
>> 2) arm_smccc_version_init(arm_smccc_get_version(),
>SMCCC_CONDUIT_SMC);
>
>Nope
>
>> 3) arm_smccc_1_1_invoke(KEEMBAY_SET_SD_VOLTAGE_FUNC_ID,
>voltage_value
>> , &res);
>
>Just this.
Is it ok not using the centralize firmware drivers?
I would just revert back everything as in V1 by directly call the arm_smccc_1_1_invoke in arasan controller.
>
>--
>Regards,
>Sudeep