From: Sudeep Holla <sudeep.holla@arm.com> To: Viresh Kumar <viresh.kumar@linaro.org> Cc: Cristian Marussi <cristian.marussi@arm.com>, Vincent Guittot <vincent.guittot@linaro.org>, Arnd Bergmann <arnd@arndb.de>, Jassi Brar <jassisinghbrar@gmail.com>, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Sudeep Holla <sudeep.holla@arm.com> Subject: Re: [PATCH] firmware: arm_scmi: Make scmi core independent of transport type Date: Tue, 10 Dec 2019 18:46:33 +0000 [thread overview] Message-ID: <20191210184633.GC20962@bogus> (raw) In-Reply-To: <20191210053448.ugjzbp2puzvnm37f@vireshk-i7> On Tue, Dec 10, 2019 at 11:04:48AM +0530, Viresh Kumar wrote: > On 09-12-19, 18:13, Cristian Marussi wrote: > > On 29/11/2019 09:31, Viresh Kumar wrote: [...] > > > desc = of_device_get_match_data(dev); > > > if (!desc) > > > return -EINVAL; > > > > This scmi_desc struct descriptor is retrieved from of_match_table .data and points to > > the driver-provided scmi_generic_desc > > > > static const struct scmi_desc scmi_generic_desc = { > > .max_rx_timeout_ms = 30, /* We may increase this if required */ > > .max_msg = 20, /* Limited by MBOX_TX_QUEUE_LEN */ > > .max_msg_size = 128, > > }; > > > > Is not this kind of information possibly (maybe partially) related to the selected > > transport, and as such it should be also provided dynamically by the chosen transport > > layer at probe time, like the transport_ops, instead of being hard-coded in > > this driver ? > > I had my doubts about this thing and I missed checking it out. > > @Sudeep: Is this information completely mailbox specific ? Should I move it to > mailbox.c here ? > May be to some/small extent. 1. max_rx_timeout_ms is firmware dependent, maximum time it expects to complete a synchronous request or acknowledge async request(worst case value). 2. max_msg_size is maximum size of the buffer we need to allocate, mostly based on the specification and we don't have any more that 0x80. But the custom/vendor specific protocols may wary and hence I thought of keeping it configurable for platforms. 3. max_msg is the maximum number of messages the transport can support. This is currently based on the mailbox layer. For SMC/HVC we can have upto nr_cpus, something different for spci/optee. We must be able to make it transport independent if required. This is mainly used to pre-allocate number of (tx/rx) buffers. -- Regards, Sudeep
WARNING: multiple messages have this Message-ID (diff)
From: Sudeep Holla <sudeep.holla@arm.com> To: Viresh Kumar <viresh.kumar@linaro.org> Cc: Arnd Bergmann <arnd@arndb.de>, Jassi Brar <jassisinghbrar@gmail.com>, linux-kernel@vger.kernel.org, Cristian Marussi <cristian.marussi@arm.com>, Sudeep Holla <sudeep.holla@arm.com>, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH] firmware: arm_scmi: Make scmi core independent of transport type Date: Tue, 10 Dec 2019 18:46:33 +0000 [thread overview] Message-ID: <20191210184633.GC20962@bogus> (raw) In-Reply-To: <20191210053448.ugjzbp2puzvnm37f@vireshk-i7> On Tue, Dec 10, 2019 at 11:04:48AM +0530, Viresh Kumar wrote: > On 09-12-19, 18:13, Cristian Marussi wrote: > > On 29/11/2019 09:31, Viresh Kumar wrote: [...] > > > desc = of_device_get_match_data(dev); > > > if (!desc) > > > return -EINVAL; > > > > This scmi_desc struct descriptor is retrieved from of_match_table .data and points to > > the driver-provided scmi_generic_desc > > > > static const struct scmi_desc scmi_generic_desc = { > > .max_rx_timeout_ms = 30, /* We may increase this if required */ > > .max_msg = 20, /* Limited by MBOX_TX_QUEUE_LEN */ > > .max_msg_size = 128, > > }; > > > > Is not this kind of information possibly (maybe partially) related to the selected > > transport, and as such it should be also provided dynamically by the chosen transport > > layer at probe time, like the transport_ops, instead of being hard-coded in > > this driver ? > > I had my doubts about this thing and I missed checking it out. > > @Sudeep: Is this information completely mailbox specific ? Should I move it to > mailbox.c here ? > May be to some/small extent. 1. max_rx_timeout_ms is firmware dependent, maximum time it expects to complete a synchronous request or acknowledge async request(worst case value). 2. max_msg_size is maximum size of the buffer we need to allocate, mostly based on the specification and we don't have any more that 0x80. But the custom/vendor specific protocols may wary and hence I thought of keeping it configurable for platforms. 3. max_msg is the maximum number of messages the transport can support. This is currently based on the mailbox layer. For SMC/HVC we can have upto nr_cpus, something different for spci/optee. We must be able to make it transport independent if required. This is mainly used to pre-allocate number of (tx/rx) buffers. -- Regards, Sudeep _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2019-12-10 18:46 UTC|newest] Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-11-29 9:31 [PATCH] firmware: arm_scmi: Make scmi core independent of transport type Viresh Kumar 2019-11-29 9:31 ` Viresh Kumar 2019-12-03 12:00 ` Sudeep Holla 2019-12-03 12:00 ` Sudeep Holla 2019-12-10 10:18 ` Viresh Kumar 2019-12-10 10:18 ` Viresh Kumar 2019-12-09 18:13 ` Cristian Marussi 2019-12-09 18:13 ` Cristian Marussi 2019-12-10 5:34 ` Viresh Kumar 2019-12-10 5:34 ` Viresh Kumar 2019-12-10 18:46 ` Sudeep Holla [this message] 2019-12-10 18:46 ` Sudeep Holla 2019-12-11 2:43 ` Viresh Kumar 2019-12-11 2:43 ` Viresh Kumar 2019-12-31 2:50 ` Peng Fan 2019-12-31 2:50 ` Peng Fan 2019-12-31 12:22 ` Sudeep Holla 2019-12-31 12:22 ` Sudeep Holla 2019-12-31 20:09 ` Jassi Brar 2019-12-31 20:09 ` Jassi Brar 2020-01-06 11:00 ` Sudeep Holla 2020-01-06 11:00 ` Sudeep Holla 2020-01-09 8:18 ` Arnd Bergmann 2020-01-09 8:18 ` Arnd Bergmann 2020-01-09 9:16 ` Viresh Kumar 2020-01-09 9:16 ` Viresh Kumar 2020-01-10 12:22 ` Sudeep Holla 2020-01-10 12:22 ` Sudeep Holla 2020-01-09 9:34 ` Viresh Kumar 2020-01-09 9:34 ` Viresh Kumar 2020-01-09 10:15 ` Arnd Bergmann 2020-01-09 10:15 ` Arnd Bergmann 2020-01-10 12:27 ` Sudeep Holla 2020-01-10 12:27 ` Sudeep Holla 2020-01-13 6:45 ` Peng Fan 2020-01-13 6:45 ` Peng Fan 2020-01-10 12:31 ` Sudeep Holla 2020-01-10 12:31 ` Sudeep Holla
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20191210184633.GC20962@bogus \ --to=sudeep.holla@arm.com \ --cc=arnd@arndb.de \ --cc=cristian.marussi@arm.com \ --cc=jassisinghbrar@gmail.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=vincent.guittot@linaro.org \ --cc=viresh.kumar@linaro.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.