[Skiboot] [PATCH] Re-license IBM written files as Apache 2.0 OR GPLv2+

Stewart Smith stewart at linux.ibm.com
Wed Jul 31 10:58:34 AEST 2019


SPDX makes it a simpler diff.

I have audited the commit history of each file to ensure that they are
exclusively authored by IBM and thus we have the right to relicense.

The motivation behind this is twofold:
1) We want to enable experiments with coreboot, which is GPLv2 licensed
2) An upcoming firmware component wants to incorporate code from skiboot
   and code from the Linux kernel, which is GPLv2 licensed.

I have gone through the IBM internal way of gaining approval for this.

The following files are not exclusively authored by IBM, so are *not*
included in this update (I will be seeking approval from contributors):

core/direct-controls.c
core/flash.c
core/pcie-slot.c
external/common/rules.mk
external/gard/Makefile
external/gard/rules.mk
external/opal-prd/Makefile
external/pflash/Makefile
external/xscom-utils/Makefile
hdata/vpd.c
hw/dts.c
hw/ipmi/ipmi-watchdog.c
hw/phb4.c
include/cpu.h
include/elf.h
include/imc.h
include/phb4.h
include/platform.h
include/skiboot.h
libflash/libffs.c
platforms/astbmc/barreleye.c
platforms/astbmc/garrison.c
platforms/astbmc/mihawk.c
platforms/astbmc/nicole.c
platforms/astbmc/p8dnu.c
platforms/astbmc/p8dtu.c
platforms/astbmc/p9dsu.c
platforms/astbmc/romulus.c
platforms/astbmc/talos.c
platforms/astbmc/vesnin.c
platforms/rhesus/ec/config.h
platforms/rhesus/ec/gpio.h
platforms/rhesus/gpio.c
platforms/rhesus/rhesus.c

Signed-off-by: Stewart Smith <stewart at linux.ibm.com>
---
 Makefile                                          | 2 +-
 Makefile.main                                     | 2 +-
 Makefile.rules                                    | 2 +-
 asm/asm-offsets.c                                 | 2 +-
 asm/cvc_entry.S                                   | 2 +-
 asm/dummy_map.S                                   | 2 +-
 asm/head.S                                        | 2 +-
 asm/kernel-wrapper.S                              | 2 +-
 asm/misc.S                                        | 2 +-
 asm/real_map.S                                    | 2 +-
 core/Makefile.inc                                 | 2 +-
 core/affinity.c                                   | 2 +-
 core/bitmap.c                                     | 2 +-
 core/buddy.c                                      | 2 +-
 core/chip.c                                       | 2 +-
 core/console-log.c                                | 2 +-
 core/console.c                                    | 2 +-
 core/cpu.c                                        | 2 +-
 core/cpufeatures.c                                | 2 +-
 core/device.c                                     | 2 +-
 core/errorlog.c                                   | 2 +-
 core/exceptions.c                                 | 2 +-
 core/fast-reboot.c                                | 2 +-
 core/fdt.c                                        | 2 +-
 core/flash-firmware-versions.c                    | 2 +-
 core/flash-subpartition.c                         | 2 +-
 core/gcov-profiling.c                             | 2 +-
 core/hmi.c                                        | 2 +-
 core/i2c.c                                        | 2 +-
 core/init.c                                       | 2 +-
 core/interrupts.c                                 | 2 +-
 core/ipmi-opal.c                                  | 2 +-
 core/ipmi.c                                       | 2 +-
 core/lock.c                                       | 2 +-
 core/malloc.c                                     | 2 +-
 core/mem_region.c                                 | 2 +-
 core/nvram-format.c                               | 2 +-
 core/nvram.c                                      | 2 +-
 core/opal-msg.c                                   | 2 +-
 core/opal.c                                       | 2 +-
 core/pci-dt-slot.c                                | 2 +-
 core/pci-opal.c                                   | 2 +-
 core/pci-quirk.c                                  | 2 +-
 core/pci-slot.c                                   | 2 +-
 core/pci-virt.c                                   | 2 +-
 core/pci.c                                        | 2 +-
 core/pel.c                                        | 2 +-
 core/platform.c                                   | 2 +-
 core/pool.c                                       | 2 +-
 core/powercap.c                                   | 2 +-
 core/psr.c                                        | 2 +-
 core/relocate.c                                   | 2 +-
 core/rtc.c                                        | 2 +-
 core/sensor.c                                     | 2 +-
 core/stack.c                                      | 2 +-
 core/test/dummy-cpu.h                             | 2 +-
 core/test/run-api-test.c                          | 2 +-
 core/test/run-bitmap.c                            | 2 +-
 core/test/run-buddy.c                             | 2 +-
 core/test/run-console-log-buf-overrun.c           | 2 +-
 core/test/run-console-log-pr_fmt.c                | 2 +-
 core/test/run-console-log.c                       | 2 +-
 core/test/run-cpufeatures.c                       | 2 +-
 core/test/run-device.c                            | 2 +-
 core/test/run-flash-firmware-versions.c           | 2 +-
 core/test/run-flash-subpartition.c                | 2 +-
 core/test/run-malloc-speed.c                      | 2 +-
 core/test/run-malloc.c                            | 2 +-
 core/test/run-mem_range_is_reserved.c             | 2 +-
 core/test/run-mem_region.c                        | 2 +-
 core/test/run-mem_region_init.c                   | 2 +-
 core/test/run-mem_region_next.c                   | 2 +-
 core/test/run-mem_region_release_unused.c         | 2 +-
 core/test/run-mem_region_release_unused_noalloc.c | 2 +-
 core/test/run-mem_region_reservations.c           | 2 +-
 core/test/run-msg.c                               | 2 +-
 core/test/run-nvram-format.c                      | 2 +-
 core/test/run-pci-quirk.c                         | 2 +-
 core/test/run-pel.c                               | 2 +-
 core/test/run-pool.c                              | 2 +-
 core/test/run-time-utils.c                        | 2 +-
 core/test/run-timebase.c                          | 2 +-
 core/test/run-timer.c                             | 2 +-
 core/test/run-trace.c                             | 2 +-
 core/test/stubs.c                                 | 2 +-
 core/time-utils.c                                 | 2 +-
 core/timebase.c                                   | 2 +-
 core/timer.c                                      | 2 +-
 core/trace.c                                      | 2 +-
 core/utils.c                                      | 2 +-
 core/vpd.c                                        | 2 +-
 external/Makefile.check                           | 2 +-
 external/common/arch_flash.h                      | 2 +-
 external/common/arch_flash_arm.c                  | 2 +-
 external/common/arch_flash_arm_io.h               | 2 +-
 external/common/arch_flash_common.c               | 2 +-
 external/common/arch_flash_powerpc.c              | 2 +-
 external/common/arch_flash_x86.c                  | 2 +-
 external/common/get_arch.sh                       | 2 +-
 external/devicetree/Makefile                      | 2 +-
 external/devicetree/p9-simics.dts                 | 2 +-
 external/devicetree/p9.dts                        | 2 +-
 external/ffspart/Makefile                         | 2 +-
 external/ffspart/config.h                         | 2 +-
 external/ffspart/ffspart.c                        | 2 +-
 external/ffspart/rules.mk                         | 2 +-
 external/fwts/generate-fwts-olog                  | 2 +-
 external/fwts/merge-fwts-olog                     | 2 +-
 external/gard/Makefile.dist                       | 2 +-
 external/gard/config.h                            | 2 +-
 external/gard/gard.c                              | 2 +-
 external/gard/gard.h                              | 2 +-
 external/gard/units.c                             | 2 +-
 external/lpc/Makefile                             | 2 +-
 external/lpc/lpc.c                                | 2 +-
 external/mambo/Makefile                           | 2 +-
 external/mambo/mambo-socket-proxy.c               | 2 +-
 external/mambo/mambo_utils.tcl                    | 2 +-
 external/mambo/qtrace_utils.tcl                   | 2 +-
 external/mambo/skiboot.tcl                        | 2 +-
 external/memboot/Makefile                         | 2 +-
 external/memboot/memboot.c                        | 2 +-
 external/npu/run_procedure.sh                     | 2 +-
 external/opal-prd/config.h                        | 2 +-
 external/opal-prd/hostboot-interface.h            | 2 +-
 external/opal-prd/i2c.c                           | 2 +-
 external/opal-prd/i2c.h                           | 2 +-
 external/opal-prd/module.c                        | 2 +-
 external/opal-prd/module.h                        | 2 +-
 external/opal-prd/opal-prd.c                      | 2 +-
 external/opal-prd/opal-prd.h                      | 2 +-
 external/opal-prd/pnor.c                          | 2 +-
 external/opal-prd/pnor.h                          | 2 +-
 external/opal-prd/test/test_pnor.c                | 2 +-
 external/opal-prd/test/test_pnor_ops.c            | 2 +-
 external/opal-prd/thunk.S                         | 2 +-
 external/pflash/Makefile.dist                     | 2 +-
 external/pflash/build-all-arch.sh                 | 2 +-
 external/pflash/config.h                          | 2 +-
 external/pflash/pflash.c                          | 2 +-
 external/pflash/progress.c                        | 2 +-
 external/pflash/progress.h                        | 2 +-
 external/pflash/rules.mk                          | 2 +-
 external/pflash/test/tests/00-usage               | 2 +-
 external/pflash/test/tests/01-info                | 2 +-
 external/pflash/test/tests/02-erase               | 2 +-
 external/pflash/test/tests/03-erase-parts         | 2 +-
 external/pflash/test/tests/04-program-rand        | 2 +-
 external/pflash/test/tests/05-bad-numbers         | 2 +-
 external/pflash/test/tests/06-miscprint           | 2 +-
 external/read_esel.sh                             | 2 +-
 external/shared/Makefile                          | 2 +-
 external/shared/config.h                          | 2 +-
 external/shared/rules.mk                          | 2 +-
 external/test/test.sh                             | 2 +-
 external/trace/Makefile                           | 2 +-
 external/trace/dump_trace.c                       | 2 +-
 external/trace/trace.c                            | 2 +-
 external/trace/trace.h                            | 2 +-
 external/xscom-utils/adu_scoms.py                 | 2 +-
 external/xscom-utils/getscom.c                    | 2 +-
 external/xscom-utils/getsram.c                    | 2 +-
 external/xscom-utils/putscom.c                    | 2 +-
 external/xscom-utils/sram.c                       | 2 +-
 external/xscom-utils/sram.h                       | 2 +-
 external/xscom-utils/xscom.c                      | 2 +-
 external/xscom-utils/xscom.h                      | 2 +-
 extract-gcov.c                                    | 2 +-
 hdata/cpu-common.c                                | 2 +-
 hdata/fsp.c                                       | 2 +-
 hdata/hdata.h                                     | 2 +-
 hdata/hdif.c                                      | 2 +-
 hdata/hdif.h                                      | 2 +-
 hdata/hostservices.c                              | 2 +-
 hdata/i2c.c                                       | 2 +-
 hdata/iohub.c                                     | 2 +-
 hdata/memory.c                                    | 2 +-
 hdata/paca.c                                      | 2 +-
 hdata/pcia.c                                      | 2 +-
 hdata/slca.c                                      | 2 +-
 hdata/spira.c                                     | 2 +-
 hdata/spira.h                                     | 2 +-
 hdata/test/Makefile.check                         | 2 +-
 hdata/test/dtdiff_wrap.sh                         | 2 +-
 hdata/test/hdata_to_dt.c                          | 2 +-
 hdata/test/stubs.c                                | 2 +-
 hdata/vpd-common.c                                | 2 +-
 hw/ast-bmc/Makefile.inc                           | 2 +-
 hw/ast-bmc/ast-io.c                               | 2 +-
 hw/ast-bmc/ast-sf-ctrl.c                          | 2 +-
 hw/bt.c                                           | 2 +-
 hw/cache-p9.c                                     | 2 +-
 hw/capp.c                                         | 2 +-
 hw/centaur.c                                      | 2 +-
 hw/chiptod.c                                      | 2 +-
 hw/dio-p9.c                                       | 2 +-
 hw/fake-nvram.c                                   | 2 +-
 hw/fake-rtc.c                                     | 2 +-
 hw/fsi-master.c                                   | 2 +-
 hw/fsp/fsp-attn.c                                 | 2 +-
 hw/fsp/fsp-chiptod.c                              | 2 +-
 hw/fsp/fsp-codeupdate.c                           | 2 +-
 hw/fsp/fsp-codeupdate.h                           | 2 +-
 hw/fsp/fsp-console.c                              | 2 +-
 hw/fsp/fsp-diag.c                                 | 2 +-
 hw/fsp/fsp-dpo.c                                  | 2 +-
 hw/fsp/fsp-dump.c                                 | 2 +-
 hw/fsp/fsp-elog-read.c                            | 2 +-
 hw/fsp/fsp-elog-write.c                           | 2 +-
 hw/fsp/fsp-epow.c                                 | 2 +-
 hw/fsp/fsp-epow.h                                 | 2 +-
 hw/fsp/fsp-ipmi.c                                 | 2 +-
 hw/fsp/fsp-leds.c                                 | 2 +-
 hw/fsp/fsp-mdst-table.c                           | 2 +-
 hw/fsp/fsp-mem-err.c                              | 2 +-
 hw/fsp/fsp-nvram.c                                | 2 +-
 hw/fsp/fsp-occ.c                                  | 2 +-
 hw/fsp/fsp-op-panel.c                             | 2 +-
 hw/fsp/fsp-psi.c                                  | 2 +-
 hw/fsp/fsp-rtc.c                                  | 2 +-
 hw/fsp/fsp-sensor.c                               | 2 +-
 hw/fsp/fsp-surveillance.c                         | 2 +-
 hw/fsp/fsp-sysparam.c                             | 2 +-
 hw/fsp/fsp.c                                      | 2 +-
 hw/homer.c                                        | 2 +-
 hw/imc.c                                          | 2 +-
 hw/ipmi/Makefile.inc                              | 2 +-
 hw/ipmi/ipmi-attn.c                               | 2 +-
 hw/ipmi/ipmi-fru.c                                | 2 +-
 hw/ipmi/ipmi-info.c                               | 2 +-
 hw/ipmi/ipmi-power.c                              | 2 +-
 hw/ipmi/ipmi-rtc.c                                | 2 +-
 hw/ipmi/ipmi-sel.c                                | 2 +-
 hw/ipmi/ipmi-sensor.c                             | 2 +-
 hw/ipmi/test/run-fru.c                            | 2 +-
 hw/lpc-mbox.c                                     | 2 +-
 hw/lpc-port80h.c                                  | 2 +-
 hw/lpc-rtc.c                                      | 2 +-
 hw/lpc-uart.c                                     | 2 +-
 hw/lpc.c                                          | 2 +-
 hw/npu-hw-procedures.c                            | 2 +-
 hw/npu-opal.c                                     | 2 +-
 hw/npu.c                                          | 2 +-
 hw/npu2-common.c                                  | 2 +-
 hw/npu2-hw-procedures.c                           | 2 +-
 hw/npu2-opencapi.c                                | 2 +-
 hw/npu2.c                                         | 2 +-
 hw/npu3-hw-procedures.c                           | 2 +-
 hw/npu3-nvlink.c                                  | 2 +-
 hw/npu3.c                                         | 2 +-
 hw/nx-842.c                                       | 2 +-
 hw/nx-compress.c                                  | 2 +-
 hw/nx-crypto.c                                    | 2 +-
 hw/nx-gzip.c                                      | 2 +-
 hw/nx-rng.c                                       | 2 +-
 hw/nx.c                                           | 2 +-
 hw/occ-sensor.c                                   | 2 +-
 hw/occ.c                                          | 2 +-
 hw/p8-i2c.c                                       | 2 +-
 hw/phb3.c                                         | 2 +-
 hw/phys-map.c                                     | 2 +-
 hw/prd.c                                          | 2 +-
 hw/psi.c                                          | 2 +-
 hw/sbe-p8.c                                       | 2 +-
 hw/sbe-p9.c                                       | 2 +-
 hw/sfc-ctrl.c                                     | 2 +-
 hw/slw.c                                          | 2 +-
 hw/test/phys-map-test.c                           | 2 +-
 hw/test/run-port80h.c                             | 2 +-
 hw/vas.c                                          | 2 +-
 hw/xive.c                                         | 2 +-
 hw/xscom.c                                        | 2 +-
 include/affinity.h                                | 2 +-
 include/asm-utils.h                               | 2 +-
 include/ast.h                                     | 2 +-
 include/bitmap.h                                  | 2 +-
 include/bitutils.h                                | 2 +-
 include/bt.h                                      | 2 +-
 include/buddy.h                                   | 2 +-
 include/capp.h                                    | 2 +-
 include/cec.h                                     | 2 +-
 include/centaur.h                                 | 2 +-
 include/chip.h                                    | 2 +-
 include/chiptod.h                                 | 2 +-
 include/cmpxchg.h                                 | 2 +-
 include/compiler.h                                | 2 +-
 include/config.h                                  | 2 +-
 include/console.h                                 | 2 +-
 include/debug_descriptor.h                        | 2 +-
 include/device.h                                  | 2 +-
 include/dio-p9.h                                  | 2 +-
 include/direct-controls.h                         | 2 +-
 include/dts.h                                     | 2 +-
 include/elf-abi.h                                 | 2 +-
 include/errorlog.h                                | 2 +-
 include/fsp-attn.h                                | 2 +-
 include/fsp-elog.h                                | 2 +-
 include/fsp-leds.h                                | 2 +-
 include/fsp-mdst-table.h                          | 2 +-
 include/fsp-sysparam.h                            | 2 +-
 include/fsp.h                                     | 2 +-
 include/hiomap.h                                  | 2 +-
 include/hostservices.h                            | 2 +-
 include/i2c.h                                     | 2 +-
 include/interrupts.h                              | 2 +-
 include/inttypes.h                                | 2 +-
 include/io.h                                      | 2 +-
 include/ipmi.h                                    | 2 +-
 include/lock.h                                    | 2 +-
 include/lpc-mbox.h                                | 2 +-
 include/lpc.h                                     | 2 +-
 include/mem-map.h                                 | 2 +-
 include/mem_region-malloc.h                       | 2 +-
 include/mem_region.h                              | 2 +-
 include/npu-regs.h                                | 2 +-
 include/npu.h                                     | 2 +-
 include/npu2-regs.h                               | 2 +-
 include/npu2.h                                    | 2 +-
 include/nvram.h                                   | 2 +-
 include/nx.h                                      | 2 +-
 include/occ.h                                     | 2 +-
 include/op-panel.h                                | 2 +-
 include/opal-api.h                                | 2 +-
 include/opal-internal.h                           | 2 +-
 include/opal-msg.h                                | 2 +-
 include/opal.h                                    | 2 +-
 include/pci-cfg.h                                 | 2 +-
 include/pci-quirk.h                               | 2 +-
 include/pci-slot.h                                | 2 +-
 include/pci-virt.h                                | 2 +-
 include/pci.h                                     | 2 +-
 include/pel.h                                     | 2 +-
 include/phb3-capp.h                               | 2 +-
 include/phb3-regs.h                               | 2 +-
 include/phb3.h                                    | 2 +-
 include/phb4-capp.h                               | 2 +-
 include/phb4-regs.h                               | 2 +-
 include/phys-map.h                                | 2 +-
 include/pool.h                                    | 2 +-
 include/powercap.h                                | 2 +-
 include/prd-fw-msg.h                              | 2 +-
 include/processor.h                               | 2 +-
 include/psi.h                                     | 2 +-
 include/psr.h                                     | 2 +-
 include/rtc.h                                     | 2 +-
 include/sbe-p8.h                                  | 2 +-
 include/sbe-p9.h                                  | 2 +-
 include/sensor.h                                  | 2 +-
 include/sfc-ctrl.h                                | 2 +-
 include/skiboot-valgrind.h                        | 2 +-
 include/spcn.h                                    | 2 +-
 include/stack.h                                   | 2 +-
 include/time-utils.h                              | 2 +-
 include/timebase.h                                | 2 +-
 include/timer.h                                   | 2 +-
 include/trace.h                                   | 2 +-
 include/trace_types.h                             | 2 +-
 include/types.h                                   | 2 +-
 include/vas.h                                     | 2 +-
 include/vpd.h                                     | 2 +-
 include/xive.h                                    | 2 +-
 include/xscom-p8-regs.h                           | 2 +-
 include/xscom-p9-regs.h                           | 2 +-
 include/xscom.h                                   | 2 +-
 libflash/blocklevel.c                             | 2 +-
 libflash/blocklevel.h                             | 2 +-
 libflash/ecc.c                                    | 2 +-
 libflash/ecc.h                                    | 2 +-
 libflash/errors.h                                 | 2 +-
 libflash/ffs.h                                    | 2 +-
 libflash/file.c                                   | 2 +-
 libflash/file.h                                   | 2 +-
 libflash/ipmi-hiomap.c                            | 2 +-
 libflash/ipmi-hiomap.h                            | 2 +-
 libflash/libffs.h                                 | 2 +-
 libflash/libflash-priv.h                          | 2 +-
 libflash/libflash.c                               | 2 +-
 libflash/libflash.h                               | 2 +-
 libflash/mbox-flash.c                             | 2 +-
 libflash/mbox-flash.h                             | 2 +-
 libflash/test/mbox-server.c                       | 2 +-
 libflash/test/mbox-server.h                       | 2 +-
 libflash/test/stubs.c                             | 2 +-
 libflash/test/stubs.h                             | 2 +-
 libflash/test/test-blocklevel.c                   | 2 +-
 libflash/test/test-ecc.c                          | 2 +-
 libflash/test/test-flash.c                        | 2 +-
 libflash/test/test-ipmi-hiomap.c                  | 2 +-
 libflash/test/test-mbox.c                         | 2 +-
 libstb/container-utils.c                          | 2 +-
 libstb/container-utils.h                          | 2 +-
 libstb/container.c                                | 2 +-
 libstb/container.h                                | 2 +-
 libstb/create-container.c                         | 2 +-
 libstb/cvc.c                                      | 2 +-
 libstb/cvc.h                                      | 2 +-
 libstb/drivers/tpm_i2c_interface.c                | 2 +-
 libstb/drivers/tpm_i2c_interface.h                | 2 +-
 libstb/drivers/tpm_i2c_nuvoton.c                  | 2 +-
 libstb/drivers/tpm_i2c_nuvoton.h                  | 2 +-
 libstb/print-container.c                          | 2 +-
 libstb/secureboot.c                               | 2 +-
 libstb/secureboot.h                               | 2 +-
 libstb/status_codes.h                             | 2 +-
 libstb/test/run-stb-container.c                   | 2 +-
 libstb/tpm_chip.c                                 | 2 +-
 libstb/tpm_chip.h                                 | 2 +-
 libstb/trustedboot.c                              | 2 +-
 libstb/trustedboot.h                              | 2 +-
 make_offsets.sh                                   | 2 +-
 platforms/astbmc/astbmc.h                         | 2 +-
 platforms/astbmc/common.c                         | 2 +-
 platforms/astbmc/firestone.c                      | 2 +-
 platforms/astbmc/habanero.c                       | 2 +-
 platforms/astbmc/palmetto.c                       | 2 +-
 platforms/astbmc/pnor.c                           | 2 +-
 platforms/astbmc/slots.c                          | 2 +-
 platforms/astbmc/swift.c                          | 2 +-
 platforms/astbmc/witherspoon.c                    | 2 +-
 platforms/astbmc/zaius.c                          | 2 +-
 platforms/ibm-fsp/common.c                        | 2 +-
 platforms/ibm-fsp/firenze-pci.c                   | 2 +-
 platforms/ibm-fsp/firenze.c                       | 2 +-
 platforms/ibm-fsp/fsp-vpd.c                       | 2 +-
 platforms/ibm-fsp/hostservices.c                  | 2 +-
 platforms/ibm-fsp/ibm-fsp.h                       | 2 +-
 platforms/ibm-fsp/lxvpd.c                         | 2 +-
 platforms/ibm-fsp/lxvpd.h                         | 2 +-
 platforms/ibm-fsp/zz.c                            | 2 +-
 platforms/mambo/console.c                         | 2 +-
 platforms/mambo/mambo.c                           | 2 +-
 platforms/mambo/mambo.h                           | 2 +-
 platforms/qemu/qemu.c                             | 2 +-
 skiboot.lds.S                                     | 2 +-
 test/dt_common.c                                  | 2 +-
 test/hello_world/hello_kernel/hello_kernel.S      | 2 +-
 test/sreset_world/sreset_kernel/sreset_kernel.S   | 2 +-
 437 files changed, 437 insertions(+), 437 deletions(-)

