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: <20241209-rmem-v2-0-cbc0e8c08a21@bootlin.com>
Date: Mon, 09 Dec 2024 16:59:34 +0100
From: Théo Lebrun <theo.lebrun@...tlin.com>
To: Srinivas Kandagatla <srinivas.kandagatla@...aro.org>, 
 Rob Herring <robh@...nel.org>, Krzysztof Kozlowski <krzk+dt@...nel.org>, 
 Conor Dooley <conor+dt@...nel.org>, 
 Nicolas Saenz Julienne <nsaenz@...nel.org>, 
 Thomas Bogendoerfer <tsbogend@...ha.franken.de>
Cc: devicetree@...r.kernel.org, linux-kernel@...r.kernel.org, 
 linux-mips@...r.kernel.org, 
 Vladimir Kondratiev <vladimir.kondratiev@...ileye.com>, 
 Grégory Clement <gregory.clement@...tlin.com>, 
 Thomas Petazzoni <thomas.petazzoni@...tlin.com>, 
 Tawfik Bayouk <tawfik.bayouk@...ileye.com>, 
 Théo Lebrun <theo.lebrun@...tlin.com>
Subject: [PATCH v2 0/6] nvmem: rmem: cleanup & add checksumming support for
 Mobileye EyeQ5

Hi,

This series is two-fold.

 - First some cleanup to nvmem/rmem.

   [PATCH 2/6] nvmem: specify ->reg_read/reg_write() expected return values
   [PATCH 3/6] nvmem: rmem: make ->reg_read() straight forward code
   [PATCH 4/6] nvmem: rmem: remove unused struct rmem::size field

   Those patches were sent on the 2024-07-24 [0] and saw no feedback.
   There are small improvements to the commit messages but the commit
   bodies stayed the same. I did not make this a follow-up as the EyeQ5
   compatible (see below) wasn't part of V1, and I wouldn't want people
   to think it has been through a first round of lkml review.

 - Second, add a new compatible to rmem for the EyeQ5-specific usecase;
   it parses a header and does checksumming at probe.

   [PATCH 1/6] dt-bindings: nvmem: rmem: Add mobileye,eyeq5-bootloader-config
   [PATCH 5/6] nvmem: rmem: add CRC validation for Mobileye EyeQ5 NVMEM
   [PATCH 6/6] MIPS: mobileye: eyeq5: add bootloader config reserved memory

Code is tested on real hardware, an EyeQ5 evaluation board.
With the patch series:

   # rmem=/sys/bus/nvmem/devices/rmem0
   # for i in $rmem/cells/*; do basename $i; hexdump -C $i | head -n1; done
   mac@7c,0
   00000000  00 28 f8 6b 87 1b                                 |.(.k..|
   mac@82,0
   00000000  00 28 f8 6c 88 1c                                 |.(.l..|

Have a nice day,
Thanks,
Théo

[0]: https://lore.kernel.org/lkml/20240724-nvmem-rmem-v1-0-d2e3a97349a0@bootlin.com/

Signed-off-by: Théo Lebrun <theo.lebrun@...tlin.com>
---
Changes in v2:
- [PATCH 1/6] dt-bindings: take "Acked-by: Rob Herring".
- [PATCH 5/6]: add "#include <linux/slab.h>" for kfree(). It caused
  compile errors on some architectures, thanks kernel test robot.
- Link to v1: https://lore.kernel.org/r/20241203-rmem-v1-0-24f4970cf14e@bootlin.com

---
Théo Lebrun (6):
      dt-bindings: nvmem: rmem: Add mobileye,eyeq5-bootloader-config
      nvmem: specify ->reg_read/reg_write() expected return values
      nvmem: rmem: make ->reg_read() straight forward code
      nvmem: rmem: remove unused struct rmem::size field
      nvmem: rmem: add CRC validation for Mobileye EyeQ5 NVMEM
      MIPS: mobileye: eyeq5: add bootloader config reserved memory

 Documentation/devicetree/bindings/nvmem/rmem.yaml |  1 +
 arch/mips/boot/dts/mobileye/eyeq5.dtsi            | 22 ++++++
 drivers/nvmem/rmem.c                              | 96 ++++++++++++++++++++---
 include/linux/nvmem-provider.h                    |  4 +-
 4 files changed, 111 insertions(+), 12 deletions(-)
---
base-commit: 40384c840ea1944d7c5a392e8975ed088ecf0b37
change-id: 20241203-rmem-15df9301cf0b

Best regards,
-- 
Théo Lebrun <theo.lebrun@...tlin.com>


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