<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/arch/powerpc/include/uapi/asm, branch master</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>Merge tag 'powerpc-7.2-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux</title>
<updated>2026-06-19T14:37:52+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2026-06-19T14:37:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=91981f96d2831a73cd4dbe4383b4d7e1dcdfcc06'/>
<id>91981f96d2831a73cd4dbe4383b4d7e1dcdfcc06</id>
<content type='text'>
Pull powerpc updates from Madhavan Srinivasan:

 - Enable GENERIC_ENTRY feature

 - Add missing property in DTS for mpc83xx platform

 - Enable building of DTB based on platfrom Kconfig

 - Add powerpc64 JIT support for timed may_goto

 - Add timeout to RTAS busy-wait loops

 - Simplify cpumask api usage for cpuinfo display

 - implement get_direction() in cpm1 (8xx platform)

 - MAINTAINERS file update for power VMX AES entries

 - Fixes to handle preempt count

 - Restore KUAP registers on syscall restart exit

 - define MIN_RMA in bytes rather than MB

 - misc fixes and cleanups

Thanks to Aboorva Devarajan, Adriano Vero, Amit Machhiwal, Anushree
Mathur, Bartosz Golaszewski, Christophe Leroy (CS GROUP), David Gow,
Jinjie Ruan, J. Neuschäfer, Linus Walleij, Mahesh Salgaonkar, Mukesh
Kumar Chaurasiya (IBM), Ritesh Harjani (IBM), Saket Kumar Bhaskar,
Samir M, Sayali Patil, Shirisha G, Shivang Upadhyay, Shrikanth Hegde,
Sourabh Jain, Thorsten Blum, Venkat Rao Bagalkote, and Yury Norov.

* tag 'powerpc-7.2-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: (32 commits)
  powerpc/fadump: define MIN_RMA in bytes rather than MB
  powerpc: Restore KUAP registers on syscall restart exit
  powerpc/kexec: fix double get_cpu() imbalance in kexec_prepare_cpus
  powerpc/powernv: fix preempt count leak in pnv_kexec_wait_secondaries_down
  powerpc/perf: fix preempt count underflow in fsl_emb_pmu_del
  powerpc/boot: Allow text relocations for pseries wrapper with binutils 2.46+
  powerpc: Simplify access_ok()
  powerpc/entry: Disable interrupts before irqentry_exit
  powerpc/8xx: implement get_direction() in cpm1
  powerpc/pseries/lparcfg: Replace deprecated strcpy in parse_system_parameter_string
  powerpc: Fix indentation and replace typedef with struct name
  powerpc/rtas: Replace one-element array with flexible array member
  powerpc: use sysfs_emit{_at} in sysfs show functions
  MAINTAINERS: powerpc: update VMX AES entries
  ppc/fadump: invoke kmsg_dump in fadump panic path
  powerpc/xive: Add warning if target CPU not found
  powerpc/perf: Use cpumask_intersects api for checking disable path
  powerpc: Simplify cpumask api usage for cpuinfo display
  powerpc: Use cpumask_next_wrap instead
  powerpc/fadump: Add timeout to RTAS busy-wait loops
  ...
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Pull powerpc updates from Madhavan Srinivasan:

 - Enable GENERIC_ENTRY feature

 - Add missing property in DTS for mpc83xx platform

 - Enable building of DTB based on platfrom Kconfig

 - Add powerpc64 JIT support for timed may_goto

 - Add timeout to RTAS busy-wait loops

 - Simplify cpumask api usage for cpuinfo display

 - implement get_direction() in cpm1 (8xx platform)

 - MAINTAINERS file update for power VMX AES entries

 - Fixes to handle preempt count

 - Restore KUAP registers on syscall restart exit

 - define MIN_RMA in bytes rather than MB

 - misc fixes and cleanups

Thanks to Aboorva Devarajan, Adriano Vero, Amit Machhiwal, Anushree
Mathur, Bartosz Golaszewski, Christophe Leroy (CS GROUP), David Gow,
Jinjie Ruan, J. Neuschäfer, Linus Walleij, Mahesh Salgaonkar, Mukesh
Kumar Chaurasiya (IBM), Ritesh Harjani (IBM), Saket Kumar Bhaskar,
Samir M, Sayali Patil, Shirisha G, Shivang Upadhyay, Shrikanth Hegde,
Sourabh Jain, Thorsten Blum, Venkat Rao Bagalkote, and Yury Norov.

