mail archive of the barebox mailing list
 help / color / mirror / Atom feed
* [PATCH v2 00/20] prepare for porting OP-TEE communication support
@ 2023-11-22 17:29 Ahmad Fatoum
  2023-11-22 17:29 ` [PATCH v2 01/20] include: provide linux/errno.h Ahmad Fatoum
                   ` (20 more replies)
  0 siblings, 21 replies; 24+ messages in thread
From: Ahmad Fatoum @ 2023-11-22 17:29 UTC (permalink / raw)
  To: barebox

So far, barebox support for OP-TEE was restricted to loading it either
early in PBL or via bootm and to not step over it when allocating
memory. This was guarded behind CONFIG_HAVE_OPTEE.

To prepare porting the Linux driver behind CONFIG_OPTEE, which
brings actual bidirectional communication with OP-TEE to barebox,
let's import some of the headers and APIs used by the v6.6 Linux
driver.

v1 -> v2:
  See individual change log in every patch.

Ahmad Fatoum (20):
  include: provide linux/errno.h
  include: add linux/refcount.h
  bitops: split off linux/bits.h
  include: import <linux/instruction_pointer.h>
  asm-generic: split off typeconfused readl and friends
  asm-generic: migrate relaxed helpers into asm-generic/io.h
  include: add linux/io.h with strict prototypes
  include: import Linux word-at-a-time.h
  string: implement strscpy
  of: add CONFIG_OF for Linux compatibility
  include: asm-generic/atomic.h: define atomic_cmpxchg
  kbuild: build barebox for -std=gnu11
  include: linux/idr.h: implement more Linux API
  test: self: add simple IDR test
  include: implement dev_warn_once and friends
  include: add blocking notifier aliases
  include: add Linux ktime API
  of: constify string pointed to by struct of_device_id::compatible
  of: define of_devices_ensure_probed_by_compatible
  include: add linux/device.h wrapper around driver.h

 Makefile                                   |   4 +-
 arch/arm/include/asm/word-at-a-time.h      |  59 +++++
 arch/kvx/include/asm/word-at-a-time.h      |   2 +
 arch/mips/include/asm/word-at-a-time.h     |   2 +
 arch/openrisc/include/asm/word-at-a-time.h |   2 +
 arch/powerpc/include/asm/word-at-a-time.h  | 156 +++++++++++
 arch/powerpc/lib/misc.S                    |   2 +-
 arch/powerpc/lib/ppcstring.S               |   2 +-
 arch/riscv/include/asm/word-at-a-time.h    |  48 ++++
 arch/sandbox/include/asm/word-at-a-time.h  |   2 +
 arch/x86/include/asm/word-at-a-time.h      |  73 ++++++
 common/optee.c                             |   2 +-
 drivers/firmware/Kconfig                   |   1 +
 drivers/firmware/arm_scmi/driver.c         |   4 +-
 drivers/of/Kconfig                         |   4 +
 include/asm-generic/atomic.h               |   2 +
 include/asm-generic/cmpxchg-local.h        |  64 +++++
 include/asm-generic/cmpxchg.h              |  26 ++
 include/asm-generic/errno.h                |  11 -
 include/asm-generic/io-typeconfused.h      |  75 ++++++
 include/asm-generic/io.h                   | 284 +++++++++++++++++----
 include/asm-generic/word-at-a-time.h       | 121 +++++++++
 include/bbu.h                              |   2 +-
 include/errno.h                            |   2 +-
 include/io.h                               |  34 ---
 include/linux/atomic.h                     |  63 +++++
 include/linux/bitops.h                     |  21 +-
 include/linux/bits.h                       |  30 +++
 include/linux/device.h                     |  66 +++++
 include/linux/err.h                        |   2 +-
 include/linux/errno.h                      |  36 +++
 include/linux/idr.h                        |  61 ++---
 include/linux/instruction_pointer.h        |  11 +
 include/linux/io.h                         |   9 +
 include/linux/kernel.h                     |  11 +-
 include/linux/kref.h                       |  90 +++++++
 include/linux/ktime.h                      | 212 +++++++++++++++
 include/linux/notifier.h                   |  16 ++
 include/linux/printk.h                     |  29 ++-
 include/linux/pstore.h                     |   2 +-
 include/linux/refcount.h                   | 271 ++++++++++++++++++++
 include/linux/string.h                     |   3 +
 include/mach/at91/iomux.h                  |   2 +-
 include/notifier.h                         |   3 +
 include/of.h                               |  12 +-
 include/tee/optee.h                        |   2 +-
 lib/Kconfig                                |   3 +
 lib/Makefile                               |   2 +
 lib/idr.c                                  | 100 ++++++++
 lib/reed_solomon/reed_solomon.c            |   2 +-
 lib/refcount.c                             |  34 +++
 lib/string.c                               |  71 ++++++
 test/self/Kconfig                          |   5 +
 test/self/Makefile                         |   1 +
 test/self/idr.c                            | 119 +++++++++
 55 files changed, 2103 insertions(+), 170 deletions(-)
 create mode 100644 arch/arm/include/asm/word-at-a-time.h
 create mode 100644 arch/kvx/include/asm/word-at-a-time.h
 create mode 100644 arch/mips/include/asm/word-at-a-time.h
 create mode 100644 arch/openrisc/include/asm/word-at-a-time.h
 create mode 100644 arch/powerpc/include/asm/word-at-a-time.h
 create mode 100644 arch/riscv/include/asm/word-at-a-time.h
 create mode 100644 arch/sandbox/include/asm/word-at-a-time.h
 create mode 100644 arch/x86/include/asm/word-at-a-time.h
 create mode 100644 include/asm-generic/cmpxchg-local.h
 create mode 100644 include/asm-generic/cmpxchg.h
 create mode 100644 include/asm-generic/io-typeconfused.h
 create mode 100644 include/asm-generic/word-at-a-time.h
 create mode 100644 include/linux/bits.h
 create mode 100644 include/linux/device.h
 create mode 100644 include/linux/errno.h
 create mode 100644 include/linux/instruction_pointer.h
 create mode 100644 include/linux/io.h
 create mode 100644 include/linux/kref.h
 create mode 100644 include/linux/ktime.h
 create mode 100644 include/linux/notifier.h
 create mode 100644 include/linux/refcount.h
 create mode 100644 lib/idr.c
 create mode 100644 lib/refcount.c
 create mode 100644 test/self/idr.c

