public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "Martin Zaťovič" <m.zatovic1@gmail.com>
To: linux-kernel@vger.kernel.org
Cc: robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org,
	conor+dt@kernel.org, gregkh@linuxfoundation.org,
	linus.walleij@linaro.org, quic_jhugo@quicinc.com,
	nipun.gupta@amd.com, tzimmermann@suse.de, ogabbay@kernel.org,
	mathieu.poirier@linaro.org, axboe@kernel.dk,
	damien.lemoal@opensource.wdc.com, linux@zary.sk, arnd@arndb.de,
	yangyicong@hisilicon.com, benjamin.tissoires@redhat.com,
	masahiroy@kernel.org, jacek.lawrynowicz@linux.intel.com,
	geert+renesas@glider.be, devicetree@vger.kernel.org,
	andriy.shevchenko@intel.com,
	"Martin Zaťovič" <m.zatovic1@gmail.com>
Subject: [PATCHv5 0/4] Wiegand bus driver and GPIO bitbanged controller
Date: Thu, 24 Aug 2023 13:10:11 +0200	[thread overview]
Message-ID: <20230824111015.57765-1-m.zatovic1@gmail.com> (raw)

Hello,

I have fixed all the pointed out issues and I present the next version
of Wiegand bus driver and Wiegand GPIO bitbanged controller. The most
noticable change is the change of the input data format, which is now
ASCII hex string. Please let me know, if you see any issues.

I have also included a brief information about Wiegand in the commit
message of the commit adding the bus driver, since there is no official
datasheet that I could link.

CHANGELOG:
wiegand.c
- kernel symbols are now part of WIEGAND namespace
- added includes for conatiner_of.h and types.h
- made IDA static
- removed redundant null checks and error messages
- added overflow check for memory allocation size
- used devm_add_action_or_reset() for controller allocation
- fixed comments according to kernel doc validator
- avoided dereferencing fwnode in struct device by using device_set_node()
- fixed fwnode format specifier
- removed the overly complicated system for getting timings and replaced it
  with a clear and easily understandable one
- unified the goto label names
- removed static keyword from struct bus_type
- used bitmap_parse_user() function to parse the user data, which also means
  that the input format has changed to ASCII hex string
- removed input length checks as they are not valid anymore using the new input
  format

wiegand.h
- removed unnecesary mod_devicetable.h include and added container_of.h and
  types.h includes
- added fs.h header for struct file_operations
- removed underscores in some variables names within macros

wiegand-gpio.c
- fixed some error codes
- used fsleep() in the wiegand_gpio_send_bit() function
- edited the loop in wiegand_gpio_write_by_bits() so that it doesnt check for
  the last bit in each iteration
- used the devm_gpiod_get_array() for acquiring the two gpio lines
- imported WIEGAND namespace

wiegand-gpio.yaml
- dropped devicetree bindings

Martin Zaťovič (4):
  dt-bindings: wiegand: add Wiegand controller common properties
  wiegand: add Wiegand bus driver
  dt-bindings: wiegand: add GPIO bitbanged Wiegand controller
  wiegand: add Wiegand GPIO bitbanged controller driver

 .../ABI/testing/sysfs-driver-wiegand-gpio     |   9 +
 .../bindings/wiegand/wiegand-controller.yaml  |  39 ++
 .../bindings/wiegand/wiegand-gpio.yaml        |  46 ++
 MAINTAINERS                                   |  14 +
 drivers/Kconfig                               |   2 +
 drivers/Makefile                              |   1 +
 drivers/wiegand/Kconfig                       |  36 ++
 drivers/wiegand/Makefile                      |   2 +
 drivers/wiegand/wiegand-gpio.c                | 192 ++++++
 drivers/wiegand/wiegand.c                     | 590 ++++++++++++++++++
 include/linux/wiegand.h                       | 148 +++++
 11 files changed, 1079 insertions(+)
 create mode 100644 Documentation/ABI/testing/sysfs-driver-wiegand-gpio
 create mode 100644 Documentation/devicetree/bindings/wiegand/wiegand-controller.yaml
 create mode 100644 Documentation/devicetree/bindings/wiegand/wiegand-gpio.yaml
 create mode 100644 drivers/wiegand/Kconfig
 create mode 100644 drivers/wiegand/Makefile
 create mode 100644 drivers/wiegand/wiegand-gpio.c
 create mode 100644 drivers/wiegand/wiegand.c
 create mode 100644 include/linux/wiegand.h

-- 
2.40.1


             reply	other threads:[~2023-08-24 11:11 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-24 11:10 Martin Zaťovič [this message]
2023-08-24 11:10 ` [PATCHv5 1/4] dt-bindings: wiegand: add Wiegand controller common properties Martin Zaťovič
2023-08-24 13:37   ` Rob Herring
2023-08-25 13:17     ` Martin Zaťovič
2023-08-24 11:10 ` [PATCHv5 2/4] wiegand: add Wiegand bus driver Martin Zaťovič
2023-08-24 11:40   ` Greg KH
2023-08-24 12:53     ` Martin Zaťovič
2023-08-24 13:08       ` Greg KH
2023-08-24 13:28       ` Andy Shevchenko
2023-08-24 13:26   ` Andy Shevchenko
2023-08-24 11:10 ` [PATCHv5 3/4] dt-bindings: wiegand: add GPIO bitbanged Wiegand controller Martin Zaťovič
2023-08-24 12:32   ` Rob Herring
2023-08-24 13:40   ` Rob Herring
2023-08-24 11:10 ` [PATCHv5 4/4] wiegand: add Wiegand GPIO bitbanged controller driver Martin Zaťovič
2023-08-24 13:35   ` Andy Shevchenko
2023-08-24 13:44     ` Andy Shevchenko

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=20230824111015.57765-1-m.zatovic1@gmail.com \
    --to=m.zatovic1@gmail.com \
    --cc=andriy.shevchenko@intel.com \
    --cc=arnd@arndb.de \
    --cc=axboe@kernel.dk \
    --cc=benjamin.tissoires@redhat.com \
    --cc=conor+dt@kernel.org \
    --cc=damien.lemoal@opensource.wdc.com \
    --cc=devicetree@vger.kernel.org \
    --cc=geert+renesas@glider.be \
    --cc=gregkh@linuxfoundation.org \
    --cc=jacek.lawrynowicz@linux.intel.com \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@zary.sk \
    --cc=masahiroy@kernel.org \
    --cc=mathieu.poirier@linaro.org \
    --cc=nipun.gupta@amd.com \
    --cc=ogabbay@kernel.org \
    --cc=quic_jhugo@quicinc.com \
    --cc=robh+dt@kernel.org \
    --cc=tzimmermann@suse.de \
    --cc=yangyicong@hisilicon.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