* tag 'powerpc-7.2-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: (32 commits)
  powerpc/fadump: define MIN_RMA in bytes rather than MB
  powerpc: Restore KUAP registers on syscall restart exit
  powerpc/kexec: fix double get_cpu() imbalance in kexec_prepare_cpus
  powerpc/powernv: fix preempt count leak in pnv_kexec_wait_secondaries_down
  powerpc/perf: fix preempt count underflow in fsl_emb_pmu_del
  powerpc/boot: Allow text relocations for pseries wrapper with binutils 2.46+
  powerpc: Simplify access_ok()
  powerpc/entry: Disable interrupts before irqentry_exit
  powerpc/8xx: implement get_direction() in cpm1
  powerpc/pseries/lparcfg: Replace deprecated strcpy in parse_system_parameter_string
  powerpc: Fix indentation and replace typedef with struct name
  powerpc/rtas: Replace one-element array with flexible array member
  powerpc: use sysfs_emit{_at} in sysfs show functions
  MAINTAINERS: powerpc: update VMX AES entries
  ppc/fadump: invoke kmsg_dump in fadump panic path
  powerpc/xive: Add warning if target CPU not found
  powerpc/perf: Use cpumask_intersects api for checking disable path
  powerpc: Simplify cpumask api usage for cpuinfo display
  powerpc: Use cpumask_next_wrap instead
  powerpc/fadump: Add timeout to RTAS busy-wait loops
  ...
</pre>
</div>
</content>
</entry>
<entry>
<title>vfs: uapi: retire octal and hex numbers in favor of (1 &lt;&lt; n) for O_ flags</title>
<updated>2026-06-06T13:34:03+00:00</updated>
<author>
<name>Jori Koolstra</name>
<email>jkoolstra@xs4all.nl</email>
</author>
<published>2026-06-04T22:24:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=0da79c259ad0554b36761a7135d4f92eb7c46263'/>
<id>0da79c259ad0554b36761a7135d4f92eb7c46263</id>
<content type='text'>
A recent build failure[1] exposed the diffculty of working with the
current octal and hex definitions of O_ flags when trying to find a gap
for a new flag. This difficulty is compounded by the fact that O_ flags
may have architectural specific values.

Replace the hex/octal #defines, which are hard to parse when looking for
free bits, with explicit bit shifts like (1 &lt;&lt; 11). Also, add comments
that identify which architectures redefine some of the seemingly free
("cursed") bits in uapi/asm-generic/fcntl.h. These should not be used to
define new O_ flags (for now, at least).

The translastion was done with Claude Opus 4.8, and verified with a
(non-AI) gawk script. The accounting of which architectures claim
which bit-gaps in uapi/asm-generic/fcntl.h is also done by hand.

[1]: https://lore.kernel.org/all/agruPPybCx8q2XcJ@sirena.org.uk/

Assisted-by: Claude:Opus 4.8
Signed-off-by: Jori Koolstra &lt;jkoolstra@xs4all.nl&gt;
Link: https://patch.msgid.link/20260604222405.5382-1-jkoolstra@xs4all.nl
Signed-off-by: Christian Brauner (Amutable) &lt;brauner@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A recent build failure[1] exposed the diffculty of working with the
current octal and hex definitions of O_ flags when trying to find a gap
for a new flag. This difficulty is compounded by the fact that O_ flags
may have architectural specific values.

Replace the hex/octal #defines, which are hard to parse when looking for
free bits, with explicit bit shifts like (1 &lt;&lt; 11). Also, add comments
that identify which architectures redefine some of the seemingly free
("cursed") bits in uapi/asm-generic/fcntl.h. These should not be used to
define new O_ flags (for now, at least).

The translastion was done with Claude Opus 4.8, and verified with a
(non-AI) gawk script. The accounting of which architectures claim
which bit-gaps in uapi/asm-generic/fcntl.h is also done by hand.

[1]: https://lore.kernel.org/all/agruPPybCx8q2XcJ@sirena.org.uk/

