lkml.org 
[lkml]   [2022]   [Nov]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
SubjectRe: [PATCH 3/3] arm_scpi: modify to support acpi
Date
Thinks!

When boot from uefi on phytium ft2004(arm64) platform, can't show temp & freq of cpu, but well if boot from uboot for same kernel binary file;
So i modified arm_scpi.c and scpi-hwmon.c as patch, and tested ok.

Best Regards!

Wang Honghui

------------------ Original ------------------From: "Mark Rutland"<mark.rutland@arm.com>;Date: Thu, Nov 24, 2022 07:03 PMTo: "Wang Honghui"<honghui.wang@ucas.com.cn>; Cc: "Sudeep Holla"<sudeep.holla@arm.com>; "Cristian Maruss"<cristian.marussi@arm.com>; "Jassi Brar"<jassisinghbrar@gmail.com>; "linux-arm-kernel"<linux-arm-kernel@lists.infradead.org>; "linux-kernel"<linux-kernel@vger.kernel.org>; Subject: Re: [PATCH 3/3] arm_scpi: modify to support acpi On Thu, Nov 24, 2022 at 03:09:31PM +0800, Wang Honghui wrote:> arm_scpi: modify to support acpi> > Signed-off-by: Wang Honghui <honghui.wang@ucas.com.cn>> @@ -937,55 +952,116 @@ static int scpi_probe(struct platform_device *pdev)> if (ret)> return ret;> > - for (; scpi_drvinfo->num_chans < count; scpi_drvinfo->num_chans++) {> -resource_size_t size;> -int idx = scpi_drvinfo->num_chans;> -struct scpi_chan *pchan = scpi_drvinfo->channels + idx;> -struct mbox_client *cl = &pchan->cl;> -struct device_node *shmem = of_parse_phandle(np, "shmem", idx);> -> -if (!of_match_node(shmem_of_match, shmem))> - return -ENXIO;> + /* Wang Honghui modified to support acpi */> + if (dev->of_node) {[...]> + } else {> +for (; scpi_info->num_chans < count; scpi_info->num_chans++) {> + u32 size;> + u32 addr;> + int idx = scpi_info->num_chans;> + struct scpi_chan *pchan = scpi_info->channels + idx;> + struct mbox_client *cl = &pchan->cl;> + struct fwnode_handle *fn;> +> + fn = dev_fwnode(&(pdev->dev));> + ret = fwnode_property_read_u32(fn, "shmem_start", &addr);> + if (ret < 0) {> + dev_err(dev, "failed to get SCPI payload mem resource\n");> + return ret;> + }> +> + ret = fwnode_property_read_u32(fn, "shmem_size", &size);> + if (ret < 0) {> + dev_err(dev, "failed to ioremap SCPI payload\n");> + return -EADDRNOTAVAIL;> + }ACPI has native mechanisms to describe IO resources, so this doesn't look right at all.Does ARM have ACPI bindings for SCPI? I don't think we should be inventingvendor-specific bindings for this....> + if (!ret) {> + pchan->chan = phytium_mbox_request_channel(cl);... so this looks very wrong.Thanks,Mark.
\
 
 \ /
  Last update: 2022-11-24 13:29    [W:0.054 / U:0.140 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site