mbox series

[v2,0/2] Add support for Congatec CGEB BIOS interface

Message ID 20240801160610.101859-1-mstrodl@csh.rit.edu
Headers show
Series Add support for Congatec CGEB BIOS interface | expand

Message

Mary Strodl Aug. 1, 2024, 4:06 p.m. UTC
The following series adds support for the Congatec CGEB interface
found on some Congatec x86 boards. The CGEB interface is a BIOS
interface which provides access to onboard peripherals like I2C
busses and watchdogs. It works by mapping BIOS code and searching
for magic values which specify the entry points to the CGEB call.
The CGEB call is an API provided by the BIOS which provides access
to the functions in an ioctl like fashion.

At the request of some folks last time this series went out, CGEB
now has a userspace component which runs the x86 blob (rather than
running it directly in the kernel), which sends requests back and
forth using the cn_netlink API.

You can find a reference implementation of the userspace helper here:
https://github.com/Mstrodl/cgeb-helper

I didn't get an answer when I asked where the userspace component
should live, so I didn't put a ton of work into getting the helper
up to snuff since similar userspace helpers (like v86d) are not
in-tree. If folks would like the helper in-tree, that's fine too.

This series is based on the excellent work of Sascha Hauer and
Christian Gmeiner. You can find their original work here:

http://patchwork.ozlabs.org/patch/219756/
http://patchwork.ozlabs.org/patch/219755/
http://patchwork.ozlabs.org/patch/219757/

http://patchwork.ozlabs.org/patch/483262/
http://patchwork.ozlabs.org/patch/483264/
http://patchwork.ozlabs.org/patch/483261/
http://patchwork.ozlabs.org/patch/483263/

Mary Strodl (1):
  x86: Add basic support for the Congatec CGEB BIOS interface

Sascha Hauer (1):
  i2c: Add Congatec CGEB I2C driver

 drivers/i2c/busses/Kconfig             |    7 +
 drivers/i2c/busses/Makefile            |    1 +
 drivers/i2c/busses/i2c-congatec-cgeb.c |  189 ++++
 drivers/mfd/Kconfig                    |   10 +
 drivers/mfd/Makefile                   |    1 +
 drivers/mfd/congatec-cgeb.c            | 1139 ++++++++++++++++++++++++
 include/linux/mfd/congatec-cgeb.h      |  111 +++
 include/uapi/linux/connector.h         |    4 +-
 8 files changed, 1461 insertions(+), 1 deletion(-)
 create mode 100644 drivers/i2c/busses/i2c-congatec-cgeb.c
 create mode 100644 drivers/mfd/congatec-cgeb.c
 create mode 100644 include/linux/mfd/congatec-cgeb.h

Comments

Andi Shyti Aug. 7, 2024, 11:14 p.m. UTC | #1
Hi Mary,

On Thu, Aug 01, 2024 at 12:06:08PM GMT, Mary Strodl wrote:
> The following series adds support for the Congatec CGEB interface
> found on some Congatec x86 boards. The CGEB interface is a BIOS
> interface which provides access to onboard peripherals like I2C
> busses and watchdogs. It works by mapping BIOS code and searching
> for magic values which specify the entry points to the CGEB call.
> The CGEB call is an API provided by the BIOS which provides access
> to the functions in an ioctl like fashion.
> 
> At the request of some folks last time this series went out, CGEB
> now has a userspace component which runs the x86 blob (rather than
> running it directly in the kernel), which sends requests back and
> forth using the cn_netlink API.

this little paragraph is the closest to a changelog I can see.
Could you please write up a real changlog and list all the
changes from v1 to v2?

You can do it as reply to this e-mail, but please, next time do
it either in the cover letter or for each patch.

Thanks,
Andi

> You can find a reference implementation of the userspace helper here:
> https://github.com/Mstrodl/cgeb-helper
> 
> I didn't get an answer when I asked where the userspace component
> should live, so I didn't put a ton of work into getting the helper
> up to snuff since similar userspace helpers (like v86d) are not
> in-tree. If folks would like the helper in-tree, that's fine too.
> 
> This series is based on the excellent work of Sascha Hauer and
> Christian Gmeiner. You can find their original work here:
> 
> http://patchwork.ozlabs.org/patch/219756/
> http://patchwork.ozlabs.org/patch/219755/
> http://patchwork.ozlabs.org/patch/219757/
> 
> http://patchwork.ozlabs.org/patch/483262/
> http://patchwork.ozlabs.org/patch/483264/
> http://patchwork.ozlabs.org/patch/483261/
> http://patchwork.ozlabs.org/patch/483263/
> 
> Mary Strodl (1):
>   x86: Add basic support for the Congatec CGEB BIOS interface
> 
> Sascha Hauer (1):
>   i2c: Add Congatec CGEB I2C driver
> 
>  drivers/i2c/busses/Kconfig             |    7 +
>  drivers/i2c/busses/Makefile            |    1 +
>  drivers/i2c/busses/i2c-congatec-cgeb.c |  189 ++++
>  drivers/mfd/Kconfig                    |   10 +
>  drivers/mfd/Makefile                   |    1 +
>  drivers/mfd/congatec-cgeb.c            | 1139 ++++++++++++++++++++++++
>  include/linux/mfd/congatec-cgeb.h      |  111 +++
>  include/uapi/linux/connector.h         |    4 +-
>  8 files changed, 1461 insertions(+), 1 deletion(-)
>  create mode 100644 drivers/i2c/busses/i2c-congatec-cgeb.c
>  create mode 100644 drivers/mfd/congatec-cgeb.c
>  create mode 100644 include/linux/mfd/congatec-cgeb.h
> 
> -- 
> 2.45.2
>