Assisted-by: Claude:Opus 4.8
Signed-off-by: Jori Koolstra &lt;jkoolstra@xs4all.nl&gt;
Link: https://patch.msgid.link/20260604222405.5382-1-jkoolstra@xs4all.nl
Signed-off-by: Christian Brauner (Amutable) &lt;brauner@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>powerpc: add exit_flags field in pt_regs</title>
<updated>2026-05-20T01:27:14+00:00</updated>
<author>
<name>Mukesh Kumar Chaurasiya</name>
<email>mchauras@linux.ibm.com</email>
</author>
<published>2026-04-27T12:27:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=d7a6797e0bc1ee7bddb8a298f2d1acddb300efb3'/>
<id>d7a6797e0bc1ee7bddb8a298f2d1acddb300efb3</id>
<content type='text'>
Add a new field `exit_flags` in the pt_regs structure. This field will hold
the flags set during interrupt or syscall execution that are required during
exit to user mode.

Specifically, the `TIF_RESTOREALL` flag, stored in this field, helps the
exit routine determine if any NVGPRs were modified and need to be restored
before returning to userspace.

This addition ensures a clean and architecture-specific mechanism to track
per-syscall or per-interrupt state transitions related to register restore.

Changes:
 - Add `exit_flags` and `__pt_regs_pad` to maintain 16-byte stack alignment
 - Update asm-offsets.c and ptrace.c for offset and validation
 - Update PT_* constants in uapi header to reflect the new layout

Signed-off-by: Mukesh Kumar Chaurasiya &lt;mchauras@linux.ibm.com&gt;
Tested-by: Samir M &lt;samir@linux.ibm.com&gt;
Tested-by: David Gow &lt;davidgow@google.com&gt;
Tested-by: Venkat Rao Bagalkote &lt;venkat88@linux.ibm.com&gt;
Reviewed-by: Shrikanth Hegde &lt;sshegde@linux.ibm.com&gt;
Signed-off-by: Madhavan Srinivasan &lt;maddy@linux.ibm.com&gt;
Link: https://patch.msgid.link/20260427122742.210074-6-mkchauras@gmail.com

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add a new field `exit_flags` in the pt_regs structure. This field will hold
the flags set during interrupt or syscall execution that are required during
exit to user mode.

Specifically, the `TIF_RESTOREALL` flag, stored in this field, helps the
exit routine determine if any NVGPRs were modified and need to be restored
before returning to userspace.

This addition ensures a clean and architecture-specific mechanism to track
per-syscall or per-interrupt state transitions related to register restore.

Changes:
 - Add `exit_flags` and `__pt_regs_pad` to maintain 16-byte stack alignment
 - Update asm-offsets.c and ptrace.c for offset and validation
 - Update PT_* constants in uapi header to reflect the new layout

Signed-off-by: Mukesh Kumar Chaurasiya &lt;mchauras@linux.ibm.com&gt;
Tested-by: Samir M &lt;samir@linux.ibm.com&gt;
Tested-by: David Gow &lt;davidgow@google.com&gt;
Tested-by: Venkat Rao Bagalkote &lt;venkat88@linux.ibm.com&gt;
Reviewed-by: Shrikanth Hegde &lt;sshegde@linux.ibm.com&gt;
Signed-off-by: Madhavan Srinivasan &lt;maddy@linux.ibm.com&gt;
Link: https://patch.msgid.link/20260427122742.210074-6-mkchauras@gmail.com

</pre>
</div>
</content>
</entry>
<entry>
<title>powerpc/pseries: Define __u{8,32} types in papr_hvpipe_hdr struct</title>
<updated>2025-09-23T09:00:48+00:00</updated>
<author>
<name>Haren Myneni</name>
<email>haren@linux.ibm.com</email>
</author>
<published>2025-09-22T09:11:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=ef104054a312608deab266f95945057fa73eeaad'/>
<id>ef104054a312608deab266f95945057fa73eeaad</id>
<content type='text'>
Fix the the following build errors with CONFIG_UAPI_HEADER_TEST:

./usr/include/asm/papr-hvpipe.h:16:9: error: unknown type name 'u8'
   16 |         u8 version;
./usr/include/asm/papr-hvpipe.h:17:9: error: unknown type name 'u8'
   17 |         u8 reserved[3];
./usr/include/asm/papr-hvpipe.h:18:9: error: unknown type name 'u32'
   18 |         u32 flags;
./usr/include/asm/papr-hvpipe.h:19:9: error: unknown type name 'u8'
   19 |         u8 reserved2[40];