diff --git a/Makefile b/Makefile
index f938a062ee21..e529bc80a23e 100644
--- a/Makefile
+++ b/Makefile
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 # Copyright 2012-2019 IBM Corp
 
 #
diff --git a/Makefile.main b/Makefile.main
index cb65cbc7c99b..3c5cc4bc100b 100644
--- a/Makefile.main
+++ b/Makefile.main
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 #
 # This is the main Makefile
 #
diff --git a/Makefile.rules b/Makefile.rules
index 3d9d1b1a053a..8c41c26e4887 100644
--- a/Makefile.rules
+++ b/Makefile.rules
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 #
 # These allow for the build to be less verbose
 #
diff --git a/asm/asm-offsets.c b/asm/asm-offsets.c
index e4584059c84c..2ac1e9efefe8 100644
--- a/asm/asm-offsets.c
+++ b/asm/asm-offsets.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp.
  */
 
diff --git a/asm/cvc_entry.S b/asm/cvc_entry.S
index 1296e88feaf5..93f1443d60d5 100644
--- a/asm/cvc_entry.S
+++ b/asm/cvc_entry.S
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 # IBM_PROLOG_BEGIN_TAG
 # This is an automatically generated prolog.
 #
diff --git a/asm/dummy_map.S b/asm/dummy_map.S
index cb8f9df1aba0..dd38bc1eef55 100644
--- a/asm/dummy_map.S
+++ b/asm/dummy_map.S
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 	.section ".sym_map","a"
 	.byte	0
 
diff --git a/asm/head.S b/asm/head.S
index e78dc520a838..805797075ea7 100644
--- a/asm/head.S
+++ b/asm/head.S
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * OPAL Entry points (and related code)
  *
diff --git a/asm/kernel-wrapper.S b/asm/kernel-wrapper.S
index 27ff47cda574..107f2b21faf3 100644
--- a/asm/kernel-wrapper.S
+++ b/asm/kernel-wrapper.S
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2014 IBM Corp.
  */
 
diff --git a/asm/misc.S b/asm/misc.S
index 647f60b2645f..e797efcf15e8 100644
--- a/asm/misc.S
+++ b/asm/misc.S
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Misc asm functions
  *
diff --git a/asm/real_map.S b/asm/real_map.S
index 4dfb71a08a88..54d3760de9c9 100644
--- a/asm/real_map.S
+++ b/asm/real_map.S
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2013-2014 IBM Corp.
  */
diff --git a/core/Makefile.inc b/core/Makefile.inc
index f8bfa7d79372..41e24f16d4c3 100644
--- a/core/Makefile.inc
+++ b/core/Makefile.inc
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 # Copyright 2012-2019 IBM Corp
 # -*-Makefile-*-
 
diff --git a/core/affinity.c b/core/affinity.c
index d2bf03095cb5..a12804ba81bb 100644
--- a/core/affinity.c
+++ b/core/affinity.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 /*
diff --git a/core/bitmap.c b/core/bitmap.c
index 0900a6167dca..8de1356c39d2 100644
--- a/core/bitmap.c
+++ b/core/bitmap.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2016 IBM Corp. */
 
 #include "bitmap.h"
diff --git a/core/buddy.c b/core/buddy.c
index d3f7ee3f79bc..1f433dd634b0 100644
--- a/core/buddy.c
+++ b/core/buddy.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2016-2017 IBM Corp. */
 
 #include <assert.h>
diff --git a/core/chip.c b/core/chip.c
index 4a4a9a270d20..5dc544c095d6 100644
--- a/core/chip.c
+++ b/core/chip.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/core/console-log.c b/core/console-log.c
index 09176afd0abc..21a1442bde32 100644
--- a/core/console-log.c
+++ b/core/console-log.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Console Log routines
  * Wraps libc and console lower level functions
diff --git a/core/console.c b/core/console.c
index 139ba4a97151..65b0ed7a9ef3 100644
--- a/core/console.c
+++ b/core/console.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Console IO routine for use by libc
  *
diff --git a/core/cpu.c b/core/cpu.c
index 232664b412a0..3621bdee75a5 100644
--- a/core/cpu.c
+++ b/core/cpu.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Code to manage and manipulate CPUs
  *
diff --git a/core/cpufeatures.c b/core/cpufeatures.c
index ec30c975e604..c6754abbe386 100644
--- a/core/cpufeatures.c
+++ b/core/cpufeatures.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * This file deals with setup of /cpus/ibm,powerpc-cpu-features dt
  *
diff --git a/core/device.c b/core/device.c
index ce0171b67e20..4dc0ef5e8dd6 100644
--- a/core/device.c
+++ b/core/device.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Manipulate the device tree
  *
diff --git a/core/errorlog.c b/core/errorlog.c
index 01e2969994d1..899403941329 100644
--- a/core/errorlog.c
+++ b/core/errorlog.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* This file contains the front end for OPAL error logging. It is used
  * to construct a struct errorlog representing the event/error to be
  * logged which is then passed to the platform specific backend to log
diff --git a/core/exceptions.c b/core/exceptions.c
index 90e412bfbd0b..02453eb497fa 100644
--- a/core/exceptions.c
+++ b/core/exceptions.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Deal with exceptions when in OPAL.
  *
diff --git a/core/fast-reboot.c b/core/fast-reboot.c
index ed5f54671692..4bd4b23dc218 100644
--- a/core/fast-reboot.c
+++ b/core/fast-reboot.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Full IPL is slow, let's cheat!
  *
diff --git a/core/fdt.c b/core/fdt.c
index d3c6d9fa1c3c..8257bf076dde 100644
--- a/core/fdt.c
+++ b/core/fdt.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Produce and consume flattened device trees
  *
diff --git a/core/flash-firmware-versions.c b/core/flash-firmware-versions.c
index 3e58379545cf..975ac6aff26d 100644
--- a/core/flash-firmware-versions.c
+++ b/core/flash-firmware-versions.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Parse VERSION partition, add to device tree
  *
diff --git a/core/flash-subpartition.c b/core/flash-subpartition.c
index 06a53a67307d..6e0fec6c3d11 100644
--- a/core/flash-subpartition.c
+++ b/core/flash-subpartition.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Parse flash sub-partitions
  *
diff --git a/core/gcov-profiling.c b/core/gcov-profiling.c
index c94438ec5e33..fdad51ed9a70 100644
--- a/core/gcov-profiling.c
+++ b/core/gcov-profiling.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * libgcov skeleton reimplementation to build skiboot with gcov support
  *
diff --git a/core/hmi.c b/core/hmi.c
index cb158c01ca55..b08c13f42f99 100644
--- a/core/hmi.c
+++ b/core/hmi.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Deal with Hypervisor Maintenance Interrupts
  *
diff --git a/core/i2c.c b/core/i2c.c
index 6bae83b42acf..d31958ab1ed5 100644
--- a/core/i2c.c
+++ b/core/i2c.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * I2C
  *
diff --git a/core/init.c b/core/init.c
index 25d827f28946..a9aca51a91f4 100644
--- a/core/init.c
+++ b/core/init.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * skiboot C entry point
  *
diff --git a/core/interrupts.c b/core/interrupts.c
index b0c1da198b9d..0673d628925a 100644
--- a/core/interrupts.c
+++ b/core/interrupts.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Excuse me, you do work for me now?
  *
diff --git a/core/ipmi-opal.c b/core/ipmi-opal.c
index 796508ca04b4..d710ff32ddce 100644
--- a/core/ipmi-opal.c
+++ b/core/ipmi-opal.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * IPMI OPAL calls
  *
diff --git a/core/ipmi.c b/core/ipmi.c
index 566300e13ce3..fd7ba4cbc0c1 100644
--- a/core/ipmi.c
+++ b/core/ipmi.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * in-band IPMI, probably over bt (or via FSP mbox on FSP)
  *
diff --git a/core/lock.c b/core/lock.c
index 9594e05fe360..f0ab595b1faa 100644
--- a/core/lock.c
+++ b/core/lock.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Simple spinlock
  *
diff --git a/core/malloc.c b/core/malloc.c
index 613cff96e99c..76996fff4a3f 100644
--- a/core/malloc.c
+++ b/core/malloc.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Implement malloc()/free() etc on top of our memory region allocator,
  * which provides mem_alloc()/mem_free().
diff --git a/core/mem_region.c b/core/mem_region.c
index 47d754455e9b..fde5e9d5047a 100644
--- a/core/mem_region.c
+++ b/core/mem_region.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Simple memory allocator
  *
diff --git a/core/nvram-format.c b/core/nvram-format.c
index 15a4a2df1b6e..8aa5abf2200d 100644
--- a/core/nvram-format.c
+++ b/core/nvram-format.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * NVRAM Format as specified in PAPR
  *
diff --git a/core/nvram.c b/core/nvram.c
index ce24684f59cc..773d20280c51 100644
--- a/core/nvram.c
+++ b/core/nvram.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * NVRAM support
  *
diff --git a/core/opal-msg.c b/core/opal-msg.c
index c393be7ef959..ba2ee390e702 100644
--- a/core/opal-msg.c
+++ b/core/opal-msg.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * OPAL Message queue between host and skiboot
  *
diff --git a/core/opal.c b/core/opal.c
index 151c5d915fcb..586ebc27d459 100644
--- a/core/opal.c
+++ b/core/opal.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Base support for OPAL calls
  *
diff --git a/core/pci-dt-slot.c b/core/pci-dt-slot.c
index 5c44955bdb81..353dd5dedab0 100644
--- a/core/pci-dt-slot.c
+++ b/core/pci-dt-slot.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * PCI slots in the device tree.
  *
diff --git a/core/pci-opal.c b/core/pci-opal.c
index 213a725656bb..d284f158dee1 100644
--- a/core/pci-opal.c
+++ b/core/pci-opal.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * PCIe OPAL Calls
  *
diff --git a/core/pci-quirk.c b/core/pci-quirk.c
index e8f9d2238456..7eeeb1f9b845 100644
--- a/core/pci-quirk.c
+++ b/core/pci-quirk.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Deal with PCI device quirks
  *
diff --git a/core/pci-slot.c b/core/pci-slot.c
index ffb54cbb7a49..71d3d329c2cf 100644
--- a/core/pci-slot.c
+++ b/core/pci-slot.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * PCI Slots
  *
