From: Manjunatha Venkatesh <manjunatha.venkatesh@nxp.com>
To: Greg KH <gregkh@linuxfoundation.org>
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"will@kernel.org" <will@kernel.org>,
"axboe@kernel.dk" <axboe@kernel.dk>,
"mb@lightnvm.io" <mb@lightnvm.io>,
"ckeepax@opensource.cirrus.com" <ckeepax@opensource.cirrus.com>,
"arnd@arndb.d" <arnd@arndb.d>, "mst@redhat.com" <mst@redhat.com>,
"javier@javigon.com" <javier@javigon.com>,
"mikelley@microsoft.com" <mikelley@microsoft.com>,
"jasowang@redhat.com" <jasowang@redhat.com>,
"sunilmut@microsoft.com" <sunilmut@microsoft.com>,
"bjorn.andersson@linaro.org" <bjorn.andersson@linaro.org>,
"rvmanjumce@gmail.com" <rvmanjumce@gmail.com>
Subject: Re: [EXT] Re: [PATCH v2] uwb: nxp: sr1xx: UWB driver support for sr1xx series chip
Date: Tue, 15 Mar 2022 13:10:44 +0000 [thread overview]
Message-ID: <51423ae8-66ed-7aeb-8131-7741a3804013@nxp.com> (raw)
In-Reply-To: <YjB5ue4nHUUVOW/8@kroah.com>
On 3/15/22 17:04, Greg KH wrote:
> Caution: EXT Email
>
> On Tue, Mar 15, 2022 at 04:22:05PM +0530, Manjunatha Venkatesh wrote:
>> Ultra Wide Band(UWB) is a fast, secure and low power radio protocol used
>> to determine location with accuracy unmatched by any other wireless
>> technology.
> The kernel changelog is not the place for marketing copy. Please just
> describe the hardware without using words like this.
Sure, will update the description as part of next patch.
>
>> Its a short-range wireless communication protocol. It uses radio waves to
>> enable devices to talk to each other.
>>
>> This is a new driver that supports the integrated UWB for
>> Nxp SoCs, especially the sr1xx series and depends on the SPI module.
>>
>> This driver works with Nxp UWB Subsystem(UWBS) which is FiRa Compliance.
>> Corresponding UCI details available in Fira Consortuim website.
>>
>> sr1xx is flash less UWBS and it requires firmware download on every
>> device boot.
>>
>> Internally driver will handle two modes of operation.
>> 1.HBCI mode (sr1xx BootROM Code Interface)
>> Firmware download uses HBCI ptotocol packet structure which is
>> Nxp proprietary,Firmware File(.bin) stored in user space context
>> and during device init sequence pick the firmware packet in chunk
>> and send it to the driver with write() api call.
>> Complete firmware download protocol logic implemented in user space,
>> Driver used here is kind of pipe to send data to SPI line.
>> Firmware acknowledge for every chunk packet sent and same thing
>> is monitored,in user space code(HAL layer).
>> If any error Firmware download sequence will fail and reset the device.
>> If firmware download packet sent successfully at the end device will
>> send device status notification and its indication of device entered
>> UCI mode.Here after any command/response/notification will follow
>> UCI packet structure.
>>
>> 2.UCI mode (UWB Command interface)
>> Once Firmware download finishes sr1xx will switch to UCI mode packet
>> structure.Here this driver acts as pipe between user space and sr1xx.
>> Any response or notification received from sr1xx through SPI line
>> will convey to user space.User space(UCI lib) will take care of
>> UCI parsing logic.
> Where is that userspace code? How will it talk to the kernel? Why do
> the existing user/kernel apis not sufice for this one random hardware
> device? We have support for wireless devices of all types today, why
> is this so special it needs a custom interface for it?
>
>> Its IRQ based driver and sr1xx specific irq handshake mechanism logic
>> implemented to avoid any race condition between write and read
>> during ranging sequence.
>>
>> UCI mode Write is same as HBCI mode sequence whatever command received
>> from user space will send to the sr1xx via SPI line.
>> In UCI mode read api called first and waiting on the IRQ line status
>> in order to avoid missing of interrupts after write sequence.
>>
>> This driver needs dts config update as per the sr1xx data sheet.
>> Corresponding document added in Documentation/devicetree/bindings/uwb
>
>> Signed-off-by: Manjunatha Venkatesh <manjunatha.venkatesh@nxp.com>
>>
>> Changes since v1:
>> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flkml.org%2Flkml%2F2022%2F3%2F7%2F1254&data=04%7C01%7Cmanjunatha.venkatesh%40nxp.com%7C708a77e63b7d4a5aeca308da0677c19e%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C637829408669477610%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=54vIhj3naaT4MRXvX7nUXbaTgx%2BiLoG3NAkh1KqK8V4%3D&reserved=0
>> ---
>> MAINTAINERS | 7 +
>> drivers/Kconfig | 2 +
>> drivers/Makefile | 1 +
>> drivers/uwb/Kconfig | 27 ++
>> drivers/uwb/Makefile | 5 +
>> drivers/uwb/sr1xx.c | 857 +++++++++++++++++++++++++++++++++++++++++++
>> 6 files changed, 899 insertions(+)
>> create mode 100644 drivers/uwb/Kconfig
>> create mode 100644 drivers/uwb/Makefile
>> create mode 100644 drivers/uwb/sr1xx.c
>>
>> diff --git a/MAINTAINERS b/MAINTAINERS
>> index e127c2fb08a7..31c08ecc152c 100644
>> --- a/MAINTAINERS
>> +++ b/MAINTAINERS
>> @@ -21471,3 +21471,10 @@ S: Buried alive in reporters
>> T: git git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
>> F: *
>> F: */
>> +
>> +UWB
>> +M: Greg KH <gregkh@linuxfoundation.org>
> Hah, NO!
>
>> +M: manjunatha.venkatesh@nxp.com
>> +L: rvmanjumce@gmail.com
> Full names.
>
>> +S: Maintained
>> +F: drivers/uwb/sr1xx.c
> This needs to be sorted properly. Please read the file you are
> modifying.
>
> I'm stopping here. Don't add anyone's name to a MAINTAINERS file unless
> you get explicit permission from them to do so. Otherwise it is quite
> rude, don't you think?
Sorry, Next patch will remove your name from this list.
>
> {sigh}
>
> greg k-h
next prev parent reply other threads:[~2022-03-15 13:10 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-03-15 10:52 Manjunatha Venkatesh
2022-03-15 11:34 ` Greg KH
2022-03-15 13:10 ` Manjunatha Venkatesh [this message]
2022-03-15 11:34 ` Greg KH
2022-03-15 11:12 Manjunatha Venkatesh
2022-03-15 11:39 ` Greg KH
2022-03-15 11:51 ` [EXT] " Manjunatha Venkatesh
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=51423ae8-66ed-7aeb-8131-7741a3804013@nxp.com \
--to=manjunatha.venkatesh@nxp.com \
--cc=arnd@arndb.d \
--cc=axboe@kernel.dk \
--cc=bjorn.andersson@linaro.org \
--cc=ckeepax@opensource.cirrus.com \
--cc=gregkh@linuxfoundation.org \
--cc=jasowang@redhat.com \
--cc=javier@javigon.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mb@lightnvm.io \
--cc=mikelley@microsoft.com \
--cc=mst@redhat.com \
--cc=rvmanjumce@gmail.com \
--cc=sunilmut@microsoft.com \
--cc=will@kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®