Fixes: 043439ad1a23c ("powerpc/pseries: Define papr-hvpipe ioctl")
Reported-by: Venkat Rao Bagalkote &lt;venkat88@linux.ibm.com&gt;
Signed-off-by: Haren Myneni &lt;haren@linux.ibm.com&gt;
Tested-by: Venkat Rao Bagalkote &lt;venkat88@linux.ibm.com&gt;
Signed-off-by: Madhavan Srinivasan &lt;maddy@linux.ibm.com&gt;
Link: https://patch.msgid.link/20250922091108.1483970-1-haren@linux.ibm.com

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix the the following build errors with CONFIG_UAPI_HEADER_TEST:

./usr/include/asm/papr-hvpipe.h:16:9: error: unknown type name 'u8'
   16 |         u8 version;
./usr/include/asm/papr-hvpipe.h:17:9: error: unknown type name 'u8'
   17 |         u8 reserved[3];
./usr/include/asm/papr-hvpipe.h:18:9: error: unknown type name 'u32'
   18 |         u32 flags;
./usr/include/asm/papr-hvpipe.h:19:9: error: unknown type name 'u8'
   19 |         u8 reserved2[40];

Fixes: 043439ad1a23c ("powerpc/pseries: Define papr-hvpipe ioctl")
Reported-by: Venkat Rao Bagalkote &lt;venkat88@linux.ibm.com&gt;
Signed-off-by: Haren Myneni &lt;haren@linux.ibm.com&gt;
Tested-by: Venkat Rao Bagalkote &lt;venkat88@linux.ibm.com&gt;
Signed-off-by: Madhavan Srinivasan &lt;maddy@linux.ibm.com&gt;
Link: https://patch.msgid.link/20250922091108.1483970-1-haren@linux.ibm.com

</pre>
</div>
</content>
</entry>
<entry>
<title>powerpc/pseries: Define papr-hvpipe ioctl</title>
<updated>2025-09-15T08:08:39+00:00</updated>
<author>
<name>Haren Myneni</name>
<email>haren@linux.ibm.com</email>
</author>
<published>2025-09-09T08:43:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=043439ad1a23cd3f65628310d1f5a06e61f8b431'/>
<id>043439ad1a23cd3f65628310d1f5a06e61f8b431</id>
<content type='text'>
PowerPC FW introduced HVPIPE RTAS calls such as
ibm,send-hvpipe-msg and ibm,receive-hvpipe-msg for the user space
to exchange information with different sources such as Hardware
Management Consoles (HMC).

HVPIPE_IOC_CREATE_HANDLE is defined to use /dev/papr-hvpipe
interface for ibm,send-hvpipe-msg and ibm,receive-hvpipe-msg
RTAS calls.

Also defined papr_hvpipe_hdr which will added in the payload
that is passed between the kernel and the user space.

Signed-off-by: Haren Myneni &lt;haren@linux.ibm.com&gt;
Tested-by: Shashank MS &lt;shashank.gowda@in.ibm.com&gt;
Reviewed-by: Mahesh Salgaonkar &lt;mahesh@linux.ibm.com&gt;
Reviewed-by: Tyrel Datwyler &lt;tyreld@linux.ibm.com&gt;
Signed-off-by: Madhavan Srinivasan &lt;maddy@linux.ibm.com&gt;
Link: https://patch.msgid.link/20250909084402.1488456-2-haren@linux.ibm.com

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
PowerPC FW introduced HVPIPE RTAS calls such as
ibm,send-hvpipe-msg and ibm,receive-hvpipe-msg for the user space
to exchange information with different sources such as Hardware
Management Consoles (HMC).

HVPIPE_IOC_CREATE_HANDLE is defined to use /dev/papr-hvpipe
interface for ibm,send-hvpipe-msg and ibm,receive-hvpipe-msg
RTAS calls.

Also defined papr_hvpipe_hdr which will added in the payload
that is passed between the kernel and the user space.

Signed-off-by: Haren Myneni &lt;haren@linux.ibm.com&gt;
Tested-by: Shashank MS &lt;shashank.gowda@in.ibm.com&gt;
Reviewed-by: Mahesh Salgaonkar &lt;mahesh@linux.ibm.com&gt;
Reviewed-by: Tyrel Datwyler &lt;tyreld@linux.ibm.com&gt;
Signed-off-by: Madhavan Srinivasan &lt;maddy@linux.ibm.com&gt;
Link: https://patch.msgid.link/20250909084402.1488456-2-haren@linux.ibm.com