diff --git a/core/pci-virt.c b/core/pci-virt.c
index 606e4f5aca77..e0cb9949c1af 100644
--- a/core/pci-virt.c
+++ b/core/pci-virt.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Support virtual PCI devices
  *
diff --git a/core/pci.c b/core/pci.c
index aceaa357877a..3fb862be8106 100644
--- a/core/pci.c
+++ b/core/pci.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Base PCI support
  *
diff --git a/core/pel.c b/core/pel.c
index b07ba0efc1e0..4fc2b2fc6a28 100644
--- a/core/pel.c
+++ b/core/pel.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Platform Error Log (PEL) generation
  *
diff --git a/core/platform.c b/core/platform.c
index 7220c6c7ae3b..f0bcd4985eaa 100644
--- a/core/platform.c
+++ b/core/platform.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * OPAL Platform abstraction
  *
diff --git a/core/pool.c b/core/pool.c
index 9294f8ca2e63..a0283199a782 100644
--- a/core/pool.c
+++ b/core/pool.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * This file provides some functions to manage a pool of pre-allocated
  * objects. It also provides a method to reserve a pre-defined number
diff --git a/core/powercap.c b/core/powercap.c
index b9d172b548e6..df75552f153a 100644
--- a/core/powercap.c
+++ b/core/powercap.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * OPAL calls to get/set power caps
  *
diff --git a/core/psr.c b/core/psr.c
index 4cd3768aee40..6aa6b8c10081 100644
--- a/core/psr.c
+++ b/core/psr.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * OPAL calls to get/set Power Shift Ratio (PSR)
  *
diff --git a/core/relocate.c b/core/relocate.c
index 8e1f1b23607d..6295927e2d2c 100644
--- a/core/relocate.c
+++ b/core/relocate.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Relocate ourselves
  *
diff --git a/core/rtc.c b/core/rtc.c
index 28faa989a6fd..3c0dda71e229 100644
--- a/core/rtc.c
+++ b/core/rtc.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Real Time Clock (RTC) Cache
  *
diff --git a/core/sensor.c b/core/sensor.c
index a804f968a56f..8b8122c67219 100644
--- a/core/sensor.c
+++ b/core/sensor.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * OPAL Sensor APIs
  *
diff --git a/core/stack.c b/core/stack.c
index 711761b207f0..d6cf36aff56d 100644
--- a/core/stack.c
+++ b/core/stack.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Create/Print backtraces, check stack usage etc.
  *
diff --git a/core/test/dummy-cpu.h b/core/test/dummy-cpu.h
index 804a0474f2c8..64fb71bce875 100644
--- a/core/test/dummy-cpu.h
+++ b/core/test/dummy-cpu.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2013-2018 IBM Corp.
  *
diff --git a/core/test/run-api-test.c b/core/test/run-api-test.c
index 0c3472b37b64..35e8135d4eba 100644
--- a/core/test/run-api-test.c
+++ b/core/test/run-api-test.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2014-2016 IBM Corp.
  *
diff --git a/core/test/run-bitmap.c b/core/test/run-bitmap.c
index 2c7cea7ff99b..e474915b85f5 100644
--- a/core/test/run-bitmap.c
+++ b/core/test/run-bitmap.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2017 IBM Corp.
  */
diff --git a/core/test/run-buddy.c b/core/test/run-buddy.c
index 83a4661b788f..8ae26cb6c7df 100644
--- a/core/test/run-buddy.c
+++ b/core/test/run-buddy.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2016-2017 IBM Corp.
  */
diff --git a/core/test/run-console-log-buf-overrun.c b/core/test/run-console-log-buf-overrun.c
index 45679f2f679d..83774c4c91d3 100644
--- a/core/test/run-console-log-buf-overrun.c
+++ b/core/test/run-console-log-buf-overrun.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2015-2016 IBM Corp.
  */
diff --git a/core/test/run-console-log-pr_fmt.c b/core/test/run-console-log-pr_fmt.c
index a25dafdbcfa6..457de03fba0f 100644
--- a/core/test/run-console-log-pr_fmt.c
+++ b/core/test/run-console-log-pr_fmt.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2015-2016 IBM Corp.
  */
diff --git a/core/test/run-console-log.c b/core/test/run-console-log.c
index 589b8b6baa11..bec281b6eb88 100644
--- a/core/test/run-console-log.c
+++ b/core/test/run-console-log.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2014-2016 IBM Corp.
  */
diff --git a/core/test/run-cpufeatures.c b/core/test/run-cpufeatures.c
index 1ec8c220a18a..bb89b25737e1 100644
--- a/core/test/run-cpufeatures.c
+++ b/core/test/run-cpufeatures.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2019 IBM Corp.
  */
diff --git a/core/test/run-device.c b/core/test/run-device.c
index 03d3d54a444d..4a12382bb8f7 100644
--- a/core/test/run-device.c
+++ b/core/test/run-device.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2012-2018 IBM Corp.
  */
diff --git a/core/test/run-flash-firmware-versions.c b/core/test/run-flash-firmware-versions.c
index 4b8a4da347f8..9f96f5c197cb 100644
--- a/core/test/run-flash-firmware-versions.c
+++ b/core/test/run-flash-firmware-versions.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2018-2019 IBM Corp.
  */
diff --git a/core/test/run-flash-subpartition.c b/core/test/run-flash-subpartition.c
index bc41dbf4dd87..5b6df87f2085 100644
--- a/core/test/run-flash-subpartition.c
+++ b/core/test/run-flash-subpartition.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2013-2016 IBM Corp.
  */
diff --git a/core/test/run-malloc-speed.c b/core/test/run-malloc-speed.c
index 400778adfd05..39a24f9cb277 100644
--- a/core/test/run-malloc-speed.c
+++ b/core/test/run-malloc-speed.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2013-2018 IBM Corp.
  */
diff --git a/core/test/run-malloc.c b/core/test/run-malloc.c
index 00ea41078ed4..6018e99bfd11 100644
--- a/core/test/run-malloc.c
+++ b/core/test/run-malloc.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2013-2018 IBM Corp.
  */
diff --git a/core/test/run-mem_range_is_reserved.c b/core/test/run-mem_range_is_reserved.c
index f34c4ec28490..22c921395cc6 100644
--- a/core/test/run-mem_range_is_reserved.c
+++ b/core/test/run-mem_range_is_reserved.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2015-2019 IBM Corp.
  */
diff --git a/core/test/run-mem_region.c b/core/test/run-mem_region.c
index 038ce27bf22e..66fa630d9bae 100644
--- a/core/test/run-mem_region.c
+++ b/core/test/run-mem_region.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2013-2019 IBM Corp.
  */
diff --git a/core/test/run-mem_region_init.c b/core/test/run-mem_region_init.c
index beff3c2f8dfa..e96282de8efd 100644
--- a/core/test/run-mem_region_init.c
+++ b/core/test/run-mem_region_init.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2013-2018 IBM Corp.
  */
diff --git a/core/test/run-mem_region_next.c b/core/test/run-mem_region_next.c
index b14e41d07072..4e37cc82cbc0 100644
--- a/core/test/run-mem_region_next.c
+++ b/core/test/run-mem_region_next.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2015-2018 IBM Corp.
  */
diff --git a/core/test/run-mem_region_release_unused.c b/core/test/run-mem_region_release_unused.c
index f22cf194fa14..16090f8a0a66 100644
--- a/core/test/run-mem_region_release_unused.c
+++ b/core/test/run-mem_region_release_unused.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2013-2018 IBM Corp.
  */
diff --git a/core/test/run-mem_region_release_unused_noalloc.c b/core/test/run-mem_region_release_unused_noalloc.c
index aa8c23a2674e..b65931e75a28 100644
--- a/core/test/run-mem_region_release_unused_noalloc.c
+++ b/core/test/run-mem_region_release_unused_noalloc.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2013-2018 IBM Corp.
  */
diff --git a/core/test/run-mem_region_reservations.c b/core/test/run-mem_region_reservations.c
index daf10833c782..0ead70abc788 100644
--- a/core/test/run-mem_region_reservations.c
+++ b/core/test/run-mem_region_reservations.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2013-2018 IBM Corp.
  */
diff --git a/core/test/run-msg.c b/core/test/run-msg.c
index 7314ea6c92ca..3659a12d7cd0 100644
--- a/core/test/run-msg.c
+++ b/core/test/run-msg.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2013-2019 IBM Corp.
  */
diff --git a/core/test/run-nvram-format.c b/core/test/run-nvram-format.c
index 8f2e33a1c1ad..ba286bea3f58 100644
--- a/core/test/run-nvram-format.c
+++ b/core/test/run-nvram-format.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2013-2019 IBM Corp.
  */
diff --git a/core/test/run-pci-quirk.c b/core/test/run-pci-quirk.c
index f3c5170d7049..a5d835b0d582 100644
--- a/core/test/run-pci-quirk.c
+++ b/core/test/run-pci-quirk.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2018 IBM Corp
  */
diff --git a/core/test/run-pel.c b/core/test/run-pel.c
index 92215941e486..df976fa7061a 100644
--- a/core/test/run-pel.c
+++ b/core/test/run-pel.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Test for our PEL record generation. Currently this doesn't actually
  * test that the records we generate are correct, but it at least lets
diff --git a/core/test/run-pool.c b/core/test/run-pool.c
index 929f5abeaf27..e1c3843fff6d 100644
--- a/core/test/run-pool.c
+++ b/core/test/run-pool.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2014 IBM Corp
  */
diff --git a/core/test/run-time-utils.c b/core/test/run-time-utils.c
index 1b64e5a14536..04723dd61ed8 100644
--- a/core/test/run-time-utils.c
+++ b/core/test/run-time-utils.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2015-2017 IBM Corp.
  */
diff --git a/core/test/run-timebase.c b/core/test/run-timebase.c
index 264ebdfa36d0..a613609a0478 100644
--- a/core/test/run-timebase.c
+++ b/core/test/run-timebase.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2015-2016 IBM Corp.
  */
diff --git a/core/test/run-timer.c b/core/test/run-timer.c
index 415188c272e3..fef5648d7839 100644
--- a/core/test/run-timer.c
+++ b/core/test/run-timer.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2014-2018 IBM Corp
  */
diff --git a/core/test/run-trace.c b/core/test/run-trace.c
index ce0f47e9d559..af8e416b4717 100644
--- a/core/test/run-trace.c
+++ b/core/test/run-trace.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2013-2019 IBM Corp.
  */
diff --git a/core/test/stubs.c b/core/test/stubs.c
index 4a88738bc74e..bfcba0673f0f 100644
--- a/core/test/stubs.c
+++ b/core/test/stubs.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2013-2019 IBM Corp
  */
diff --git a/core/time-utils.c b/core/time-utils.c
index 97ca9620bbbc..e948654d3828 100644
--- a/core/time-utils.c
+++ b/core/time-utils.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Converts an OPAL formatted datetime into a struct tm. We ignore microseconds
  * as Linux doesn't use them anyway.
diff --git a/core/timebase.c b/core/timebase.c
index 4cb0b5157368..451e3710e21d 100644
--- a/core/timebase.c
+++ b/core/timebase.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Wait for things, by waiting for timebase to tick over
  *
diff --git a/core/timer.c b/core/timer.c
index 5cf9069c52cd..652ffba3035f 100644
--- a/core/timer.c
+++ b/core/timer.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * run something, but later.
  *
diff --git a/core/trace.c b/core/trace.c
index 614be08d7de1..1905af435e11 100644
--- a/core/trace.c
+++ b/core/trace.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Trace various things into in-memory buffers
  *
diff --git a/core/utils.c b/core/utils.c
index 728cea407989..f4b433f82dbf 100644
--- a/core/utils.c
+++ b/core/utils.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Misc utility functions
  *
diff --git a/core/vpd.c b/core/vpd.c
index eb9254ac6f48..20fe09597c48 100644
--- a/core/vpd.c
+++ b/core/vpd.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Parse Vital Product Data (VPD)
  *
diff --git a/external/Makefile.check b/external/Makefile.check
index 46ff66eb55f7..7edd7a21e6ce 100644
--- a/external/Makefile.check
+++ b/external/Makefile.check
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 # -*-Makefile-*-
 
 TOOL=gard ffspart pflash
diff --git a/external/common/arch_flash.h b/external/common/arch_flash.h
index 4feed27cd0f3..0dff8b704cd3 100644
--- a/external/common/arch_flash.h
+++ b/external/common/arch_flash.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2015 IBM Corp.
  */
 
diff --git a/external/common/arch_flash_arm.c b/external/common/arch_flash_arm.c
index 5842fdd9be45..cfe7b96aa891 100644
--- a/external/common/arch_flash_arm.c
+++ b/external/common/arch_flash_arm.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2015-2016 IBM Corp.
  */
 #define _GNU_SOURCE
diff --git a/external/common/arch_flash_arm_io.h b/external/common/arch_flash_arm_io.h
index bffcb5377fb2..85dbaf4825be 100644
--- a/external/common/arch_flash_arm_io.h
+++ b/external/common/arch_flash_arm_io.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2015 IBM Corp.
  */
diff --git a/external/common/arch_flash_common.c b/external/common/arch_flash_common.c
index d3e34fd2eeda..c7a6e95caa53 100644
--- a/external/common/arch_flash_common.c
+++ b/external/common/arch_flash_common.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Default implementations
  *
diff --git a/external/common/arch_flash_powerpc.c b/external/common/arch_flash_powerpc.c
index 9bd4ba2a3382..87661296d34e 100644
--- a/external/common/arch_flash_powerpc.c
+++ b/external/common/arch_flash_powerpc.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp.
  */
 
diff --git a/external/common/arch_flash_x86.c b/external/common/arch_flash_x86.c
index 00a355600692..e6cf8e5f6abe 100644
--- a/external/common/arch_flash_x86.c
+++ b/external/common/arch_flash_x86.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp.
  */
 
diff --git a/external/common/get_arch.sh b/external/common/get_arch.sh
index b5e0867e32ea..7833a821664e 100755
--- a/external/common/get_arch.sh
+++ b/external/common/get_arch.sh
@@ -1,5 +1,5 @@
 #!/bin/sh
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 
 echo "#if defined(__powerpc__)
 echo -n ARCH_POWERPC
diff --git a/external/devicetree/Makefile b/external/devicetree/Makefile
index 02e7a176b8c7..690f633b924c 100644
--- a/external/devicetree/Makefile
+++ b/external/devicetree/Makefile
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 #
 # Copyright 2019 IBM Corp.
 
diff --git a/external/devicetree/p9-simics.dts b/external/devicetree/p9-simics.dts
index bc6747cf29cd..e24c7b762ea5 100644
--- a/external/devicetree/p9-simics.dts
+++ b/external/devicetree/p9-simics.dts
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * POWER9 Simics Device Tree
  */
diff --git a/external/devicetree/p9.dts b/external/devicetree/p9.dts
index fac348bdd565..8a5684aca2a6 100644
--- a/external/devicetree/p9.dts
+++ b/external/devicetree/p9.dts
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * base POWER9 device tree
  */
diff --git a/external/ffspart/Makefile b/external/ffspart/Makefile
index 98140222e812..0a8d910fd04c 100644
--- a/external/ffspart/Makefile
+++ b/external/ffspart/Makefile
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 # Use make V=1 for a verbose build.
 include rules.mk
 GET_ARCH = ../../external/common/get_arch.sh
diff --git a/external/ffspart/config.h b/external/ffspart/config.h
index 4509837f43f3..7894afb6b688 100644
--- a/external/ffspart/config.h
+++ b/external/ffspart/config.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * For CCAN
  *
diff --git a/external/ffspart/ffspart.c b/external/ffspart/ffspart.c
index e0dd8d300fa2..d41bdfddf5c5 100644
--- a/external/ffspart/ffspart.c
+++ b/external/ffspart/ffspart.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Assemble a FFS Image (no, not that FFS, this FFS)
  *
diff --git a/external/ffspart/rules.mk b/external/ffspart/rules.mk
index 1c6a838f77bf..40972c688878 100644
--- a/external/ffspart/rules.mk
+++ b/external/ffspart/rules.mk
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 .DEFAULT_GOAL := all
 
 override CFLAGS  += -O2 -Wall -g -I.
diff --git a/external/fwts/generate-fwts-olog b/external/fwts/generate-fwts-olog
index 3018965eb394..c455988de1f7 100755
--- a/external/fwts/generate-fwts-olog
+++ b/external/fwts/generate-fwts-olog
@@ -1,5 +1,5 @@
 #!/usr/bin/env python2
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 #
 # Copyright 2016 Jeremy Kerr <jk at ozlabs.org>
 
diff --git a/external/fwts/merge-fwts-olog b/external/fwts/merge-fwts-olog
index 6b0befb0d9a6..132d8980ce77 100755
--- a/external/fwts/merge-fwts-olog
+++ b/external/fwts/merge-fwts-olog
@@ -1,5 +1,5 @@
 #!/usr/bin/env python2
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 #
 # Copyright 2016 IBM Corp.
 
diff --git a/external/gard/Makefile.dist b/external/gard/Makefile.dist
index 4d44a044988a..e03ad230a037 100644
--- a/external/gard/Makefile.dist
+++ b/external/gard/Makefile.dist
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 #Prevent make from trying to remake arch links symlinks
 #which are fixed files now
 ARCH_LINKS :=
diff --git a/external/gard/config.h b/external/gard/config.h
index d3edaea0f8a0..42aef6ddb71d 100644
--- a/external/gard/config.h
+++ b/external/gard/config.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * For CCAN
  *