-- 
2.39.2




^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2023-11-30 20:39 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-11-22 17:29 [PATCH v2 00/20] prepare for porting OP-TEE communication support Ahmad Fatoum
2023-11-22 17:29 ` [PATCH v2 01/20] include: provide linux/errno.h Ahmad Fatoum
2023-11-22 17:29 ` [PATCH v2 02/20] include: add linux/refcount.h Ahmad Fatoum
2023-11-22 17:29 ` [PATCH v2 03/20] bitops: split off linux/bits.h Ahmad Fatoum
2023-11-22 17:29 ` [PATCH v2 04/20] include: import <linux/instruction_pointer.h> Ahmad Fatoum
2023-11-22 17:29 ` [PATCH v2 05/20] asm-generic: split off typeconfused readl and friends Ahmad Fatoum
2023-11-22 17:29 ` [PATCH v2 06/20] asm-generic: migrate relaxed helpers into asm-generic/io.h Ahmad Fatoum
2023-11-22 17:29 ` [PATCH v2 07/20] include: add linux/io.h with strict prototypes Ahmad Fatoum
2023-11-22 17:29 ` [PATCH v2 08/20] include: import Linux word-at-a-time.h Ahmad Fatoum
2023-11-23  8:16   ` [PATCH] fixup! " Ahmad Fatoum
2023-11-22 17:29 ` [PATCH v2 09/20] string: implement strscpy Ahmad Fatoum
2023-11-22 17:29 ` [PATCH v2 10/20] of: add CONFIG_OF for Linux compatibility Ahmad Fatoum
2023-11-22 17:29 ` [PATCH v2 11/20] include: asm-generic/atomic.h: define atomic_cmpxchg Ahmad Fatoum
2023-11-22 17:29 ` [PATCH v2 12/20] kbuild: build barebox for -std=gnu11 Ahmad Fatoum
2023-11-22 17:29 ` [PATCH v2 13/20] include: linux/idr.h: implement more Linux API Ahmad Fatoum
2023-11-30 20:37   ` Sascha Hauer
2023-11-22 17:29 ` [PATCH v2 14/20] test: self: add simple IDR test Ahmad Fatoum
2023-11-22 17:29 ` [PATCH v2 15/20] include: implement dev_warn_once and friends Ahmad Fatoum
2023-11-22 17:29 ` [PATCH v2 16/20] include: add blocking notifier aliases Ahmad Fatoum
2023-11-22 17:29 ` [PATCH v2 17/20] include: add Linux ktime API Ahmad Fatoum
2023-11-22 17:29 ` [PATCH v2 18/20] of: constify string pointed to by struct of_device_id::compatible Ahmad Fatoum
2023-11-22 17:29 ` [PATCH v2 19/20] of: define of_devices_ensure_probed_by_compatible Ahmad Fatoum
2023-11-22 17:29 ` [PATCH v2 20/20] include: add linux/device.h wrapper around driver.h Ahmad Fatoum
2023-11-23 14:50 ` [PATCH v2 00/20] prepare for porting OP-TEE communication support Sascha Hauer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox