Enable experimental rust support for ppc64le and ppc32be. The patch for ppc32 has been provided by Link Mauve[1] and ppc64le support[2] has been merged over it. ppc32 needs some toolchain fixes mentioned in the patch `rust: Add PowerPC support` and the discussion for that is done here[1].
This has been tested on powernv9 hardware and power10 pseries qemu. We are actively working with our LLVM team to get the target for ppc, ppc64 and ppc64le in the rust compiler. [1] https://lore.kernel.org/all/[email protected] [2] https://lore.kernel.org/all/[email protected] Changelog: V6 -> V7: - Documentation removed as powerpc is still under development - Added a fix for race condition in rust/Makefile V6: https://lore.kernel.org/all/[email protected] V5 -> V6: - Added a missing Tested by from Venkat which got missed since V3 - Support is marked as Maintained instead of experimental V5: https://lore.kernel.org/all/[email protected] V4 -> V5: - Removed a nested ifdef from PPC64 for Little endian toolchain V4: https://lore.kernel.org/all/[email protected] V3 -> V4: - Co-developed-by header added in patch 1 V3: https://lore.kernel.org/all/[email protected] V2 -> V3: - Splited HAVE_RUST in 2 lines - BINDGEN_TARGET_powerpc initialized before assigning the same to BINDGEN_TARGET V2: https://lore.kernel.org/all/[email protected] V1 -> V2: - jump label fix for rust has been moved to a separate patch - PPC32 support has been taken - rust support has been marked experimental - target.json dependency has been removed - HAVE_RUST now depends on CPU_LITTLE_ENDIAN for PPC64 Link Mauve (1): rust: Add PowerPC support Mukesh Kumar Chaurasiya (IBM) (3): rust: Fix a race condition in Makefile powerpc/jump_label: adjust inline asm to be consistent powerpc: Enable Rust for ppc64le arch/powerpc/Kconfig | 2 ++ arch/powerpc/Makefile | 7 +++++++ arch/powerpc/include/asm/jump_label.h | 23 +++++++++++++---------- rust/Makefile | 13 +++++++++++-- 4 files changed, 33 insertions(+), 12 deletions(-) -- 2.53.0
