Linux Input Archive on lore.kernel.org
 help / color / Atom feed
From: Sandeep Singh <Sandeep.Singh@amd.com>
To: jikos@kernel.org, benjamin.tissoires@redhat.com,
	linux-kernel@vger.kernel.org, linux-input@vger.kernel.org,
	srinivas.pandruvada@linux.intel.com, jic23@kernel.org,
	linux-iio@vger.kernel.org, hdegoede@redhat.com,
	Nehal-bakulchandra.Shah@amd.com, andy.shevchenko@gmail.com,
	mail@richard-neumann.de, m.felsch@pengutronix.de,
	rdunlap@infradead.org
Cc: Shyam-sundar.S-k@amd.com, Sandeep Singh <sandeep.singh@amd.com>
Subject: [PATCH v8 0/4] SFH: Add Support for AMD Sensor Fusion Hub
Date: Sat, 10 Oct 2020 01:31:34 +0530
Message-ID: <20201009200138.1847317-1-Sandeep.Singh@amd.com> (raw)

From: Sandeep Singh <sandeep.singh@amd.com>

AMD SFH(Sensor Fusion Hub) is HID based driver.SFH FW is part of MP2
processor (MP2 which is an ARM core connected to x86 for processing 
sensor data) and it runs on MP2 where in the driver resides on X86.
The driver functionalities are divided into three parts:-

1: amd-mp2-pcie:- This part of the module will communicate with MP2
		  firmware. MP2 which is exposed as a PCI device to the 
		  X86, uses mailboxes to talk to MP2 firmware to 
		  send/receive commands.
2: Client Layer:- This part of the driver will use DRAM  data and convert
                  the  data into HID format based on HID reports.
3: Transport layer :- This part of the driver the will communicate with HID
                  core.Communication between devices and HID core is
                  mostly done via HID reports

In terms of architecture, it resembles like ISH (Intel Integrated Sensor
Hub). However the major difference is all the hid reports are generated
as part of the kernel driver.

AMD SFH is integrated as a part of SoC, starting from 17h family of
processors. The solution is working well on several OEM products.
AMD SFH uses HID over PCIe bus.

Changes since v1:
        -> Fix auto build test warnings
        -> Fix smatch warnings "possible memory leak" -Reported by Dan
carpenter

Links of the review comments for v1:
        [1] https://patchwork.kernel.org/patch/11325163/
        [2] https://patchwork.kernel.org/patch/11325167/
        [3] https://patchwork.kernel.org/patch/11325171/
        [4] https://patchwork.kernel.org/patch/11325187/

Changes since v2:
	-> Debugfs divided into another patch
        -> Fix some cosmetic changes
        -> Fix for review comments
           Reported and Suggested by:-  Srinivas Pandruvada

Links of the review comments for v2:
        [1] https://patchwork.kernel.org/patch/11355491/
        [2] https://patchwork.kernel.org/patch/11355495/
        [3] https://patchwork.kernel.org/patch/11355499/
        [4] https://patchwork.kernel.org/patch/11355503/

Changes since v3:
        -> Removed debugfs suggested by - Benjamin Tissoires

Links of the review comments for v3:
        [1] https://lkml.org/lkml/2020/2/11/1256
        [2] https://lkml.org/lkml/2020/2/11/1257
        [3] https://lkml.org/lkml/2020/2/11/1258
        [4] https://lkml.org/lkml/2020/2/11/1259
        [5] https://lkml.org/lkml/2020/2/11/1260

Changes since v4:
        -> use PCI managed calls.
        -> use kernel APIs

Links of the review comments for v4:
        [1] https://lkml.org/lkml/2020/2/26/1360
        [2] https://lkml.org/lkml/2020/2/26/1361
        [3] https://lkml.org/lkml/2020/2/26/1362
        [4] https://lkml.org/lkml/2020/2/26/1363
        [5] https://lkml.org/lkml/2020/2/27/1
Changes since v5
        -> Fix for review comments by: Andy Shevchenko
        -> Fix for indentations erros, NULL pointer,Redundant assignment
        -> Drop LOCs in many location
        -> Create as a single driver module instead of two modules.

Links of the review comments for v5:
        [1] https://lkml.org/lkml/2020/5/29/589
        [2] https://lkml.org/lkml/2020/5/29/590
        [3] https://lkml.org/lkml/2020/5/29/606
        [4] https://lkml.org/lkml/2020/5/29/632
        [5] https://lkml.org/lkml/2020/5/29/633

Changes since v6
        -> fix Kbuild warning "warning: ignoring return value of
	   'pcim_enable_device',
        -> Removed select HID and add depends on HID

Links of the review comments for v6:
        [1] https://lkml.org/lkml/2020/8/9/58
        [2] https://lkml.org/lkml/2020/8/9/59
        [3] https://lkml.org/lkml/2020/8/9/125
        [4] https://lkml.org/lkml/2020/8/9/61
        [5] https://lkml.org/lkml/2020/8/9/91

Changes since v7
        -> Add Co-deveploed-by
        -> Build the Documentation
        -> Fix cosmatic changes
        -> Add init function inside probe function
        -> Use devm_add_action_or_reset() to avoids the remove()
	   callback.