</pre>
</div>
</content>
</entry>
<entry>
<title>powerpc: Replace __ASSEMBLY__ with __ASSEMBLER__ in uapi headers</title>
<updated>2025-09-01T07:53:29+00:00</updated>
<author>
<name>Thomas Huth</name>
<email>thuth@redhat.com</email>
</author>
<published>2025-08-01T08:20:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=8e0665eb85394ea9823fb965a73ae9a6265af4b0'/>
<id>8e0665eb85394ea9823fb965a73ae9a6265af4b0</id>
<content type='text'>
__ASSEMBLY__ is only defined by the Makefile of the kernel, so
this is not really useful for uapi headers (unless the userspace
Makefile defines it, too). Let's switch to __ASSEMBLER__ which
gets set automatically by the compiler when compiling assembler
code.

This is a completely mechanical patch (done with a simple "sed -i"
statement).

Acked-by: Segher Boessenkool &lt;segher@kernel.crashing.org&gt;
Signed-off-by: Thomas Huth &lt;thuth@redhat.com&gt;
Signed-off-by: Madhavan Srinivasan &lt;maddy@linux.ibm.com&gt;
Link: https://patch.msgid.link/20250801082007.32904-2-thuth@redhat.com

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
__ASSEMBLY__ is only defined by the Makefile of the kernel, so
this is not really useful for uapi headers (unless the userspace
Makefile defines it, too). Let's switch to __ASSEMBLER__ which
gets set automatically by the compiler when compiling assembler
code.

This is a completely mechanical patch (done with a simple "sed -i"
statement).

Acked-by: Segher Boessenkool &lt;segher@kernel.crashing.org&gt;
Signed-off-by: Thomas Huth &lt;thuth@redhat.com&gt;
Signed-off-by: Madhavan Srinivasan &lt;maddy@linux.ibm.com&gt;
Link: https://patch.msgid.link/20250801082007.32904-2-thuth@redhat.com

</pre>
</div>
</content>
</entry>
<entry>
<title>powerpc: Drop GPL boilerplate text with obsolete FSF address</title>
<updated>2025-07-22T08:51:19+00:00</updated>
<author>
<name>Thomas Huth</name>
<email>thuth@redhat.com</email>
</author>
<published>2025-07-11T07:25:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=69bf2053608423cbe348f4c5d4f8d737e607d1ad'/>
<id>69bf2053608423cbe348f4c5d4f8d737e607d1ad</id>
<content type='text'>
The FSF does not reside in the Franklin street anymore, so we should not
request the people to write to this address. Fortunately, these header
files already contain a proper SPDX license identifier, so it should be
fine to simply drop all of this license boilerplate code here.

Suggested-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Signed-off-by: Thomas Huth &lt;thuth@redhat.com&gt;
Reviewed-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Signed-off-by: Madhavan Srinivasan &lt;maddy@linux.ibm.com&gt;
Link: https://patch.msgid.link/20250711072553.198777-1-thuth@redhat.com

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The FSF does not reside in the Franklin street anymore, so we should not
request the people to write to this address. Fortunately, these header
files already contain a proper SPDX license identifier, so it should be
fine to simply drop all of this license boilerplate code here.

Suggested-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Signed-off-by: Thomas Huth &lt;thuth@redhat.com&gt;
Reviewed-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Signed-off-by: Madhavan Srinivasan &lt;maddy@linux.ibm.com&gt;
Link: https://patch.msgid.link/20250711072553.198777-1-thuth@redhat.com

</pre>
</div>
</content>
</entry>
<entry>
<title>powerpc: Fix struct termio related ioctl macros</title>
<updated>2025-06-13T16:48:50+00:00</updated>
<author>
<name>Madhavan Srinivasan</name>
<email>maddy@linux.ibm.com</email>
</author>
<published>2025-05-17T14:22:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=ab107276607af90b13a5994997e19b7b9731e251'/>
<id>ab107276607af90b13a5994997e19b7b9731e251</id>
<content type='text'>
Since termio interface is now obsolete, include/uapi/asm/ioctls.h
has some constant macros referring to "struct termio", this caused
build failure at userspace.

In file included from /usr/include/asm/ioctl.h:12,
                 from /usr/include/asm/ioctls.h:5,
                 from tst-ioctls.c:3:
tst-ioctls.c: In function 'get_TCGETA':
tst-ioctls.c:12:10: error: invalid application of 'sizeof' to incomplete type 'struct termio'
   12 |   return TCGETA;
      |          ^~~~~~