diff --git a/external/gard/gard.c b/external/gard/gard.c
index f8c10324b7a8..1e1b999a75f7 100644
--- a/external/gard/gard.c
+++ b/external/gard/gard.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Manipulate GARD records in the GARD partition
  *
diff --git a/external/gard/gard.h b/external/gard/gard.h
index 5999cf995639..329772a74b32 100644
--- a/external/gard/gard.h
+++ b/external/gard/gard.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp.
  */
 
diff --git a/external/gard/units.c b/external/gard/units.c
index 62033a18c01f..677d68f5b7b9 100644
--- a/external/gard/units.c
+++ b/external/gard/units.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Each chip has a set of "units" that are detailed by the System MRW. Granted
  * they're pretty much fixed for a given chip generation so hardcoding them here
diff --git a/external/lpc/Makefile b/external/lpc/Makefile
index be71b5fa1fda..1c14945c825e 100644
--- a/external/lpc/Makefile
+++ b/external/lpc/Makefile
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 
 all: lpc
 
diff --git a/external/lpc/lpc.c b/external/lpc/lpc.c
index e8d87b807a58..112183705865 100644
--- a/external/lpc/lpc.c
+++ b/external/lpc/lpc.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * LPC operations through debugfs interface
  *
diff --git a/external/mambo/Makefile b/external/mambo/Makefile
index d750b98aa35d..942ebf20ee51 100644
--- a/external/mambo/Makefile
+++ b/external/mambo/Makefile
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 
 CFLAGS=-O2 -m64 -pthread -Werror -Wall
 
diff --git a/external/mambo/mambo-socket-proxy.c b/external/mambo/mambo-socket-proxy.c
index 16053e71f9a5..64b677045d6e 100644
--- a/external/mambo/mambo-socket-proxy.c
+++ b/external/mambo/mambo-socket-proxy.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Compile with:
  *   gcc -static -O2 mambo-socket-proxy.c -o mambo-socket-proxy -pthread
diff --git a/external/mambo/mambo_utils.tcl b/external/mambo/mambo_utils.tcl
index 8bde1e1b1d07..96f8971ab3de 100644
--- a/external/mambo/mambo_utils.tcl
+++ b/external/mambo/mambo_utils.tcl
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 #
 # Make Mambo behave a bit more like gdb
 #
