From: Cornelia Huck <cohuck@redhat.com>
To: Haixu Cui <quic_haixcui@quicinc.com>,
virtio-dev@lists.oasis-open.org,
virtio-comment@lists.oasis-open.org,
harald.mommer@opensynergy.com, broonie@kernel.org,
qiang4.zhang@linux.intel.com, viresh.kumar@linaro.org
Cc: quic_ztu@quicinc.com
Subject: [virtio-comment] Re: [virtio-dev][PATCH V9 2/2] virtio-spi: add the device specification
Date: Thu, 21 Dec 2023 09:44:09 +0100 [thread overview]
Message-ID: <87cyv0eyhy.fsf@redhat.com> (raw)
In-Reply-To: <e076f6b7-595e-4910-96c9-96366faadfe8@quicinc.com>
On Thu, Dec 21 2023, Haixu Cui <quic_haixcui@quicinc.com> wrote:
> Hi Cornelia,
> Much appreciated for your comments and please refer to my response.
>
> On 12/18/2023 7:04 PM, Cornelia Huck wrote:
>> On Tue, Dec 12 2023, Haixu Cui <quic_haixcui@quicinc.com> wrote:
>>
>> [BTW: A changelog would be useful, either in the patch or in the cover
>> letter.]
>
> Sure, I summarize the major changes between these versions and will add
> in next patch:
>
> changelog:
> v8->v9:
> - add explanation of bits_per_word_mask in config space
> v7->v8:
> - change device to host
> v6->v7:
> - fix the format problem, syntax problem
> v5->v6:
> - use driver/device instead guest/host
> - add the definition of some terminologies
> - use controller instead of master throughout the spec
> - add buffer length validation for full-duplex transfer
> v4->v5:
> - use controller instead of master
> - fix indentation issue
> - extend the config space to expose the backend supported features
> - add another result value to indicate parameter error
> - add device and driver requirement about parameter checkig
> v3->v4:
> - fix the spell error
> - bus_num is not SOC-specific, remove it
> - add driver requirement to deal with the situation that the cs delay
> parameters are not 0 but the backend doesn't support cs timing setting
> v2->v3
> - remove unnecessary statements and driver implimentation details
> - add the parameters about cs timing delay and transfer delay
> - use "le32" instead of "u32"
> - swap the rx_buf and tx_buf in the request format
> - add the parameters about transfer bit width
> v1->v2:
> - explain SPI when it is firstly used
> - update the ambiguous expression of virtqueue
> v0->v1:
> - add definition of abbreviation SPI
> - remove the ID
Thanks. Might be best to add this in the cover letter.
> ---
>
>>
>>> The Virtio SPI (Serial Peripheral Interface) device is a virtual
>>> SPI controller that allows the driver to operate and use the SPI
>>> controller under the control of the host.
>>>
>>> This patch adds the specification for virtio-spi.
>>>
>>> Signed-off-by: Haixu Cui <quic_haixcui@quicinc.com>
>>> Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org>
>>> ---
>>> device-types/spi/description.tex | 281 ++++++++++++++++++++++++
>>> device-types/spi/device-conformance.tex | 7 +
>>> device-types/spi/driver-conformance.tex | 7 +
>>> 3 files changed, 295 insertions(+)
>>> create mode 100644 device-types/spi/description.tex
>>> create mode 100644 device-types/spi/device-conformance.tex
>>> create mode 100644 device-types/spi/driver-conformance.tex
>>>
>>> diff --git a/device-types/spi/description.tex b/device-types/spi/description.tex
>>
>> Please move inclusion of this new file into content.tex here, instead of
>> including a not-yet-existing file in the previous patch.
>>
>> (...)
>
>
> Sorry, I don't quite understand here. Maybe I should not add the
> following line in content.tex, is that so?
>
> \input{device-types/spi/description.tex}
No, please add this line; but do so in this patch instead of the
previous one that only changes the wording.
>
>>
>>> +\field{mode_func_supported} indicates whether the following features are supported or not:
>>> + bit 0-1: CPHA feature,
>>> + 0b00: invalid, must support as least one CPHA setting.
>>> + 0b01: supports CPHA=0 only;
>>> + 0b10: supports CPHA=1 only;
>>> + 0b11: supports CPHA=0 and CPHA=1;
>>> +
>>> + bit 2-3: CPOL feature,
>>> + 0b00: invalid, must support as least one CPOL setting.
>>> + 0b01: supports CPOL=0 only;
>>> + 0b10: supports CPOL=1 only;
>>> + 0b11: supports CPOL=0 and CPOL=1;
>>> +
>>> + bit 4: chipselect active high feature, 0 for unsupported and 1 for supported,
>>> + chipselect active low must always be supported.
>>> +
>>> + bit 5: LSB first feature, 0 for unsupported and 1 for supported, MSB first must always be
>>> + supported.
>>> +
>>> + bit 6: loopback mode feature, 0 for unsupported and 1 for supported, normal mode
>>> + must always be supported.
>>> +
>>> +Note: CPOL is clock polarity and CPHA is clock phase. If CPOL is 0, the clock idles at the logical
>>> +low voltage, otherwise it idles at the logical high voltage. CPHA determines how data is outputted
>>> +and sampled.
>>
>> Shouldn't you also specify what CPHA==0 and CPHA==1 mean?
>>
>
> Yes, I will add the following explanation:
>
> If CPHA is 0, the first bit is outputted immediately when chipselect is
> active and subsequent bits are outputted on the clock edges when clock
s/when clock/when the clock/
> transitions from active level to idle level. Data is sampled on the
> clock edges when clock transitions from idle level to active level.
same
>
> If CPHA is 1, the first bit is outputted on the fist clock edge after
> chipselect is active, subsequent bits are outputted on the clock edges
> when clock transitions from idle level to active level. Data is sampled
same
> on the clock edges when clock transitions from active level to idle level.
same
This publicly archived list offers a means to provide input to the
OASIS Virtual I/O Device (VIRTIO) TC.
In order to verify user consent to the Feedback License terms and
to minimize spam in the list archive, subscription is required
before posting.
Subscribe: virtio-comment-subscribe@lists.oasis-open.org
Unsubscribe: virtio-comment-unsubscribe@lists.oasis-open.org
List help: virtio-comment-help@lists.oasis-open.org
List archive: https://lists.oasis-open.org/archives/virtio-comment/
Feedback License: https://www.oasis-open.org/who/ipr/feedback_license.pdf
List Guidelines: https://www.oasis-open.org/policies-guidelines/mailing-lists
Committee: https://www.oasis-open.org/committees/virtio/
Join OASIS: https://www.oasis-open.org/join/
WARNING: multiple messages have this Message-ID (diff)
From: Cornelia Huck <cohuck@redhat.com>
To: Haixu Cui <quic_haixcui@quicinc.com>,
virtio-dev@lists.oasis-open.org,
virtio-comment@lists.oasis-open.org,
harald.mommer@opensynergy.com, broonie@kernel.org,
qiang4.zhang@linux.intel.com, viresh.kumar@linaro.org
Cc: quic_ztu@quicinc.com
Subject: Re: [virtio-dev][PATCH V9 2/2] virtio-spi: add the device specification
Date: Thu, 21 Dec 2023 09:44:09 +0100 [thread overview]
Message-ID: <87cyv0eyhy.fsf@redhat.com> (raw)
In-Reply-To: <e076f6b7-595e-4910-96c9-96366faadfe8@quicinc.com>
On Thu, Dec 21 2023, Haixu Cui <quic_haixcui@quicinc.com> wrote:
> Hi Cornelia,
> Much appreciated for your comments and please refer to my response.
>
> On 12/18/2023 7:04 PM, Cornelia Huck wrote:
>> On Tue, Dec 12 2023, Haixu Cui <quic_haixcui@quicinc.com> wrote:
>>
>> [BTW: A changelog would be useful, either in the patch or in the cover
>> letter.]
>
> Sure, I summarize the major changes between these versions and will add
> in next patch:
>
> changelog:
> v8->v9:
> - add explanation of bits_per_word_mask in config space
> v7->v8:
> - change device to host
> v6->v7:
> - fix the format problem, syntax problem
> v5->v6:
> - use driver/device instead guest/host
> - add the definition of some terminologies
> - use controller instead of master throughout the spec
> - add buffer length validation for full-duplex transfer
> v4->v5:
> - use controller instead of master
> - fix indentation issue
> - extend the config space to expose the backend supported features
> - add another result value to indicate parameter error
> - add device and driver requirement about parameter checkig
> v3->v4:
> - fix the spell error
> - bus_num is not SOC-specific, remove it
> - add driver requirement to deal with the situation that the cs delay
> parameters are not 0 but the backend doesn't support cs timing setting
> v2->v3
> - remove unnecessary statements and driver implimentation details
> - add the parameters about cs timing delay and transfer delay
> - use "le32" instead of "u32"
> - swap the rx_buf and tx_buf in the request format
> - add the parameters about transfer bit width
> v1->v2:
> - explain SPI when it is firstly used
> - update the ambiguous expression of virtqueue
> v0->v1:
> - add definition of abbreviation SPI
> - remove the ID
Thanks. Might be best to add this in the cover letter.
> ---
>
>>
>>> The Virtio SPI (Serial Peripheral Interface) device is a virtual
>>> SPI controller that allows the driver to operate and use the SPI
>>> controller under the control of the host.
>>>
>>> This patch adds the specification for virtio-spi.
>>>
>>> Signed-off-by: Haixu Cui <quic_haixcui@quicinc.com>
>>> Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org>
>>> ---
>>> device-types/spi/description.tex | 281 ++++++++++++++++++++++++
>>> device-types/spi/device-conformance.tex | 7 +
>>> device-types/spi/driver-conformance.tex | 7 +
>>> 3 files changed, 295 insertions(+)
>>> create mode 100644 device-types/spi/description.tex
>>> create mode 100644 device-types/spi/device-conformance.tex
>>> create mode 100644 device-types/spi/driver-conformance.tex
>>>
>>> diff --git a/device-types/spi/description.tex b/device-types/spi/description.tex
>>
>> Please move inclusion of this new file into content.tex here, instead of
>> including a not-yet-existing file in the previous patch.
>>
>> (...)
>
>
> Sorry, I don't quite understand here. Maybe I should not add the
> following line in content.tex, is that so?
>
> \input{device-types/spi/description.tex}
No, please add this line; but do so in this patch instead of the
previous one that only changes the wording.
>
>>
>>> +\field{mode_func_supported} indicates whether the following features are supported or not:
>>> + bit 0-1: CPHA feature,
>>> + 0b00: invalid, must support as least one CPHA setting.
>>> + 0b01: supports CPHA=0 only;
>>> + 0b10: supports CPHA=1 only;
>>> + 0b11: supports CPHA=0 and CPHA=1;
>>> +
>>> + bit 2-3: CPOL feature,
>>> + 0b00: invalid, must support as least one CPOL setting.
>>> + 0b01: supports CPOL=0 only;
>>> + 0b10: supports CPOL=1 only;
>>> + 0b11: supports CPOL=0 and CPOL=1;
>>> +
>>> + bit 4: chipselect active high feature, 0 for unsupported and 1 for supported,
>>> + chipselect active low must always be supported.
>>> +
>>> + bit 5: LSB first feature, 0 for unsupported and 1 for supported, MSB first must always be
>>> + supported.
>>> +
>>> + bit 6: loopback mode feature, 0 for unsupported and 1 for supported, normal mode
>>> + must always be supported.
>>> +
>>> +Note: CPOL is clock polarity and CPHA is clock phase. If CPOL is 0, the clock idles at the logical
>>> +low voltage, otherwise it idles at the logical high voltage. CPHA determines how data is outputted
>>> +and sampled.
>>
>> Shouldn't you also specify what CPHA==0 and CPHA==1 mean?
>>
>
> Yes, I will add the following explanation:
>
> If CPHA is 0, the first bit is outputted immediately when chipselect is
> active and subsequent bits are outputted on the clock edges when clock
s/when clock/when the clock/
> transitions from active level to idle level. Data is sampled on the
> clock edges when clock transitions from idle level to active level.
same
>
> If CPHA is 1, the first bit is outputted on the fist clock edge after
> chipselect is active, subsequent bits are outputted on the clock edges
> when clock transitions from idle level to active level. Data is sampled
same
> on the clock edges when clock transitions from active level to idle level.
same
---------------------------------------------------------------------
To unsubscribe, e-mail: virtio-dev-unsubscribe@lists.oasis-open.org
For additional commands, e-mail: virtio-dev-help@lists.oasis-open.org
next prev parent reply other threads:[~2023-12-21 8:44 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-12-12 3:33 [virtio-comment] [virtio-dev][PATCH V9 0/2] virtio-spi: add virtual SPI controller Haixu Cui
2023-12-12 3:33 ` Haixu Cui
2023-12-12 3:33 ` [virtio-comment] [virtio-dev][PATCH V9 1/2] content: Rename SPI master to " Haixu Cui
2023-12-12 3:33 ` Haixu Cui
2023-12-12 3:33 ` [virtio-comment] [virtio-dev][PATCH V9 2/2] virtio-spi: add the device specification Haixu Cui
2023-12-12 3:33 ` Haixu Cui
2023-12-18 11:04 ` [virtio-comment] " Cornelia Huck
2023-12-18 11:04 ` Cornelia Huck
2023-12-21 3:57 ` [virtio-comment] " Haixu Cui
2023-12-21 3:57 ` Haixu Cui
2023-12-21 8:44 ` Cornelia Huck [this message]
2023-12-21 8:44 ` Cornelia Huck
2023-12-21 9:37 ` [virtio-comment] " Haixu Cui
2023-12-21 9:37 ` Haixu Cui
2023-12-21 9:54 ` [virtio-comment] " Cornelia Huck
2023-12-21 9:54 ` Cornelia Huck
2023-12-26 3:05 ` [virtio-comment] " Haixu Cui
2023-12-26 3:05 ` [virtio-dev] " Haixu Cui
2023-12-21 11:25 ` Harald Mommer
2023-12-21 11:25 ` Harald Mommer
2023-12-22 2:28 ` [virtio-comment] " Haixu Cui
2023-12-22 2:28 ` Haixu Cui
2023-12-22 14:32 ` [virtio-comment] " Harald Mommer
2023-12-22 14:32 ` Harald Mommer
2023-12-26 4:15 ` [virtio-comment] " Haixu Cui
2023-12-26 4:15 ` Haixu Cui
2024-01-02 14:10 ` [virtio-comment] " Harald Mommer
2024-01-02 14:10 ` Harald Mommer
2023-12-22 12:21 ` [virtio-comment] " Cornelia Huck
2023-12-22 12:21 ` Cornelia Huck
2023-12-26 3:11 ` [virtio-comment] " Haixu Cui
2023-12-26 3:11 ` Haixu Cui
2023-12-13 6:54 ` [virtio-comment] Re: [virtio-dev][PATCH V9 0/2] virtio-spi: add virtual SPI controller Haixu Cui
2023-12-13 6:54 ` Haixu Cui
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=87cyv0eyhy.fsf@redhat.com \
--to=cohuck@redhat.com \
--cc=broonie@kernel.org \
--cc=harald.mommer@opensynergy.com \
--cc=qiang4.zhang@linux.intel.com \
--cc=quic_haixcui@quicinc.com \
--cc=quic_ztu@quicinc.com \
--cc=viresh.kumar@linaro.org \
--cc=virtio-comment@lists.oasis-open.org \
--cc=virtio-dev@lists.oasis-open.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: link
Be 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.