Links of the review comments for v7:
        [1] https://lkml.org/lkml/2020/8/10/1221
        [2] https://lkml.org/lkml/2020/8/10/1222
        [3] https://lkml.org/lkml/2020/8/10/1223
        [4] https://lkml.org/lkml/2020/8/10/1224
        [5] https://lkml.org/lkml/2020/8/10/1225

Sandeep Singh (4):
  SFH: Add maintainers and documentation for AMD SFH based on HID
    framework
  SFH: PCIe driver to add support of AMD sensor fusion hub
  SFH:Transport Driver to add support of AMD Sensor Fusion Hub (SFH)
  SFH: Create HID report to Enable support of AMD sensor fusion Hub
    (SFH)

 Documentation/hid/amd-sfh-hid.rst             | 145 ++++
 Documentation/hid/index.rst                   |   1 +
 MAINTAINERS                                   |   8 +
 drivers/hid/Kconfig                           |   2 +
 drivers/hid/Makefile                          |   2 +
 drivers/hid/amd-sfh-hid/Kconfig               |  18 +
 drivers/hid/amd-sfh-hid/Makefile              |  13 +
 drivers/hid/amd-sfh-hid/amd_sfh_client.c      | 246 +++++++
 drivers/hid/amd-sfh-hid/amd_sfh_hid.c         | 174 +++++
 drivers/hid/amd-sfh-hid/amd_sfh_hid.h         |  67 ++
 drivers/hid/amd-sfh-hid/amd_sfh_pcie.c        | 152 +++++
 drivers/hid/amd-sfh-hid/amd_sfh_pcie.h        |  79 +++
 .../hid_descriptor/amd_sfh_hid_desc.c         | 224 ++++++
 .../hid_descriptor/amd_sfh_hid_desc.h         | 121 ++++
 .../hid_descriptor/amd_sfh_hid_report_desc.h  | 645 ++++++++++++++++++
 15 files changed, 1897 insertions(+)
 create mode 100644 Documentation/hid/amd-sfh-hid.rst
 create mode 100644 drivers/hid/amd-sfh-hid/Kconfig
 create mode 100644 drivers/hid/amd-sfh-hid/Makefile
 create mode 100644 drivers/hid/amd-sfh-hid/amd_sfh_client.c
 create mode 100644 drivers/hid/amd-sfh-hid/amd_sfh_hid.c
 create mode 100644 drivers/hid/amd-sfh-hid/amd_sfh_hid.h
 create mode 100644 drivers/hid/amd-sfh-hid/amd_sfh_pcie.c
 create mode 100644 drivers/hid/amd-sfh-hid/amd_sfh_pcie.h
 create mode 100644 drivers/hid/amd-sfh-hid/hid_descriptor/amd_sfh_hid_desc.c
 create mode 100644 drivers/hid/amd-sfh-hid/hid_descriptor/amd_sfh_hid_desc.h
 create mode 100644 drivers/hid/amd-sfh-hid/hid_descriptor/amd_sfh_hid_report_desc.h

-- 
2.25.1


             reply index

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-09 20:01 Sandeep Singh [this message]
2020-10-09 20:01 ` [PATCH v8 1/4] SFH: Add maintainers and documentation for AMD SFH based on HID framework Sandeep Singh
2020-10-30  8:07   ` Lukas Bulwahn
2020-11-03 10:33     ` Jiri Kosina
2020-10-09 20:01 ` [PATCH v8 2/4] SFH: PCIe driver to add support of AMD sensor fusion hub Sandeep Singh
2020-10-22 10:45   ` Richard Neumann
2020-10-09 20:01 ` [PATCH v8 3/4] SFH:Transport Driver to add support of AMD Sensor Fusion Hub (SFH) Sandeep Singh
2020-10-09 20:01 ` [PATCH v8 4/4] SFH: Create HID report to Enable support of AMD sensor fusion " Sandeep Singh
2020-10-17  9:20 ` [PATCH v8 0/4] SFH: Add Support for AMD Sensor Fusion Hub Singh, Sandeep
2020-10-22 10:05 ` Jiri Kosina
2020-10-23  9:03   ` Singh, Sandeep

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=20201009200138.1847317-1-Sandeep.Singh@amd.com \
    --to=sandeep.singh@amd.com \
    --cc=Nehal-bakulchandra.Shah@amd.com \
    --cc=Shyam-sundar.S-k@amd.com \
    --cc=andy.shevchenko@gmail.com \
    --cc=benjamin.tissoires@redhat.com \
    --cc=hdegoede@redhat.com \
    --cc=jic23@kernel.org \
    --cc=jikos@kernel.org \
    --cc=linux-iio@vger.kernel.org \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=m.felsch@pengutronix.de \
    --cc=mail@richard-neumann.de \
    --cc=rdunlap@infradead.org \
    --cc=srinivas.pandruvada@linux.intel.com \
    /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

Linux Input Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-input/0 linux-input/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-input linux-input/ https://lore.kernel.org/linux-input \
		linux-input@vger.kernel.org
	public-inbox-index linux-input

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-input


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git