mbox series

[v3,0/4] add TOC support

Message ID 20211014194916.13901-1-svens@stackframe.org (mailing list archive)
Headers show
Series add TOC support | expand

Message

Sven Schnelle Oct. 14, 2021, 7:49 p.m. UTC
This adds support for the TOC switches found on most PA-RISC
machines. I tested this on my c8000 and a HP 16702A, which is
basically a B160L with some logic analyzer hardware.

Changes in v3:
- add config option
- move toc code to its own c & .S file
- use early_initcall for setup
- split out struct declarations
- use sizeof(*ret) instead of sizeof(struct x)
- move virt_map to assembly.h so it can be used from other files

Changes in v2:
- fix stack allocation
- align toc_lock on 16 byte boundary
- move toc_lock declaration to processor.c

Sven Schnelle (4):
  parisc: move virt_map macro to assembly.h
  parisc: add PIM TOC data structures
  parisc/firmware: add functions to retrieve TOC data
  parisc: add support for TOC (transfer of control)

 arch/parisc/Kconfig                 |  14 ++++
 arch/parisc/include/asm/assembly.h  |  25 +++++++
 arch/parisc/include/asm/pdc.h       |   2 +
 arch/parisc/include/asm/processor.h |   4 +
 arch/parisc/include/uapi/asm/pdc.h  |  28 ++++++-
 arch/parisc/kernel/Makefile         |   1 +
 arch/parisc/kernel/entry.S          |  24 ------
 arch/parisc/kernel/firmware.c       |  32 ++++++++
 arch/parisc/kernel/toc.c            | 111 ++++++++++++++++++++++++++++
 arch/parisc/kernel/toc_asm.S        |  88 ++++++++++++++++++++++
 10 files changed, 303 insertions(+), 26 deletions(-)
 create mode 100644 arch/parisc/kernel/toc.c
 create mode 100644 arch/parisc/kernel/toc_asm.S

Comments

Helge Deller Oct. 14, 2021, 8:27 p.m. UTC | #1
On 10/14/21 21:49, Sven Schnelle wrote:
> This adds support for the TOC switches found on most PA-RISC
> machines. I tested this on my c8000 and a HP 16702A, which is
> basically a B160L with some logic analyzer hardware.
>
> Changes in v3:
> - add config option
> - move toc code to its own c & .S file
> - use early_initcall for setup
> - split out struct declarations
> - use sizeof(*ret) instead of sizeof(struct x)
> - move virt_map to assembly.h so it can be used from other files
>
> Changes in v2:
> - fix stack allocation
> - align toc_lock on 16 byte boundary
> - move toc_lock declaration to processor.c
>
> Sven Schnelle (4):
>   parisc: move virt_map macro to assembly.h
>   parisc: add PIM TOC data structures
>   parisc/firmware: add functions to retrieve TOC data
>   parisc: add support for TOC (transfer of control)
>
>  arch/parisc/Kconfig                 |  14 ++++
>  arch/parisc/include/asm/assembly.h  |  25 +++++++
>  arch/parisc/include/asm/pdc.h       |   2 +
>  arch/parisc/include/asm/processor.h |   4 +
>  arch/parisc/include/uapi/asm/pdc.h  |  28 ++++++-
>  arch/parisc/kernel/Makefile         |   1 +
>  arch/parisc/kernel/entry.S          |  24 ------
>  arch/parisc/kernel/firmware.c       |  32 ++++++++
>  arch/parisc/kernel/toc.c            | 111 ++++++++++++++++++++++++++++
>  arch/parisc/kernel/toc_asm.S        |  88 ++++++++++++++++++++++
>  10 files changed, 303 insertions(+), 26 deletions(-)
>  create mode 100644 arch/parisc/kernel/toc.c
>  create mode 100644 arch/parisc/kernel/toc_asm.S

I've just merged into the for-next-v5.15 git tree.

Thanks!
Helge