[PATCH v2 2/3] firmware: Keem Bay: Add support for Arm Trusted Firmware Service call

Sudeep Holla sudeep.holla at arm.com
Mon Oct 5 16:07:44 EDT 2020


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.

-- 
Regards,
Sudeep



More information about the linux-arm-kernel mailing list