diff --git a/external/mambo/qtrace_utils.tcl b/external/mambo/qtrace_utils.tcl
index 3fbcd596dd09..bb20b31d3f96 100644
--- a/external/mambo/qtrace_utils.tcl
+++ b/external/mambo/qtrace_utils.tcl
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 
 if { [file exists $env(LIB_DIR)/perf/qtrace.tcl] == 1} {
     if { [catch {source $env(LIB_DIR)/perf/qtrace.tcl} issue ] } {
diff --git a/external/mambo/skiboot.tcl b/external/mambo/skiboot.tcl
index a16bd3285141..f0c3bf3f46ab 100644
--- a/external/mambo/skiboot.tcl
+++ b/external/mambo/skiboot.tcl
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 #
 # scripts to run skiboot (and a payload) with Mambo (otherwise known as the
 # POWER[89] Functional Simulator)
diff --git a/external/memboot/Makefile b/external/memboot/Makefile
index 85c0f58501db..da17b32d9181 100644
--- a/external/memboot/Makefile
+++ b/external/memboot/Makefile
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 all: memboot
 
 CFLAGS=-O2 -Wall
diff --git a/external/memboot/memboot.c b/external/memboot/memboot.c
index 4d2b5f859147..8298aed2c934 100644
--- a/external/memboot/memboot.c
+++ b/external/memboot/memboot.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * The old way of booting a temporary f/w image.
  * These days, use mboxd on a BMC.
diff --git a/external/npu/run_procedure.sh b/external/npu/run_procedure.sh
index 31a6c421ee76..e5df327e073d 100755
--- a/external/npu/run_procedure.sh
+++ b/external/npu/run_procedure.sh
@@ -1,5 +1,5 @@
 #!/bin/bash
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 #
 # Run an NPU Hardware procedure
 #
diff --git a/external/opal-prd/config.h b/external/opal-prd/config.h
index 5de618bcaeb5..e7f377353e8f 100644
--- a/external/opal-prd/config.h
+++ b/external/opal-prd/config.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * For CCAN
  *
diff --git a/external/opal-prd/hostboot-interface.h b/external/opal-prd/hostboot-interface.h
index 60951fe33251..59f9ff4444dc 100644
--- a/external/opal-prd/hostboot-interface.h
+++ b/external/opal-prd/hostboot-interface.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Hostboot runtime interface
  *
diff --git a/external/opal-prd/i2c.c b/external/opal-prd/i2c.c
index 3cf886819941..f4c7f27a4925 100644
--- a/external/opal-prd/i2c.c
+++ b/external/opal-prd/i2c.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * I2C operations for opal-prd
  *
diff --git a/external/opal-prd/i2c.h b/external/opal-prd/i2c.h
index bdadec6b7bd0..ee73f906ef73 100644
--- a/external/opal-prd/i2c.h
+++ b/external/opal-prd/i2c.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2015 IBM Corp */
 
 #ifndef __I2C_H
diff --git a/external/opal-prd/module.c b/external/opal-prd/module.c
index 6797d4cdeea5..9c9c0af84e16 100644
--- a/external/opal-prd/module.c
+++ b/external/opal-prd/module.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Load kernel modules needed for opal-prd
  *
diff --git a/external/opal-prd/module.h b/external/opal-prd/module.h
index e55d321ca2a1..2771bf0e8d2c 100644
--- a/external/opal-prd/module.h
+++ b/external/opal-prd/module.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2015 IBM Corp. */
 
 #ifndef MODULES_H
diff --git a/external/opal-prd/opal-prd.c b/external/opal-prd/opal-prd.c
index b49d9ae6da82..a1a149def5f0 100644
--- a/external/opal-prd/opal-prd.c
+++ b/external/opal-prd/opal-prd.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * OPAL Processor Runtime Diagnostics (PRD)
  * Runs Hostboot RunTime (HBRT) code in a userspace wrapper
diff --git a/external/opal-prd/opal-prd.h b/external/opal-prd/opal-prd.h
index 17333d2cae3e..606317d74c7e 100644
--- a/external/opal-prd/opal-prd.h
+++ b/external/opal-prd/opal-prd.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2015 IBM Corp. */
 
 #ifndef OPAL_PRD_H
diff --git a/external/opal-prd/pnor.c b/external/opal-prd/pnor.c
index 6ddc2b5944e8..b2da7134c4b2 100644
--- a/external/opal-prd/pnor.c
+++ b/external/opal-prd/pnor.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * PNOR Access (/dev/mtd) for opal-prd
  *
diff --git a/external/opal-prd/pnor.h b/external/opal-prd/pnor.h
index 0d253259d82e..aaaf9c4872ae 100644
--- a/external/opal-prd/pnor.h
+++ b/external/opal-prd/pnor.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2015-2017 IBM Corp */
 
 #ifndef PNOR_H
diff --git a/external/opal-prd/test/test_pnor.c b/external/opal-prd/test/test_pnor.c
index 4e599e5fe001..bc7234ecf7fb 100644
--- a/external/opal-prd/test/test_pnor.c
+++ b/external/opal-prd/test/test_pnor.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2015 IBM Corp. */
 
 #include <stdarg.h>
diff --git a/external/opal-prd/test/test_pnor_ops.c b/external/opal-prd/test/test_pnor_ops.c
index ab0593010c3d..913f2ecf71d0 100644
--- a/external/opal-prd/test/test_pnor_ops.c
+++ b/external/opal-prd/test/test_pnor_ops.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2015-2016 IBM Corp */
 
 #include <sys/types.h>
diff --git a/external/opal-prd/thunk.S b/external/opal-prd/thunk.S
index 227607c7ecb7..46355c033bce 100644
--- a/external/opal-prd/thunk.S
+++ b/external/opal-prd/thunk.S
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2015-2017 IBM Corp */
 	
 #include <endian.h>
diff --git a/external/pflash/Makefile.dist b/external/pflash/Makefile.dist
index b6183d72dba4..85e41fa643e7 100644
--- a/external/pflash/Makefile.dist
+++ b/external/pflash/Makefile.dist
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 include rules.mk
 GET_ARCH = common/get_arch.sh
 include common/rules.mk
diff --git a/external/pflash/build-all-arch.sh b/external/pflash/build-all-arch.sh
index 0af3a4d48999..14364334a490 100755
--- a/external/pflash/build-all-arch.sh
+++ b/external/pflash/build-all-arch.sh
@@ -1,5 +1,5 @@
 #!/bin/bash
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 #
 # Script to build all pflash backends
 #
diff --git a/external/pflash/config.h b/external/pflash/config.h
index b55d13ebfde6..34da2eb7ccf9 100644
--- a/external/pflash/config.h
+++ b/external/pflash/config.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * For CCAN
  *
diff --git a/external/pflash/pflash.c b/external/pflash/pflash.c
index 7bf07857aace..8aa2acb1d447 100644
--- a/external/pflash/pflash.c
+++ b/external/pflash/pflash.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Display progress bars, while also writing whole or part
  * of flash.
diff --git a/external/pflash/progress.c b/external/pflash/progress.c
index 414044638487..b98838473971 100644
--- a/external/pflash/progress.c
+++ b/external/pflash/progress.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * The most important part of pflash, the progress bars
  *
diff --git a/external/pflash/progress.h b/external/pflash/progress.h
index efe70c685a68..eb390d5428f7 100644
--- a/external/pflash/progress.h
+++ b/external/pflash/progress.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2014-2017 IBM Corp.
  */
diff --git a/external/pflash/rules.mk b/external/pflash/rules.mk
index ab9bf144fba5..8d5a7bfd22de 100644
--- a/external/pflash/rules.mk
+++ b/external/pflash/rules.mk
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 
 .DEFAULT_GOAL := all
 
diff --git a/external/pflash/test/tests/00-usage b/external/pflash/test/tests/00-usage
index 809b995a324d..4c4ba2aa585b 100644
--- a/external/pflash/test/tests/00-usage
+++ b/external/pflash/test/tests/00-usage
@@ -1,5 +1,5 @@
 #! /bin/sh
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 
 run_binary "./pflash" "-h"
 if [ "$?" -ne 0 ] ; then
diff --git a/external/pflash/test/tests/01-info b/external/pflash/test/tests/01-info
index 2fc2755f689d..583d275c4188 100644
--- a/external/pflash/test/tests/01-info
+++ b/external/pflash/test/tests/01-info
@@ -1,5 +1,5 @@
 #! /bin/sh
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 
 touch "$DATA_DIR/$CUR_TEST.pnor"
 
diff --git a/external/pflash/test/tests/02-erase b/external/pflash/test/tests/02-erase
index 911728d744e1..f1db99266621 100644
--- a/external/pflash/test/tests/02-erase
+++ b/external/pflash/test/tests/02-erase
@@ -1,5 +1,5 @@
 #! /bin/sh
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 
 touch "$DATA_DIR/$CUR_TEST.pnor"
 
diff --git a/external/pflash/test/tests/03-erase-parts b/external/pflash/test/tests/03-erase-parts
index 74937fa2b42b..91b0a145e9e6 100644
--- a/external/pflash/test/tests/03-erase-parts
+++ b/external/pflash/test/tests/03-erase-parts
@@ -1,5 +1,5 @@
 #! /bin/sh
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 
 touch "$DATA_DIR/$CUR_TEST.pnor"
 
diff --git a/external/pflash/test/tests/04-program-rand b/external/pflash/test/tests/04-program-rand
index d732eabd4823..fc8abb648ffa 100644
--- a/external/pflash/test/tests/04-program-rand
+++ b/external/pflash/test/tests/04-program-rand
@@ -1,5 +1,5 @@
 #! /bin/sh
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 
 touch "$DATA_DIR/$CUR_TEST.pnor"
 
diff --git a/external/pflash/test/tests/05-bad-numbers b/external/pflash/test/tests/05-bad-numbers
index 60640900d27e..03cc39ebf5ee 100644
--- a/external/pflash/test/tests/05-bad-numbers
+++ b/external/pflash/test/tests/05-bad-numbers
@@ -1,5 +1,5 @@
 #! /bin/sh
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 
 touch "$DATA_DIR/$CUR_TEST.pnor"
 
diff --git a/external/pflash/test/tests/06-miscprint b/external/pflash/test/tests/06-miscprint
index 8b37cab550a9..bee84afc5f94 100644
--- a/external/pflash/test/tests/06-miscprint
+++ b/external/pflash/test/tests/06-miscprint
@@ -1,5 +1,5 @@
 #! /bin/sh
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 
 touch "$DATA_DIR/$CUR_TEST.pnor"
 
diff --git a/external/read_esel.sh b/external/read_esel.sh
index 300709216589..ee4c66ed45fc 100644
--- a/external/read_esel.sh
+++ b/external/read_esel.sh
@@ -1,5 +1,5 @@
 #!/bin/bash
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 # Copyright 2013-2014 IBM Corp.
 
 set -e
diff --git a/external/shared/Makefile b/external/shared/Makefile
index 944295495143..9ea4adc51234 100644
--- a/external/shared/Makefile
+++ b/external/shared/Makefile
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 .DEFAULT_GOAL := all
 GET_ARCH := ../../external/common/get_arch.sh
 include ../../external/common/rules.mk
diff --git a/external/shared/config.h b/external/shared/config.h
index 9ed42d2c2b83..f78e30e088ea 100644
--- a/external/shared/config.h
+++ b/external/shared/config.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * For CCAN
  *
diff --git a/external/shared/rules.mk b/external/shared/rules.mk
index 632c62c7ec46..a3d83d166404 100644
--- a/external/shared/rules.mk
+++ b/external/shared/rules.mk
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 # NOTE: shared lib versioning has *NOTHING* to do with software package version
 #
 # If source code has changed, revision++
diff --git a/external/test/test.sh b/external/test/test.sh
index 1ff534b839b0..2bf1e89a6fc0 100755
--- a/external/test/test.sh
+++ b/external/test/test.sh
@@ -1,5 +1,5 @@
 #! /bin/sh
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 #
 # Copyright 2013-2017 IBM Corp.
 
diff --git a/external/trace/Makefile b/external/trace/Makefile
index f18e5bc54a16..737397bcae89 100644
--- a/external/trace/Makefile
+++ b/external/trace/Makefile
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 HOSTEND=$(shell uname -m | sed -e 's/^i.*86$$/LITTLE/' -e 's/^x86.*/LITTLE/' -e 's/^ppc64le/LITTLE/' -e 's/^ppc.*/BIG/')
 CFLAGS=-g -Wall -DHAVE_$(HOSTEND)_ENDIAN -I../../include -I../../
 
diff --git a/external/trace/dump_trace.c b/external/trace/dump_trace.c
index 4a01bde1358f..aba684b5b8b1 100644
--- a/external/trace/dump_trace.c
+++ b/external/trace/dump_trace.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Dump the content of an OPAL trace
  *
diff --git a/external/trace/trace.c b/external/trace/trace.c
index f28630f33b01..97cec7d9dbf6 100644
--- a/external/trace/trace.c
+++ b/external/trace/trace.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * This example code shows how to read from the trace buffer.
  *
diff --git a/external/trace/trace.h b/external/trace/trace.h
index 14b94d0d88a6..1a5a138ae1e5 100644
--- a/external/trace/trace.h
+++ b/external/trace/trace.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2013-2019 IBM Corp.
  */
diff --git a/external/xscom-utils/adu_scoms.py b/external/xscom-utils/adu_scoms.py
index 4d1f3face545..cb1c0d27408a 100755
--- a/external/xscom-utils/adu_scoms.py
+++ b/external/xscom-utils/adu_scoms.py
@@ -1,5 +1,5 @@
 #!/usr/bin/python
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 #
 # Python library for in-band SCom access
 # (based on xscom-utils from OPAL firmware)
diff --git a/external/xscom-utils/getscom.c b/external/xscom-utils/getscom.c
index 430a23e75a31..bb28139d8fa2 100644
--- a/external/xscom-utils/getscom.c
+++ b/external/xscom-utils/getscom.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * getscom
  *
diff --git a/external/xscom-utils/getsram.c b/external/xscom-utils/getsram.c
index a3e53e110026..7d9c4bfac201 100644
--- a/external/xscom-utils/getsram.c
+++ b/external/xscom-utils/getsram.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Read SRAM
  *
diff --git a/external/xscom-utils/putscom.c b/external/xscom-utils/putscom.c
index ba575e0958bc..b942eeb58a22 100644
--- a/external/xscom-utils/putscom.c
+++ b/external/xscom-utils/putscom.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * getscom
  *
diff --git a/external/xscom-utils/sram.c b/external/xscom-utils/sram.c
index fd3fe8c8f2b4..87df70e10ba0 100644
--- a/external/xscom-utils/sram.c
+++ b/external/xscom-utils/sram.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2014-2019 IBM Corp. */
 
 #include <stdint.h>
diff --git a/external/xscom-utils/sram.h b/external/xscom-utils/sram.h
index 92ab512605bc..75d9155c4892 100644
--- a/external/xscom-utils/sram.h
+++ b/external/xscom-utils/sram.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2014-2016 IBM Corp. */
 
 #ifndef __SRAM_H
diff --git a/external/xscom-utils/xscom.c b/external/xscom-utils/xscom.c
index f742336d36ed..031f9e193905 100644
--- a/external/xscom-utils/xscom.c
+++ b/external/xscom-utils/xscom.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Do XSCOMs through linux debugfs interface
  *
diff --git a/external/xscom-utils/xscom.h b/external/xscom-utils/xscom.h
index 8929fb26b378..05b8f543b6f6 100644
--- a/external/xscom-utils/xscom.h
+++ b/external/xscom-utils/xscom.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2014-2017 IBM Corp.
  */
 
diff --git a/extract-gcov.c b/extract-gcov.c
index ececbc1e0d78..f1dec35946e5 100644
--- a/extract-gcov.c
+++ b/extract-gcov.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2015-2018 IBM Corp. */
 
 #define _DEFAULT_SOURCE
diff --git a/hdata/cpu-common.c b/hdata/cpu-common.c
index 55a663fa4294..b9c07721c768 100644
--- a/hdata/cpu-common.c
+++ b/hdata/cpu-common.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/hdata/fsp.c b/hdata/fsp.c
index 5923f1febaf8..ea503164b126 100644
--- a/hdata/fsp.c
+++ b/hdata/fsp.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #include <device.h>
diff --git a/hdata/hdata.h b/hdata/hdata.h
index f778471728fc..69359380014e 100644
--- a/hdata/hdata.h
+++ b/hdata/hdata.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #ifndef __HDATA_H
diff --git a/hdata/hdif.c b/hdata/hdif.c
index 2c26038d9cb4..2dfa94cf6845 100644
--- a/hdata/hdif.c
+++ b/hdata/hdif.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #include "hdif.h"
diff --git a/hdata/hdif.h b/hdata/hdif.h
index b9d4391a9994..52df0f16dd0b 100644
--- a/hdata/hdif.h
+++ b/hdata/hdif.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #ifndef __HDIF_H
diff --git a/hdata/hostservices.c b/hdata/hostservices.c
index 7fb5baceb86c..9e53a865e601 100644
--- a/hdata/hostservices.c
+++ b/hdata/hostservices.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #include <stdint.h>
diff --git a/hdata/i2c.c b/hdata/i2c.c
index b979f352e984..08645be9e4cc 100644
--- a/hdata/i2c.c
+++ b/hdata/i2c.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017-2019 IBM Corp. */
 
 #include <device.h>
diff --git a/hdata/iohub.c b/hdata/iohub.c
index 99c31c0292f4..fc90fe5e32de 100644
--- a/hdata/iohub.c
+++ b/hdata/iohub.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/hdata/memory.c b/hdata/memory.c
index 9af7ae71dd85..fd2f4aa8a303 100644
--- a/hdata/memory.c
+++ b/hdata/memory.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #include <cpu.h>
diff --git a/hdata/paca.c b/hdata/paca.c
index 28025b0cd337..ed08dc039693 100644
--- a/hdata/paca.c
+++ b/hdata/paca.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/hdata/pcia.c b/hdata/pcia.c
index ff645aba6a72..a86297044bd1 100644
--- a/hdata/pcia.c
+++ b/hdata/pcia.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/hdata/slca.c b/hdata/slca.c
index a658af65076d..dd49335058eb 100644
--- a/hdata/slca.c
+++ b/hdata/slca.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2015 IBM Corp. */
 
 #include <device.h>
diff --git a/hdata/spira.c b/hdata/spira.c
index f6003ea0fc0f..6d73abed9376 100644
--- a/hdata/spira.c
+++ b/hdata/spira.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #include <inttypes.h>
diff --git a/hdata/spira.h b/hdata/spira.h
index 72f0ad909998..9daebb00fd9e 100644
--- a/hdata/spira.h
+++ b/hdata/spira.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __SPIRA_H
diff --git a/hdata/test/Makefile.check b/hdata/test/Makefile.check
index 4c579aec4e41..b3cb7e3508ef 100644
--- a/hdata/test/Makefile.check
+++ b/hdata/test/Makefile.check
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 # -*-Makefile-*-
 
 HDATA_TEST := hdata/test/hdata_to_dt
diff --git a/hdata/test/dtdiff_wrap.sh b/hdata/test/dtdiff_wrap.sh
index e746e259a7f9..0a4790c36cca 100755
--- a/hdata/test/dtdiff_wrap.sh
+++ b/hdata/test/dtdiff_wrap.sh
@@ -1,5 +1,5 @@
 #!/bin/bash
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 #
 # Takes /dev/stdin as dtb, saves to file, does dtdiff
 # Also runs parameter through a dts->dtb->dts conversion
diff --git a/hdata/test/hdata_to_dt.c b/hdata/test/hdata_to_dt.c
index 2c8de61b5405..dd8fd0b87c3f 100644
--- a/hdata/test/hdata_to_dt.c
+++ b/hdata/test/hdata_to_dt.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Given a hdata dump, output the device tree.
  *
diff --git a/hdata/test/stubs.c b/hdata/test/stubs.c
index 1d924b6c479e..a9f2579173f3 100644
--- a/hdata/test/stubs.c
+++ b/hdata/test/stubs.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #include <stdlib.h>
diff --git a/hdata/vpd-common.c b/hdata/vpd-common.c
index db6384b13d99..c91fccaa29d8 100644
--- a/hdata/vpd-common.c
+++ b/hdata/vpd-common.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/hw/ast-bmc/Makefile.inc b/hw/ast-bmc/Makefile.inc
index 1ab9627049cb..e7ded0e88060 100644
--- a/hw/ast-bmc/Makefile.inc
+++ b/hw/ast-bmc/Makefile.inc
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 SUBDIRS += hw/ast-bmc
 
 AST_BMC_OBJS  = ast-io.o ast-sf-ctrl.o
diff --git a/hw/ast-bmc/ast-io.c b/hw/ast-bmc/ast-io.c
index 171942a40ecc..f0f8c4c4dcd7 100644
--- a/hw/ast-bmc/ast-io.c
+++ b/hw/ast-bmc/ast-io.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Note about accesses to the AST2400 internal memory map:
  *
diff --git a/hw/ast-bmc/ast-sf-ctrl.c b/hw/ast-bmc/ast-sf-ctrl.c
index ece847d6b892..0fc8cfd08d58 100644
--- a/hw/ast-bmc/ast-sf-ctrl.c
+++ b/hw/ast-bmc/ast-sf-ctrl.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #include <stdint.h>
diff --git a/hw/bt.c b/hw/bt.c
index 2f3143fec76d..cf967f8996b2 100644
--- a/hw/bt.c
+++ b/hw/bt.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Block Transfer, typically what IPMI goes over
  *
diff --git a/hw/cache-p9.c b/hw/cache-p9.c
index 29640cf6ca90..fb5ce308719c 100644
--- a/hw/cache-p9.c
+++ b/hw/cache-p9.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2019 IBM Corp.
  */
diff --git a/hw/capp.c b/hw/capp.c
index 709e6db14460..683622873750 100644
--- a/hw/capp.c
+++ b/hw/capp.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * CAPP unit (i.e. CAPI)
  *
diff --git a/hw/centaur.c b/hw/centaur.c
index 641f2f0aa2c6..c79dd7f279d5 100644
--- a/hw/centaur.c
+++ b/hw/centaur.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Centaur memory buffer chip
  *
diff --git a/hw/chiptod.c b/hw/chiptod.c
index f7e92259e08e..f445fd49a7e4 100644
--- a/hw/chiptod.c
+++ b/hw/chiptod.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Handle ChipTOD chip & configure core and CAPP timebases
  *
diff --git a/hw/dio-p9.c b/hw/dio-p9.c
index 59c48735c1f8..5153f6eeb641 100644
--- a/hw/dio-p9.c
+++ b/hw/dio-p9.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2019 IBM Corp. */
 
 #define pr_fmt(fmt) "DIO: " fmt
diff --git a/hw/fake-nvram.c b/hw/fake-nvram.c
index 6411400ebf76..44adde4a3510 100644
--- a/hw/fake-nvram.c
+++ b/hw/fake-nvram.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/hw/fake-rtc.c b/hw/fake-rtc.c
index 328be97d9799..48b1c1159a83 100644
--- a/hw/fake-rtc.c
+++ b/hw/fake-rtc.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/hw/fsi-master.c b/hw/fsi-master.c
index 87d1b5fed5ea..410542a19982 100644
--- a/hw/fsi-master.c
+++ b/hw/fsi-master.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/hw/fsp/fsp-attn.c b/hw/fsp/fsp-attn.c
index 2c0260cdeee8..e8c9a3397bc8 100644
--- a/hw/fsp/fsp-attn.c
+++ b/hw/fsp/fsp-attn.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * FSP ATTentioN support
  *
diff --git a/hw/fsp/fsp-chiptod.c b/hw/fsp/fsp-chiptod.c
index fef98e0750e4..e4ede3c1c9c2 100644
--- a/hw/fsp/fsp-chiptod.c
+++ b/hw/fsp/fsp-chiptod.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * On some chiptod errors, ask the FSP for a new topology
  *
diff --git a/hw/fsp/fsp-codeupdate.c b/hw/fsp/fsp-codeupdate.c
index 67732a739ed4..67d4c459609d 100644
--- a/hw/fsp/fsp-codeupdate.c
+++ b/hw/fsp/fsp-codeupdate.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Firmware code update for FSP systems
  *
diff --git a/hw/fsp/fsp-codeupdate.h b/hw/fsp/fsp-codeupdate.h
index 237043c8e347..7a088dc38c97 100644
--- a/hw/fsp/fsp-codeupdate.h
+++ b/hw/fsp/fsp-codeupdate.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2015 IBM Corp. */
 
 #ifndef __CODEUPDATE_H
diff --git a/hw/fsp/fsp-console.c b/hw/fsp/fsp-console.c
index 42fb98806d52..0fb5d2d3df49 100644
--- a/hw/fsp/fsp-console.c
+++ b/hw/fsp/fsp-console.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Flexible Service Processor (FSP) serial console handling code
  *
diff --git a/hw/fsp/fsp-diag.c b/hw/fsp/fsp-diag.c
index 0ee8975a8a2a..f0eed8070680 100644
--- a/hw/fsp/fsp-diag.c
+++ b/hw/fsp/fsp-diag.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Code for handling FSP_MCLASS_DIAG messages (cmd 0xee)
  * Receiving a high level ack timeout is likely indicative of a firmware bug
diff --git a/hw/fsp/fsp-dpo.c b/hw/fsp/fsp-dpo.c
index 0796d9ae935b..db59bb4aed7c 100644
--- a/hw/fsp/fsp-dpo.c
+++ b/hw/fsp/fsp-dpo.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * FSP DPO (Delayed Power Off) event support
  *
diff --git a/hw/fsp/fsp-dump.c b/hw/fsp/fsp-dump.c
index 37efa9d5bf97..992cd004a4ed 100644
--- a/hw/fsp/fsp-dump.c
+++ b/hw/fsp/fsp-dump.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Dump support:
  *  We get dump notification from different sources:
diff --git a/hw/fsp/fsp-elog-read.c b/hw/fsp/fsp-elog-read.c
index 5b373aa809fd..42c515c9f0d1 100644
--- a/hw/fsp/fsp-elog-read.c
+++ b/hw/fsp/fsp-elog-read.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * This code will enable retrieving of error log from FSP -> Sapphire in
  * sequence.
diff --git a/hw/fsp/fsp-elog-write.c b/hw/fsp/fsp-elog-write.c
index 6aa0c5909273..9babf603fbff 100644
--- a/hw/fsp/fsp-elog-write.c
+++ b/hw/fsp/fsp-elog-write.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * This code will enable generation and pushing of error log from Sapphire
  * to FSP.
diff --git a/hw/fsp/fsp-epow.c b/hw/fsp/fsp-epow.c
index bac1d3df7d12..8ecdb125c241 100644
--- a/hw/fsp/fsp-epow.c
+++ b/hw/fsp/fsp-epow.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * FSP Environmental and Power Warnings (EPOW) support
  *
diff --git a/hw/fsp/fsp-epow.h b/hw/fsp/fsp-epow.h
index 6a01de04d85b..bc1df258eeac 100644
--- a/hw/fsp/fsp-epow.h
+++ b/hw/fsp/fsp-epow.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Handle FSP EPOW event notifications
  *
diff --git a/hw/fsp/fsp-ipmi.c b/hw/fsp/fsp-ipmi.c
index a04d9aa2c9e5..34a15b5cdf5b 100644
--- a/hw/fsp/fsp-ipmi.c
+++ b/hw/fsp/fsp-ipmi.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Conduit for IPMI messages to/from FSP
  *
diff --git a/hw/fsp/fsp-leds.c b/hw/fsp/fsp-leds.c
index 7d234a81c4e3..1b1f2f8fabc0 100644
--- a/hw/fsp/fsp-leds.c
+++ b/hw/fsp/fsp-leds.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * LED location code and indicator handling
  *
diff --git a/hw/fsp/fsp-mdst-table.c b/hw/fsp/fsp-mdst-table.c
index 98f667f96b23..4bc1269527ac 100644
--- a/hw/fsp/fsp-mdst-table.c
+++ b/hw/fsp/fsp-mdst-table.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Sapphire dump design:
  *   - During initialization we setup Memory Dump Source Table (MDST) table
diff --git a/hw/fsp/fsp-mem-err.c b/hw/fsp/fsp-mem-err.c
index ffafb96b9037..684abb75d127 100644
--- a/hw/fsp/fsp-mem-err.c
+++ b/hw/fsp/fsp-mem-err.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Sometimes some memory needs to go and sit in the naughty corner
  *
diff --git a/hw/fsp/fsp-nvram.c b/hw/fsp/fsp-nvram.c
index 159a956f0a06..71a764dd4d37 100644
--- a/hw/fsp/fsp-nvram.c
+++ b/hw/fsp/fsp-nvram.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Read/Write NVRAM from/to FSP
  *
diff --git a/hw/fsp/fsp-occ.c b/hw/fsp/fsp-occ.c
index d48c28f8adb5..e1d868476b22 100644
--- a/hw/fsp/fsp-occ.c
+++ b/hw/fsp/fsp-occ.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * FSP/OCC interactions
  *
diff --git a/hw/fsp/fsp-op-panel.c b/hw/fsp/fsp-op-panel.c
index 320da241fea8..762c6db74648 100644
--- a/hw/fsp/fsp-op-panel.c
+++ b/hw/fsp/fsp-op-panel.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Small LCD screen on the front of FSP machines
  *
diff --git a/hw/fsp/fsp-psi.c b/hw/fsp/fsp-psi.c
index 76feb0ba3a4b..df1279d40049 100644
--- a/hw/fsp/fsp-psi.c
+++ b/hw/fsp/fsp-psi.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #include <io.h>
diff --git a/hw/fsp/fsp-rtc.c b/hw/fsp/fsp-rtc.c
index 53838f87c51c..e59fb6dc221d 100644
--- a/hw/fsp/fsp-rtc.c
+++ b/hw/fsp/fsp-rtc.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Real Time Clock (RTC) attached to FSP
  *
diff --git a/hw/fsp/fsp-sensor.c b/hw/fsp/fsp-sensor.c
index 43c8ce40b6b4..0fe2bacdd190 100644
--- a/hw/fsp/fsp-sensor.c
+++ b/hw/fsp/fsp-sensor.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * This code will enable the 'powernv' to retrieve sensor related data from FSP
  * using SPCN passthru mailbox commands.
diff --git a/hw/fsp/fsp-surveillance.c b/hw/fsp/fsp-surveillance.c
index d774bea1e858..3b6e85adef62 100644
--- a/hw/fsp/fsp-surveillance.c
+++ b/hw/fsp/fsp-surveillance.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * We don't want to go on the cart!
  *
diff --git a/hw/fsp/fsp-sysparam.c b/hw/fsp/fsp-sysparam.c
index 09005ef8742d..0627b990decb 100644
--- a/hw/fsp/fsp-sysparam.c
+++ b/hw/fsp/fsp-sysparam.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * There's some system level parameters that aren't over IPMI or NVRAM
  * but that the FSP exposes through this interface.
diff --git a/hw/fsp/fsp.c b/hw/fsp/fsp.c
index 6fa6534f9e47..e5fd65a3f6b9 100644
--- a/hw/fsp/fsp.c
+++ b/hw/fsp/fsp.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Base FSP (Flexible Service Processor) Support
  *
diff --git a/hw/homer.c b/hw/homer.c
index 96a01fdbca01..c5dbd58e39ad 100644
--- a/hw/homer.c
+++ b/hw/homer.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/hw/imc.c b/hw/imc.c
index 46b93001a597..39d63f807424 100644
--- a/hw/imc.c
+++ b/hw/imc.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * In-Memory Counters (IMC)
  * Sometimes called IMA, but that's also a different thing.
diff --git a/hw/ipmi/Makefile.inc b/hw/ipmi/Makefile.inc
index 250dfc8b6ce1..c6b36a2b31ee 100644
--- a/hw/ipmi/Makefile.inc
+++ b/hw/ipmi/Makefile.inc
@@ -1,4 +1,4 @@
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 
 SUBDIRS += hw/ipmi
 
diff --git a/hw/ipmi/ipmi-attn.c b/hw/ipmi/ipmi-attn.c
index 03ea4f995321..4326e25f207a 100644
--- a/hw/ipmi/ipmi-attn.c
+++ b/hw/ipmi/ipmi-attn.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * When everything is terrible, tell the FSP as much as possible as to why
  *
diff --git a/hw/ipmi/ipmi-fru.c b/hw/ipmi/ipmi-fru.c
index c66f2e14c458..7bca17ff2af5 100644
--- a/hw/ipmi/ipmi-fru.c
+++ b/hw/ipmi/ipmi-fru.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Fill out firmware related FRUs (Field Replaceable Units)
  *
diff --git a/hw/ipmi/ipmi-info.c b/hw/ipmi/ipmi-info.c
index b078e19e093d..d93b59d7df6a 100644
--- a/hw/ipmi/ipmi-info.c
+++ b/hw/ipmi/ipmi-info.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Various bits of info retreived over IPMI
  *
diff --git a/hw/ipmi/ipmi-power.c b/hw/ipmi/ipmi-power.c
index 1ff9dda54339..8101a852452f 100644
--- a/hw/ipmi/ipmi-power.c
+++ b/hw/ipmi/ipmi-power.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Power as in electricity, not POWER as in POWER
  *
diff --git a/hw/ipmi/ipmi-rtc.c b/hw/ipmi/ipmi-rtc.c
index deb4addcbc6e..5424ddbed9e6 100644
--- a/hw/ipmi/ipmi-rtc.c
+++ b/hw/ipmi/ipmi-rtc.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Talk to a Real Time Clock (RTC) over IPMI
  *
diff --git a/hw/ipmi/ipmi-sel.c b/hw/ipmi/ipmi-sel.c
index 59f45f8bf1df..0f708279ee8b 100644
--- a/hw/ipmi/ipmi-sel.c
+++ b/hw/ipmi/ipmi-sel.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #define pr_fmt(fmt) "IPMI: " fmt
diff --git a/hw/ipmi/ipmi-sensor.c b/hw/ipmi/ipmi-sensor.c
index 68af5bd192c5..857b789e41f1 100644
--- a/hw/ipmi/ipmi-sensor.c
+++ b/hw/ipmi/ipmi-sensor.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #include <device.h>
diff --git a/hw/ipmi/test/run-fru.c b/hw/ipmi/test/run-fru.c
index 1951541ed520..fa79c98a1505 100644
--- a/hw/ipmi/test/run-fru.c
+++ b/hw/ipmi/test/run-fru.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #include <unistd.h>
diff --git a/hw/lpc-mbox.c b/hw/lpc-mbox.c
index 71fc2523f0c5..f5bb97ea45d6 100644
--- a/hw/lpc-mbox.c
+++ b/hw/lpc-mbox.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * LPC MBOX
  *
diff --git a/hw/lpc-port80h.c b/hw/lpc-port80h.c
index eb1378c8ad2b..611070ae3313 100644
--- a/hw/lpc-port80h.c
+++ b/hw/lpc-port80h.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * op_display() but over the 1 byte LPC port 80h just like an original IBM PC
  *
diff --git a/hw/lpc-rtc.c b/hw/lpc-rtc.c
index f560c8c9f6a9..379ba38635de 100644
--- a/hw/lpc-rtc.c
+++ b/hw/lpc-rtc.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Real Time Clock hanging off LPC
  *
diff --git a/hw/lpc-uart.c b/hw/lpc-uart.c
index feca229b6988..b4eda34555c3 100644
--- a/hw/lpc-uart.c
+++ b/hw/lpc-uart.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Serial port hanging off LPC
  *
diff --git a/hw/lpc.c b/hw/lpc.c
index 40abeda0a14b..9976cfe1f8c5 100644
--- a/hw/lpc.c
+++ b/hw/lpc.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Low Pin Count (LPC) Bus.
  *
diff --git a/hw/npu-hw-procedures.c b/hw/npu-hw-procedures.c
index 1c0cf1ae1479..91bbb0f15370 100644
--- a/hw/npu-hw-procedures.c
+++ b/hw/npu-hw-procedures.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * NPU (NVLink1, POWER8NVL) Hardware Procedures
  *
diff --git a/hw/npu-opal.c b/hw/npu-opal.c
index 91ecfc27a9c2..412ea460e88f 100644
--- a/hw/npu-opal.c
+++ b/hw/npu-opal.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2019 IBM Corp.
  */
diff --git a/hw/npu.c b/hw/npu.c
index b0c23f76d53d..71725d1cc287 100644
--- a/hw/npu.c
+++ b/hw/npu.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * NVLink1, supported by the NPU (POWER8)
  *
diff --git a/hw/npu2-common.c b/hw/npu2-common.c
index 6d5c35af6350..d26d0c947844 100644
--- a/hw/npu2-common.c
+++ b/hw/npu2-common.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/hw/npu2-hw-procedures.c b/hw/npu2-hw-procedures.c
index c1ae8f112874..d1c198b9765c 100644
--- a/hw/npu2-hw-procedures.c
+++ b/hw/npu2-hw-procedures.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * NPU2 (POWER9) Hardware Procedures
  *
diff --git a/hw/npu2-opencapi.c b/hw/npu2-opencapi.c
index 9a391bb01461..8cf136be4a61 100644
--- a/hw/npu2-opencapi.c
+++ b/hw/npu2-opencapi.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Support for OpenCAPI on POWER9 NPUs
  *
diff --git a/hw/npu2.c b/hw/npu2.c
index 29c998f60ae1..ac364307549b 100644
--- a/hw/npu2.c
+++ b/hw/npu2.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * NPU - NVlink and OpenCAPI
  *
diff --git a/hw/npu3-hw-procedures.c b/hw/npu3-hw-procedures.c
index 54f4b3576880..18573a4113c6 100644
--- a/hw/npu3-hw-procedures.c
+++ b/hw/npu3-hw-procedures.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2019 IBM Corp.
  */
diff --git a/hw/npu3-nvlink.c b/hw/npu3-nvlink.c
index 7e7a10e8abbb..722bc8468aab 100644
--- a/hw/npu3-nvlink.c
+++ b/hw/npu3-nvlink.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2019 IBM Corp.
  */
diff --git a/hw/npu3.c b/hw/npu3.c
index e49e9bef2a96..cdbb032d2df7 100644
--- a/hw/npu3.c
+++ b/hw/npu3.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2019 IBM Corp.
  */
diff --git a/hw/nx-842.c b/hw/nx-842.c
index fd6f74caa9d2..d8856c2a5fd0 100644
--- a/hw/nx-842.c
+++ b/hw/nx-842.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * NX unit 842 compression accellerator
  *
diff --git a/hw/nx-compress.c b/hw/nx-compress.c
index 84b5a597b638..b2302866bd63 100644
--- a/hw/nx-compress.c
+++ b/hw/nx-compress.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * NX has 842 and GZIP (P9) accellerators
  *
diff --git a/hw/nx-crypto.c b/hw/nx-crypto.c
index aa317de05c09..8b8ff5ee5bfc 100644
--- a/hw/nx-crypto.c
+++ b/hw/nx-crypto.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * NX Cryptographic accellerators
  *
diff --git a/hw/nx-gzip.c b/hw/nx-gzip.c
index a259a09d1ab6..9bc491e70e9b 100644
--- a/hw/nx-gzip.c
+++ b/hw/nx-gzip.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * NX GZIP (p9) accellerator support
  *
diff --git a/hw/nx-rng.c b/hw/nx-rng.c
index 24038c83ee10..274b33211ddf 100644
--- a/hw/nx-rng.c
+++ b/hw/nx-rng.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * NX Hardware Random Number Generator
  *
diff --git a/hw/nx.c b/hw/nx.c
index c36bdabad405..122048087b19 100644
--- a/hw/nx.c
+++ b/hw/nx.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * NX Accellerator unit support
  *
diff --git a/hw/occ-sensor.c b/hw/occ-sensor.c
index d06ca725bfbd..2c1a2853165a 100644
--- a/hw/occ-sensor.c
+++ b/hw/occ-sensor.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * OCC (On Chip Controller) exports a bunch of sensors
  *
diff --git a/hw/occ.c b/hw/occ.c
index f05437906c9c..a61d1a3ee190 100644
--- a/hw/occ.c
+++ b/hw/occ.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Interface with the On Chip Controller,
  * which enforces power and thermal management
diff --git a/hw/p8-i2c.c b/hw/p8-i2c.c
index 1b2806208613..db0c7df98317 100644
--- a/hw/p8-i2c.c
+++ b/hw/p8-i2c.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * P8 i2c master
  *
diff --git a/hw/phb3.c b/hw/phb3.c
index ee127c163266..de3b69203408 100644
--- a/hw/phb3.c
+++ b/hw/phb3.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * PHB3: PCI Host Bridge 3, in POWER8
  *
diff --git a/hw/phys-map.c b/hw/phys-map.c
index 9917da7cdf94..21e9280a745b 100644
--- a/hw/phys-map.c
+++ b/hw/phys-map.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Physical memory map
  *
diff --git a/hw/prd.c b/hw/prd.c
index db25985b8c1e..805743fdf96b 100644
--- a/hw/prd.c
+++ b/hw/prd.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * PRD: Processor Runtime Diagnostics
  *
diff --git a/hw/psi.c b/hw/psi.c
index a74c105ff0ec..da3b4dd7d04b 100644
--- a/hw/psi.c
+++ b/hw/psi.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Service Processor serial console handling code
  *
diff --git a/hw/sbe-p8.c b/hw/sbe-p8.c
index a26883ccf937..73fa5f1f22ac 100644
--- a/hw/sbe-p8.c
+++ b/hw/sbe-p8.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * POWER8 Self Boot Engine (SLW - SLeep/Winkle)
  *
diff --git a/hw/sbe-p9.c b/hw/sbe-p9.c
index 852d8f3f30c4..c12545ff19ea 100644
--- a/hw/sbe-p9.c
+++ b/hw/sbe-p9.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  *
  * P9 OPAL - SBE communication driver
diff --git a/hw/sfc-ctrl.c b/hw/sfc-ctrl.c
index f17b8de29b50..b975338ce179 100644
--- a/hw/sfc-ctrl.c
+++ b/hw/sfc-ctrl.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2014 IBM Corp. */
 
 #include <stdint.h>
diff --git a/hw/slw.c b/hw/slw.c
index bb88f0f109cb..c699dd1261a5 100644
--- a/hw/slw.c
+++ b/hw/slw.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Everything to do with deep power saving (stop) states
  * SLeep/Winkle, Handle ChipTOD chip & configure core timebases
diff --git a/hw/test/phys-map-test.c b/hw/test/phys-map-test.c
index cae7f916c61c..2aabdb826f23 100644
--- a/hw/test/phys-map-test.c
+++ b/hw/test/phys-map-test.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Physical memory map test
  *
diff --git a/hw/test/run-port80h.c b/hw/test/run-port80h.c
index 85e8d8721244..eecd69e6d3ad 100644
--- a/hw/test/run-port80h.c
+++ b/hw/test/run-port80h.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Test result of our LPC port 80h boot progress code
  *
diff --git a/hw/vas.c b/hw/vas.c
index 212da0ec12e0..aa3c7569debe 100644
--- a/hw/vas.c
+++ b/hw/vas.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/hw/xive.c b/hw/xive.c
index 76b41a9ee95f..1293d89caf50 100644
--- a/hw/xive.c
+++ b/hw/xive.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * XIVE - P9 interrupt controller
  *
diff --git a/hw/xscom.c b/hw/xscom.c
index 9b28422d2387..3364d37ce7db 100644
--- a/hw/xscom.c
+++ b/hw/xscom.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * XSCOM driver
  *
diff --git a/include/affinity.h b/include/affinity.h
index fe952bf602e5..88bd285fc857 100644
--- a/include/affinity.h
+++ b/include/affinity.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * All functions in charge of generating the associativity/affinity
  * properties in the device-tree
diff --git a/include/asm-utils.h b/include/asm-utils.h
index 2d26545e7215..b592efbacb71 100644
--- a/include/asm-utils.h
+++ b/include/asm-utils.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __ASM_UTILS_H
diff --git a/include/ast.h b/include/ast.h
index 2720ee176a08..5e932398a9b0 100644
--- a/include/ast.h
+++ b/include/ast.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __AST_H
diff --git a/include/bitmap.h b/include/bitmap.h
index ba31b01a71b1..fa3a57fe38f5 100644
--- a/include/bitmap.h
+++ b/include/bitmap.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2016-2017 IBM Corp. */
 
 #ifndef __BITMAP_H
diff --git a/include/bitutils.h b/include/bitutils.h
index b34ac11f5679..f6f21c283865 100644
--- a/include/bitutils.h
+++ b/include/bitutils.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2016 IBM Corp. */
 
 #ifndef __BITUTILS_H
diff --git a/include/bt.h b/include/bt.h
index f6655d96a1a5..dd2e7b65ac36 100644
--- a/include/bt.h
+++ b/include/bt.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2015 IBM Corp. */
 
 #ifndef __BT_H
diff --git a/include/buddy.h b/include/buddy.h
index a8414f5ea92c..5eaf18d6458f 100644
--- a/include/buddy.h
+++ b/include/buddy.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Simple power-of-two buddy allocation mechanism.
  *
diff --git a/include/capp.h b/include/capp.h
index b099a16e6cfc..28c12bdae83a 100644
--- a/include/capp.h
+++ b/include/capp.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __CAPP_H
diff --git a/include/cec.h b/include/cec.h
index 22da56348ad0..d51238f2cf90 100644
--- a/include/cec.h
+++ b/include/cec.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2015 IBM Corp. */
 
 #ifndef __CEC_H
diff --git a/include/centaur.h b/include/centaur.h
index 9b60a21e4c05..9089705e56f1 100644
--- a/include/centaur.h
+++ b/include/centaur.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2016 IBM Corp. */
 
 #ifndef __CENTAUR_H
diff --git a/include/chip.h b/include/chip.h
index 9bddd38e5258..11cd5437afe7 100644
--- a/include/chip.h
+++ b/include/chip.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __CHIP_H
diff --git a/include/chiptod.h b/include/chiptod.h
index 85a23df4b7fe..50b6ab9b8df0 100644
--- a/include/chiptod.h
+++ b/include/chiptod.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * The ChipTOD is the HW facility that maintains a synchronized
  * time base across the fabric.
diff --git a/include/cmpxchg.h b/include/cmpxchg.h
index 3541a41f4eb0..0304e9134dd2 100644
--- a/include/cmpxchg.h
+++ b/include/cmpxchg.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017 IBM Corp. */
 
 #ifndef __CMPXCHG_H
diff --git a/include/compiler.h b/include/compiler.h
index 7d6dda86c1fa..a9ccfae1ce0d 100644
--- a/include/compiler.h
+++ b/include/compiler.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __COMPILER_H
diff --git a/include/config.h b/include/config.h
index d7a64b712e5d..cb88edbc760a 100644
--- a/include/config.h
+++ b/include/config.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __CONFIG_H
diff --git a/include/console.h b/include/console.h
index 26602b7ac941..8c9f128b1853 100644
--- a/include/console.h
+++ b/include/console.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #ifndef __CONSOLE_H
diff --git a/include/debug_descriptor.h b/include/debug_descriptor.h
index 774c3607d2d9..0cb780a6bdce 100644
--- a/include/debug_descriptor.h
+++ b/include/debug_descriptor.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __DEBUG_DESCRIPTOR_H
diff --git a/include/device.h b/include/device.h
index 25325ec0795e..527fdcac02b9 100644
--- a/include/device.h
+++ b/include/device.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #ifndef __DEVICE_H
diff --git a/include/dio-p9.h b/include/dio-p9.h
index 06563bf80f1a..957322f1b75c 100644
--- a/include/dio-p9.h
+++ b/include/dio-p9.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2019 IBM Corp. */
 
 #ifndef __DIO_H
diff --git a/include/direct-controls.h b/include/direct-controls.h
index 8c7b3569bdd8..8e3809bff682 100644
--- a/include/direct-controls.h
+++ b/include/direct-controls.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017 IBM Corp. */
 
 #ifndef __DIRECT_CONTROLS_H
diff --git a/include/dts.h b/include/dts.h
index 2b54054e4788..30ba239b48b4 100644
--- a/include/dts.h
+++ b/include/dts.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #ifndef __DTS_H
diff --git a/include/elf-abi.h b/include/elf-abi.h
index 827f2af19e54..29c757642668 100644
--- a/include/elf-abi.h
+++ b/include/elf-abi.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017 IBM Corp. */
 
 #ifndef __ELF_ABI_H
diff --git a/include/errorlog.h b/include/errorlog.h
index 2d93bf760c73..5438f806d844 100644
--- a/include/errorlog.h
+++ b/include/errorlog.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #ifndef __ERRORLOG_H
diff --git a/include/fsp-attn.h b/include/fsp-attn.h
index 4399ead35569..63039074e291 100644
--- a/include/fsp-attn.h
+++ b/include/fsp-attn.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2015 IBM Corp. */
 
 #ifndef __FSP_ATTN_H
diff --git a/include/fsp-elog.h b/include/fsp-elog.h
index f24251df6ab4..470e6fe334be 100644
--- a/include/fsp-elog.h
+++ b/include/fsp-elog.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2016 IBM Corp. */
 
 #include <opal.h>
diff --git a/include/fsp-leds.h b/include/fsp-leds.h
index 57b3d1f856ea..54d2eaaa9178 100644
--- a/include/fsp-leds.h
+++ b/include/fsp-leds.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * SPCN based LED location code and other information
  *
diff --git a/include/fsp-mdst-table.h b/include/fsp-mdst-table.h
index 7f0ce14678df..e9f9b996125a 100644
--- a/include/fsp-mdst-table.h
+++ b/include/fsp-mdst-table.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2015 IBM Corp. */
 
 #ifndef __FSPMDST_H
diff --git a/include/fsp-sysparam.h b/include/fsp-sysparam.h
index b107f184214d..b1182f7bcdb4 100644
--- a/include/fsp-sysparam.h
+++ b/include/fsp-sysparam.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #ifndef __FSP_SYSPARAM_H
diff --git a/include/fsp.h b/include/fsp.h
index b4c17598ed8c..aec971833cd8 100644
--- a/include/fsp.h
+++ b/include/fsp.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * IBM System P FSP (Flexible Service Processor)
  *
diff --git a/include/hiomap.h b/include/hiomap.h
index 3b3f7a9b621d..bf09aea71e62 100644
--- a/include/hiomap.h
+++ b/include/hiomap.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2018 IBM Corp. */
 
 #ifndef __HIOMAP_H
diff --git a/include/hostservices.h b/include/hostservices.h
index 205de84670e3..279591b5e8d8 100644
--- a/include/hostservices.h
+++ b/include/hostservices.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __HOSTSERVICES_H
diff --git a/include/i2c.h b/include/i2c.h
index e68d499bf5d3..c4ad805d4451 100644
--- a/include/i2c.h
+++ b/include/i2c.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __I2C_H
diff --git a/include/interrupts.h b/include/interrupts.h
index d1ee5c4c112b..9b4231a78bf3 100644
--- a/include/interrupts.h
+++ b/include/interrupts.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __INTERRUPTS_H
diff --git a/include/inttypes.h b/include/inttypes.h
index 57bd732ab997..984c1f6115d2 100644
--- a/include/inttypes.h
+++ b/include/inttypes.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* This file exists because a bunch of files are built as part of
  * unit tests as well as skiboot and inttypes.h is part of libc rather
  * than gcc, so to get the magic to work when we don't have libc sitting
diff --git a/include/io.h b/include/io.h
index c6203a274b9c..29311668ffc5 100644
--- a/include/io.h
+++ b/include/io.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #ifndef __IO_H
diff --git a/include/ipmi.h b/include/ipmi.h
index 4f513474546a..84acb887dc49 100644
--- a/include/ipmi.h
+++ b/include/ipmi.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __IPMI_H
diff --git a/include/lock.h b/include/lock.h
index 04bc9f91b537..244adeaa49b2 100644
--- a/include/lock.h
+++ b/include/lock.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __LOCK_H
diff --git a/include/lpc-mbox.h b/include/lpc-mbox.h
index 37ec3417b07c..5883cc3059d2 100644
--- a/include/lpc-mbox.h
+++ b/include/lpc-mbox.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017-2018 IBM Corp. */
 
 #ifndef __LPC_MBOX_H
diff --git a/include/lpc.h b/include/lpc.h
index 58cfe6bb1592..b641aa4e6820 100644
--- a/include/lpc.h
+++ b/include/lpc.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __LPC_H
diff --git a/include/mem-map.h b/include/mem-map.h
index 4d06b64b9396..200bd6a243a5 100644
--- a/include/mem-map.h
+++ b/include/mem-map.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __MEM_MAP_H
diff --git a/include/mem_region-malloc.h b/include/mem_region-malloc.h
index 4350c564633b..271311b2c7c4 100644
--- a/include/mem_region-malloc.h
+++ b/include/mem_region-malloc.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __MEM_REGION_MALLOC_H
diff --git a/include/mem_region.h b/include/mem_region.h
index 65eda4222e2c..3e3818a66181 100644
--- a/include/mem_region.h
+++ b/include/mem_region.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #ifndef __MEMORY_REGION
diff --git a/include/npu-regs.h b/include/npu-regs.h
index 87d44999a1db..38d53c9fedc6 100644
--- a/include/npu-regs.h
+++ b/include/npu-regs.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #ifndef __NPU_REGS_H
diff --git a/include/npu.h b/include/npu.h
index ed905e2486d3..50cc9c9fcd15 100644
--- a/include/npu.h
+++ b/include/npu.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #ifndef __NPU_H
diff --git a/include/npu2-regs.h b/include/npu2-regs.h
index ce9fdbbda1c7..22f58a6af500 100644
--- a/include/npu2-regs.h
+++ b/include/npu2-regs.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __NPU2_REGS_H
diff --git a/include/npu2.h b/include/npu2.h
index 92b58988062b..2d4ed650c273 100644
--- a/include/npu2.h
+++ b/include/npu2.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __NPU2_H
diff --git a/include/nvram.h b/include/nvram.h
index b0568294b2c1..eaaa443e0e6f 100644
--- a/include/nvram.h
+++ b/include/nvram.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __NVRAM_H
diff --git a/include/nx.h b/include/nx.h
index 675d17ace61c..5a4fd8f7aca0 100644
--- a/include/nx.h
+++ b/include/nx.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __NX_H
diff --git a/include/occ.h b/include/occ.h
index 0030af5ae32a..dbd75b753d81 100644
--- a/include/occ.h
+++ b/include/occ.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017-2019 IBM Corp. */
 
 #include <chip.h>
diff --git a/include/op-panel.h b/include/op-panel.h
index 04c52baed8dd..7a4451285483 100644
--- a/include/op-panel.h
+++ b/include/op-panel.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __OP_PANEL_H
diff --git a/include/opal-api.h b/include/opal-api.h
index 782666dd5321..797a261672d9 100644
--- a/include/opal-api.h
+++ b/include/opal-api.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __OPAL_API_H
diff --git a/include/opal-internal.h b/include/opal-internal.h
index fd2187f09df1..25b1434cddba 100644
--- a/include/opal-internal.h
+++ b/include/opal-internal.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Internal header for OPAL API related things in skiboot
  *
diff --git a/include/opal-msg.h b/include/opal-msg.h
index 036183343b0c..47f8b3be34f6 100644
--- a/include/opal-msg.h
+++ b/include/opal-msg.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __OPALMSG_H
diff --git a/include/opal.h b/include/opal.h
index a7026553e394..6a19229d7b65 100644
--- a/include/opal.h
+++ b/include/opal.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2015 IBM Corp. */
 
 #ifndef __OPAL_H
diff --git a/include/pci-cfg.h b/include/pci-cfg.h
index 0830723d5055..72614fda15d6 100644
--- a/include/pci-cfg.h
+++ b/include/pci-cfg.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * PCI Configuration space definitions
  *
diff --git a/include/pci-quirk.h b/include/pci-quirk.h
index 784970c18df8..8ba13819c8da 100644
--- a/include/pci-quirk.h
+++ b/include/pci-quirk.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2016-2017 IBM Corp. */
 
 #ifndef __PCI_QUIRK_H
diff --git a/include/pci-slot.h b/include/pci-slot.h
index 6e7dc1c06970..5eabd5af5abc 100644
--- a/include/pci-slot.h
+++ b/include/pci-slot.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #ifndef __PCI_SLOT_H
diff --git a/include/pci-virt.h b/include/pci-virt.h
index 508baf8092fd..137f67d8a881 100644
--- a/include/pci-virt.h
+++ b/include/pci-virt.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2016 IBM Corp. */
 
 #ifndef __PCI_VIRT_H
diff --git a/include/pci.h b/include/pci.h
index b840409062b6..fdd1ac18df8b 100644
--- a/include/pci.h
+++ b/include/pci.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __PCI_H
diff --git a/include/pel.h b/include/pel.h
index 19361d35e779..8e8742b781fa 100644
--- a/include/pel.h
+++ b/include/pel.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2014 IBM Corp. */
 
 #ifndef __PEL_H
diff --git a/include/phb3-capp.h b/include/phb3-capp.h
index d2e814d99368..d228160e804c 100644
--- a/include/phb3-capp.h
+++ b/include/phb3-capp.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #ifndef __PHB3_CAPP_H
diff --git a/include/phb3-regs.h b/include/phb3-regs.h
index d79af7e15053..a1f28180c97f 100644
--- a/include/phb3-regs.h
+++ b/include/phb3-regs.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2016 IBM Corp. */
 
 #ifndef __PHB3_REGS_H
diff --git a/include/phb3.h b/include/phb3.h
index 249a8b23a21a..c8a605f11ec6 100644
--- a/include/phb3.h
+++ b/include/phb3.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #ifndef __PHB3_H
diff --git a/include/phb4-capp.h b/include/phb4-capp.h
index bea29fd1a19a..789b6e88e239 100644
--- a/include/phb4-capp.h
+++ b/include/phb4-capp.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #ifndef __PHB4_CAPP_H
diff --git a/include/phb4-regs.h b/include/phb4-regs.h
index d2fc357bc656..d3b0aac4256e 100644
--- a/include/phb4-regs.h
+++ b/include/phb4-regs.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __PHB4_REGS_H
diff --git a/include/phys-map.h b/include/phys-map.h
index c7bc596c9677..ae7a4aa55df7 100644
--- a/include/phys-map.h
+++ b/include/phys-map.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017-2019 IBM Corp. */
 
 #ifndef __PHYS_MAP_H
diff --git a/include/pool.h b/include/pool.h
index 41081ca75c72..967e463c51b7 100644
--- a/include/pool.h
+++ b/include/pool.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2014 IBM Corp. */
 
 #ifndef __POOL_H
diff --git a/include/powercap.h b/include/powercap.h
index a45e63eac699..3340ab7e1184 100644
--- a/include/powercap.h
+++ b/include/powercap.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017 IBM Corp. */
 
 #ifndef __POWERCAP_H
diff --git a/include/prd-fw-msg.h b/include/prd-fw-msg.h
index 9c9cbdfbab1b..d0e5385ffc0c 100644
--- a/include/prd-fw-msg.h
+++ b/include/prd-fw-msg.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017-2019 IBM Corp. */
 
 #ifndef __PRD_FW_MSG_H
diff --git a/include/processor.h b/include/processor.h
index 352fd1ec43ec..b4cf6edf979c 100644
--- a/include/processor.h
+++ b/include/processor.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __PROCESSOR_H
diff --git a/include/psi.h b/include/psi.h
index 9836e354a31b..20c283c5c3ed 100644
--- a/include/psi.h
+++ b/include/psi.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * IBM System P PSI (Processor Service Interface)
  *
diff --git a/include/psr.h b/include/psr.h
index 69979434af6b..c057a99f9488 100644
--- a/include/psr.h
+++ b/include/psr.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017 IBM Corp. */
 
 #ifndef __PSR_H
diff --git a/include/rtc.h b/include/rtc.h
index 1887003db62a..b6658248e29f 100644
--- a/include/rtc.h
+++ b/include/rtc.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2014 IBM Corp. */
 
 #ifndef __RTC_H
diff --git a/include/sbe-p8.h b/include/sbe-p8.h
index 50a7a55965ad..66f702514884 100644
--- a/include/sbe-p8.h
+++ b/include/sbe-p8.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #ifndef __SBE_P8_H
diff --git a/include/sbe-p9.h b/include/sbe-p9.h
index 779c7995db8f..2ab16d7eedb0 100644
--- a/include/sbe-p9.h
+++ b/include/sbe-p9.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017-2019 IBM Corp. */
 
 #ifndef __SBE_P9_H
diff --git a/include/sensor.h b/include/sensor.h
index a79e1de8a615..905bd501d353 100644
--- a/include/sensor.h
+++ b/include/sensor.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #ifndef __SENSOR_H
diff --git a/include/sfc-ctrl.h b/include/sfc-ctrl.h
index 72da8b724db3..d3889bbd08ac 100644
--- a/include/sfc-ctrl.h
+++ b/include/sfc-ctrl.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2014 IBM Corp. */
 
 #ifndef SFC_CTRL_H
diff --git a/include/skiboot-valgrind.h b/include/skiboot-valgrind.h
index 5b3a27fe2d29..c9cd7cb356e2 100644
--- a/include/skiboot-valgrind.h
+++ b/include/skiboot-valgrind.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017 IBM Corp. */
 
 #ifndef __SKIBOOT_VALGRIND_H
diff --git a/include/spcn.h b/include/spcn.h
index bec71341ee1b..2cc3174ad1ce 100644
--- a/include/spcn.h
+++ b/include/spcn.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2016 IBM Corp. */
 
 #ifndef __SPCN_H
diff --git a/include/stack.h b/include/stack.h
index 9a1d18b04954..3d5169d064f8 100644
--- a/include/stack.h
+++ b/include/stack.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __STACKFRAME_H
diff --git a/include/time-utils.h b/include/time-utils.h
index 3fdb03c0b5a5..0e9f837d4788 100644
--- a/include/time-utils.h
+++ b/include/time-utils.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2015 IBM Corp. */
 
 #ifndef __TIME_UTILS_H
diff --git a/include/timebase.h b/include/timebase.h
index d7469c3df082..07967e2b26f5 100644
--- a/include/timebase.h
+++ b/include/timebase.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Timebase helpers.
  *
diff --git a/include/timer.h b/include/timer.h
index 59f963d24da8..d19053277e2d 100644
--- a/include/timer.h
+++ b/include/timer.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2014-2015 IBM Corp. */
 
 #ifndef __TIMER_H
diff --git a/include/trace.h b/include/trace.h
index 43c6a9df0fb6..04c8440b9e0c 100644
--- a/include/trace.h
+++ b/include/trace.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __TRACE_H
diff --git a/include/trace_types.h b/include/trace_types.h
index 54228b92d38d..5942a1fa46ed 100644
--- a/include/trace_types.h
+++ b/include/trace_types.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * API for kernel to read trace buffer.
  *
diff --git a/include/types.h b/include/types.h
index a7a45f5cb4ec..5ed4f5b24351 100644
--- a/include/types.h
+++ b/include/types.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2015 IBM Corp. */
 
 #ifndef __TYPES_H
diff --git a/include/vas.h b/include/vas.h
index 9f761be46ba3..1c06e5606e84 100644
--- a/include/vas.h
+++ b/include/vas.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #ifndef __VAS_H
diff --git a/include/vpd.h b/include/vpd.h
index ec1ec95869bf..cdfc73a45e87 100644
--- a/include/vpd.h
+++ b/include/vpd.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __VPD_H
diff --git a/include/xive.h b/include/xive.h
index 4100e7127784..d27f2b770042 100644
--- a/include/xive.h
+++ b/include/xive.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2016-2018 IBM Corp. */
 
 #ifndef __XIVE_H__
diff --git a/include/xscom-p8-regs.h b/include/xscom-p8-regs.h
index cd4e31f76a00..2192b6e71eb1 100644
--- a/include/xscom-p8-regs.h
+++ b/include/xscom-p8-regs.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2013-2019 IBM Corp.
  */
diff --git a/include/xscom-p9-regs.h b/include/xscom-p9-regs.h
index 15bdc6f66dad..a2a17d0fc9e2 100644
--- a/include/xscom-p9-regs.h
+++ b/include/xscom-p9-regs.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2016-2019 IBM Corp.
  */
diff --git a/include/xscom.h b/include/xscom.h
index 1f89ba9bbb4e..414baf3d9a53 100644
--- a/include/xscom.h
+++ b/include/xscom.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __XSCOM_H
diff --git a/libflash/blocklevel.c b/libflash/blocklevel.c
index 614711210577..b7bfcdb2a87b 100644
--- a/libflash/blocklevel.c
+++ b/libflash/blocklevel.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #include <stdlib.h>
diff --git a/libflash/blocklevel.h b/libflash/blocklevel.h
index 8a0e855b6c47..a2da0ecd6da6 100644
--- a/libflash/blocklevel.h
+++ b/libflash/blocklevel.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #ifndef __LIBFLASH_BLOCKLEVEL_H
diff --git a/libflash/ecc.c b/libflash/ecc.c
index 0b85fb3eafd3..3a1f0b32daa9 100644
--- a/libflash/ecc.c
+++ b/libflash/ecc.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * This is based on the hostboot ecc code
  *
diff --git a/libflash/ecc.h b/libflash/ecc.h
index 608d50008cbd..0806e81d6598 100644
--- a/libflash/ecc.h
+++ b/libflash/ecc.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * This is based on the hostboot ecc code
  *
diff --git a/libflash/errors.h b/libflash/errors.h
index c800ada07321..e67a759de2d4 100644
--- a/libflash/errors.h
+++ b/libflash/errors.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #ifndef __LIBFLASH_ERRORS_H
diff --git a/libflash/ffs.h b/libflash/ffs.h
index f9f283305cf1..441d8464652b 100644
--- a/libflash/ffs.h
+++ b/libflash/ffs.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * FSP Flash Structure
  *
diff --git a/libflash/file.c b/libflash/file.c
index b395fc0193c1..fbaf79243c19 100644
--- a/libflash/file.c
+++ b/libflash/file.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #define _GNU_SOURCE
diff --git a/libflash/file.h b/libflash/file.h
index af055ca51cab..25cf73bf4696 100644
--- a/libflash/file.h
+++ b/libflash/file.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2016 IBM Corp. */
 
 #ifndef __LIBFLASH_FILE_H
diff --git a/libflash/ipmi-hiomap.c b/libflash/ipmi-hiomap.c
index 5f720ef050b2..41c29531917c 100644
--- a/libflash/ipmi-hiomap.c
+++ b/libflash/ipmi-hiomap.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2018-2019 IBM Corp. */
 
 #define pr_fmt(fmt) "HIOMAP: " fmt
diff --git a/libflash/ipmi-hiomap.h b/libflash/ipmi-hiomap.h
index b517c1f61fe0..bb9c41c70300 100644
--- a/libflash/ipmi-hiomap.h
+++ b/libflash/ipmi-hiomap.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2018-2019 IBM Corp. */
 
 #ifndef __LIBFLASH_IPMI_HIOMAP_H
diff --git a/libflash/libffs.h b/libflash/libffs.h
index fa9359c624ee..a81f24c992c4 100644
--- a/libflash/libffs.h
+++ b/libflash/libffs.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #ifndef __LIBFFS_H
diff --git a/libflash/libflash-priv.h b/libflash/libflash-priv.h
index 9a8afc9a0b25..b3d10d4e8423 100644
--- a/libflash/libflash-priv.h
+++ b/libflash/libflash-priv.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2015 IBM Corp. */
 
 #ifndef __LIBFLASH_PRIV_H
diff --git a/libflash/libflash.c b/libflash/libflash.c
index 4d5696976fc5..70c8a597e60b 100644
--- a/libflash/libflash.c
+++ b/libflash/libflash.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #include <stdlib.h>
diff --git a/libflash/libflash.h b/libflash/libflash.h
index 31be920ff655..9e83d41981ac 100644
--- a/libflash/libflash.h
+++ b/libflash/libflash.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #ifndef __LIBFLASH_H
diff --git a/libflash/mbox-flash.c b/libflash/mbox-flash.c
index 5cede3c710ac..af03820ac0a1 100644
--- a/libflash/mbox-flash.c
+++ b/libflash/mbox-flash.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017-2018 IBM Corp. */
 
 #define pr_fmt(fmt) "MBOX-FLASH: " fmt
diff --git a/libflash/mbox-flash.h b/libflash/mbox-flash.h
index 7a8201c3fce6..33fbc500407d 100644
--- a/libflash/mbox-flash.h
+++ b/libflash/mbox-flash.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017 IBM Corp. */
 
 #ifndef __LIBFLASH_MBOX_FLASH_H
diff --git a/libflash/test/mbox-server.c b/libflash/test/mbox-server.c
index 69499dc8e208..6124b30c7bb8 100644
--- a/libflash/test/mbox-server.c
+++ b/libflash/test/mbox-server.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017 IBM Corp. */
 
 #include <stdio.h>
diff --git a/libflash/test/mbox-server.h b/libflash/test/mbox-server.h
index b573f3411928..e7aec817f00e 100644
--- a/libflash/test/mbox-server.h
+++ b/libflash/test/mbox-server.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017 IBM Corp. */
 
 #include <stdint.h>
diff --git a/libflash/test/stubs.c b/libflash/test/stubs.c
index 30ccf4cc740c..09f004359a64 100644
--- a/libflash/test/stubs.c
+++ b/libflash/test/stubs.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Stubs for libflash test
  *
diff --git a/libflash/test/stubs.h b/libflash/test/stubs.h
index ec408bc43829..3f890c93009d 100644
--- a/libflash/test/stubs.h
+++ b/libflash/test/stubs.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #include <lock.h>
diff --git a/libflash/test/test-blocklevel.c b/libflash/test/test-blocklevel.c
index 4f5adc1f1d5f..7a4fe19acfc3 100644
--- a/libflash/test/test-blocklevel.c
+++ b/libflash/test/test-blocklevel.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #include <stdio.h>
diff --git a/libflash/test/test-ecc.c b/libflash/test/test-ecc.c
index af5f42f73291..b9489f8ec97f 100644
--- a/libflash/test/test-ecc.c
+++ b/libflash/test/test-ecc.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #include <stdio.h>
diff --git a/libflash/test/test-flash.c b/libflash/test/test-flash.c
index 9cc84990d3a3..3304195f8780 100644
--- a/libflash/test/test-flash.c
+++ b/libflash/test/test-flash.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #include <stdio.h>
diff --git a/libflash/test/test-ipmi-hiomap.c b/libflash/test/test-ipmi-hiomap.c
index 30dbe2493689..fada56596414 100644
--- a/libflash/test/test-ipmi-hiomap.c
+++ b/libflash/test/test-ipmi-hiomap.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2018-2019 IBM Corp. */
 
 #include <assert.h>
diff --git a/libflash/test/test-mbox.c b/libflash/test/test-mbox.c
index 6e30b9e91895..260a3c7d4d20 100644
--- a/libflash/test/test-mbox.c
+++ b/libflash/test/test-mbox.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017-2018 IBM Corp. */
 
 #include <stdio.h>
diff --git a/libstb/container-utils.c b/libstb/container-utils.c
index 919245aa520e..625921e01b18 100644
--- a/libstb/container-utils.c
+++ b/libstb/container-utils.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017 IBM Corp. */
 
 #include "config.h"
diff --git a/libstb/container-utils.h b/libstb/container-utils.h
index d972f4010d1b..bb7314548f2c 100644
--- a/libstb/container-utils.h
+++ b/libstb/container-utils.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017 IBM Corp. */
 
 #ifndef _CREATE_CONTAINER_UTILS_H
diff --git a/libstb/container.c b/libstb/container.c
index 58fd18f9ea06..eca54cf6365e 100644
--- a/libstb/container.c
+++ b/libstb/container.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2016 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/libstb/container.h b/libstb/container.h
index c21943f33481..f0b54fc01f85 100644
--- a/libstb/container.h
+++ b/libstb/container.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #ifndef __STB_CONTAINER_H
diff --git a/libstb/create-container.c b/libstb/create-container.c
index 689a5d591142..2ca9a2305c57 100644
--- a/libstb/create-container.c
+++ b/libstb/create-container.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017-2018 IBM Corp. */
 
 #include <config.h>
diff --git a/libstb/cvc.c b/libstb/cvc.c
index dca4ac857019..feba228a073c 100644
--- a/libstb/cvc.c
+++ b/libstb/cvc.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #ifndef pr_fmt
diff --git a/libstb/cvc.h b/libstb/cvc.h
index 6d8546fb266c..db34f2a89316 100644
--- a/libstb/cvc.h
+++ b/libstb/cvc.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #ifndef __CVC_H
diff --git a/libstb/drivers/tpm_i2c_interface.c b/libstb/drivers/tpm_i2c_interface.c
index 7b45841d53ca..84cbab5bbf6e 100644
--- a/libstb/drivers/tpm_i2c_interface.c
+++ b/libstb/drivers/tpm_i2c_interface.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/libstb/drivers/tpm_i2c_interface.h b/libstb/drivers/tpm_i2c_interface.h
index 401cb085f516..514d8f8350de 100644
--- a/libstb/drivers/tpm_i2c_interface.h
+++ b/libstb/drivers/tpm_i2c_interface.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #ifndef __TPM_I2C_H
diff --git a/libstb/drivers/tpm_i2c_nuvoton.c b/libstb/drivers/tpm_i2c_nuvoton.c
index ef32b79fd6f7..722a172ff931 100644
--- a/libstb/drivers/tpm_i2c_nuvoton.c
+++ b/libstb/drivers/tpm_i2c_nuvoton.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #include <timebase.h>
diff --git a/libstb/drivers/tpm_i2c_nuvoton.h b/libstb/drivers/tpm_i2c_nuvoton.h
index 2851f05c3a3b..53cf1e1da54c 100644
--- a/libstb/drivers/tpm_i2c_nuvoton.h
+++ b/libstb/drivers/tpm_i2c_nuvoton.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2016 IBM Corp. */
 
 #ifndef __TPM_I2C_NUVOTON_H
diff --git a/libstb/print-container.c b/libstb/print-container.c
index b275715d2530..d2f2e3f25662 100644
--- a/libstb/print-container.c
+++ b/libstb/print-container.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017 IBM Corp. */
 
 #include <config.h>
diff --git a/libstb/secureboot.c b/libstb/secureboot.c
index bfc98f2aea26..c4430c43672c 100644
--- a/libstb/secureboot.c
+++ b/libstb/secureboot.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef pr_fmt
diff --git a/libstb/secureboot.h b/libstb/secureboot.h
index 426483ffc24f..0792dd5a45b9 100644
--- a/libstb/secureboot.h
+++ b/libstb/secureboot.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #ifndef __SECUREBOOT_H
diff --git a/libstb/status_codes.h b/libstb/status_codes.h
index 0f5e1a52f7a2..86ee9dd24ec6 100644
--- a/libstb/status_codes.h
+++ b/libstb/status_codes.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2016 IBM Corp. */
 
 #ifndef __STB_STATUS_CODES_H
diff --git a/libstb/test/run-stb-container.c b/libstb/test/run-stb-container.c
index 8da8e6f1754f..2f078759a4ab 100644
--- a/libstb/test/run-stb-container.c
+++ b/libstb/test/run-stb-container.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2016 IBM Corp. */
 
 #include <config.h>
diff --git a/libstb/tpm_chip.c b/libstb/tpm_chip.c
index 51ba1be19976..12ba47f58964 100644
--- a/libstb/tpm_chip.c
+++ b/libstb/tpm_chip.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #ifndef pr_fmt
diff --git a/libstb/tpm_chip.h b/libstb/tpm_chip.h
index dede420f66bc..b2459e4f775b 100644
--- a/libstb/tpm_chip.h
+++ b/libstb/tpm_chip.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2018 IBM Corp. */
 
 #ifndef __TPM_H
diff --git a/libstb/trustedboot.c b/libstb/trustedboot.c
index 3f977de10b43..413862e639b8 100644
--- a/libstb/trustedboot.c
+++ b/libstb/trustedboot.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef pr_fmt
diff --git a/libstb/trustedboot.h b/libstb/trustedboot.h
index 17478c153903..3b39ee35d72a 100644
--- a/libstb/trustedboot.h
+++ b/libstb/trustedboot.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2017 IBM Corp. */
 
 #ifndef __TRUSTEDBOOT_H
diff --git a/make_offsets.sh b/make_offsets.sh
index 0ce3473de184..1643f9db1607 100755
--- a/make_offsets.sh
+++ b/make_offsets.sh
@@ -1,5 +1,5 @@
 #!/bin/sh
-# SPDX-License-Identifier: Apache-2.0
+# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 # Copyright 2012-2019 IBM Corp
 
 cat <<EOF
diff --git a/platforms/astbmc/astbmc.h b/platforms/astbmc/astbmc.h
index b9f71fc2c502..1b29c84fd48c 100644
--- a/platforms/astbmc/astbmc.h
+++ b/platforms/astbmc/astbmc.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __ASTBMC_H
diff --git a/platforms/astbmc/common.c b/platforms/astbmc/common.c
index 85043f3b91e7..4dfa3b966a18 100644
--- a/platforms/astbmc/common.c
+++ b/platforms/astbmc/common.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/platforms/astbmc/firestone.c b/platforms/astbmc/firestone.c
index 5e30c25f746b..ae5603ebc73b 100644
--- a/platforms/astbmc/firestone.c
+++ b/platforms/astbmc/firestone.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/platforms/astbmc/habanero.c b/platforms/astbmc/habanero.c
index 0cec64fad94e..b98ff89606c9 100644
--- a/platforms/astbmc/habanero.c
+++ b/platforms/astbmc/habanero.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/platforms/astbmc/palmetto.c b/platforms/astbmc/palmetto.c
index 8cfd48ace779..546d51197d5d 100644
--- a/platforms/astbmc/palmetto.c
+++ b/platforms/astbmc/palmetto.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/platforms/astbmc/pnor.c b/platforms/astbmc/pnor.c
index ce0de07a0fc8..64f2249d189e 100644
--- a/platforms/astbmc/pnor.c
+++ b/platforms/astbmc/pnor.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/platforms/astbmc/slots.c b/platforms/astbmc/slots.c
index 2f8cf0cd0366..622483a15f8b 100644
--- a/platforms/astbmc/slots.c
+++ b/platforms/astbmc/slots.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2015-2018 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/platforms/astbmc/swift.c b/platforms/astbmc/swift.c
index ca612c395cc8..eccadc147a55 100644
--- a/platforms/astbmc/swift.c
+++ b/platforms/astbmc/swift.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Copyright 2019 IBM Corp.
  */
diff --git a/platforms/astbmc/witherspoon.c b/platforms/astbmc/witherspoon.c
index 8aaed975f049..9d6b9cb66456 100644
--- a/platforms/astbmc/witherspoon.c
+++ b/platforms/astbmc/witherspoon.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017-2019 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/platforms/astbmc/zaius.c b/platforms/astbmc/zaius.c
index ab3558887134..22d20fe96e26 100644
--- a/platforms/astbmc/zaius.c
+++ b/platforms/astbmc/zaius.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2017-2019 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/platforms/ibm-fsp/common.c b/platforms/ibm-fsp/common.c
index a0339ec254a0..bc389e97d2d2 100644
--- a/platforms/ibm-fsp/common.c
+++ b/platforms/ibm-fsp/common.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 
diff --git a/platforms/ibm-fsp/firenze-pci.c b/platforms/ibm-fsp/firenze-pci.c
index da496727adf4..308f5c995040 100644
--- a/platforms/ibm-fsp/firenze-pci.c
+++ b/platforms/ibm-fsp/firenze-pci.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #define pr_fmt(fmt)  "FIRENZE-PCI: " fmt
diff --git a/platforms/ibm-fsp/firenze.c b/platforms/ibm-fsp/firenze.c
index 269774501c6f..bb351cc3c2fd 100644
--- a/platforms/ibm-fsp/firenze.c
+++ b/platforms/ibm-fsp/firenze.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/platforms/ibm-fsp/fsp-vpd.c b/platforms/ibm-fsp/fsp-vpd.c
index 557779641f01..52d2c8255266 100644
--- a/platforms/ibm-fsp/fsp-vpd.c
+++ b/platforms/ibm-fsp/fsp-vpd.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/platforms/ibm-fsp/hostservices.c b/platforms/ibm-fsp/hostservices.c
index 3bdad4a5ea11..8cda48991d54 100644
--- a/platforms/ibm-fsp/hostservices.c
+++ b/platforms/ibm-fsp/hostservices.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #include <stdint.h>
diff --git a/platforms/ibm-fsp/ibm-fsp.h b/platforms/ibm-fsp/ibm-fsp.h
index b3418e692b59..2aa9731a73aa 100644
--- a/platforms/ibm-fsp/ibm-fsp.h
+++ b/platforms/ibm-fsp/ibm-fsp.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #ifndef __IBM_FSP_COMMON_H
diff --git a/platforms/ibm-fsp/lxvpd.c b/platforms/ibm-fsp/lxvpd.c
index 39c1cbfd5b72..092d7b5737a7 100644
--- a/platforms/ibm-fsp/lxvpd.c
+++ b/platforms/ibm-fsp/lxvpd.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #define pr_fmt(fmt) "LXVPD: " fmt
diff --git a/platforms/ibm-fsp/lxvpd.h b/platforms/ibm-fsp/lxvpd.h
index bc9daf55c1b6..6e845c7a4d36 100644
--- a/platforms/ibm-fsp/lxvpd.h
+++ b/platforms/ibm-fsp/lxvpd.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2016 IBM Corp. */
 
 #ifndef __LXVPD_H
diff --git a/platforms/ibm-fsp/zz.c b/platforms/ibm-fsp/zz.c
index 2bde315ca229..3c1a5a02156e 100644
--- a/platforms/ibm-fsp/zz.c
+++ b/platforms/ibm-fsp/zz.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2016-2019 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/platforms/mambo/console.c b/platforms/mambo/console.c
index 4a601faef247..6d5b20b56e60 100644
--- a/platforms/mambo/console.c
+++ b/platforms/mambo/console.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2016-2017 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/platforms/mambo/mambo.c b/platforms/mambo/mambo.c
index e523cd3ebb96..45e81098eba3 100644
--- a/platforms/mambo/mambo.c
+++ b/platforms/mambo/mambo.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2015-2017 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/platforms/mambo/mambo.h b/platforms/mambo/mambo.h
index 1bd527898dc0..0b3bb60c42b0 100644
--- a/platforms/mambo/mambo.h
+++ b/platforms/mambo/mambo.h
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2016 IBM Corp. */
 
 #ifndef __MAMBO_H__
diff --git a/platforms/qemu/qemu.c b/platforms/qemu/qemu.c
index 757c086d4a22..535d9503f8c6 100644
--- a/platforms/qemu/qemu.c
+++ b/platforms/qemu/qemu.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2013-2019 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/skiboot.lds.S b/skiboot.lds.S
index 477c06a5085c..bfc3f5cb6960 100644
--- a/skiboot.lds.S
+++ b/skiboot.lds.S
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Skiboot linker script
  *
diff --git a/test/dt_common.c b/test/dt_common.c
index 0551a4ace321..98032c4969e2 100644
--- a/test/dt_common.c
+++ b/test/dt_common.c
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /* Copyright 2015-2017 IBM Corp. */
 
 #include <skiboot.h>
diff --git a/test/hello_world/hello_kernel/hello_kernel.S b/test/hello_world/hello_kernel/hello_kernel.S
index 49fb7755fb7c..4f774c179e73 100644
--- a/test/hello_world/hello_kernel/hello_kernel.S
+++ b/test/hello_world/hello_kernel/hello_kernel.S
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * hello_kernel.S!
  *
diff --git a/test/sreset_world/sreset_kernel/sreset_kernel.S b/test/sreset_world/sreset_kernel/sreset_kernel.S
index 1e65d44a8fea..08960d589e60 100644
--- a/test/sreset_world/sreset_kernel/sreset_kernel.S
+++ b/test/sreset_world/sreset_kernel/sreset_kernel.S
@@ -1,4 +1,4 @@
-// SPDX-License-Identifier: Apache-2.0
+// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
 /*
  * Test the SRESET OPAL call in Mambo by
  * having a bit of fun printing 'Hello World' from the SRESET vector.
-- 
2.21.0



More information about the Skiboot mailing list