lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20230701070819.3992094-1-kumaravel.thiagarajan@microchip.com>
Date:   Sat, 1 Jul 2023 12:38:17 +0530
From:   Kumaravel Thiagarajan <kumaravel.thiagarajan@...rochip.com>
To:     <linux-kernel@...r.kernel.org>, <linux-gpio@...r.kernel.org>
CC:     <arnd@...db.de>, <gregkh@...uxfoundation.org>,
        <kumaravel.thiagarajan@...rochip.com>,
        <tharunkumar.pasumarthi@...rochip.com>,
        <UNGLinuxDriver@...rochip.com>, <michael@...le.cc>
Subject: [PATCH RESEND v13 char-misc-next 0/2] Add OTP/EEPROM functionality to the PCI1XXXX switch

From: "Vaibhaav Ram T.L" <vaibhaavram.tl@...rochip.com>

Microchip's pci1xxxx is an unmanaged PCIe3.1a switch for consumer,
industrial, and automotive applications. This switch integrates OTP and
EEPROM to enable customization of the part in the field. This patch adds
OTP/EEPROM functionality to the pci1xxxx switch.
---
v12 -> v13:
- Moved release_sys_lock() from patch#2 to patch#1

v11 -> v12:
- EEPROM is registered for NVMEM only if EEPROM is responsive

v10 -> v11:
- Fixed error handling during timouts by releasing sys_locks

v9 -> v10:
- Removed unused include header files
- Removed null check for priv pointer
- Removed debug messages
- Returned error during timeouts
- Added corner case checks for offset and count values

v8 -> v9:
- Changed architecture from sysfs bin interface to NVMEM interface

v7 -> v8:
- Fixed error handling in probe function of mchp_pci1xxxx_gp driver
- Added bin attribute groups to eliminate userspace from racing
- Implemented short read and write for OTP/EEPROM

v6 -> v7:
- Handled corner cases such as failure of sysfs bin creation and removal
- Added function to check whether device is responsive
- Removed un-necessary parenthesis
- Added function for repetitive tasks

v5 -> v6:
- Changed architecture from Block interface to sysfs interface
- Replaced busy loops with read_poll_timeout()

v4 -> v5:
- Used proper errno
- Removed un-necessary prints

v3 -> v4:
- Remove extra space, tab, un-necessary casting, paranthesis,
  do while(false) loops
- Used read_poll_timeout for polling BUSY_BIT

v2 -> v3:
- Modified commit description to include build issues reported by Kernel
  test robot <lkp@...el.com> which are fixed in this patch

v1 -> v2:
- Resolve build issue reported by kernel test robot <lkp@...el.com>

Kumaravel Thiagarajan (2):
  misc: microchip: pci1xxxx: Add support to read and write into PCI1XXXX
    OTP via NVMEM sysfs
  misc: microchip: pci1xxxx: Add support to read and write into PCI1XXXX
    EEPROM via NVMEM sysfs

 MAINTAINERS                                   |   2 +
 drivers/misc/mchp_pci1xxxx/Kconfig            |   1 +
 drivers/misc/mchp_pci1xxxx/Makefile           |   2 +-
 .../misc/mchp_pci1xxxx/mchp_pci1xxxx_otpe2p.c | 443 ++++++++++++++++++
 4 files changed, 447 insertions(+), 1 deletion(-)
 create mode 100644 drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_otpe2p.c

-- 
2.34.1

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