Even though termios.h provides "struct termio", trying to juggle definitions around to
make it compile could introduce regressions. So better to open code it.

Reported-by: Tulio Magno &lt;tuliom@ascii.art.br&gt;
Suggested-by: Nicholas Piggin &lt;npiggin@gmail.com&gt;
Tested-by: Justin M. Forbes &lt;jforbes@fedoraproject.org&gt;
Reviewed-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
Closes: https://lore.kernel.org/linuxppc-dev/8734dji5wl.fsf@ascii.art.br/
Signed-off-by: Madhavan Srinivasan &lt;maddy@linux.ibm.com&gt;
Link: https://patch.msgid.link/20250517142237.156665-1-maddy@linux.ibm.com

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Since termio interface is now obsolete, include/uapi/asm/ioctls.h
has some constant macros referring to "struct termio", this caused
build failure at userspace.

In file included from /usr/include/asm/ioctl.h:12,
                 from /usr/include/asm/ioctls.h:5,
                 from tst-ioctls.c:3:
tst-ioctls.c: In function 'get_TCGETA':
tst-ioctls.c:12:10: error: invalid application of 'sizeof' to incomplete type 'struct termio'
   12 |   return TCGETA;
      |          ^~~~~~

Even though termios.h provides "struct termio", trying to juggle definitions around to
make it compile could introduce regressions. So better to open code it.

Reported-by: Tulio Magno &lt;tuliom@ascii.art.br&gt;
Suggested-by: Nicholas Piggin &lt;npiggin@gmail.com&gt;
Tested-by: Justin M. Forbes &lt;jforbes@fedoraproject.org&gt;
Reviewed-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
Closes: https://lore.kernel.org/linuxppc-dev/8734dji5wl.fsf@ascii.art.br/
Signed-off-by: Madhavan Srinivasan &lt;maddy@linux.ibm.com&gt;
Link: https://patch.msgid.link/20250517142237.156665-1-maddy@linux.ibm.com

</pre>
</div>
</content>
</entry>
<entry>
<title>powerpc/pseries: Include linux/types.h in papr-platform-dump.h</title>
<updated>2025-05-02T04:24:47+00:00</updated>
<author>
<name>Haren Myneni</name>
<email>haren@linux.ibm.com</email>
</author>
<published>2025-04-29T21:14:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=925e8620db51ca6bd5c87256dc71c38770b8f6e1'/>
<id>925e8620db51ca6bd5c87256dc71c38770b8f6e1</id>
<content type='text'>
Fix the following build warning:
usr/include/asm/papr-platform-dump.h:12: found __[us]{8,16,32,64} type without #include &lt;linux/types.h&gt;

Fixes: 8aa9efc0be66 ("powerpc/pseries: Add papr-platform-dump character driver for dump retrieval")
Closes: https://lore.kernel.org/linux-next/20250429185735.034ba678@canb.auug.org.au/
Reported-by: Stephen Rothwell &lt;sfr@canb.auug.org.au&gt;
Signed-off-by: Haren Myneni &lt;haren@linux.ibm.com&gt;
Tested-by: Venkat Rao Bagalkote &lt;venkat88@linux.ibm.com&gt;
[Maddy: fixed the commit to combine tags together]
Signed-off-by: Madhavan Srinivasan &lt;maddy@linux.ibm.com&gt;
Link: https://patch.msgid.link/20250429211419.1081354-1-haren@linux.ibm.com
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix the following build warning:
usr/include/asm/papr-platform-dump.h:12: found __[us]{8,16,32,64} type without #include &lt;linux/types.h&gt;

Fixes: 8aa9efc0be66 ("powerpc/pseries: Add papr-platform-dump character driver for dump retrieval")
Closes: https://lore.kernel.org/linux-next/20250429185735.034ba678@canb.auug.org.au/
Reported-by: Stephen Rothwell &lt;sfr@canb.auug.org.au&gt;
Signed-off-by: Haren Myneni &lt;haren@linux.ibm.com&gt;
Tested-by: Venkat Rao Bagalkote &lt;venkat88@linux.ibm.com&gt;
[Maddy: fixed the commit to combine tags together]
Signed-off-by: Madhavan Srinivasan &lt;maddy@linux.ibm.com&gt;
Link: https://patch.msgid.link/20250429211419.1081354-1-haren@linux.ibm.com
</pre>
</div>
</content>
</entry>
<entry>
<title>powerpc/pseries: Add a char driver for physical-attestation RTAS</title>
<updated>2025-04-17T06:12:30+00:00</updated>
<author>
<name>Haren Myneni</name>
<email>haren@linux.ibm.com</email>
</author>
<published>2025-04-16T22:57:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=86900ab620a42396a749b506d4a187820fc3fabe'/>
<id>86900ab620a42396a749b506d4a187820fc3fabe</id>
<content type='text'>
The RTAS call ibm,physical-attestation is used to retrieve
information about the trusted boot state of the firmware and
hypervisor on the system, and also Trusted Platform Modules (TPM)
data if the system is TCG 2.0 compliant.

