linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Stefan Wahren <stefan.wahren@i2se.com>
To: Ojaswin Mujoo <ojaswin98@gmail.com>, nsaenz@kernel.org
Cc: gregkh@linuxfoundation.org, arnd@arndb.de,
	dan.carpenter@oracle.com, phil@raspberrypi.com,
	bcm-kernel-feedback-list@broadcom.com,
	linux-arm-kernel@lists.infradead.org,
	linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v3 0/5] vchiq: Patch to separate platform and cdev code
Date: Sun, 11 Jul 2021 12:29:10 +0200	[thread overview]
Message-ID: <65855393-302d-b931-e363-c5e564bdd6d2@i2se.com> (raw)
In-Reply-To: <cover.1625401927.git.ojaswin98@gmail.com>

Hi Ojaswin,

Am 04.07.21 um 17:56 schrieb Ojaswin Mujoo:
> Hello,
>
> This patchset adderesses the TODO item number 10 specified at:
>
>     drivers/staging/vc04-services/interface/TODO
>
> For reference, the task is:
>
>     10) Reorganize file structure: Move char driver to it's own file and join
>     both platform files
>
>     The cdev is defined alongside with the platform code in vchiq_arm.c. It
>     would be nice to completely decouple it from the actual core code. For
>     instance to be able to use bcm2835-audio without having /dev/vchiq created.
>     One could argue it's better for security reasons or general cleanliness. It
>     could even be interesting to create two different kernel modules, something
>     the likes of vchiq-core.ko and vchiq-dev.ko. This would also ease the
>     upstreaming process.
>
> A summary of the patches is as follows:
>
> - Patch 1: Move cdev init code into a function
> - Patch 2: Shift some devlarations from vchiq_arm.c to vchiq_arm.h for
>            sharing
> - Patch 3: Move vchiq cdev init code from vchiq_arm.c into vchiq_dev.c
> - Patch 4: Decouple cdev code by defining a Kconfig entry to allow
>            optional compilation of it.
> - Patch 5: Merge code in vchiq_2835_arm.c to vchiq_arm.c
>
> (More details can be found in the commit messages)
>
> Changes since v2 [1]:
>
> * In Patch 1, as suggested, I have added error handling code back to
>   ensure the driver exits when there is an error in creating vchiq cdev
>   
> * I have built this patch against the right kernel (gregkh/staging,
>   staging-next branch) to avoid introducing any unwanted inconsistencies
>   like whitespace changes
>
> I have tested the patch using vchiq_test utility on RPi 3B+.
>
> Additionally, I had a small question regarding the next steps here
> (quoting my cover letter from v2):
>
> This question is more related to the next set of patches I'm
> planning to submit. So the last thing left in this TODO is to
> completely decouple vchiq platform and cdev code into 2 separate
> modules and I am planning to do that in a different patchset. 
>
> The approach I have in mind is to start by using EXPORT_SYMBOL to
> export all the functions (and accessor functions for variables like
> g_state) that would be required for cdev init. Majority of these
> would be exported from vchiq_arm.c and vchiq_core.c, and will then be
> used in vchiq-dev.ko. Is this the right way to approach this? 

i'm back from vacation and had some time for review. IMHO the patch
series is fine (except some nits in patch 5) regarding the task in the
TODO list. Making cdev a separate module is a cool idea, but it's not
really necessary for moving this driver out of staging. There are more
important things to do.

Thank you

Regards
Stefan

>
> Thank you in advance for the help. Please let me know if any changes/
> additional info is required.
>
> Regards,
> Ojaswin
>
> [1] v2: https://lkml.org/lkml/2021/6/20/63
>
> Ojaswin Mujoo (5):
>   staging: vchiq: Refactor vchiq cdev code
>   staging: vchiq: Move certain declarations to vchiq_arm.h
>   staging: vchiq: Move vchiq char driver to its own file
>   staging: vchiq: Make creation of vchiq cdev optional
>   staging: vchiq: Combine vchiq platform code into single file
>
>  drivers/staging/vc04_services/Kconfig         |   10 +
>  drivers/staging/vc04_services/Makefile        |    5 +-
>  .../interface/vchiq_arm/vchiq_2835_arm.c      |  564 ----
>  .../interface/vchiq_arm/vchiq_arm.c           | 2344 +++++------------
>  .../interface/vchiq_arm/vchiq_arm.h           |   82 +
>  .../interface/vchiq_arm/vchiq_dev.c           | 1440 ++++++++++
>  6 files changed, 2265 insertions(+), 2180 deletions(-)
>  delete mode 100644 drivers/staging/vc04_services/interface/vchiq_arm/vchiq_2835_arm.c
>  create mode 100644 drivers/staging/vc04_services/interface/vchiq_arm/vchiq_dev.c
>


      parent reply	other threads:[~2021-07-11 10:29 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-04 15:56 [PATCH v3 0/5] vchiq: Patch to separate platform and cdev code Ojaswin Mujoo
2021-07-04 15:57 ` [PATCH v3 1/5] staging: vchiq: Refactor vchiq " Ojaswin Mujoo
2021-07-11 10:33   ` Stefan Wahren
2021-07-04 15:57 ` [PATCH v3 2/5] staging: vchiq: Move certain declarations to vchiq_arm.h Ojaswin Mujoo
2021-07-11 10:34   ` Stefan Wahren
2021-07-04 15:58 ` [PATCH v3 3/5] staging: vchiq: Move vchiq char driver to its own file Ojaswin Mujoo
2021-07-05  9:56   ` Dan Carpenter
2021-07-05 10:58     ` Ojaswin Mujoo
2021-07-05 11:19       ` Dan Carpenter
2021-07-05 11:24         ` Ojaswin Mujoo
2021-07-11 10:35   ` Stefan Wahren
2021-07-04 15:59 ` [PATCH v3 4/5] staging: vchiq: Make creation of vchiq cdev optional Ojaswin Mujoo
2021-07-11 10:39   ` Stefan Wahren
2021-07-04 15:59 ` [PATCH v3 5/5] staging: vchiq: Combine vchiq platform code into single file Ojaswin Mujoo
2021-07-04 18:07   ` kernel test robot
2021-07-11 10:49   ` Stefan Wahren
2021-07-11 11:28     ` Ojaswin Mujoo
2021-07-21  8:22       ` Greg KH
2021-07-21 16:28         ` Ojaswin Mujoo
2021-07-11 10:29 ` Stefan Wahren [this message]

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=65855393-302d-b931-e363-c5e564bdd6d2@i2se.com \
    --to=stefan.wahren@i2se.com \
    --cc=arnd@arndb.de \
    --cc=bcm-kernel-feedback-list@broadcom.com \
    --cc=dan.carpenter@oracle.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-staging@lists.linux.dev \
    --cc=nsaenz@kernel.org \
    --cc=ojaswin98@gmail.com \
    --cc=phil@raspberrypi.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
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;
as well as URLs for NNTP newsgroup(s).