<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/arch/powerpc/Kconfig.debug, branch v6.12.80</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v6.12.80</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v6.12.80'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2024-09-05T12:30:05+00:00</updated>
<entry>
<title>powerpc/64s: Remove the "fast endian switch" syscall</title>
<updated>2024-09-05T12:30:05+00:00</updated>
<author>
<name>Michael Ellerman</name>
<email>mpe@ellerman.id.au</email>
</author>
<published>2024-08-23T07:08:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=29dbb984496daa490f3c1181b734b538a6f7b534'/>
<id>urn:sha1:29dbb984496daa490f3c1181b734b538a6f7b534</id>
<content type='text'>
The non-standard "fast endian switch" syscall was added in 2008[1],
but was never widely used. It was disabled by default in 2017[2], and
there's no evidence it's ever been used since.

Remove it entirely.

A normal endian switch syscall was added in 2015[3].

[1]: 745a14cc264b ("[POWERPC] Add fast little-endian switch system call")
[2]: 529d235a0e19 ("powerpc: Add a proper syscall for switching endianness")
[3]: 727f13616c45 ("powerpc: Disable the fast-endian switch syscall by default")

Signed-off-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
Link: https://msgid.link/20240823070830.1269033-1-mpe@ellerman.id.au

</content>
</entry>
<entry>
<title>powerpc: Remove 40x from Kconfig and defconfig</title>
<updated>2024-06-28T12:28:47+00:00</updated>
<author>
<name>Michael Ellerman</name>
<email>mpe@ellerman.id.au</email>
</author>
<published>2024-06-28T12:11:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=e939da89d024a0de66b0270f1f1fab5fc44c74dd'/>
<id>urn:sha1:e939da89d024a0de66b0270f1f1fab5fc44c74dd</id>
<content type='text'>
Remove 40x from Kconfig, making the code unreachable.

Signed-off-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
Link: https://msgid.link/20240628121201.130802-3-mpe@ellerman.id.au

</content>
</entry>
<entry>
<title>powerpc/ps3: move udbg_shutdown_ps3gelic prototype</title>
<updated>2023-11-21T01:06:50+00:00</updated>
<author>
<name>Arnd Bergmann</name>
<email>arnd@arndb.de</email>
</author>
<published>2023-11-08T12:58:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=04c40eed3f7ac48ddaf20104489510e743a53c47'/>
<id>urn:sha1:04c40eed3f7ac48ddaf20104489510e743a53c47</id>
<content type='text'>
Allmodconfig kernels produce a missing-prototypes warning:

arch/powerpc/platforms/ps3/gelic_udbg.c:239:6: error: no previous prototype for 'udbg_shutdown_ps3gelic' [-Werror=missing-prototypes]

Move the declaration from a local header to asm/ps3.h where it can be
seen from both the caller and the definition.

Signed-off-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Signed-off-by: Geoff Levand &lt;geoff@infradead.org&gt;
Acked-by: Jakub Kicinski &lt;kuba@kernel.org&gt;
[mpe: Drop CONFIG_PS3GELIC_UDBG to fix build error]
Signed-off-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
Link: https://msgid.link/20231108125843.3806765-18-arnd@kernel.org

</content>
</entry>
<entry>
<title>Merge branch 'topic/ppc-kvm' into next</title>
<updated>2023-10-27T09:58:03+00:00</updated>
<author>
<name>Michael Ellerman</name>
<email>mpe@ellerman.id.au</email>
</author>
<published>2023-10-27T09:58:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=303d77a6e1707498f09c9d8ee91b1dc07ca315a5'/>
<id>urn:sha1:303d77a6e1707498f09c9d8ee91b1dc07ca315a5</id>
<content type='text'>
Merge our KVM topic branch, this has been independently included in linux-next
for most of the development cycle.
</content>
</entry>
<entry>
<title>powerpc: Use shared font data</title>
<updated>2023-10-01T12:09:02+00:00</updated>
<author>
<name>Dr. David Alan Gilbert</name>
<email>linux@treblig.org</email>
</author>
<published>2023-08-25T14:27:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=0ebc7feae79ac07772a20382eebd8c3503313714'/>
<id>urn:sha1:0ebc7feae79ac07772a20382eebd8c3503313714</id>
<content type='text'>
PowerPC has a 'btext' font used for the console which is almost identical
to the shared font_sun8x16, so use it rather than duplicating the data.