This RTAS interface expects the caller to define different command
structs such as RetrieveTPMLog, RetrievePlatformCertificat and etc,
in a work area with a maximum size of 4K bytes and the response
buffer will be returned in the same work area.

The current implementation of this RTAS function is in the user
space but allocation of the work area is restricted with the system
lockdown. So this patch implements this RTAS function in the kernel
and expose to the user space with open/ioctl/read interfaces.

PAPR (2.13+ 21.3 ibm,physical-attestation) defines RTAS function:
- Pass the command struct to obtain the response buffer for the
  specific command.
- This RTAS function is sequence RTAS call and has to issue RTAS
  call multiple times to get the complete response buffer (max 64K).
  The hypervisor expects the first RTAS call with the sequence 1 and
  the subsequent calls with the sequence number returned from the
  previous calls.

Expose these interfaces to user space with a
/dev/papr-physical-attestation character device using the following
programming model:

 int devfd = open("/dev/papr-physical-attestation");
 int fd = ioctl(devfd, PAPR_PHY_ATTEST_IOC_HANDLE,
                      struct papr_phy_attest_io_block);
 - The user space defines the command struct and requests the
   response for any command.
 - Obtain the complete response buffer and returned the buffer as
   blob to the command specific FD.
 size = read(fd, buf, len);
 - Can retrieve the response buffer once or multiple times until the
   end of BLOB buffer.

Implemented this new kernel ABI support in librtas library for
system lockdown

Signed-off-by: Haren Myneni &lt;haren@linux.ibm.com&gt;
Signed-off-by: Madhavan Srinivasan &lt;maddy@linux.ibm.com&gt;
Link: https://patch.msgid.link/20250416225743.596462-8-haren@linux.ibm.com

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The RTAS call ibm,physical-attestation is used to retrieve
information about the trusted boot state of the firmware and
hypervisor on the system, and also Trusted Platform Modules (TPM)
data if the system is TCG 2.0 compliant.

This RTAS interface expects the caller to define different command
structs such as RetrieveTPMLog, RetrievePlatformCertificat and etc,
in a work area with a maximum size of 4K bytes and the response
buffer will be returned in the same work area.

The current implementation of this RTAS function is in the user
space but allocation of the work area is restricted with the system
lockdown. So this patch implements this RTAS function in the kernel
and expose to the user space with open/ioctl/read interfaces.

PAPR (2.13+ 21.3 ibm,physical-attestation) defines RTAS function:
- Pass the command struct to obtain the response buffer for the
  specific command.
- This RTAS function is sequence RTAS call and has to issue RTAS
  call multiple times to get the complete response buffer (max 64K).
  The hypervisor expects the first RTAS call with the sequence 1 and
  the subsequent calls with the sequence number returned from the
  previous calls.

Expose these interfaces to user space with a
/dev/papr-physical-attestation character device using the following
programming model:

 int devfd = open("/dev/papr-physical-attestation");
 int fd = ioctl(devfd, PAPR_PHY_ATTEST_IOC_HANDLE,
                      struct papr_phy_attest_io_block);
 - The user space defines the command struct and requests the
   response for any command.
 - Obtain the complete response buffer and returned the buffer as
   blob to the command specific FD.
 size = read(fd, buf, len);
 - Can retrieve the response buffer once or multiple times until the
   end of BLOB buffer.

Implemented this new kernel ABI support in librtas library for
system lockdown

Signed-off-by: Haren Myneni &lt;haren@linux.ibm.com&gt;
Signed-off-by: Madhavan Srinivasan &lt;maddy@linux.ibm.com&gt;
Link: https://patch.msgid.link/20250416225743.596462-8-haren@linux.ibm.com

</pre>
</div>
</content>
</entry>
</feed>