They were actually identical until about a decade ago when
   commit bcfbeecea11c ("drivers: console: font_: Change a glyph from
                        "broken bar" to "vertical line"")

which changed the | in the shared font to be a solid
bar rather than a broken bar.  That's the only difference.

This was originally spotted by the PMF source code analyser, which
noticed that sparc does the same thing with the same data, and they
also share a bunch of functions to manipulate the data.  I've previously
posted a near identical patch for sparc.

Tested very lightly with a boot without FS in qemu.

Signed-off-by: "Dr. David Alan Gilbert" &lt;linux@treblig.org&gt;
Signed-off-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
Link: https://msgid.link/20230825142754.1487900-1-linux@treblig.org

</content>
</entry>
<entry>
<title>KVM: PPC: Add helper library for Guest State Buffers</title>
<updated>2023-09-14T12:04:24+00:00</updated>
<author>
<name>Jordan Niethe</name>
<email>jniethe5@gmail.com</email>
</author>
<published>2023-09-14T03:05:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=6ccbbc33f06adaf79acde18571c6543ad1cb4be6'/>
<id>urn:sha1:6ccbbc33f06adaf79acde18571c6543ad1cb4be6</id>
<content type='text'>
The PAPR "Nestedv2" guest API introduces the concept of a Guest State
Buffer for communication about L2 guests between L1 and L0 hosts.

In the new API, the L0 manages the L2 on behalf of the L1. This means
that if the L1 needs to change L2 state (e.g. GPRs, SPRs, partition
table...), it must request the L0 perform the modification. If the
nested host needs to read L2 state likewise this request must
go through the L0.

The Guest State Buffer is a Type-Length-Value style data format defined
in the PAPR which assigns all relevant partition state a unique
identity. Unlike a typical TLV format the length is redundant as the
length of each identity is fixed but is included for checking
correctness.

A guest state buffer consists of an element count followed by a stream
of elements, where elements are composed of an ID number, data length,
then the data:

  Header:

   &lt;---4 bytes---&gt;
  +----------------+-----
  | Element Count  | Elements...
  +----------------+-----

  Element:

   &lt;----2 bytes---&gt; &lt;-2 bytes-&gt; &lt;-Length bytes-&gt;
  +----------------+-----------+----------------+
  | Guest State ID |  Length   |      Data      |
  +----------------+-----------+----------------+

Guest State IDs have other attributes defined in the PAPR such as
whether they are per thread or per guest, or read-only.

Introduce a library for using guest state buffers. This includes support
for actions such as creating buffers, adding elements to buffers,
reading the value of elements and parsing buffers. This will be used
later by the nestedv2 guest support.

Signed-off-by: Jordan Niethe &lt;jniethe5@gmail.com&gt;
Signed-off-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
Link: https://msgid.link/20230914030600.16993-9-jniethe5@gmail.com

</content>
</entry>
<entry>
<title>powerpc: allow PPC_EARLY_DEBUG_CPM only when SERIAL_CPM=y</title>
<updated>2023-07-03T06:07:55+00:00</updated>
<author>
<name>Randy Dunlap</name>
<email>rdunlap@infradead.org</email>
</author>
<published>2023-07-01T05:47:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=39f49684036d24af800ff194c33c7b2653c591d7'/>
<id>urn:sha1:39f49684036d24af800ff194c33c7b2653c591d7</id>
<content type='text'>
In a randconfig with CONFIG_SERIAL_CPM=m and
CONFIG_PPC_EARLY_DEBUG_CPM=y, there is a build error:
ERROR: modpost: "udbg_putc" [drivers/tty/serial/cpm_uart/cpm_uart.ko] undefined!

Prevent the build error by allowing PPC_EARLY_DEBUG_CPM only when
SERIAL_CPM=y.

Fixes: c374e00e17f1 ("[POWERPC] Add early debug console for CPM serial ports.")
Signed-off-by: Randy Dunlap &lt;rdunlap@infradead.org&gt;
Reviewed-by: Pali Rohár &lt;pali@kernel.org&gt;
Reviewed-by: Christophe Leroy &lt;christophe.leroy@csgroup.eu&gt;
Signed-off-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
Link: https://msgid.link/20230701054714.30512-1-rdunlap@infradead.org

</content>
</entry>
<entry>
<title>powerpc: Add support for early debugging via Serial 16550 console</title>
<updated>2022-09-28T09:22:09+00:00</updated>
<author>
<name>Pali Rohár</name>
<email>pali@kernel.org</email>
</author>
<published>2022-08-22T23:15:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=b19448fe846baad689ff51a991ebfc74b4b5e0a8'/>
<id>urn:sha1:b19448fe846baad689ff51a991ebfc74b4b5e0a8</id>
<content type='text'>
Currently powerpc early debugging contains lot of platform specific
options, but does not support standard UART / serial 16550 console.

Later legacy_serial.c code supports registering UART as early debug console
from device tree but it is not early during booting, but rather later after
machine description code finishes.

So for real early debugging via UART is current code unsuitable.

Add support for new early debugging option CONFIG_PPC_EARLY_DEBUG_16550
which enable Serial 16550 console on address defined by new option
CONFIG_PPC_EARLY_DEBUG_16550_PHYSADDR and by stride by option
CONFIG_PPC_EARLY_DEBUG_16550_STRIDE.

With this change it is possible to debug powerpc machine descriptor code.
For example this early debugging code can print on serial console also
"No suitable machine description found" error which is done before
legacy_serial.c code.

Signed-off-by: Pali Rohár &lt;pali@kernel.org&gt;
Signed-off-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
Link: https://lore.kernel.org/r/20220822231501.16827-1-pali@kernel.org

</content>
</entry>
<entry>
<title>powerpc: Kconfig.debug: Remove extra empty line</title>
<updated>2022-06-29T09:43:16+00:00</updated>
<author>
<name>Juerg Haefliger</name>
<email>juerg.haefliger@canonical.com</email>
</author>
<published>2022-05-26T06:57:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=d60cb5010cafc7889384ce49292a320f5bcd56ff'/>
<id>urn:sha1:d60cb5010cafc7889384ce49292a320f5bcd56ff</id>
<content type='text'>
Remove a stray extra empty line.

Signed-off-by: Juerg Haefliger &lt;juerg.haefliger@canonical.com&gt;
Signed-off-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
Link: https://lore.kernel.org/r/20220526065737.86370-3-juerg.haefliger@canonical.com

</content>
</entry>
<entry>
<title>powerpc/64e: KASAN Full support for BOOK3E/64</title>
<updated>2022-06-29T07:04:15+00:00</updated>
<author>
<name>Christophe Leroy</name>
<email>christophe.leroy@csgroup.eu</email>
</author>
<published>2022-06-28T14:48:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=c7b9ed7c34a9f5dbf8222d63e3e313cef9f3150b'/>
<id>urn:sha1:c7b9ed7c34a9f5dbf8222d63e3e313cef9f3150b</id>
<content type='text'>
We now have memory organised in a way that allows
implementing KASAN.

Unlike book3s/64, book3e always has translation active so the only
thing needed to use KASAN is to setup an early zero shadow mapping
just after setting a stack pointer and before calling early_setup().

The memory layout is now as follows

   +------------------------+  Kernel virtual map end (0xc000200000000000)
   |                        |
   |    16TB of KASAN map   |
   |                        |
   +------------------------+  Kernel KASAN shadow map start
   |                        |
   |    16TB of IO map      |
   |                        |
   +------------------------+  Kernel IO map start
   |                        |
   |    16TB of vmemmap     |
   |                        |
   +------------------------+  Kernel vmemmap start
   |                        |
   |    16TB of vmap        |
   |                        |
   +------------------------+  Kernel virt start (0xc000100000000000)
   |                        |
   |    64TB of linear mem  |
   |                        |
   +------------------------+  Kernel linear (0xc.....)

Signed-off-by: Christophe Leroy &lt;christophe.leroy@csgroup.eu&gt;
Signed-off-by: Michael Ellerman &lt;mpe@ellerman.id.au&gt;
Link: https://lore.kernel.org/r/0bef8beda27baf71e3b9e8b13e620fba6e19499b.1656427701.git.christophe.leroy@csgroup.eu

</content>
</entry>
</feed>
