diff options
743 files changed, 4624 insertions, 3873 deletions
diff --git a/Documentation/boards/socfpga.rst b/Documentation/boards/socfpga.rst index d73237491d..19d6060300 100644 --- a/Documentation/boards/socfpga.rst +++ b/Documentation/boards/socfpga.rst @@ -116,19 +116,12 @@ To update the handoff files, the following procedure is necessary: 1. Regenerate the project with Qsys 2. Load up your project in Quartus II and assemble the design -3. Go to the SoCEDS installation and run - ``./embedded_command_shell.sh`` -4. Now run ``bsp-editor`` -5. Create a new BSP -6. Select the directory `hps_isw_handoff/soc_system_hps_0` under the - preloader settings directory -7. Click ``Ok`` than ``Generate`` Now run the command: .. code-block:: sh - scripts/socfpga_import_preloader <SPL_GENERATED_DIR> <ISW_HANDOFF> <BOARD_DIRECTORY> + scripts/socfpga_import_preloader <EMBEDDED_SDK> <ISW_HANDOFF> <BOARD_DIRECTORY> where `<SPL_GENERATED_DIR>` is the directory where the bsp-editor generated the files, `<ISW_HANDOFF>` is the directory where Quartus generated the handoff files, and diff --git a/Documentation/user/barebox.rst b/Documentation/user/barebox.rst index d82163a886..c021a4c743 100644 --- a/Documentation/user/barebox.rst +++ b/Documentation/user/barebox.rst @@ -112,11 +112,12 @@ targets, followed by the MIPS-specific ones: Architecture specific targets (mips): No architecture specific help defined for mips + ath79_defconfig - Build for ath79 + bcm47xx_defconfig - Build for bcm47xx + gxemul-malta_defconfig - Build for gxemul-malta loongson-ls1b_defconfig - Build for loongson-ls1b - ritmix-rzx50_defconfig - Build for ritmix-rzx50 - tplink-mr3020_defconfig - Build for tplink-mr3020 - dlink-dir-320_defconfig - Build for dlink-dir-320 qemu-malta_defconfig - Build for qemu-malta + xburst_defconfig - Build for xburst barebox supports building for multiple boards with a single config. If you can't find your board in the list, it may be supported by one of the multi-board diff --git a/Documentation/user/debugging.rst b/Documentation/user/debugging.rst new file mode 100644 index 0000000000..15cb439043 --- /dev/null +++ b/Documentation/user/debugging.rst @@ -0,0 +1,21 @@ +Debugging with OpenOCD +====================== + +Barebox can be configured to break on prebootloader and main barebox entry. This +breakpoint can not be resumed and will stop the board to allow the user to +attach a JTAG debugger with OpenOCD. Additionally, barebox provides helper +scripts to load the symbols from the ELF binaries. +The python scripts require `pyelftools`. +To load the scripts into your gdb session, run the following command in the +barebox directory: + +.. code-block:: none + + (gdb) source scripts/gdb/helper.py + +This makes two new commands available in gdb, `bb-load-symbols` and +`bb-skip-break`. `bb-load-symbols` can load either the main `barebox` file or +one of the .pbl files in the image directories. The board needs to be stopped in +either the prebootloader or main barebox breakpoint, and gdb needs to be +connected to OpenOCD. To continue booting the board, `bb-skip-break` jumps over +the breakpoint and continues the barebox execution. diff --git a/Documentation/user/reset-reason.rst b/Documentation/user/reset-reason.rst index 26d37f86dd..e46f2ca684 100644 --- a/Documentation/user/reset-reason.rst +++ b/Documentation/user/reset-reason.rst @@ -41,6 +41,10 @@ The following values can help to detect the reason why the bootloader runs: * ``EXT`` (EXTernal): some SoCs have special device pins for external reset signals other than the ``RST`` one. Application specific how to handle this state. +* ``BROWNOUT``: some SoCs detect undervoltage conditions and stay in reset + till the supply voltage crosses a predefined threshold voltage. This avoids + erratic behavior that may occur when running out-of-spec. Application specific + how to handle this state. It depends on your board/SoC and its features if the hardware is able to detect these reset reasons. Most of the time only ``POR`` and ``RST`` are supported diff --git a/Documentation/user/user-manual.rst b/Documentation/user/user-manual.rst index 516b760b1b..f04981c3f0 100644 --- a/Documentation/user/user-manual.rst +++ b/Documentation/user/user-manual.rst @@ -33,6 +33,7 @@ Contents: system-reset state random + debugging * :ref:`search` * :ref:`genindex` @@ -1,5 +1,5 @@ VERSION = 2019 -PATCHLEVEL = 06 +PATCHLEVEL = 07 SUBLEVEL = 0 EXTRAVERSION = NAME = None @@ -428,31 +428,37 @@ else # Carefully list dependencies so we do not try to build scripts twice # in parallel PHONY += scripts -scripts: scripts_basic include/config/auto.conf +scripts: scripts_basic $(Q)$(MAKE) $(build)=$(@) # Objects we will link into barebox / subdirs we need to visit common-y := common/ drivers/ commands/ lib/ crypto/ net/ fs/ firmware/ ifeq ($(dot-config),1) -# Read in config --include include/config/auto.conf - -# Read in dependencies to all Kconfig* files, make sure to run -# oldconfig if changes are detected. --include include/config/auto.conf.cmd - -# To avoid any implicit rule to kick in, define an empty command -$(KCONFIG_CONFIG) include/config/auto.conf.cmd: ; +include include/config/auto.conf + +# Read in dependencies to all Kconfig* files, make sure to run syncconfig if +# changes are detected. This should be included after arch/$(SRCARCH)/Makefile +# because some architectures define CROSS_COMPILE there. +include include/config/auto.conf.cmd + +$(KCONFIG_CONFIG): + @echo >&2 '***' + @echo >&2 '*** Configuration file "$@" not found!' + @echo >&2 '***' + @echo >&2 '*** Please run some configurator (e.g. "make oldconfig" or' + @echo >&2 '*** "make menuconfig" or "make xconfig").' + @echo >&2 '***' + @/bin/false # The actual configuration files used during the build are stored in # include/generated/ and include/config/. Update them if .config is newer than # include/config/auto.conf (which mirrors .config). -include/config/%.conf: $(KCONFIG_CONFIG) include/config/auto.conf.cmd +# +# This exploits the 'multi-target pattern rule' trick. +# The syncconfig should be executed only once to make all the targets. +%/auto.conf %/auto.conf.cmd %/tristate.conf: $(KCONFIG_CONFIG) $(Q)$(MAKE) -f $(srctree)/Makefile syncconfig -else -# Dummy target needed, because used as prerequisite -include/config/auto.conf: ; endif # $(dot-config) include $(srctree)/arch/$(ARCH)/Makefile @@ -788,7 +794,7 @@ $(barebox-dirs): prepare scripts # Store (new) KERNELRELASE string in include/config/kernel.release localversion = $(shell $(srctree)/scripts/setlocalversion $(srctree)) -include/config/kernel.release: include/config/auto.conf FORCE +include/config/kernel.release: FORCE $(Q)rm -f $@ $(Q)echo $(KERNELVERSION)$(localversion) > $@ @@ -821,7 +827,7 @@ endif prepare2: prepare3 outputmakefile prepare1: prepare2 include/generated/version.h include/generated/utsrelease.h \ - include/config.h include/config/auto.conf + include/config.h ifneq ($(KBUILD_MODULES),) $(Q)mkdir -p $(MODVERDIR) @@ -852,7 +858,8 @@ define symlink-config-h fi endef -include/config.h: include/config/auto.conf +PHONY += include/config.h +include/config.h: $(Q)$(symlink-config-h) # Generate some files diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 480c6f0117..0f5190b417 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -207,7 +207,7 @@ config ARCH_S3C64xx select CPU_V6 select GENERIC_GPIO -config ARCH_STM32MP1 +config ARCH_STM32MP bool "ST stm32mp1xx" select CPU_V7 select HAVE_PBL_MULTI_IMAGES @@ -216,6 +216,7 @@ config ARCH_STM32MP1 select COMMON_CLK_OF_PROVIDER select HAS_DEBUG_LL select HAVE_CLK + select GPIOLIB config ARCH_VERSATILE bool "ARM Versatile boards (ARM926EJ-S)" @@ -304,7 +305,7 @@ source "arch/arm/mach-pxa/Kconfig" source "arch/arm/mach-rockchip/Kconfig" source "arch/arm/mach-samsung/Kconfig" source "arch/arm/mach-socfpga/Kconfig" -source "arch/arm/mach-stm32mp1/Kconfig" +source "arch/arm/mach-stm32mp/Kconfig" source "arch/arm/mach-versatile/Kconfig" source "arch/arm/mach-vexpress/Kconfig" source "arch/arm/mach-tegra/Kconfig" diff --git a/arch/arm/Makefile b/arch/arm/Makefile index 4d54f339f1..5cb46f6613 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile @@ -98,7 +98,7 @@ machine-$(CONFIG_ARCH_PXA) := pxa machine-$(CONFIG_ARCH_ROCKCHIP) := rockchip machine-$(CONFIG_ARCH_SAMSUNG) := samsung machine-$(CONFIG_ARCH_SOCFPGA) := socfpga -machine-$(CONFIG_ARCH_STM32MP1) := stm32mp1 +machine-$(CONFIG_ARCH_STM32MP) := stm32mp machine-$(CONFIG_ARCH_VERSATILE) := versatile machine-$(CONFIG_ARCH_VEXPRESS) := vexpress machine-$(CONFIG_ARCH_TEGRA) := tegra diff --git a/arch/arm/boards/globalscale-mirabox/kwbimage.cfg b/arch/arm/boards/globalscale-mirabox/kwbimage.cfg deleted file mode 100644 index fa8e5a6ee4..0000000000 --- a/arch/arm/boards/globalscale-mirabox/kwbimage.cfg +++ /dev/null @@ -1,5 +0,0 @@ -VERSION 1 -BOOT_FROM nand -NAND_BLKSZ 00020000 -NAND_BADBLK_LOCATION 01 -BINARY ./binary.0 0000005b 00000068 diff --git a/arch/arm/boards/lenovo-ix4-300d/kwbimage.cfg b/arch/arm/boards/lenovo-ix4-300d/kwbimage.cfg deleted file mode 100644 index a9b035e113..0000000000 --- a/arch/arm/boards/lenovo-ix4-300d/kwbimage.cfg +++ /dev/null @@ -1,5 +0,0 @@ -VERSION 1 -BOOT_FROM nand -NAND_BLKSZ 00020000 -NAND_BADBLK_LOCATION 00 -BINARY ./binary.0 0000005b 00000068 diff --git a/arch/arm/boards/marvell-armada-xp-db/kwbimage.cfg b/arch/arm/boards/marvell-armada-xp-db/kwbimage.cfg deleted file mode 100644 index 28e60e2f18..0000000000 --- a/arch/arm/boards/marvell-armada-xp-db/kwbimage.cfg +++ /dev/null @@ -1,3 +0,0 @@ -VERSION 1 -BOOT_FROM uart -BINARY ./binary.0 0000005b 00000000 diff --git a/arch/arm/boards/marvell-armada-xp-gp/kwbimage.cfg b/arch/arm/boards/marvell-armada-xp-gp/kwbimage.cfg deleted file mode 100644 index eb8a2e7aed..0000000000 --- a/arch/arm/boards/marvell-armada-xp-gp/kwbimage.cfg +++ /dev/null @@ -1,3 +0,0 @@ -VERSION 1 -BOOT_FROM spi -BINARY ./binary.0 0000005b 00000068 diff --git a/arch/arm/boards/netgear-rn104/kwbimage.cfg b/arch/arm/boards/netgear-rn104/kwbimage.cfg deleted file mode 100644 index 83a4149053..0000000000 --- a/arch/arm/boards/netgear-rn104/kwbimage.cfg +++ /dev/null @@ -1,7 +0,0 @@ -VERSION 1 -BOOT_FROM nand -DESTADDR 00600000 -EXECADDR 006a0000 -NAND_BLKSZ 00020000 -NAND_BADBLK_LOCATION 01 -BINARY binary.0 0000005b 00000068 diff --git a/arch/arm/boards/netgear-rn2120/kwbimage.cfg b/arch/arm/boards/netgear-rn2120/kwbimage.cfg deleted file mode 100644 index a6f0aa6d3d..0000000000 --- a/arch/arm/boards/netgear-rn2120/kwbimage.cfg +++ /dev/null @@ -1,7 +0,0 @@ -VERSION 1 -BOOT_FROM nand -DESTADDR 00000000 -EXECADDR 00000000 -NAND_BLKSZ 00020000 -NAND_BADBLK_LOCATION 01 -BINARY binary.0 0000005b 00000068 diff --git a/arch/arm/boards/phytec-som-imx6/board.c b/arch/arm/boards/phytec-som-imx6/board.c index d808517975..730115702b 100644 --- a/arch/arm/boards/phytec-som-imx6/board.c +++ b/arch/arm/boards/phytec-som-imx6/board.c @@ -190,7 +190,8 @@ static int physom_imx6_devices_init(void) default_environment_path = "/chosen/environment-spinor"; default_envdev = "SPI NOR flash"; - } else if (of_machine_is_compatible("phytec,imx6ul-pcl063")) { + } else if (of_machine_is_compatible("phytec,imx6ul-pcl063-nand") + || of_machine_is_compatible("phytec,imx6ul-pcl063-emmc")) { barebox_set_hostname("phyCORE-i.MX6UL"); default_environment_path = "/chosen/environment-nand"; default_envdev = "NAND flash"; @@ -236,6 +237,10 @@ static int physom_imx6_devices_init(void) imx6_bbu_internal_mmc_register_handler("mmc3", "/dev/mmc3", BBU_HANDLER_FLAG_DEFAULT); + } else if (of_machine_is_compatible("phytec,imx6ul-pcl063-emmc")) { + imx6_bbu_internal_mmc_register_handler("mmc1", + "/dev/mmc1", + BBU_HANDLER_FLAG_DEFAULT); } else { imx6_bbu_nand_register_handler("nand", BBU_HANDLER_FLAG_DEFAULT); } @@ -243,13 +248,20 @@ static int physom_imx6_devices_init(void) defaultenv_append_directory(defaultenv_physom_imx6); /* Overwrite file /env/init/automount */ - if (of_machine_is_compatible("phytec,imx6qp-pcm058-nand") + if (of_machine_is_compatible("phytec,imx6q-pfla02") + || of_machine_is_compatible("phytec,imx6dl-pfla02") + || of_machine_is_compatible("phytec,imx6s-pfla02") + || of_machine_is_compatible("phytec,imx6q-pcaaxl3")) { + defaultenv_append_directory(defaultenv_physom_imx6); + } else if (of_machine_is_compatible("phytec,imx6qp-pcm058-nand") || of_machine_is_compatible("phytec,imx6q-pcm058-nand") || of_machine_is_compatible("phytec,imx6q-pcm058-emmc") || of_machine_is_compatible("phytec,imx6dl-pcm058-nand") || of_machine_is_compatible("phytec,imx6dl-pcm058-emmc")) { + defaultenv_append_directory(defaultenv_physom_imx6); defaultenv_append_directory(defaultenv_physom_imx6_phycore); - } else if (of_machine_is_compatible("phytec,imx6ul-pcl063")) { + } else if (of_machine_is_compatible("phytec,imx6ul-pcl063-nand") + || of_machine_is_compatible("phytec,imx6ul-pcl063-emmc")) { defaultenv_append_directory(defaultenv_physom_imx6ul_phycore); } diff --git a/arch/arm/boards/phytec-som-imx6/defaultenv-physom-imx6-phycore/init/automount b/arch/arm/boards/phytec-som-imx6/defaultenv-physom-imx6-phycore/init/automount index 91ded44119..13a5b626b7 100644 --- a/arch/arm/boards/phytec-som-imx6/defaultenv-physom-imx6-phycore/init/automount +++ b/arch/arm/boards/phytec-som-imx6/defaultenv-physom-imx6-phycore/init/automount @@ -1,9 +1,16 @@ #!/bin/sh -# automount tftp server based on $eth0.serverip +# automount tftp server mkdir -p /mnt/tftp -automount /mnt/tftp 'ifup eth0 && mount -t tftp $eth0.serverip /mnt/tftp' +automount /mnt/tftp 'ifup -a && mount -t tftp $global.net.server /mnt/tftp' + +# automount nfs server's nfsroot + +mkdir -p /mnt/nfs +automount /mnt/nfs 'ifup -a && mount -t nfs ${global.net.server}:/home/${global.user}/nfsroot/${global.hostname} /mnt/nfs' + +# automount phycore specific local mounts mkdir -p /mnt/mmc automount -d /mnt/mmc 'mmc0.probe=1 && [ -e /dev/mmc0.0 ] && mount /dev/mmc0.0 /mnt/mmc' diff --git a/arch/arm/boards/phytec-som-imx6/defaultenv-physom-imx6ul-phycore/boot/emmc b/arch/arm/boards/phytec-som-imx6/defaultenv-physom-imx6ul-phycore/boot/emmc new file mode 100644 index 0000000000..15cba6f5ac --- /dev/null +++ b/arch/arm/boards/phytec-som-imx6/defaultenv-physom-imx6ul-phycore/boot/emmc @@ -0,0 +1,5 @@ +#!/bin/sh + +global.bootm.image="/mnt/emmc/zImage" +global.bootm.oftree="/mnt/emmc/oftree" +global.linux.bootargs.dyn.root="root=/dev/mmcblk1p2 rootflags='discard,data=journal'" diff --git a/arch/arm/boards/phytec-som-imx6/defaultenv-physom-imx6ul-phycore/boot/mmc b/arch/arm/boards/phytec-som-imx6/defaultenv-physom-imx6ul-phycore/boot/mmc new file mode 100644 index 0000000000..8de2efa997 --- /dev/null +++ b/arch/arm/boards/phytec-som-imx6/defaultenv-physom-imx6ul-phycore/boot/mmc @@ -0,0 +1,5 @@ +#!/bin/sh + +global.bootm.image="/mnt/mmc/zImage" +global.bootm.oftree="/mnt/mmc/oftree" +global.linux.bootargs.dyn.root="root=/dev/mmcblk0p2 rootflags='data=journal'" diff --git a/arch/arm/boards/phytec-som-imx6/defaultenv-physom-imx6ul-phycore/init/automount b/arch/arm/boards/phytec-som-imx6/defaultenv-physom-imx6ul-phycore/init/automount index 71d9086582..36759de7c6 100644 --- a/arch/arm/boards/phytec-som-imx6/defaultenv-physom-imx6ul-phycore/init/automount +++ b/arch/arm/boards/phytec-som-imx6/defaultenv-physom-imx6ul-phycore/init/automount @@ -7,3 +7,8 @@ automount /mnt/tftp 'ifup eth0 && mount -t tftp $eth0.serverip /mnt/tftp' mkdir -p /mnt/mmc automount -d /mnt/mmc 'mmc0.probe=1 && [ -e /dev/mmc0.0 ] && mount /dev/mmc0.0 /mnt/mmc' + +if [ -e /dev/mmc1 ]; then + mkdir -p /mnt/emmc + automount -d /mnt/emmc 'mmc1.probe=1 && [ -e /dev/mmc1.0 ] && mount /dev/mmc1.0 /mnt/emmc' +fi diff --git a/arch/arm/boards/phytec-som-imx6/defaultenv-physom-imx6ul-phycore/init/bootsource b/arch/arm/boards/phytec-som-imx6/defaultenv-physom-imx6ul-phycore/init/bootsource new file mode 100644 index 0000000000..beb7afe9c2 --- /dev/null +++ b/arch/arm/boards/phytec-som-imx6/defaultenv-physom-imx6ul-phycore/init/bootsource @@ -0,0 +1,17 @@ +#!/bin/sh + +if [ -n "$nv.boot.default" ]; then + exit +fi + +if [ $bootsource = mmc ]; then + if [ $bootsource_instance = 0 ]; then + global.boot.default="mmc emmc nand spi net" + elif [ $bootsource_instance = 1 ]; then + global.boot.default="emmc mmc nand spi net" + fi +elif [ $bootsource = nand ]; then + global.boot.default="nand spi mmc net" +elif [ $bootsource = net ]; then + global.boot.default="net nand spi mmc" +fi diff --git a/arch/arm/boards/phytec-som-imx6/lowlevel.c b/arch/arm/boards/phytec-som-imx6/lowlevel.c index 915534ea94..07bb0ed1b5 100644 --- a/arch/arm/boards/phytec-som-imx6/lowlevel.c +++ b/arch/arm/boards/phytec-som-imx6/lowlevel.c @@ -109,13 +109,16 @@ PHYTEC_ENTRY(start_phytec_phyboard_subra_512mb_1bank, imx6dl_phytec_phyboard_sub PHYTEC_ENTRY(start_phytec_phyboard_subra_1gib_1bank, imx6q_phytec_phyboard_subra, SZ_1G, false); PHYTEC_ENTRY(start_phytec_phycore_imx6dl_som_nand_256mb, imx6dl_phytec_phycore_som_nand, SZ_256M, true); +PHYTEC_ENTRY(start_phytec_phycore_imx6dl_som_lc_nand_256mb, imx6dl_phytec_phycore_som_lc_nand, SZ_256M, true); PHYTEC_ENTRY(start_phytec_phycore_imx6dl_som_nand_1gib, imx6dl_phytec_phycore_som_nand, SZ_1G, true); PHYTEC_ENTRY(start_phytec_phycore_imx6dl_som_emmc_1gib, imx6dl_phytec_phycore_som_emmc, SZ_1G, true); +PHYTEC_ENTRY(start_phytec_phycore_imx6dl_som_lc_emmc_1gib, imx6dl_phytec_phycore_som_lc_emmc, SZ_1G, true); PHYTEC_ENTRY(start_phytec_phycore_imx6q_som_nand_1gib, imx6q_phytec_phycore_som_nand, SZ_1G, true); PHYTEC_ENTRY(start_phytec_phycore_imx6qp_som_nand_1gib, imx6qp_phytec_phycore_som_nand, SZ_1G, true); PHYTEC_ENTRY(start_phytec_phycore_imx6q_som_emmc_1gib, imx6q_phytec_phycore_som_emmc, SZ_1G, true); PHYTEC_ENTRY(start_phytec_phycore_imx6q_som_emmc_2gib, imx6q_phytec_phycore_som_emmc, SZ_2G, true); -PHYTEC_ENTRY(start_phytec_phycore_imx6ul_som_512mb, imx6ul_phytec_phycore_som, SZ_512M, false); -PHYTEC_ENTRY(start_phytec_phycore_imx6ull_som_lc_256mb, imx6ull_phytec_phycore_som_lc, SZ_256M, false); -PHYTEC_ENTRY(start_phytec_phycore_imx6ull_som_512mb, imx6ull_phytec_phycore_som, SZ_512M, false); +PHYTEC_ENTRY(start_phytec_phycore_imx6ul_som_nand_512mb, imx6ul_phytec_phycore_som_nand, SZ_512M, false); +PHYTEC_ENTRY(start_phytec_phycore_imx6ull_som_lc_nand_256mb, imx6ull_phytec_phycore_som_lc_nand, SZ_256M, false); +PHYTEC_ENTRY(start_phytec_phycore_imx6ull_som_nand_512mb, imx6ull_phytec_phycore_som_nand, SZ_512M, false); +PHYTEC_ENTRY(start_phytec_phycore_imx6ull_som_emmc_512mb, imx6ull_phytec_phycore_som_emmc, SZ_512M, false); diff --git a/arch/arm/boards/plathome-openblocks-ax3/kwbimage.cfg b/arch/arm/boards/plathome-openblocks-ax3/kwbimage.cfg deleted file mode 100644 index eb8a2e7aed..0000000000 --- a/arch/arm/boards/plathome-openblocks-ax3/kwbimage.cfg +++ /dev/null @@ -1,3 +0,0 @@ -VERSION 1 -BOOT_FROM spi -BINARY ./binary.0 0000005b 00000068 diff --git a/arch/arm/boards/stm32mp157c-dk2/lowlevel.c b/arch/arm/boards/stm32mp157c-dk2/lowlevel.c index b8e5959bef..566ace79c9 100644 --- a/arch/arm/boards/stm32mp157c-dk2/lowlevel.c +++ b/arch/arm/boards/stm32mp157c-dk2/lowlevel.c @@ -5,7 +5,7 @@ #include <mach/stm32.h> #include <debug_ll.h> -extern char __dtb_stm32mp157c_dk2_start[]; +extern char __dtb_z_stm32mp157c_dk2_start[]; ENTRY_FUNCTION(start_stm32mp157c_dk2, r0, r1, r2) { @@ -13,7 +13,7 @@ ENTRY_FUNCTION(start_stm32mp157c_dk2, r0, r1, r2) arm_cpu_lowlevel_init(); - fdt = __dtb_stm32mp157c_dk2_start + get_runtime_offset(); + fdt = __dtb_z_stm32mp157c_dk2_start + get_runtime_offset(); barebox_arm_entry(STM32_DDR_BASE, SZ_512M, fdt); } diff --git a/arch/arm/boards/terasic-de0-nano-soc/iocsr_config_cyclone5.c b/arch/arm/boards/terasic-de0-nano-soc/iocsr_config_cyclone5.c index 7caed2ee31..80cb270313 100644 --- a/arch/arm/boards/terasic-de0-nano-soc/iocsr_config_cyclone5.c +++ b/arch/arm/boards/terasic-de0-nano-soc/iocsr_config_cyclone5.c @@ -36,32 +36,32 @@ static const unsigned long SECT(iocsr_scan_chain0_table)[((CONFIG_HPS_IOCSR_SCAN 0xC0000000, 0x0000003F, 0x00008000, - 0x00020080, + 0x00060180, 0x18060000, - 0x08000000, - 0x00018020, + 0x18000000, + 0x00018060, 0x00000000, 0x00004000, - 0x00010040, - 0x04010000, - 0x04000000, - 0x00000010, - 0x00004010, + 0x000300C0, + 0x0C030000, + 0x0C000000, + 0x00000030, + 0x0000C030, 0x00002000, 0x00020000, - 0x02008000, - 0x02000000, - 0x00000008, - 0x00002008, + 0x06018000, + 0x06000000, + 0x00000018, + 0x00006018, 0x00001000, }; static const unsigned long SECT(iocsr_scan_chain1_table)[((CONFIG_HPS_IOCSR_SCANCHAIN1_LENGTH / 32) + 1)] = { 0x00100000, - 0x10040000, - 0x100000C0, - 0x00000040, - 0x00010040, + 0x300C0000, + 0x300000C0, + 0x000000C0, + 0x000300C0, 0x00008000, 0x00060180, 0x20000000, @@ -69,11 +69,11 @@ static const unsigned long SECT(iocsr_scan_chain1_table)[((CONFIG_HPS_IOCSR_SCAN 0x00000080, 0x00020000, 0x00004000, - 0x00010040, + 0x000300C0, 0x10000000, - 0x04000000, - 0x00000010, - 0x00004010, + 0x0C000000, + 0x00000030, + 0x0000C030, 0x00002000, 0x00020000, 0x06018000, @@ -94,22 +94,22 @@ static const unsigned long SECT(iocsr_scan_chain1_table)[((CONFIG_HPS_IOCSR_SCAN 0x00002000, 0x00000400, 0x00000000, - 0x00401000, + 0x00C03000, 0x00000003, 0x00000000, 0x00000000, 0x00000200, - 0x00600802, + 0x00601806, 0x00000000, - 0x80200000, - 0x80000600, - 0x00000200, + 0x80600000, + 0x80000601, + 0x00000601, 0x00000100, - 0x00300401, - 0xC0100400, - 0x40100000, - 0x40000300, - 0x000C0100, + 0x00300C03, + 0xC0300C00, + 0xC0300000, + 0xC0000300, + 0x000C0300, 0x00000080, }; @@ -118,7 +118,7 @@ static const unsigned long SECT(iocsr_scan_chain2_table)[((CONFIG_HPS_IOCSR_SCAN 0x00000000, 0x0FF00000, 0x00000000, - 0x0C0300C0, + 0x000300C0, 0x00008000, 0x00080000, 0x18060000, @@ -142,11 +142,11 @@ static const unsigned long SECT(iocsr_scan_chain2_table)[((CONFIG_HPS_IOCSR_SCAN 0x00000000, 0x03000000, 0x0000800C, - 0x00C01004, + 0x00C0300C, 0x00000800, }; -static const unsigned long iocsr_scan_chain3_table[((CONFIG_HPS_IOCSR_SCANCHAIN3_LENGTH / 32) + 1)] = { +static const unsigned long SECT(iocsr_scan_chain3_table)[((CONFIG_HPS_IOCSR_SCANCHAIN3_LENGTH / 32) + 1)] = { 0x0C420D80, 0x082000FF, 0x0A804001, diff --git a/arch/arm/boards/terasic-de0-nano-soc/pinmux_config.c b/arch/arm/boards/terasic-de0-nano-soc/pinmux_config.c index 1fc530debe..c061901814 100644 --- a/arch/arm/boards/terasic-de0-nano-soc/pinmux_config.c +++ b/arch/arm/boards/terasic-de0-nano-soc/pinmux_config.c @@ -29,7 +29,7 @@ #include <common.h> -unsigned long SECT(sys_mgr_init_table)[] = { +static unsigned long SECT(sys_mgr_init_table)[] = { 0, /* EMACIO0 */ 2, /* EMACIO1 */ 2, /* EMACIO2 */ diff --git a/arch/arm/boards/terasic-de0-nano-soc/pll_config.h b/arch/arm/boards/terasic-de0-nano-soc/pll_config.h index bb2f0eab0e..35c98d522b 100644 --- a/arch/arm/boards/terasic-de0-nano-soc/pll_config.h +++ b/arch/arm/boards/terasic-de0-nano-soc/pll_config.h @@ -58,7 +58,7 @@ #define CONFIG_HPS_PERPLLGRP_PERQSPICLK_CNT (511) #define CONFIG_HPS_PERPLLGRP_PERNANDSDMMCCLK_CNT (4) #define CONFIG_HPS_PERPLLGRP_PERBASECLK_CNT (4) -#define CONFIG_HPS_PERPLLGRP_S2FUSER1CLK_CNT (19) +#define CONFIG_HPS_PERPLLGRP_S2FUSER1CLK_CNT (511) #define CONFIG_HPS_PERPLLGRP_DIV_USBCLK (0) #define CONFIG_HPS_PERPLLGRP_DIV_SPIMCLK (0) #define CONFIG_HPS_PERPLLGRP_DIV_CAN0CLK (4) diff --git a/arch/arm/boards/terasic-de0-nano-soc/sdram_config.h b/arch/arm/boards/terasic-de0-nano-soc/sdram_config.h index 292ff6d4d7..7a7a9549ca 100644 --- a/arch/arm/boards/terasic-de0-nano-soc/sdram_config.h +++ b/arch/arm/boards/terasic-de0-nano-soc/sdram_config.h @@ -73,12 +73,12 @@ #define CONFIG_HPS_SDR_CTRLCFG_PORTCFG_AUTOPCHEN (0) #define CONFIG_HPS_SDR_CTRLCFG_FIFOCFG_SYNCMODE (0) #define CONFIG_HPS_SDR_CTRLCFG_FIFOCFG_INCSYNC (0) -#define CONFIG_HPS_SDR_CTRLCFG_MPPRIORITY_USERPRIORITY (0x3FFD1088) +#define CONFIG_HPS_SDR_CTRLCFG_MPPRIORITY_USERPRIORITY (0x0) #define CONFIG_HPS_SDR_CTRLCFG_MPWIEIGHT_0_STATICWEIGHT_31_0 (0x21084210) -#define CONFIG_HPS_SDR_CTRLCFG_MPWIEIGHT_1_STATICWEIGHT_49_32 (0x1EF84) -#define CONFIG_HPS_SDR_CTRLCFG_MPWIEIGHT_1_SUMOFWEIGHT_13_0 (0x2020) +#define CONFIG_HPS_SDR_CTRLCFG_MPWIEIGHT_1_STATICWEIGHT_49_32 (0x10441) +#define CONFIG_HPS_SDR_CTRLCFG_MPWIEIGHT_1_SUMOFWEIGHT_13_0 (0x78) #define CONFIG_HPS_SDR_CTRLCFG_MPWIEIGHT_2_SUMOFWEIGHT_45_14 (0x0) -#define CONFIG_HPS_SDR_CTRLCFG_MPWIEIGHT_3_SUMOFWEIGHT_63_46 (0xF800) +#define CONFIG_HPS_SDR_CTRLCFG_MPWIEIGHT_3_SUMOFWEIGHT_63_46 (0x0) #define CONFIG_HPS_SDR_CTRLCFG_PHYCTRL_PHYCTRL_0 (0x200) #define CONFIG_HPS_SDR_CTRLCFG_CPORTWIDTH_CPORTWIDTH (0x44555) @@ -100,9 +100,13 @@ (0x0101) #define CONFIG_HPS_SDR_CTRLCFG_DRAMODT_READ (0) #define CONFIG_HPS_SDR_CTRLCFG_DRAMODT_WRITE (1) -#define CONFIG_HPS_SDR_CTRLCFG_FPGAPORTRST_READ_PORT_USED (0x1) -#define CONFIG_HPS_SDR_CTRLCFG_FPGAPORTRST_WRITE_PORT_USED (0x1) -#define CONFIG_HPS_SDR_CTRLCFG_FPGAPORTRST_COMMAND_PORT_USED (0x3) -#define CONFIG_HPS_SDR_CTRLCFG_FPGAPORTRST (0x311) +#define CONFIG_HPS_SDR_CTRLCFG_FPGAPORTRST_READ_PORT_USED (0x0) +#define CONFIG_HPS_SDR_CTRLCFG_FPGAPORTRST_WRITE_PORT_USED (0x0) +#define CONFIG_HPS_SDR_CTRLCFG_FPGAPORTRST_COMMAND_PORT_USED (0x0) +#define CONFIG_HPS_SDR_CTRLCFG_FPGAPORTRST (0x0) -#endif /*#ifndef__SDRAM_CONFIG_H*/ +#define CONFIG_HPS_SDR_CTRLCFG_EXTRATIME1_CFG_EXTRA_CTL_CLK_RD_TO_WR (2) +#define CONFIG_HPS_SDR_CTRLCFG_EXTRATIME1_CFG_EXTRA_CTL_CLK_RD_TO_WR_BC (2) +#define CONFIG_HPS_SDR_CTRLCFG_EXTRATIME1_CFG_EXTRA_CTL_CLK_RD_TO_WR_DIFF_CHIP (2) + +#endif /*#ifndef__SDRAM_CONFIG_H */ diff --git a/arch/arm/boards/terasic-de0-nano-soc/sequencer_auto.h b/arch/arm/boards/terasic-de0-nano-soc/sequencer_auto.h index 3797a2584f..289ca92759 100644 --- a/arch/arm/boards/terasic-de0-nano-soc/sequencer_auto.h +++ b/arch/arm/boards/terasic-de0-nano-soc/sequencer_auto.h @@ -1,6 +1,5 @@ /* -Copyright (c) 2012, Altera Corporation -All rights reserved. +Copyright (C) 2019 Intel Corporation. All rights reserved. SPDX-License-Identifier: BSD-3-Clause @@ -11,7 +10,7 @@ modification, are permitted provided that the following conditions are met: * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - * Neither the name of Altera Corporation nor the + * Neither the name of Intel Corporation nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. @@ -62,7 +61,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define __RW_MGR_ac_read_en 0x21 #define __RW_MGR_ac_mrs3_mirr 0x0C #define __RW_MGR_ac_mrs2 0x05 -#define __RW_MGR_CONTENT_ac_mrs1 0x10090006 +#define __RW_MGR_CONTENT_ac_mrs1 0x10090044 #define __RW_MGR_CONTENT_ac_mrs3 0x100B0000 #define __RW_MGR_CONTENT_ac_write_bank_0_col_0_nodata_wl_1 0x18980000 #define __RW_MGR_CONTENT_ac_act_1 0x106B0000 @@ -74,8 +73,8 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define __RW_MGR_CONTENT_ac_init_reset_0_cke_0 0x20700000 #define __RW_MGR_CONTENT_ac_read_bank_0_1_norden 0x10580008 #define __RW_MGR_CONTENT_ac_pre_all 0x10280400 -#define __RW_MGR_CONTENT_ac_mrs0_user 0x10080471 -#define __RW_MGR_CONTENT_ac_mrs0_dll_reset 0x10080570 +#define __RW_MGR_CONTENT_ac_mrs0_user 0x10080431 +#define __RW_MGR_CONTENT_ac_mrs0_dll_reset 0x10080530 #define __RW_MGR_CONTENT_ac_read_bank_0_0 0x13580000 #define __RW_MGR_CONTENT_ac_write_bank_0_col_1 0x1C980008 #define __RW_MGR_CONTENT_ac_read_bank_0_1 0x13580008 @@ -83,25 +82,24 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define __RW_MGR_CONTENT_ac_write_bank_1_col_1 0x1C9B0008 #define __RW_MGR_CONTENT_ac_write_bank_0_col_0 0x1C980000 #define __RW_MGR_CONTENT_ac_read_bank_1_0 0x135B0000 -#define __RW_MGR_CONTENT_ac_mrs1_mirr 0x100A0006 +#define __RW_MGR_CONTENT_ac_mrs1_mirr 0x100A0024 #define __RW_MGR_CONTENT_ac_read_bank_1_1 0x135B0008 #define __RW_MGR_CONTENT_ac_des_odt_1 0x38780000 -#define __RW_MGR_CONTENT_ac_mrs0_dll_reset_mirr 0x100804E8 +#define __RW_MGR_CONTENT_ac_mrs0_dll_reset_mirr 0x100804C8 #define __RW_MGR_CONTENT_ac_zqcl 0x10380400 #define __RW_MGR_CONTENT_ac_write_predata 0x38F80000 -#define __RW_MGR_CONTENT_ac_mrs0_user_mirr 0x10080469 +#define __RW_MGR_CONTENT_ac_mrs0_user_mirr 0x10080449 #define __RW_MGR_CONTENT_ac_ref 0x10480000 #define __RW_MGR_CONTENT_ac_nop 0x30780000 #define __RW_MGR_CONTENT_ac_rdimm 0x10780000 -#define __RW_MGR_CONTENT_ac_mrs2_mirr 0x10090218 +#define __RW_MGR_CONTENT_ac_mrs2_mirr 0x10090008 #define __RW_MGR_CONTENT_ac_write_bank_0_col_0_nodata 0x18180000 #define __RW_MGR_CONTENT_ac_read_en 0x33780000 #define __RW_MGR_CONTENT_ac_mrs3_mirr 0x100B0000 -#define __RW_MGR_CONTENT_ac_mrs2 0x100A0218 +#define __RW_MGR_CONTENT_ac_mrs2 0x100A0010 /* -Copyright (c) 2012, Altera Corporation -All rights reserved. +Copyright (C) 2019 Intel Corporation. All rights reserved. SPDX-License-Identifier: BSD-3-Clause @@ -112,7 +110,7 @@ modification, are permitted provided that the following conditions are met: * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - * Neither the name of Altera Corporation nor the + * Neither the name of Intel Corporation nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. diff --git a/arch/arm/boards/terasic-de0-nano-soc/sequencer_auto_ac_init.c b/arch/arm/boards/terasic-de0-nano-soc/sequencer_auto_ac_init.c index 8044477e01..1efe4f99c2 100644 --- a/arch/arm/boards/terasic-de0-nano-soc/sequencer_auto_ac_init.c +++ b/arch/arm/boards/terasic-de0-nano-soc/sequencer_auto_ac_init.c @@ -1,6 +1,5 @@ /* -Copyright (c) 2012, Altera Corporation -All rights reserved. +Copyright (C) 2019 Intel Corporation. All rights reserved. SPDX-License-Identifier: BSD-3-Clause @@ -11,7 +10,7 @@ modification, are permitted provided that the following conditions are met: * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - * Neither the name of Altera Corporation nor the + * Neither the name of Intel Corporation nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. @@ -32,16 +31,16 @@ static const uint32_t SECT(ac_rom_init)[36] = { 0x20700000, 0x20780000, - 0x10080471, - 0x10080570, - 0x10090006, - 0x100a0218, + 0x10080431, + 0x10080530, + 0x10090044, + 0x100a0010, 0x100b0000, 0x10380400, - 0x10080469, - 0x100804e8, - 0x100a0006, - 0x10090218, + 0x10080449, + 0x100804c8, + 0x100a0024, + 0x10090008, 0x100b0000, 0x30780000, 0x38780000, diff --git a/arch/arm/boards/terasic-de0-nano-soc/sequencer_defines.h b/arch/arm/boards/terasic-de0-nano-soc/sequencer_defines.h index f4d43951c8..fd226f1eb1 100644 --- a/arch/arm/boards/terasic-de0-nano-soc/sequencer_defines.h +++ b/arch/arm/boards/terasic-de0-nano-soc/sequencer_defines.h @@ -1,5 +1,5 @@ /* -Copyright (c) 2012, Altera Corporation +Copyright (C) 2016 Intel Corporation All rights reserved. SPDX-License-Identifier: BSD-3-Clause @@ -29,28 +29,31 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef _SEQUENCER_DEFINES_H_ #define _SEQUENCER_DEFINES_H_ -#define AC_ROM_MR1_MIRR 0000000000110 +#define AC_ROM_MR1_MIRR 0000000100100 #define AC_ROM_MR1_OCD_ENABLE -#define AC_ROM_MR2_MIRR 0001000011000 +#define AC_ROM_MR2_MIRR 0000000001000 #define AC_ROM_MR3_MIRR 0000000000000 #define AC_ROM_MR0_CALIB -#define AC_ROM_MR0_DLL_RESET_MIRR 0010011101000 -#define AC_ROM_MR0_DLL_RESET 0010101110000 -#define AC_ROM_MR0_MIRR 0010001101001 -#define AC_ROM_MR0 0010001110001 -#define AC_ROM_MR1 0000000000110 -#define AC_ROM_MR2 0001000011000 +#define AC_ROM_MR0_DLL_RESET_MIRR 0010011001000 +#define AC_ROM_MR0_DLL_RESET 0010100110000 +#define AC_ROM_MR0_MIRR 0010001001001 +#define AC_ROM_MR0 0010000110001 +#define AC_ROM_MR1 0000001000100 +#define AC_ROM_MR2 0000000010000 #define AC_ROM_MR3 0000000000000 +#define AC_ROM_USER_ADD_0 0_0000_0000_0000 +#define AC_ROM_USER_ADD_1 0_0000_0000_1000 #define AFI_CLK_FREQ 401 #define AFI_RATE_RATIO 1 +#define AP_MODE 0 #define ARRIAVGZ 0 #define ARRIAV 0 #define AVL_CLK_FREQ 67 #define BFM_MODE 0 #define BURST2 0 #define CALIBRATE_BIT_SLIPS 0 -#define CALIB_LFIFO_OFFSET 12 -#define CALIB_VFIFO_OFFSET 10 +#define CALIB_LFIFO_OFFSET 8 +#define CALIB_VFIFO_OFFSET 6 #define CYCLONEV 1 #define DDR2 0 #define DDR3 1 @@ -65,9 +68,12 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define ENABLE_INST_ROM_WRITE 1 #define ENABLE_MARGIN_REPORT_GEN 0 #define ENABLE_NON_DESTRUCTIVE_CALIB 0 +#define ENABLE_NON_DES_CAL_TEST 0 +#define ENABLE_NON_DES_CAL 0 #define ENABLE_SUPER_QUICK_CALIBRATION 0 #define ENABLE_TCL_DEBUG 0 #define FAKE_CAL_FAIL 0 +#define FIX_READ_LATENCY 8 #define FULL_RATE 1 #define GUARANTEED_READ_BRINGUP_TEST 0 #define HALF_RATE 0 @@ -99,21 +105,19 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define LPDDR1 0 #define LPDDR2 0 #define LRDIMM 0 -#define M10_DQ_WIDTH_8 0 -#define M10_DQ_WIDTH_16 0 -#define M10_DQ_WIDTH_24 0 #define MARGIN_VARIATION_TEST 0 #define MAX_LATENCY_COUNT_WIDTH 5 #define MEM_ADDR_WIDTH 13 #define MRS_MIRROR_PING_PONG_ATSO 0 #define MULTIPLE_AFI_WLAT 0 +#define NON_DES_CAL 0 #define NUM_SHADOW_REGS 1 #define QDRII 0 #define QUARTER_RATE 0 #define RDIMM 0 #define READ_AFTER_WRITE_CALIBRATION 1 #define READ_VALID_FIFO_SIZE 16 -#define REG_FILE_INIT_SEQ_SIGNATURE 0x5555048c +#define REG_FILE_INIT_SEQ_SIGNATURE 0x555504b5 #define RLDRAM3 0 #define RLDRAMII 0 #define RLDRAMX 0 @@ -136,10 +140,12 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define RW_MGR_MEM_VIRTUAL_GROUPS_PER_READ_DQS 1 #define RW_MGR_MEM_VIRTUAL_GROUPS_PER_WRITE_DQS 1 #define RW_MGR_MR0_BL 1 -#define RW_MGR_MR0_CAS_LATENCY 7 +#define RW_MGR_MR0_CAS_LATENCY 3 #define RW_MGR_TRUE_MEM_DATA_MASK_WIDTH 4 #define RW_MGR_WRITE_TO_DEBUG_READ 1.0 +#define SET_FIX_READ_LATENCY_ENABLE 0 #define SKEW_CALIBRATION 0 +#define SKIP_PTAP_0_DQS_EN_CAL 1 #define STATIC_FULL_CALIBRATION 1 #define STATIC_SIM_FILESET 0 #define STATIC_SKIP_MEM_INIT 0 @@ -152,7 +158,6 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define TRESET_CNTR1_VAL 99 #define TRESET_CNTR2_VAL 10 #define TRESET_CNTR0_VAL 99 -#define TW0_CAPTURE_CLOCKS 0 #define USE_DQS_TRACKING 1 #define USE_SHADOW_REGS 0 #define USE_USER_RDIMM_VALUE 0 diff --git a/arch/arm/boards/turris-omnia/kwbimage.cfg b/arch/arm/boards/turris-omnia/kwbimage.cfg deleted file mode 100644 index 789ee5df17..0000000000 --- a/arch/arm/boards/turris-omnia/kwbimage.cfg +++ /dev/null @@ -1,7 +0,0 @@ -VERSION 1 -BOOT_FROM spi -DESTADDR 00800000 -EXECADDR 00800000 -NAND_BLKSZ 00000000 -NAND_BADBLK_LOCATION 00 -BINARY binary.0 0000005b 00000068 diff --git a/arch/arm/boards/zii-vf610-dev/board.c b/arch/arm/boards/zii-vf610-dev/board.c index 90d4535684..0697a1660e 100644 --- a/arch/arm/boards/zii-vf610-dev/board.c +++ b/arch/arm/boards/zii-vf610-dev/board.c @@ -91,7 +91,7 @@ static int zii_vf610_dev_print_clocks(void) ccm_np = of_find_compatible_node(NULL, NULL, "fsl,vf610-ccm"); if (!ccm_np) { - pr_err("Couln't get CCM node\n"); + pr_err("Couldn't get CCM node\n"); return -ENOENT; } diff --git a/arch/arm/configs/a9m2410_defconfig b/arch/arm/configs/a9m2410_defconfig index 44d1edfc03..ea70a121af 100644 --- a/arch/arm/configs/a9m2410_defconfig +++ b/arch/arm/configs/a9m2410_defconfig @@ -8,7 +8,6 @@ CONFIG_CMDLINE_EDITING=y CONFIG_AUTO_COMPLETE=y CONFIG_PARTITION=y CONFIG_DEFAULT_ENVIRONMENT_PATH="arch/arm/boards/a9m2410/env" -CONFIG_DEBUG_INFO=y CONFIG_LONGHELP=y CONFIG_CMD_MEMINFO=y CONFIG_CMD_GO=y diff --git a/arch/arm/configs/a9m2440_defconfig b/arch/arm/configs/a9m2440_defconfig index d1ae580571..5843d29d7f 100644 --- a/arch/arm/configs/a9m2440_defconfig +++ b/arch/arm/configs/a9m2440_defconfig @@ -10,7 +10,6 @@ CONFIG_CMDLINE_EDITING=y CONFIG_AUTO_COMPLETE=y CONFIG_PARTITION=y CONFIG_DEFAULT_ENVIRONMENT_PATH="arch/arm/boards/a9m2440/env" -CONFIG_DEBUG_INFO=y CONFIG_LONGHELP=y CONFIG_CMD_MEMINFO=y CONFIG_CMD_GO=y diff --git a/arch/arm/configs/am335x_mlo_defconfig b/arch/arm/configs/am335x_mlo_defconfig index d6909154c4..efe9911050 100644 --- a/arch/arm/configs/am335x_mlo_defconfig +++ b/arch/arm/configs/am335x_mlo_defconfig @@ -1,4 +1,5 @@ CONFIG_ARCH_OMAP=y +CONFIG_BAREBOX_MAX_IMAGE_SIZE=0x1b400 CONFIG_OMAP_BUILD_IFT=y CONFIG_OMAP_SERIALBOOT=y CONFIG_OMAP_MULTI_BOARDS=y @@ -8,7 +9,6 @@ CONFIG_MACH_PHYTEC_SOM_AM335X=y CONFIG_THUMB2_BAREBOX=y # CONFIG_MEMINFO is not set CONFIG_MMU=y -CONFIG_BAREBOX_MAX_IMAGE_SIZE=0x1b400 CONFIG_MALLOC_SIZE=0x0 CONFIG_MALLOC_TLSF=y CONFIG_RELOCATABLE=y @@ -37,7 +37,6 @@ CONFIG_MCI=y CONFIG_MCI_OMAP_HSMMC=y CONFIG_PINCTRL_SINGLE=y CONFIG_BUS_OMAP_GPMC=y -CONFIG_TI_SYSC=y # CONFIG_FS_DEVFS is not set CONFIG_FS_FAT=y CONFIG_FS_FAT_LFN=y diff --git a/arch/arm/configs/archosg9_defconfig b/arch/arm/configs/archosg9_defconfig index 9a71921480..aafd849185 100644 --- a/arch/arm/configs/archosg9_defconfig +++ b/arch/arm/configs/archosg9_defconfig @@ -1,3 +1,4 @@ +CONFIG_TEXT_BASE=0x8f000000 CONFIG_ARCH_OMAP=y CONFIG_OMAP4_USBBOOT=y CONFIG_MACH_ARCHOSG9=y @@ -5,7 +6,6 @@ CONFIG_THUMB2_BAREBOX=y CONFIG_ARM_BOARD_APPEND_ATAG=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_ARM_UNWIND=y -CONFIG_TEXT_BASE=0x8f000000 CONFIG_MALLOC_SIZE=0x2000000 CONFIG_MALLOC_TLSF=y CONFIG_KALLSYMS=y @@ -66,7 +66,6 @@ CONFIG_CMD_LED_TRIGGER=y CONFIG_CMD_TIME=y CONFIG_NET=y CONFIG_NET_NETCONSOLE=y -CONFIG_NET_RESOLV=y CONFIG_DRIVER_SERIAL_NS16550=y CONFIG_DRIVER_SERIAL_NS16550_OMAP_EXTENSIONS=y CONFIG_DRIVER_SERIAL_OMAP4_USBBOOT=y diff --git a/arch/arm/configs/archosg9_xload_defconfig b/arch/arm/configs/archosg9_xload_defconfig index dc13f569dd..27f471cf0b 100644 --- a/arch/arm/configs/archosg9_xload_defconfig +++ b/arch/arm/configs/archosg9_xload_defconfig @@ -1,3 +1,4 @@ +CONFIG_TEXT_BASE=0x40300000 CONFIG_ARCH_OMAP=y CONFIG_BAREBOX_MAX_IMAGE_SIZE=0xC000 # CONFIG_OMAP_GPMC is not set @@ -7,7 +8,6 @@ CONFIG_MACH_ARCHOSG9=y CONFIG_THUMB2_BAREBOX=y # CONFIG_BANNER is not set # CONFIG_MEMINFO is not set -CONFIG_TEXT_BASE=0x40300000 CONFIG_MALLOC_SIZE=0x2000000 CONFIG_SHELL_NONE=y # CONFIG_ERRNO_MESSAGES is not set diff --git a/arch/arm/configs/at91sam9m10ihd_defconfig b/arch/arm/configs/at91sam9m10ihd_defconfig index 006d2acacf..490472f889 100644 --- a/arch/arm/configs/at91sam9m10ihd_defconfig +++ b/arch/arm/configs/at91sam9m10ihd_defconfig @@ -57,7 +57,6 @@ CONFIG_CMD_OFTREE=y CONFIG_NET=y CONFIG_NET_NFS=y CONFIG_NET_NETCONSOLE=y -CONFIG_NET_RESOLV=y CONFIG_DRIVER_NET_MACB=y CONFIG_NET_USB=y CONFIG_NET_USB_ASIX=y diff --git a/arch/arm/configs/at91sam9n12ek_defconfig b/arch/arm/configs/at91sam9n12ek_defconfig index 4ec3e9034c..b7c3a4b1f4 100644 --- a/arch/arm/configs/at91sam9n12ek_defconfig +++ b/arch/arm/configs/at91sam9n12ek_defconfig @@ -1,10 +1,10 @@ +CONFIG_TEXT_BASE=0x26f00000 CONFIG_ARCH_AT91SAM9N12=y CONFIG_BAREBOX_MAX_IMAGE_SIZE=0x40000 CONFIG_AEABI=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_PBL_IMAGE=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x26f00000 CONFIG_MALLOC_SIZE=0xa00000 CONFIG_EXPERIMENTAL=y CONFIG_MALLOC_TLSF=y diff --git a/arch/arm/configs/at91sam9x5ek_defconfig b/arch/arm/configs/at91sam9x5ek_defconfig index dd427555f9..11d1e4511e 100644 --- a/arch/arm/configs/at91sam9x5ek_defconfig +++ b/arch/arm/configs/at91sam9x5ek_defconfig @@ -75,9 +75,9 @@ CONFIG_USB_STORAGE=y CONFIG_MCI=y CONFIG_MCI_STARTUP=y CONFIG_MCI_ATMEL=y -CONFIG_MFD_SYSCON=y CONFIG_LED=y CONFIG_LED_GPIO=y +CONFIG_LED_GPIO_OF=y CONFIG_LED_TRIGGERS=y CONFIG_EEPROM_AT24=y CONFIG_KEYBOARD_GPIO=y @@ -90,4 +90,3 @@ CONFIG_FS_TFTP=y CONFIG_FS_FAT=y CONFIG_FS_FAT_WRITE=y CONFIG_FS_FAT_LFN=y -CONFIG_LED_GPIO_OF=y diff --git a/arch/arm/configs/canon-a1100_defconfig b/arch/arm/configs/canon-a1100_defconfig index 2994bf3a0c..9887c4c292 100644 --- a/arch/arm/configs/canon-a1100_defconfig +++ b/arch/arm/configs/canon-a1100_defconfig @@ -1,9 +1,9 @@ +CONFIG_TEXT_BASE=0x00300000 CONFIG_BUILTIN_DTB=y CONFIG_ARCH_DIGIC=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_PBL_IMAGE=y CONFIG_IMAGE_COMPRESSION_LZ4=y -CONFIG_TEXT_BASE=0x00300000 CONFIG_MALLOC_SIZE=0x200000 CONFIG_PROMPT="canon-a1100 > " CONFIG_GLOB=y diff --git a/arch/arm/configs/cfa10036_defconfig b/arch/arm/configs/cfa10036_defconfig index 2283658364..5a4e2ab45d 100644 --- a/arch/arm/configs/cfa10036_defconfig +++ b/arch/arm/configs/cfa10036_defconfig @@ -1,10 +1,10 @@ +CONFIG_TEXT_BASE=0x43000000 CONFIG_ARCH_MXS=y CONFIG_ARCH_IMX28=y CONFIG_MACH_CFA10036=y CONFIG_AEABI=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x43000000 CONFIG_MALLOC_SIZE=0x800000 CONFIG_HUSH_FANCY_PROMPT=y CONFIG_CMDLINE_EDITING=y @@ -14,7 +14,6 @@ CONFIG_BOOTM_OFTREE=y CONFIG_CONSOLE_ACTIVATE_ALL=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y CONFIG_DEFAULT_ENVIRONMENT_PATH="arch/arm/boards/crystalfontz-cfa10036/env" -CONFIG_DEBUG_INFO=y CONFIG_LONGHELP=y CONFIG_CMD_GO=y CONFIG_CMD_RESET=y diff --git a/arch/arm/configs/chumbyone_defconfig b/arch/arm/configs/chumbyone_defconfig index bb7473fc89..2b38b8cf88 100644 --- a/arch/arm/configs/chumbyone_defconfig +++ b/arch/arm/configs/chumbyone_defconfig @@ -10,7 +10,6 @@ CONFIG_HUSH_FANCY_PROMPT=y CONFIG_CMDLINE_EDITING=y CONFIG_AUTO_COMPLETE=y CONFIG_DEFAULT_ENVIRONMENT_PATH="arch/arm/boards/chumby_falconwing/env" -CONFIG_DEBUG_INFO=y CONFIG_LONGHELP=y CONFIG_CMD_MEMINFO=y CONFIG_CMD_GO=y diff --git a/arch/arm/configs/cupid_defconfig b/arch/arm/configs/cupid_defconfig index 13d38885e0..4e6dd96a97 100644 --- a/arch/arm/configs/cupid_defconfig +++ b/arch/arm/configs/cupid_defconfig @@ -1,3 +1,4 @@ +CONFIG_TEXT_BASE=0x87F00000 CONFIG_ARCH_IMX=y CONFIG_CACHE_L2X0=y CONFIG_MACH_GUF_CUPID=y @@ -5,7 +6,6 @@ CONFIG_AEABI=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_ARM_UNWIND=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x87F00000 CONFIG_MALLOC_SIZE=0x1000000 CONFIG_MALLOC_TLSF=y CONFIG_KALLSYMS=y diff --git a/arch/arm/configs/datamodul-edm-qmx6_defconfig b/arch/arm/configs/datamodul-edm-qmx6_defconfig index 1ef656aa14..b828b38e0f 100644 --- a/arch/arm/configs/datamodul-edm-qmx6_defconfig +++ b/arch/arm/configs/datamodul-edm-qmx6_defconfig @@ -8,7 +8,6 @@ CONFIG_THUMB2_BAREBOX=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_ARM_UNWIND=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x0 CONFIG_MALLOC_SIZE=0x0 CONFIG_MALLOC_TLSF=y CONFIG_RELOCATABLE=y @@ -66,7 +65,6 @@ CONFIG_CMD_OF_PROPERTY=y CONFIG_CMD_OFTREE=y CONFIG_CMD_TIME=y CONFIG_NET=y -CONFIG_NET_RESOLV=y CONFIG_OFDEVICE=y CONFIG_OF_BAREBOX_DRIVERS=y CONFIG_DRIVER_NET_FEC_IMX=y diff --git a/arch/arm/configs/duckbill_defconfig b/arch/arm/configs/duckbill_defconfig index 28ea405fe1..c0a3c1753b 100644 --- a/arch/arm/configs/duckbill_defconfig +++ b/arch/arm/configs/duckbill_defconfig @@ -1,12 +1,10 @@ CONFIG_ARCH_MXS=y CONFIG_ARCH_IMX28=y CONFIG_MACH_DUCKBILL=y -CONFIG_ARCH_MXS_USBLOADER=y CONFIG_AEABI=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_ARM_UNWIND=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x0 CONFIG_MALLOC_SIZE=0x0 CONFIG_MALLOC_TLSF=y CONFIG_KALLSYMS=y @@ -21,7 +19,6 @@ CONFIG_BOOTM_INITRD=y CONFIG_BLSPEC=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y CONFIG_RESET_SOURCE=y -CONFIG_DEBUG_INFO=y CONFIG_CMD_DMESG=y CONFIG_LONGHELP=y CONFIG_CMD_IOMEM=y @@ -46,7 +43,6 @@ CONFIG_CMD_MSLEEP=y CONFIG_CMD_READF=y CONFIG_CMD_SLEEP=y CONFIG_CMD_DHCP=y -CONFIG_CMD_HOST=y CONFIG_CMD_MIITOOL=y CONFIG_CMD_PING=y CONFIG_CMD_TFTP=y diff --git a/arch/arm/configs/eukrea_cpuimx27_defconfig b/arch/arm/configs/eukrea_cpuimx27_defconfig index c9672d3692..cb4a709d42 100644 --- a/arch/arm/configs/eukrea_cpuimx27_defconfig +++ b/arch/arm/configs/eukrea_cpuimx27_defconfig @@ -1,8 +1,8 @@ +CONFIG_TEXT_BASE=0xa7f00000 CONFIG_ARCH_IMX=y CONFIG_MACH_EUKREA_CPUIMX27=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0xa7f00000 CONFIG_MALLOC_SIZE=0x800000 CONFIG_GLOB=y CONFIG_HUSH_FANCY_PROMPT=y diff --git a/arch/arm/configs/freescale-mx21-ads_defconfig b/arch/arm/configs/freescale-mx21-ads_defconfig index e1645bd28b..7dc8cb1426 100644 --- a/arch/arm/configs/freescale-mx21-ads_defconfig +++ b/arch/arm/configs/freescale-mx21-ads_defconfig @@ -1,7 +1,7 @@ +CONFIG_TEXT_BASE=0xc3000000 CONFIG_ARCH_IMX=y CONFIG_MACH_IMX21ADS=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y -CONFIG_TEXT_BASE=0xc3000000 CONFIG_MALLOC_SIZE=0x2000000 CONFIG_CMDLINE_EDITING=y CONFIG_AUTO_COMPLETE=y diff --git a/arch/arm/configs/freescale-mx23-evk_defconfig b/arch/arm/configs/freescale-mx23-evk_defconfig index 3dc8cc46a2..2b12e297b3 100644 --- a/arch/arm/configs/freescale-mx23-evk_defconfig +++ b/arch/arm/configs/freescale-mx23-evk_defconfig @@ -5,7 +5,6 @@ CONFIG_CMDLINE_EDITING=y CONFIG_AUTO_COMPLETE=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y CONFIG_RESET_SOURCE=y -CONFIG_DEBUG_INFO=y CONFIG_LONGHELP=y CONFIG_CMD_RESET=y CONFIG_CMD_PARTITION=y diff --git a/arch/arm/configs/freescale-mx25-3ds_defconfig b/arch/arm/configs/freescale-mx25-3ds_defconfig index 49515f758e..eca608be40 100644 --- a/arch/arm/configs/freescale-mx25-3ds_defconfig +++ b/arch/arm/configs/freescale-mx25-3ds_defconfig @@ -1,10 +1,10 @@ +CONFIG_TEXT_BASE=0x87F00000 CONFIG_ARCH_IMX=y CONFIG_MACH_FREESCALE_MX25_3STACK=y CONFIG_AEABI=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_ARM_UNWIND=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x87F00000 CONFIG_MALLOC_SIZE=0x01000000 CONFIG_MALLOC_TLSF=y CONFIG_KALLSYMS=y diff --git a/arch/arm/configs/freescale-mx27-ads_defconfig b/arch/arm/configs/freescale-mx27-ads_defconfig index e94a47ed6b..ef112d6d5c 100644 --- a/arch/arm/configs/freescale-mx27-ads_defconfig +++ b/arch/arm/configs/freescale-mx27-ads_defconfig @@ -1,7 +1,7 @@ +CONFIG_TEXT_BASE=0xa7f00000 CONFIG_ARCH_IMX=y CONFIG_MACH_IMX27ADS=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y -CONFIG_TEXT_BASE=0xa7f00000 CONFIG_CMDLINE_EDITING=y CONFIG_AUTO_COMPLETE=y CONFIG_BOOTM_SHOW_TYPE=y diff --git a/arch/arm/configs/freescale-mx28-evk_defconfig b/arch/arm/configs/freescale-mx28-evk_defconfig index 6c0bb02891..5f9792317c 100644 --- a/arch/arm/configs/freescale-mx28-evk_defconfig +++ b/arch/arm/configs/freescale-mx28-evk_defconfig @@ -5,7 +5,6 @@ CONFIG_AEABI=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_ARM_UNWIND=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x0 CONFIG_MALLOC_SIZE=0x0 CONFIG_MALLOC_TLSF=y CONFIG_KALLSYMS=y @@ -20,7 +19,6 @@ CONFIG_BOOTM_INITRD=y CONFIG_BLSPEC=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y CONFIG_RESET_SOURCE=y -CONFIG_DEBUG_INFO=y CONFIG_CMD_DMESG=y CONFIG_LONGHELP=y CONFIG_CMD_IOMEM=y @@ -45,7 +43,6 @@ CONFIG_CMD_MSLEEP=y CONFIG_CMD_READF=y CONFIG_CMD_SLEEP=y CONFIG_CMD_DHCP=y -CONFIG_CMD_HOST=y CONFIG_CMD_MIITOOL=y CONFIG_CMD_PING=y CONFIG_CMD_TFTP=y diff --git a/arch/arm/configs/freescale-mx35-3ds_defconfig b/arch/arm/configs/freescale-mx35-3ds_defconfig index 29d2aa8166..5399849a54 100644 --- a/arch/arm/configs/freescale-mx35-3ds_defconfig +++ b/arch/arm/configs/freescale-mx35-3ds_defconfig @@ -1,9 +1,9 @@ +CONFIG_TEXT_BASE=0x87F00000 CONFIG_ARCH_IMX=y CONFIG_MACH_FREESCALE_MX35_3STACK=y CONFIG_AEABI=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_ARM_UNWIND=y -CONFIG_TEXT_BASE=0x87F00000 CONFIG_MALLOC_SIZE=0x1000000 CONFIG_MALLOC_TLSF=y CONFIG_KALLSYMS=y diff --git a/arch/arm/configs/freescale-mx53-smd_defconfig b/arch/arm/configs/freescale-mx53-smd_defconfig index 4677e07099..b292b972a3 100644 --- a/arch/arm/configs/freescale-mx53-smd_defconfig +++ b/arch/arm/configs/freescale-mx53-smd_defconfig @@ -19,7 +19,6 @@ CONFIG_BOOTM_INITRD=y CONFIG_BOOTM_OFTREE=y CONFIG_BOOTM_OFTREE_UIMAGE=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC=y -CONFIG_DEBUG_INFO=y CONFIG_LONGHELP=y CONFIG_CMD_IOMEM=y CONFIG_CMD_MEMINFO=y diff --git a/arch/arm/configs/friendlyarm_mini2440_defconfig b/arch/arm/configs/friendlyarm_mini2440_defconfig index 19a5a4ed3d..21c931ca05 100644 --- a/arch/arm/configs/friendlyarm_mini2440_defconfig +++ b/arch/arm/configs/friendlyarm_mini2440_defconfig @@ -1,16 +1,15 @@ +CONFIG_TEXT_BASE=0x33e00000 CONFIG_ARCH_S3C24xx=y CONFIG_MACH_MINI2440=y CONFIG_MINI2440_VIDEO_N35=y CONFIG_S3C_NAND_BOOT=y CONFIG_AEABI=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y -CONFIG_TEXT_BASE=0x33e00000 CONFIG_PROMPT="mini2440:" CONFIG_GLOB=y CONFIG_CMDLINE_EDITING=y CONFIG_AUTO_COMPLETE=y CONFIG_DEFAULT_ENVIRONMENT_PATH="arch/arm/boards/friendlyarm-mini2440/env" -CONFIG_DEBUG_INFO=y CONFIG_LONGHELP=y CONFIG_CMD_MEMINFO=y CONFIG_CMD_GO=y diff --git a/arch/arm/configs/friendlyarm_mini6410_defconfig b/arch/arm/configs/friendlyarm_mini6410_defconfig index 209e3f8bf6..8beee6f194 100644 --- a/arch/arm/configs/friendlyarm_mini6410_defconfig +++ b/arch/arm/configs/friendlyarm_mini6410_defconfig @@ -8,7 +8,6 @@ CONFIG_AUTO_COMPLETE=y CONFIG_BOOTM_SHOW_TYPE=y CONFIG_PARTITION=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC=y -CONFIG_DEBUG_INFO=y CONFIG_LONGHELP=y CONFIG_CMD_MEMINFO=y CONFIG_CMD_GO=y diff --git a/arch/arm/configs/friendlyarm_tiny6410_defconfig b/arch/arm/configs/friendlyarm_tiny6410_defconfig index 85ae78129f..12dbea1317 100644 --- a/arch/arm/configs/friendlyarm_tiny6410_defconfig +++ b/arch/arm/configs/friendlyarm_tiny6410_defconfig @@ -9,7 +9,6 @@ CONFIG_AUTO_COMPLETE=y CONFIG_BOOTM_SHOW_TYPE=y CONFIG_PARTITION=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC=y -CONFIG_DEBUG_INFO=y CONFIG_LONGHELP=y CONFIG_CMD_MEMINFO=y CONFIG_CMD_GO=y diff --git a/arch/arm/configs/haba_knx_lite_defconfig b/arch/arm/configs/haba_knx_lite_defconfig index 091771580f..233644f24a 100644 --- a/arch/arm/configs/haba_knx_lite_defconfig +++ b/arch/arm/configs/haba_knx_lite_defconfig @@ -1,3 +1,4 @@ +CONFIG_TEXT_BASE=0x27f00000 CONFIG_ARCH_AT91SAM9G20=y CONFIG_MACH_HABA_KNX_LITE=y CONFIG_BAREBOX_MAX_IMAGE_SIZE=0x40000 @@ -5,7 +6,6 @@ CONFIG_AEABI=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_PBL_IMAGE=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x27f00000 CONFIG_EXPERIMENTAL=y CONFIG_MALLOC_TLSF=y CONFIG_PROMPT="HABA-KNX-LITE:" diff --git a/arch/arm/configs/imx233-olinuxino_defconfig b/arch/arm/configs/imx233-olinuxino_defconfig index 47d485b4e9..15d15a0b9d 100644 --- a/arch/arm/configs/imx233-olinuxino_defconfig +++ b/arch/arm/configs/imx233-olinuxino_defconfig @@ -5,7 +5,6 @@ CONFIG_AEABI=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_ARM_UNWIND=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x0 CONFIG_MALLOC_SIZE=0x1000000 CONFIG_MALLOC_TLSF=y CONFIG_KALLSYMS=y @@ -24,7 +23,6 @@ CONFIG_CONSOLE_ACTIVATE_ALL=y CONFIG_DEFAULT_COMPRESSION_LZO=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y CONFIG_RESET_SOURCE=y -CONFIG_DEBUG_INFO=y CONFIG_CMD_DMESG=y CONFIG_LONGHELP=y CONFIG_CMD_IOMEM=y @@ -54,7 +52,6 @@ CONFIG_CMD_MSLEEP=y CONFIG_CMD_READF=y CONFIG_CMD_SLEEP=y CONFIG_CMD_DHCP=y -CONFIG_CMD_HOST=y CONFIG_CMD_PING=y CONFIG_CMD_TFTP=y CONFIG_CMD_ECHO_E=y diff --git a/arch/arm/configs/imx_defconfig b/arch/arm/configs/imx_defconfig index 7d061cd8a8..4edca607f9 100644 --- a/arch/arm/configs/imx_defconfig +++ b/arch/arm/configs/imx_defconfig @@ -9,7 +9,6 @@ CONFIG_AEABI=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_ARM_UNWIND=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x0 CONFIG_MALLOC_SIZE=0x0 CONFIG_MALLOC_TLSF=y CONFIG_KALLSYMS=y diff --git a/arch/arm/configs/imx_v7_defconfig b/arch/arm/configs/imx_v7_defconfig index 2068a6cee4..18c2775687 100644 --- a/arch/arm/configs/imx_v7_defconfig +++ b/arch/arm/configs/imx_v7_defconfig @@ -51,7 +51,6 @@ CONFIG_MMU=y CONFIG_MALLOC_SIZE=0x0 CONFIG_MALLOC_TLSF=y CONFIG_KALLSYMS=y -CONFIG_RELOCATABLE=y CONFIG_HUSH_FANCY_PROMPT=y CONFIG_CMDLINE_EDITING=y CONFIG_AUTO_COMPLETE=y @@ -128,7 +127,6 @@ CONFIG_CMD_OFTREE=y CONFIG_CMD_TIME=y CONFIG_NET=y CONFIG_NET_NETCONSOLE=y -CONFIG_NET_RESOLV=y CONFIG_OF_BAREBOX_DRIVERS=y CONFIG_DRIVER_NET_FEC_IMX=y CONFIG_AT803X_PHY=y diff --git a/arch/arm/configs/lubbock_defconfig b/arch/arm/configs/lubbock_defconfig index a45d723879..a3f988aec9 100644 --- a/arch/arm/configs/lubbock_defconfig +++ b/arch/arm/configs/lubbock_defconfig @@ -24,7 +24,6 @@ CONFIG_CONSOLE_ACTIVATE_ALL=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y CONFIG_DEFAULT_ENVIRONMENT_PATH="arch/arm/boards/lubbock/env" CONFIG_RESET_SOURCE=y -CONFIG_DEBUG_INFO=y CONFIG_CMD_DMESG=y CONFIG_LONGHELP=y CONFIG_CMD_IOMEM=y @@ -48,7 +47,6 @@ CONFIG_CMD_LET=y CONFIG_CMD_MSLEEP=y CONFIG_CMD_SLEEP=y CONFIG_CMD_DHCP=y -CONFIG_CMD_HOST=y CONFIG_CMD_MIITOOL=y CONFIG_CMD_PING=y CONFIG_CMD_TFTP=y diff --git a/arch/arm/configs/mainstone_defconfig b/arch/arm/configs/mainstone_defconfig index c8e4f780a6..b685e7fc8d 100644 --- a/arch/arm/configs/mainstone_defconfig +++ b/arch/arm/configs/mainstone_defconfig @@ -25,7 +25,6 @@ CONFIG_CONSOLE_ACTIVATE_ALL=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y CONFIG_DEFAULT_ENVIRONMENT_PATH="arch/arm/boards/mainstone/env" CONFIG_RESET_SOURCE=y -CONFIG_DEBUG_INFO=y CONFIG_CMD_DMESG=y CONFIG_LONGHELP=y CONFIG_CMD_IOMEM=y @@ -51,7 +50,6 @@ CONFIG_CMD_LET=y CONFIG_CMD_MSLEEP=y CONFIG_CMD_SLEEP=y CONFIG_CMD_DHCP=y -CONFIG_CMD_HOST=y CONFIG_CMD_MIITOOL=y CONFIG_CMD_PING=y CONFIG_CMD_TFTP=y diff --git a/arch/arm/configs/microchip_ksz9477_evb_defconfig b/arch/arm/configs/microchip_ksz9477_evb_defconfig index e7d05bd13b..4189b2c039 100644 --- a/arch/arm/configs/microchip_ksz9477_evb_defconfig +++ b/arch/arm/configs/microchip_ksz9477_evb_defconfig @@ -16,7 +16,6 @@ CONFIG_BOOTM_OFTREE=y CONFIG_BOOTM_OFTREE_UIMAGE=y CONFIG_CONSOLE_ALLOW_COLOR=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y -CONFIG_DEBUG_INFO=y CONFIG_CMD_DMESG=y CONFIG_LONGHELP=y CONFIG_CMD_IOMEM=y diff --git a/arch/arm/configs/mioa701_defconfig b/arch/arm/configs/mioa701_defconfig index 99430112ff..a786d1618e 100644 --- a/arch/arm/configs/mioa701_defconfig +++ b/arch/arm/configs/mioa701_defconfig @@ -24,7 +24,6 @@ CONFIG_BOOTM_OFTREE=y CONFIG_FLEXIBLE_BOOTARGS=y CONFIG_DEFAULT_ENVIRONMENT_PATH="arch/arm/boards/mioa701/env" CONFIG_RESET_SOURCE=y -CONFIG_DEBUG_INFO=y CONFIG_LONGHELP=y CONFIG_CMD_IOMEM=y CONFIG_CMD_MEMINFO=y diff --git a/arch/arm/configs/netx_nxdb500_defconfig b/arch/arm/configs/netx_nxdb500_defconfig index 8755f63e9d..a8b5ffb7ac 100644 --- a/arch/arm/configs/netx_nxdb500_defconfig +++ b/arch/arm/configs/netx_nxdb500_defconfig @@ -1,5 +1,5 @@ -CONFIG_ARCH_NETX=y CONFIG_TEXT_BASE=0x08f80000 +CONFIG_ARCH_NETX=y CONFIG_CMDLINE_EDITING=y CONFIG_AUTO_COMPLETE=y CONFIG_PARTITION=y diff --git a/arch/arm/configs/nhk8815_defconfig b/arch/arm/configs/nhk8815_defconfig index 63c777bace..a29e38fad9 100644 --- a/arch/arm/configs/nhk8815_defconfig +++ b/arch/arm/configs/nhk8815_defconfig @@ -1,6 +1,6 @@ +CONFIG_TEXT_BASE=0x03F80000 CONFIG_ARCH_NOMADIK=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y -CONFIG_TEXT_BASE=0x03F80000 CONFIG_PROMPT="Nomadik:" CONFIG_GLOB=y CONFIG_HUSH_FANCY_PROMPT=y diff --git a/arch/arm/configs/omap3430_sdp3430_per_uart_defconfig b/arch/arm/configs/omap3430_sdp3430_per_uart_defconfig index 1c30933261..d43355cdf1 100644 --- a/arch/arm/configs/omap3430_sdp3430_per_uart_defconfig +++ b/arch/arm/configs/omap3430_sdp3430_per_uart_defconfig @@ -1,12 +1,11 @@ +CONFIG_TEXT_BASE=0x40200000 CONFIG_ARCH_OMAP=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y -CONFIG_TEXT_BASE=0x40200000 CONFIG_PROMPT="X-load 343x> " CONFIG_SHELL_SIMPLE=y # CONFIG_ERRNO_MESSAGES is not set # CONFIG_TIMESTAMP is not set # CONFIG_DEFAULT_ENVIRONMENT is not set -CONFIG_DEBUG_INFO=y # CONFIG_CMD_HELP is not set # CONFIG_CMD_BOOTM is not set CONFIG_CMD_GO=y diff --git a/arch/arm/configs/omap3530_beagle_defconfig b/arch/arm/configs/omap3530_beagle_defconfig index cf79148559..5d09abf615 100644 --- a/arch/arm/configs/omap3530_beagle_defconfig +++ b/arch/arm/configs/omap3530_beagle_defconfig @@ -50,7 +50,6 @@ CONFIG_CMD_MSLEEP=y CONFIG_CMD_READF=y CONFIG_CMD_SLEEP=y CONFIG_CMD_DHCP=y -CONFIG_CMD_HOST=y CONFIG_CMD_MIITOOL=y CONFIG_CMD_PING=y CONFIG_CMD_TFTP=y diff --git a/arch/arm/configs/omap3530_beagle_per_uart_defconfig b/arch/arm/configs/omap3530_beagle_per_uart_defconfig index 9acfe2fc12..e4112b4910 100644 --- a/arch/arm/configs/omap3530_beagle_per_uart_defconfig +++ b/arch/arm/configs/omap3530_beagle_per_uart_defconfig @@ -1,5 +1,5 @@ -CONFIG_ARCH_OMAP=y CONFIG_TEXT_BASE=0x40200000 +CONFIG_ARCH_OMAP=y CONFIG_PROMPT="X-load Beagle>" CONFIG_SHELL_SIMPLE=y # CONFIG_ERRNO_MESSAGES is not set diff --git a/arch/arm/configs/omap3530_beagle_xload_defconfig b/arch/arm/configs/omap3530_beagle_xload_defconfig index 2105c0b9d4..e9484ed852 100644 --- a/arch/arm/configs/omap3530_beagle_xload_defconfig +++ b/arch/arm/configs/omap3530_beagle_xload_defconfig @@ -1,7 +1,6 @@ CONFIG_ARCH_OMAP=y CONFIG_OMAP_BUILD_IFT=y CONFIG_OMAP3_USBBOOT=y -CONFIG_OMAP3_USB_LOADER=y CONFIG_OMAP_MULTI_BOARDS=y CONFIG_MACH_BEAGLE=y CONFIG_THUMB2_BAREBOX=y @@ -37,3 +36,4 @@ CONFIG_MCI_OMAP_HSMMC=y # CONFIG_FS_RAMFS is not set # CONFIG_FS_DEVFS is not set CONFIG_FS_FAT=y +CONFIG_OMAP3_USB_LOADER=y diff --git a/arch/arm/configs/omap3_evm_defconfig b/arch/arm/configs/omap3_evm_defconfig index 7bad6ac582..973acbff68 100644 --- a/arch/arm/configs/omap3_evm_defconfig +++ b/arch/arm/configs/omap3_evm_defconfig @@ -1,7 +1,7 @@ +CONFIG_TEXT_BASE=0x40200000 CONFIG_ARCH_OMAP=y CONFIG_MACH_OMAP3EVM=y CONFIG_AEABI=y -CONFIG_TEXT_BASE=0x40200000 CONFIG_PROMPT="OMAP3_EVM> " CONFIG_SHELL_SIMPLE=y # CONFIG_ERRNO_MESSAGES is not set diff --git a/arch/arm/configs/omap_defconfig b/arch/arm/configs/omap_defconfig index 8615283453..ba90158252 100644 --- a/arch/arm/configs/omap_defconfig +++ b/arch/arm/configs/omap_defconfig @@ -34,7 +34,6 @@ CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y CONFIG_STATE=y CONFIG_BOOTCHOOSER=y CONFIG_RESET_SOURCE=y -CONFIG_DEBUG_INFO=y CONFIG_LONGHELP=y CONFIG_CMD_IOMEM=y CONFIG_CMD_MEMINFO=y @@ -140,7 +139,6 @@ CONFIG_WATCHDOG_OMAP=y CONFIG_GPIO_GENERIC_PLATFORM=y CONFIG_PINCTRL_SINGLE=y CONFIG_BUS_OMAP_GPMC=y -CONFIG_TI_SYSC=y CONFIG_FS_EXT4=y CONFIG_FS_TFTP=y CONFIG_FS_NFS=y diff --git a/arch/arm/configs/panda_defconfig b/arch/arm/configs/panda_defconfig index f4ff5e2cc3..9c1efe168a 100644 --- a/arch/arm/configs/panda_defconfig +++ b/arch/arm/configs/panda_defconfig @@ -1,3 +1,4 @@ +CONFIG_TEXT_BASE=0x8f000000 CONFIG_ARCH_OMAP=y CONFIG_MACH_PANDA=y CONFIG_THUMB2_BAREBOX=y @@ -5,7 +6,6 @@ CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_ARM_UNWIND=y CONFIG_PBL_IMAGE=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x8f000000 CONFIG_MALLOC_SIZE=0x2000000 CONFIG_MALLOC_TLSF=y CONFIG_KALLSYMS=y @@ -61,7 +61,6 @@ CONFIG_CMD_LED_TRIGGER=y CONFIG_CMD_TIME=y CONFIG_NET=y CONFIG_NET_NETCONSOLE=y -CONFIG_NET_RESOLV=y CONFIG_DRIVER_SERIAL_NS16550=y CONFIG_DRIVER_SERIAL_NS16550_OMAP_EXTENSIONS=y CONFIG_NET_USB=y diff --git a/arch/arm/configs/panda_xload_defconfig b/arch/arm/configs/panda_xload_defconfig index 935dfb5955..e3d87c42dd 100644 --- a/arch/arm/configs/panda_xload_defconfig +++ b/arch/arm/configs/panda_xload_defconfig @@ -1,10 +1,10 @@ +CONFIG_TEXT_BASE=0x40300000 CONFIG_ARCH_OMAP=y # CONFIG_OMAP_GPMC is not set CONFIG_OMAP_BUILD_IFT=y CONFIG_MACH_PANDA=y CONFIG_THUMB2_BAREBOX=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x40300000 CONFIG_MALLOC_SIZE=0x2000000 CONFIG_PROMPT="barebox> " CONFIG_SHELL_NONE=y diff --git a/arch/arm/configs/phytec-phycard-omap3-xload_defconfig b/arch/arm/configs/phytec-phycard-omap3-xload_defconfig index 0673fde4e0..6eab808f7c 100644 --- a/arch/arm/configs/phytec-phycard-omap3-xload_defconfig +++ b/arch/arm/configs/phytec-phycard-omap3-xload_defconfig @@ -1,3 +1,4 @@ +CONFIG_TEXT_BASE=0x40200000 CONFIG_ARCH_OMAP=y CONFIG_BAREBOX_MAX_IMAGE_SIZE=0x0000f000 CONFIG_OMAP_BUILD_IFT=y @@ -5,7 +6,6 @@ CONFIG_MACH_PCAAL1=y CONFIG_THUMB2_BAREBOX=y # CONFIG_ARM_EXCEPTIONS is not set CONFIG_ENVIRONMENT_VARIABLES=y -CONFIG_TEXT_BASE=0x40200000 CONFIG_BAREBOX_MAX_BARE_INIT_SIZE=0x0000f000 CONFIG_STACK_SIZE=0xc00 CONFIG_MALLOC_SIZE=0x1000000 diff --git a/arch/arm/configs/phytec-phycard-omap3_defconfig b/arch/arm/configs/phytec-phycard-omap3_defconfig index bfb7a52f07..6cc1c1e80b 100644 --- a/arch/arm/configs/phytec-phycard-omap3_defconfig +++ b/arch/arm/configs/phytec-phycard-omap3_defconfig @@ -1,7 +1,7 @@ +CONFIG_TEXT_BASE=0x85000000 CONFIG_ARCH_OMAP=y CONFIG_MACH_PCAAL1=y CONFIG_AEABI=y -CONFIG_TEXT_BASE=0x85000000 CONFIG_MALLOC_SIZE=0x1000000 CONFIG_EXPERIMENTAL=y CONFIG_PROMPT="phyCARD-A-L1 >" diff --git a/arch/arm/configs/phytec-phycard-omap4-xload_defconfig b/arch/arm/configs/phytec-phycard-omap4-xload_defconfig index 3bd06c7f49..af3ada6343 100644 --- a/arch/arm/configs/phytec-phycard-omap4-xload_defconfig +++ b/arch/arm/configs/phytec-phycard-omap4-xload_defconfig @@ -1,10 +1,10 @@ +CONFIG_TEXT_BASE=0x40300000 CONFIG_ARCH_OMAP=y CONFIG_OMAP_BUILD_IFT=y CONFIG_MACH_PCAAXL2=y CONFIG_THUMB2_BAREBOX=y # CONFIG_ARM_EXCEPTIONS is not set CONFIG_MMU=y -CONFIG_TEXT_BASE=0x40300000 CONFIG_MALLOC_SIZE=0x2000000 CONFIG_MALLOC_DUMMY=y CONFIG_PROMPT="barebox> " diff --git a/arch/arm/configs/phytec-phycard-omap4_defconfig b/arch/arm/configs/phytec-phycard-omap4_defconfig index 9039307c9d..2f3970725d 100644 --- a/arch/arm/configs/phytec-phycard-omap4_defconfig +++ b/arch/arm/configs/phytec-phycard-omap4_defconfig @@ -1,9 +1,9 @@ +CONFIG_TEXT_BASE=0x8f000000 CONFIG_ARCH_OMAP=y CONFIG_MACH_PCAAXL2=y CONFIG_AEABI=y CONFIG_ARM_UNWIND=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x8f000000 CONFIG_MALLOC_SIZE=0x2000000 CONFIG_KALLSYMS=y CONFIG_PROMPT="barebox> " diff --git a/arch/arm/configs/phytec-phycore-imx31_defconfig b/arch/arm/configs/phytec-phycore-imx31_defconfig index 858dc3b98e..a6bc28c4c7 100644 --- a/arch/arm/configs/phytec-phycore-imx31_defconfig +++ b/arch/arm/configs/phytec-phycore-imx31_defconfig @@ -62,7 +62,6 @@ CONFIG_CMD_BAREBOX_UPDATE=y CONFIG_CMD_TIME=y CONFIG_NET=y CONFIG_NET_NETCONSOLE=y -CONFIG_NET_RESOLV=y CONFIG_DRIVER_NET_SMC911X=y CONFIG_NET_USB=y CONFIG_NET_USB_ASIX=y diff --git a/arch/arm/configs/phytec-phycore-imx35_defconfig b/arch/arm/configs/phytec-phycore-imx35_defconfig index b1f8c39b6c..2ed2cf9ef3 100644 --- a/arch/arm/configs/phytec-phycore-imx35_defconfig +++ b/arch/arm/configs/phytec-phycore-imx35_defconfig @@ -1,3 +1,4 @@ +CONFIG_TEXT_BASE=0x87E00000 CONFIG_ARCH_IMX=y CONFIG_CACHE_L2X0=y CONFIG_ARCH_IMX_EXTERNAL_BOOT_NAND=y @@ -8,7 +9,6 @@ CONFIG_AEABI=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_ARM_UNWIND=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x87E00000 CONFIG_MALLOC_SIZE=0x1000000 CONFIG_MALLOC_TLSF=y CONFIG_KALLSYMS=y diff --git a/arch/arm/configs/phytec-phycore-omap4460-xload-mmc_defconfig b/arch/arm/configs/phytec-phycore-omap4460-xload-mmc_defconfig index 27bfbff814..61f85c837f 100644 --- a/arch/arm/configs/phytec-phycore-omap4460-xload-mmc_defconfig +++ b/arch/arm/configs/phytec-phycore-omap4460-xload-mmc_defconfig @@ -1,3 +1,4 @@ +CONFIG_TEXT_BASE=0x40300000 CONFIG_ARCH_OMAP=y CONFIG_BAREBOX_MAX_IMAGE_SIZE=0xC000 CONFIG_OMAP_BUILD_IFT=y @@ -6,7 +7,6 @@ CONFIG_THUMB2_BAREBOX=y # CONFIG_ARM_EXCEPTIONS is not set # CONFIG_MEMINFO is not set CONFIG_MMU=y -CONFIG_TEXT_BASE=0x40300000 CONFIG_MALLOC_SIZE=0x2000000 CONFIG_MALLOC_DUMMY=y CONFIG_PROMPT="barebox> " diff --git a/arch/arm/configs/phytec-phycore-omap4460-xload-nand_defconfig b/arch/arm/configs/phytec-phycore-omap4460-xload-nand_defconfig index 46e65b9a4d..77f124b33f 100644 --- a/arch/arm/configs/phytec-phycore-omap4460-xload-nand_defconfig +++ b/arch/arm/configs/phytec-phycore-omap4460-xload-nand_defconfig @@ -1,3 +1,4 @@ +CONFIG_TEXT_BASE=0x40300000 CONFIG_ARCH_OMAP=y CONFIG_BAREBOX_MAX_IMAGE_SIZE=0xC000 CONFIG_OMAP_BUILD_IFT=y @@ -6,7 +7,6 @@ CONFIG_THUMB2_BAREBOX=y # CONFIG_ARM_EXCEPTIONS is not set # CONFIG_MEMINFO is not set CONFIG_MMU=y -CONFIG_TEXT_BASE=0x40300000 CONFIG_MALLOC_SIZE=0x2000000 CONFIG_MALLOC_DUMMY=y CONFIG_PROMPT="barebox> " diff --git a/arch/arm/configs/phytec-phycore-omap4460_defconfig b/arch/arm/configs/phytec-phycore-omap4460_defconfig index 09a07b05b3..e65a76570b 100644 --- a/arch/arm/configs/phytec-phycore-omap4460_defconfig +++ b/arch/arm/configs/phytec-phycore-omap4460_defconfig @@ -1,10 +1,10 @@ +CONFIG_TEXT_BASE=0x8f000000 CONFIG_ARCH_OMAP=y CONFIG_BAREBOX_MAX_IMAGE_SIZE=0x80000 CONFIG_MACH_PCM049=y CONFIG_AEABI=y CONFIG_ARM_UNWIND=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x8f000000 CONFIG_MALLOC_SIZE=0x2000000 CONFIG_KALLSYMS=y CONFIG_PROMPT="barebox> " diff --git a/arch/arm/configs/phytec-phycore-pxa270_defconfig b/arch/arm/configs/phytec-phycore-pxa270_defconfig index ed1116940b..370902c3c1 100644 --- a/arch/arm/configs/phytec-phycore-pxa270_defconfig +++ b/arch/arm/configs/phytec-phycore-pxa270_defconfig @@ -19,7 +19,6 @@ CONFIG_BOOTM_OFTREE_UIMAGE=y CONFIG_PARTITION=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y CONFIG_DEFAULT_ENVIRONMENT_PATH="arch/arm/boards/phytec-phycore-pxa270/env" -CONFIG_DEBUG_INFO=y CONFIG_LONGHELP=y CONFIG_CMD_IOMEM=y CONFIG_CMD_MEMINFO=y diff --git a/arch/arm/configs/pm9263_defconfig b/arch/arm/configs/pm9263_defconfig index 254d2b96ba..b0eaf9f3e0 100644 --- a/arch/arm/configs/pm9263_defconfig +++ b/arch/arm/configs/pm9263_defconfig @@ -1,5 +1,4 @@ CONFIG_ARCH_AT91SAM9263=y -CONFIG_MACH_PM9263=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_GLOB=y CONFIG_PROMPT_HUSH_PS2="y" diff --git a/arch/arm/configs/qemu_virt64_defconfig b/arch/arm/configs/qemu_virt64_defconfig index 9b7e11ff73..6f9bb9591c 100644 --- a/arch/arm/configs/qemu_virt64_defconfig +++ b/arch/arm/configs/qemu_virt64_defconfig @@ -11,10 +11,8 @@ CONFIG_AUTO_COMPLETE=y CONFIG_MENU=y CONFIG_PARTITION=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC=y -CONFIG_DEBUG_INFO=y CONFIG_LONGHELP=y CONFIG_CMD_MEMINFO=y -# CONFIG_CMD_BOOTU is not set CONFIG_CMD_GO=y CONFIG_CMD_LOADB=y CONFIG_CMD_RESET=y diff --git a/arch/arm/configs/rk3188_defconfig b/arch/arm/configs/rk3188_defconfig index 78a47a308a..318cd9de42 100644 --- a/arch/arm/configs/rk3188_defconfig +++ b/arch/arm/configs/rk3188_defconfig @@ -6,7 +6,6 @@ CONFIG_ARM_BOARD_APPEND_ATAG=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_ARM_UNWIND=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x0 CONFIG_MALLOC_SIZE=0x0 CONFIG_MALLOC_TLSF=y CONFIG_KALLSYMS=y @@ -54,7 +53,6 @@ CONFIG_CMD_MSLEEP=y CONFIG_CMD_READF=y CONFIG_CMD_SLEEP=y CONFIG_CMD_DHCP=y -CONFIG_CMD_HOST=y CONFIG_CMD_MIITOOL=y CONFIG_CMD_PING=y CONFIG_CMD_TFTP=y diff --git a/arch/arm/configs/rk3288_defconfig b/arch/arm/configs/rk3288_defconfig index 15e6c15a03..156e07fcb1 100644 --- a/arch/arm/configs/rk3288_defconfig +++ b/arch/arm/configs/rk3288_defconfig @@ -24,9 +24,7 @@ CONFIG_CONSOLE_ACTIVATE_NONE=y CONFIG_DEFAULT_COMPRESSION_LZO=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y CONFIG_RESET_SOURCE=y -CONFIG_DEBUG_INFO=y CONFIG_DEBUG_LL=y -CONFIG_DEBUG_ROCKCHIP_UART_PORT=2 CONFIG_CMD_DMESG=y CONFIG_LONGHELP=y CONFIG_CMD_IOMEM=y @@ -56,7 +54,6 @@ CONFIG_CMD_MSLEEP=y CONFIG_CMD_READF=y CONFIG_CMD_SLEEP=y CONFIG_CMD_DHCP=y -CONFIG_CMD_HOST=y CONFIG_CMD_MIITOOL=y CONFIG_CMD_PING=y CONFIG_CMD_TFTP=y diff --git a/arch/arm/configs/sama5d3_xplained_defconfig b/arch/arm/configs/sama5d3_xplained_defconfig index c02ad3cd01..498d5af4b7 100644 --- a/arch/arm/configs/sama5d3_xplained_defconfig +++ b/arch/arm/configs/sama5d3_xplained_defconfig @@ -1,3 +1,4 @@ +CONFIG_TEXT_BASE=0x26f00000 CONFIG_ARCH_SAMA5D3=y CONFIG_MACH_SAMA5D3_XPLAINED=y CONFIG_BAREBOX_MAX_IMAGE_SIZE=0x60000 @@ -5,7 +6,6 @@ CONFIG_AEABI=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_PBL_IMAGE=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x26f00000 CONFIG_MALLOC_SIZE=0xA00000 CONFIG_EXPERIMENTAL=y CONFIG_MALLOC_TLSF=y diff --git a/arch/arm/configs/sama5d3xek_defconfig b/arch/arm/configs/sama5d3xek_defconfig index 550691c91e..54784cc7ad 100644 --- a/arch/arm/configs/sama5d3xek_defconfig +++ b/arch/arm/configs/sama5d3xek_defconfig @@ -1,10 +1,10 @@ +CONFIG_TEXT_BASE=0x26f00000 CONFIG_ARCH_SAMA5D3=y CONFIG_BAREBOX_MAX_IMAGE_SIZE=0x60000 CONFIG_AEABI=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_PBL_IMAGE=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x26f00000 CONFIG_MALLOC_SIZE=0xA00000 CONFIG_EXPERIMENTAL=y CONFIG_MALLOC_TLSF=y diff --git a/arch/arm/configs/sama5d4_xplained_defconfig b/arch/arm/configs/sama5d4_xplained_defconfig index 648c813c49..2f232eeac7 100644 --- a/arch/arm/configs/sama5d4_xplained_defconfig +++ b/arch/arm/configs/sama5d4_xplained_defconfig @@ -1,3 +1,4 @@ +CONFIG_TEXT_BASE=0x26f00000 CONFIG_ARCH_SAMA5D4=y CONFIG_MACH_SAMA5D4_XPLAINED=y CONFIG_BAREBOX_MAX_IMAGE_SIZE=0x60000 @@ -5,7 +6,6 @@ CONFIG_AEABI=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_PBL_IMAGE=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x26f00000 CONFIG_MALLOC_SIZE=0xA00000 CONFIG_EXPERIMENTAL=y CONFIG_MALLOC_TLSF=y @@ -22,7 +22,6 @@ CONFIG_BOOTM_OFTREE_UIMAGE=y CONFIG_CONSOLE_ACTIVATE_ALL=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y CONFIG_DEFAULT_ENVIRONMENT_PATH="arch/arm/boards/sama5d4_xplained/env" -CONFIG_DEBUG_INFO=y # CONFIG_CMD_ARM_CPUINFO is not set CONFIG_LONGHELP=y CONFIG_CMD_MEMINFO=y diff --git a/arch/arm/configs/sama5d4ek_defconfig b/arch/arm/configs/sama5d4ek_defconfig index 2aa38baf87..04f080af0a 100644 --- a/arch/arm/configs/sama5d4ek_defconfig +++ b/arch/arm/configs/sama5d4ek_defconfig @@ -1,10 +1,10 @@ +CONFIG_TEXT_BASE=0x26f00000 CONFIG_ARCH_SAMA5D4=y CONFIG_BAREBOX_MAX_IMAGE_SIZE=0x60000 CONFIG_AEABI=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_PBL_IMAGE=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x26f00000 CONFIG_MALLOC_SIZE=0xA00000 CONFIG_EXPERIMENTAL=y CONFIG_MALLOC_TLSF=y @@ -21,7 +21,6 @@ CONFIG_BOOTM_OFTREE_UIMAGE=y CONFIG_CONSOLE_ACTIVATE_ALL=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y CONFIG_DEFAULT_ENVIRONMENT_PATH="arch/arm/boards/sama5d4ek/env" -CONFIG_DEBUG_INFO=y # CONFIG_CMD_ARM_CPUINFO is not set CONFIG_LONGHELP=y CONFIG_CMD_MEMINFO=y diff --git a/arch/arm/configs/socfpga-arria10_defconfig b/arch/arm/configs/socfpga-arria10_defconfig index 53e932d64b..ae420c1dd2 100644 --- a/arch/arm/configs/socfpga-arria10_defconfig +++ b/arch/arm/configs/socfpga-arria10_defconfig @@ -3,7 +3,6 @@ CONFIG_MACH_SOCFPGA_REFLEX_ACHILLES=y CONFIG_AEABI=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_ARM_UNWIND=y -CONFIG_TEXT_BASE=0xffe00000 CONFIG_MALLOC_SIZE=0x0 CONFIG_MALLOC_TLSF=y CONFIG_KALLSYMS=y @@ -21,7 +20,6 @@ CONFIG_DEFAULT_COMPRESSION_LZO=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y CONFIG_POLLER=y CONFIG_STATE=y -CONFIG_DEBUG_INFO=y CONFIG_LONGHELP=y CONFIG_CMD_IOMEM=y CONFIG_CMD_MEMINFO=y @@ -65,7 +63,6 @@ CONFIG_CMD_TIME=y CONFIG_CMD_STATE=y CONFIG_NET=y CONFIG_NET_NETCONSOLE=y -CONFIG_NET_RESOLV=y CONFIG_OF_BAREBOX_DRIVERS=y CONFIG_OF_BAREBOX_ENV_IN_FS=y CONFIG_DRIVER_SERIAL_NS16550=y diff --git a/arch/arm/configs/socfpga_defconfig b/arch/arm/configs/socfpga_defconfig index d9688ca29c..2509ad0b42 100644 --- a/arch/arm/configs/socfpga_defconfig +++ b/arch/arm/configs/socfpga_defconfig @@ -68,7 +68,6 @@ CONFIG_CMD_OFTREE=y CONFIG_CMD_TIME=y CONFIG_NET=y CONFIG_NET_NETCONSOLE=y -CONFIG_NET_RESOLV=y CONFIG_OF_BAREBOX_DRIVERS=y CONFIG_OF_BAREBOX_ENV_IN_FS=y CONFIG_DRIVER_SERIAL_NS16550=y diff --git a/arch/arm/configs/stm32mp1_defconfig b/arch/arm/configs/stm32mp_defconfig index 2922ce3632..9f30bb1caa 100644 --- a/arch/arm/configs/stm32mp1_defconfig +++ b/arch/arm/configs/stm32mp_defconfig @@ -1,4 +1,4 @@ -CONFIG_ARCH_STM32MP1=y +CONFIG_ARCH_STM32MP=y CONFIG_MACH_STM32MP157C_DK2=y CONFIG_THUMB2_BAREBOX=y CONFIG_ARM_BOARD_APPEND_ATAG=y @@ -25,7 +25,6 @@ CONFIG_CONSOLE_ALLOW_COLOR=y CONFIG_PBL_CONSOLE=y CONFIG_PARTITION=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y -CONFIG_POLLER=y CONFIG_RESET_SOURCE=y CONFIG_DEBUG_INITCALLS=y CONFIG_CMD_DMESG=y @@ -71,6 +70,9 @@ CONFIG_CMD_MM=y CONFIG_CMD_CLK=y CONFIG_CMD_DETECT=y CONFIG_CMD_FLASH=y +CONFIG_CMD_GPIO=y +CONFIG_CMD_LED=y +CONFIG_CMD_WD=y CONFIG_CMD_BAREBOX_UPDATE=y CONFIG_CMD_OF_NODE=y CONFIG_CMD_OF_PROPERTY=y @@ -80,13 +82,19 @@ CONFIG_NET=y CONFIG_NET_NETCONSOLE=y CONFIG_OFDEVICE=y CONFIG_OF_BAREBOX_DRIVERS=y -CONFIG_DRIVER_SERIAL_STM32=y CONFIG_DRIVER_NET_DESIGNWARE=y CONFIG_DRIVER_NET_DESIGNWARE_GENERIC=y CONFIG_AT803X_PHY=y CONFIG_MICREL_PHY=y # CONFIG_SPI is not set -# CONFIG_PINCTRL is not set +CONFIG_LED=y +CONFIG_LED_GPIO=y +CONFIG_LED_GPIO_OF=y +CONFIG_WATCHDOG=y +CONFIG_WATCHDOG_POLLER=y +CONFIG_STM32_IWDG_WATCHDOG=y +CONFIG_REGULATOR=y +CONFIG_REGULATOR_FIXED=y CONFIG_FS_EXT4=y CONFIG_FS_TFTP=y CONFIG_FS_NFS=y @@ -94,5 +102,4 @@ CONFIG_FS_FAT=y CONFIG_FS_FAT_WRITE=y CONFIG_FS_FAT_LFN=y CONFIG_ZLIB=y -CONFIG_LZO_DECOMPRESS=y CONFIG_CRC8=y diff --git a/arch/arm/configs/tqma53_defconfig b/arch/arm/configs/tqma53_defconfig index f2025c8326..3b0dc306be 100644 --- a/arch/arm/configs/tqma53_defconfig +++ b/arch/arm/configs/tqma53_defconfig @@ -7,7 +7,6 @@ CONFIG_AEABI=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_ARM_UNWIND=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x0 CONFIG_MALLOC_SIZE=0x0 CONFIG_MALLOC_TLSF=y CONFIG_KALLSYMS=y @@ -23,7 +22,6 @@ CONFIG_BOOTM_OFTREE_UIMAGE=y CONFIG_BLSPEC=y CONFIG_CONSOLE_ACTIVATE_NONE=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y -CONFIG_DEBUG_INFO=y CONFIG_LONGHELP=y CONFIG_CMD_IOMEM=y CONFIG_CMD_MEMINFO=y diff --git a/arch/arm/configs/tx28stk5_defconfig b/arch/arm/configs/tx28stk5_defconfig index 504501524a..c712975fd9 100644 --- a/arch/arm/configs/tx28stk5_defconfig +++ b/arch/arm/configs/tx28stk5_defconfig @@ -4,7 +4,6 @@ CONFIG_AEABI=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_ARM_UNWIND=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x0 CONFIG_MALLOC_SIZE=0x0 CONFIG_MALLOC_TLSF=y CONFIG_KALLSYMS=y @@ -24,7 +23,6 @@ CONFIG_PBL_CONSOLE=y CONFIG_DEFAULT_COMPRESSION_LZO=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y CONFIG_RESET_SOURCE=y -CONFIG_DEBUG_INFO=y CONFIG_DEBUG_LL=y CONFIG_CMD_DMESG=y CONFIG_LONGHELP=y @@ -54,7 +52,6 @@ CONFIG_CMD_MSLEEP=y CONFIG_CMD_READF=y CONFIG_CMD_SLEEP=y CONFIG_CMD_DHCP=y -CONFIG_CMD_HOST=y CONFIG_CMD_MIITOOL=y CONFIG_CMD_PING=y CONFIG_CMD_TFTP=y diff --git a/arch/arm/configs/tx53stk5_defconfig b/arch/arm/configs/tx53stk5_defconfig index 8a9390e89f..7c3c51defe 100644 --- a/arch/arm/configs/tx53stk5_defconfig +++ b/arch/arm/configs/tx53stk5_defconfig @@ -1,14 +1,10 @@ +CONFIG_TEXT_BASE=0x87f00000 CONFIG_ARCH_IMX=y -CONFIG_MACH_TX53=y -CONFIG_TX53_REV_XX30=y CONFIG_IMX_IIM=y -CONFIG_THUMB2_BAREBOX=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y -CONFIG_ARM_UNWIND=y CONFIG_PBL_IMAGE=y CONFIG_IMAGE_COMPRESSION_GZIP=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x87f00000 CONFIG_MALLOC_SIZE=0x2000000 CONFIG_MALLOC_TLSF=y CONFIG_KALLSYMS=y @@ -53,7 +49,6 @@ CONFIG_CMD_GPIO=y CONFIG_CMD_LED=y CONFIG_CMD_TIME=y CONFIG_NET=y -CONFIG_DRIVER_NET_FEC_IMX=y CONFIG_MTD=y CONFIG_NAND=y CONFIG_NAND_IMX=y diff --git a/arch/arm/configs/versatilepb_arm1176_defconfig b/arch/arm/configs/versatilepb_arm1176_defconfig index f51689fa27..284fbd1150 100644 --- a/arch/arm/configs/versatilepb_arm1176_defconfig +++ b/arch/arm/configs/versatilepb_arm1176_defconfig @@ -62,7 +62,6 @@ CONFIG_CMD_OFTREE=y CONFIG_NET=y CONFIG_NET_NFS=y CONFIG_NET_NETCONSOLE=y -CONFIG_NET_RESOLV=y CONFIG_OFDEVICE=y CONFIG_OF_BAREBOX_DRIVERS=y CONFIG_SERIAL_AMBA_PL011=y diff --git a/arch/arm/configs/versatilepb_defconfig b/arch/arm/configs/versatilepb_defconfig index 56425db961..61b9ff1c38 100644 --- a/arch/arm/configs/versatilepb_defconfig +++ b/arch/arm/configs/versatilepb_defconfig @@ -60,7 +60,6 @@ CONFIG_CMD_OFTREE=y CONFIG_NET=y CONFIG_NET_NFS=y CONFIG_NET_NETCONSOLE=y -CONFIG_NET_RESOLV=y CONFIG_OFDEVICE=y CONFIG_OF_BAREBOX_DRIVERS=y CONFIG_SERIAL_AMBA_PL011=y diff --git a/arch/arm/configs/vexpress_defconfig b/arch/arm/configs/vexpress_defconfig index f6a57de75c..149ba17321 100644 --- a/arch/arm/configs/vexpress_defconfig +++ b/arch/arm/configs/vexpress_defconfig @@ -46,7 +46,6 @@ CONFIG_CMD_OFTREE=y CONFIG_NET=y CONFIG_NET_NFS=y CONFIG_NET_NETCONSOLE=y -CONFIG_NET_RESOLV=y CONFIG_OF_BAREBOX_DRIVERS=y CONFIG_SERIAL_AMBA_PL011=y CONFIG_DRIVER_NET_SMC91111=y diff --git a/arch/arm/configs/vincell_defconfig b/arch/arm/configs/vincell_defconfig index 1480a942b0..a09161df44 100644 --- a/arch/arm/configs/vincell_defconfig +++ b/arch/arm/configs/vincell_defconfig @@ -8,7 +8,6 @@ CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_ARM_UNWIND=y CONFIG_IMAGE_COMPRESSION_XZKERN=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x0 CONFIG_MALLOC_SIZE=0x0 CONFIG_MALLOC_TLSF=y CONFIG_RELOCATABLE=y @@ -77,7 +76,6 @@ CONFIG_CMD_TIME=y CONFIG_CMD_STATE=y CONFIG_NET=y CONFIG_NET_NETCONSOLE=y -CONFIG_NET_RESOLV=y CONFIG_OFDEVICE=y CONFIG_OF_BAREBOX_DRIVERS=y CONFIG_DRIVER_NET_FEC_IMX=y diff --git a/arch/arm/configs/virt2real_defconfig b/arch/arm/configs/virt2real_defconfig index b1b00c347e..4fb61cbd0c 100644 --- a/arch/arm/configs/virt2real_defconfig +++ b/arch/arm/configs/virt2real_defconfig @@ -1,8 +1,8 @@ +CONFIG_TEXT_BASE=0x82300000 CONFIG_BUILTIN_DTB=y CONFIG_ARCH_DAVINCI=y CONFIG_AEABI=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y -CONFIG_TEXT_BASE=0x82300000 CONFIG_MALLOC_SIZE=0x200000 CONFIG_MALLOC_TLSF=y CONFIG_PROMPT="virt2real: " diff --git a/arch/arm/configs/zedboard_defconfig b/arch/arm/configs/zedboard_defconfig index bcd604f341..cc03368751 100644 --- a/arch/arm/configs/zedboard_defconfig +++ b/arch/arm/configs/zedboard_defconfig @@ -17,7 +17,6 @@ CONFIG_BOOTM_INITRD=y CONFIG_BOOTM_OFTREE=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y CONFIG_DEFAULT_ENVIRONMENT_PATH="arch/arm/boards/avnet-zedboard/env" -CONFIG_DEBUG_INFO=y CONFIG_DEBUG_LL=y CONFIG_LONGHELP=y CONFIG_CMD_MEMINFO=y diff --git a/arch/arm/configs/zii_vf610_dev_defconfig b/arch/arm/configs/zii_vf610_dev_defconfig index ee77f40002..c9aa60c33e 100644 --- a/arch/arm/configs/zii_vf610_dev_defconfig +++ b/arch/arm/configs/zii_vf610_dev_defconfig @@ -5,13 +5,11 @@ CONFIG_THUMB2_BAREBOX=y CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y CONFIG_ARM_UNWIND=y CONFIG_MMU=y -CONFIG_TEXT_BASE=0x0 CONFIG_MALLOC_SIZE=0x0 CONFIG_MALLOC_TLSF=y CONFIG_KALLSYMS=y CONFIG_RELOCATABLE=y CONFIG_HUSH_FANCY_PROMPT=y -CONFIG_CMDLINE_EDITING=y CONFIG_AUTO_COMPLETE=y CONFIG_MENU=y CONFIG_BOOTM_SHOW_TYPE=y @@ -84,8 +82,6 @@ CONFIG_CMD_OFTREE=y CONFIG_CMD_TIME=y CONFIG_NET=y CONFIG_NET_NETCONSOLE=y -CONFIG_NET_RESOLV=y -CONFIG_OFDEVICE=y CONFIG_OF_BAREBOX_DRIVERS=y CONFIG_AIODEV=y CONFIG_LM75=y diff --git a/arch/arm/configs/zylonite310_defconfig b/arch/arm/configs/zylonite310_defconfig index f1cd92af84..a8ac92040a 100644 --- a/arch/arm/configs/zylonite310_defconfig +++ b/arch/arm/configs/zylonite310_defconfig @@ -26,7 +26,6 @@ CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y CONFIG_DEFAULT_ENVIRONMENT_PATH="arch/arm/boards/zylonite/env" CONFIG_RESET_SOURCE=y CONFIG_DEFAULT_LOGLEVEL=8 -CONFIG_DEBUG_INFO=y CONFIG_CMD_DMESG=y CONFIG_LONGHELP=y CONFIG_CMD_IOMEM=y @@ -51,7 +50,6 @@ CONFIG_CMD_LET=y CONFIG_CMD_MSLEEP=y CONFIG_CMD_SLEEP=y CONFIG_CMD_DHCP=y -CONFIG_CMD_HOST=y CONFIG_CMD_MIITOOL=y CONFIG_CMD_PING=y CONFIG_CMD_TFTP=y diff --git a/arch/arm/configs/zynqmp_defconfig b/arch/arm/configs/zynqmp_defconfig index a358a5046e..4dea9647fe 100644 --- a/arch/arm/configs/zynqmp_defconfig +++ b/arch/arm/configs/zynqmp_defconfig @@ -33,7 +33,6 @@ CONFIG_CMD_TIMEOUT=y CONFIG_CMD_CLK=y CONFIG_CMD_OFTREE=y CONFIG_CMD_TIME=y -CONFIG_DRIVER_NET_MACB=y CONFIG_DRIVER_SERIAL_CADENCE=y # CONFIG_SPI is not set CONFIG_DIGEST=y diff --git a/arch/arm/cpu/common.c b/arch/arm/cpu/common.c index 821cafbf26..4a2b6734db 100644 --- a/arch/arm/cpu/common.c +++ b/arch/arm/cpu/common.c @@ -46,6 +46,19 @@ void sync_caches_for_execution(void) #define R_ARM_RELATIVE 23 #define R_AARCH64_RELATIVE 1027 +void pbl_barebox_break(void) +{ + __asm__ __volatile__ ( +#ifdef CONFIG_PBL_BREAK + "bkpt #17\n" + "nop\n" +#else + "nop\n" + "nop\n" +#endif + ); +} + /* * relocate binary to the currently running address */ diff --git a/arch/arm/cpu/psci.c b/arch/arm/cpu/psci.c index 5c662cd0b9..a976ddbb5c 100644 --- a/arch/arm/cpu/psci.c +++ b/arch/arm/cpu/psci.c @@ -138,8 +138,8 @@ static unsigned long psci_system_off(void) { psci_printf("%s\n", __func__); - if (psci_ops->system_reset) - psci_ops->system_reset(); + if (psci_ops->system_off) + psci_ops->system_off(); while(1); @@ -293,4 +293,4 @@ BAREBOX_CMD_START(smc) BAREBOX_CMD_DESC("secure monitor test command") BAREBOX_CMD_GROUP(CMD_GRP_MISC) BAREBOX_CMD_END -#endif
\ No newline at end of file +#endif diff --git a/arch/arm/cpu/sm.c b/arch/arm/cpu/sm.c index d9d62fbd9d..b7a9eae89b 100644 --- a/arch/arm/cpu/sm.c +++ b/arch/arm/cpu/sm.c @@ -22,9 +22,6 @@ #include "mmu.h" -/* valid bits in CBAR register / PERIPHBASE value */ -#define CBAR_MASK 0xFFFF8000 - static unsigned int read_id_pfr1(void) { unsigned int reg; @@ -51,30 +48,6 @@ static void write_mvbar(u32 val) asm("mcr p15, 0, %0, c12, c0, 1" : : "r"(val)); } -static unsigned long get_cbar(void) -{ - unsigned periphbase; - - /* get the GIC base address from the CBAR register */ - asm("mrc p15, 4, %0, c15, c0, 0\n" : "=r" (periphbase)); - - /* the PERIPHBASE can be mapped above 4 GB (lower 8 bits used to - * encode this). Bail out here since we cannot access this without - * enabling paging. - */ - if ((periphbase & 0xff) != 0) { - pr_err("PERIPHBASE is above 4 GB, no access.\n"); - return -1; - } - - return periphbase & CBAR_MASK; -} - -static unsigned long get_gicd_base_address(void) -{ - return get_cbar() + GIC_DIST_OFFSET; -} - static int cpu_is_virt_capable(void) { return read_id_pfr1() & (1 << 12); @@ -267,4 +240,4 @@ static int sm_init(void) return 0; } -device_initcall(sm_init);
\ No newline at end of file +device_initcall(sm_init); diff --git a/arch/arm/cpu/start.c b/arch/arm/cpu/start.c index 1b1659b315..c97b2770c4 100644 --- a/arch/arm/cpu/start.c +++ b/arch/arm/cpu/start.c @@ -168,6 +168,8 @@ __noreturn void barebox_non_pbl_start(unsigned long membase, barrier(); + pbl_barebox_break(); + pr_debug("memory at 0x%08lx, size 0x%08lx\n", membase, memsize); arm_endmem = endmem; diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index 010408bd59..957b32945c 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -63,10 +63,13 @@ pbl-dtb-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += imx6q-phytec-pbaa03.dtb.o \ imx6q-phytec-phycore-som-emmc.dtb.o \ imx6qp-phytec-phycore-som-nand.dtb.o \ imx6dl-phytec-phycore-som-nand.dtb.o \ + imx6dl-phytec-phycore-som-lc-nand.dtb.o \ imx6dl-phytec-phycore-som-emmc.dtb.o \ - imx6ul-phytec-phycore-som.dtb.o \ - imx6ull-phytec-phycore-som-lc.dtb.o \ - imx6ull-phytec-phycore-som.dtb.o + imx6dl-phytec-phycore-som-lc-emmc.dtb.o \ + imx6ul-phytec-phycore-som-nand.dtb.o \ + imx6ull-phytec-phycore-som-lc-nand.dtb.o \ + imx6ull-phytec-phycore-som-nand.dtb.o \ + imx6ull-phytec-phycore-som-emmc.dtb.o pbl-dtb-$(CONFIG_MACH_PHYTEC_PHYCORE_IMX7) += imx7d-phyboard-zeta.dtb.o pbl-dtb-$(CONFIG_MACH_PHYTEC_SOM_IMX8MQ) += imx8mq-phytec-phycore-som.dtb.o pbl-dtb-$(CONFIG_MACH_PLATHOME_OPENBLOCKS_AX3) += armada-xp-openblocks-ax3-4-bb.dtb.o diff --git a/arch/arm/dts/am335x-phytec-state.dtsi b/arch/arm/dts/am335x-phytec-state.dtsi index 1f61cf5a2e..af4da4ea64 100644 --- a/arch/arm/dts/am335x-phytec-state.dtsi +++ b/arch/arm/dts/am335x-phytec-state.dtsi @@ -23,6 +23,7 @@ compatible = "barebox,state"; backend-type = "raw"; backend = <&backend_state_mac_eeprom>; + backend-storage-type = "direct"; backend-stridesize = <40>; keep-previous-content; @@ -44,6 +45,7 @@ compatible = "barebox,state"; backend-type = "raw"; backend = <&backend_state_update_eeprom>; + backend-storage-type = "direct"; backend-stridesize = <54>; keep-previous-content; diff --git a/arch/arm/dts/am33xx-clocks-strip.dtsi b/arch/arm/dts/am33xx-clocks-strip.dtsi index 706e1c9712..e832616765 100644 --- a/arch/arm/dts/am33xx-clocks-strip.dtsi +++ b/arch/arm/dts/am33xx-clocks-strip.dtsi @@ -8,8 +8,6 @@ */ /delete-node/ &adc_tsc_fck; -/delete-node/ &dcan0_fck; -/delete-node/ &dcan1_fck; /delete-node/ &mcasp0_fck; /delete-node/ &mcasp1_fck; /delete-node/ &smartreflex0_fck; diff --git a/arch/arm/dts/bcm2837-rpi-cm3.dts b/arch/arm/dts/bcm2837-rpi-cm3.dts index cfbffe175f..01c1f9a677 100644 --- a/arch/arm/dts/bcm2837-rpi-cm3.dts +++ b/arch/arm/dts/bcm2837-rpi-cm3.dts @@ -9,10 +9,3 @@ reg = <0x0 0x0>; }; }; - -&sdhci { - pinctrl-0 = <&emmc_gpio48>; - no-sd; - non-removable; - status = "okay"; -}; diff --git a/arch/arm/dts/imx6dl-phytec-phycore-som-emmc.dts b/arch/arm/dts/imx6dl-phytec-phycore-som-emmc.dts index e602b77e99..21cbb5f944 100644 --- a/arch/arm/dts/imx6dl-phytec-phycore-som-emmc.dts +++ b/arch/arm/dts/imx6dl-phytec-phycore-som-emmc.dts @@ -15,6 +15,7 @@ #include <arm/imx6dl.dtsi> #include "imx6dl.dtsi" #include "imx6qdl-phytec-phycore-som.dtsi" +#include "imx6qdl-phytec-state.dtsi" / { model = "Phytec phyCORE-i.MX6 DualLite/SOLO with eMMC"; @@ -30,7 +31,7 @@ }; ðphy { - max-speed = <100>; + max-speed = <1000>; }; &fec { diff --git a/arch/arm/dts/imx6dl-phytec-phycore-som-lc-emmc.dts b/arch/arm/dts/imx6dl-phytec-phycore-som-lc-emmc.dts new file mode 100644 index 0000000000..b8efb95ee0 --- /dev/null +++ b/arch/arm/dts/imx6dl-phytec-phycore-som-lc-emmc.dts @@ -0,0 +1,66 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) +/* + * Copyright (C) 2019 PHYTEC Messtechnik GmbH, + * Author: Stefan Riedmueller <s.riedmueller@phytec.de> + */ + +/dts-v1/; + +#include <arm/imx6dl.dtsi> +#include "imx6dl.dtsi" +#include "imx6qdl-phytec-phycore-som.dtsi" +#include "imx6qdl-phytec-state.dtsi" + +/ { + model = "PHYTEC phyCORE-i.MX6 DualLite/SOLO with eMMC low-cost"; + compatible = "phytec,imx6dl-pcm058-emmc", "fsl,imx6dl"; +}; + +&ecspi1 { + status = "okay"; +}; + +&eeprom { + status = "okay"; +}; + +ðphy { + max-speed = <100>; +}; + +&fec { + status = "okay"; +}; + +&flash { + status = "okay"; +}; + +&usbh1 { + status = "okay"; +}; + +&usbotg { + status = "okay"; +}; + +&usdhc1 { + status = "okay"; + + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "barebox"; + reg = <0x0 0xe0000>; + }; + + partition@e0000 { + label = "barebox-environment"; + reg = <0xe0000 0x20000>; + }; +}; + +&usdhc4 { + status = "okay"; +}; diff --git a/arch/arm/dts/imx6dl-phytec-phycore-som-lc-nand.dts b/arch/arm/dts/imx6dl-phytec-phycore-som-lc-nand.dts new file mode 100644 index 0000000000..4d38d1698a --- /dev/null +++ b/arch/arm/dts/imx6dl-phytec-phycore-som-lc-nand.dts @@ -0,0 +1,58 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) +/* + * Copyright (C) 2019 PHYTEC Messtechnik GmbH, + * Author: Stefan Riedmueller <s.riedmueller@phytec.de> + */ + +/dts-v1/; + +#include <arm/imx6dl.dtsi> +#include "imx6dl.dtsi" +#include "imx6qdl-phytec-phycore-som.dtsi" +#include "imx6qdl-phytec-state.dtsi" + +/ { + model = "PHYTEC phyCORE-i.MX6 Duallite/SOLO with NAND low-cost"; + compatible = "phytec,imx6dl-pcm058-nand", "fsl,imx6dl"; +}; + +&eeprom { + status = "okay"; +}; + +ðphy { + max-speed = <100>; +}; + +&fec { + status = "okay"; +}; + +&gpmi { + status = "okay"; +}; + +&usbh1 { + status = "okay"; +}; + +&usbotg { + status = "okay"; +}; + +&usdhc1 { + status = "okay"; + + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "barebox"; + reg = <0x0 0xe0000>; + }; + + partition@e0000 { + label = "barebox-environment"; + reg = <0xe0000 0x20000>; + }; +}; diff --git a/arch/arm/dts/imx6dl-phytec-phycore-som-nand.dts b/arch/arm/dts/imx6dl-phytec-phycore-som-nand.dts index 77f143438b..3ad3723d28 100644 --- a/arch/arm/dts/imx6dl-phytec-phycore-som-nand.dts +++ b/arch/arm/dts/imx6dl-phytec-phycore-som-nand.dts @@ -14,6 +14,7 @@ #include <arm/imx6dl.dtsi> #include "imx6dl.dtsi" #include "imx6qdl-phytec-phycore-som.dtsi" +#include "imx6qdl-phytec-state.dtsi" / { model = "Phytec phyCORE-i.MX6 Duallite/SOLO with NAND"; @@ -25,7 +26,7 @@ }; ðphy { - max-speed = <100>; + max-speed = <1000>; }; &fec { diff --git a/arch/arm/dts/imx6q-phytec-phycore-som-emmc.dts b/arch/arm/dts/imx6q-phytec-phycore-som-emmc.dts index 94a70389f0..7a86d5b94d 100644 --- a/arch/arm/dts/imx6q-phytec-phycore-som-emmc.dts +++ b/arch/arm/dts/imx6q-phytec-phycore-som-emmc.dts @@ -14,6 +14,7 @@ #include <arm/imx6q.dtsi> #include "imx6q.dtsi" #include "imx6qdl-phytec-phycore-som.dtsi" +#include "imx6qdl-phytec-state.dtsi" / { model = "Phytec phyCORE-i.MX6 Quad with eMMC"; diff --git a/arch/arm/dts/imx6q-phytec-phycore-som-nand.dts b/arch/arm/dts/imx6q-phytec-phycore-som-nand.dts index 6d82ec34d6..96d1de224c 100644 --- a/arch/arm/dts/imx6q-phytec-phycore-som-nand.dts +++ b/arch/arm/dts/imx6q-phytec-phycore-som-nand.dts @@ -14,6 +14,7 @@ #include <arm/imx6q.dtsi> #include "imx6q.dtsi" #include "imx6qdl-phytec-phycore-som.dtsi" +#include "imx6qdl-phytec-state.dtsi" / { model = "Phytec phyCORE-i.MX6 Quad with NAND"; diff --git a/arch/arm/dts/imx6qdl-phytec-phycore-som.dtsi b/arch/arm/dts/imx6qdl-phytec-phycore-som.dtsi index 8fde27bd0c..1d39368165 100644 --- a/arch/arm/dts/imx6qdl-phytec-phycore-som.dtsi +++ b/arch/arm/dts/imx6qdl-phytec-phycore-som.dtsi @@ -110,6 +110,7 @@ phy-handle = <ðphy>; phy-mode = "rgmii"; phy-reset-gpios = <&gpio1 14 GPIO_ACTIVE_LOW>; + phy-reset-duration = <10>; /* in msecs */ status = "disabled"; mdio { diff --git a/arch/arm/dts/imx6qdl-phytec-state.dtsi b/arch/arm/dts/imx6qdl-phytec-state.dtsi new file mode 100644 index 0000000000..1522b92be1 --- /dev/null +++ b/arch/arm/dts/imx6qdl-phytec-state.dtsi @@ -0,0 +1,82 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) +/* + * Copyright (C) 2019 PHYTEC Messtechnik GmbH, + * Author: Daniel Schultz <d.schultz@phytec.de> + */ + +/ { + aliases { + state = &state; + }; + + state: imx6qdl_phytec_boot_state { + magic = <0x883b86a6>; + compatible = "barebox,state"; + backend-type = "raw"; + backend = <&backend_update_eeprom>; + backend-storage-type = "direct"; + backend-stridesize = <54>; + + #address-cells = <1>; + #size-cells = <1>; + bootstate { + #address-cells = <1>; + #size-cells = <1>; + last_chosen { + reg = <0x0 0x4>; + type = "uint32"; + }; + system0 { + #address-cells = <1>; + #size-cells = <1>; + remaining_attempts { + reg = <0x4 0x4>; + type = "uint32"; + default = <3>; + }; + priority { + reg = <0x8 0x4>; + type = "uint32"; + default = <21>; + }; + ok { + reg = <0xc 0x4>; + type = "uint32"; + default = <0>; + }; + }; + system1 { + #address-cells = <1>; + #size-cells = <1>; + remaining_attempts { + reg = <0x10 0x4>; + type = "uint32"; + default = <3>; + }; + priority { + reg = <0x14 0x4>; + type = "uint32"; + default = <20>; + }; + ok { + reg = <0x18 0x4>; + type = "uint32"; + default = <0>; + }; + }; + }; + }; +}; + +&eeprom { + status = "okay"; + partitions { + compatible = "fixed-partitions"; + #size-cells = <1>; + #address-cells = <1>; + backend_update_eeprom: state@0 { + reg = <0x0 0x100>; + label = "update-eeprom"; + }; + }; +}; diff --git a/arch/arm/dts/imx6ul-phytec-phycore-som-nand.dts b/arch/arm/dts/imx6ul-phytec-phycore-som-nand.dts new file mode 100644 index 0000000000..67478e26dc --- /dev/null +++ b/arch/arm/dts/imx6ul-phytec-phycore-som-nand.dts @@ -0,0 +1,48 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) +/* + * Copyright (C) 2019 PHYTEC Messtechnik GmbH + * Author: Christian Hemp <c.hemp@phytec.de> + */ + +/dts-v1/; + +#include <arm/imx6ul.dtsi> +#include "imx6ul-phytec-phycore-som.dtsi" +#include "imx6ul-phytec-state.dtsi" + +/ { + model = "PHYTEC phyCORE-i.MX6 Ultra Lite SOM with NAND"; + compatible = "phytec,imx6ul-pcl063-nand", "fsl,imx6ul"; +}; + +&fec1 { + status = "okay"; +}; + +&gpmi { + status = "okay"; +}; + +&i2c1 { + status = "okay"; +}; + +&state { + status = "okay"; +}; + +&uart1 { + status = "okay"; +}; + +&usdhc1 { + status = "okay"; +}; + +&usbotg1 { + status = "okay"; +}; + +&usbotg2 { + status = "okay"; +}; diff --git a/arch/arm/dts/imx6ul-phytec-phycore-som.dts b/arch/arm/dts/imx6ul-phytec-phycore-som.dts deleted file mode 100644 index 6d1876702d..0000000000 --- a/arch/arm/dts/imx6ul-phytec-phycore-som.dts +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Copyright (C) 2016 PHYTEC Messtechnik GmbH - * Author: Christian Hemp <c.hemp@phytec.de> - * - * The code contained herein is licensed under the GNU General Public - * License. You may obtain a copy of the GNU General Public License - * Version 2 or later at the following locations: - * - * http://www.opensource.org/licenses/gpl-license.html - * http://www.gnu.org/copyleft/gpl.html - */ - -/dts-v1/; - -#include <arm/imx6ul.dtsi> -#include "imx6ul-phytec-phycore-som.dtsi" - -/ { - model = "Phytec phyCORE-i.MX6 Ultra Lite SOM"; - compatible = "phytec,imx6ul-pcl063", "fsl,imx6ul"; -}; - -&fec1 { - status = "okay"; -}; - -&gpmi { - status = "okay"; -}; - -&i2c1 { - status = "okay"; -}; - -&uart1 { - status = "okay"; -}; - -&usdhc1 { - status = "okay"; -}; - -&usbotg1 { - status = "okay"; -}; - -&usbotg2 { - status = "okay"; -}; diff --git a/arch/arm/dts/imx6ul-phytec-phycore-som.dtsi b/arch/arm/dts/imx6ul-phytec-phycore-som.dtsi index 964f91950d..c7c657bcd4 100644 --- a/arch/arm/dts/imx6ul-phytec-phycore-som.dtsi +++ b/arch/arm/dts/imx6ul-phytec-phycore-som.dtsi @@ -25,6 +25,12 @@ device-path = &usdhc1, "partname:barebox-environment"; status = "disabled"; }; + + environment-sd2 { + compatible = "barebox,environment"; + device-path = &usdhc2, "partname:barebox-environment"; + status = "disabled"; + }; }; }; @@ -79,7 +85,7 @@ clock-frequency = <100000>; status = "disabled"; - eeprom@52 { + eeprom: eeprom@52 { compatible = "cat,24c32"; reg = <0x52>; }; @@ -125,6 +131,27 @@ }; }; +&usdhc2 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usdhc2>; + bus-width = <8>; + non-removable; + status = "disabled"; + + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "barebox"; + reg = <0x0 0xe0000>; + }; + + partition@e0000 { + label = "barebox-environment"; + reg = <0xe0000 0x20000>; + }; +}; + &iomuxc { pinctrl-names = "default"; @@ -132,16 +159,16 @@ pinctrl_enet1: enet1grp { fsl,pins = < - MX6UL_PAD_GPIO1_IO07__ENET1_MDC 0x1b0b0 - MX6UL_PAD_GPIO1_IO06__ENET1_MDIO 0x1b0b0 + MX6UL_PAD_GPIO1_IO07__ENET1_MDC 0x10010 + MX6UL_PAD_GPIO1_IO06__ENET1_MDIO 0x10010 MX6UL_PAD_ENET1_RX_EN__ENET1_RX_EN 0x1b0b0 MX6UL_PAD_ENET1_RX_ER__ENET1_RX_ER 0x1b0b0 MX6UL_PAD_ENET1_RX_DATA0__ENET1_RDATA00 0x1b0b0 MX6UL_PAD_ENET1_RX_DATA1__ENET1_RDATA01 0x1b0b0 - MX6UL_PAD_ENET1_TX_EN__ENET1_TX_EN 0x1b0b0 - MX6UL_PAD_ENET1_TX_DATA0__ENET1_TDATA00 0x1b0b0 - MX6UL_PAD_ENET1_TX_DATA1__ENET1_TDATA01 0x1b0b0 - MX6UL_PAD_ENET1_TX_CLK__ENET1_REF_CLK1 0x4001b031 + MX6UL_PAD_ENET1_TX_EN__ENET1_TX_EN 0x1b010 + MX6UL_PAD_ENET1_TX_DATA0__ENET1_TDATA00 0x1b010 + MX6UL_PAD_ENET1_TX_DATA1__ENET1_TDATA01 0x1b010 + MX6UL_PAD_ENET1_TX_CLK__ENET1_REF_CLK1 0x4001b010 >; }; @@ -196,6 +223,21 @@ MX6UL_PAD_UART1_RTS_B__GPIO1_IO19 0x17059 /* SD1 CD */ >; }; + + pinctrl_usdhc2: usdhc2grp { + fsl,pins = < + MX6UL_PAD_NAND_WE_B__USDHC2_CMD 0x17059 + MX6UL_PAD_NAND_RE_B__USDHC2_CLK 0x10059 + MX6UL_PAD_NAND_DATA00__USDHC2_DATA0 0x17059 + MX6UL_PAD_NAND_DATA01__USDHC2_DATA1 0x17059 + MX6UL_PAD_NAND_DATA02__USDHC2_DATA2 0x17059 + MX6UL_PAD_NAND_DATA03__USDHC2_DATA3 0x17059 + MX6UL_PAD_NAND_DATA04__USDHC2_DATA4 0x17059 + MX6UL_PAD_NAND_DATA05__USDHC2_DATA5 0x17059 + MX6UL_PAD_NAND_DATA06__USDHC2_DATA6 0x17059 + MX6UL_PAD_NAND_DATA07__USDHC2_DATA7 0x17059 + >; + }; }; }; diff --git a/arch/arm/dts/imx6ul-phytec-state.dtsi b/arch/arm/dts/imx6ul-phytec-state.dtsi new file mode 100644 index 0000000000..78a32ed96b --- /dev/null +++ b/arch/arm/dts/imx6ul-phytec-state.dtsi @@ -0,0 +1,82 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (C) 2019 PHYTEC Messtechnik GmbH, + * Author: Stefan Riedmueller <s.riedmueller@phytec.de> + */ + +/ { + aliases { + state = &state; + }; + + state: imx6ul_phytec_boot_state { + magic = <0x883b86a6>; + compatible = "barebox,state"; + backend-type = "raw"; + backend = <&backend_update_eeprom>; + backend-storage-type = "direct"; + backend-stridesize = <54>; + status = "disabled"; + + #address-cells = <1>; + #size-cells = <1>; + bootstate { + #address-cells = <1>; + #size-cells = <1>; + last_chosen { + reg = <0x0 0x4>; + type = "uint32"; + }; + system0 { + #address-cells = <1>; + #size-cells = <1>; + remaining_attempts { + reg = <0x4 0x4>; + type = "uint32"; + default = <3>; + }; + priority { + reg = <0x8 0x4>; + type = "uint32"; + default = <21>; + }; + ok { + reg = <0xc 0x4>; + type = "uint32"; + default = <0>; + }; + }; + system1 { + #address-cells = <1>; + #size-cells = <1>; + remaining_attempts { + reg = <0x10 0x4>; + type = "uint32"; + default = <3>; + }; + priority { + reg = <0x14 0x4>; + type = "uint32"; + default = <20>; + }; + ok { + reg = <0x18 0x4>; + type = "uint32"; + default = <0>; + }; + }; + }; + }; +}; + +&eeprom { + partitions { + compatible = "fixed-partitions"; + #size-cells = <1>; + #address-cells = <1>; + backend_update_eeprom: state@0 { + reg = <0x0 0x100>; + label = "update-eeprom"; + }; + }; +}; diff --git a/arch/arm/dts/imx6ull-phytec-phycore-som-emmc.dts b/arch/arm/dts/imx6ull-phytec-phycore-som-emmc.dts new file mode 100644 index 0000000000..aa162cc42d --- /dev/null +++ b/arch/arm/dts/imx6ull-phytec-phycore-som-emmc.dts @@ -0,0 +1,43 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) +/* + * Copyright (C) 2019 PHYTEC Messtechnik GmbH + * Author: Stefan Riedmueller <s.riedmueller@phytec.de> + */ + +/dts-v1/; + +#include <arm/imx6ull.dtsi> +#include "imx6ul-phytec-phycore-som.dtsi" + +/ { + model = "PHYTEC phyCORE-i.MX6 ULL SOM with eMMC"; + compatible = "phytec,imx6ul-pcl063-emmc", "fsl,imx6ull"; +}; + +&fec1 { + status = "okay"; +}; + +&i2c1 { + status = "okay"; +}; + +&uart1 { + status = "okay"; +}; + +&usdhc1 { + status = "okay"; +}; + +&usdhc2 { + status = "okay"; +}; + +&usbotg1 { + status = "okay"; +}; + +&usbotg2 { + status = "okay"; +}; diff --git a/arch/arm/dts/imx6ull-phytec-phycore-som-lc.dts b/arch/arm/dts/imx6ull-phytec-phycore-som-lc-nand.dts index 94a7830756..e6c588b449 100644 --- a/arch/arm/dts/imx6ull-phytec-phycore-som-lc.dts +++ b/arch/arm/dts/imx6ull-phytec-phycore-som-lc-nand.dts @@ -1,6 +1,6 @@ // SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) /* - * Copyright (C) 2018 PHYTEC Messtechnik GmbH + * Copyright (C) 2019 PHYTEC Messtechnik GmbH * Author: Stefan Riedmueller <s.riedmueller@phytec.de> */ @@ -10,8 +10,8 @@ #include "imx6ul-phytec-phycore-som.dtsi" / { - model = "Phytec phyCORE-i.MX6 ULL SOM low-cost"; - compatible = "phytec,imx6ul-pcl063", "fsl,imx6ull"; + model = "PHYTEC phyCORE-i.MX6 ULL SOM low-cost with NAND"; + compatible = "phytec,imx6ul-pcl063-nand", "fsl,imx6ull"; }; &fec1 { diff --git a/arch/arm/dts/imx6ull-phytec-phycore-som-nand.dts b/arch/arm/dts/imx6ull-phytec-phycore-som-nand.dts new file mode 100644 index 0000000000..a5fa3e051c --- /dev/null +++ b/arch/arm/dts/imx6ull-phytec-phycore-som-nand.dts @@ -0,0 +1,48 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) +/* + * Copyright (C) 2019 PHYTEC Messtechnik GmbH + * Author: Stefan Riedmueller <s.riedmueller@phytec.de> + */ + +/dts-v1/; + +#include <arm/imx6ull.dtsi> +#include "imx6ul-phytec-phycore-som.dtsi" +#include "imx6ul-phytec-state.dtsi" + +/ { + model = "PHYTEC phyCORE-i.MX6 ULL SOM with NAND"; + compatible = "phytec,imx6ul-pcl063-nand", "fsl,imx6ull"; +}; + +&fec1 { + status = "okay"; +}; + +&gpmi { + status = "okay"; +}; + +&i2c1 { + status = "okay"; +}; + +&state { + status = "okay"; +}; + +&uart1 { + status = "okay"; +}; + +&usdhc1 { + status = "okay"; +}; + +&usbotg1 { + status = "okay"; +}; + +&usbotg2 { + status = "okay"; +}; diff --git a/arch/arm/dts/imx6ull-phytec-phycore-som.dts b/arch/arm/dts/imx6ull-phytec-phycore-som.dts deleted file mode 100644 index 4d73010131..0000000000 --- a/arch/arm/dts/imx6ull-phytec-phycore-som.dts +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Copyright (C) 2017 PHYTEC Messtechnik GmbH - * Author: Stefan Riedmueller <s.riedmueller@phytec.de> - * - * The code contained herein is licensed under the GNU General Public - * License. You may obtain a copy of the GNU General Public License - * Version 2 or later at the following locations: - * - * http://www.opensource.org/licenses/gpl-license.html - * http://www.gnu.org/copyleft/gpl.html - */ - -/dts-v1/; - -#include <arm/imx6ull.dtsi> -#include "imx6ul-phytec-phycore-som.dtsi" - -/ { - model = "Phytec phyCORE-i.MX6 ULL SOM"; - compatible = "phytec,imx6ul-pcl063", "fsl,imx6ull"; -}; - -&fec1 { - status = "okay"; -}; - -&gpmi { - status = "okay"; -}; - -&i2c1 { - status = "okay"; -}; - -&uart1 { - status = "okay"; -}; - -&usdhc1 { - status = "okay"; -}; - -&usbotg1 { - status = "okay"; -}; - -&usbotg2 { - status = "okay"; -}; diff --git a/arch/arm/dts/stm32mp157a-dk1.dts b/arch/arm/dts/stm32mp157a-dk1.dts index 741284a444..f2cafae66b 100644 --- a/arch/arm/dts/stm32mp157a-dk1.dts +++ b/arch/arm/dts/stm32mp157a-dk1.dts @@ -4,59 +4,5 @@ * Author: Alexandre Torgue <alexandre.torgue@st.com>. */ -/dts-v1/; - -#include "stm32mp157c.dtsi" -#include <arm/stm32mp157c.dtsi> -#include <arm/stm32mp157-pinctrl.dtsi> - -/ { - model = "STMicroelectronics STM32MP157A-DK1 Discovery Board"; - compatible = "st,stm32mp157a-dk1", "st,stm32mp157"; - - aliases { - ethernet0 = ðernet0; - serial0 = &uart4; - }; - - chosen { - stdout-path = "serial0:115200n8"; - }; - - sram: sram@10050000 { - compatible = "mmio-sram"; - reg = <0x10050000 0x10000>; - #address-cells = <1>; - #size-cells = <1>; - ranges = <0 0x10050000 0x10000>; - - dma_pool: dma_pool@0 { - reg = <0x0 0x10000>; - pool; - }; - }; -}; - -ðernet0 { - status = "okay"; - pinctrl-0 = <ðernet0_rgmii_pins_a>; - pinctrl-names = "default", "sleep"; - phy-mode = "rgmii"; - max-speed = <1000>; - phy-handle = <&phy0>; - - mdio0 { - #address-cells = <1>; - #size-cells = <0>; - compatible = "snps,dwmac-mdio"; - phy0: ethernet-phy@0 { - reg = <0>; - }; - }; -}; - -&uart4 { - pinctrl-names = "default"; - pinctrl-0 = <&uart4_pins_a>; - status = "okay"; -}; +#include <arm/stm32mp157a-dk1.dts> +#include "stm32mp157a-dk1.dtsi" diff --git a/arch/arm/dts/stm32mp157a-dk1.dtsi b/arch/arm/dts/stm32mp157a-dk1.dtsi new file mode 100644 index 0000000000..cd3d614d46 --- /dev/null +++ b/arch/arm/dts/stm32mp157a-dk1.dtsi @@ -0,0 +1,36 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) +/* + * Copyright (C) STMicroelectronics 2018 - All Rights Reserved + * Author: Alexandre Torgue <alexandre.torgue@st.com>. + */ + +#include "stm32mp157c.dtsi" +#include <dt-bindings/gpio/gpio.h> + +/ { + led { + red { + label = "error"; + gpios = <&gpioa 13 GPIO_ACTIVE_LOW>; + default-state = "off"; + status = "okay"; + }; + + blue { + default-state = "on"; + }; + }; + + sram: sram@10050000 { + compatible = "mmio-sram"; + reg = <0x10050000 0x10000>; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0 0x10050000 0x10000>; + + dma_pool: dma_pool@0 { + reg = <0x0 0x10000>; + pool; + }; + }; +}; diff --git a/arch/arm/dts/stm32mp157c-dk2.dts b/arch/arm/dts/stm32mp157c-dk2.dts index 7565cabc3d..6e73162ea4 100644 --- a/arch/arm/dts/stm32mp157c-dk2.dts +++ b/arch/arm/dts/stm32mp157c-dk2.dts @@ -4,11 +4,5 @@ * Author: Alexandre Torgue <alexandre.torgue@st.com>. */ -/dts-v1/; - -#include "stm32mp157a-dk1.dts" - -/ { - model = "STMicroelectronics STM32MP157C-DK2 Discovery Board"; - compatible = "st,stm32mp157c-dk2", "st,stm32mp157"; -}; +#include <arm/stm32mp157c-dk2.dts> +#include "stm32mp157a-dk1.dtsi" diff --git a/arch/arm/dts/stm32mp157c.dtsi b/arch/arm/dts/stm32mp157c.dtsi index fa0d00ff02..b97622c8d4 100644 --- a/arch/arm/dts/stm32mp157c.dtsi +++ b/arch/arm/dts/stm32mp157c.dtsi @@ -4,4 +4,19 @@ /* Needed to let barebox find the clock nodes */ compatible = "simple-bus"; }; + + aliases { + gpio0 = &gpioa; + gpio1 = &gpiob; + gpio2 = &gpioc; + gpio3 = &gpiod; + gpio4 = &gpioe; + gpio5 = &gpiof; + gpio6 = &gpiog; + gpio7 = &gpioh; + gpio8 = &gpioi; + gpio9 = &gpioj; + gpio10 = &gpiok; + gpio11 = &gpioz; + }; }; diff --git a/arch/arm/include/asm/barebox-arm-head.h b/arch/arm/include/asm/barebox-arm-head.h index 5c6205c815..83a22c4d94 100644 --- a/arch/arm/include/asm/barebox-arm-head.h +++ b/arch/arm/include/asm/barebox-arm-head.h @@ -64,6 +64,13 @@ static inline void __barebox_arm_head(void) ".word 0x55555555\n" ".endr\n" "2:\n" +#ifdef CONFIG_PBL_BREAK + "bkpt #17\n" + "nop\n" +#else + "nop\n" + "nop\n" +#endif ); } static inline void barebox_arm_head(void) diff --git a/arch/arm/include/asm/barebox-arm.h b/arch/arm/include/asm/barebox-arm.h index a1e6bff3a3..9840482b23 100644 --- a/arch/arm/include/asm/barebox-arm.h +++ b/arch/arm/include/asm/barebox-arm.h @@ -55,6 +55,7 @@ static inline unsigned long global_variable_offset(void) } void setup_c(void); +void pbl_barebox_break(void); void relocate_to_current_adr(void); void relocate_to_adr(unsigned long target); void __noreturn barebox_arm_entry(unsigned long membase, unsigned long memsize, void *boarddata); diff --git a/arch/arm/include/asm/gic.h b/arch/arm/include/asm/gic.h index bd3a80cdf7..f83f528141 100644 --- a/arch/arm/include/asm/gic.h +++ b/arch/arm/include/asm/gic.h @@ -107,4 +107,33 @@ #define ICC_SGI1R_EL1 S3_0_C12_C11_5 #define ICC_ASGI1R_EL1 S3_0_C12_C11_6 +#ifndef __ASSEMBLY__ +/* valid bits in CBAR register / PERIPHBASE value */ +#define CBAR_MASK 0xFFFF8000 + +static inline unsigned long get_cbar(void) +{ + unsigned periphbase; + + /* get the GIC base address from the CBAR register */ + asm("mrc p15, 4, %0, c15, c0, 0\n" : "=r" (periphbase)); + + /* the PERIPHBASE can be mapped above 4 GB (lower 8 bits used to + * encode this). Bail out here since we cannot access this without + * enabling paging. + */ + if ((periphbase & 0xff) != 0) { + pr_err("PERIPHBASE is above 4 GB, no access.\n"); + return -1; + } + + return periphbase & CBAR_MASK; +} + +static inline unsigned long get_gicd_base_address(void) +{ + return get_cbar() + GIC_DIST_OFFSET; +} +#endif + #endif /* __GIC_H__ */ diff --git a/arch/arm/mach-imx/imx6.c b/arch/arm/mach-imx/imx6.c index e898be9ab5..0fdd9f082f 100644 --- a/arch/arm/mach-imx/imx6.c +++ b/arch/arm/mach-imx/imx6.c @@ -23,6 +23,7 @@ #include <mach/reset-reason.h> #include <mach/imx6-anadig.h> #include <mach/imx6-regs.h> +#include <mach/imx6-fusemap.h> #include <mach/usb.h> #include <asm/mmu.h> #include <asm/cache-l2x0.h> @@ -38,6 +39,9 @@ #define BM_CLPCR_COSC_PWRDOWN (0x1 << 11) #define BM_CLPCR_BYP_MMDC_CH1_LPM_HS (0x1 << 21) +#define MX6_OCOTP_CFG0 0x410 +#define MX6_OCOTP_CFG1 0x420 + static void imx6_init_lowlevel(void) { void __iomem *aips1 = (void *)MX6_AIPS1_ON_BASE_ADDR; @@ -186,17 +190,30 @@ int imx6_cpu_revision(void) return soc_revision; } +u64 imx6_uid(void) +{ + void __iomem *ocotpbase = IOMEM(MX6_OCOTP_BASE_ADDR); + u64 uid; + + uid = ((u64)readl(ocotpbase + MX6_OCOTP_CFG0) << 32); + uid |= (u64)readl(ocotpbase + MX6_OCOTP_CFG1); + + return uid; +} + int imx6_init(void) { const char *cputypestr; u32 mx6_silicon_revision; void __iomem *src = IOMEM(MX6_SRC_BASE_ADDR); + u64 mx6_uid; imx6_init_lowlevel(); imx6_boot_save_loc(); mx6_silicon_revision = imx6_cpu_revision(); + mx6_uid = imx6_uid(); switch (imx6_cpu_type()) { case IMX6_CPUTYPE_IMX6Q: @@ -236,6 +253,8 @@ int imx6_init(void) imx_set_silicon_revision(cputypestr, mx6_silicon_revision); imx_set_reset_reason(src + IMX_SRC_SRSR, imx_reset_reasons); + pr_info("%s unique ID: %llx\n", cputypestr, mx6_uid); + imx6_setup_ipu_qos(); imx6ul_enet_clk_init(); diff --git a/arch/arm/mach-imx/include/mach/imx6.h b/arch/arm/mach-imx/include/mach/imx6.h index 5701bd480c..f0d20833fd 100644 --- a/arch/arm/mach-imx/include/mach/imx6.h +++ b/arch/arm/mach-imx/include/mach/imx6.h @@ -124,4 +124,6 @@ static inline int __imx6_cpu_revision(void) int imx6_cpu_revision(void); +u64 imx6_uid(void); + #endif /* __MACH_IMX6_H */ diff --git a/arch/arm/mach-stm32mp1/Kconfig b/arch/arm/mach-stm32mp/Kconfig index cc7cf23cfb..be16294f5a 100644 --- a/arch/arm/mach-stm32mp1/Kconfig +++ b/arch/arm/mach-stm32mp/Kconfig @@ -1,10 +1,11 @@ -if ARCH_STM32MP1 +if ARCH_STM32MP config ARCH_STM32MP1157 bool config MACH_STM32MP157C_DK2 select ARCH_STM32MP1157 + select ARM_USE_COMPRESSED_DTB bool "STM32MP157C-DK2 board" endif diff --git a/arch/arm/mach-stm32mp1/Makefile b/arch/arm/mach-stm32mp/Makefile index 16a218658a..16a218658a 100644 --- a/arch/arm/mach-stm32mp1/Makefile +++ b/arch/arm/mach-stm32mp/Makefile diff --git a/arch/arm/mach-stm32mp1/include/mach/debug_ll.h b/arch/arm/mach-stm32mp/include/mach/debug_ll.h index 99fedb91fe..99fedb91fe 100644 --- a/arch/arm/mach-stm32mp1/include/mach/debug_ll.h +++ b/arch/arm/mach-stm32mp/include/mach/debug_ll.h diff --git a/arch/arm/mach-stm32mp1/include/mach/stm32.h b/arch/arm/mach-stm32mp/include/mach/stm32.h index f9bdb788b9..f9bdb788b9 100644 --- a/arch/arm/mach-stm32mp1/include/mach/stm32.h +++ b/arch/arm/mach-stm32mp/include/mach/stm32.h diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig index 936e56fa27..728295d486 100644 --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig @@ -29,6 +29,10 @@ config GENERIC_LINKER_SCRIPT config PHYS_ADDR_T_64BIT bool +config ARCH_TEXT_BASE + hex + default 0xa0800000 + menu "Machine selection" config MIPS_RELOCATION_TABLE_SIZE diff --git a/arch/mips/boot/main_entry.c b/arch/mips/boot/main_entry.c index 5b88730b07..4ae4457e7e 100644 --- a/arch/mips/boot/main_entry.c +++ b/arch/mips/boot/main_entry.c @@ -85,7 +85,7 @@ void __bare_init main_entry(void *fdt, u32 fdt_size) trap_init(); - malloc_end = _stext; + malloc_end = (unsigned long)_stext; if (MALLOC_SIZE > 0) malloc_start = malloc_end - MALLOC_SIZE; diff --git a/arch/mips/configs/ath79_defconfig b/arch/mips/configs/ath79_defconfig index 3f33a720b1..83d22e4e1c 100644 --- a/arch/mips/configs/ath79_defconfig +++ b/arch/mips/configs/ath79_defconfig @@ -35,7 +35,6 @@ CONFIG_CMD_MSLEEP=y CONFIG_CMD_READF=y CONFIG_CMD_SLEEP=y CONFIG_CMD_DHCP=y -CONFIG_CMD_HOST=y CONFIG_CMD_MIITOOL=y CONFIG_CMD_PING=y CONFIG_CMD_ECHO_E=y diff --git a/arch/mips/configs/bcm47xx_defconfig b/arch/mips/configs/bcm47xx_defconfig index 04833ef2e0..0cd0e9e650 100644 --- a/arch/mips/configs/bcm47xx_defconfig +++ b/arch/mips/configs/bcm47xx_defconfig @@ -9,7 +9,6 @@ CONFIG_MENU=y CONFIG_BOOTM_SHOW_TYPE=y CONFIG_PARTITION=y # CONFIG_DEFAULT_ENVIRONMENT is not set -CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y CONFIG_POLLER=y CONFIG_LONGHELP=y CONFIG_CMD_IOMEM=y diff --git a/arch/mips/configs/gxemul-malta_defconfig b/arch/mips/configs/gxemul-malta_defconfig index 75fc401680..61e4e29016 100644 --- a/arch/mips/configs/gxemul-malta_defconfig +++ b/arch/mips/configs/gxemul-malta_defconfig @@ -2,7 +2,6 @@ CONFIG_BUILTIN_DTB=y CONFIG_BUILTIN_DTB_NAME="qemu-malta" CONFIG_CPU_LITTLE_ENDIAN=y CONFIG_CPU_MIPS32_R1=y -CONFIG_PBL_IMAGE=y CONFIG_STACK_SIZE=0x7000 CONFIG_EXPERIMENTAL=y CONFIG_BAUDRATE=38400 diff --git a/arch/mips/configs/loongson-ls1b_defconfig b/arch/mips/configs/loongson-ls1b_defconfig index 25444e373e..92824e0f0f 100644 --- a/arch/mips/configs/loongson-ls1b_defconfig +++ b/arch/mips/configs/loongson-ls1b_defconfig @@ -1,7 +1,6 @@ CONFIG_BUILTIN_DTB=y CONFIG_BUILTIN_DTB_NAME="loongson-ls1b" CONFIG_MACH_MIPS_LOONGSON=y -CONFIG_PBL_IMAGE=y CONFIG_STACK_SIZE=0x7000 CONFIG_EXPERIMENTAL=y CONFIG_MALLOC_TLSF=y @@ -14,7 +13,6 @@ CONFIG_PARTITION=y # CONFIG_DEFAULT_ENVIRONMENT is not set CONFIG_POLLER=y CONFIG_RESET_SOURCE=y -CONFIG_DEBUG_INFO=y CONFIG_LONGHELP=y CONFIG_CMD_IOMEM=y CONFIG_CMD_MEMINFO=y diff --git a/arch/mips/configs/qemu-malta_defconfig b/arch/mips/configs/qemu-malta_defconfig index 69c7b0b10a..2465c0260d 100644 --- a/arch/mips/configs/qemu-malta_defconfig +++ b/arch/mips/configs/qemu-malta_defconfig @@ -13,7 +13,6 @@ CONFIG_CONSOLE_ALLOW_COLOR=y CONFIG_PARTITION=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y CONFIG_POLLER=y -CONFIG_DEBUG_INFO=y CONFIG_CMD_DMESG=y CONFIG_LONGHELP=y CONFIG_CMD_IOMEM=y @@ -58,7 +57,6 @@ CONFIG_CMD_TIME=y CONFIG_NET=y CONFIG_NET_NFS=y CONFIG_NET_NETCONSOLE=y -CONFIG_NET_RESOLV=y CONFIG_OFDEVICE=y CONFIG_OF_BAREBOX_DRIVERS=y CONFIG_DRIVER_NET_RTL8139=y diff --git a/arch/mips/dts/tplink-mr3020.dts b/arch/mips/dts/tplink-mr3020.dts index 982cffc250..e30eae1578 100644 --- a/arch/mips/dts/tplink-mr3020.dts +++ b/arch/mips/dts/tplink-mr3020.dts @@ -7,6 +7,8 @@ }; chosen { + stdout-path = &uart; + environment { compatible = "barebox,environment"; device-path = &spiflash, "partname:barebox-environment"; diff --git a/arch/mips/lib/Makefile b/arch/mips/lib/Makefile index 4ba42e526e..0761588ae8 100644 --- a/arch/mips/lib/Makefile +++ b/arch/mips/lib/Makefile @@ -4,8 +4,8 @@ obj-y += cpu-probe.o lwl-y += end.o obj-y += traps.o obj-y += genex.o -obj-y += reloc.o -obj-y += sections.o +obj-y += reloc.o +obj-y += sections.o obj-y += shutdown.o obj-y += dma-default.o diff --git a/arch/mips/lib/reloc.c b/arch/mips/lib/reloc.c index 9756d61666..9a9e404f7e 100644 --- a/arch/mips/lib/reloc.c +++ b/arch/mips/lib/reloc.c @@ -40,8 +40,6 @@ #include <linux/sizes.h> #include <asm-generic/memory_layout.h> -#define MAX_BSS_SIZE SZ_1M - void main_entry(void *fdt, u32 fdt_size); void relocate_code(void *fdt, u32 fdt_size, u32 relocaddr); @@ -108,17 +106,6 @@ static void apply_reloc(unsigned int type, void *addr, long off) } } -/** - * relocate_code() - Relocate Barebox, generally from flash to DDR - * @start_addr_sp: new stack pointer - * @new_gd: pointer to relocated global data - * @relocaddr: the address to relocate to - * - * Relocate Barebox from its current location (generally in flash) to a new one - * (generally in DDR). This function will copy the Barebox binary & apply - * relocations as necessary, then jump to board_init_r in the new build of - * Barebox. As such, this function does not return. - */ void relocate_code(void *fdt, u32 fdt_size, u32 ram_size) { unsigned long addr, length, bss_len; @@ -127,8 +114,10 @@ void relocate_code(void *fdt, u32 fdt_size, u32 ram_size) unsigned int type; long off; - length = barebox_image_size + MAX_BSS_SIZE; - relocaddr = ALIGN_DOWN(ram_size - barebox_image_size, SZ_64K); + bss_len = (unsigned long)&__bss_stop - (unsigned long)__bss_start; + + length = barebox_image_size + bss_len; + relocaddr = ALIGN_DOWN(ram_size - length, SZ_64K); relocaddr = KSEG0ADDR(relocaddr); new_stack = relocaddr - MALLOC_SIZE - 16; @@ -143,7 +132,7 @@ void relocate_code(void *fdt, u32 fdt_size, u32 ram_size) panic("Mis-aligned relocation\n"); /* Copy Barebox to RAM */ - memcpy((void *)relocaddr, __image_start, length); + memcpy((void *)relocaddr, __image_start, barebox_image_size); /* Now apply relocations to the copy in RAM */ buf = __rel_start; @@ -162,7 +151,6 @@ void relocate_code(void *fdt, u32 fdt_size, u32 ram_size) /* Clear the .bss section */ bss_start = (uint8_t *)((unsigned long)__bss_start + off); - bss_len = (unsigned long)&__bss_stop - (unsigned long)__bss_start; memset(bss_start, 0, bss_len); __asm__ __volatile__ ( diff --git a/arch/mips/mach-ar231x/Kconfig b/arch/mips/mach-ar231x/Kconfig index 5f9e24377f..f920f300bd 100644 --- a/arch/mips/mach-ar231x/Kconfig +++ b/arch/mips/mach-ar231x/Kconfig @@ -1,9 +1,5 @@ if MACH_MIPS_AR231X -config ARCH_TEXT_BASE - hex - default 0xa0800000 - choice prompt "Board type" diff --git a/arch/mips/mach-ath79/Kconfig b/arch/mips/mach-ath79/Kconfig index 4bc1d88b4e..b1b49b0005 100644 --- a/arch/mips/mach-ath79/Kconfig +++ b/arch/mips/mach-ath79/Kconfig @@ -1,9 +1,5 @@ if MACH_MIPS_ATH79 -config ARCH_TEXT_BASE - hex - default 0xa0800000 - config SOC_QCA_AR9331 bool diff --git a/arch/mips/mach-bcm47xx/Kconfig b/arch/mips/mach-bcm47xx/Kconfig index f7522b79d6..c4791901af 100644 --- a/arch/mips/mach-bcm47xx/Kconfig +++ b/arch/mips/mach-bcm47xx/Kconfig @@ -1,9 +1,5 @@ if MACH_MIPS_BCM47XX -config ARCH_TEXT_BASE - hex - default 0xa0800000 - choice prompt "Board type" diff --git a/arch/mips/mach-loongson/Kconfig b/arch/mips/mach-loongson/Kconfig index c9f19025eb..ab7ccd0cb5 100644 --- a/arch/mips/mach-loongson/Kconfig +++ b/arch/mips/mach-loongson/Kconfig @@ -1,9 +1,5 @@ if MACH_MIPS_LOONGSON -config ARCH_TEXT_BASE - hex - default 0xa0800000 - choice prompt "Board type" diff --git a/arch/mips/mach-malta/Kconfig b/arch/mips/mach-malta/Kconfig index 70799808f9..4671075140 100644 --- a/arch/mips/mach-malta/Kconfig +++ b/arch/mips/mach-malta/Kconfig @@ -1,9 +1,5 @@ if MACH_MIPS_MALTA -config ARCH_TEXT_BASE - hex - default 0xa0800000 - config BOARD_QEMU_MALTA bool "qemu malta" select HAVE_PBL_IMAGE diff --git a/arch/mips/mach-xburst/Kconfig b/arch/mips/mach-xburst/Kconfig index b3790210dd..ae8093d1a3 100644 --- a/arch/mips/mach-xburst/Kconfig +++ b/arch/mips/mach-xburst/Kconfig @@ -1,9 +1,5 @@ if MACH_MIPS_XBURST -config ARCH_TEXT_BASE - hex - default 0xa0800000 - config CPU_JZ4755 bool select SYS_HAS_CPU_MIPS32_R1 diff --git a/arch/sandbox/board/board.c b/arch/sandbox/board/board.c index dcad3c249b..1f6392d15e 100644 --- a/arch/sandbox/board/board.c +++ b/arch/sandbox/board/board.c @@ -58,4 +58,3 @@ static int devices_init(void) } device_initcall(devices_init); - diff --git a/arch/sandbox/board/console.c b/arch/sandbox/board/console.c index 006bbd1a6e..4b251e9087 100644 --- a/arch/sandbox/board/console.c +++ b/arch/sandbox/board/console.c @@ -40,4 +40,3 @@ int barebox_register_console(int stdinfd, int stdoutfd) return sandbox_add_device(dev); } - diff --git a/arch/sandbox/board/devices.c b/arch/sandbox/board/devices.c index 10d6b67cc4..242a0d718e 100644 --- a/arch/sandbox/board/devices.c +++ b/arch/sandbox/board/devices.c @@ -6,6 +6,7 @@ #include <common.h> #include <driver.h> +#include <mach/linux.h> #include <init.h> static LIST_HEAD(sandbox_device_list); diff --git a/arch/sandbox/configs/sandbox_defconfig b/arch/sandbox/configs/sandbox_defconfig index 68fe40f40a..c343f053fa 100644 --- a/arch/sandbox/configs/sandbox_defconfig +++ b/arch/sandbox/configs/sandbox_defconfig @@ -6,7 +6,6 @@ CONFIG_PARTITION=y CONFIG_DEFAULT_COMPRESSION_GZIP=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y CONFIG_DEFAULT_ENVIRONMENT_PATH="arch/sandbox/board/env" -CONFIG_DEBUG_INFO=y CONFIG_CMD_DMESG=y CONFIG_LONGHELP=y CONFIG_CMD_IMD=y @@ -36,7 +35,6 @@ CONFIG_CMD_MSLEEP=y CONFIG_CMD_READF=y CONFIG_CMD_SLEEP=y CONFIG_CMD_DHCP=y -CONFIG_CMD_HOST=y CONFIG_CMD_PING=y CONFIG_CMD_TFTP=y CONFIG_CMD_ECHO_E=y @@ -52,10 +50,10 @@ CONFIG_CMD_CRC_CMP=y CONFIG_CMD_MM=y CONFIG_CMD_DETECT=y CONFIG_CMD_FLASH=y -CONFIG_CMD_POWEROFF=y CONFIG_CMD_GPIO=y CONFIG_CMD_I2C=y CONFIG_CMD_LED=y +CONFIG_CMD_POWEROFF=y CONFIG_CMD_SPI=y CONFIG_CMD_LED_TRIGGER=y CONFIG_CMD_2048=y diff --git a/arch/sandbox/mach-sandbox/include/mach/linux.h b/arch/sandbox/mach-sandbox/include/mach/linux.h index 52360f8771..7d0ed55735 100644 --- a/arch/sandbox/mach-sandbox/include/mach/linux.h +++ b/arch/sandbox/mach-sandbox/include/mach/linux.h @@ -8,7 +8,7 @@ int sandbox_add_device(struct device_d *dev); struct fb_bitfield; int linux_register_device(const char *name, void *start, void *end); -int tap_alloc(char *dev); +int tap_alloc(const char *dev); uint64_t linux_get_time(void); int linux_read(int fd, void *buf, size_t count); int linux_read_nonblock(int fd, void *buf, size_t count); diff --git a/arch/sandbox/os/tap.c b/arch/sandbox/os/tap.c index 0e29e8e8ad..3a29a4be64 100644 --- a/arch/sandbox/os/tap.c +++ b/arch/sandbox/os/tap.c @@ -28,7 +28,7 @@ #include <linux/if_tun.h> #include <string.h> -int tap_alloc(char *dev) +int tap_alloc(const char *dev) { struct ifreq ifr; int fd, err; @@ -55,7 +55,6 @@ int tap_alloc(char *dev) return err; } - strcpy(dev, ifr.ifr_name); return fd; } diff --git a/arch/x86/configs/efi_defconfig b/arch/x86/configs/efi_defconfig index f489770eba..47842d10af 100644 --- a/arch/x86/configs/efi_defconfig +++ b/arch/x86/configs/efi_defconfig @@ -16,7 +16,6 @@ CONFIG_PARTITION_DISK_EFI=y CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y CONFIG_POLLER=y CONFIG_STATE=y -CONFIG_DEBUG_INFO=y CONFIG_DEBUG_LL=y CONFIG_LONGHELP=y CONFIG_CMD_IOMEM=y @@ -41,7 +40,6 @@ CONFIG_CMD_MSLEEP=y CONFIG_CMD_READF=y CONFIG_CMD_SLEEP=y CONFIG_CMD_DHCP=y -CONFIG_CMD_HOST=y CONFIG_CMD_PING=y CONFIG_CMD_TFTP=y CONFIG_CMD_ECHO_E=y diff --git a/arch/x86/configs/generic_defconfig b/arch/x86/configs/generic_defconfig index 3b94e02a7e..4620280136 100644 --- a/arch/x86/configs/generic_defconfig +++ b/arch/x86/configs/generic_defconfig @@ -7,7 +7,6 @@ CONFIG_CMDLINE_EDITING=y CONFIG_AUTO_COMPLETE=y CONFIG_PARTITION=y CONFIG_DEFAULT_ENVIRONMENT_PATH="arch/x86/boards/x86_generic/env" -CONFIG_DEBUG_INFO=y CONFIG_LONGHELP=y CONFIG_CMD_MEMINFO=y # CONFIG_CMD_BOOTM is not set diff --git a/commands/fbtest.c b/commands/fbtest.c index e5dd8ba7fa..ff24a8252a 100644 --- a/commands/fbtest.c +++ b/commands/fbtest.c @@ -271,8 +271,9 @@ static int do_fbtest(int argc, char *argv[]) sc = fb_open(fbdev); if (IS_ERR(sc)) { - perror("fd_open"); - return PTR_ERR(sc); + int ret = -PTR_ERR(sc); + printf("fb_open: %s\n", strerror(ret)); + return ret; } if (!pattern_name) { diff --git a/commands/memcmp.c b/commands/memcmp.c index d1c4f5205d..76fbe078f0 100644 --- a/commands/memcmp.c +++ b/commands/memcmp.c @@ -42,7 +42,8 @@ static int do_memcmp(int argc, char *argv[]) int ret = 1; int offset = 0; - if (memcpy_parse_options(argc, argv, &sourcefd, &destfd, &count) < 0) + if (memcpy_parse_options(argc, argv, &sourcefd, &destfd, &count, + O_RWSIZE_1, O_RDONLY) < 0) return 1; buf = xmalloc(RW_BUF_SIZE + RW_BUF_SIZE); diff --git a/commands/memcpy.c b/commands/memcpy.c index 5f0047f87c..b2cea8c09d 100644 --- a/commands/memcpy.c +++ b/commands/memcpy.c @@ -41,7 +41,8 @@ static int do_memcpy(int argc, char *argv[]) int ret = 0; char *buf; - if (memcpy_parse_options(argc, argv, &sourcefd, &destfd, &count) < 0) + if (memcpy_parse_options(argc, argv, &sourcefd, &destfd, &count, + 0, O_WRONLY | O_CREAT) < 0) return 1; buf = xmalloc(RW_BUF_SIZE); diff --git a/commands/mmc_extcsd.c b/commands/mmc_extcsd.c index 889a6c614a..c27bb722ea 100644 --- a/commands/mmc_extcsd.c +++ b/commands/mmc_extcsd.c @@ -861,10 +861,10 @@ static int print_field(u8 *reg, int index) str); val = get_field_val(EXT_CSD_BOOT_BUS_CONDITIONS, 2, 0x1); if (val) - str = "Reset bus width to x1, SDR and backward compatible timings after boot operation"; - else str = "Retain BOOT_BUS_WIDTH and BOOT_MODE values after boot operation"; - printf("\t[2] RESET_BOOT_BUS_CONDITIONS: %s", str); + else + str = "Reset bus width to x1, SDR and backward compatible timings after boot operation"; + printf("\t[2] RESET_BOOT_BUS_CONDITIONS: %s\n", str); val = get_field_val(EXT_CSD_BOOT_BUS_CONDITIONS, 3, 0x3); switch (val) { case 0x0: @@ -877,7 +877,7 @@ static int print_field(u8 *reg, int index) str = "Use DDR in boot operation"; break; } - printf("\t[3] BOOT_MODE: %s\n", str); + printf("\t[4-3] BOOT_MODE: %s\n", str); return 1; case EXT_CSD_BOOT_CONFIG_PROT: diff --git a/commands/splash.c b/commands/splash.c index 2b70b29683..abd82873cb 100644 --- a/commands/splash.c +++ b/commands/splash.c @@ -54,8 +54,9 @@ static int do_splash(int argc, char *argv[]) sc = fb_open(fbdev); if (IS_ERR(sc)) { - perror("fd_open"); - return PTR_ERR(sc); + int ret = -PTR_ERR(sc); + printf("fb_open: %s\n", strerror(ret)); + return ret; } buf = gui_screen_render_buffer(sc); diff --git a/common/Kconfig b/common/Kconfig index f5777a304c..8aad5baecd 100644 --- a/common/Kconfig +++ b/common/Kconfig @@ -1287,6 +1287,14 @@ config DEBUG_INITCALLS help If enabled this will print initcall traces. + +config PBL_BREAK + bool "Execute software break on pbl start" + depends on ARM + help + If this enabled, barebox will be compiled with BKPT instruction + on early pbl init. This option should be used only with JTAG debugger! + endmenu config HAS_DEBUG_LL diff --git a/common/blspec.c b/common/blspec.c index 41f2a4c534..66e5033e35 100644 --- a/common/blspec.c +++ b/common/blspec.c @@ -63,7 +63,11 @@ static int blspec_boot(struct bootentry *be, int verbose, int dryrun) }; globalvar_set_match("linux.bootargs.dyn.", ""); - globalvar_set_match("bootm.", ""); + globalvar_set_match("bootm.image", ""); + globalvar_set_match("bootm.oftree", ""); + globalvar_set_match("bootm.initrd", ""); + + bootm_data_init_defaults(&data); devicetree = blspec_entry_var_get(entry, "devicetree"); initrd = blspec_entry_var_get(entry, "initrd"); diff --git a/common/boot.c b/common/boot.c index 974eaf5d02..14d4fe9d64 100644 --- a/common/boot.c +++ b/common/boot.c @@ -92,6 +92,8 @@ static int bootscript_boot(struct bootentry *entry, int verbose, int dryrun) return 0; } + globalvar_add_simple("linux.bootargs.dyn.ip", NULL); + globalvar_add_simple("linux.bootargs.dyn.root", NULL); globalvar_set_match("linux.bootargs.dyn.", ""); ret = run_command(bs->scriptpath); @@ -117,12 +119,22 @@ void boot_set_watchdog_timeout(unsigned int timeout) boot_watchdog_timeout = timeout; } -static int init_boot_watchdog_timeout(void) +static char *global_boot_default; +static char *global_user; + +static int init_boot(void) { - return globalvar_add_simple_int("boot.watchdog_timeout", - &boot_watchdog_timeout, "%u"); + global_boot_default = xstrdup("net"); + globalvar_add_simple_string("boot.default", &global_boot_default); + globalvar_add_simple_int("boot.watchdog_timeout", + &boot_watchdog_timeout, "%u"); + globalvar_add_simple("linux.bootargs.base", NULL); + global_user = xstrdup("none"); + globalvar_add_simple_string("user", &global_user); + + return 0; } -late_initcall(init_boot_watchdog_timeout); +late_initcall(init_boot); BAREBOX_MAGICVAR_NAMED(global_watchdog_timeout, global.boot.watchdog_timeout, "Watchdog enable timeout in seconds before booting"); diff --git a/common/console_common.c b/common/console_common.c index a4d2636753..6916f651e5 100644 --- a/common/console_common.c +++ b/common/console_common.c @@ -29,6 +29,7 @@ #include <password.h> #include <clock.h> #include <malloc.h> +#include <linux/pstore.h> #include <asm-generic/div64.h> #ifndef CONFIG_CONSOLE_NONE @@ -116,7 +117,10 @@ static void pr_puts(int level, const char *str) barebox_logbuf_num_messages++; } } + + pstore_log(str); nolog: + if (level > barebox_loglevel) return; diff --git a/common/reset_source.c b/common/reset_source.c index 338d7b9acb..1955d3f87e 100644 --- a/common/reset_source.c +++ b/common/reset_source.c @@ -28,6 +28,7 @@ static const char * const reset_src_names[] = { [RESET_JTAG] = "JTAG", [RESET_THERM] = "THERM", [RESET_EXT] = "EXT", + [RESET_BROWNOUT] = "BROWNOUT", }; static enum reset_src_type reset_source; diff --git a/common/startup.c b/common/startup.c index 5686c0fb32..92bf94f849 100644 --- a/common/startup.c +++ b/common/startup.c @@ -152,12 +152,6 @@ static const char * const global_autoboot_abort_keys[] = { "ctrl-c", }; static int global_autoboot_timeout = 3; -static char *global_boot_default; -static char *global_editcmd; -static char *global_linux_bootargs_base; -static char *global_linux_bootargs_dyn_ip; -static char *global_linux_bootargs_dyn_root; -static char *global_user; static bool test_abort(void) { @@ -188,20 +182,95 @@ static bool test_abort(void) } #define INITFILE "/env/bin/init" +#define MENUFILE "/env/menu/mainmenu" + +static enum autoboot_state autoboot_state = AUTOBOOT_UNKNOWN; + +/** + * set_autoboot_state - set the autoboot state + * @autoboot: the state to set + * + * This functions sets the autoboot state to the given state. This can be called + * by boards which have its own idea when and how the autoboot shall be aborted. + */ +void set_autoboot_state(enum autoboot_state autoboot) +{ + autoboot_state = autoboot; +} + +/** + * do_autoboot_countdown - print autoboot countdown to console + * + * This prints the autoboot countdown to the console and waits for input. This + * evaluates the global.autoboot_about_key to determine which keys are allowed + * to interrupt booting and also global.autoboot_timeout to determine the timeout + * for the counter. This function can be called multiple times, it is executed + * only the first time. + * + * Returns an enum autoboot_state value containing the user input. + */ +enum autoboot_state do_autoboot_countdown(void) +{ + unsigned flags = CONSOLE_COUNTDOWN_EXTERN; + int ret; + struct stat s; + bool menu_exists; + char *abortkeys = NULL; + unsigned char outkey; + + if (autoboot_state != AUTOBOOT_UNKNOWN) + return autoboot_state; + + globalvar_add_simple_enum("autoboot_abort_key", + &global_autoboot_abort_key, + global_autoboot_abort_keys, + ARRAY_SIZE(global_autoboot_abort_keys)); + globalvar_add_simple_int("autoboot_timeout", + &global_autoboot_timeout, "%u"); + + menu_exists = stat(MENUFILE, &s) == 0; + + if (menu_exists) { + printf("\nHit m for menu or %s to stop autoboot: ", + global_autoboot_abort_keys[global_autoboot_abort_key]); + abortkeys = "m"; + } else { + printf("\nHit %s to stop autoboot: ", + global_autoboot_abort_keys[global_autoboot_abort_key]); + } + + switch (global_autoboot_abort_key) { + case 0: + flags |= CONSOLE_COUNTDOWN_ANYKEY; + break; + case 1: + flags |= CONSOLE_COUNTDOWN_CTRLC; + break; + default: + break; + } + + ret = console_countdown(global_autoboot_timeout, flags, abortkeys, + &outkey); + + if (ret == 0) + autoboot_state = AUTOBOOT_BOOT; + else if (menu_exists && outkey == 'm') + autoboot_state = AUTOBOOT_MENU; + else + autoboot_state = AUTOBOOT_ABORT; + + return autoboot_state; +} static int run_init(void) { DIR *dir; struct dirent *d; const char *initdir = "/env/init"; - const char *menufile = "/env/menu/mainmenu"; - struct stat s; - unsigned flags = CONSOLE_COUNTDOWN_EXTERN; - unsigned char outkey; - int ret; - bool menu_exists; bool env_bin_init_exists; - char *abortkeys = NULL; + enum autoboot_state autoboot; + struct stat s; setenv("PATH", "/env/bin"); @@ -213,26 +282,6 @@ static int run_init(void) return 0; } - global_editcmd = xstrdup("sedit"); - global_user = xstrdup("none"); - globalvar_add_simple_string("user", &global_user); - global_boot_default = xstrdup("net"); - - globalvar_add_simple_enum("autoboot_abort_key", - &global_autoboot_abort_key, - global_autoboot_abort_keys, - ARRAY_SIZE(global_autoboot_abort_keys)); - globalvar_add_simple_int("autoboot_timeout", - &global_autoboot_timeout, "%u"); - globalvar_add_simple_string("boot.default", &global_boot_default); - globalvar_add_simple_string("editcmd", &global_editcmd); - globalvar_add_simple_string("linux.bootargs.base", - &global_linux_bootargs_base); - globalvar_add_simple_string("linux.bootargs.dyn.ip", - &global_linux_bootargs_dyn_ip); - globalvar_add_simple_string("linux.bootargs.dyn.root", - &global_linux_bootargs_dyn_root); - /* Unblank console cursor */ printf("\e[?25h"); @@ -259,44 +308,18 @@ static int run_init(void) closedir(dir); } - menu_exists = stat(menufile, &s) == 0; - - if (menu_exists) { - printf("\nHit m for menu or %s to stop autoboot: ", - global_autoboot_abort_keys[global_autoboot_abort_key]); - abortkeys = "m"; - } else { - printf("\nHit %s to stop autoboot: ", - global_autoboot_abort_keys[global_autoboot_abort_key]); - } - - switch (global_autoboot_abort_key) { - case 0: - flags |= CONSOLE_COUNTDOWN_ANYKEY; - break; - case 1: - flags |= CONSOLE_COUNTDOWN_CTRLC; - break; - default: - break; - } - - ret = console_countdown(global_autoboot_timeout, flags, abortkeys, - &outkey); + autoboot = do_autoboot_countdown(); - if (ret == 0) + if (autoboot == AUTOBOOT_BOOT) run_command("boot"); console_ctrlc_allow(); - if (menu_exists) { - if (outkey == 'm') - run_command(menufile); + if (autoboot == AUTOBOOT_MENU) + run_command(MENUFILE); - printf("Enter 'exit' to get back to the menu\n"); - run_shell(); - run_command(menufile); - } + run_shell(); + run_command(MENUFILE); return 0; } diff --git a/defaultenv/defaultenv-2-base/init/automount b/defaultenv/defaultenv-2-base/init/automount index 5e0cb4d938..0996cea04d 100644 --- a/defaultenv/defaultenv-2-base/init/automount +++ b/defaultenv/defaultenv-2-base/init/automount @@ -1,6 +1,6 @@ #!/bin/sh -# automount tftp server based on $eth0.serverip +# automount tftp server mkdir -p /mnt/tftp automount /mnt/tftp 'ifup -a && mount -t tftp $global.net.server /mnt/tftp' diff --git a/drivers/clk/clk-divider.c b/drivers/clk/clk-divider.c index d9d3407e75..78b4153171 100644 --- a/drivers/clk/clk-divider.c +++ b/drivers/clk/clk-divider.c @@ -22,8 +22,6 @@ #include <linux/log2.h> #include <asm-generic/div64.h> -#define div_mask(d) ((1 << ((d)->width)) - 1) - static unsigned int _get_table_maxdiv(const struct clk_div_table *table) { unsigned int maxdiv = 0; @@ -35,15 +33,16 @@ static unsigned int _get_table_maxdiv(const struct clk_div_table *table) return maxdiv; } -static unsigned int _get_maxdiv(struct clk_divider *divider) +static unsigned int _get_maxdiv(const struct clk_div_table *table, u8 width, + unsigned long flags) { - if (divider->flags & CLK_DIVIDER_ONE_BASED) - return div_mask(divider); - if (divider->flags & CLK_DIVIDER_POWER_OF_TWO) - return 1 << div_mask(divider); - if (divider->table) - return _get_table_maxdiv(divider->table); - return div_mask(divider) + 1; + if (flags & CLK_DIVIDER_ONE_BASED) + return clk_div_mask(width); + if (flags & CLK_DIVIDER_POWER_OF_TWO) + return 1 << clk_div_mask(width); + if (table) + return _get_table_maxdiv(table); + return clk_div_mask(width) + 1; } static unsigned int _get_table_div(const struct clk_div_table *table, @@ -79,14 +78,15 @@ static unsigned int _get_table_val(const struct clk_div_table *table, return 0; } -static unsigned int _get_val(struct clk_divider *divider, unsigned int div) +static unsigned int _get_val(const struct clk_div_table *table, + unsigned int div, unsigned long flags) { - if (divider->flags & CLK_DIVIDER_ONE_BASED) + if (flags & CLK_DIVIDER_ONE_BASED) return div; - if (divider->flags & CLK_DIVIDER_POWER_OF_TWO) + if (flags & CLK_DIVIDER_POWER_OF_TWO) return __ffs(div); - if (divider->table) - return _get_table_val(divider->table, div); + if (table) + return _get_table_val(table, div); return div - 1; } @@ -106,12 +106,10 @@ static unsigned long clk_divider_recalc_rate(struct clk *clk, unsigned long parent_rate) { struct clk_divider *divider = container_of(clk, struct clk_divider, clk); - unsigned int div, val; + unsigned int val; val = readl(divider->reg) >> divider->shift; - val &= div_mask(divider); - - div = _get_div(divider->table, val, divider->flags, divider->width); + val &= clk_div_mask(divider->width); return divider_recalc_rate(clk, parent_rate, val, divider->table, divider->flags, divider->width); @@ -134,19 +132,53 @@ static bool _is_valid_table_div(const struct clk_div_table *table, return false; } -static bool _is_valid_div(struct clk_divider *divider, unsigned int div) +static bool _is_valid_div(const struct clk_div_table *table, unsigned int div, + unsigned long flags) { - if (divider->flags & CLK_DIVIDER_POWER_OF_TWO) + if (flags & CLK_DIVIDER_POWER_OF_TWO) return is_power_of_2(div); - if (divider->table) - return _is_valid_table_div(divider->table, div); + if (table) + return _is_valid_table_div(table, div); return true; } +static int _round_up_table(const struct clk_div_table *table, int div) +{ + const struct clk_div_table *clkt; + int up = _get_table_maxdiv(table); + + for (clkt = table; clkt->div; clkt++) { + if (clkt->div == div) + return clkt->div; + else if (clkt->div < div) + continue; + + if ((clkt->div - div) < (up - div)) + up = clkt->div; + } + + return up; +} + +static int _div_round_up(const struct clk_div_table *table, + unsigned long parent_rate, unsigned long rate, + unsigned long flags) +{ + int div = DIV_ROUND_UP(parent_rate, rate); + + if (flags & CLK_DIVIDER_POWER_OF_TWO) + div = __roundup_pow_of_two(div); + if (table) + div = _round_up_table(table, div); + + return div; +} + static int clk_divider_bestdiv(struct clk *clk, unsigned long rate, - unsigned long *best_parent_rate) + unsigned long *best_parent_rate, + const struct clk_div_table *table, u8 width, + unsigned long flags) { - struct clk_divider *divider = container_of(clk, struct clk_divider, clk); int i, bestdiv = 0; unsigned long parent_rate, best = 0, now, maxdiv; unsigned long parent_rate_saved = *best_parent_rate; @@ -154,11 +186,11 @@ static int clk_divider_bestdiv(struct clk *clk, unsigned long rate, if (!rate) rate = 1; - maxdiv = _get_maxdiv(divider); + maxdiv = _get_maxdiv(table, width, flags); if (!(clk->flags & CLK_SET_RATE_PARENT)) { parent_rate = *best_parent_rate; - bestdiv = DIV_ROUND_UP(parent_rate, rate); + bestdiv = _div_round_up(table, parent_rate, rate, flags); bestdiv = bestdiv == 0 ? 1 : bestdiv; bestdiv = bestdiv > maxdiv ? maxdiv : bestdiv; return bestdiv; @@ -171,7 +203,7 @@ static int clk_divider_bestdiv(struct clk *clk, unsigned long rate, maxdiv = min(ULONG_MAX / rate, maxdiv); for (i = 1; i <= maxdiv; i++) { - if (!_is_valid_div(divider, i)) + if (!_is_valid_div(table, i, flags)) continue; if (rate * i == parent_rate_saved) { /* @@ -193,25 +225,50 @@ static int clk_divider_bestdiv(struct clk *clk, unsigned long rate, } if (!bestdiv) { - bestdiv = _get_maxdiv(divider); + bestdiv = _get_maxdiv(table, width, flags); *best_parent_rate = clk_round_rate(clk_get_parent(clk), 1); } return bestdiv; } +long divider_round_rate(struct clk *clk, unsigned long rate, + unsigned long *prate, const struct clk_div_table *table, + u8 width, unsigned long flags) +{ + int div; + + div = clk_divider_bestdiv(clk, rate, prate, table, width, flags); + + return DIV_ROUND_UP(*prate, div); +} + static long clk_divider_round_rate(struct clk *clk, unsigned long rate, - unsigned long *parent_rate) + unsigned long *prate) { struct clk_divider *divider = container_of(clk, struct clk_divider, clk); - int div; if (divider->flags & CLK_DIVIDER_READ_ONLY) - return clk_divider_recalc_rate(clk, *parent_rate); + return clk_divider_recalc_rate(clk, *prate); - div = clk_divider_bestdiv(clk, rate, parent_rate); + return divider_round_rate(clk, rate, prate, divider->table, + divider->width, divider->flags); +} - return *parent_rate / div; +int divider_get_val(unsigned long rate, unsigned long parent_rate, + const struct clk_div_table *table, u8 width, + unsigned long flags) +{ + unsigned int div, value; + + div = DIV_ROUND_UP(parent_rate, rate); + + if (!_is_valid_div(table, div, flags)) + return -EINVAL; + + value = _get_val(table, div, flags); + + return min_t(unsigned int, value, clk_div_mask(width)); } static int clk_divider_set_rate(struct clk *clk, unsigned long rate, @@ -226,23 +283,22 @@ static int clk_divider_set_rate(struct clk *clk, unsigned long rate, if (clk->flags & CLK_SET_RATE_PARENT) { unsigned long best_parent_rate = parent_rate; - div = clk_divider_bestdiv(clk, rate, &best_parent_rate); + div = clk_divider_bestdiv(clk, rate, &best_parent_rate, + divider->table, divider->width, divider->flags); clk_set_rate(clk_get_parent(clk), best_parent_rate); } else { div = DIV_ROUND_UP(parent_rate, rate); } - value = _get_val(divider, div); - - if (value > div_mask(divider)) - value = div_mask(divider); + value = divider_get_val(rate, parent_rate, divider->table, + divider->width, divider->flags); val = readl(divider->reg); - val &= ~(div_mask(divider) << divider->shift); + val &= ~(clk_div_mask(divider->width) << divider->shift); val |= value << divider->shift; if (clk->flags & CLK_DIVIDER_HIWORD_MASK) - val |= div_mask(divider) << (divider->shift + 16); + val |= clk_div_mask(divider->width) << (divider->shift + 16); writel(val, divider->reg); diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c index 4c7aee4a0b..f96009896a 100644 --- a/drivers/gpio/gpiolib.c +++ b/drivers/gpio/gpiolib.c @@ -475,6 +475,13 @@ int gpio_get_num(struct device_d *dev, int gpio) return -EPROBE_DEFER; } +struct gpio_chip *gpio_get_chip(int gpio) +{ + struct gpio_info *gi = gpio_to_desc(gpio); + + return gi ? gi->chip : NULL; +} + #ifdef CONFIG_CMD_GPIO static int do_gpiolib(int argc, char *argv[]) { diff --git a/drivers/hab/habv4.c b/drivers/hab/habv4.c index 496fbe3ccd..6a60be6853 100644 --- a/drivers/hab/habv4.c +++ b/drivers/hab/habv4.c @@ -419,7 +419,7 @@ static bool is_known_rng_fail_event(const uint8_t *data, size_t len) int i; for (i = 0; i < ARRAY_SIZE(habv4_known_rng_fail_events); i++) { if (memcmp(data, habv4_known_rng_fail_events[i], - min(len, (uint32_t)RNG_FAIL_EVENT_SIZE)) == 0) { + min_t(size_t, len, RNG_FAIL_EVENT_SIZE)) == 0) { return true; } } @@ -469,6 +469,7 @@ static int habv4_get_status(const struct habv4_rvt *rvt) } len = sizeof(data); + index = 0; while (rvt->report_event(HAB_STATUS_FAILURE, index, data, &len) == HAB_STATUS_SUCCESS) { pr_err("-------- HAB failure Event %d --------\n", index); pr_err("event data:\n"); @@ -480,6 +481,7 @@ static int habv4_get_status(const struct habv4_rvt *rvt) /* Check reason for stopping */ len = sizeof(data); + index = 0; if (rvt->report_event(HAB_STATUS_ANY, index, NULL, &len) == HAB_STATUS_SUCCESS) pr_err("ERROR: Recompile with larger event data buffer (at least %d bytes)\n\n", len); diff --git a/drivers/i2c/busses/i2c-gpio.c b/drivers/i2c/busses/i2c-gpio.c index 708193344a..5ab43fe935 100644 --- a/drivers/i2c/busses/i2c-gpio.c +++ b/drivers/i2c/busses/i2c-gpio.c @@ -94,18 +94,25 @@ static int of_i2c_gpio_probe(struct device_node *np, if (!IS_ENABLED(CONFIG_OFDEVICE)) return -ENODEV; - if (of_gpio_count(np) < 2) - return -ENODEV; + pdata->sda_pin = of_get_named_gpio_flags(np, "sda-gpios", 0, NULL); + pdata->scl_pin = of_get_named_gpio_flags(np, "scl-gpios", 0, NULL); + + if ((!gpio_is_valid(pdata->sda_pin) || !gpio_is_valid(pdata->scl_pin)) + && (of_gpio_count(np) >= 2)) { + /* Note: The gpios property is marked as deprecated */ + ret = of_get_gpio(np, 0); + if (ret < 0) + return ret; + pdata->sda_pin = ret; - ret = of_get_gpio(np, 0); - if (ret < 0) - return ret; - pdata->sda_pin = ret; + ret = of_get_gpio(np, 1); + if (ret < 0) + return ret; + pdata->scl_pin = ret; + } - ret = of_get_gpio(np, 1); - if (ret < 0) - return ret; - pdata->scl_pin = ret; + if (!gpio_is_valid(pdata->sda_pin) || !gpio_is_valid(pdata->scl_pin)) + return -ENODEV; of_property_read_u32(np, "i2c-gpio,delay-us", &pdata->udelay); diff --git a/drivers/i2c/i2c-mux.c b/drivers/i2c/i2c-mux.c index f87e1fadb6..ab31da61d6 100644 --- a/drivers/i2c/i2c-mux.c +++ b/drivers/i2c/i2c-mux.c @@ -96,7 +96,7 @@ struct i2c_adapter *i2c_add_mux_adapter(struct i2c_adapter *parent, /* * Try to populate the mux adapter's device_node, expands to - * nothing if !CONFIG_OF. + * nothing if !CONFIG_OFDEVICE. */ if (mux_dev->device_node) { struct device_node *child; diff --git a/drivers/mfd/syscon.c b/drivers/mfd/syscon.c index b1ff1b1eac..8099419378 100644 --- a/drivers/mfd/syscon.c +++ b/drivers/mfd/syscon.c @@ -174,6 +174,25 @@ struct regmap *syscon_regmap_lookup_by_compatible(const char *s) return regmap; } +struct regmap *syscon_regmap_lookup_by_phandle(struct device_node *np, + const char *property) +{ + struct device_node *syscon_np; + struct regmap *regmap; + + if (property) + syscon_np = of_parse_phandle(np, property, 0); + else + syscon_np = np; + + if (!syscon_np) + return ERR_PTR(-ENODEV); + + regmap = syscon_node_to_regmap(syscon_np); + + return regmap; +} + static int syscon_probe(struct device_d *dev) { struct syscon *syscon; diff --git a/drivers/mtd/spi-nor/spi-nor.c b/drivers/mtd/spi-nor/spi-nor.c index 43bd402f9f..b2052ce0af 100644 --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c @@ -671,6 +671,27 @@ static const struct spi_device_id spi_nor_ids[] = { { "640s33b", INFO(0x898913, 0, 64 * 1024, 128, 0) }, /* ISSI */ + { "is25cd512", INFO(0x7f9d20, 0, 32 * 1024, 2, SECT_4K) }, + { "is25lq040b", INFO(0x9d4013, 0, 64 * 1024, 8, + SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, + { "is25lp016d", INFO(0x9d6015, 0, 64 * 1024, 32, + SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, + { "is25lp080d", INFO(0x9d6014, 0, 64 * 1024, 16, + SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, + { "is25lp032", INFO(0x9d6016, 0, 64 * 1024, 64, + SECT_4K | SPI_NOR_DUAL_READ) }, + { "is25lp064", INFO(0x9d6017, 0, 64 * 1024, 128, + SECT_4K | SPI_NOR_DUAL_READ) }, + { "is25lp128", INFO(0x9d6018, 0, 64 * 1024, 256, + SECT_4K | SPI_NOR_DUAL_READ) }, + { "is25lp256", INFO(0x9d6019, 0, 64 * 1024, 512, + SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) }, + { "is25wp032", INFO(0x9d7016, 0, 64 * 1024, 64, + SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, + { "is25wp064", INFO(0x9d7017, 0, 64 * 1024, 128, + SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, + { "is25wp128", INFO(0x9d7018, 0, 64 * 1024, 256, + SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, { "is25lq128", INFO(0x9d6018, 0, 64 * 1024, 256, 0) }, /* Macronix */ diff --git a/drivers/net/cpsw.c b/drivers/net/cpsw.c index 65f71c6fce..df8981d02e 100644 --- a/drivers/net/cpsw.c +++ b/drivers/net/cpsw.c @@ -993,8 +993,13 @@ static int cpsw_phy_sel_init(struct cpsw_priv *priv, struct device_node *np) phy_sel_addr = (void *)addr; - if (of_property_read_bool(np, "rmii-clock-ext")) - rmii_clock_external = true; + /* + * As of Linux-5.1 this is set to true in am33xx-l4.dtsi and not + * overwritten by any board. This is set to false in am437x-l4.dtsi + * though, so once we support this SoC we have to configure this from + * the device tree. + */ + rmii_clock_external = true; return 0; } @@ -1062,11 +1067,10 @@ static int cpsw_probe_dt(struct cpsw_priv *priv) priv->slaves = xzalloc(sizeof(struct cpsw_slave) * priv->num_slaves); - physel = of_parse_phandle(dev->device_node, "cpsw-phy-sel", 0); + physel = of_find_compatible_node(NULL, NULL, "ti,am3352-phy-gmii-sel"); if (!physel) { - physel = of_get_child_by_name(dev->device_node, "cpsw-phy-sel"); - if (!physel) - dev_err(dev, "Phy mode node not found\n"); + dev_err(dev, "Cannot find ti,am3352-phy-gmii-sel node\n"); + return -EINVAL; } ret = cpsw_phy_sel_init(priv, physel); if (ret) diff --git a/drivers/pinctrl/Kconfig b/drivers/pinctrl/Kconfig index 46badeee06..e2fb0af756 100644 --- a/drivers/pinctrl/Kconfig +++ b/drivers/pinctrl/Kconfig @@ -90,6 +90,12 @@ config PINCTRL_VF610 default y if ARCH_VF610 help Pinmux controller found on Vybrid VF610 family of SoCs + +config PINCTRL_STM32 + bool + default y if ARCH_STM32MP + help + Pinmux and GPIO controller found on STM32 family endif endmenu diff --git a/drivers/pinctrl/Makefile b/drivers/pinctrl/Makefile index 35b2d4707c..9cb5e99477 100644 --- a/drivers/pinctrl/Makefile +++ b/drivers/pinctrl/Makefile @@ -11,5 +11,6 @@ obj-$(CONFIG_PINCTRL_TEGRA20) += pinctrl-tegra20.o obj-$(CONFIG_PINCTRL_TEGRA30) += pinctrl-tegra30.o obj-$(CONFIG_PINCTRL_TEGRA_XUSB) += pinctrl-tegra-xusb.o obj-$(CONFIG_PINCTRL_VF610) += pinctrl-vf610.o +obj-$(CONFIG_PINCTRL_STM32) += pinctrl-stm32.o obj-$(CONFIG_ARCH_MVEBU) += mvebu/ diff --git a/drivers/pinctrl/pinctrl-stm32.c b/drivers/pinctrl/pinctrl-stm32.c new file mode 100644 index 0000000000..7f04cea50b --- /dev/null +++ b/drivers/pinctrl/pinctrl-stm32.c @@ -0,0 +1,429 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2015 Maxime Coquelin + * Copyright (C) 2017 STMicroelectronics + * Copyright (C) 2019 Ahmad Fatoum, Pengutronix + */ + +#include <common.h> +#include <init.h> +#include <io.h> +#include <of.h> +#include <of_address.h> +#include <pinctrl.h> +#include <gpio.h> +#include <hwspinlock.h> +#include <malloc.h> +#include <linux/clk.h> +#include <soc/stm32/gpio.h> + +#define STM32_PIN_NO(x) ((x) << 8) +#define STM32_GET_PIN_NO(x) ((x) >> 8) +#define STM32_GET_PIN_FUNC(x) ((x) & 0xff) + +struct stm32_gpio_bank { + void __iomem *base; + struct gpio_chip chip; + struct clk *clk; + const char *name; +}; + +struct stm32_pinctrl { + struct pinctrl_device pdev; + struct hwspinlock hws; + struct stm32_gpio_bank gpio_banks[]; +}; + +static inline struct stm32_pinctrl *to_stm32_pinctrl(struct pinctrl_device *pdev) +{ + return container_of(pdev, struct stm32_pinctrl, pdev); +} + +static inline struct stm32_gpio_bank *to_stm32_gpio_bank(struct gpio_chip *chip) +{ + return container_of(chip, struct stm32_gpio_bank, chip); +} + +static inline int stm32_gpio_pin(int gpio, struct stm32_gpio_bank **bank) +{ + if (bank) { + struct gpio_chip *chip; + + chip = gpio_get_chip(gpio); + if (!chip) + return -EINVAL; + + *bank = to_stm32_gpio_bank(chip); + } + + return gpio % STM32_GPIO_PINS_PER_BANK; +} + +static inline u32 stm32_gpio_get_mode(u32 function) +{ + switch (function) { + case STM32_PIN_GPIO: + return 0; + case STM32_PIN_AF(0) ... STM32_PIN_AF(15): + return 2; + case STM32_PIN_ANALOG: + return 3; + } + + return 0; +} + +static inline u32 stm32_gpio_get_alt(u32 function) +{ + switch (function) { + case STM32_PIN_GPIO: + return 0; + case STM32_PIN_AF(0) ... STM32_PIN_AF(15): + return function - 1; + case STM32_PIN_ANALOG: + return 0; + } + + return 0; +} + +static int stm32_pinctrl_set_state(struct pinctrl_device *pdev, struct device_node *group) +{ + struct stm32_pinctrl *pinctrl = to_stm32_pinctrl(pdev); + struct device_node *pins; + int ret; + + ret = hwspinlock_lock_timeout(&pinctrl->hws, 10); + if (ret == -ETIMEDOUT) { + dev_err(pdev->dev, "hw spinlock timeout\n"); + return ret; + } + + for_each_child_of_node(group, pins) { + int num_pins = 0, i; + u32 slew_rate; + bool adjust_slew_rate = false; + enum stm32_pin_bias bias = -1; + enum stm32_pin_out_type out_type = -1; + enum { PIN_INPUT, PIN_OUTPUT_LOW, PIN_OUTPUT_HIGH } dir = -1; + + of_get_property(pins, "pinmux", &num_pins); + num_pins /= sizeof(__be32); + if (!num_pins) { + dev_err(pdev->dev, "Invalid pinmux property in %s\n", + pins->full_name); + return -EINVAL; + } + + ret = of_property_read_u32(pins, "slew-rate", &slew_rate); + if (!ret) + adjust_slew_rate = true; + + if (of_get_property(pins, "bias-disable", NULL)) + bias = STM32_PIN_NO_BIAS; + else if (of_get_property(pins, "bias-pull-up", NULL)) + bias = STM32_PIN_PULL_UP; + else if (of_get_property(pins, "bias-pull-down", NULL)) + bias = STM32_PIN_PULL_DOWN; + + if (of_get_property(pins, "drive-push-pull", NULL)) + out_type = STM32_PIN_OUT_PUSHPULL; + else if (of_get_property(pins, "drive-open-drain", NULL)) + out_type = STM32_PIN_OUT_OPENDRAIN; + + if (of_get_property(pins, "input-enable", NULL)) + dir = PIN_INPUT; + else if (of_get_property(pins, "output-low", NULL)) + dir = PIN_OUTPUT_LOW; + else if (of_get_property(pins, "output-high", NULL)) + dir = PIN_OUTPUT_HIGH; + + dev_dbg(pdev->dev, "%s: multiplexing %d pins\n", + pins->full_name, num_pins); + + for (i = 0; i < num_pins; i++) { + struct stm32_gpio_bank *bank = NULL; + u32 pinfunc, mode, alt; + unsigned func; + int offset; + + ret = of_property_read_u32_index(pins, "pinmux", + i, &pinfunc); + if (ret) + return ret; + + func = STM32_GET_PIN_FUNC(pinfunc); + offset = stm32_gpio_pin(STM32_GET_PIN_NO(pinfunc), &bank); + if (offset < 0) + return -ENODEV; + + dev_dbg(pdev->dev, "configuring port %s pin %u with:\n\t" + "fn %u, mode %u, alt %u\n", + bank->name, offset, func, mode, alt); + + mode = stm32_gpio_get_mode(func); + alt = stm32_gpio_get_alt(func); + + clk_enable(bank->clk); + + __stm32_pmx_set_mode(bank->base, offset, mode, alt); + + if (adjust_slew_rate) + __stm32_pmx_set_speed(bank->base, offset, slew_rate); + + if (bias != -1) + __stm32_pmx_set_bias(bank->base, offset, bias); + + if (out_type != -1) + __stm32_pmx_set_output_type(bank->base, offset, out_type); + + if (dir == PIN_INPUT) + __stm32_pmx_gpio_input(bank->base, offset); + else if (dir == PIN_OUTPUT_LOW) + __stm32_pmx_gpio_output(bank->base, offset, 0); + else if (dir == PIN_OUTPUT_HIGH) + __stm32_pmx_gpio_output(bank->base, offset, 1); + + clk_disable(bank->clk); + } + } + + hwspinlock_unlock(&pinctrl->hws); + + return 0; +} + +/* GPIO functions */ + +static int stm32_gpio_get_direction(struct gpio_chip *chip, unsigned int gpio) +{ + struct stm32_gpio_bank *bank = to_stm32_gpio_bank(chip); + int ret; + u32 mode, alt; + + clk_enable(bank->clk); + + __stm32_pmx_get_mode(bank->base, stm32_gpio_pin(gpio, NULL), &mode, &alt); + if ((alt == 0) && (mode == 0)) + ret = 1; + else if ((alt == 0) && (mode == 1)) + ret = 0; + else + ret = -EINVAL; + + clk_disable(bank->clk); + + return ret; +} + +static void stm32_gpio_set(struct gpio_chip *chip, unsigned gpio, int value) +{ + struct stm32_gpio_bank *bank = to_stm32_gpio_bank(chip); + + clk_enable(bank->clk); + + __stm32_pmx_gpio_set(bank->base, stm32_gpio_pin(gpio, NULL), value); + + clk_disable(bank->clk); +} + +static int stm32_gpio_get(struct gpio_chip *chip, unsigned gpio) +{ + struct stm32_gpio_bank *bank = to_stm32_gpio_bank(chip); + int ret; + + clk_enable(bank->clk); + + ret = __stm32_pmx_gpio_get(bank->base, stm32_gpio_pin(gpio, NULL)); + + clk_disable(bank->clk); + + return ret; +} + +static int stm32_gpio_direction_input(struct gpio_chip *chip, unsigned gpio) +{ + struct stm32_gpio_bank *bank = to_stm32_gpio_bank(chip); + + clk_enable(bank->clk); + + __stm32_pmx_gpio_input(bank->base, stm32_gpio_pin(gpio, NULL)); + + clk_disable(bank->clk); + + return 0; +} + +static int stm32_gpio_direction_output(struct gpio_chip *chip, + unsigned gpio, int value) +{ + struct stm32_gpio_bank *bank = to_stm32_gpio_bank(chip); + + clk_enable(bank->clk); + + __stm32_pmx_gpio_output(bank->base, stm32_gpio_pin(gpio, NULL), value); + + clk_disable(bank->clk); + + return 0; +} + +static struct gpio_ops stm32_gpio_ops = { + .direction_input = stm32_gpio_direction_input, + .direction_output = stm32_gpio_direction_output, + .get_direction = stm32_gpio_get_direction, + .get = stm32_gpio_get, + .set = stm32_gpio_set, +}; + +static int stm32_gpiochip_add(struct stm32_gpio_bank *bank, + struct device_node *np, + struct device_d *parent) +{ + struct device_d *dev; + struct resource *iores; + enum { PINCTRL_PHANDLE, GPIOCTRL_OFFSET, PINCTRL_OFFSET, PINCOUNT, GPIO_RANGE_NCELLS }; + const __be32 *gpio_ranges; + u32 ngpios; + int id, ret, size; + + dev = of_platform_device_create(np, parent); + if (!dev) + return -ENODEV; + + gpio_ranges = of_get_property(np, "gpio-ranges", &size); + size /= sizeof(__be32); + if (!gpio_ranges || size < GPIO_RANGE_NCELLS) { + dev_err(dev, "Couldn't read 'gpio-ranges' property in %s\n", + np->full_name); + return -EINVAL; + } + + ret = of_property_read_u32(np, "ngpios", &ngpios); + if (ret) + ngpios = be32_to_cpu(gpio_ranges[PINCOUNT]); + + bank->chip.ngpio = ngpios; + + if (size > GPIO_RANGE_NCELLS) { + dev_err(dev, "Unsupported disjunct 'gpio-ranges' in %s\n", + np->full_name); + return -EINVAL; + } + + if (ngpios > STM32_GPIO_PINS_PER_BANK) { + dev_err(dev, "ngpios property expected to be %u at most in %s\n", + ngpios, np->full_name); + return -EINVAL; + } + + ret = of_property_read_string(np, "st,bank-name", &bank->name); + if (ret) + bank->name = np->name; + + iores = dev_request_mem_resource(dev, 0); + if (IS_ERR(iores)) { + dev_err(dev, "Failed to request GPIO memory resource\n"); + return PTR_ERR(iores); + } + + bank->base = IOMEM(iores->start); + + if (dev->id >= 0) { + id = dev->id; + } else { + id = of_alias_get_id(np, "gpio"); + if (id < 0) { + dev_err(dev, "Failed to get GPIO alias\n"); + return id; + } + } + + bank->chip.base = id * STM32_GPIO_PINS_PER_BANK; + bank->chip.ops = &stm32_gpio_ops; + bank->chip.dev = dev; + bank->clk = clk_get(dev, NULL); + if (IS_ERR(bank->clk)) { + dev_err(dev, "failed to get clk (%ld)\n", PTR_ERR(bank->clk)); + return PTR_ERR(bank->clk); + } + + return gpiochip_add(&bank->chip); +} + +static struct pinctrl_ops stm32_pinctrl_ops = { + .set_state = stm32_pinctrl_set_state, +}; + +static int stm32_pinctrl_probe(struct device_d *dev) +{ + struct stm32_pinctrl *pinctrl; + unsigned nbanks = 0; + struct stm32_gpio_bank *gpio_bank; + struct device_node *np = dev->device_node, *child; + int ret; + + if (!of_find_property(np, "pins-are-numbered", NULL)) { + dev_err(dev, "only pins-are-numbered format supported\n"); + return -EINVAL; + } + + for_each_available_child_of_node(np, child) + if (of_property_read_bool(child, "gpio-controller")) + nbanks++; + + pinctrl = xzalloc(sizeof(*pinctrl) + nbanks * sizeof(struct stm32_gpio_bank)); + + pinctrl->pdev.dev = dev; + pinctrl->pdev.ops = &stm32_pinctrl_ops; + + /* hwspinlock property is optional, just log the error */ + ret = hwspinlock_get_by_index(dev, 0, &pinctrl->hws); + if (ret) + dev_dbg(dev, "proceeding without hw spinlock support: (%d)\n", + ret); + + ret = pinctrl_register(&pinctrl->pdev); + if (ret) { + dev_dbg(dev, "pinctrl_register failed: (%d)\n", ret); + return ret; + } + + gpio_bank = pinctrl->gpio_banks; + for_each_available_child_of_node(np, child) { + if (!of_property_read_bool(child, "gpio-controller")) + continue; + + ret = stm32_gpiochip_add(gpio_bank++, child, dev); + if (ret) { + dev_err(dev, "couldn't add gpiochip %s, ret = %d\n", child->name, ret); + return ret; + } + } + + dev_info(dev, "pinctrl/gpio driver registered\n"); + + return 0; +} + +static __maybe_unused struct of_device_id stm32_pinctrl_dt_ids[] = { + { .compatible = "st,stm32f429-pinctrl" }, + { .compatible = "st,stm32f469-pinctrl" }, + { .compatible = "st,stm32f746-pinctrl" }, + { .compatible = "st,stm32h743-pinctrl" }, + { .compatible = "st,stm32mp157-pinctrl" }, + { .compatible = "st,stm32mp157-z-pinctrl" }, + { /* sentinel */ } +}; + +static struct driver_d stm32_pinctrl_driver = { + .name = "stm32-pinctrl", + .probe = stm32_pinctrl_probe, + .of_compatible = DRV_OF_COMPAT(stm32_pinctrl_dt_ids), +}; + +static int stm32_pinctrl_init(void) +{ + return platform_driver_register(&stm32_pinctrl_driver); +} +core_initcall(stm32_pinctrl_init); diff --git a/drivers/serial/serial_ar933x.c b/drivers/serial/serial_ar933x.c index 676b9fadf8..dda604652b 100644 --- a/drivers/serial/serial_ar933x.c +++ b/drivers/serial/serial_ar933x.c @@ -175,6 +175,7 @@ static int ar933x_serial_probe(struct device_d *dev) cdev->putc = ar933x_serial_putc; cdev->getc = ar933x_serial_getc; cdev->setbrg = ar933x_serial_setbaudrate; + cdev->linux_console_name = "ttyATH"; priv->clk = clk_get(dev, NULL); if (IS_ERR(priv->clk)) { diff --git a/drivers/serial/serial_ns16550.c b/drivers/serial/serial_ns16550.c index 4c84d27bdc..3edeb0dcbe 100644 --- a/drivers/serial/serial_ns16550.c +++ b/drivers/serial/serial_ns16550.c @@ -314,12 +314,15 @@ static int ns16550_tstc(struct console_device *cdev) static void ns16550_probe_dt(struct device_d *dev, struct ns16550_priv *priv) { struct device_node *np = dev->device_node; + u32 offset; u32 width = 1; if (!IS_ENABLED(CONFIG_OFDEVICE)) return; of_property_read_u32(np, "clock-frequency", &priv->plat.clock); + if (of_property_read_u32(np, "reg-offset", &offset) == 0) + priv->mmiobase += offset; of_property_read_u32(np, "reg-shift", &priv->plat.shift); of_property_read_u32(np, "reg-io-width", &width); switch (width) { diff --git a/drivers/usb/gadget/f_fastboot.c b/drivers/usb/gadget/f_fastboot.c index bdf0c807df..82a202cc21 100644 --- a/drivers/usb/gadget/f_fastboot.c +++ b/drivers/usb/gadget/f_fastboot.c @@ -767,7 +767,7 @@ static void __maybe_unused cb_boot(struct f_fastboot *f_fb, const char *opt) fastboot_tx_print(f_fb, FASTBOOT_MSG_INFO, "Booting kernel..\n"); globalvar_set_match("linux.bootargs.dyn.", ""); - globalvar_set_match("bootm.", ""); + globalvar_set_match("bootm.image", ""); data.os_file = xstrdup(FASTBOOT_TMPFILE); diff --git a/drivers/usb/imx/Kconfig b/drivers/usb/imx/Kconfig index 07ca41b63a..05f17fbd2f 100644 --- a/drivers/usb/imx/Kconfig +++ b/drivers/usb/imx/Kconfig @@ -18,3 +18,4 @@ config USB_IMX_PHY bool default y if (ARCH_IMX6 || ARCH_VF610) && GENERIC_PHY select STMP_DEVICE + select MFD_SYSCON diff --git a/drivers/usb/misc/usb251xb.c b/drivers/usb/misc/usb251xb.c index 97f55efa82..10d5aa310b 100644 --- a/drivers/usb/misc/usb251xb.c +++ b/drivers/usb/misc/usb251xb.c @@ -339,7 +339,7 @@ static int usb251xb_get_ofdata(struct usb251xb *hub, { struct device_d *dev = hub->dev; struct device_node *np = dev->device_node; - int len, err, i; + int len, i; u32 port, property_u32 = 0; const u32 *cproperty_u32; const char *cproperty_char; @@ -374,10 +374,6 @@ static int usb251xb_get_ofdata(struct usb251xb *hub, return ret; } else if (hub->gpio_reset == -EPROBE_DEFER) { return -EPROBE_DEFER; - } else { - err = hub->gpio_reset; - dev_err(dev, "unable to request GPIO reset pin (%d)\n", err); - return err; } if (of_property_read_u16_array(np, "vendor-id", &hub->vendor_id, 1)) @@ -612,13 +608,13 @@ static const struct of_device_id usb251xb_of_match[] = { /* sentinel */ } }; -#else /* CONFIG_OF */ +#else /* CONFIG_OFDEVICE */ static int usb251xb_get_ofdata(struct usb251xb *hub, struct usb251xb_data *data) { return 0; } -#endif /* CONFIG_OF */ +#endif /* CONFIG_OFDEVICE */ static int usb251xb_probe(struct usb251xb *hub) { diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig index 04efb1a3c8..486ef784eb 100644 --- a/drivers/watchdog/Kconfig +++ b/drivers/watchdog/Kconfig @@ -81,4 +81,12 @@ config RAVE_SP_WATCHDOG depends on RAVE_SP_CORE help Support for the watchdog on RAVE SP device. + +config STM32_IWDG_WATCHDOG + bool "STM32 IWDG" + depends on ARCH_STM32MP + select MFD_SYSCON + help + Enable to support configuration of the STM32's on-SoC IWDG watchdog. + Once started by the user, the IWDG can't be disabled. endif diff --git a/drivers/watchdog/Makefile b/drivers/watchdog/Makefile index 6c8d36c8b8..e731c632c9 100644 --- a/drivers/watchdog/Makefile +++ b/drivers/watchdog/Makefile @@ -11,3 +11,4 @@ obj-$(CONFIG_WATCHDOG_IMX) += imxwd.o obj-$(CONFIG_WATCHDOG_ORION) += orion_wdt.o obj-$(CONFIG_ARCH_BCM283X) += bcm2835_wdt.o obj-$(CONFIG_RAVE_SP_WATCHDOG) += rave-sp-wdt.o +obj-$(CONFIG_STM32_IWDG_WATCHDOG) += stm32_iwdg.o diff --git a/drivers/watchdog/stm32_iwdg.c b/drivers/watchdog/stm32_iwdg.c new file mode 100644 index 0000000000..7c2dc077af --- /dev/null +++ b/drivers/watchdog/stm32_iwdg.c @@ -0,0 +1,293 @@ +// SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause +/* + * Copyright (C) 2018, STMicroelectronics - All Rights Reserved + */ + +#include <common.h> +#include <init.h> +#include <watchdog.h> +#include <restart.h> +#include <asm/io.h> +#include <of_device.h> +#include <linux/log2.h> +#include <linux/iopoll.h> +#include <linux/clk.h> +#include <mfd/syscon.h> +#include <reset_source.h> + +/* IWDG registers */ +#define IWDG_KR 0x00 /* Key register */ +#define IWDG_PR 0x04 /* Prescaler Register */ +#define IWDG_RLR 0x08 /* ReLoad Register */ +#define IWDG_SR 0x0C /* Status Register */ + +/* IWDG_KR register bit mask */ +#define KR_KEY_RELOAD 0xAAAA /* Reload counter enable */ +#define KR_KEY_ENABLE 0xCCCC /* Peripheral enable */ +#define KR_KEY_EWA 0x5555 /* Write access enable */ + +/* IWDG_PR register bit values */ +#define PR_SHIFT 2 + +/* IWDG_RLR register values */ +#define RLR_MAX GENMASK(11, 0) + +/* IWDG_SR register bit mask */ +#define SR_PVU BIT(0) /* Watchdog prescaler value update */ +#define SR_RVU BIT(1) /* Watchdog counter reload value update */ + +#define RCC_MP_GRSTCSETR 0x404 +#define RCC_MP_RSTSCLRR 0x408 +#define RCC_MP_GRSTCSETR_MPSYSRST BIT(0) + +#define STM32MP_RCC_RSTF_POR BIT(0) +#define STM32MP_RCC_RSTF_BOR BIT(1) +#define STM32MP_RCC_RSTF_PAD BIT(2) +#define STM32MP_RCC_RSTF_HCSS BIT(3) +#define STM32MP_RCC_RSTF_VCORE BIT(4) + +#define STM32MP_RCC_RSTF_MPSYS BIT(6) +#define STM32MP_RCC_RSTF_MCSYS BIT(7) +#define STM32MP_RCC_RSTF_IWDG1 BIT(8) +#define STM32MP_RCC_RSTF_IWDG2 BIT(9) + +#define STM32MP_RCC_RSTF_STDBY BIT(11) +#define STM32MP_RCC_RSTF_CSTDBY BIT(12) +#define STM32MP_RCC_RSTF_MPUP0 BIT(13) +#define STM32MP_RCC_RSTF_MPUP1 BIT(14) + +/* set timeout to 100 ms */ +#define TIMEOUT_US 100000 + +struct stm32_reset_reason { + uint32_t mask; + enum reset_src_type type; + int instance; +}; + +struct stm32_iwdg { + struct watchdog wdd; + struct restart_handler restart; + void __iomem *iwdg_base; + struct regmap *rcc_regmap; + unsigned int timeout; + unsigned int rate; +}; + +static inline struct stm32_iwdg *to_stm32_iwdg(struct watchdog *wdd) +{ + return container_of(wdd, struct stm32_iwdg, wdd); +} + +static void __noreturn stm32_iwdg_restart_handler(struct restart_handler *rst) +{ + struct stm32_iwdg *wd = container_of(rst, struct stm32_iwdg, restart); + + regmap_update_bits(wd->rcc_regmap, RCC_MP_GRSTCSETR, + RCC_MP_GRSTCSETR_MPSYSRST, RCC_MP_GRSTCSETR_MPSYSRST); + + mdelay(1000); + hang(); +} + +static void stm32_iwdg_ping(struct stm32_iwdg *wd) +{ + writel(KR_KEY_RELOAD, wd->iwdg_base + IWDG_KR); +} + +static int stm32_iwdg_start(struct stm32_iwdg *wd, unsigned int timeout) +{ + u32 presc, iwdg_rlr, iwdg_pr, iwdg_sr; + int ret; + + presc = DIV_ROUND_UP(timeout * wd->rate, RLR_MAX + 1); + + /* The prescaler is align on power of 2 and start at 2 ^ PR_SHIFT. */ + presc = roundup_pow_of_two(presc); + iwdg_pr = presc <= 1 << PR_SHIFT ? 0 : ilog2(presc) - PR_SHIFT; + iwdg_rlr = ((timeout * wd->rate) / presc) - 1; + + /* enable write access */ + writel(KR_KEY_EWA, wd->iwdg_base + IWDG_KR); + + /* set prescaler & reload registers */ + writel(iwdg_pr, wd->iwdg_base + IWDG_PR); + writel(iwdg_rlr, wd->iwdg_base + IWDG_RLR); + writel(KR_KEY_ENABLE, wd->iwdg_base + IWDG_KR); + + /* wait for the registers to be updated (max 100ms) */ + ret = readl_poll_timeout(wd->iwdg_base + IWDG_SR, iwdg_sr, + !(iwdg_sr & (SR_PVU | SR_RVU)), + TIMEOUT_US); + if (!ret) + wd->timeout = timeout; + + return ret; +} + + +static int stm32_iwdg_set_timeout(struct watchdog *wdd, unsigned int timeout) +{ + struct stm32_iwdg *wd = to_stm32_iwdg(wdd); + int ret; + + if (!timeout) + return -EINVAL; /* can't disable */ + + if (timeout > wdd->timeout_max) + return -EINVAL; + + if (wd->timeout != timeout) { + ret = stm32_iwdg_start(wd, timeout); + if (ret) { + dev_err(wdd->hwdev, "Fail to (re)start watchdog\n"); + return ret; + } + } + + stm32_iwdg_ping(wd); + return 0; +} + +static const struct stm32_reset_reason stm32_reset_reasons[] = { + { STM32MP_RCC_RSTF_POR, RESET_POR, 0 }, + { STM32MP_RCC_RSTF_BOR, RESET_BROWNOUT, 0 }, + { STM32MP_RCC_RSTF_STDBY, RESET_WKE, 0 }, + { STM32MP_RCC_RSTF_CSTDBY, RESET_WKE, 1 }, + { STM32MP_RCC_RSTF_MPSYS, RESET_RST, 2 }, + { STM32MP_RCC_RSTF_MPUP0, RESET_RST, 0 }, + { STM32MP_RCC_RSTF_MPUP1, RESET_RST, 1 }, + { STM32MP_RCC_RSTF_IWDG1, RESET_WDG, 0 }, + { STM32MP_RCC_RSTF_IWDG2, RESET_WDG, 1 }, + { STM32MP_RCC_RSTF_PAD, RESET_EXT, 1 }, + { /* sentinel */ } +}; + +static int stm32_set_reset_reason(struct regmap *rcc) +{ + enum reset_src_type type = RESET_UKWN; + u32 reg; + int ret; + int i, instance = 0; + + ret = regmap_read(rcc, RCC_MP_RSTSCLRR, ®); + if (ret) + return ret; + + for (i = 0; stm32_reset_reasons[i].mask; i++) { + if (reg & stm32_reset_reasons[i].mask) { + type = stm32_reset_reasons[i].type; + instance = stm32_reset_reasons[i].instance; + break; + } + } + + reset_source_set_priority(type, RESET_SOURCE_DEFAULT_PRIORITY); + reset_source_set_instance(type, instance); + + pr_info("STM32 RCC reset reason %s (MP_RSTSR: 0x%08x)\n", + reset_source_name(), reg); + + return 0; +} + +struct stm32_iwdg_data { + bool has_pclk; + u32 max_prescaler; +}; + +static const struct stm32_iwdg_data stm32_iwdg_data = { + .has_pclk = false, .max_prescaler = 256, +}; + +static const struct stm32_iwdg_data stm32mp1_iwdg_data = { + .has_pclk = true, .max_prescaler = 1024, +}; + +static const struct of_device_id stm32_iwdg_of_match[] = { + { .compatible = "st,stm32-iwdg", .data = &stm32_iwdg_data }, + { .compatible = "st,stm32mp1-iwdg", .data = &stm32mp1_iwdg_data }, + { /* sentinel */ } +}; + +static int stm32_iwdg_probe(struct device_d *dev) +{ + struct stm32_iwdg_data *data; + struct stm32_iwdg *wd; + struct resource *res; + struct watchdog *wdd; + struct clk *clk; + int ret; + + wd = xzalloc(sizeof(*wd)); + + ret = dev_get_drvdata(dev, (const void **)&data); + if (ret) + return -ENODEV; + + res = dev_request_mem_resource(dev, 0); + if (IS_ERR(res)) { + dev_err(dev, "could not get timer memory region\n"); + return PTR_ERR(res); + } + wd->iwdg_base = IOMEM(res->start); + + clk = clk_get(dev, "lsi"); + if (IS_ERR(clk)) + return PTR_ERR(clk); + + ret = clk_enable(clk); + if (ret) + return ret; + + wd->rate = clk_get_rate(clk); + + if (data->has_pclk) { + clk = clk_get(dev, "pclk"); + if (IS_ERR(clk)) + return PTR_ERR(clk); + + ret = clk_enable(clk); + if (ret) + return ret; + } + + wdd = &wd->wdd; + wdd->hwdev = dev; + wdd->set_timeout = stm32_iwdg_set_timeout; + wdd->timeout_max = (RLR_MAX + 1) * data->max_prescaler * 1000; + wdd->timeout_max /= wd->rate * 1000; + wdd->timeout_cur = wdd->timeout_max; + + ret = watchdog_register(wdd); + if (ret) { + dev_err(dev, "Failed to register watchdog device\n"); + return ret; + } + + wd->restart.name = "stm32-iwdg"; + wd->restart.restart = stm32_iwdg_restart_handler; + wd->restart.priority = 200; + + wd->rcc_regmap = syscon_regmap_lookup_by_compatible("st,stm32mp1-rcc"); + if (IS_ERR(wd->rcc_regmap)) + dev_warn(dev, "Cannot register restart handler\n"); + + ret = restart_handler_register(&wd->restart); + if (ret) + dev_warn(dev, "Cannot register restart handler\n"); + + ret = stm32_set_reset_reason(wd->rcc_regmap); + if (ret) + dev_warn(dev, "Cannot determine reset reason\n"); + + dev_info(dev, "probed\n"); + return 0; +} + +static struct driver_d stm32_iwdg_driver = { + .name = "stm32-iwdg", + .probe = stm32_iwdg_probe, + .of_compatible = DRV_OF_COMPAT(stm32_iwdg_of_match), +}; +device_platform_driver(stm32_iwdg_driver); diff --git a/dts/Bindings/net/can/microchip,mcp251x.txt b/dts/Bindings/net/can/microchip,mcp251x.txt index 188c8bd4eb..5a0111d4de 100644 --- a/dts/Bindings/net/can/microchip,mcp251x.txt +++ b/dts/Bindings/net/can/microchip,mcp251x.txt @@ -4,6 +4,7 @@ Required properties: - compatible: Should be one of the following: - "microchip,mcp2510" for MCP2510. - "microchip,mcp2515" for MCP2515. + - "microchip,mcp25625" for MCP25625. - reg: SPI chip select. - clocks: The clock feeding the CAN controller. - interrupts: Should contain IRQ line for the CAN controller. diff --git a/dts/Bindings/riscv/cpus.yaml b/dts/Bindings/riscv/cpus.yaml new file mode 100644 index 0000000000..27f02ec4bb --- /dev/null +++ b/dts/Bindings/riscv/cpus.yaml @@ -0,0 +1,168 @@ +# SPDX-License-Identifier: (GPL-2.0 OR MIT) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/riscv/cpus.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: RISC-V bindings for 'cpus' DT nodes + +maintainers: + - Paul Walmsley <paul.walmsley@sifive.com> + - Palmer Dabbelt <palmer@sifive.com> + +allOf: + - $ref: /schemas/cpus.yaml# + +properties: + $nodename: + const: cpus + description: Container of cpu nodes + + '#address-cells': + const: 1 + description: | + A single unsigned 32-bit integer uniquely identifies each RISC-V + hart in a system. (See the "reg" node under the "cpu" node, + below). + + '#size-cells': + const: 0 + +patternProperties: + '^cpu@[0-9a-f]+$': + properties: + compatible: + type: array + items: + - enum: + - sifive,rocket0 + - sifive,e5 + - sifive,e51 + - sifive,u54-mc + - sifive,u54 + - sifive,u5 + - const: riscv + description: + Identifies that the hart uses the RISC-V instruction set + and identifies the type of the hart. + + mmu-type: + allOf: + - $ref: "/schemas/types.yaml#/definitions/string" + - enum: + - riscv,sv32 + - riscv,sv39 + - riscv,sv48 + description: + Identifies the MMU address translation mode used on this + hart. These values originate from the RISC-V Privileged + Specification document, available from + https://riscv.org/specifications/ + + riscv,isa: + allOf: + - $ref: "/schemas/types.yaml#/definitions/string" + - enum: + - rv64imac + - rv64imafdc + description: + Identifies the specific RISC-V instruction set architecture + supported by the hart. These are documented in the RISC-V + User-Level ISA document, available from + https://riscv.org/specifications/ + + timebase-frequency: + type: integer + minimum: 1 + description: + Specifies the clock frequency of the system timer in Hz. + This value is common to all harts on a single system image. + + interrupt-controller: + type: object + description: Describes the CPU's local interrupt controller + + properties: + '#interrupt-cells': + const: 1 + + compatible: + const: riscv,cpu-intc + + interrupt-controller: true + + required: + - '#interrupt-cells' + - compatible + - interrupt-controller + + required: + - riscv,isa + - timebase-frequency + - interrupt-controller + +examples: + - | + // Example 1: SiFive Freedom U540G Development Kit + cpus { + #address-cells = <1>; + #size-cells = <0>; + timebase-frequency = <1000000>; + cpu@0 { + clock-frequency = <0>; + compatible = "sifive,rocket0", "riscv"; + device_type = "cpu"; + i-cache-block-size = <64>; + i-cache-sets = <128>; + i-cache-size = <16384>; + reg = <0>; + riscv,isa = "rv64imac"; + cpu_intc0: interrupt-controller { + #interrupt-cells = <1>; + compatible = "riscv,cpu-intc"; + interrupt-controller; + }; + }; + cpu@1 { + clock-frequency = <0>; + compatible = "sifive,rocket0", "riscv"; + d-cache-block-size = <64>; + d-cache-sets = <64>; + d-cache-size = <32768>; + d-tlb-sets = <1>; + d-tlb-size = <32>; + device_type = "cpu"; + i-cache-block-size = <64>; + i-cache-sets = <64>; + i-cache-size = <32768>; + i-tlb-sets = <1>; + i-tlb-size = <32>; + mmu-type = "riscv,sv39"; + reg = <1>; + riscv,isa = "rv64imafdc"; + tlb-split; + cpu_intc1: interrupt-controller { + #interrupt-cells = <1>; + compatible = "riscv,cpu-intc"; + interrupt-controller; + }; + }; + }; + + - | + // Example 2: Spike ISA Simulator with 1 Hart + cpus { + cpu@0 { + device_type = "cpu"; + reg = <0>; + compatible = "riscv"; + riscv,isa = "rv64imafdc"; + mmu-type = "riscv,sv48"; + interrupt-controller { + #interrupt-cells = <1>; + interrupt-controller; + compatible = "riscv,cpu-intc"; + }; + }; + }; +... diff --git a/dts/Bindings/riscv/sifive.yaml b/dts/Bindings/riscv/sifive.yaml new file mode 100644 index 0000000000..9d17dc2f3f --- /dev/null +++ b/dts/Bindings/riscv/sifive.yaml @@ -0,0 +1,25 @@ +# SPDX-License-Identifier: (GPL-2.0 OR MIT) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/riscv/sifive.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: SiFive SoC-based boards + +maintainers: + - Paul Walmsley <paul.walmsley@sifive.com> + - Palmer Dabbelt <palmer@sifive.com> + +description: + SiFive SoC-based boards + +properties: + $nodename: + const: '/' + compatible: + items: + - enum: + - sifive,freedom-unleashed-a00 + - const: sifive,fu540-c000 + - const: sifive,fu540 +... diff --git a/dts/include/dt-bindings/clock/alphascale,asm9260.h b/dts/include/dt-bindings/clock/alphascale,asm9260.h index 04e8db27da..d3871c6330 100644 --- a/dts/include/dt-bindings/clock/alphascale,asm9260.h +++ b/dts/include/dt-bindings/clock/alphascale,asm9260.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2014 Oleksij Rempel <linux@rempel-privat.de> - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_CLK_ASM9260_H diff --git a/dts/include/dt-bindings/clock/am3.h b/dts/include/dt-bindings/clock/am3.h index 86a8806e21..8949515412 100644 --- a/dts/include/dt-bindings/clock/am3.h +++ b/dts/include/dt-bindings/clock/am3.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2017 Texas Instruments, Inc. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef __DT_BINDINGS_CLK_AM3_H #define __DT_BINDINGS_CLK_AM3_H diff --git a/dts/include/dt-bindings/clock/am4.h b/dts/include/dt-bindings/clock/am4.h index 0f545b5afd..d961e7cb36 100644 --- a/dts/include/dt-bindings/clock/am4.h +++ b/dts/include/dt-bindings/clock/am4.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2017 Texas Instruments, Inc. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef __DT_BINDINGS_CLK_AM4_H #define __DT_BINDINGS_CLK_AM4_H diff --git a/dts/include/dt-bindings/clock/ath79-clk.h b/dts/include/dt-bindings/clock/ath79-clk.h index dcc679a7ad..eec8f399b9 100644 --- a/dts/include/dt-bindings/clock/ath79-clk.h +++ b/dts/include/dt-bindings/clock/ath79-clk.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2014, 2016 Antony Pavlov <antonynpavlov@gmail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DT_BINDINGS_ATH79_CLK_H diff --git a/dts/include/dt-bindings/clock/axis,artpec6-clkctrl.h b/dts/include/dt-bindings/clock/axis,artpec6-clkctrl.h index f9f04dccc9..b1f4971642 100644 --- a/dts/include/dt-bindings/clock/axis,artpec6-clkctrl.h +++ b/dts/include/dt-bindings/clock/axis,artpec6-clkctrl.h @@ -1,11 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * ARTPEC-6 clock controller indexes * * Copyright 2016 Axis Comunications AB. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #ifndef DT_BINDINGS_CLK_ARTPEC6_CLKCTRL_H diff --git a/dts/include/dt-bindings/clock/clps711x-clock.h b/dts/include/dt-bindings/clock/clps711x-clock.h index 0c4c80b632..55b403d8b4 100644 --- a/dts/include/dt-bindings/clock/clps711x-clock.h +++ b/dts/include/dt-bindings/clock/clps711x-clock.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2014 Alexander Shiyan <shc_work@mail.ru> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DT_BINDINGS_CLOCK_CLPS711X_H diff --git a/dts/include/dt-bindings/clock/dm814.h b/dts/include/dt-bindings/clock/dm814.h index 0e7099a344..f0f04e0a24 100644 --- a/dts/include/dt-bindings/clock/dm814.h +++ b/dts/include/dt-bindings/clock/dm814.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2017 Texas Instruments, Inc. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef __DT_BINDINGS_CLK_DM814_H #define __DT_BINDINGS_CLK_DM814_H diff --git a/dts/include/dt-bindings/clock/dm816.h b/dts/include/dt-bindings/clock/dm816.h index 69e8a36d78..fb0d94174d 100644 --- a/dts/include/dt-bindings/clock/dm816.h +++ b/dts/include/dt-bindings/clock/dm816.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2017 Texas Instruments, Inc. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef __DT_BINDINGS_CLK_DM816_H #define __DT_BINDINGS_CLK_DM816_H diff --git a/dts/include/dt-bindings/clock/dra7.h b/dts/include/dt-bindings/clock/dra7.h index ec969b5aeb..72f2e84115 100644 --- a/dts/include/dt-bindings/clock/dra7.h +++ b/dts/include/dt-bindings/clock/dra7.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2017 Texas Instruments, Inc. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef __DT_BINDINGS_CLK_DRA7_H #define __DT_BINDINGS_CLK_DRA7_H diff --git a/dts/include/dt-bindings/clock/hi6220-clock.h b/dts/include/dt-bindings/clock/hi6220-clock.h index 409cc02cd8..9e40605e61 100644 --- a/dts/include/dt-bindings/clock/hi6220-clock.h +++ b/dts/include/dt-bindings/clock/hi6220-clock.h @@ -1,11 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2015 Hisilicon Limited. * * Author: Bintian Wang <bintian.wang@huawei.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #ifndef __DT_BINDINGS_CLOCK_HI6220_H diff --git a/dts/include/dt-bindings/clock/hix5hd2-clock.h b/dts/include/dt-bindings/clock/hix5hd2-clock.h index fd29c174ba..2b8779f1ac 100644 --- a/dts/include/dt-bindings/clock/hix5hd2-clock.h +++ b/dts/include/dt-bindings/clock/hix5hd2-clock.h @@ -1,10 +1,7 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2014 Linaro Ltd. * Copyright (c) 2014 Hisilicon Limited. - * - * This program is free software; you can redistribute it and/or modify it - * under the terms and conditions of the GNU General Public License, - * version 2, as published by the Free Software Foundation. */ #ifndef __DTS_HIX5HD2_CLOCK_H diff --git a/dts/include/dt-bindings/clock/imx1-clock.h b/dts/include/dt-bindings/clock/imx1-clock.h index 607bf01a31..3730a46e7c 100644 --- a/dts/include/dt-bindings/clock/imx1-clock.h +++ b/dts/include/dt-bindings/clock/imx1-clock.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2014 Alexander Shiyan <shc_work@mail.ru> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DT_BINDINGS_CLOCK_IMX1_H diff --git a/dts/include/dt-bindings/clock/imx21-clock.h b/dts/include/dt-bindings/clock/imx21-clock.h index b13596cf51..66d0ec5e4c 100644 --- a/dts/include/dt-bindings/clock/imx21-clock.h +++ b/dts/include/dt-bindings/clock/imx21-clock.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2014 Alexander Shiyan <shc_work@mail.ru> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DT_BINDINGS_CLOCK_IMX21_H diff --git a/dts/include/dt-bindings/clock/imx27-clock.h b/dts/include/dt-bindings/clock/imx27-clock.h index 148b053e54..1ff448b803 100644 --- a/dts/include/dt-bindings/clock/imx27-clock.h +++ b/dts/include/dt-bindings/clock/imx27-clock.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2014 Alexander Shiyan <shc_work@mail.ru> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DT_BINDINGS_CLOCK_IMX27_H diff --git a/dts/include/dt-bindings/clock/imx5-clock.h b/dts/include/dt-bindings/clock/imx5-clock.h index a81be5be67..bc65e30695 100644 --- a/dts/include/dt-bindings/clock/imx5-clock.h +++ b/dts/include/dt-bindings/clock/imx5-clock.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2013 Lucas Stach, Pengutronix <l.stach@pengutronix.de> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DT_BINDINGS_CLOCK_IMX5_H diff --git a/dts/include/dt-bindings/clock/imx6qdl-clock.h b/dts/include/dt-bindings/clock/imx6qdl-clock.h index b3cef297d5..e20c43cc36 100644 --- a/dts/include/dt-bindings/clock/imx6qdl-clock.h +++ b/dts/include/dt-bindings/clock/imx6qdl-clock.h @@ -1,9 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2014 Freescale Semiconductor, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #ifndef __DT_BINDINGS_CLOCK_IMX6QDL_H diff --git a/dts/include/dt-bindings/clock/imx6sl-clock.h b/dts/include/dt-bindings/clock/imx6sl-clock.h index cfbfc39d18..31364d2caa 100644 --- a/dts/include/dt-bindings/clock/imx6sl-clock.h +++ b/dts/include/dt-bindings/clock/imx6sl-clock.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2013 Freescale Semiconductor, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DT_BINDINGS_CLOCK_IMX6SL_H diff --git a/dts/include/dt-bindings/clock/imx6sx-clock.h b/dts/include/dt-bindings/clock/imx6sx-clock.h index fb420c7347..1c64997d61 100644 --- a/dts/include/dt-bindings/clock/imx6sx-clock.h +++ b/dts/include/dt-bindings/clock/imx6sx-clock.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2014 Freescale Semiconductor, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DT_BINDINGS_CLOCK_IMX6SX_H diff --git a/dts/include/dt-bindings/clock/imx6ul-clock.h b/dts/include/dt-bindings/clock/imx6ul-clock.h index f718aac9b9..79094338e6 100644 --- a/dts/include/dt-bindings/clock/imx6ul-clock.h +++ b/dts/include/dt-bindings/clock/imx6ul-clock.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2015 Freescale Semiconductor, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DT_BINDINGS_CLOCK_IMX6UL_H diff --git a/dts/include/dt-bindings/clock/imx7d-clock.h b/dts/include/dt-bindings/clock/imx7d-clock.h index 0d67f53bba..e6a670e1a3 100644 --- a/dts/include/dt-bindings/clock/imx7d-clock.h +++ b/dts/include/dt-bindings/clock/imx7d-clock.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2014-2015 Freescale Semiconductor, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DT_BINDINGS_CLOCK_IMX7D_H diff --git a/dts/include/dt-bindings/clock/lsi,axm5516-clks.h b/dts/include/dt-bindings/clock/lsi,axm5516-clks.h index beb41ace5d..050bbdab4f 100644 --- a/dts/include/dt-bindings/clock/lsi,axm5516-clks.h +++ b/dts/include/dt-bindings/clock/lsi,axm5516-clks.h @@ -1,9 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2014 LSI Corporation - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. */ #ifndef _DT_BINDINGS_CLK_AXM5516_H diff --git a/dts/include/dt-bindings/clock/maxim,max77620.h b/dts/include/dt-bindings/clock/maxim,max77620.h index 82aba28496..9d6609aaa1 100644 --- a/dts/include/dt-bindings/clock/maxim,max77620.h +++ b/dts/include/dt-bindings/clock/maxim,max77620.h @@ -1,10 +1,7 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2016 NVIDIA CORPORATION. All rights reserved. * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * * Device Tree binding constants clocks for the Maxim 77620 PMIC. */ diff --git a/dts/include/dt-bindings/clock/maxim,max9485.h b/dts/include/dt-bindings/clock/maxim,max9485.h index 185b09ce18..368719a1b8 100644 --- a/dts/include/dt-bindings/clock/maxim,max9485.h +++ b/dts/include/dt-bindings/clock/maxim,max9485.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2018 Daniel Mack - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DT_BINDINGS_MAX9485_CLK_H diff --git a/dts/include/dt-bindings/clock/microchip,pic32-clock.h b/dts/include/dt-bindings/clock/microchip,pic32-clock.h index 184647a6a8..371668d989 100644 --- a/dts/include/dt-bindings/clock/microchip,pic32-clock.h +++ b/dts/include/dt-bindings/clock/microchip,pic32-clock.h @@ -1,15 +1,7 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Purna Chandra Mandal,<purna.mandal@microchip.com> * Copyright (C) 2015 Microchip Technology Inc. All rights reserved. - * - * This program is free software; you can distribute it and/or modify it - * under the terms of the GNU General Public License (Version 2) as - * published by the Free Software Foundation. - * - * This program is distributed in the hope it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * for more details. */ #ifndef _DT_BINDINGS_CLK_MICROCHIP_PIC32_H_ diff --git a/dts/include/dt-bindings/clock/omap4.h b/dts/include/dt-bindings/clock/omap4.h index e86c758e50..5167b2d93a 100644 --- a/dts/include/dt-bindings/clock/omap4.h +++ b/dts/include/dt-bindings/clock/omap4.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2017 Texas Instruments, Inc. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef __DT_BINDINGS_CLK_OMAP4_H #define __DT_BINDINGS_CLK_OMAP4_H diff --git a/dts/include/dt-bindings/clock/omap5.h b/dts/include/dt-bindings/clock/omap5.h index f51821a912..f3283957f4 100644 --- a/dts/include/dt-bindings/clock/omap5.h +++ b/dts/include/dt-bindings/clock/omap5.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2017 Texas Instruments, Inc. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef __DT_BINDINGS_CLK_OMAP5_H #define __DT_BINDINGS_CLK_OMAP5_H diff --git a/dts/include/dt-bindings/clock/pistachio-clk.h b/dts/include/dt-bindings/clock/pistachio-clk.h index 039f83facb..ec7a8683f3 100644 --- a/dts/include/dt-bindings/clock/pistachio-clk.h +++ b/dts/include/dt-bindings/clock/pistachio-clk.h @@ -1,9 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2014 Google, Inc. - * - * This program is free software; you can redistribute it and/or modify it - * under the terms and conditions of the GNU General Public License, - * version 2, as published by the Free Software Foundation. */ #ifndef _DT_BINDINGS_CLOCK_PISTACHIO_H diff --git a/dts/include/dt-bindings/clock/qcom,gcc-apq8084.h b/dts/include/dt-bindings/clock/qcom,gcc-apq8084.h index 5aa7ebeae4..7f657cf8cc 100644 --- a/dts/include/dt-bindings/clock/qcom,gcc-apq8084.h +++ b/dts/include/dt-bindings/clock/qcom,gcc-apq8084.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2014, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_CLK_APQ_GCC_8084_H diff --git a/dts/include/dt-bindings/clock/qcom,gcc-ipq806x.h b/dts/include/dt-bindings/clock/qcom,gcc-ipq806x.h index dc4254b8cb..7deec14a6d 100644 --- a/dts/include/dt-bindings/clock/qcom,gcc-ipq806x.h +++ b/dts/include/dt-bindings/clock/qcom,gcc-ipq806x.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2014, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_CLK_GCC_IPQ806X_H diff --git a/dts/include/dt-bindings/clock/qcom,gcc-ipq8074.h b/dts/include/dt-bindings/clock/qcom,gcc-ipq8074.h index 238f872e52..4de4811a35 100644 --- a/dts/include/dt-bindings/clock/qcom,gcc-ipq8074.h +++ b/dts/include/dt-bindings/clock/qcom,gcc-ipq8074.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2016-2017, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_CLOCK_IPQ_GCC_8074_H diff --git a/dts/include/dt-bindings/clock/qcom,gcc-mdm9615.h b/dts/include/dt-bindings/clock/qcom,gcc-mdm9615.h index 787e448958..9e4c34823d 100644 --- a/dts/include/dt-bindings/clock/qcom,gcc-mdm9615.h +++ b/dts/include/dt-bindings/clock/qcom,gcc-mdm9615.h @@ -1,16 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2013, The Linux Foundation. All rights reserved. * Copyright (c) BayLibre, SAS. * Author : Neil Armstrong <narmstrong@baylibre.com> - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_CLK_MDM_GCC_9615_H diff --git a/dts/include/dt-bindings/clock/qcom,gcc-msm8660.h b/dts/include/dt-bindings/clock/qcom,gcc-msm8660.h index 67665f6813..4777c00271 100644 --- a/dts/include/dt-bindings/clock/qcom,gcc-msm8660.h +++ b/dts/include/dt-bindings/clock/qcom,gcc-msm8660.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2013, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_CLK_MSM_GCC_8660_H diff --git a/dts/include/dt-bindings/clock/qcom,gcc-msm8916.h b/dts/include/dt-bindings/clock/qcom,gcc-msm8916.h index 28a27a4ed3..5630344061 100644 --- a/dts/include/dt-bindings/clock/qcom,gcc-msm8916.h +++ b/dts/include/dt-bindings/clock/qcom,gcc-msm8916.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2015 Linaro Limited - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_CLK_MSM_GCC_8916_H diff --git a/dts/include/dt-bindings/clock/qcom,gcc-msm8960.h b/dts/include/dt-bindings/clock/qcom,gcc-msm8960.h index e02742fc81..950b828626 100644 --- a/dts/include/dt-bindings/clock/qcom,gcc-msm8960.h +++ b/dts/include/dt-bindings/clock/qcom,gcc-msm8960.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2013, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_CLK_MSM_GCC_8960_H diff --git a/dts/include/dt-bindings/clock/qcom,gcc-msm8974.h b/dts/include/dt-bindings/clock/qcom,gcc-msm8974.h index 81d32f6391..5c10570988 100644 --- a/dts/include/dt-bindings/clock/qcom,gcc-msm8974.h +++ b/dts/include/dt-bindings/clock/qcom,gcc-msm8974.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2013, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_CLK_MSM_GCC_8974_H diff --git a/dts/include/dt-bindings/clock/qcom,gcc-msm8994.h b/dts/include/dt-bindings/clock/qcom,gcc-msm8994.h index df47da0860..938969309e 100644 --- a/dts/include/dt-bindings/clock/qcom,gcc-msm8994.h +++ b/dts/include/dt-bindings/clock/qcom,gcc-msm8994.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2016, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ diff --git a/dts/include/dt-bindings/clock/qcom,gcc-msm8996.h b/dts/include/dt-bindings/clock/qcom,gcc-msm8996.h index db80f2ee57..03bf49d43d 100644 --- a/dts/include/dt-bindings/clock/qcom,gcc-msm8996.h +++ b/dts/include/dt-bindings/clock/qcom,gcc-msm8996.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2015, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_CLK_MSM_GCC_8996_H diff --git a/dts/include/dt-bindings/clock/qcom,gcc-msm8998.h b/dts/include/dt-bindings/clock/qcom,gcc-msm8998.h index ba84bbab5c..ab376262fc 100644 --- a/dts/include/dt-bindings/clock/qcom,gcc-msm8998.h +++ b/dts/include/dt-bindings/clock/qcom,gcc-msm8998.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2016, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_CLK_MSM_GCC_COBALT_H diff --git a/dts/include/dt-bindings/clock/qcom,lcc-ipq806x.h b/dts/include/dt-bindings/clock/qcom,lcc-ipq806x.h index 4e944b85c5..25b92bbf0a 100644 --- a/dts/include/dt-bindings/clock/qcom,lcc-ipq806x.h +++ b/dts/include/dt-bindings/clock/qcom,lcc-ipq806x.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2014, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_CLK_LCC_IPQ806X_H diff --git a/dts/include/dt-bindings/clock/qcom,lcc-mdm9615.h b/dts/include/dt-bindings/clock/qcom,lcc-mdm9615.h index cac963a2fd..299338ee1d 100644 --- a/dts/include/dt-bindings/clock/qcom,lcc-mdm9615.h +++ b/dts/include/dt-bindings/clock/qcom,lcc-mdm9615.h @@ -1,16 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2014, The Linux Foundation. All rights reserved. * Copyright (c) BayLibre, SAS. * Author : Neil Armstrong <narmstrong@baylibre.com> - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_CLK_LCC_MDM9615_H diff --git a/dts/include/dt-bindings/clock/qcom,lcc-msm8960.h b/dts/include/dt-bindings/clock/qcom,lcc-msm8960.h index 4fb2aa64d9..d115a49f4c 100644 --- a/dts/include/dt-bindings/clock/qcom,lcc-msm8960.h +++ b/dts/include/dt-bindings/clock/qcom,lcc-msm8960.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2014, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_CLK_LCC_MSM8960_H diff --git a/dts/include/dt-bindings/clock/qcom,mmcc-apq8084.h b/dts/include/dt-bindings/clock/qcom,mmcc-apq8084.h index 03861e3f49..9d42b1b25a 100644 --- a/dts/include/dt-bindings/clock/qcom,mmcc-apq8084.h +++ b/dts/include/dt-bindings/clock/qcom,mmcc-apq8084.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2014, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_CLK_APQ_MMCC_8084_H diff --git a/dts/include/dt-bindings/clock/qcom,mmcc-msm8960.h b/dts/include/dt-bindings/clock/qcom,mmcc-msm8960.h index 85041b28f9..81714fc859 100644 --- a/dts/include/dt-bindings/clock/qcom,mmcc-msm8960.h +++ b/dts/include/dt-bindings/clock/qcom,mmcc-msm8960.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2013, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_CLK_MSM_MMCC_8960_H diff --git a/dts/include/dt-bindings/clock/qcom,mmcc-msm8974.h b/dts/include/dt-bindings/clock/qcom,mmcc-msm8974.h index 28651e54c9..a62cb0629a 100644 --- a/dts/include/dt-bindings/clock/qcom,mmcc-msm8974.h +++ b/dts/include/dt-bindings/clock/qcom,mmcc-msm8974.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2013, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_CLK_MSM_MMCC_8974_H diff --git a/dts/include/dt-bindings/clock/qcom,mmcc-msm8996.h b/dts/include/dt-bindings/clock/qcom,mmcc-msm8996.h index 5abc445ad8..d51f9ac705 100644 --- a/dts/include/dt-bindings/clock/qcom,mmcc-msm8996.h +++ b/dts/include/dt-bindings/clock/qcom,mmcc-msm8996.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2015, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_CLK_MSM_MMCC_8996_H diff --git a/dts/include/dt-bindings/clock/qcom,rpmcc.h b/dts/include/dt-bindings/clock/qcom,rpmcc.h index ede93a0ca1..8e30957205 100644 --- a/dts/include/dt-bindings/clock/qcom,rpmcc.h +++ b/dts/include/dt-bindings/clock/qcom,rpmcc.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2015 Linaro Limited - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_CLK_MSM_RPMCC_H diff --git a/dts/include/dt-bindings/clock/s5pv210-audss.h b/dts/include/dt-bindings/clock/s5pv210-audss.h index fe57406e24..84d62fe7a7 100644 --- a/dts/include/dt-bindings/clock/s5pv210-audss.h +++ b/dts/include/dt-bindings/clock/s5pv210-audss.h @@ -1,10 +1,7 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2014 Tomasz Figa <tomasz.figa@gmail.com> * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * * This header provides constants for Samsung audio subsystem * clock controller. * diff --git a/dts/include/dt-bindings/clock/s5pv210.h b/dts/include/dt-bindings/clock/s5pv210.h index e88986b7c6..c36699c2fa 100644 --- a/dts/include/dt-bindings/clock/s5pv210.h +++ b/dts/include/dt-bindings/clock/s5pv210.h @@ -1,11 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2013 Samsung Electronics Co., Ltd. * Author: Mateusz Krawczuk <m.krawczuk@partner.samsung.com> * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * * Device Tree binding constants for Samsung S5PV210 clock controller. */ diff --git a/dts/include/dt-bindings/clock/zx296702-clock.h b/dts/include/dt-bindings/clock/zx296702-clock.h index 26ee564b0e..e04126111a 100644 --- a/dts/include/dt-bindings/clock/zx296702-clock.h +++ b/dts/include/dt-bindings/clock/zx296702-clock.h @@ -1,10 +1,7 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2014 Linaro Ltd. * Copyright (C) 2014 ZTE Corporation. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #ifndef __DT_BINDINGS_CLOCK_ZX296702_H diff --git a/dts/include/dt-bindings/clock/zx296718-clock.h b/dts/include/dt-bindings/clock/zx296718-clock.h index 092c9751a6..bf2ff6d2ee 100644 --- a/dts/include/dt-bindings/clock/zx296718-clock.h +++ b/dts/include/dt-bindings/clock/zx296718-clock.h @@ -1,9 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2015 - 2016 ZTE Corporation. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #ifndef __DT_BINDINGS_CLOCK_ZX296718_H #define __DT_BINDINGS_CLOCK_ZX296718_H diff --git a/dts/include/dt-bindings/dma/at91.h b/dts/include/dt-bindings/dma/at91.h index ab6cbba454..e7b3e06554 100644 --- a/dts/include/dt-bindings/dma/at91.h +++ b/dts/include/dt-bindings/dma/at91.h @@ -1,9 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * This header provides macros for at91 dma bindings. * * Copyright (C) 2013 Ludovic Desroches <ludovic.desroches@atmel.com> - * - * GPLv2 only */ #ifndef __DT_BINDINGS_AT91_DMA_H__ diff --git a/dts/include/dt-bindings/gpio/meson-gxbb-gpio.h b/dts/include/dt-bindings/gpio/meson-gxbb-gpio.h index 43a68a1110..489c75b276 100644 --- a/dts/include/dt-bindings/gpio/meson-gxbb-gpio.h +++ b/dts/include/dt-bindings/gpio/meson-gxbb-gpio.h @@ -1,15 +1,9 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * GPIO definitions for Amlogic Meson GXBB SoCs * * Copyright (C) 2016 Endless Mobile, Inc. * Author: Carlo Caione <carlo@endlessm.com> - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * version 2 as published by the Free Software Foundation. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. */ #ifndef _DT_BINDINGS_MESON_GXBB_GPIO_H diff --git a/dts/include/dt-bindings/gpio/meson-gxl-gpio.h b/dts/include/dt-bindings/gpio/meson-gxl-gpio.h index 01f2a2abd3..0a001ae482 100644 --- a/dts/include/dt-bindings/gpio/meson-gxl-gpio.h +++ b/dts/include/dt-bindings/gpio/meson-gxl-gpio.h @@ -1,15 +1,9 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * GPIO definitions for Amlogic Meson GXL SoCs * * Copyright (C) 2016 Endless Mobile, Inc. * Author: Carlo Caione <carlo@endlessm.com> - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * version 2 as published by the Free Software Foundation. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. */ #ifndef _DT_BINDINGS_MESON_GXL_GPIO_H diff --git a/dts/include/dt-bindings/gpio/meson8-gpio.h b/dts/include/dt-bindings/gpio/meson8-gpio.h index fdaeb5cbf5..e2d083104d 100644 --- a/dts/include/dt-bindings/gpio/meson8-gpio.h +++ b/dts/include/dt-bindings/gpio/meson8-gpio.h @@ -1,14 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * GPIO definitions for Amlogic Meson8 SoCs * * Copyright (C) 2014 Beniamino Galvani <b.galvani@gmail.com> - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * version 2 as published by the Free Software Foundation. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. */ #ifndef _DT_BINDINGS_MESON8_GPIO_H diff --git a/dts/include/dt-bindings/gpio/meson8b-gpio.h b/dts/include/dt-bindings/gpio/meson8b-gpio.h index bf0d76fa0e..7c3bc0782e 100644 --- a/dts/include/dt-bindings/gpio/meson8b-gpio.h +++ b/dts/include/dt-bindings/gpio/meson8b-gpio.h @@ -1,15 +1,9 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * GPIO definitions for Amlogic Meson8b SoCs * * Copyright (C) 2015 Endless Mobile, Inc. * Author: Carlo Caione <carlo@endlessm.com> - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * version 2 as published by the Free Software Foundation. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. */ #ifndef _DT_BINDINGS_MESON8B_GPIO_H diff --git a/dts/include/dt-bindings/i2c/i2c.h b/dts/include/dt-bindings/i2c/i2c.h index 1d5da81d90..0c12c38dfa 100644 --- a/dts/include/dt-bindings/i2c/i2c.h +++ b/dts/include/dt-bindings/i2c/i2c.h @@ -1,3 +1,4 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * This header provides constants for I2C bindings * @@ -5,8 +6,6 @@ * Copyright (C) 2015 by Renesas Electronics Corporation * * Wolfram Sang <wsa@sang-engineering.com> - * - * GPLv2 only */ #ifndef _DT_BINDINGS_I2C_I2C_H diff --git a/dts/include/dt-bindings/interrupt-controller/irq-st.h b/dts/include/dt-bindings/interrupt-controller/irq-st.h index 4c59aceb9b..9c9c8e2b80 100644 --- a/dts/include/dt-bindings/interrupt-controller/irq-st.h +++ b/dts/include/dt-bindings/interrupt-controller/irq-st.h @@ -1,13 +1,10 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * include/linux/irqchip/irq-st.h * * Copyright (C) 2014 STMicroelectronics – All Rights Reserved * * Author: Lee Jones <lee.jones@linaro.org> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #ifndef _DT_BINDINGS_INTERRUPT_CONTROLLER_ST_H diff --git a/dts/include/dt-bindings/mfd/arizona.h b/dts/include/dt-bindings/mfd/arizona.h index dedf46ffdb..1056108c95 100644 --- a/dts/include/dt-bindings/mfd/arizona.h +++ b/dts/include/dt-bindings/mfd/arizona.h @@ -1,13 +1,10 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Device Tree defines for Arizona devices * * Copyright 2015 Cirrus Logic Inc. * * Author: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #ifndef _DT_BINDINGS_MFD_ARIZONA_H diff --git a/dts/include/dt-bindings/mfd/atmel-flexcom.h b/dts/include/dt-bindings/mfd/atmel-flexcom.h index a266fe4ee9..4e2fc32363 100644 --- a/dts/include/dt-bindings/mfd/atmel-flexcom.h +++ b/dts/include/dt-bindings/mfd/atmel-flexcom.h @@ -1,19 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * This header provides macros for Atmel Flexcom DT bindings. * * Copyright (C) 2015 Cyrille Pitchen <cyrille.pitchen@atmel.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with - * this program. If not, see <http://www.gnu.org/licenses/>. */ #ifndef __DT_BINDINGS_ATMEL_FLEXCOM_H__ diff --git a/dts/include/dt-bindings/mips/lantiq_rcu_gphy.h b/dts/include/dt-bindings/mips/lantiq_rcu_gphy.h index fa1a637733..7756d66cc5 100644 --- a/dts/include/dt-bindings/mips/lantiq_rcu_gphy.h +++ b/dts/include/dt-bindings/mips/lantiq_rcu_gphy.h @@ -1,7 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License version 2 as published - * by the Free Software Foundation. * * Copyright (C) 2016 Martin Blumenstingl <martin.blumenstingl@googlemail.com> * Copyright (C) 2017 Hauke Mehrtens <hauke@hauke-m.de> diff --git a/dts/include/dt-bindings/phy/phy-pistachio-usb.h b/dts/include/dt-bindings/phy/phy-pistachio-usb.h index d1877aa0a3..3542a67daf 100644 --- a/dts/include/dt-bindings/phy/phy-pistachio-usb.h +++ b/dts/include/dt-bindings/phy/phy-pistachio-usb.h @@ -1,9 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2015 Google, Inc. - * - * This program is free software; you can redistribute it and/or modify it - * under the terms and conditions of the GNU General Public License, - * version 2, as published by the Free Software Foundation. */ #ifndef _DT_BINDINGS_PHY_PISTACHIO diff --git a/dts/include/dt-bindings/pinctrl/at91.h b/dts/include/dt-bindings/pinctrl/at91.h index 8dc10e00c6..3831f91fb3 100644 --- a/dts/include/dt-bindings/pinctrl/at91.h +++ b/dts/include/dt-bindings/pinctrl/at91.h @@ -1,9 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * This header provides constants for most at91 pinctrl bindings. * * Copyright (C) 2013 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> - * - * GPLv2 only */ #ifndef __DT_BINDINGS_AT91_PINCTRL_H__ diff --git a/dts/include/dt-bindings/pinctrl/dra.h b/dts/include/dt-bindings/pinctrl/dra.h index 18ec5df5a5..252cdfd0d8 100644 --- a/dts/include/dt-bindings/pinctrl/dra.h +++ b/dts/include/dt-bindings/pinctrl/dra.h @@ -1,12 +1,9 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * This header provides constants for DRA pinctrl bindings. * * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ * Author: Rajendra Nayak <rnayak@ti.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #ifndef _DT_BINDINGS_PINCTRL_DRA_H diff --git a/dts/include/dt-bindings/pinctrl/pinctrl-tegra.h b/dts/include/dt-bindings/pinctrl/pinctrl-tegra.h index ebafa498be..d9b18bf264 100644 --- a/dts/include/dt-bindings/pinctrl/pinctrl-tegra.h +++ b/dts/include/dt-bindings/pinctrl/pinctrl-tegra.h @@ -1,18 +1,10 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * This header provides constants for Tegra pinctrl bindings. * * Copyright (c) 2013, NVIDIA CORPORATION. All rights reserved. * * Author: Laxman Dewangan <ldewangan@nvidia.com> - * - * This program is free software; you can redistribute it and/or modify it - * under the terms and conditions of the GNU General Public License, - * version 2, as published by the Free Software Foundation. - * - * This program is distributed in the hope it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. */ #ifndef _DT_BINDINGS_PINCTRL_TEGRA_H diff --git a/dts/include/dt-bindings/power/imx7-power.h b/dts/include/dt-bindings/power/imx7-power.h index 3a181e4105..597c1aa06a 100644 --- a/dts/include/dt-bindings/power/imx7-power.h +++ b/dts/include/dt-bindings/power/imx7-power.h @@ -1,9 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2017 Impinj - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #ifndef __DT_BINDINGS_IMX7_POWER_H__ diff --git a/dts/include/dt-bindings/power/mt2712-power.h b/dts/include/dt-bindings/power/mt2712-power.h index 2c147817ef..95bdb1c20f 100644 --- a/dts/include/dt-bindings/power/mt2712-power.h +++ b/dts/include/dt-bindings/power/mt2712-power.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2017 MediaTek Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * See http://www.gnu.org/licenses/gpl-2.0.html for more details. */ #ifndef _DT_BINDINGS_POWER_MT2712_POWER_H diff --git a/dts/include/dt-bindings/power/mt7622-power.h b/dts/include/dt-bindings/power/mt7622-power.h index 1b63926979..ffad81ad3d 100644 --- a/dts/include/dt-bindings/power/mt7622-power.h +++ b/dts/include/dt-bindings/power/mt7622-power.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2017 MediaTek Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * See http://www.gnu.org/licenses/gpl-2.0.html for more details. */ #ifndef _DT_BINDINGS_POWER_MT7622_POWER_H diff --git a/dts/include/dt-bindings/power/r8a7743-sysc.h b/dts/include/dt-bindings/power/r8a7743-sysc.h index 61cfbb2907..1b863932da 100644 --- a/dts/include/dt-bindings/power/r8a7743-sysc.h +++ b/dts/include/dt-bindings/power/r8a7743-sysc.h @@ -1,9 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2016 Cogent Embedded Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #ifndef __DT_BINDINGS_POWER_R8A7743_SYSC_H__ #define __DT_BINDINGS_POWER_R8A7743_SYSC_H__ diff --git a/dts/include/dt-bindings/power/r8a7745-sysc.h b/dts/include/dt-bindings/power/r8a7745-sysc.h index 1844c1171c..725ad3504d 100644 --- a/dts/include/dt-bindings/power/r8a7745-sysc.h +++ b/dts/include/dt-bindings/power/r8a7745-sysc.h @@ -1,9 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2016 Cogent Embedded Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #ifndef __DT_BINDINGS_POWER_R8A7745_SYSC_H__ #define __DT_BINDINGS_POWER_R8A7745_SYSC_H__ diff --git a/dts/include/dt-bindings/power/r8a7779-sysc.h b/dts/include/dt-bindings/power/r8a7779-sysc.h index 183571da50..c4f528b6cc 100644 --- a/dts/include/dt-bindings/power/r8a7779-sysc.h +++ b/dts/include/dt-bindings/power/r8a7779-sysc.h @@ -1,9 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2016 Glider bvba - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; version 2 of the License. */ #ifndef __DT_BINDINGS_POWER_R8A7779_SYSC_H__ #define __DT_BINDINGS_POWER_R8A7779_SYSC_H__ diff --git a/dts/include/dt-bindings/power/r8a7790-sysc.h b/dts/include/dt-bindings/power/r8a7790-sysc.h index 6af4e9929b..bcb4905706 100644 --- a/dts/include/dt-bindings/power/r8a7790-sysc.h +++ b/dts/include/dt-bindings/power/r8a7790-sysc.h @@ -1,9 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2016 Glider bvba - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; version 2 of the License. */ #ifndef __DT_BINDINGS_POWER_R8A7790_SYSC_H__ #define __DT_BINDINGS_POWER_R8A7790_SYSC_H__ diff --git a/dts/include/dt-bindings/power/r8a7791-sysc.h b/dts/include/dt-bindings/power/r8a7791-sysc.h index 1403baa051..1d20fae424 100644 --- a/dts/include/dt-bindings/power/r8a7791-sysc.h +++ b/dts/include/dt-bindings/power/r8a7791-sysc.h @@ -1,9 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2016 Glider bvba - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; version 2 of the License. */ #ifndef __DT_BINDINGS_POWER_R8A7791_SYSC_H__ #define __DT_BINDINGS_POWER_R8A7791_SYSC_H__ diff --git a/dts/include/dt-bindings/power/r8a7792-sysc.h b/dts/include/dt-bindings/power/r8a7792-sysc.h index 74f4a78e29..dd3a4667ca 100644 --- a/dts/include/dt-bindings/power/r8a7792-sysc.h +++ b/dts/include/dt-bindings/power/r8a7792-sysc.h @@ -1,9 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2016 Cogent Embedded Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; version 2 of the License. */ #ifndef __DT_BINDINGS_POWER_R8A7792_SYSC_H__ #define __DT_BINDINGS_POWER_R8A7792_SYSC_H__ diff --git a/dts/include/dt-bindings/power/r8a7793-sysc.h b/dts/include/dt-bindings/power/r8a7793-sysc.h index b5693df3d8..056998c635 100644 --- a/dts/include/dt-bindings/power/r8a7793-sysc.h +++ b/dts/include/dt-bindings/power/r8a7793-sysc.h @@ -1,9 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2016 Glider bvba - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; version 2 of the License. */ #ifndef __DT_BINDINGS_POWER_R8A7793_SYSC_H__ #define __DT_BINDINGS_POWER_R8A7793_SYSC_H__ diff --git a/dts/include/dt-bindings/power/r8a7794-sysc.h b/dts/include/dt-bindings/power/r8a7794-sysc.h index 862241c2d2..4d6c708e6f 100644 --- a/dts/include/dt-bindings/power/r8a7794-sysc.h +++ b/dts/include/dt-bindings/power/r8a7794-sysc.h @@ -1,9 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2016 Glider bvba - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; version 2 of the License. */ #ifndef __DT_BINDINGS_POWER_R8A7794_SYSC_H__ #define __DT_BINDINGS_POWER_R8A7794_SYSC_H__ diff --git a/dts/include/dt-bindings/power/r8a7795-sysc.h b/dts/include/dt-bindings/power/r8a7795-sysc.h index ad679eeda1..eea6ad69f0 100644 --- a/dts/include/dt-bindings/power/r8a7795-sysc.h +++ b/dts/include/dt-bindings/power/r8a7795-sysc.h @@ -1,9 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2016 Glider bvba - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; version 2 of the License. */ #ifndef __DT_BINDINGS_POWER_R8A7795_SYSC_H__ #define __DT_BINDINGS_POWER_R8A7795_SYSC_H__ diff --git a/dts/include/dt-bindings/power/r8a7796-sysc.h b/dts/include/dt-bindings/power/r8a7796-sysc.h index 5b4daab44d..7e6fc06ebf 100644 --- a/dts/include/dt-bindings/power/r8a7796-sysc.h +++ b/dts/include/dt-bindings/power/r8a7796-sysc.h @@ -1,9 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2016 Glider bvba - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; version 2 of the License. */ #ifndef __DT_BINDINGS_POWER_R8A7796_SYSC_H__ #define __DT_BINDINGS_POWER_R8A7796_SYSC_H__ diff --git a/dts/include/dt-bindings/power/r8a77970-sysc.h b/dts/include/dt-bindings/power/r8a77970-sysc.h index 85cc5f23cf..9dcdbd5a93 100644 --- a/dts/include/dt-bindings/power/r8a77970-sysc.h +++ b/dts/include/dt-bindings/power/r8a77970-sysc.h @@ -1,9 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2017 Cogent Embedded Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #ifndef __DT_BINDINGS_POWER_R8A77970_SYSC_H__ #define __DT_BINDINGS_POWER_R8A77970_SYSC_H__ diff --git a/dts/include/dt-bindings/power/r8a77995-sysc.h b/dts/include/dt-bindings/power/r8a77995-sysc.h index 09d0ed575b..f2b35502f2 100644 --- a/dts/include/dt-bindings/power/r8a77995-sysc.h +++ b/dts/include/dt-bindings/power/r8a77995-sysc.h @@ -1,9 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2017 Glider bvba - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; version 2 of the License. */ #ifndef __DT_BINDINGS_POWER_R8A77995_SYSC_H__ #define __DT_BINDINGS_POWER_R8A77995_SYSC_H__ diff --git a/dts/include/dt-bindings/reset/altr,rst-mgr-a10.h b/dts/include/dt-bindings/reset/altr,rst-mgr-a10.h index acb0bbf4f9..5d8a494c98 100644 --- a/dts/include/dt-bindings/reset/altr,rst-mgr-a10.h +++ b/dts/include/dt-bindings/reset/altr,rst-mgr-a10.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2014, Steffen Trumtrar <s.trumtrar@pengutronix.de> - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_RESET_ALTR_RST_MGR_A10_H diff --git a/dts/include/dt-bindings/reset/altr,rst-mgr.h b/dts/include/dt-bindings/reset/altr,rst-mgr.h index 3f04908fb8..9b6ce14f62 100644 --- a/dts/include/dt-bindings/reset/altr,rst-mgr.h +++ b/dts/include/dt-bindings/reset/altr,rst-mgr.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2014, Steffen Trumtrar <s.trumtrar@pengutronix.de> - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_RESET_ALTR_RST_MGR_H diff --git a/dts/include/dt-bindings/reset/qcom,gcc-apq8084.h b/dts/include/dt-bindings/reset/qcom,gcc-apq8084.h index 527caaf48e..e76be38342 100644 --- a/dts/include/dt-bindings/reset/qcom,gcc-apq8084.h +++ b/dts/include/dt-bindings/reset/qcom,gcc-apq8084.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2014, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_RESET_APQ_GCC_8084_H diff --git a/dts/include/dt-bindings/reset/qcom,gcc-ipq806x.h b/dts/include/dt-bindings/reset/qcom,gcc-ipq806x.h index de9c814093..26b6f92006 100644 --- a/dts/include/dt-bindings/reset/qcom,gcc-ipq806x.h +++ b/dts/include/dt-bindings/reset/qcom,gcc-ipq806x.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2014, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_RESET_IPQ_806X_H diff --git a/dts/include/dt-bindings/reset/qcom,gcc-mdm9615.h b/dts/include/dt-bindings/reset/qcom,gcc-mdm9615.h index 7f86e9a59d..5faf02d7e2 100644 --- a/dts/include/dt-bindings/reset/qcom,gcc-mdm9615.h +++ b/dts/include/dt-bindings/reset/qcom,gcc-mdm9615.h @@ -1,16 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2013, The Linux Foundation. All rights reserved. * Copyright (c) BayLibre, SAS. * Author : Neil Armstrong <narmstrong@baylibre.com> - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_RESET_GCC_MDM9615_H diff --git a/dts/include/dt-bindings/reset/qcom,gcc-msm8660.h b/dts/include/dt-bindings/reset/qcom,gcc-msm8660.h index a83282fe54..f6d2b3cbe7 100644 --- a/dts/include/dt-bindings/reset/qcom,gcc-msm8660.h +++ b/dts/include/dt-bindings/reset/qcom,gcc-msm8660.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2013, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_RESET_MSM_GCC_8660_H diff --git a/dts/include/dt-bindings/reset/qcom,gcc-msm8916.h b/dts/include/dt-bindings/reset/qcom,gcc-msm8916.h index 3d90410f09..1f9be10872 100644 --- a/dts/include/dt-bindings/reset/qcom,gcc-msm8916.h +++ b/dts/include/dt-bindings/reset/qcom,gcc-msm8916.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2015 Linaro Limited - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_RESET_MSM_GCC_8916_H diff --git a/dts/include/dt-bindings/reset/qcom,gcc-msm8960.h b/dts/include/dt-bindings/reset/qcom,gcc-msm8960.h index 47c8686955..c7ebae7bb2 100644 --- a/dts/include/dt-bindings/reset/qcom,gcc-msm8960.h +++ b/dts/include/dt-bindings/reset/qcom,gcc-msm8960.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2013, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_RESET_MSM_GCC_8960_H diff --git a/dts/include/dt-bindings/reset/qcom,gcc-msm8974.h b/dts/include/dt-bindings/reset/qcom,gcc-msm8974.h index 9bdf543229..23777e5ca4 100644 --- a/dts/include/dt-bindings/reset/qcom,gcc-msm8974.h +++ b/dts/include/dt-bindings/reset/qcom,gcc-msm8974.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2013, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_RESET_MSM_GCC_8974_H diff --git a/dts/include/dt-bindings/reset/qcom,mmcc-apq8084.h b/dts/include/dt-bindings/reset/qcom,mmcc-apq8084.h index c167139653..faaeb40959 100644 --- a/dts/include/dt-bindings/reset/qcom,mmcc-apq8084.h +++ b/dts/include/dt-bindings/reset/qcom,mmcc-apq8084.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2014, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_RESET_APQ_MMCC_8084_H diff --git a/dts/include/dt-bindings/reset/qcom,mmcc-msm8960.h b/dts/include/dt-bindings/reset/qcom,mmcc-msm8960.h index 11741113a8..eb4186aa2c 100644 --- a/dts/include/dt-bindings/reset/qcom,mmcc-msm8960.h +++ b/dts/include/dt-bindings/reset/qcom,mmcc-msm8960.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2013, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_RESET_MSM_MMCC_8960_H diff --git a/dts/include/dt-bindings/reset/qcom,mmcc-msm8974.h b/dts/include/dt-bindings/reset/qcom,mmcc-msm8974.h index da3ec37f1b..d61b077e91 100644 --- a/dts/include/dt-bindings/reset/qcom,mmcc-msm8974.h +++ b/dts/include/dt-bindings/reset/qcom,mmcc-msm8974.h @@ -1,14 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2013, The Linux Foundation. All rights reserved. - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _DT_BINDINGS_RESET_MSM_MMCC_8974_H diff --git a/dts/include/dt-bindings/soc/qcom,gsbi.h b/dts/include/dt-bindings/soc/qcom,gsbi.h index 7ac4292333..c00ab8c5f3 100644 --- a/dts/include/dt-bindings/soc/qcom,gsbi.h +++ b/dts/include/dt-bindings/soc/qcom,gsbi.h @@ -1,13 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* Copyright (c) 2013, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef __DT_BINDINGS_QCOM_GSBI_H #define __DT_BINDINGS_QCOM_GSBI_H diff --git a/dts/include/dt-bindings/sound/cs42l42.h b/dts/include/dt-bindings/sound/cs42l42.h index db69d84ed7..f25d83c618 100644 --- a/dts/include/dt-bindings/sound/cs42l42.h +++ b/dts/include/dt-bindings/sound/cs42l42.h @@ -1,3 +1,4 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * cs42l42.h -- CS42L42 ALSA SoC audio driver DT bindings header * @@ -6,11 +7,6 @@ * Author: James Schulman <james.schulman@cirrus.com> * Author: Brian Austin <brian.austin@cirrus.com> * Author: Michael White <michael.white@cirrus.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DT_CS42L42_H diff --git a/dts/include/dt-bindings/spmi/spmi.h b/dts/include/dt-bindings/spmi/spmi.h index d11e1e5438..ad4a43481d 100644 --- a/dts/include/dt-bindings/spmi/spmi.h +++ b/dts/include/dt-bindings/spmi/spmi.h @@ -1,13 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* Copyright (c) 2013, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef __DT_BINDINGS_SPMI_H #define __DT_BINDINGS_SPMI_H diff --git a/dts/include/dt-bindings/thermal/thermal.h b/dts/include/dt-bindings/thermal/thermal.h index b5e6b0069a..bc7babb1a6 100644 --- a/dts/include/dt-bindings/thermal/thermal.h +++ b/dts/include/dt-bindings/thermal/thermal.h @@ -1,10 +1,9 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * This header provides constants for most thermal bindings. * * Copyright (C) 2013 Texas Instruments * Eduardo Valentin <eduardo.valentin@ti.com> - * - * GPLv2 only */ #ifndef _DT_BINDINGS_THERMAL_THERMAL_H diff --git a/dts/src/arc/abilis_tb100.dtsi b/dts/src/arc/abilis_tb100.dtsi index c0bcd97522..41026a3bfa 100644 --- a/dts/src/arc/abilis_tb100.dtsi +++ b/dts/src/arc/abilis_tb100.dtsi @@ -1,22 +1,10 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Abilis Systems TB100 SOC device tree * * Copyright (C) Abilis Systems 2013 * * Author: Christian Ruppert <christian.ruppert@abilis.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ /include/ "abilis_tb10x.dtsi" diff --git a/dts/src/arc/abilis_tb100_dvk.dts b/dts/src/arc/abilis_tb100_dvk.dts index c968e677db..6d346de5e3 100644 --- a/dts/src/arc/abilis_tb100_dvk.dts +++ b/dts/src/arc/abilis_tb100_dvk.dts @@ -1,22 +1,10 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Abilis Systems TB100 Development Kit PCB device tree * * Copyright (C) Abilis Systems 2013 * * Author: Christian Ruppert <christian.ruppert@abilis.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ /dts-v1/; diff --git a/dts/src/arc/abilis_tb101.dtsi b/dts/src/arc/abilis_tb101.dtsi index 6a1615f58f..041ab1ba02 100644 --- a/dts/src/arc/abilis_tb101.dtsi +++ b/dts/src/arc/abilis_tb101.dtsi @@ -1,22 +1,10 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Abilis Systems TB101 SOC device tree * * Copyright (C) Abilis Systems 2013 * * Author: Christian Ruppert <christian.ruppert@abilis.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ /include/ "abilis_tb10x.dtsi" diff --git a/dts/src/arc/abilis_tb101_dvk.dts b/dts/src/arc/abilis_tb101_dvk.dts index 05143ce9c1..d11b790f8b 100644 --- a/dts/src/arc/abilis_tb101_dvk.dts +++ b/dts/src/arc/abilis_tb101_dvk.dts @@ -1,22 +1,10 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Abilis Systems TB101 Development Kit PCB device tree * * Copyright (C) Abilis Systems 2013 * * Author: Christian Ruppert <christian.ruppert@abilis.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ /dts-v1/; diff --git a/dts/src/arc/abilis_tb10x.dtsi b/dts/src/arc/abilis_tb10x.dtsi index 2fbf1bdfe6..aa62619f21 100644 --- a/dts/src/arc/abilis_tb10x.dtsi +++ b/dts/src/arc/abilis_tb10x.dtsi @@ -1,22 +1,10 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Abilis Systems TB10X SOC device tree * * Copyright (C) Abilis Systems 2013 * * Author: Christian Ruppert <christian.ruppert@abilis.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ diff --git a/dts/src/arc/axc001.dtsi b/dts/src/arc/axc001.dtsi index 37be3bf03a..6ec1fcdfc0 100644 --- a/dts/src/arc/axc001.dtsi +++ b/dts/src/arc/axc001.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013-15 Synopsys, Inc. (www.synopsys.com) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arc/axc003.dtsi b/dts/src/arc/axc003.dtsi index effa37536d..ac8e1b463a 100644 --- a/dts/src/arc/axc003.dtsi +++ b/dts/src/arc/axc003.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014-15 Synopsys, Inc. (www.synopsys.com) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arc/axc003_idu.dtsi b/dts/src/arc/axc003_idu.dtsi index e401e59f61..9da21e7fd2 100644 --- a/dts/src/arc/axc003_idu.dtsi +++ b/dts/src/arc/axc003_idu.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014, 2015 Synopsys, Inc. (www.synopsys.com) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arc/axs101.dts b/dts/src/arc/axs101.dts index 626b694c7b..305a7f9658 100644 --- a/dts/src/arc/axs101.dts +++ b/dts/src/arc/axs101.dts @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013-15 Synopsys, Inc. (www.synopsys.com) * * ARC AXS101 S/W development platform - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arc/axs103.dts b/dts/src/arc/axs103.dts index ec7fb277a0..16ccb7ba7a 100644 --- a/dts/src/arc/axs103.dts +++ b/dts/src/arc/axs103.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014-15 Synopsys, Inc. (www.synopsys.com) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arc/axs103_idu.dts b/dts/src/arc/axs103_idu.dts index 5c843d9b4a..46c9136cbf 100644 --- a/dts/src/arc/axs103_idu.dts +++ b/dts/src/arc/axs103_idu.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014-15 Synopsys, Inc. (www.synopsys.com) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arc/axs10x_mb.dtsi b/dts/src/arc/axs10x_mb.dtsi index 4ead6dc9af..08bcfed6b8 100644 --- a/dts/src/arc/axs10x_mb.dtsi +++ b/dts/src/arc/axs10x_mb.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Support for peripherals on the AXS10x mainboard * * Copyright (C) 2013-15 Synopsys, Inc. (www.synopsys.com) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ / { diff --git a/dts/src/arc/eznps.dts b/dts/src/arc/eznps.dts index 1e0d225791..a7e2e8d8ff 100644 --- a/dts/src/arc/eznps.dts +++ b/dts/src/arc/eznps.dts @@ -1,17 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright(c) 2015 EZchip Technologies. - * - * This program is free software; you can redistribute it and/or modify it - * under the terms and conditions of the GNU General Public License, - * version 2, as published by the Free Software Foundation. - * - * This program is distributed in the hope it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * - * The full GNU General Public License is included in this distribution in - * the file called "COPYING". */ /dts-v1/; diff --git a/dts/src/arc/haps_hs.dts b/dts/src/arc/haps_hs.dts index 1c1324e849..1ebfa04649 100644 --- a/dts/src/arc/haps_hs.dts +++ b/dts/src/arc/haps_hs.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2016-2014 Synopsys, Inc. (www.synopsys.com) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arc/haps_hs_idu.dts b/dts/src/arc/haps_hs_idu.dts index 0c603308ae..4d6971cf5f 100644 --- a/dts/src/arc/haps_hs_idu.dts +++ b/dts/src/arc/haps_hs_idu.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2016-2014 Synopsys, Inc. (www.synopsys.com) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arc/hsdk.dts b/dts/src/arc/hsdk.dts index 7425bb0f2d..9a45cb0930 100644 --- a/dts/src/arc/hsdk.dts +++ b/dts/src/arc/hsdk.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2017 Synopsys, Inc. (www.synopsys.com) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* @@ -11,7 +8,6 @@ */ /dts-v1/; -#include <dt-bindings/net/ti-dp83867.h> #include <dt-bindings/reset/snps,hsdk-reset.h> / { @@ -167,6 +163,24 @@ #clock-cells = <0>; }; + gpu_core_clk: gpu-core-clk { + compatible = "fixed-clock"; + clock-frequency = <400000000>; + #clock-cells = <0>; + }; + + gpu_dma_clk: gpu-dma-clk { + compatible = "fixed-clock"; + clock-frequency = <400000000>; + #clock-cells = <0>; + }; + + gpu_cfg_clk: gpu-cfg-clk { + compatible = "fixed-clock"; + clock-frequency = <200000000>; + #clock-cells = <0>; + }; + dmac_core_clk: dmac-core-clk { compatible = "fixed-clock"; clock-frequency = <400000000>; @@ -187,6 +201,7 @@ interrupt-names = "macirq"; phy-mode = "rgmii"; snps,pbl = <32>; + snps,multicast-filter-bins = <256>; clocks = <&gmacclk>; clock-names = "stmmaceth"; phy-handle = <&phy0>; @@ -195,15 +210,15 @@ mac-address = [00 00 00 00 00 00]; /* Filled in by U-Boot */ dma-coherent; + tx-fifo-depth = <4096>; + rx-fifo-depth = <4096>; + mdio { #address-cells = <1>; #size-cells = <0>; compatible = "snps,dwmac-mdio"; phy0: ethernet-phy@0 { reg = <0>; - ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; - ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; - ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; }; }; }; @@ -237,6 +252,14 @@ dma-coherent; }; + creg_gpio: gpio@14b0 { + compatible = "snps,creg-gpio-hsdk"; + reg = <0x14b0 0x4>; + gpio-controller; + #gpio-cells = <2>; + ngpios = <2>; + }; + gpio: gpio@3000 { compatible = "snps,dw-apb-gpio"; reg = <0x3000 0x20>; @@ -252,6 +275,17 @@ }; }; + gpu_3d: gpu@90000 { + compatible = "vivante,gc"; + reg = <0x90000 0x4000>; + clocks = <&gpu_dma_clk>, + <&gpu_cfg_clk>, + <&gpu_core_clk>, + <&gpu_core_clk>; + clock-names = "bus", "reg", "core", "shader"; + interrupts = <28>; + }; + dmac: dmac@80000 { compatible = "snps,axi-dma-1.01a"; reg = <0x80000 0x400>; diff --git a/dts/src/arc/nsim_700.dts b/dts/src/arc/nsim_700.dts index ff2f2c70c5..63dbaab124 100644 --- a/dts/src/arc/nsim_700.dts +++ b/dts/src/arc/nsim_700.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Synopsys, Inc. (www.synopsys.com) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arc/nsim_hs.dts b/dts/src/arc/nsim_hs.dts index 8e2489b16b..851798a5f4 100644 --- a/dts/src/arc/nsim_hs.dts +++ b/dts/src/arc/nsim_hs.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014-15 Synopsys, Inc. (www.synopsys.com) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arc/nsim_hs_idu.dts b/dts/src/arc/nsim_hs_idu.dts index ed12f49472..6c559a0bd1 100644 --- a/dts/src/arc/nsim_hs_idu.dts +++ b/dts/src/arc/nsim_hs_idu.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014-15 Synopsys, Inc. (www.synopsys.com) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arc/nsimosci.dts b/dts/src/arc/nsimosci.dts index 7842e5eb4a..fc207c4a4e 100644 --- a/dts/src/arc/nsimosci.dts +++ b/dts/src/arc/nsimosci.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013 Synopsys, Inc. (www.synopsys.com) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arc/nsimosci_hs.dts b/dts/src/arc/nsimosci_hs.dts index b8838cf2b4..71f1f84161 100644 --- a/dts/src/arc/nsimosci_hs.dts +++ b/dts/src/arc/nsimosci_hs.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014-15 Synopsys, Inc. (www.synopsys.com) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arc/nsimosci_hs_idu.dts b/dts/src/arc/nsimosci_hs_idu.dts index 72a2c723f1..69d794c59d 100644 --- a/dts/src/arc/nsimosci_hs_idu.dts +++ b/dts/src/arc/nsimosci_hs_idu.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014-15 Synopsys, Inc. (www.synopsys.com) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arc/skeleton.dtsi b/dts/src/arc/skeleton.dtsi index 2891cb266c..ba86b8036a 100644 --- a/dts/src/arc/skeleton.dtsi +++ b/dts/src/arc/skeleton.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Synopsys, Inc. (www.synopsys.com) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arc/skeleton_hs.dtsi b/dts/src/arc/skeleton_hs.dtsi index 5e944d3e5b..8fb49890e8 100644 --- a/dts/src/arc/skeleton_hs.dtsi +++ b/dts/src/arc/skeleton_hs.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2016 Synopsys, Inc. (www.synopsys.com) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ / { diff --git a/dts/src/arc/skeleton_hs_idu.dtsi b/dts/src/arc/skeleton_hs_idu.dtsi index 54b277d7de..75f5c9ecb5 100644 --- a/dts/src/arc/skeleton_hs_idu.dtsi +++ b/dts/src/arc/skeleton_hs_idu.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2016 Synopsys, Inc. (www.synopsys.com) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ / { diff --git a/dts/src/arc/vdk_axc003.dtsi b/dts/src/arc/vdk_axc003.dtsi index 84e8766c8c..f8be7ba8da 100644 --- a/dts/src/arc/vdk_axc003.dtsi +++ b/dts/src/arc/vdk_axc003.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013, 2014 Synopsys, Inc. (www.synopsys.com) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arc/vdk_axc003_idu.dtsi b/dts/src/arc/vdk_axc003_idu.dtsi index eb7e705e8a..0afa3e53a4 100644 --- a/dts/src/arc/vdk_axc003_idu.dtsi +++ b/dts/src/arc/vdk_axc003_idu.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014, 2015 Synopsys, Inc. (www.synopsys.com) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arc/vdk_axs10x_mb.dtsi b/dts/src/arc/vdk_axs10x_mb.dtsi index 925d5cc95d..cbb1797702 100644 --- a/dts/src/arc/vdk_axs10x_mb.dtsi +++ b/dts/src/arc/vdk_axs10x_mb.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Support for peripherals on the AXS10x mainboard (VDK version) * * Copyright (C) 2013-15 Synopsys, Inc. (www.synopsys.com) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ / { diff --git a/dts/src/arc/vdk_hs38.dts b/dts/src/arc/vdk_hs38.dts index 3c51103f0c..cddea7eaca 100644 --- a/dts/src/arc/vdk_hs38.dts +++ b/dts/src/arc/vdk_hs38.dts @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013 Synopsys, Inc. (www.synopsys.com) * * ARC HS38 Virtual Development Kit (VDK) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arc/vdk_hs38_smp.dts b/dts/src/arc/vdk_hs38_smp.dts index 6be68001a6..f57d1922ee 100644 --- a/dts/src/arc/vdk_hs38_smp.dts +++ b/dts/src/arc/vdk_hs38_smp.dts @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013 Synopsys, Inc. (www.synopsys.com) * * ARC HS38 Virtual Development Kit, SMP version (VDK) - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am335x-baltos-ir2110.dts b/dts/src/arm/am335x-baltos-ir2110.dts index 2f650a736b..49e46baf95 100644 --- a/dts/src/arm/am335x-baltos-ir2110.dts +++ b/dts/src/arm/am335x-baltos-ir2110.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/am335x-baltos-ir3220.dts b/dts/src/arm/am335x-baltos-ir3220.dts index 1ba66d5e21..9e88bc2f64 100644 --- a/dts/src/arm/am335x-baltos-ir3220.dts +++ b/dts/src/arm/am335x-baltos-ir3220.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/am335x-baltos-ir5221.dts b/dts/src/arm/am335x-baltos-ir5221.dts index eed65fc0e8..28aa004229 100644 --- a/dts/src/arm/am335x-baltos-ir5221.dts +++ b/dts/src/arm/am335x-baltos-ir5221.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/am335x-baltos-leds.dtsi b/dts/src/arm/am335x-baltos-leds.dtsi index fe75050c01..4e11a160d8 100644 --- a/dts/src/arm/am335x-baltos-leds.dtsi +++ b/dts/src/arm/am335x-baltos-leds.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/am335x-baltos.dtsi b/dts/src/arm/am335x-baltos.dtsi index b572ad1f13..ed235f263e 100644 --- a/dts/src/arm/am335x-baltos.dtsi +++ b/dts/src/arm/am335x-baltos.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/am335x-base0033.dts b/dts/src/arm/am335x-base0033.dts index cbd5bd8c57..89c00ce42c 100644 --- a/dts/src/arm/am335x-base0033.dts +++ b/dts/src/arm/am335x-base0033.dts @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * am335x-base0033.dts - Device Tree file for IGEP AQUILA EXPANSION * * Copyright (C) 2013 ISEE 2007 SL - http://www.isee.biz - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "am335x-igep0033.dtsi" diff --git a/dts/src/arm/am335x-bone-common.dtsi b/dts/src/arm/am335x-bone-common.dtsi index 42cfc3b37c..89b4cf2cb7 100644 --- a/dts/src/arm/am335x-bone-common.dtsi +++ b/dts/src/arm/am335x-bone-common.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ / { diff --git a/dts/src/arm/am335x-bone.dts b/dts/src/arm/am335x-bone.dts index 6b84937204..43bfbce410 100644 --- a/dts/src/arm/am335x-bone.dts +++ b/dts/src/arm/am335x-bone.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am335x-boneblack-common.dtsi b/dts/src/arm/am335x-boneblack-common.dtsi index 283e288b6e..7ad079861e 100644 --- a/dts/src/arm/am335x-boneblack-common.dtsi +++ b/dts/src/arm/am335x-boneblack-common.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include <dt-bindings/display/tda998x.h> diff --git a/dts/src/arm/am335x-boneblack-wireless.dts b/dts/src/arm/am335x-boneblack-wireless.dts index 5b275c96fc..3124d94c0b 100644 --- a/dts/src/arm/am335x-boneblack-wireless.dts +++ b/dts/src/arm/am335x-boneblack-wireless.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am335x-boneblack.dts b/dts/src/arm/am335x-boneblack.dts index d154d3133c..d3928662ae 100644 --- a/dts/src/arm/am335x-boneblack.dts +++ b/dts/src/arm/am335x-boneblack.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am335x-boneblue.dts b/dts/src/arm/am335x-boneblue.dts index 8d241c856c..0257576d5d 100644 --- a/dts/src/arm/am335x-boneblue.dts +++ b/dts/src/arm/am335x-boneblue.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am335x-bonegreen-common.dtsi b/dts/src/arm/am335x-bonegreen-common.dtsi index 71317e372e..7a8826633c 100644 --- a/dts/src/arm/am335x-bonegreen-common.dtsi +++ b/dts/src/arm/am335x-bonegreen-common.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &ldo3_reg { diff --git a/dts/src/arm/am335x-bonegreen-wireless.dts b/dts/src/arm/am335x-bonegreen-wireless.dts index 7db86a9c83..4092cd193b 100644 --- a/dts/src/arm/am335x-bonegreen-wireless.dts +++ b/dts/src/arm/am335x-bonegreen-wireless.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am335x-bonegreen.dts b/dts/src/arm/am335x-bonegreen.dts index a8b4d969ce..c12bb07177 100644 --- a/dts/src/arm/am335x-bonegreen.dts +++ b/dts/src/arm/am335x-bonegreen.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am335x-chiliboard.dts b/dts/src/arm/am335x-chiliboard.dts index 31da68355e..8cd81dc0cc 100644 --- a/dts/src/arm/am335x-chiliboard.dts +++ b/dts/src/arm/am335x-chiliboard.dts @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 Jablotron s.r.o. -- http://www.jablotron.com/ * Author: Rostislav Lisovy <lisovy@jablotron.cz> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; #include "am335x-chilisom.dtsi" diff --git a/dts/src/arm/am335x-chilisom.dtsi b/dts/src/arm/am335x-chilisom.dtsi index 8b88bf6daf..b31e2f7a4a 100644 --- a/dts/src/arm/am335x-chilisom.dtsi +++ b/dts/src/arm/am335x-chilisom.dtsi @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 Jablotron s.r.o. -- http://www.jablotron.com/ * Author: Rostislav Lisovy <lisovy@jablotron.cz> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "am33xx.dtsi" #include <dt-bindings/interrupt-controller/irq.h> diff --git a/dts/src/arm/am335x-cm-t335.dts b/dts/src/arm/am335x-cm-t335.dts index 3b0bb88dfc..ceecbfd29d 100644 --- a/dts/src/arm/am335x-cm-t335.dts +++ b/dts/src/arm/am335x-cm-t335.dts @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * am335x-cm-t335.dts - Device Tree file for Compulab CM-T335 * * Copyright (C) 2014 - 2015 CompuLab Ltd. - http://www.compulab.co.il/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am335x-evm.dts b/dts/src/arm/am335x-evm.dts index 55d4392bb7..a00145705c 100644 --- a/dts/src/arm/am335x-evm.dts +++ b/dts/src/arm/am335x-evm.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am335x-evmsk.dts b/dts/src/arm/am335x-evmsk.dts index 8fc8056db9..e28a5b82fd 100644 --- a/dts/src/arm/am335x-evmsk.dts +++ b/dts/src/arm/am335x-evmsk.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/am335x-icev2.dts b/dts/src/arm/am335x-icev2.dts index 4365684fa6..18f70b35da 100644 --- a/dts/src/arm/am335x-icev2.dts +++ b/dts/src/arm/am335x-icev2.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2016 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/am335x-igep0033.dtsi b/dts/src/arm/am335x-igep0033.dtsi index 312deb6cf6..eabcc8b2e4 100644 --- a/dts/src/arm/am335x-igep0033.dtsi +++ b/dts/src/arm/am335x-igep0033.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * am335x-igep0033.dtsi - Device Tree file for IGEP COM AQUILA AM335x * * Copyright (C) 2013 ISEE 2007 SL - http://www.isee.biz - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am335x-lxm.dts b/dts/src/arm/am335x-lxm.dts index aa4cd2b8d4..a8005e975e 100644 --- a/dts/src/arm/am335x-lxm.dts +++ b/dts/src/arm/am335x-lxm.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 NovaTech LLC - http://www.novatechweb.com - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am335x-moxa-uc-8100-me-t.dts b/dts/src/arm/am335x-moxa-uc-8100-me-t.dts index 5a2fb4bd4e..783d411f2c 100644 --- a/dts/src/arm/am335x-moxa-uc-8100-me-t.dts +++ b/dts/src/arm/am335x-moxa-uc-8100-me-t.dts @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2017 MOXA Inc. - https://www.moxa.com/ * * Author: SZ Lin (林上智) <sz.lin@moxa.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am335x-nano.dts b/dts/src/arm/am335x-nano.dts index 0052657331..0946fbf1b1 100644 --- a/dts/src/arm/am335x-nano.dts +++ b/dts/src/arm/am335x-nano.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013 Newflow Ltd - http://www.newflow.co.uk/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am335x-pcm-953.dtsi b/dts/src/arm/am335x-pcm-953.dtsi index baceaa7bb3..d774bf7672 100644 --- a/dts/src/arm/am335x-pcm-953.dtsi +++ b/dts/src/arm/am335x-pcm-953.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014-2017 Phytec Messtechnik GmbH * Author: Wadim Egorov <w.egorov@phytec.de> * Teresa Remmet <t.remmet@phytec.de> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include <dt-bindings/input/input.h> @@ -197,7 +194,7 @@ bus-width = <4>; pinctrl-names = "default"; pinctrl-0 = <&mmc1_pins>; - cd-gpios = <&gpio0 6 GPIO_ACTIVE_HIGH>; + cd-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>; status = "okay"; }; diff --git a/dts/src/arm/am335x-pepper.dts b/dts/src/arm/am335x-pepper.dts index 5c3e49f93a..e7764ecdf6 100644 --- a/dts/src/arm/am335x-pepper.dts +++ b/dts/src/arm/am335x-pepper.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Gumstix, Inc. - https://www.gumstix.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am335x-phycore-rdk.dts b/dts/src/arm/am335x-phycore-rdk.dts index 305f0b35d6..672daf9d36 100644 --- a/dts/src/arm/am335x-phycore-rdk.dts +++ b/dts/src/arm/am335x-phycore-rdk.dts @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 PHYTEC Messtechnik GmbH * Author: Wadim Egorov <w.egorov@phytec.de> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am335x-phycore-som.dtsi b/dts/src/arm/am335x-phycore-som.dtsi index 23c3039c56..ee6b1cb27c 100644 --- a/dts/src/arm/am335x-phycore-som.dtsi +++ b/dts/src/arm/am335x-phycore-som.dtsi @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 Phytec Messtechnik GmbH * Author: Teresa Remmet <t.remmet@phytec.de> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "am33xx.dtsi" diff --git a/dts/src/arm/am335x-sancloud-bbe.dts b/dts/src/arm/am335x-sancloud-bbe.dts index 7ed27b5c47..8678e6e354 100644 --- a/dts/src/arm/am335x-sancloud-bbe.dts +++ b/dts/src/arm/am335x-sancloud-bbe.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am335x-sbc-t335.dts b/dts/src/arm/am335x-sbc-t335.dts index 07c46a59f1..a3f6bc4072 100644 --- a/dts/src/arm/am335x-sbc-t335.dts +++ b/dts/src/arm/am335x-sbc-t335.dts @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * am335x-sbc-t335.dts - Device Tree file for Compulab SBC-T335 * * Copyright (C) 2014 - 2015 CompuLab Ltd. - http://www.compulab.co.il/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "am335x-cm-t335.dts" diff --git a/dts/src/arm/am335x-sl50.dts b/dts/src/arm/am335x-sl50.dts index 1ac0c8aa98..2f82095e72 100644 --- a/dts/src/arm/am335x-sl50.dts +++ b/dts/src/arm/am335x-sl50.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 Toby Churchill - http://www.toby-churchill.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am335x-wega-rdk.dts b/dts/src/arm/am335x-wega-rdk.dts index 6431b7db81..2e04f6df82 100644 --- a/dts/src/arm/am335x-wega-rdk.dts +++ b/dts/src/arm/am335x-wega-rdk.dts @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 Phytec Messtechnik GmbH * Author: Teresa Remmet <t.remmet@phytec.de> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am335x-wega.dtsi b/dts/src/arm/am335x-wega.dtsi index b7d28a2034..67bde56f89 100644 --- a/dts/src/arm/am335x-wega.dtsi +++ b/dts/src/arm/am335x-wega.dtsi @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 Phytec Messtechnik GmbH * Author: Teresa Remmet <t.remmet@phytec.de> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ / { @@ -157,7 +154,7 @@ bus-width = <4>; pinctrl-names = "default"; pinctrl-0 = <&mmc1_pins>; - cd-gpios = <&gpio0 6 GPIO_ACTIVE_HIGH>; + cd-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>; status = "okay"; }; diff --git a/dts/src/arm/am33xx-clocks.dtsi b/dts/src/arm/am33xx-clocks.dtsi index 9221824390..dced92a897 100644 --- a/dts/src/arm/am33xx-clocks.dtsi +++ b/dts/src/arm/am33xx-clocks.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for AM33xx clock data * * Copyright (C) 2013 Texas Instruments, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &scm_clocks { sys_clkin_ck: sys_clkin_ck@40 { diff --git a/dts/src/arm/am33xx-l4.dtsi b/dts/src/arm/am33xx-l4.dtsi index ca6d9f02a8..ced1a19d5f 100644 --- a/dts/src/arm/am33xx-l4.dtsi +++ b/dts/src/arm/am33xx-l4.dtsi @@ -1759,11 +1759,10 @@ target-module@cc000 { /* 0x481cc000, ap 60 46.0 */ compatible = "ti,sysc-omap4", "ti,sysc"; ti,hwmods = "d_can0"; - reg = <0xcc000 0x4>; - reg-names = "rev"; /* Domains (P, C): per_pwrdm, l4ls_clkdm */ - clocks = <&l4ls_clkctrl AM3_L4LS_D_CAN0_CLKCTRL 0>; - clock-names = "fck"; + clocks = <&l4ls_clkctrl AM3_L4LS_D_CAN0_CLKCTRL 0>, + <&dcan0_fck>; + clock-names = "fck", "osc"; #address-cells = <1>; #size-cells = <1>; ranges = <0x0 0xcc000 0x2000>; @@ -1782,11 +1781,10 @@ target-module@d0000 { /* 0x481d0000, ap 62 42.0 */ compatible = "ti,sysc-omap4", "ti,sysc"; ti,hwmods = "d_can1"; - reg = <0xd0000 0x4>; - reg-names = "rev"; /* Domains (P, C): per_pwrdm, l4ls_clkdm */ - clocks = <&l4ls_clkctrl AM3_L4LS_D_CAN1_CLKCTRL 0>; - clock-names = "fck"; + clocks = <&l4ls_clkctrl AM3_L4LS_D_CAN1_CLKCTRL 0>, + <&dcan1_fck>; + clock-names = "fck", "osc"; #address-cells = <1>; #size-cells = <1>; ranges = <0x0 0xd0000 0x2000>; diff --git a/dts/src/arm/am3517-craneboard.dts b/dts/src/arm/am3517-craneboard.dts index 083ff50734..eb3517dabe 100644 --- a/dts/src/arm/am3517-craneboard.dts +++ b/dts/src/arm/am3517-craneboard.dts @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * See craneboard.org for more details * * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am3517-evm-ui.dtsi b/dts/src/arm/am3517-evm-ui.dtsi index e841918c1c..48631a45da 100644 --- a/dts/src/arm/am3517-evm-ui.dtsi +++ b/dts/src/arm/am3517-evm-ui.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2018 Logic PD, Inc - http://www.logicpd.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include <dt-bindings/input/input.h> diff --git a/dts/src/arm/am3517-evm.dts b/dts/src/arm/am3517-evm.dts index 3527c0f2df..ebfe28c2f5 100644 --- a/dts/src/arm/am3517-evm.dts +++ b/dts/src/arm/am3517-evm.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am3517-som.dtsi b/dts/src/arm/am3517-som.dtsi index b1c988eed8..8b669e2eaf 100644 --- a/dts/src/arm/am3517-som.dtsi +++ b/dts/src/arm/am3517-som.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2016 Derald D. Woods <woods.technical@gmail.com> * * Based on am3517-evm.dts - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ / { diff --git a/dts/src/arm/am3517_mt_ventoux.dts b/dts/src/arm/am3517_mt_ventoux.dts index 3395783c5b..e507e4ae0d 100644 --- a/dts/src/arm/am3517_mt_ventoux.dts +++ b/dts/src/arm/am3517_mt_ventoux.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2011 Ilya Yanok, EmCraft Systems - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am35xx-clocks.dtsi b/dts/src/arm/am35xx-clocks.dtsi index 00dd1f091b..220d0a5279 100644 --- a/dts/src/arm/am35xx-clocks.dtsi +++ b/dts/src/arm/am35xx-clocks.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for OMAP3 clock data * * Copyright (C) 2013 Texas Instruments, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &scm_clocks { emac_ick: emac_ick@32c { diff --git a/dts/src/arm/am437x-cm-t43.dts b/dts/src/arm/am437x-cm-t43.dts index 4fcf647815..063113a5da 100644 --- a/dts/src/arm/am437x-cm-t43.dts +++ b/dts/src/arm/am437x-cm-t43.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 CompuLab, Ltd. - http://www.compulab.co.il/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am437x-gp-evm.dts b/dts/src/arm/am437x-gp-evm.dts index 4c6ee37ea5..cae4500194 100644 --- a/dts/src/arm/am437x-gp-evm.dts +++ b/dts/src/arm/am437x-gp-evm.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* AM437x GP EVM */ diff --git a/dts/src/arm/am437x-idk-evm.dts b/dts/src/arm/am437x-idk-evm.dts index bb28540947..f3ced6df0c 100644 --- a/dts/src/arm/am437x-idk-evm.dts +++ b/dts/src/arm/am437x-idk-evm.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am437x-l4.dtsi b/dts/src/arm/am437x-l4.dtsi index 85c6f4ff18..989cb60b90 100644 --- a/dts/src/arm/am437x-l4.dtsi +++ b/dts/src/arm/am437x-l4.dtsi @@ -1575,8 +1575,6 @@ target-module@cc000 { /* 0x481cc000, ap 50 46.0 */ compatible = "ti,sysc-omap4", "ti,sysc"; ti,hwmods = "d_can0"; - reg = <0xcc000 0x4>; - reg-names = "rev"; /* Domains (P, C): per_pwrdm, l4ls_clkdm */ clocks = <&l4ls_clkctrl AM4_L4LS_D_CAN0_CLKCTRL 0>; clock-names = "fck"; @@ -1596,8 +1594,6 @@ target-module@d0000 { /* 0x481d0000, ap 52 3a.0 */ compatible = "ti,sysc-omap4", "ti,sysc"; ti,hwmods = "d_can1"; - reg = <0xd0000 0x4>; - reg-names = "rev"; /* Domains (P, C): per_pwrdm, l4ls_clkdm */ clocks = <&l4ls_clkctrl AM4_L4LS_D_CAN1_CLKCTRL 0>; clock-names = "fck"; diff --git a/dts/src/arm/am437x-sbc-t43.dts b/dts/src/arm/am437x-sbc-t43.dts index d23260d3a5..94cf07ea27 100644 --- a/dts/src/arm/am437x-sbc-t43.dts +++ b/dts/src/arm/am437x-sbc-t43.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 CompuLab, Ltd. - http://www.compulab.co.il/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "am437x-cm-t43.dts" diff --git a/dts/src/arm/am437x-sk-evm.dts b/dts/src/arm/am437x-sk-evm.dts index 088cba09d3..74eaa6a3b2 100644 --- a/dts/src/arm/am437x-sk-evm.dts +++ b/dts/src/arm/am437x-sk-evm.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* AM437x SK EVM */ diff --git a/dts/src/arm/am43x-epos-evm.dts b/dts/src/arm/am43x-epos-evm.dts index 9b8b132b04..95314121d1 100644 --- a/dts/src/arm/am43x-epos-evm.dts +++ b/dts/src/arm/am43x-epos-evm.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* AM43x EPOS EVM */ diff --git a/dts/src/arm/am43xx-clocks.dtsi b/dts/src/arm/am43xx-clocks.dtsi index e3f420793c..091356f2a8 100644 --- a/dts/src/arm/am43xx-clocks.dtsi +++ b/dts/src/arm/am43xx-clocks.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for AM43xx clock data * * Copyright (C) 2013 Texas Instruments, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &scm_clocks { sys_clkin_ck: sys_clkin_ck@40 { diff --git a/dts/src/arm/am571x-idk.dts b/dts/src/arm/am571x-idk.dts index 66116ad3f9..1d5e99964b 100644 --- a/dts/src/arm/am571x-idk.dts +++ b/dts/src/arm/am571x-idk.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015-2016 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am572x-idk.dts b/dts/src/arm/am572x-idk.dts index 4f835222c2..c65d7f6d3b 100644 --- a/dts/src/arm/am572x-idk.dts +++ b/dts/src/arm/am572x-idk.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015-2016 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am57xx-beagle-x15-common.dtsi b/dts/src/arm/am57xx-beagle-x15-common.dtsi index 2341a56eba..d02f5fa61e 100644 --- a/dts/src/arm/am57xx-beagle-x15-common.dtsi +++ b/dts/src/arm/am57xx-beagle-x15-common.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014-2016 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am57xx-beagle-x15-revb1.dts b/dts/src/arm/am57xx-beagle-x15-revb1.dts index 5a77b33492..a374b5cd6d 100644 --- a/dts/src/arm/am57xx-beagle-x15-revb1.dts +++ b/dts/src/arm/am57xx-beagle-x15-revb1.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014-2016 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "am57xx-beagle-x15-common.dtsi" diff --git a/dts/src/arm/am57xx-beagle-x15-revc.dts b/dts/src/arm/am57xx-beagle-x15-revc.dts index 17c41da3b5..4badd2144d 100644 --- a/dts/src/arm/am57xx-beagle-x15-revc.dts +++ b/dts/src/arm/am57xx-beagle-x15-revc.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014-2017 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "am57xx-beagle-x15-common.dtsi" diff --git a/dts/src/arm/am57xx-beagle-x15.dts b/dts/src/arm/am57xx-beagle-x15.dts index 70a71c6410..a5c24ed4d1 100644 --- a/dts/src/arm/am57xx-beagle-x15.dts +++ b/dts/src/arm/am57xx-beagle-x15.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014-2016 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "am57xx-beagle-x15-common.dtsi" diff --git a/dts/src/arm/am57xx-cl-som-am57x.dts b/dts/src/arm/am57xx-cl-som-am57x.dts index 0460de0da2..34ca761aed 100644 --- a/dts/src/arm/am57xx-cl-som-am57x.dts +++ b/dts/src/arm/am57xx-cl-som-am57x.dts @@ -1,12 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Support for CompuLab CL-SOM-AM57x System-on-Module * * Copyright (C) 2015 CompuLab Ltd. - http://www.compulab.co.il/ * Author: Dmitry Lifshitz <lifshitz@compulab.co.il> - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License version 2 as published by - * the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/am57xx-idk-common.dtsi b/dts/src/arm/am57xx-idk-common.dtsi index f7bd264589..423855a2a2 100644 --- a/dts/src/arm/am57xx-idk-common.dtsi +++ b/dts/src/arm/am57xx-idk-common.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015-2016 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "am57xx-industrial-grade.dtsi" @@ -420,6 +417,7 @@ vqmmc-supply = <&ldo1_reg>; bus-width = <4>; cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>; /* gpio 219 */ + no-1-8-v; }; &mmc2 { diff --git a/dts/src/arm/am57xx-sbc-am57x.dts b/dts/src/arm/am57xx-sbc-am57x.dts index 31f9be6324..ce5bf1d92e 100644 --- a/dts/src/arm/am57xx-sbc-am57x.dts +++ b/dts/src/arm/am57xx-sbc-am57x.dts @@ -1,12 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Support for CompuLab SBC-AM57x single board computer * * Copyright (C) 2015 CompuLab Ltd. - http://www.compulab.co.il/ * Author: Dmitry Lifshitz <lifshitz@compulab.co.il> - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License version 2 as published by - * the Free Software Foundation. */ #include "am57xx-cl-som-am57x.dts" diff --git a/dts/src/arm/bcm4708-asus-rt-ac56u.dts b/dts/src/arm/bcm4708-asus-rt-ac56u.dts index 79d454ff3b..1c6f561ac5 100644 --- a/dts/src/arm/bcm4708-asus-rt-ac56u.dts +++ b/dts/src/arm/bcm4708-asus-rt-ac56u.dts @@ -20,6 +20,7 @@ }; memory { + device_type = "memory"; reg = <0x00000000 0x08000000 0x88000000 0x08000000>; }; diff --git a/dts/src/arm/bcm4708-asus-rt-ac68u.dts b/dts/src/arm/bcm4708-asus-rt-ac68u.dts index 99365bb8c4..e550799a6a 100644 --- a/dts/src/arm/bcm4708-asus-rt-ac68u.dts +++ b/dts/src/arm/bcm4708-asus-rt-ac68u.dts @@ -20,6 +20,7 @@ }; memory { + device_type = "memory"; reg = <0x00000000 0x08000000 0x88000000 0x08000000>; }; diff --git a/dts/src/arm/bcm4708-buffalo-wzr-1750dhp.dts b/dts/src/arm/bcm4708-buffalo-wzr-1750dhp.dts index bc330b1f6d..7bfa2238f7 100644 --- a/dts/src/arm/bcm4708-buffalo-wzr-1750dhp.dts +++ b/dts/src/arm/bcm4708-buffalo-wzr-1750dhp.dts @@ -20,6 +20,7 @@ }; memory { + device_type = "memory"; reg = <0x00000000 0x08000000 0x88000000 0x18000000>; }; diff --git a/dts/src/arm/bcm4708-linksys-ea6300-v1.dts b/dts/src/arm/bcm4708-linksys-ea6300-v1.dts index 258d2b2519..fd361c9b13 100644 --- a/dts/src/arm/bcm4708-linksys-ea6300-v1.dts +++ b/dts/src/arm/bcm4708-linksys-ea6300-v1.dts @@ -17,6 +17,7 @@ }; memory { + device_type = "memory"; reg = <0x00000000 0x08000000>; }; diff --git a/dts/src/arm/bcm4708-linksys-ea6500-v2.dts b/dts/src/arm/bcm4708-linksys-ea6500-v2.dts index babcfec50d..7c34360d32 100644 --- a/dts/src/arm/bcm4708-linksys-ea6500-v2.dts +++ b/dts/src/arm/bcm4708-linksys-ea6500-v2.dts @@ -18,6 +18,7 @@ }; memory { + device_type = "memory"; reg = <0x00000000 0x08000000>; }; diff --git a/dts/src/arm/bcm4708-luxul-xap-1510.dts b/dts/src/arm/bcm4708-luxul-xap-1510.dts index e7fdaed99b..969b8d78e4 100644 --- a/dts/src/arm/bcm4708-luxul-xap-1510.dts +++ b/dts/src/arm/bcm4708-luxul-xap-1510.dts @@ -16,6 +16,7 @@ }; memory { + device_type = "memory"; reg = <0x00000000 0x08000000>; }; diff --git a/dts/src/arm/bcm4708-luxul-xwc-1000.dts b/dts/src/arm/bcm4708-luxul-xwc-1000.dts index 42bafc6440..b62854ee27 100644 --- a/dts/src/arm/bcm4708-luxul-xwc-1000.dts +++ b/dts/src/arm/bcm4708-luxul-xwc-1000.dts @@ -20,6 +20,7 @@ }; memory { + device_type = "memory"; reg = <0x00000000 0x08000000>; }; diff --git a/dts/src/arm/bcm4708-netgear-r6250.dts b/dts/src/arm/bcm4708-netgear-r6250.dts index dce35eb79d..75f7b4ef35 100644 --- a/dts/src/arm/bcm4708-netgear-r6250.dts +++ b/dts/src/arm/bcm4708-netgear-r6250.dts @@ -21,6 +21,7 @@ }; memory { + device_type = "memory"; reg = <0x00000000 0x08000000 0x88000000 0x08000000>; }; diff --git a/dts/src/arm/bcm4708-netgear-r6300-v2.dts b/dts/src/arm/bcm4708-netgear-r6300-v2.dts index b7a024b795..148d16a908 100644 --- a/dts/src/arm/bcm4708-netgear-r6300-v2.dts +++ b/dts/src/arm/bcm4708-netgear-r6300-v2.dts @@ -20,6 +20,7 @@ }; memory { + device_type = "memory"; reg = <0x00000000 0x08000000 0x88000000 0x08000000>; }; diff --git a/dts/src/arm/bcm4708-smartrg-sr400ac.dts b/dts/src/arm/bcm4708-smartrg-sr400ac.dts index f7f834cd34..eed3aab667 100644 --- a/dts/src/arm/bcm4708-smartrg-sr400ac.dts +++ b/dts/src/arm/bcm4708-smartrg-sr400ac.dts @@ -20,6 +20,7 @@ }; memory { + device_type = "memory"; reg = <0x00000000 0x08000000 0x88000000 0x08000000>; }; diff --git a/dts/src/arm/bcm4709-asus-rt-ac87u.dts b/dts/src/arm/bcm4709-asus-rt-ac87u.dts index 4cb10f88a9..8f1e565c3d 100644 --- a/dts/src/arm/bcm4709-asus-rt-ac87u.dts +++ b/dts/src/arm/bcm4709-asus-rt-ac87u.dts @@ -20,6 +20,7 @@ }; memory { + device_type = "memory"; reg = <0x00000000 0x08000000 0x88000000 0x08000000>; }; diff --git a/dts/src/arm/bcm4709-buffalo-wxr-1900dhp.dts b/dts/src/arm/bcm4709-buffalo-wxr-1900dhp.dts index 77d1687b42..ce888b1835 100644 --- a/dts/src/arm/bcm4709-buffalo-wxr-1900dhp.dts +++ b/dts/src/arm/bcm4709-buffalo-wxr-1900dhp.dts @@ -20,6 +20,7 @@ }; memory { + device_type = "memory"; reg = <0x00000000 0x08000000 0x88000000 0x18000000>; }; diff --git a/dts/src/arm/bcm4709-linksys-ea9200.dts b/dts/src/arm/bcm4709-linksys-ea9200.dts index 983149b552..ed8619b54d 100644 --- a/dts/src/arm/bcm4709-linksys-ea9200.dts +++ b/dts/src/arm/bcm4709-linksys-ea9200.dts @@ -17,6 +17,7 @@ }; memory { + device_type = "memory"; reg = <0x00000000 0x08000000 0x88000000 0x08000000>; }; diff --git a/dts/src/arm/bcm4709-netgear-r7000.dts b/dts/src/arm/bcm4709-netgear-r7000.dts index ca41481b44..1f87993eae 100644 --- a/dts/src/arm/bcm4709-netgear-r7000.dts +++ b/dts/src/arm/bcm4709-netgear-r7000.dts @@ -20,6 +20,7 @@ }; memory { + device_type = "memory"; reg = <0x00000000 0x08000000 0x88000000 0x08000000>; }; diff --git a/dts/src/arm/bcm4709-netgear-r8000.dts b/dts/src/arm/bcm4709-netgear-r8000.dts index aa69e656d3..6c6199a53d 100644 --- a/dts/src/arm/bcm4709-netgear-r8000.dts +++ b/dts/src/arm/bcm4709-netgear-r8000.dts @@ -31,6 +31,7 @@ }; memory { + device_type = "memory"; reg = <0x00000000 0x08000000 0x88000000 0x08000000>; }; diff --git a/dts/src/arm/bcm4709-tplink-archer-c9-v1.dts b/dts/src/arm/bcm4709-tplink-archer-c9-v1.dts index b527d2ff98..f806be5da7 100644 --- a/dts/src/arm/bcm4709-tplink-archer-c9-v1.dts +++ b/dts/src/arm/bcm4709-tplink-archer-c9-v1.dts @@ -16,6 +16,7 @@ }; memory { + device_type = "memory"; reg = <0x00000000 0x08000000>; }; diff --git a/dts/src/arm/bcm47094-phicomm-k3.dts b/dts/src/arm/bcm47094-phicomm-k3.dts index ec09c0426d..456045f17a 100644 --- a/dts/src/arm/bcm47094-phicomm-k3.dts +++ b/dts/src/arm/bcm47094-phicomm-k3.dts @@ -14,6 +14,7 @@ model = "Phicomm K3"; memory { + device_type = "memory"; reg = <0x00000000 0x08000000 0x88000000 0x18000000>; }; diff --git a/dts/src/arm/bcm94708.dts b/dts/src/arm/bcm94708.dts index 934f07adfe..3d13e46c69 100644 --- a/dts/src/arm/bcm94708.dts +++ b/dts/src/arm/bcm94708.dts @@ -39,6 +39,7 @@ compatible = "brcm,bcm94708", "brcm,bcm4708"; memory { + device_type = "memory"; reg = <0x00000000 0x08000000>; }; }; diff --git a/dts/src/arm/bcm94709.dts b/dts/src/arm/bcm94709.dts index 31e4dd0987..5017b7b259 100644 --- a/dts/src/arm/bcm94709.dts +++ b/dts/src/arm/bcm94709.dts @@ -39,6 +39,7 @@ compatible = "brcm,bcm94709", "brcm,bcm4709", "brcm,bcm4708"; memory { + device_type = "memory"; reg = <0x00000000 0x08000000>; }; }; diff --git a/dts/src/arm/bcm963138dvt.dts b/dts/src/arm/bcm963138dvt.dts index 8dca97eeaf..29525686e5 100644 --- a/dts/src/arm/bcm963138dvt.dts +++ b/dts/src/arm/bcm963138dvt.dts @@ -17,6 +17,7 @@ }; memory { + device_type = "memory"; reg = <0x0 0x08000000>; }; diff --git a/dts/src/arm/compulab-sb-som.dtsi b/dts/src/arm/compulab-sb-som.dtsi index 4af1adfee7..f5e6216718 100644 --- a/dts/src/arm/compulab-sb-som.dtsi +++ b/dts/src/arm/compulab-sb-som.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 CompuLab, Ltd. - http://www.compulab.co.il/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ / { diff --git a/dts/src/arm/cros-adc-thermistors.dtsi b/dts/src/arm/cros-adc-thermistors.dtsi index ce7fca76b0..97e616f7b8 100644 --- a/dts/src/arm/cros-adc-thermistors.dtsi +++ b/dts/src/arm/cros-adc-thermistors.dtsi @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Thermistor dts fragment for devices that use Thermistors as * children of the IIO based ADC. @@ -6,10 +7,6 @@ * Exynos5800 based Peach PI. * * Copyright (c) 2014 Samsung Electronics Co., Ltd. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &adc { diff --git a/dts/src/arm/cros-ec-keyboard.dtsi b/dts/src/arm/cros-ec-keyboard.dtsi index c045105177..4a0c1037fb 100644 --- a/dts/src/arm/cros-ec-keyboard.dtsi +++ b/dts/src/arm/cros-ec-keyboard.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Keyboard dts fragment for devices that use cros-ec-keyboard * * Copyright (c) 2014 Google, Inc - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include <dt-bindings/input/input.h> diff --git a/dts/src/arm/da850-evm.dts b/dts/src/arm/da850-evm.dts index f04bc3e153..f2d2b87233 100644 --- a/dts/src/arm/da850-evm.dts +++ b/dts/src/arm/da850-evm.dts @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree for DA850 EVM board * * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the - * Free Software Foundation, version 2. */ /dts-v1/; #include "da850.dtsi" diff --git a/dts/src/arm/da850-lego-ev3.dts b/dts/src/arm/da850-lego-ev3.dts index 66fcadf0ba..09c3666def 100644 --- a/dts/src/arm/da850-lego-ev3.dts +++ b/dts/src/arm/da850-lego-ev3.dts @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device tree for LEGO MINDSTORMS EV3 * * Copyright (C) 2017 David Lechner <david@lechnology.com> - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the - * Free Software Foundation, version 2. */ /dts-v1/; diff --git a/dts/src/arm/dm8148-evm.dts b/dts/src/arm/dm8148-evm.dts index 2d201719ba..3931fb068f 100644 --- a/dts/src/arm/dm8148-evm.dts +++ b/dts/src/arm/dm8148-evm.dts @@ -1,8 +1,4 @@ -/* - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - */ +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include "dm814x.dtsi" diff --git a/dts/src/arm/dm8148-t410.dts b/dts/src/arm/dm8148-t410.dts index 63301bcacf..9e43d5ec0b 100644 --- a/dts/src/arm/dm8148-t410.dts +++ b/dts/src/arm/dm8148-t410.dts @@ -1,8 +1,4 @@ -/* - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - */ +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include "dm814x.dtsi" diff --git a/dts/src/arm/dm814x-clocks.dtsi b/dts/src/arm/dm814x-clocks.dtsi index f80525a290..e5e4d0affe 100644 --- a/dts/src/arm/dm814x-clocks.dtsi +++ b/dts/src/arm/dm814x-clocks.dtsi @@ -1,8 +1,4 @@ -/* - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - */ +// SPDX-License-Identifier: GPL-2.0-only &pllss { /* diff --git a/dts/src/arm/dm8168-evm.dts b/dts/src/arm/dm8168-evm.dts index 1d030d5673..cf05d532db 100644 --- a/dts/src/arm/dm8168-evm.dts +++ b/dts/src/arm/dm8168-evm.dts @@ -1,8 +1,4 @@ -/* - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - */ +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include "dm816x.dtsi" diff --git a/dts/src/arm/dm816x-clocks.dtsi b/dts/src/arm/dm816x-clocks.dtsi index 1efd4e23e5..338449b32a 100644 --- a/dts/src/arm/dm816x-clocks.dtsi +++ b/dts/src/arm/dm816x-clocks.dtsi @@ -1,8 +1,4 @@ -/* - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - */ +// SPDX-License-Identifier: GPL-2.0-only &scrm { main_fapll: main_fapll { diff --git a/dts/src/arm/dra62x-clocks.dtsi b/dts/src/arm/dra62x-clocks.dtsi index 0e49741747..11d1241b0e 100644 --- a/dts/src/arm/dra62x-clocks.dtsi +++ b/dts/src/arm/dra62x-clocks.dtsi @@ -1,8 +1,4 @@ -/* - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - */ +// SPDX-License-Identifier: GPL-2.0-only #include "dm814x-clocks.dtsi" diff --git a/dts/src/arm/dra62x-j5eco-evm.dts b/dts/src/arm/dra62x-j5eco-evm.dts index 906aedde04..861ab90a3f 100644 --- a/dts/src/arm/dra62x-j5eco-evm.dts +++ b/dts/src/arm/dra62x-j5eco-evm.dts @@ -1,8 +1,4 @@ -/* - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - */ +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include "dra62x.dtsi" diff --git a/dts/src/arm/dra7-evm-common.dtsi b/dts/src/arm/dra7-evm-common.dtsi index 0d6f8647cc..82eeba8fae 100644 --- a/dts/src/arm/dra7-evm-common.dtsi +++ b/dts/src/arm/dra7-evm-common.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2017 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include <dt-bindings/gpio/gpio.h> diff --git a/dts/src/arm/dra7-evm.dts b/dts/src/arm/dra7-evm.dts index cc079064a2..714e971b91 100644 --- a/dts/src/arm/dra7-evm.dts +++ b/dts/src/arm/dra7-evm.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/dra7-l4.dtsi b/dts/src/arm/dra7-l4.dtsi index fe9f0bc29f..23faedec08 100644 --- a/dts/src/arm/dra7-l4.dtsi +++ b/dts/src/arm/dra7-l4.dtsi @@ -3543,7 +3543,7 @@ }; }; - target-module@38000 { /* 0x48838000, ap 29 12.0 */ + rtctarget: target-module@38000 { /* 0x48838000, ap 29 12.0 */ compatible = "ti,sysc-omap4-simple", "ti,sysc"; ti,hwmods = "rtcss"; reg = <0x38074 0x4>, @@ -4450,8 +4450,6 @@ timer12: timer@0 { compatible = "ti,omap5430-timer"; reg = <0x0 0x80>; - clocks = <&wkupaon_clkctrl DRA7_WKUPAON_TIMER12_CLKCTRL 24>; - clock-names = "fck"; interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>; ti,timer-alwon; ti,timer-secure; diff --git a/dts/src/arm/dra7.dtsi b/dts/src/arm/dra7.dtsi index d87e932f45..953f0ffce2 100644 --- a/dts/src/arm/dra7.dtsi +++ b/dts/src/arm/dra7.dtsi @@ -1,9 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. * Based on "omap4.dtsi" */ diff --git a/dts/src/arm/dra71-evm.dts b/dts/src/arm/dra71-evm.dts index 82cc7ec37a..fabeb77047 100644 --- a/dts/src/arm/dra71-evm.dts +++ b/dts/src/arm/dra71-evm.dts @@ -1,12 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2016 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ -#include "dra72-evm-common.dtsi" +#include "dra71x.dtsi" #include "dra7-mmc-iodelay.dtsi" #include "dra72x-mmc-iodelay.dtsi" #include <dt-bindings/net/ti-dp83867.h> diff --git a/dts/src/arm/dra71x.dtsi b/dts/src/arm/dra71x.dtsi new file mode 100644 index 0000000000..695a08ed03 --- /dev/null +++ b/dts/src/arm/dra71x.dtsi @@ -0,0 +1,17 @@ +/* + * Copyright (C) 2019 Texas Instruments Incorporated - http://www.ti.com/ + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ + +#include "dra72-evm-common.dtsi" + +&rtctarget { + status = "disabled"; +}; + +&usb4_tm { + status = "disabled"; +}; diff --git a/dts/src/arm/dra72-evm-common.dtsi b/dts/src/arm/dra72-evm-common.dtsi index be65f3bc59..8641a3d7d8 100644 --- a/dts/src/arm/dra72-evm-common.dtsi +++ b/dts/src/arm/dra72-evm-common.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014-2016 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/dra72-evm-revc.dts b/dts/src/arm/dra72-evm-revc.dts index fafc2a4d7b..2bb2e8be62 100644 --- a/dts/src/arm/dra72-evm-revc.dts +++ b/dts/src/arm/dra72-evm-revc.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2016 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "dra72-evm-common.dtsi" #include "dra72x-mmc-iodelay.dtsi" diff --git a/dts/src/arm/dra72-evm-tps65917.dtsi b/dts/src/arm/dra72-evm-tps65917.dtsi index 47bb90f41f..5ff9c43ef3 100644 --- a/dts/src/arm/dra72-evm-tps65917.dtsi +++ b/dts/src/arm/dra72-evm-tps65917.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2016 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/dra72-evm.dts b/dts/src/arm/dra72-evm.dts index 154b0a0ceb..9adb77585e 100644 --- a/dts/src/arm/dra72-evm.dts +++ b/dts/src/arm/dra72-evm.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014-2016 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "dra72-evm-common.dtsi" #include "dra72x-mmc-iodelay.dtsi" diff --git a/dts/src/arm/dra72x.dtsi b/dts/src/arm/dra72x.dtsi index 89831552cd..f5762709c8 100644 --- a/dts/src/arm/dra72x.dtsi +++ b/dts/src/arm/dra72x.dtsi @@ -1,9 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Texas Instruments Incorporated - http://www.ti.com/ * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. * Based on "omap4.dtsi" */ @@ -62,3 +60,7 @@ &pcie2_rc { compatible = "ti,dra726-pcie-rc", "ti,dra7-pcie"; }; + +&usb4_tm { + status = "disabled"; +}; diff --git a/dts/src/arm/dra74x.dtsi b/dts/src/arm/dra74x.dtsi index 8294a607fe..d1b5b76bc5 100644 --- a/dts/src/arm/dra74x.dtsi +++ b/dts/src/arm/dra74x.dtsi @@ -1,9 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Texas Instruments Incorporated - http://www.ti.com/ * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. * Based on "omap4.dtsi" */ diff --git a/dts/src/arm/dra76-evm.dts b/dts/src/arm/dra76-evm.dts index 8a57895fd8..1fb6f13fb5 100644 --- a/dts/src/arm/dra76-evm.dts +++ b/dts/src/arm/dra76-evm.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2017 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/dra76x-mmc-iodelay.dtsi b/dts/src/arm/dra76x-mmc-iodelay.dtsi index baba7b00ec..fdca481869 100644 --- a/dts/src/arm/dra76x-mmc-iodelay.dtsi +++ b/dts/src/arm/dra76x-mmc-iodelay.dtsi @@ -22,7 +22,7 @@ * * Datamanual Revisions: * - * DRA76x Silicon Revision 1.0: SPRS993A, Revised July 2017 + * DRA76x Silicon Revision 1.0: SPRS993E, Revised December 2018 * */ @@ -169,25 +169,25 @@ /* Corresponds to MMC2_HS200_MANUAL1 in datamanual */ mmc2_iodelay_hs200_conf: mmc2_iodelay_hs200_conf { pinctrl-pin-array = < - 0x190 A_DELAY_PS(384) G_DELAY_PS(0) /* CFG_GPMC_A19_OEN */ - 0x194 A_DELAY_PS(0) G_DELAY_PS(174) /* CFG_GPMC_A19_OUT */ - 0x1a8 A_DELAY_PS(410) G_DELAY_PS(0) /* CFG_GPMC_A20_OEN */ - 0x1ac A_DELAY_PS(85) G_DELAY_PS(0) /* CFG_GPMC_A20_OUT */ - 0x1b4 A_DELAY_PS(468) G_DELAY_PS(0) /* CFG_GPMC_A21_OEN */ - 0x1b8 A_DELAY_PS(139) G_DELAY_PS(0) /* CFG_GPMC_A21_OUT */ - 0x1c0 A_DELAY_PS(676) G_DELAY_PS(0) /* CFG_GPMC_A22_OEN */ - 0x1c4 A_DELAY_PS(69) G_DELAY_PS(0) /* CFG_GPMC_A22_OUT */ - 0x1d0 A_DELAY_PS(1062) G_DELAY_PS(154) /* CFG_GPMC_A23_OUT */ - 0x1d8 A_DELAY_PS(640) G_DELAY_PS(0) /* CFG_GPMC_A24_OEN */ - 0x1dc A_DELAY_PS(0) G_DELAY_PS(0) /* CFG_GPMC_A24_OUT */ - 0x1e4 A_DELAY_PS(356) G_DELAY_PS(0) /* CFG_GPMC_A25_OEN */ - 0x1e8 A_DELAY_PS(0) G_DELAY_PS(0) /* CFG_GPMC_A25_OUT */ - 0x1f0 A_DELAY_PS(579) G_DELAY_PS(0) /* CFG_GPMC_A26_OEN */ - 0x1f4 A_DELAY_PS(0) G_DELAY_PS(0) /* CFG_GPMC_A26_OUT */ - 0x1fc A_DELAY_PS(435) G_DELAY_PS(0) /* CFG_GPMC_A27_OEN */ - 0x200 A_DELAY_PS(36) G_DELAY_PS(0) /* CFG_GPMC_A27_OUT */ - 0x364 A_DELAY_PS(759) G_DELAY_PS(0) /* CFG_GPMC_CS1_OEN */ - 0x368 A_DELAY_PS(72) G_DELAY_PS(0) /* CFG_GPMC_CS1_OUT */ + 0x190 A_DELAY_PS(384) G_DELAY_PS(0) /* CFG_GPMC_A19_OEN */ + 0x194 A_DELAY_PS(350) G_DELAY_PS(174) /* CFG_GPMC_A19_OUT */ + 0x1a8 A_DELAY_PS(410) G_DELAY_PS(0) /* CFG_GPMC_A20_OEN */ + 0x1ac A_DELAY_PS(335) G_DELAY_PS(0) /* CFG_GPMC_A20_OUT */ + 0x1b4 A_DELAY_PS(468) G_DELAY_PS(0) /* CFG_GPMC_A21_OEN */ + 0x1b8 A_DELAY_PS(339) G_DELAY_PS(0) /* CFG_GPMC_A21_OUT */ + 0x1c0 A_DELAY_PS(676) G_DELAY_PS(0) /* CFG_GPMC_A22_OEN */ + 0x1c4 A_DELAY_PS(219) G_DELAY_PS(0) /* CFG_GPMC_A22_OUT */ + 0x1d0 A_DELAY_PS(1062) G_DELAY_PS(154) /* CFG_GPMC_A23_OUT */ + 0x1d8 A_DELAY_PS(640) G_DELAY_PS(0) /* CFG_GPMC_A24_OEN */ + 0x1dc A_DELAY_PS(150) G_DELAY_PS(0) /* CFG_GPMC_A24_OUT */ + 0x1e4 A_DELAY_PS(356) G_DELAY_PS(0) /* CFG_GPMC_A25_OEN */ + 0x1e8 A_DELAY_PS(150) G_DELAY_PS(0) /* CFG_GPMC_A25_OUT */ + 0x1f0 A_DELAY_PS(579) G_DELAY_PS(0) /* CFG_GPMC_A26_OEN */ + 0x1f4 A_DELAY_PS(200) G_DELAY_PS(0) /* CFG_GPMC_A26_OUT */ + 0x1fc A_DELAY_PS(435) G_DELAY_PS(0) /* CFG_GPMC_A27_OEN */ + 0x200 A_DELAY_PS(236) G_DELAY_PS(0) /* CFG_GPMC_A27_OUT */ + 0x364 A_DELAY_PS(759) G_DELAY_PS(0) /* CFG_GPMC_CS1_OEN */ + 0x368 A_DELAY_PS(372) G_DELAY_PS(0) /* CFG_GPMC_CS1_OUT */ >; }; diff --git a/dts/src/arm/dra76x.dtsi b/dts/src/arm/dra76x.dtsi index 9ee45aa365..cdcba3f561 100644 --- a/dts/src/arm/dra76x.dtsi +++ b/dts/src/arm/dra76x.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2017 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "dra74x.dtsi" @@ -81,3 +78,11 @@ reg = <0x3fc>; }; }; + +&rtctarget { + status = "disabled"; +}; + +&usb4_tm { + status = "disabled"; +}; diff --git a/dts/src/arm/dra7xx-clocks.dtsi b/dts/src/arm/dra7xx-clocks.dtsi index bb52c6f0e9..93e1eb83be 100644 --- a/dts/src/arm/dra7xx-clocks.dtsi +++ b/dts/src/arm/dra7xx-clocks.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for DRA7xx clock data * * Copyright (C) 2013 Texas Instruments, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &cm_core_aon_clocks { atl_clkin0_ck: atl_clkin0_ck { diff --git a/dts/src/arm/hi3620-hi4511.dts b/dts/src/arm/hi3620-hi4511.dts index a579fbf13b..8c703c3f2f 100644 --- a/dts/src/arm/hi3620-hi4511.dts +++ b/dts/src/arm/hi3620-hi4511.dts @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012-2013 Linaro Ltd. * Author: Haojian Zhuang <haojian.zhuang@linaro.org> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/hi3620.dtsi b/dts/src/arm/hi3620.dtsi index 541d700945..9c207a690d 100644 --- a/dts/src/arm/hi3620.dtsi +++ b/dts/src/arm/hi3620.dtsi @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Hisilicon Ltd. Hi3620 SoC * @@ -5,10 +6,6 @@ * Copyright (C) 2012-2013 Linaro Ltd. * * Author: Haojian Zhuang <haojian.zhuang@linaro.org> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. */ #include <dt-bindings/clock/hi3620-clock.h> diff --git a/dts/src/arm/hip01-ca9x2.dts b/dts/src/arm/hip01-ca9x2.dts index eca5e42770..f05e74eacf 100644 --- a/dts/src/arm/hip01-ca9x2.dts +++ b/dts/src/arm/hip01-ca9x2.dts @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Hisilicon Ltd. HiP01 SoC * @@ -5,10 +6,6 @@ * Copyright (C) 2014 Huawei Ltd. * * Author: Wang Long <long.wanglong@huawei.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/hip01.dtsi b/dts/src/arm/hip01.dtsi index f7cf4f53e7..975d398284 100644 --- a/dts/src/arm/hip01.dtsi +++ b/dts/src/arm/hip01.dtsi @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Hisilicon Ltd. HiP01 SoC * @@ -5,10 +6,6 @@ * Copyright (c) 2014 Huawei Ltd. * * Author: Wang Long <long.wanglong@huawei.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ / { diff --git a/dts/src/arm/hip04-d01.dts b/dts/src/arm/hip04-d01.dts index ca48641d0f..9019e0d2ef 100644 --- a/dts/src/arm/hip04-d01.dts +++ b/dts/src/arm/hip04-d01.dts @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013-2014 Linaro Ltd. * Author: Haojian Zhuang <haojian.zhuang@linaro.org> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/hip04.dtsi b/dts/src/arm/hip04.dtsi index 0f917b272f..bf0cb55809 100644 --- a/dts/src/arm/hip04.dtsi +++ b/dts/src/arm/hip04.dtsi @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Hisilicon Ltd. HiP04 SoC * @@ -5,10 +6,6 @@ * Copyright (C) 2013-2014 Linaro Ltd. * * Author: Haojian Zhuang <haojian.zhuang@linaro.org> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ / { diff --git a/dts/src/arm/hisi-x5hd2-dkb.dts b/dts/src/arm/hisi-x5hd2-dkb.dts index d13af8437d..d55e9cd3b1 100644 --- a/dts/src/arm/hisi-x5hd2-dkb.dts +++ b/dts/src/arm/hisi-x5hd2-dkb.dts @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2013-2014 Linaro Ltd. * Copyright (c) 2013-2014 Hisilicon Limited. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/hisi-x5hd2.dtsi b/dts/src/arm/hisi-x5hd2.dtsi index 50d3f8426d..696e6982a6 100644 --- a/dts/src/arm/hisi-x5hd2.dtsi +++ b/dts/src/arm/hisi-x5hd2.dtsi @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2013-2014 Linaro Ltd. * Copyright (c) 2013-2014 Hisilicon Limited. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. */ #include <dt-bindings/clock/hix5hd2-clock.h> diff --git a/dts/src/arm/imx25-pinfunc.h b/dts/src/arm/imx25-pinfunc.h index a4807062a9..f4516ccf2c 100644 --- a/dts/src/arm/imx25-pinfunc.h +++ b/dts/src/arm/imx25-pinfunc.h @@ -1,12 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2013 Eukréa Electromatique <denis@eukrea.com> * Based on imx35-pinfunc.h in the same directory Which is: * Copyright 2013 Freescale Semiconductor, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DTS_IMX25_PINFUNC_H diff --git a/dts/src/arm/imx35-pinfunc.h b/dts/src/arm/imx35-pinfunc.h index 4911f2c405..9d6cc9564b 100644 --- a/dts/src/arm/imx35-pinfunc.h +++ b/dts/src/arm/imx35-pinfunc.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2013 Freescale Semiconductor, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DTS_IMX35_PINFUNC_H diff --git a/dts/src/arm/imx50-pinfunc.h b/dts/src/arm/imx50-pinfunc.h index 4386334736..5e6b302475 100644 --- a/dts/src/arm/imx50-pinfunc.h +++ b/dts/src/arm/imx50-pinfunc.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2013 Greg Ungerer <gerg@uclinux.org> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DTS_IMX50_PINFUNC_H diff --git a/dts/src/arm/imx51-pinfunc.h b/dts/src/arm/imx51-pinfunc.h index 82eae3c8a3..910e0ec50e 100644 --- a/dts/src/arm/imx51-pinfunc.h +++ b/dts/src/arm/imx51-pinfunc.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2013 Freescale Semiconductor, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DTS_IMX51_PINFUNC_H diff --git a/dts/src/arm/imx53-pinfunc.h b/dts/src/arm/imx53-pinfunc.h index 59f9c29e3f..67bd06610f 100644 --- a/dts/src/arm/imx53-pinfunc.h +++ b/dts/src/arm/imx53-pinfunc.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2013 Freescale Semiconductor, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DTS_IMX53_PINFUNC_H diff --git a/dts/src/arm/imx6dl-aristainetos_4.dts b/dts/src/arm/imx6dl-aristainetos_4.dts index b87a85cd44..37f80ab8cc 100644 --- a/dts/src/arm/imx6dl-aristainetos_4.dts +++ b/dts/src/arm/imx6dl-aristainetos_4.dts @@ -1,12 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * support fot the imx6 based aristainetos board * * Copyright (C) 2014 Heiko Schocher <hs@denx.de> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ /dts-v1/; #include "imx6dl.dtsi" diff --git a/dts/src/arm/imx6dl-aristainetos_7.dts b/dts/src/arm/imx6dl-aristainetos_7.dts index e71ad9062f..8d8c8c27e4 100644 --- a/dts/src/arm/imx6dl-aristainetos_7.dts +++ b/dts/src/arm/imx6dl-aristainetos_7.dts @@ -1,12 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * support fot the imx6 based aristainetos board * * Copyright (C) 2014 Heiko Schocher <hs@denx.de> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ /dts-v1/; #include "imx6dl.dtsi" diff --git a/dts/src/arm/imx6dl-pinfunc.h b/dts/src/arm/imx6dl-pinfunc.h index 37e430a261..9d88d09f9b 100644 --- a/dts/src/arm/imx6dl-pinfunc.h +++ b/dts/src/arm/imx6dl-pinfunc.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2013 Freescale Semiconductor, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DTS_IMX6DL_PINFUNC_H diff --git a/dts/src/arm/imx6dl-rex-basic.dts b/dts/src/arm/imx6dl-rex-basic.dts index 853e58defa..0f1616bfa9 100644 --- a/dts/src/arm/imx6dl-rex-basic.dts +++ b/dts/src/arm/imx6dl-rex-basic.dts @@ -1,12 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright 2014 FEDEVEL, Inc. * * Author: Robert Nelson <robertcnelson@gmail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ /dts-v1/; #include "imx6dl.dtsi" diff --git a/dts/src/arm/imx6dl-riotboard.dts b/dts/src/arm/imx6dl-riotboard.dts index d9de49efa8..829654e183 100644 --- a/dts/src/arm/imx6dl-riotboard.dts +++ b/dts/src/arm/imx6dl-riotboard.dts @@ -1,10 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright 2014 Iain Paton <ipaton0@gmail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ /dts-v1/; diff --git a/dts/src/arm/imx6q-mccmon6.dts b/dts/src/arm/imx6q-mccmon6.dts index 74d9824e92..a4d295455e 100644 --- a/dts/src/arm/imx6q-mccmon6.dts +++ b/dts/src/arm/imx6q-mccmon6.dts @@ -1,11 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright 2016-2017 * Lukasz Majewski, DENX Software Engineering, lukma@denx.de - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ /dts-v1/; diff --git a/dts/src/arm/imx6q-pinfunc.h b/dts/src/arm/imx6q-pinfunc.h index cfb11d3e73..e40409d04b 100644 --- a/dts/src/arm/imx6q-pinfunc.h +++ b/dts/src/arm/imx6q-pinfunc.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2013 Freescale Semiconductor, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DTS_IMX6Q_PINFUNC_H diff --git a/dts/src/arm/imx6q-rex-pro.dts b/dts/src/arm/imx6q-rex-pro.dts index aa3004eab0..1767e1a3cd 100644 --- a/dts/src/arm/imx6q-rex-pro.dts +++ b/dts/src/arm/imx6q-rex-pro.dts @@ -1,12 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright 2014 FEDEVEL, Inc. * * Author: Robert Nelson <robertcnelson@gmail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ /dts-v1/; #include "imx6q.dtsi" diff --git a/dts/src/arm/imx6qdl-aristainetos.dtsi b/dts/src/arm/imx6qdl-aristainetos.dtsi index ee4d0f84ee..d954661fa0 100644 --- a/dts/src/arm/imx6qdl-aristainetos.dtsi +++ b/dts/src/arm/imx6qdl-aristainetos.dtsi @@ -1,12 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * support fot the imx6 based aristainetos board * * Copyright (C) 2014 Heiko Schocher <hs@denx.de> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #include <dt-bindings/gpio/gpio.h> diff --git a/dts/src/arm/imx6qdl-rex.dtsi b/dts/src/arm/imx6qdl-rex.dtsi index 039e3b8306..97f1659144 100644 --- a/dts/src/arm/imx6qdl-rex.dtsi +++ b/dts/src/arm/imx6qdl-rex.dtsi @@ -1,12 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright 2014 FEDEVEL, Inc. * * Author: Robert Nelson <robertcnelson@gmail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #include <dt-bindings/gpio/gpio.h> diff --git a/dts/src/arm/imx6sl-pinfunc.h b/dts/src/arm/imx6sl-pinfunc.h index 77b17bcc7b..bcf16060ec 100644 --- a/dts/src/arm/imx6sl-pinfunc.h +++ b/dts/src/arm/imx6sl-pinfunc.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2013 Freescale Semiconductor, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DTS_IMX6SL_PINFUNC_H diff --git a/dts/src/arm/imx6sx-pinfunc.h b/dts/src/arm/imx6sx-pinfunc.h index 42c4c800fe..aa194a2fdd 100644 --- a/dts/src/arm/imx6sx-pinfunc.h +++ b/dts/src/arm/imx6sx-pinfunc.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2014 Freescale Semiconductor, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DTS_IMX6SX_PINFUNC_H diff --git a/dts/src/arm/imx6sx-softing-vining-2000.dts b/dts/src/arm/imx6sx-softing-vining-2000.dts index 2bc51623a8..28563f2102 100644 --- a/dts/src/arm/imx6sx-softing-vining-2000.dts +++ b/dts/src/arm/imx6sx-softing-vining-2000.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2016 Christoph Fritz <chf.fritz@googlemail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/imx6ul-pinfunc.h b/dts/src/arm/imx6ul-pinfunc.h index 7b9a4dc384..380d2db13a 100644 --- a/dts/src/arm/imx6ul-pinfunc.h +++ b/dts/src/arm/imx6ul-pinfunc.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2014 - 2015 Freescale Semiconductor, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DTS_IMX6UL_PINFUNC_H diff --git a/dts/src/arm/imx6ull-pinfunc.h b/dts/src/arm/imx6ull-pinfunc.h index a282a31a4b..eb025a9d47 100644 --- a/dts/src/arm/imx6ull-pinfunc.h +++ b/dts/src/arm/imx6ull-pinfunc.h @@ -1,9 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2016 Freescale Semiconductor, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #ifndef __DTS_IMX6ULL_PINFUNC_H diff --git a/dts/src/arm/imx7d-pinfunc.h b/dts/src/arm/imx7d-pinfunc.h index aa9dbead4b..08ca1608fd 100644 --- a/dts/src/arm/imx7d-pinfunc.h +++ b/dts/src/arm/imx7d-pinfunc.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) 2014-2015 Freescale Semiconductor, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DTS_IMX7D_PINFUNC_H diff --git a/dts/src/arm/imx7ulp-pinfunc.h b/dts/src/arm/imx7ulp-pinfunc.h index 85f6b01780..c0148d79b6 100644 --- a/dts/src/arm/imx7ulp-pinfunc.h +++ b/dts/src/arm/imx7ulp-pinfunc.h @@ -1,11 +1,7 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2016 Freescale Semiconductor, Inc. * Copyright 2017 NXP - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DTS_IMX7ULP_PINFUNC_H diff --git a/dts/src/arm/logicpd-som-lv-35xx-devkit.dts b/dts/src/arm/logicpd-som-lv-35xx-devkit.dts index 32d0dc371f..f7a841a288 100644 --- a/dts/src/arm/logicpd-som-lv-35xx-devkit.dts +++ b/dts/src/arm/logicpd-som-lv-35xx-devkit.dts @@ -1,8 +1,4 @@ -/* - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - */ +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; diff --git a/dts/src/arm/logicpd-som-lv-37xx-devkit.dts b/dts/src/arm/logicpd-som-lv-37xx-devkit.dts index 2428373952..a604d92221 100644 --- a/dts/src/arm/logicpd-som-lv-37xx-devkit.dts +++ b/dts/src/arm/logicpd-som-lv-37xx-devkit.dts @@ -1,8 +1,4 @@ -/* - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - */ +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; diff --git a/dts/src/arm/logicpd-som-lv-baseboard.dtsi b/dts/src/arm/logicpd-som-lv-baseboard.dtsi index 3e39b9a1f3..100396f6c2 100644 --- a/dts/src/arm/logicpd-som-lv-baseboard.dtsi +++ b/dts/src/arm/logicpd-som-lv-baseboard.dtsi @@ -1,8 +1,4 @@ -/* - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - */ +// SPDX-License-Identifier: GPL-2.0-only / { gpio_keys { diff --git a/dts/src/arm/logicpd-som-lv.dtsi b/dts/src/arm/logicpd-som-lv.dtsi index 98b682a808..5563ee54c9 100644 --- a/dts/src/arm/logicpd-som-lv.dtsi +++ b/dts/src/arm/logicpd-som-lv.dtsi @@ -1,8 +1,4 @@ -/* - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - */ +// SPDX-License-Identifier: GPL-2.0-only #include <dt-bindings/input/input.h> diff --git a/dts/src/arm/logicpd-torpedo-35xx-devkit.dts b/dts/src/arm/logicpd-torpedo-35xx-devkit.dts index d7cb659656..7675bc3fa8 100644 --- a/dts/src/arm/logicpd-torpedo-35xx-devkit.dts +++ b/dts/src/arm/logicpd-torpedo-35xx-devkit.dts @@ -1,8 +1,4 @@ -/* - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - */ +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; diff --git a/dts/src/arm/logicpd-torpedo-37xx-devkit.dts b/dts/src/arm/logicpd-torpedo-37xx-devkit.dts index c39cf2ca54..18c27e8505 100644 --- a/dts/src/arm/logicpd-torpedo-37xx-devkit.dts +++ b/dts/src/arm/logicpd-torpedo-37xx-devkit.dts @@ -1,8 +1,4 @@ -/* - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - */ +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; diff --git a/dts/src/arm/logicpd-torpedo-baseboard.dtsi b/dts/src/arm/logicpd-torpedo-baseboard.dtsi index 86c5644f55..642e809e75 100644 --- a/dts/src/arm/logicpd-torpedo-baseboard.dtsi +++ b/dts/src/arm/logicpd-torpedo-baseboard.dtsi @@ -1,8 +1,4 @@ -/* - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - */ +// SPDX-License-Identifier: GPL-2.0-only / { gpio_keys { diff --git a/dts/src/arm/logicpd-torpedo-som.dtsi b/dts/src/arm/logicpd-torpedo-som.dtsi index 7d2302e870..3fdd0a72f8 100644 --- a/dts/src/arm/logicpd-torpedo-som.dtsi +++ b/dts/src/arm/logicpd-torpedo-som.dtsi @@ -1,8 +1,4 @@ -/* - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - */ +// SPDX-License-Identifier: GPL-2.0-only #include <dt-bindings/input/input.h> diff --git a/dts/src/arm/ls1021a-moxa-uc-8410a.dts b/dts/src/arm/ls1021a-moxa-uc-8410a.dts index dcb1d9bd09..f3ddea934f 100644 --- a/dts/src/arm/ls1021a-moxa-uc-8410a.dts +++ b/dts/src/arm/ls1021a-moxa-uc-8410a.dts @@ -1,13 +1,10 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2017 Moxa Inc. - https://www.moxa.com/ * * Author: Harry YJ Jhou (周亞諄) <harryyj.jhou@moxa.com> * Jimmy Chen (陳永達) <jimmy.chen@moxa.com> * SZ Lin (林上智) <sz.lin@moxa.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/mmp2-brownstone.dts b/dts/src/arm/mmp2-brownstone.dts index 3da038ba57..aaedc4c742 100644 --- a/dts/src/arm/mmp2-brownstone.dts +++ b/dts/src/arm/mmp2-brownstone.dts @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Marvell Technology Group Ltd. * Author: Haojian Zhuang <haojian.zhuang@marvell.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/mmp2.dtsi b/dts/src/arm/mmp2.dtsi index f02fb97f51..b6f40743e0 100644 --- a/dts/src/arm/mmp2.dtsi +++ b/dts/src/arm/mmp2.dtsi @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Marvell Technology Group Ltd. * Author: Haojian Zhuang <haojian.zhuang@marvell.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. */ #include <dt-bindings/clock/marvell,mmp2.h> diff --git a/dts/src/arm/motorola-cpcap-mapphone.dtsi b/dts/src/arm/motorola-cpcap-mapphone.dtsi index f57acf8f66..d1eae47b83 100644 --- a/dts/src/arm/motorola-cpcap-mapphone.dtsi +++ b/dts/src/arm/motorola-cpcap-mapphone.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Common CPCAP configuration used on Motorola phones - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &mcspi1 { diff --git a/dts/src/arm/nspire-classic.dtsi b/dts/src/arm/nspire-classic.dtsi index 4907c5085d..c53f427778 100644 --- a/dts/src/arm/nspire-classic.dtsi +++ b/dts/src/arm/nspire-classic.dtsi @@ -1,12 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * linux/arch/arm/boot/nspire-classic.dts * * Copyright (C) 2013 Daniel Tang <tangrs@tangrs.id.au> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2, as - * published by the Free Software Foundation. - * */ /include/ "nspire.dtsi" diff --git a/dts/src/arm/nspire-clp.dts b/dts/src/arm/nspire-clp.dts index fa5a044656..f52f38c615 100644 --- a/dts/src/arm/nspire-clp.dts +++ b/dts/src/arm/nspire-clp.dts @@ -1,12 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * linux/arch/arm/boot/nspire-clp.dts * * Copyright (C) 2013 Daniel Tang <tangrs@tangrs.id.au> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2, as - * published by the Free Software Foundation. - * */ /dts-v1/; diff --git a/dts/src/arm/nspire-cx.dts b/dts/src/arm/nspire-cx.dts index 08e0b81b33..da95c37366 100644 --- a/dts/src/arm/nspire-cx.dts +++ b/dts/src/arm/nspire-cx.dts @@ -1,12 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * linux/arch/arm/boot/nspire-cx.dts * * Copyright (C) 2013 Daniel Tang <tangrs@tangrs.id.au> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2, as - * published by the Free Software Foundation. - * */ /dts-v1/; diff --git a/dts/src/arm/nspire-tp.dts b/dts/src/arm/nspire-tp.dts index 621391ce6e..f7d0faacd4 100644 --- a/dts/src/arm/nspire-tp.dts +++ b/dts/src/arm/nspire-tp.dts @@ -1,12 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * linux/arch/arm/boot/nspire-tp.dts * * Copyright (C) 2013 Daniel Tang <tangrs@tangrs.id.au> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2, as - * published by the Free Software Foundation. - * */ /dts-v1/; diff --git a/dts/src/arm/nspire.dtsi b/dts/src/arm/nspire.dtsi index 5a3c1f9d18..c35fd66677 100644 --- a/dts/src/arm/nspire.dtsi +++ b/dts/src/arm/nspire.dtsi @@ -1,12 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * linux/arch/arm/boot/nspire.dtsi * * Copyright (C) 2013 Daniel Tang <tangrs@tangrs.id.au> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2, as - * published by the Free Software Foundation. - * */ / { diff --git a/dts/src/arm/omap2420-clocks.dtsi b/dts/src/arm/omap2420-clocks.dtsi index f8e5bd3cc6..00a7a199a9 100644 --- a/dts/src/arm/omap2420-clocks.dtsi +++ b/dts/src/arm/omap2420-clocks.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for OMAP2420 clock data * * Copyright (C) 2014 Texas Instruments, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &prcm_clocks { diff --git a/dts/src/arm/omap2420-h4.dts b/dts/src/arm/omap2420-h4.dts index 9265c0b9c3..7d66027140 100644 --- a/dts/src/arm/omap2420-h4.dts +++ b/dts/src/arm/omap2420-h4.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap2430-clocks.dtsi b/dts/src/arm/omap2430-clocks.dtsi index a5aa7d6198..4e5ab51894 100644 --- a/dts/src/arm/omap2430-clocks.dtsi +++ b/dts/src/arm/omap2430-clocks.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for OMAP2430 clock data * * Copyright (C) 2014 Texas Instruments, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &scm_clocks { diff --git a/dts/src/arm/omap2430-sdp.dts b/dts/src/arm/omap2430-sdp.dts index 4f7d9d7c00..f7e3248866 100644 --- a/dts/src/arm/omap2430-sdp.dts +++ b/dts/src/arm/omap2430-sdp.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap24xx-clocks.dtsi b/dts/src/arm/omap24xx-clocks.dtsi index 769a346de6..07af87edf0 100644 --- a/dts/src/arm/omap24xx-clocks.dtsi +++ b/dts/src/arm/omap24xx-clocks.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for OMAP24xx clock data * * Copyright (C) 2014 Texas Instruments, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &scm_clocks { mcbsp1_mux_fck: mcbsp1_mux_fck@4 { diff --git a/dts/src/arm/omap3-beagle-xm-ab.dts b/dts/src/arm/omap3-beagle-xm-ab.dts index 7ac3bcf59d..e498495b84 100644 --- a/dts/src/arm/omap3-beagle-xm-ab.dts +++ b/dts/src/arm/omap3-beagle-xm-ab.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap3-beagle-xm.dts" diff --git a/dts/src/arm/omap3-beagle-xm.dts b/dts/src/arm/omap3-beagle-xm.dts index 9985ee2aae..1aa99fc148 100644 --- a/dts/src/arm/omap3-beagle-xm.dts +++ b/dts/src/arm/omap3-beagle-xm.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap3-beagle.dts b/dts/src/arm/omap3-beagle.dts index 91bb50ad9a..e3df3c1669 100644 --- a/dts/src/arm/omap3-beagle.dts +++ b/dts/src/arm/omap3-beagle.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap3-devkit8000-common.dtsi b/dts/src/arm/omap3-devkit8000-common.dtsi index 746a658e84..ac3d996cec 100644 --- a/dts/src/arm/omap3-devkit8000-common.dtsi +++ b/dts/src/arm/omap3-devkit8000-common.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Author: Anil Kumar <anilk4.v@gmail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include <dt-bindings/input/input.h> diff --git a/dts/src/arm/omap3-devkit8000-lcd-common.dtsi b/dts/src/arm/omap3-devkit8000-lcd-common.dtsi index 1093387259..3decc2d78a 100644 --- a/dts/src/arm/omap3-devkit8000-lcd-common.dtsi +++ b/dts/src/arm/omap3-devkit8000-lcd-common.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Author: Anthoine Bourgeois <anthoine.bourgois@gmail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap3-devkit8000-common.dtsi" diff --git a/dts/src/arm/omap3-devkit8000-lcd43.dts b/dts/src/arm/omap3-devkit8000-lcd43.dts index d8b16398bf..a80fc60bc7 100644 --- a/dts/src/arm/omap3-devkit8000-lcd43.dts +++ b/dts/src/arm/omap3-devkit8000-lcd43.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Author: Anthoine Bourgeois <anthoine.bourgois@gmail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap3-devkit8000-lcd70.dts b/dts/src/arm/omap3-devkit8000-lcd70.dts index edb37ba804..0753776071 100644 --- a/dts/src/arm/omap3-devkit8000-lcd70.dts +++ b/dts/src/arm/omap3-devkit8000-lcd70.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Author: Anthoine Bourgeois <anthoine.bourgois@gmail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap3-devkit8000.dts b/dts/src/arm/omap3-devkit8000.dts index 40ac89482f..faafc48d8f 100644 --- a/dts/src/arm/omap3-devkit8000.dts +++ b/dts/src/arm/omap3-devkit8000.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Author: Anthoine Bourgeois <anthoine.bourgeois@gmail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap3-evm-37xx.dts b/dts/src/arm/omap3-evm-37xx.dts index a14303b09a..e0c0382388 100644 --- a/dts/src/arm/omap3-evm-37xx.dts +++ b/dts/src/arm/omap3-evm-37xx.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap3-evm.dts b/dts/src/arm/omap3-evm.dts index 21a3b88aef..6a94815feb 100644 --- a/dts/src/arm/omap3-evm.dts +++ b/dts/src/arm/omap3-evm.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap3-gta04.dtsi b/dts/src/arm/omap3-gta04.dtsi index 04f2b53d4d..b295f6fad2 100644 --- a/dts/src/arm/omap3-gta04.dtsi +++ b/dts/src/arm/omap3-gta04.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013 Marek Belisko <marek@goldelico.com> * * Based on omap3-beagle-xm.dts - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap3-gta04a3.dts b/dts/src/arm/omap3-gta04a3.dts index cc92449566..bfae1a9cee 100644 --- a/dts/src/arm/omap3-gta04a3.dts +++ b/dts/src/arm/omap3-gta04a3.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 H. Nikolaus Schaller <hns@goldelico.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap3-gta04.dtsi" diff --git a/dts/src/arm/omap3-gta04a4.dts b/dts/src/arm/omap3-gta04a4.dts index 77afc711fe..f1cf24d55e 100644 --- a/dts/src/arm/omap3-gta04a4.dts +++ b/dts/src/arm/omap3-gta04a4.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Marek Belisko <marek@goldelico.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap3-gta04.dtsi" diff --git a/dts/src/arm/omap3-gta04a5.dts b/dts/src/arm/omap3-gta04a5.dts index 223b47ac59..fd84bbf3b9 100644 --- a/dts/src/arm/omap3-gta04a5.dts +++ b/dts/src/arm/omap3-gta04a5.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014-18 H. Nikolaus Schaller <hns@goldelico.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap3-gta04.dtsi" diff --git a/dts/src/arm/omap3-gta04a5one.dts b/dts/src/arm/omap3-gta04a5one.dts index 9b7bbdc344..9db9fe67cd 100644 --- a/dts/src/arm/omap3-gta04a5one.dts +++ b/dts/src/arm/omap3-gta04a5one.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014-18 H. Nikolaus Schaller <hns@goldelico.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap3-gta04a5.dts" diff --git a/dts/src/arm/omap3-ha-common.dtsi b/dts/src/arm/omap3-ha-common.dtsi index bd66545ef9..33132855d5 100644 --- a/dts/src/arm/omap3-ha-common.dtsi +++ b/dts/src/arm/omap3-ha-common.dtsi @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ * Copyright (C) 2014 Stefan Roese <sr@denx.de> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap3-tao3530.dtsi" diff --git a/dts/src/arm/omap3-ha-lcd.dts b/dts/src/arm/omap3-ha-lcd.dts index 60af7c2358..badb9b3c88 100644 --- a/dts/src/arm/omap3-ha-lcd.dts +++ b/dts/src/arm/omap3-ha-lcd.dts @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ * Copyright (C) 2014 Stefan Roese <sr@denx.de> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap3-ha-common.dtsi" diff --git a/dts/src/arm/omap3-ha.dts b/dts/src/arm/omap3-ha.dts index fde325688f..a5365252bf 100644 --- a/dts/src/arm/omap3-ha.dts +++ b/dts/src/arm/omap3-ha.dts @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ * Copyright (C) 2014 Stefan Roese <sr@denx.de> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap3-ha-common.dtsi" diff --git a/dts/src/arm/omap3-igep.dtsi b/dts/src/arm/omap3-igep.dtsi index f33cc80c9d..5de2be9bbe 100644 --- a/dts/src/arm/omap3-igep.dtsi +++ b/dts/src/arm/omap3-igep.dtsi @@ -1,12 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Common device tree for IGEP boards based on AM/DM37x * * Copyright (C) 2012 Javier Martinez Canillas <javier@osg.samsung.com> * Copyright (C) 2012 Enric Balletbo i Serra <eballetbo@gmail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap3-igep0020-common.dtsi b/dts/src/arm/omap3-igep0020-common.dtsi index ecbec23af4..91caa50b74 100644 --- a/dts/src/arm/omap3-igep0020-common.dtsi +++ b/dts/src/arm/omap3-igep0020-common.dtsi @@ -1,12 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Common Device Tree Source for IGEPv2 * * Copyright (C) 2014 Javier Martinez Canillas <javier@osg.samsung.com> * Copyright (C) 2014 Enric Balletbo i Serra <eballetbo@gmail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap3-igep.dtsi" diff --git a/dts/src/arm/omap3-igep0020-rev-f.dts b/dts/src/arm/omap3-igep0020-rev-f.dts index 285681d7af..03dcd05fb8 100644 --- a/dts/src/arm/omap3-igep0020-rev-f.dts +++ b/dts/src/arm/omap3-igep0020-rev-f.dts @@ -1,12 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for IGEPv2 Rev. F (TI OMAP AM/DM37x) * * Copyright (C) 2012 Javier Martinez Canillas <javier@osg.samsung.com> * Copyright (C) 2012 Enric Balletbo i Serra <eballetbo@gmail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap3-igep0020-common.dtsi" diff --git a/dts/src/arm/omap3-igep0020.dts b/dts/src/arm/omap3-igep0020.dts index 33d6b4ead0..6d0519e3df 100644 --- a/dts/src/arm/omap3-igep0020.dts +++ b/dts/src/arm/omap3-igep0020.dts @@ -1,12 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for IGEPv2 Rev. C (TI OMAP AM/DM37x) * * Copyright (C) 2012 Javier Martinez Canillas <javier@osg.samsung.com> * Copyright (C) 2012 Enric Balletbo i Serra <eballetbo@gmail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap3-igep0020-common.dtsi" diff --git a/dts/src/arm/omap3-igep0030-common.dtsi b/dts/src/arm/omap3-igep0030-common.dtsi index 443f717074..71b0ae807e 100644 --- a/dts/src/arm/omap3-igep0030-common.dtsi +++ b/dts/src/arm/omap3-igep0030-common.dtsi @@ -1,12 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Common Device Tree Source for IGEP COM MODULE * * Copyright (C) 2014 Javier Martinez Canillas <javier@osg.samsung.com> * Copyright (C) 2014 Enric Balletbo i Serra <eballetbo@gmail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap3-igep.dtsi" diff --git a/dts/src/arm/omap3-igep0030-rev-g.dts b/dts/src/arm/omap3-igep0030-rev-g.dts index 1adc73bd2c..060acd1e80 100644 --- a/dts/src/arm/omap3-igep0030-rev-g.dts +++ b/dts/src/arm/omap3-igep0030-rev-g.dts @@ -1,12 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for IGEP COM MODULE Rev. G (TI OMAP AM/DM37x) * * Copyright (C) 2014 Javier Martinez Canillas <javier@osg.samsung.com> * Copyright (C) 2014 Enric Balletbo i Serra <eballetbo@gmail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap3-igep0030-common.dtsi" diff --git a/dts/src/arm/omap3-igep0030.dts b/dts/src/arm/omap3-igep0030.dts index 55b0cc4f5e..25170bd3c5 100644 --- a/dts/src/arm/omap3-igep0030.dts +++ b/dts/src/arm/omap3-igep0030.dts @@ -1,12 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for IGEP COM MODULE Rev. E (TI OMAP AM/DM37x) * * Copyright (C) 2012 Javier Martinez Canillas <javier@osg.samsung.com> * Copyright (C) 2012 Enric Balletbo i Serra <eballetbo@gmail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap3-igep0030-common.dtsi" diff --git a/dts/src/arm/omap3-ldp.dts b/dts/src/arm/omap3-ldp.dts index e28fe13cb0..9a5fde2d9b 100644 --- a/dts/src/arm/omap3-ldp.dts +++ b/dts/src/arm/omap3-ldp.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap3-n9.dts b/dts/src/arm/omap3-n9.dts index 1f91646b89..74c0ff2350 100644 --- a/dts/src/arm/omap3-n9.dts +++ b/dts/src/arm/omap3-n9.dts @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * omap3-n9.dts - Device Tree file for Nokia N9 * * Written by: Aaro Koskinen <aaro.koskinen@iki.fi> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap3-n950-n9.dtsi b/dts/src/arm/omap3-n950-n9.dtsi index e142e6c70a..5441e9ffdb 100644 --- a/dts/src/arm/omap3-n950-n9.dtsi +++ b/dts/src/arm/omap3-n950-n9.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * omap3-n950-n9.dtsi - Device Tree file for Nokia N950 & N9 (common stuff) * * Written by: Aaro Koskinen <aaro.koskinen@iki.fi> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap36xx.dtsi" diff --git a/dts/src/arm/omap3-n950.dts b/dts/src/arm/omap3-n950.dts index 2354e09343..9886bf8b90 100644 --- a/dts/src/arm/omap3-n950.dts +++ b/dts/src/arm/omap3-n950.dts @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * omap3-n950.dts - Device Tree file for Nokia N950 * * Written by: Aaro Koskinen <aaro.koskinen@iki.fi> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap3-overo-alto35-common.dtsi b/dts/src/arm/omap3-overo-alto35-common.dtsi index 99a7eee6e6..bb932913c9 100644 --- a/dts/src/arm/omap3-overo-alto35-common.dtsi +++ b/dts/src/arm/omap3-overo-alto35-common.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-alto35.dts b/dts/src/arm/omap3-overo-alto35.dts index a3249eb750..37c64dd5f6 100644 --- a/dts/src/arm/omap3-overo-alto35.dts +++ b/dts/src/arm/omap3-overo-alto35.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-base.dtsi b/dts/src/arm/omap3-overo-base.dtsi index ac141fcd17..971d3e2505 100644 --- a/dts/src/arm/omap3-overo-base.dtsi +++ b/dts/src/arm/omap3-overo-base.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-chestnut43-common.dtsi b/dts/src/arm/omap3-overo-chestnut43-common.dtsi index 56dbd11343..2d2c61d7aa 100644 --- a/dts/src/arm/omap3-overo-chestnut43-common.dtsi +++ b/dts/src/arm/omap3-overo-chestnut43-common.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-chestnut43.dts b/dts/src/arm/omap3-overo-chestnut43.dts index fe0824aca3..d147d704b8 100644 --- a/dts/src/arm/omap3-overo-chestnut43.dts +++ b/dts/src/arm/omap3-overo-chestnut43.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-common-dvi.dtsi b/dts/src/arm/omap3-overo-common-dvi.dtsi index ae5564abbe..c9e62e414a 100644 --- a/dts/src/arm/omap3-overo-common-dvi.dtsi +++ b/dts/src/arm/omap3-overo-common-dvi.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-common-lcd35.dtsi b/dts/src/arm/omap3-overo-common-lcd35.dtsi index 854117dc0b..185ce53de0 100644 --- a/dts/src/arm/omap3-overo-common-lcd35.dtsi +++ b/dts/src/arm/omap3-overo-common-lcd35.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-common-lcd43.dtsi b/dts/src/arm/omap3-overo-common-lcd43.dtsi index b0753ef8ab..7fe0f91482 100644 --- a/dts/src/arm/omap3-overo-common-lcd43.dtsi +++ b/dts/src/arm/omap3-overo-common-lcd43.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-common-peripherals.dtsi b/dts/src/arm/omap3-overo-common-peripherals.dtsi index 520453d957..8a4a02472c 100644 --- a/dts/src/arm/omap3-overo-common-peripherals.dtsi +++ b/dts/src/arm/omap3-overo-common-peripherals.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-gallop43-common.dtsi b/dts/src/arm/omap3-overo-gallop43-common.dtsi index 286f5baddf..155aec1214 100644 --- a/dts/src/arm/omap3-overo-gallop43-common.dtsi +++ b/dts/src/arm/omap3-overo-gallop43-common.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-gallop43.dts b/dts/src/arm/omap3-overo-gallop43.dts index 241f5c1914..24b40bdf7e 100644 --- a/dts/src/arm/omap3-overo-gallop43.dts +++ b/dts/src/arm/omap3-overo-gallop43.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-palo35-common.dtsi b/dts/src/arm/omap3-overo-palo35-common.dtsi index a8020fb424..82a0446674 100644 --- a/dts/src/arm/omap3-overo-palo35-common.dtsi +++ b/dts/src/arm/omap3-overo-palo35-common.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 Ash Charles, Gumstix Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-palo35.dts b/dts/src/arm/omap3-overo-palo35.dts index e3e2bce6ed..55e08d56b1 100644 --- a/dts/src/arm/omap3-overo-palo35.dts +++ b/dts/src/arm/omap3-overo-palo35.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 Ash Charles, Gumstix Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-palo43-common.dtsi b/dts/src/arm/omap3-overo-palo43-common.dtsi index 11965737e2..453a55324f 100644 --- a/dts/src/arm/omap3-overo-palo43-common.dtsi +++ b/dts/src/arm/omap3-overo-palo43-common.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-palo43.dts b/dts/src/arm/omap3-overo-palo43.dts index cedb103b4b..092c8325a1 100644 --- a/dts/src/arm/omap3-overo-palo43.dts +++ b/dts/src/arm/omap3-overo-palo43.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-storm-alto35.dts b/dts/src/arm/omap3-overo-storm-alto35.dts index e9cae52afc..18338576c4 100644 --- a/dts/src/arm/omap3-overo-storm-alto35.dts +++ b/dts/src/arm/omap3-overo-storm-alto35.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-storm-chestnut43.dts b/dts/src/arm/omap3-overo-storm-chestnut43.dts index 7d82fdfd99..f204c8af82 100644 --- a/dts/src/arm/omap3-overo-storm-chestnut43.dts +++ b/dts/src/arm/omap3-overo-storm-chestnut43.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-storm-gallop43.dts b/dts/src/arm/omap3-overo-storm-gallop43.dts index a1b57e0cf3..c633f7cee6 100644 --- a/dts/src/arm/omap3-overo-storm-gallop43.dts +++ b/dts/src/arm/omap3-overo-storm-gallop43.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-storm-palo35.dts b/dts/src/arm/omap3-overo-storm-palo35.dts index 4e725d2d00..fb88ebc985 100644 --- a/dts/src/arm/omap3-overo-storm-palo35.dts +++ b/dts/src/arm/omap3-overo-storm-palo35.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 Ash Charles, Gumstix, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-storm-palo43.dts b/dts/src/arm/omap3-overo-storm-palo43.dts index b585d8fbc3..76cca00d97 100644 --- a/dts/src/arm/omap3-overo-storm-palo43.dts +++ b/dts/src/arm/omap3-overo-storm-palo43.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-storm-summit.dts b/dts/src/arm/omap3-overo-storm-summit.dts index a0d7fd8369..cc081a9e4c 100644 --- a/dts/src/arm/omap3-overo-storm-summit.dts +++ b/dts/src/arm/omap3-overo-storm-summit.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-storm-tobi.dts b/dts/src/arm/omap3-overo-storm-tobi.dts index 879383acad..1de41c0826 100644 --- a/dts/src/arm/omap3-overo-storm-tobi.dts +++ b/dts/src/arm/omap3-overo-storm-tobi.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-storm-tobiduo.dts b/dts/src/arm/omap3-overo-storm-tobiduo.dts index da6afafcc6..9ed13118ed 100644 --- a/dts/src/arm/omap3-overo-storm-tobiduo.dts +++ b/dts/src/arm/omap3-overo-storm-tobiduo.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 Ash Charles, Gumstix, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-storm.dtsi b/dts/src/arm/omap3-overo-storm.dtsi index 6cb418b412..2af15d5f61 100644 --- a/dts/src/arm/omap3-overo-storm.dtsi +++ b/dts/src/arm/omap3-overo-storm.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap36xx.dtsi" diff --git a/dts/src/arm/omap3-overo-summit-common.dtsi b/dts/src/arm/omap3-overo-summit-common.dtsi index 0ac97ba985..df7450f17f 100644 --- a/dts/src/arm/omap3-overo-summit-common.dtsi +++ b/dts/src/arm/omap3-overo-summit-common.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-summit.dts b/dts/src/arm/omap3-overo-summit.dts index 6976560945..a6c9799fe4 100644 --- a/dts/src/arm/omap3-overo-summit.dts +++ b/dts/src/arm/omap3-overo-summit.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-tobi-common.dtsi b/dts/src/arm/omap3-overo-tobi-common.dtsi index 1b304e2f1b..9bf4b88a4b 100644 --- a/dts/src/arm/omap3-overo-tobi-common.dtsi +++ b/dts/src/arm/omap3-overo-tobi-common.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-tobi.dts b/dts/src/arm/omap3-overo-tobi.dts index fd6400efcd..ce3f2404f3 100644 --- a/dts/src/arm/omap3-overo-tobi.dts +++ b/dts/src/arm/omap3-overo-tobi.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-tobiduo-common.dtsi b/dts/src/arm/omap3-overo-tobiduo-common.dtsi index 82e98ee302..e5da3bc6f1 100644 --- a/dts/src/arm/omap3-overo-tobiduo-common.dtsi +++ b/dts/src/arm/omap3-overo-tobiduo-common.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 Ash Charles, Gumstix, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo-tobiduo.dts b/dts/src/arm/omap3-overo-tobiduo.dts index b9ce310f6e..fc6163eae4 100644 --- a/dts/src/arm/omap3-overo-tobiduo.dts +++ b/dts/src/arm/omap3-overo-tobiduo.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 Ash Charles, Gumstix, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-overo.dtsi b/dts/src/arm/omap3-overo.dtsi index 932a02ff55..cc9263e992 100644 --- a/dts/src/arm/omap3-overo.dtsi +++ b/dts/src/arm/omap3-overo.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap34xx.dtsi" diff --git a/dts/src/arm/omap3-pandora-1ghz.dts b/dts/src/arm/omap3-pandora-1ghz.dts index 25498f756a..81b957f33c 100644 --- a/dts/src/arm/omap3-pandora-1ghz.dts +++ b/dts/src/arm/omap3-pandora-1ghz.dts @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 * Nikolaus Schaller <hns@goldelico.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-pandora-600mhz.dts b/dts/src/arm/omap3-pandora-600mhz.dts index 8775897a4c..6bd9041942 100644 --- a/dts/src/arm/omap3-pandora-600mhz.dts +++ b/dts/src/arm/omap3-pandora-600mhz.dts @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 * Nikolaus Schaller <hns@goldelico.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/omap3-pandora-common.dtsi b/dts/src/arm/omap3-pandora-common.dtsi index 90c98f95b2..ec5891718a 100644 --- a/dts/src/arm/omap3-pandora-common.dtsi +++ b/dts/src/arm/omap3-pandora-common.dtsi @@ -1,12 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 * Nikolaus Schaller <hns@goldelico.com> * * Common device tree include for OpenPandora devices. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include <dt-bindings/input/input.h> diff --git a/dts/src/arm/omap3-sniper.dts b/dts/src/arm/omap3-sniper.dts index bc4498e77b..40a87330e8 100644 --- a/dts/src/arm/omap3-sniper.dts +++ b/dts/src/arm/omap3-sniper.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015-2016 Paul Kocialkowski <contact@paulk.fr> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap3-tao3530.dtsi b/dts/src/arm/omap3-tao3530.dtsi index 6f5bd027b7..a7a04d78de 100644 --- a/dts/src/arm/omap3-tao3530.dtsi +++ b/dts/src/arm/omap3-tao3530.dtsi @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ * Copyright (C) 2014 Stefan Roese <sr@denx.de> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap3-thunder.dts b/dts/src/arm/omap3-thunder.dts index 9736ba79bb..6276e7079b 100644 --- a/dts/src/arm/omap3-thunder.dts +++ b/dts/src/arm/omap3-thunder.dts @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ * Copyright (C) 2014 Stefan Roese <sr@denx.de> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap3-tao3530.dtsi" diff --git a/dts/src/arm/omap3-zoom3.dts b/dts/src/arm/omap3-zoom3.dts index aac27a4413..db3a2fe84e 100644 --- a/dts/src/arm/omap3-zoom3.dts +++ b/dts/src/arm/omap3-zoom3.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap3430-sdp.dts b/dts/src/arm/omap3430-sdp.dts index d652708f6b..0abd61108a 100644 --- a/dts/src/arm/omap3430-sdp.dts +++ b/dts/src/arm/omap3430-sdp.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap3430es1-clocks.dtsi b/dts/src/arm/omap3430es1-clocks.dtsi index 86de819a0d..2ec3628d33 100644 --- a/dts/src/arm/omap3430es1-clocks.dtsi +++ b/dts/src/arm/omap3430es1-clocks.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for OMAP3430 ES1 clock data * * Copyright (C) 2013 Texas Instruments, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &cm_clocks { gfx_l3_ck: gfx_l3_ck@b10 { diff --git a/dts/src/arm/omap34xx-omap36xx-clocks.dtsi b/dts/src/arm/omap34xx-omap36xx-clocks.dtsi index 858aa0796e..5e9d1afcd4 100644 --- a/dts/src/arm/omap34xx-omap36xx-clocks.dtsi +++ b/dts/src/arm/omap34xx-omap36xx-clocks.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for OMAP34XX/OMAP36XX clock data * * Copyright (C) 2013 Texas Instruments, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &cm_clocks { security_l4_ick2: security_l4_ick2 { diff --git a/dts/src/arm/omap36xx-am35xx-omap3430es2plus-clocks.dtsi b/dts/src/arm/omap36xx-am35xx-omap3430es2plus-clocks.dtsi index 15d1866900..9974d52269 100644 --- a/dts/src/arm/omap36xx-am35xx-omap3430es2plus-clocks.dtsi +++ b/dts/src/arm/omap36xx-am35xx-omap3430es2plus-clocks.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for OMAP36xx/AM35xx/OMAP34xx clock data * * Copyright (C) 2013 Texas Instruments, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &prm_clocks { corex2_d3_fck: corex2_d3_fck { diff --git a/dts/src/arm/omap36xx-clocks.dtsi b/dts/src/arm/omap36xx-clocks.dtsi index a21d1f0212..e66fc57ec3 100644 --- a/dts/src/arm/omap36xx-clocks.dtsi +++ b/dts/src/arm/omap36xx-clocks.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for OMAP36xx clock data * * Copyright (C) 2013 Texas Instruments, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &cm_clocks { dpll4_ck: dpll4_ck@d00 { diff --git a/dts/src/arm/omap36xx-omap3430es2plus-clocks.dtsi b/dts/src/arm/omap36xx-omap3430es2plus-clocks.dtsi index 1a4fbdf0d9..945537aee3 100644 --- a/dts/src/arm/omap36xx-omap3430es2plus-clocks.dtsi +++ b/dts/src/arm/omap36xx-omap3430es2plus-clocks.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for OMAP34xx/OMAP36xx clock data * * Copyright (C) 2013 Texas Instruments, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &cm_clocks { ssi_ssr_gate_fck_3430es2: ssi_ssr_gate_fck_3430es2@a00 { diff --git a/dts/src/arm/omap3xxx-clocks.dtsi b/dts/src/arm/omap3xxx-clocks.dtsi index 9bd91641aa..685c82a9d0 100644 --- a/dts/src/arm/omap3xxx-clocks.dtsi +++ b/dts/src/arm/omap3xxx-clocks.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for OMAP3 clock data * * Copyright (C) 2013 Texas Instruments, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &prm_clocks { virt_16_8m_ck: virt_16_8m_ck { diff --git a/dts/src/arm/omap4-droid4-xt894.dts b/dts/src/arm/omap4-droid4-xt894.dts index 714863f8f2..4454449de0 100644 --- a/dts/src/arm/omap4-droid4-xt894.dts +++ b/dts/src/arm/omap4-droid4-xt894.dts @@ -1,8 +1,4 @@ -/* - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - */ +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; #include <dt-bindings/input/input.h> diff --git a/dts/src/arm/omap4-duovero-parlor.dts b/dts/src/arm/omap4-duovero-parlor.dts index cfcac0d738..8047e8cdb3 100644 --- a/dts/src/arm/omap4-duovero-parlor.dts +++ b/dts/src/arm/omap4-duovero-parlor.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap4-duovero.dtsi b/dts/src/arm/omap4-duovero.dtsi index a1dacb8a69..805dfd4003 100644 --- a/dts/src/arm/omap4-duovero.dtsi +++ b/dts/src/arm/omap4-duovero.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap443x.dtsi" diff --git a/dts/src/arm/omap4-kc1.dts b/dts/src/arm/omap4-kc1.dts index e3763ac757..31d856b58f 100644 --- a/dts/src/arm/omap4-kc1.dts +++ b/dts/src/arm/omap4-kc1.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2016 Paul Kocialkowski <contact@paulk.fr> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap4-panda-a4.dts b/dts/src/arm/omap4-panda-a4.dts index f1a6476af3..64083075dd 100644 --- a/dts/src/arm/omap4-panda-a4.dts +++ b/dts/src/arm/omap4-panda-a4.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap4-panda-common.dtsi b/dts/src/arm/omap4-panda-common.dtsi index 68e1894df7..14be2ecb62 100644 --- a/dts/src/arm/omap4-panda-common.dtsi +++ b/dts/src/arm/omap4-panda-common.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2011-2013 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include <dt-bindings/input/input.h> #include "elpida_ecb240abacn.dtsi" diff --git a/dts/src/arm/omap4-panda-es.dts b/dts/src/arm/omap4-panda-es.dts index 19d02df8d8..9dd307b526 100644 --- a/dts/src/arm/omap4-panda-es.dts +++ b/dts/src/arm/omap4-panda-es.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap4-panda.dts b/dts/src/arm/omap4-panda.dts index a0e28b2e25..fb2f47717b 100644 --- a/dts/src/arm/omap4-panda.dts +++ b/dts/src/arm/omap4-panda.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap4-sdp-es23plus.dts b/dts/src/arm/omap4-sdp-es23plus.dts index 3d3140fd96..42154520d3 100644 --- a/dts/src/arm/omap4-sdp-es23plus.dts +++ b/dts/src/arm/omap4-sdp-es23plus.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap4-sdp.dts" diff --git a/dts/src/arm/omap4-sdp.dts b/dts/src/arm/omap4-sdp.dts index fb51a4bffd..3c274965ff 100644 --- a/dts/src/arm/omap4-sdp.dts +++ b/dts/src/arm/omap4-sdp.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap4-var-dvk-om44.dts b/dts/src/arm/omap4-var-dvk-om44.dts index 458d79fa37..84fd17fb08 100644 --- a/dts/src/arm/omap4-var-dvk-om44.dts +++ b/dts/src/arm/omap4-var-dvk-om44.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Joachim Eastwood <manabian@gmail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap4-var-om44customboard.dtsi b/dts/src/arm/omap4-var-om44customboard.dtsi index 676d8dd062..458cb53dd3 100644 --- a/dts/src/arm/omap4-var-om44customboard.dtsi +++ b/dts/src/arm/omap4-var-om44customboard.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Joachim Eastwood <manabian@gmail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include <dt-bindings/input/input.h> diff --git a/dts/src/arm/omap4-var-som-om44-wlan.dtsi b/dts/src/arm/omap4-var-som-om44-wlan.dtsi index 8789234730..6dbbc9b322 100644 --- a/dts/src/arm/omap4-var-som-om44-wlan.dtsi +++ b/dts/src/arm/omap4-var-som-om44-wlan.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Joachim Eastwood <manabian@gmail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ / { diff --git a/dts/src/arm/omap4-var-som-om44.dtsi b/dts/src/arm/omap4-var-som-om44.dtsi index 9562d37207..41de32bcf1 100644 --- a/dts/src/arm/omap4-var-som-om44.dtsi +++ b/dts/src/arm/omap4-var-som-om44.dtsi @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Joachim Eastwood <manabian@gmail.com> * Copyright (C) 2012 Variscite Ltd. - http://www.variscite.com - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap4460.dtsi" #include "omap4-mcpdm.dtsi" diff --git a/dts/src/arm/omap4-var-stk-om44.dts b/dts/src/arm/omap4-var-stk-om44.dts index 56b64e6186..656fb29c2a 100644 --- a/dts/src/arm/omap4-var-stk-om44.dts +++ b/dts/src/arm/omap4-var-stk-om44.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 Joachim Eastwood <manabian@gmail.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap4.dtsi b/dts/src/arm/omap4.dtsi index 442a737f35..c43e52fd5f 100644 --- a/dts/src/arm/omap4.dtsi +++ b/dts/src/arm/omap4.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include <dt-bindings/bus/ti-sysc.h> diff --git a/dts/src/arm/omap443x-clocks.dtsi b/dts/src/arm/omap443x-clocks.dtsi index f370d96a87..39297868ec 100644 --- a/dts/src/arm/omap443x-clocks.dtsi +++ b/dts/src/arm/omap443x-clocks.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for OMAP4 clock data * * Copyright (C) 2013 Texas Instruments, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &prm_clocks { bandgap_fclk: bandgap_fclk@1888 { diff --git a/dts/src/arm/omap446x-clocks.dtsi b/dts/src/arm/omap446x-clocks.dtsi index fb5929b742..0f41714cff 100644 --- a/dts/src/arm/omap446x-clocks.dtsi +++ b/dts/src/arm/omap446x-clocks.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for OMAP4 clock data * * Copyright (C) 2013 Texas Instruments, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &prm_clocks { div_ts_ck: div_ts_ck@1888 { diff --git a/dts/src/arm/omap44xx-clocks.dtsi b/dts/src/arm/omap44xx-clocks.dtsi index 279ff2f419..e9d9c84606 100644 --- a/dts/src/arm/omap44xx-clocks.dtsi +++ b/dts/src/arm/omap44xx-clocks.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for OMAP4 clock data * * Copyright (C) 2013 Texas Instruments, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &cm1_clocks { extalt_clkin_ck: extalt_clkin_ck { diff --git a/dts/src/arm/omap5-board-common.dtsi b/dts/src/arm/omap5-board-common.dtsi index 2dc3e1950c..7fff555ee3 100644 --- a/dts/src/arm/omap5-board-common.dtsi +++ b/dts/src/arm/omap5-board-common.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include "omap5.dtsi" #include <dt-bindings/interrupt-controller/irq.h> diff --git a/dts/src/arm/omap5-igep0050.dts b/dts/src/arm/omap5-igep0050.dts index fef2a446b6..76e499d89d 100644 --- a/dts/src/arm/omap5-igep0050.dts +++ b/dts/src/arm/omap5-igep0050.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013 ISEE 2007 SL - http://www.isee.biz/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap5-uevm.dts b/dts/src/arm/omap5-uevm.dts index 592e17fd4e..9441e9a572 100644 --- a/dts/src/arm/omap5-uevm.dts +++ b/dts/src/arm/omap5-uevm.dts @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/omap5.dtsi b/dts/src/arm/omap5.dtsi index 4b40e47486..edfd26c034 100644 --- a/dts/src/arm/omap5.dtsi +++ b/dts/src/arm/omap5.dtsi @@ -1,9 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. * Based on "omap4.dtsi" */ diff --git a/dts/src/arm/omap54xx-clocks.dtsi b/dts/src/arm/omap54xx-clocks.dtsi index ecc5573d26..33e8dd905b 100644 --- a/dts/src/arm/omap54xx-clocks.dtsi +++ b/dts/src/arm/omap54xx-clocks.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device Tree Source for OMAP5 clock data * * Copyright (C) 2013 Texas Instruments, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &cm_core_aon_clocks { pad_clks_src_ck: pad_clks_src_ck { diff --git a/dts/src/arm/picoxcell-pc3x2.dtsi b/dts/src/arm/picoxcell-pc3x2.dtsi index 291a28f347..5ae8607883 100644 --- a/dts/src/arm/picoxcell-pc3x2.dtsi +++ b/dts/src/arm/picoxcell-pc3x2.dtsi @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2011 Picochip, Jamie Iles - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ / { model = "Picochip picoXcell PC3X2"; diff --git a/dts/src/arm/picoxcell-pc3x3.dtsi b/dts/src/arm/picoxcell-pc3x3.dtsi index bf9a39ea76..fa93155fad 100644 --- a/dts/src/arm/picoxcell-pc3x3.dtsi +++ b/dts/src/arm/picoxcell-pc3x3.dtsi @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2011 Picochip, Jamie Iles - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ / { model = "Picochip picoXcell PC3X3"; diff --git a/dts/src/arm/picoxcell-pc7302-pc3x2.dts b/dts/src/arm/picoxcell-pc7302-pc3x2.dts index 0c97293060..3626e53806 100644 --- a/dts/src/arm/picoxcell-pc7302-pc3x2.dts +++ b/dts/src/arm/picoxcell-pc7302-pc3x2.dts @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2011 Picochip, Jamie Iles - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ /dts-v1/; diff --git a/dts/src/arm/picoxcell-pc7302-pc3x3.dts b/dts/src/arm/picoxcell-pc7302-pc3x3.dts index 86f26715b6..3eca65e8ee 100644 --- a/dts/src/arm/picoxcell-pc7302-pc3x3.dts +++ b/dts/src/arm/picoxcell-pc7302-pc3x3.dts @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2011 Picochip, Jamie Iles - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ /dts-v1/; diff --git a/dts/src/arm/pxa168-aspenite.dts b/dts/src/arm/pxa168-aspenite.dts index 0a988b3fb2..2ad40e3731 100644 --- a/dts/src/arm/pxa168-aspenite.dts +++ b/dts/src/arm/pxa168-aspenite.dts @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Marvell Technology Group Ltd. * Author: Haojian Zhuang <haojian.zhuang@marvell.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/pxa168.dtsi b/dts/src/arm/pxa168.dtsi index 7137f35501..72f8cb60cb 100644 --- a/dts/src/arm/pxa168.dtsi +++ b/dts/src/arm/pxa168.dtsi @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Marvell Technology Group Ltd. * Author: Haojian Zhuang <haojian.zhuang@marvell.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. */ #include <dt-bindings/clock/marvell,pxa168.h> diff --git a/dts/src/arm/pxa910-dkb.dts b/dts/src/arm/pxa910-dkb.dts index c82f2810ec..0f899e672e 100644 --- a/dts/src/arm/pxa910-dkb.dts +++ b/dts/src/arm/pxa910-dkb.dts @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Marvell Technology Group Ltd. * Author: Haojian Zhuang <haojian.zhuang@marvell.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/arm/pxa910.dtsi b/dts/src/arm/pxa910.dtsi index c88553a8ee..b3d6182d4d 100644 --- a/dts/src/arm/pxa910.dtsi +++ b/dts/src/arm/pxa910.dtsi @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Marvell Technology Group Ltd. * Author: Haojian Zhuang <haojian.zhuang@marvell.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. */ #include <dt-bindings/clock/marvell,pxa910.h> diff --git a/dts/src/arm/qcom-ipq4019.dtsi b/dts/src/arm/qcom-ipq4019.dtsi index 1008dfbcb9..56f5159985 100644 --- a/dts/src/arm/qcom-ipq4019.dtsi +++ b/dts/src/arm/qcom-ipq4019.dtsi @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2015, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ /dts-v1/; diff --git a/dts/src/arm/stih407-b2120.dts b/dts/src/arm/stih407-b2120.dts index 62ce1cecbb..31c85f945c 100644 --- a/dts/src/arm/stih407-b2120.dts +++ b/dts/src/arm/stih407-b2120.dts @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 STMicroelectronics (R&D) Limited. * Author: Giuseppe Cavallaro <peppe.cavallaro@st.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; #include "stih407.dtsi" diff --git a/dts/src/arm/stih407-clock.dtsi b/dts/src/arm/stih407-clock.dtsi index ea78334898..1ab40db7c9 100644 --- a/dts/src/arm/stih407-clock.dtsi +++ b/dts/src/arm/stih407-clock.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 STMicroelectronics R&D Limited - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include <dt-bindings/clock/stih407-clks.h> / { diff --git a/dts/src/arm/stih407-family.dtsi b/dts/src/arm/stih407-family.dtsi index 9e29a44999..7c36c37260 100644 --- a/dts/src/arm/stih407-family.dtsi +++ b/dts/src/arm/stih407-family.dtsi @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 STMicroelectronics Limited. * Author: Giuseppe Cavallaro <peppe.cavallaro@st.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. */ #include "stih407-pinctrl.dtsi" #include <dt-bindings/mfd/st-lpc.h> diff --git a/dts/src/arm/stih407-pinctrl.dtsi b/dts/src/arm/stih407-pinctrl.dtsi index e393519fb8..2cf335714c 100644 --- a/dts/src/arm/stih407-pinctrl.dtsi +++ b/dts/src/arm/stih407-pinctrl.dtsi @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 STMicroelectronics Limited. * Author: Giuseppe Cavallaro <peppe.cavallaro@st.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. */ #include "st-pincfg.h" #include <dt-bindings/interrupt-controller/arm-gic.h> diff --git a/dts/src/arm/stih407.dtsi b/dts/src/arm/stih407.dtsi index 5b7951ffc3..9e212b0af8 100644 --- a/dts/src/arm/stih407.dtsi +++ b/dts/src/arm/stih407.dtsi @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 STMicroelectronics Limited. * Author: Gabriel Fernandez <gabriel.fernandez@linaro.org> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. */ #include "stih407-clock.dtsi" #include "stih407-family.dtsi" diff --git a/dts/src/arm/stih410-b2120.dts b/dts/src/arm/stih410-b2120.dts index 2a5a9802a5..158b226874 100644 --- a/dts/src/arm/stih410-b2120.dts +++ b/dts/src/arm/stih410-b2120.dts @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 STMicroelectronics (R&D) Limited. * Author: Peter Griffin <peter.griffin@linaro.org> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; #include "stih410.dtsi" diff --git a/dts/src/arm/stih410-b2260.dts b/dts/src/arm/stih410-b2260.dts index 4ee6d51d8d..4fbd8e9eb5 100644 --- a/dts/src/arm/stih410-b2260.dts +++ b/dts/src/arm/stih410-b2260.dts @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2016 STMicroelectronics (R&D) Limited. * Author: Patrice Chotard <patrice.chotard@st.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; #include "stih410.dtsi" diff --git a/dts/src/arm/stih410-clock.dtsi b/dts/src/arm/stih410-clock.dtsi index 5f11d09cb0..81a8c25d7b 100644 --- a/dts/src/arm/stih410-clock.dtsi +++ b/dts/src/arm/stih410-clock.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 STMicroelectronics R&D Limited - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include <dt-bindings/clock/stih410-clks.h> / { diff --git a/dts/src/arm/stih410-pinctrl.dtsi b/dts/src/arm/stih410-pinctrl.dtsi index 5ae1fd66c0..e6eadd1244 100644 --- a/dts/src/arm/stih410-pinctrl.dtsi +++ b/dts/src/arm/stih410-pinctrl.dtsi @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 STMicroelectronics Limited. * Author: Peter Griffin <peter.griffin@linaro.org> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. */ #include "st-pincfg.h" / { diff --git a/dts/src/arm/stih410.dtsi b/dts/src/arm/stih410.dtsi index 888548ea9b..6d847019c5 100644 --- a/dts/src/arm/stih410.dtsi +++ b/dts/src/arm/stih410.dtsi @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 STMicroelectronics Limited. * Author: Peter Griffin <peter.griffin@linaro.org> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. */ #include "stih410-clock.dtsi" #include "stih407-family.dtsi" diff --git a/dts/src/arm/stih418-b2199.dts b/dts/src/arm/stih418-b2199.dts index cd0d719e31..48c3c64e4c 100644 --- a/dts/src/arm/stih418-b2199.dts +++ b/dts/src/arm/stih418-b2199.dts @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 STMicroelectronics (R&D) Limited. * Author: Maxime Coquelin <maxime.coquelin@st.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; #include "stih418.dtsi" diff --git a/dts/src/arm/stih418-clock.dtsi b/dts/src/arm/stih418-clock.dtsi index 13fb8db52f..8fa0924621 100644 --- a/dts/src/arm/stih418-clock.dtsi +++ b/dts/src/arm/stih418-clock.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 STMicroelectronics R&D Limited - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include <dt-bindings/clock/stih418-clks.h> / { diff --git a/dts/src/arm/stih418.dtsi b/dts/src/arm/stih418.dtsi index 0efb3cd6a8..83411322bd 100644 --- a/dts/src/arm/stih418.dtsi +++ b/dts/src/arm/stih418.dtsi @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 STMicroelectronics Limited. * Author: Peter Griffin <peter.griffin@linaro.org> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. */ #include "stih418-clock.dtsi" #include "stih407-family.dtsi" diff --git a/dts/src/arm/stihxxx-b2120.dtsi b/dts/src/arm/stihxxx-b2120.dtsi index 97e05f55fb..60e11045ad 100644 --- a/dts/src/arm/stihxxx-b2120.dtsi +++ b/dts/src/arm/stihxxx-b2120.dtsi @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2014 STMicroelectronics (R&D) Limited. * Author: Giuseppe Cavallaro <peppe.cavallaro@st.com> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include <dt-bindings/clock/stih407-clks.h> #include <dt-bindings/gpio/gpio.h> diff --git a/dts/src/arm/tps6507x.dtsi b/dts/src/arm/tps6507x.dtsi index 4c326e591e..db4809d308 100644 --- a/dts/src/arm/tps6507x.dtsi +++ b/dts/src/arm/tps6507x.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/tps65217.dtsi b/dts/src/arm/tps65217.dtsi index 399baaa0a2..0d463de565 100644 --- a/dts/src/arm/tps65217.dtsi +++ b/dts/src/arm/tps65217.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/tps65910.dtsi b/dts/src/arm/tps65910.dtsi index b0ac6657a1..a941d1e623 100644 --- a/dts/src/arm/tps65910.dtsi +++ b/dts/src/arm/tps65910.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/twl4030.dtsi b/dts/src/arm/twl4030.dtsi index 16533b62b0..93e07c1878 100644 --- a/dts/src/arm/twl4030.dtsi +++ b/dts/src/arm/twl4030.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/twl4030_omap3.dtsi b/dts/src/arm/twl4030_omap3.dtsi index 5288e6dffe..683419d5c0 100644 --- a/dts/src/arm/twl4030_omap3.dtsi +++ b/dts/src/arm/twl4030_omap3.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013 Linaro, Ltd. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &twl { diff --git a/dts/src/arm/twl6030.dtsi b/dts/src/arm/twl6030.dtsi index c45f97f375..9d588cfaa5 100644 --- a/dts/src/arm/twl6030.dtsi +++ b/dts/src/arm/twl6030.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /* diff --git a/dts/src/arm/twl6030_omap4.dtsi b/dts/src/arm/twl6030_omap4.dtsi index e373f59cea..fc498d0bde 100644 --- a/dts/src/arm/twl6030_omap4.dtsi +++ b/dts/src/arm/twl6030_omap4.dtsi @@ -1,9 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ &twl { diff --git a/dts/src/arm/vf610-pinfunc.h b/dts/src/arm/vf610-pinfunc.h index fcad7132c8..f1e5a7cf58 100644 --- a/dts/src/arm/vf610-pinfunc.h +++ b/dts/src/arm/vf610-pinfunc.h @@ -1,10 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2013 Freescale Semiconductor, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #ifndef __DTS_VF610_PINFUNC_H diff --git a/dts/src/arm64/hisilicon/hi6220-coresight.dtsi b/dts/src/arm64/hisilicon/hi6220-coresight.dtsi index 68c52f1149..30f54b77c2 100644 --- a/dts/src/arm64/hisilicon/hi6220-coresight.dtsi +++ b/dts/src/arm64/hisilicon/hi6220-coresight.dtsi @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * dtsi file for Hisilicon Hi6220 coresight * @@ -5,11 +6,6 @@ * * Author: Pengcheng Li <lipengcheng8@huawei.com> * Leo Yan <leo.yan@linaro.org> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. - * */ / { diff --git a/dts/src/arm64/hisilicon/hip05-d02.dts b/dts/src/arm64/hisilicon/hip05-d02.dts index 3bbd017f08..e93c65ede0 100644 --- a/dts/src/arm64/hisilicon/hip05-d02.dts +++ b/dts/src/arm64/hisilicon/hip05-d02.dts @@ -1,12 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /** * dts file for Hisilicon D02 Development Board * * Copyright (C) 2014,2015 Hisilicon Ltd. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. - * */ /dts-v1/; diff --git a/dts/src/arm64/hisilicon/hip05.dtsi b/dts/src/arm64/hisilicon/hip05.dtsi index d321edc09c..bc49955360 100644 --- a/dts/src/arm64/hisilicon/hip05.dtsi +++ b/dts/src/arm64/hisilicon/hip05.dtsi @@ -1,12 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /** * dts file for Hisilicon D02 Development Board * * Copyright (C) 2014,2015 Hisilicon Ltd. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. - * */ #include <dt-bindings/interrupt-controller/arm-gic.h> diff --git a/dts/src/arm64/hisilicon/hip06-d03.dts b/dts/src/arm64/hisilicon/hip06-d03.dts index a95c6f5619..677862beeb 100644 --- a/dts/src/arm64/hisilicon/hip06-d03.dts +++ b/dts/src/arm64/hisilicon/hip06-d03.dts @@ -1,12 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /** * dts file for Hisilicon D03 Development Board * * Copyright (C) 2016 Hisilicon Ltd. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. - * */ /dts-v1/; diff --git a/dts/src/arm64/hisilicon/hip06.dtsi b/dts/src/arm64/hisilicon/hip06.dtsi index 56625587b6..50ceaa959b 100644 --- a/dts/src/arm64/hisilicon/hip06.dtsi +++ b/dts/src/arm64/hisilicon/hip06.dtsi @@ -1,12 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /** * dts file for Hisilicon D03 Development Board * * Copyright (C) 2016 Hisilicon Ltd. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. - * */ #include <dt-bindings/interrupt-controller/arm-gic.h> diff --git a/dts/src/arm64/hisilicon/hip07-d05.dts b/dts/src/arm64/hisilicon/hip07-d05.dts index 21147e8e3f..fcbdffe086 100644 --- a/dts/src/arm64/hisilicon/hip07-d05.dts +++ b/dts/src/arm64/hisilicon/hip07-d05.dts @@ -1,12 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /** * dts file for Hisilicon D05 Development Board * * Copyright (C) 2016 Hisilicon Ltd. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. - * */ /dts-v1/; diff --git a/dts/src/arm64/hisilicon/hip07.dtsi b/dts/src/arm64/hisilicon/hip07.dtsi index 28bd438944..4773a533fc 100644 --- a/dts/src/arm64/hisilicon/hip07.dtsi +++ b/dts/src/arm64/hisilicon/hip07.dtsi @@ -1,12 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /** * dts file for Hisilicon D05 Development Board * * Copyright (C) 2016 Hisilicon Ltd. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * publishhed by the Free Software Foundation. - * */ #include <dt-bindings/interrupt-controller/arm-gic.h> diff --git a/dts/src/arm64/qcom/apq8016-sbc.dts b/dts/src/arm64/qcom/apq8016-sbc.dts index 825f489a2a..48bd1c2874 100644 --- a/dts/src/arm64/qcom/apq8016-sbc.dts +++ b/dts/src/arm64/qcom/apq8016-sbc.dts @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2015, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ /dts-v1/; diff --git a/dts/src/arm64/qcom/apq8016-sbc.dtsi b/dts/src/arm64/qcom/apq8016-sbc.dtsi index 134617d87a..e12a36ce5d 100644 --- a/dts/src/arm64/qcom/apq8016-sbc.dtsi +++ b/dts/src/arm64/qcom/apq8016-sbc.dtsi @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2015, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #include "msm8916.dtsi" diff --git a/dts/src/arm64/qcom/apq8096-db820c-pins.dtsi b/dts/src/arm64/qcom/apq8096-db820c-pins.dtsi index 1c0d06f59d..a5cc80d6e8 100644 --- a/dts/src/arm64/qcom/apq8096-db820c-pins.dtsi +++ b/dts/src/arm64/qcom/apq8096-db820c-pins.dtsi @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2013-2016, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ &msmgpio { sdc2_cd_on: sdc2_cd_on { diff --git a/dts/src/arm64/qcom/apq8096-db820c.dts b/dts/src/arm64/qcom/apq8096-db820c.dts index da23bdafbd..757afa2742 100644 --- a/dts/src/arm64/qcom/apq8096-db820c.dts +++ b/dts/src/arm64/qcom/apq8096-db820c.dts @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2014-2016, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ /dts-v1/; diff --git a/dts/src/arm64/qcom/apq8096-db820c.dtsi b/dts/src/arm64/qcom/apq8096-db820c.dtsi index 943f699120..04ad2fb22b 100644 --- a/dts/src/arm64/qcom/apq8096-db820c.dtsi +++ b/dts/src/arm64/qcom/apq8096-db820c.dtsi @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2014-2016, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #include "msm8996.dtsi" diff --git a/dts/src/arm64/qcom/ipq8074-hk01.dts b/dts/src/arm64/qcom/ipq8074-hk01.dts index c13ddee826..70be3f9520 100644 --- a/dts/src/arm64/qcom/ipq8074-hk01.dts +++ b/dts/src/arm64/qcom/ipq8074-hk01.dts @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /dts-v1/; /* Copyright (c) 2017, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #include "ipq8074.dtsi" diff --git a/dts/src/arm64/qcom/ipq8074.dtsi b/dts/src/arm64/qcom/ipq8074.dtsi index aea1dbc3f5..67ee5f5601 100644 --- a/dts/src/arm64/qcom/ipq8074.dtsi +++ b/dts/src/arm64/qcom/ipq8074.dtsi @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2017, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #include <dt-bindings/interrupt-controller/arm-gic.h> diff --git a/dts/src/arm64/qcom/msm8916-mtp.dts b/dts/src/arm64/qcom/msm8916-mtp.dts index b0a064d380..c3f8859231 100644 --- a/dts/src/arm64/qcom/msm8916-mtp.dts +++ b/dts/src/arm64/qcom/msm8916-mtp.dts @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2014-2015, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ /dts-v1/; diff --git a/dts/src/arm64/qcom/msm8916-mtp.dtsi b/dts/src/arm64/qcom/msm8916-mtp.dtsi index ceeb8a6fee..0c6e81fb8c 100644 --- a/dts/src/arm64/qcom/msm8916-mtp.dtsi +++ b/dts/src/arm64/qcom/msm8916-mtp.dtsi @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2014-2015, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #include "msm8916.dtsi" diff --git a/dts/src/arm64/qcom/msm8916-pins.dtsi b/dts/src/arm64/qcom/msm8916-pins.dtsi index aa9a0ffedf..242aaea688 100644 --- a/dts/src/arm64/qcom/msm8916-pins.dtsi +++ b/dts/src/arm64/qcom/msm8916-pins.dtsi @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2013-2015, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ &msmgpio { diff --git a/dts/src/arm64/qcom/msm8916.dtsi b/dts/src/arm64/qcom/msm8916.dtsi index 423dda996b..dacd465fc6 100644 --- a/dts/src/arm64/qcom/msm8916.dtsi +++ b/dts/src/arm64/qcom/msm8916.dtsi @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2013-2015, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #include <dt-bindings/interrupt-controller/arm-gic.h> diff --git a/dts/src/arm64/qcom/msm8992-bullhead-rev-101.dts b/dts/src/arm64/qcom/msm8992-bullhead-rev-101.dts index 8c69516f97..32670d5afd 100644 --- a/dts/src/arm64/qcom/msm8992-bullhead-rev-101.dts +++ b/dts/src/arm64/qcom/msm8992-bullhead-rev-101.dts @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* Copyright (c) 2015, LGE Inc. All rights reserved. * Copyright (c) 2016, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ /dts-v1/; diff --git a/dts/src/arm64/qcom/msm8992-pins.dtsi b/dts/src/arm64/qcom/msm8992-pins.dtsi index 31bc9d98e3..c543c718c2 100644 --- a/dts/src/arm64/qcom/msm8992-pins.dtsi +++ b/dts/src/arm64/qcom/msm8992-pins.dtsi @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2013-2015, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ &msmgpio { diff --git a/dts/src/arm64/qcom/msm8992.dtsi b/dts/src/arm64/qcom/msm8992.dtsi index 50cefb822d..8be60c08a9 100644 --- a/dts/src/arm64/qcom/msm8992.dtsi +++ b/dts/src/arm64/qcom/msm8992.dtsi @@ -1,13 +1,5 @@ +// SPDX-License-Identifier: GPL-2.0-only /* Copyright (c) 2013-2016, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #include <dt-bindings/interrupt-controller/arm-gic.h> diff --git a/dts/src/arm64/qcom/msm8994-angler-rev-101.dts b/dts/src/arm64/qcom/msm8994-angler-rev-101.dts index dfa08f513d..a5f9a6ab51 100644 --- a/dts/src/arm64/qcom/msm8994-angler-rev-101.dts +++ b/dts/src/arm64/qcom/msm8994-angler-rev-101.dts @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* Copyright (c) 2015, Huawei Inc. All rights reserved. * Copyright (c) 2016, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ /dts-v1/; diff --git a/dts/src/arm64/qcom/msm8994-pins.dtsi b/dts/src/arm64/qcom/msm8994-pins.dtsi index 0e4eea0df2..2e118d967f 100644 --- a/dts/src/arm64/qcom/msm8994-pins.dtsi +++ b/dts/src/arm64/qcom/msm8994-pins.dtsi @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2013-2016, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ &msmgpio { diff --git a/dts/src/arm64/qcom/msm8994-smd-rpm.dtsi b/dts/src/arm64/qcom/msm8994-smd-rpm.dtsi index 47ebd16cb6..31e3eb6ab5 100644 --- a/dts/src/arm64/qcom/msm8994-smd-rpm.dtsi +++ b/dts/src/arm64/qcom/msm8994-smd-rpm.dtsi @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* Copyright (c) 2015, LGE Inc. All rights reserved. * Copyright (c) 2016, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ &smd_rpm { diff --git a/dts/src/arm64/qcom/msm8994.dtsi b/dts/src/arm64/qcom/msm8994.dtsi index 6a4049aae0..3932757f78 100644 --- a/dts/src/arm64/qcom/msm8994.dtsi +++ b/dts/src/arm64/qcom/msm8994.dtsi @@ -1,13 +1,5 @@ +// SPDX-License-Identifier: GPL-2.0-only /* Copyright (c) 2013-2016, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #include <dt-bindings/interrupt-controller/arm-gic.h> diff --git a/dts/src/arm64/qcom/msm8996-mtp.dts b/dts/src/arm64/qcom/msm8996-mtp.dts index 619af44a59..45ed594c1b 100644 --- a/dts/src/arm64/qcom/msm8996-mtp.dts +++ b/dts/src/arm64/qcom/msm8996-mtp.dts @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2014-2015, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ /dts-v1/; diff --git a/dts/src/arm64/qcom/msm8996-mtp.dtsi b/dts/src/arm64/qcom/msm8996-mtp.dtsi index 9bab5c011c..5f46a1427f 100644 --- a/dts/src/arm64/qcom/msm8996-mtp.dtsi +++ b/dts/src/arm64/qcom/msm8996-mtp.dtsi @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2014-2015, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #include "msm8996.dtsi" diff --git a/dts/src/arm64/qcom/msm8996-pins.dtsi b/dts/src/arm64/qcom/msm8996-pins.dtsi index fba2229b62..ac1ede5793 100644 --- a/dts/src/arm64/qcom/msm8996-pins.dtsi +++ b/dts/src/arm64/qcom/msm8996-pins.dtsi @@ -1,14 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2013-2016, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ &msmgpio { diff --git a/dts/src/arm64/qcom/msm8996.dtsi b/dts/src/arm64/qcom/msm8996.dtsi index c4e7fde9d8..942465d8ae 100644 --- a/dts/src/arm64/qcom/msm8996.dtsi +++ b/dts/src/arm64/qcom/msm8996.dtsi @@ -1,13 +1,5 @@ +// SPDX-License-Identifier: GPL-2.0-only /* Copyright (c) 2014-2015, The Linux Foundation. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 and - * only version 2 as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #include <dt-bindings/interrupt-controller/arm-gic.h> diff --git a/dts/src/mips/cavium-octeon/dlink_dsr-1000n.dts b/dts/src/mips/cavium-octeon/dlink_dsr-1000n.dts index cfa29156eb..2fdb4baad1 100644 --- a/dts/src/mips/cavium-octeon/dlink_dsr-1000n.dts +++ b/dts/src/mips/cavium-octeon/dlink_dsr-1000n.dts @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device tree source for D-Link DSR-1000N. * * Written by: Aaro Koskinen <aaro.koskinen@iki.fi> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /include/ "dlink_dsr-500n-1000n.dtsi" diff --git a/dts/src/mips/cavium-octeon/dlink_dsr-500n-1000n.dtsi b/dts/src/mips/cavium-octeon/dlink_dsr-500n-1000n.dtsi index 246b598201..b4acdb26a6 100644 --- a/dts/src/mips/cavium-octeon/dlink_dsr-500n-1000n.dtsi +++ b/dts/src/mips/cavium-octeon/dlink_dsr-500n-1000n.dtsi @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device tree source for D-Link DSR-500N/1000N (common parts). * * Written by: Aaro Koskinen <aaro.koskinen@iki.fi> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /include/ "octeon_3xxx.dtsi" diff --git a/dts/src/mips/cavium-octeon/dlink_dsr-500n.dts b/dts/src/mips/cavium-octeon/dlink_dsr-500n.dts index 78886e172c..e04237281b 100644 --- a/dts/src/mips/cavium-octeon/dlink_dsr-500n.dts +++ b/dts/src/mips/cavium-octeon/dlink_dsr-500n.dts @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device tree source for D-Link DSR-500N. * * Written by: Aaro Koskinen <aaro.koskinen@iki.fi> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /include/ "dlink_dsr-500n-1000n.dtsi" diff --git a/dts/src/mips/cavium-octeon/ubnt_e100.dts b/dts/src/mips/cavium-octeon/ubnt_e100.dts index 962f37fbc7..cb219b730c 100644 --- a/dts/src/mips/cavium-octeon/ubnt_e100.dts +++ b/dts/src/mips/cavium-octeon/ubnt_e100.dts @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Device tree source for EdgeRouter Lite. * * Written by: Aaro Koskinen <aaro.koskinen@iki.fi> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /include/ "octeon_3xxx.dtsi" diff --git a/dts/src/mips/img/pistachio.dtsi b/dts/src/mips/img/pistachio.dtsi index f8d7e6f622..dc3b7909de 100644 --- a/dts/src/mips/img/pistachio.dtsi +++ b/dts/src/mips/img/pistachio.dtsi @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015, 2016 Imagination Technologies Ltd. * Copyright (C) 2015 Google, Inc. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ #include <dt-bindings/clock/pistachio-clk.h> diff --git a/dts/src/mips/img/pistachio_marduk.dts b/dts/src/mips/img/pistachio_marduk.dts index cf9cebd522..bf69da96dc 100644 --- a/dts/src/mips/img/pistachio_marduk.dts +++ b/dts/src/mips/img/pistachio_marduk.dts @@ -1,10 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015, 2016 Imagination Technologies Ltd. * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * * IMG Marduk board is also known as Creator Ci40. */ diff --git a/dts/src/mips/pic32/pic32mzda.dtsi b/dts/src/mips/pic32/pic32mzda.dtsi index 5353a639c4..f1e3dad6be 100644 --- a/dts/src/mips/pic32/pic32mzda.dtsi +++ b/dts/src/mips/pic32/pic32mzda.dtsi @@ -1,10 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 Microchip Technology Inc. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ #include <dt-bindings/clock/microchip,pic32-clock.h> #include <dt-bindings/interrupt-controller/irq.h> diff --git a/dts/src/mips/pic32/pic32mzda_sk.dts b/dts/src/mips/pic32/pic32mzda_sk.dts index fc74010285..d7fa5d55db 100644 --- a/dts/src/mips/pic32/pic32mzda_sk.dts +++ b/dts/src/mips/pic32/pic32mzda_sk.dts @@ -1,10 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2015 Microchip Technology Inc. All rights reserved. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * */ /dts-v1/; diff --git a/dts/src/powerpc/mpc8610_hpcd.dts b/dts/src/powerpc/mpc8610_hpcd.dts index 6a109a0cea..1a8321ac10 100644 --- a/dts/src/powerpc/mpc8610_hpcd.dts +++ b/dts/src/powerpc/mpc8610_hpcd.dts @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * MPC8610 HPCD Device Tree Source * * Copyright 2007-2008 Freescale Semiconductor Inc. - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License Version 2 as published - * by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/powerpc/xcalibur1501.dts b/dts/src/powerpc/xcalibur1501.dts index 1f2952dce7..46c25bda95 100644 --- a/dts/src/powerpc/xcalibur1501.dts +++ b/dts/src/powerpc/xcalibur1501.dts @@ -1,12 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2008 Extreme Engineering Solutions, Inc. * Based on MPC8572DS device tree from Freescale Semiconductor, Inc. * * XCalibur1501 6U CompactPCI single-board computer based on MPC8572E - * - * This is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/powerpc/xpedite5200.dts b/dts/src/powerpc/xpedite5200.dts index 5b10e56a1d..840ea84bbb 100644 --- a/dts/src/powerpc/xpedite5200.dts +++ b/dts/src/powerpc/xpedite5200.dts @@ -1,12 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2009 Extreme Engineering Solutions, Inc. * Based on TQM8548 device tree * * XPedite5200 PrPMC/XMC module based on MPC8548E - * - * This is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/powerpc/xpedite5200_xmon.dts b/dts/src/powerpc/xpedite5200_xmon.dts index d5e14421c3..449fc1b5dc 100644 --- a/dts/src/powerpc/xpedite5200_xmon.dts +++ b/dts/src/powerpc/xpedite5200_xmon.dts @@ -1,13 +1,10 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2009 Extreme Engineering Solutions, Inc. * Based on TQM8548 device tree * * XPedite5200 PrPMC/XMC module based on MPC8548E. This dts is for the * xMon boot loader memory map which differs from U-Boot's. - * - * This is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/powerpc/xpedite5301.dts b/dts/src/powerpc/xpedite5301.dts index 7bcc94ffe5..12184e1796 100644 --- a/dts/src/powerpc/xpedite5301.dts +++ b/dts/src/powerpc/xpedite5301.dts @@ -1,12 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2008 Extreme Engineering Solutions, Inc. * Based on MPC8572DS device tree from Freescale Semiconductor, Inc. * * XPedite5301 PMC/XMC module based on MPC8572E - * - * This is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/powerpc/xpedite5330.dts b/dts/src/powerpc/xpedite5330.dts index 86df8bc6eb..e8fc90c52a 100644 --- a/dts/src/powerpc/xpedite5330.dts +++ b/dts/src/powerpc/xpedite5330.dts @@ -1,12 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2008 Extreme Engineering Solutions, Inc. * Based on MPC8572DS device tree from Freescale Semiconductor, Inc. * * XPedite5330 3U CompactPCI module based on MPC8572E - * - * This is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/powerpc/xpedite5370.dts b/dts/src/powerpc/xpedite5370.dts index b8ade094f9..2b5aa2f3a7 100644 --- a/dts/src/powerpc/xpedite5370.dts +++ b/dts/src/powerpc/xpedite5370.dts @@ -1,12 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2008 Extreme Engineering Solutions, Inc. * Based on MPC8572DS device tree from Freescale Semiconductor, Inc. * * XPedite5370 3U VPX single-board computer based on MPC8572E - * - * This is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. */ /dts-v1/; diff --git a/dts/src/riscv/sifive/fu540-c000.dtsi b/dts/src/riscv/sifive/fu540-c000.dtsi new file mode 100644 index 0000000000..3c06ee4b2b --- /dev/null +++ b/dts/src/riscv/sifive/fu540-c000.dtsi @@ -0,0 +1,215 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* Copyright (c) 2018-2019 SiFive, Inc */ + +/dts-v1/; + +#include <dt-bindings/clock/sifive-fu540-prci.h> + +/ { + #address-cells = <2>; + #size-cells = <2>; + compatible = "sifive,fu540-c000", "sifive,fu540"; + + aliases { + serial0 = &uart0; + serial1 = &uart1; + }; + + chosen { + }; + + cpus { + #address-cells = <1>; + #size-cells = <0>; + timebase-frequency = <1000000>; + cpu0: cpu@0 { + compatible = "sifive,e51", "sifive,rocket0", "riscv"; + device_type = "cpu"; + i-cache-block-size = <64>; + i-cache-sets = <128>; + i-cache-size = <16384>; + reg = <0>; + riscv,isa = "rv64imac"; + status = "disabled"; + cpu0_intc: interrupt-controller { + #interrupt-cells = <1>; + compatible = "riscv,cpu-intc"; + interrupt-controller; + }; + }; + cpu1: cpu@1 { + compatible = "sifive,u54-mc", "sifive,rocket0", "riscv"; + d-cache-block-size = <64>; + d-cache-sets = <64>; + d-cache-size = <32768>; + d-tlb-sets = <1>; + d-tlb-size = <32>; + device_type = "cpu"; + i-cache-block-size = <64>; + i-cache-sets = <64>; + i-cache-size = <32768>; + i-tlb-sets = <1>; + i-tlb-size = <32>; + mmu-type = "riscv,sv39"; + reg = <1>; + riscv,isa = "rv64imafdc"; + tlb-split; + cpu1_intc: interrupt-controller { + #interrupt-cells = <1>; + compatible = "riscv,cpu-intc"; + interrupt-controller; + }; + }; + cpu2: cpu@2 { + clock-frequency = <0>; + compatible = "sifive,u54-mc", "sifive,rocket0", "riscv"; + d-cache-block-size = <64>; + d-cache-sets = <64>; + d-cache-size = <32768>; + d-tlb-sets = <1>; + d-tlb-size = <32>; + device_type = "cpu"; + i-cache-block-size = <64>; + i-cache-sets = <64>; + i-cache-size = <32768>; + i-tlb-sets = <1>; + i-tlb-size = <32>; + mmu-type = "riscv,sv39"; + reg = <2>; + riscv,isa = "rv64imafdc"; + tlb-split; + cpu2_intc: interrupt-controller { + #interrupt-cells = <1>; + compatible = "riscv,cpu-intc"; + interrupt-controller; + }; + }; + cpu3: cpu@3 { + clock-frequency = <0>; + compatible = "sifive,u54-mc", "sifive,rocket0", "riscv"; + d-cache-block-size = <64>; + d-cache-sets = <64>; + d-cache-size = <32768>; + d-tlb-sets = <1>; + d-tlb-size = <32>; + device_type = "cpu"; + i-cache-block-size = <64>; + i-cache-sets = <64>; + i-cache-size = <32768>; + i-tlb-sets = <1>; + i-tlb-size = <32>; + mmu-type = "riscv,sv39"; + reg = <3>; + riscv,isa = "rv64imafdc"; + tlb-split; + cpu3_intc: interrupt-controller { + #interrupt-cells = <1>; + compatible = "riscv,cpu-intc"; + interrupt-controller; + }; + }; + cpu4: cpu@4 { + clock-frequency = <0>; + compatible = "sifive,u54-mc", "sifive,rocket0", "riscv"; + d-cache-block-size = <64>; + d-cache-sets = <64>; + d-cache-size = <32768>; + d-tlb-sets = <1>; + d-tlb-size = <32>; + device_type = "cpu"; + i-cache-block-size = <64>; + i-cache-sets = <64>; + i-cache-size = <32768>; + i-tlb-sets = <1>; + i-tlb-size = <32>; + mmu-type = "riscv,sv39"; + reg = <4>; + riscv,isa = "rv64imafdc"; + tlb-split; + cpu4_intc: interrupt-controller { + #interrupt-cells = <1>; + compatible = "riscv,cpu-intc"; + interrupt-controller; + }; + }; + }; + soc { + #address-cells = <2>; + #size-cells = <2>; + compatible = "sifive,fu540-c000", "sifive,fu540", "simple-bus"; + ranges; + plic0: interrupt-controller@c000000 { + #interrupt-cells = <1>; + compatible = "sifive,plic-1.0.0"; + reg = <0x0 0xc000000 0x0 0x4000000>; + riscv,ndev = <53>; + interrupt-controller; + interrupts-extended = < + &cpu0_intc 0xffffffff + &cpu1_intc 0xffffffff &cpu1_intc 9 + &cpu2_intc 0xffffffff &cpu2_intc 9 + &cpu3_intc 0xffffffff &cpu3_intc 9 + &cpu4_intc 0xffffffff &cpu4_intc 9>; + }; + prci: clock-controller@10000000 { + compatible = "sifive,fu540-c000-prci"; + reg = <0x0 0x10000000 0x0 0x1000>; + clocks = <&hfclk>, <&rtcclk>; + #clock-cells = <1>; + }; + uart0: serial@10010000 { + compatible = "sifive,fu540-c000-uart", "sifive,uart0"; + reg = <0x0 0x10010000 0x0 0x1000>; + interrupt-parent = <&plic0>; + interrupts = <4>; + clocks = <&prci PRCI_CLK_TLCLK>; + }; + uart1: serial@10011000 { + compatible = "sifive,fu540-c000-uart", "sifive,uart0"; + reg = <0x0 0x10011000 0x0 0x1000>; + interrupt-parent = <&plic0>; + interrupts = <5>; + clocks = <&prci PRCI_CLK_TLCLK>; + }; + i2c0: i2c@10030000 { + compatible = "sifive,fu540-c000-i2c", "sifive,i2c0"; + reg = <0x0 0x10030000 0x0 0x1000>; + interrupt-parent = <&plic0>; + interrupts = <50>; + clocks = <&prci PRCI_CLK_TLCLK>; + reg-shift = <2>; + reg-io-width = <1>; + #address-cells = <1>; + #size-cells = <0>; + }; + qspi0: spi@10040000 { + compatible = "sifive,fu540-c000-spi", "sifive,spi0"; + reg = <0x0 0x10040000 0x0 0x1000 + 0x0 0x20000000 0x0 0x10000000>; + interrupt-parent = <&plic0>; + interrupts = <51>; + clocks = <&prci PRCI_CLK_TLCLK>; + #address-cells = <1>; + #size-cells = <0>; + }; + qspi1: spi@10041000 { + compatible = "sifive,fu540-c000-spi", "sifive,spi0"; + reg = <0x0 0x10041000 0x0 0x1000 + 0x0 0x30000000 0x0 0x10000000>; + interrupt-parent = <&plic0>; + interrupts = <52>; + clocks = <&prci PRCI_CLK_TLCLK>; + #address-cells = <1>; + #size-cells = <0>; + }; + qspi2: spi@10050000 { + compatible = "sifive,fu540-c000-spi", "sifive,spi0"; + reg = <0x0 0x10050000 0x0 0x1000>; + interrupt-parent = <&plic0>; + interrupts = <6>; + clocks = <&prci PRCI_CLK_TLCLK>; + #address-cells = <1>; + #size-cells = <0>; + }; + }; +}; diff --git a/dts/src/riscv/sifive/hifive-unleashed-a00.dts b/dts/src/riscv/sifive/hifive-unleashed-a00.dts new file mode 100644 index 0000000000..4da88707e2 --- /dev/null +++ b/dts/src/riscv/sifive/hifive-unleashed-a00.dts @@ -0,0 +1,65 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +/* Copyright (c) 2018-2019 SiFive, Inc */ + +#include "fu540-c000.dtsi" + +/* Clock frequency (in Hz) of the PCB crystal for rtcclk */ +#define RTCCLK_FREQ 1000000 + +/ { + #address-cells = <2>; + #size-cells = <2>; + model = "SiFive HiFive Unleashed A00"; + compatible = "sifive,hifive-unleashed-a00", "sifive,fu540-c000"; + + chosen { + }; + + cpus { + timebase-frequency = <RTCCLK_FREQ>; + }; + + memory@80000000 { + device_type = "memory"; + reg = <0x0 0x80000000 0x2 0x00000000>; + }; + + soc { + }; + + hfclk: hfclk { + #clock-cells = <0>; + compatible = "fixed-clock"; + clock-frequency = <33333333>; + clock-output-names = "hfclk"; + }; + + rtcclk: rtcclk { + #clock-cells = <0>; + compatible = "fixed-clock"; + clock-frequency = <RTCCLK_FREQ>; + clock-output-names = "rtcclk"; + }; +}; + +&qspi0 { + flash@0 { + compatible = "issi,is25wp256", "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <50000000>; + m25p,fast-read; + spi-tx-bus-width = <4>; + spi-rx-bus-width = <4>; + }; +}; + +&qspi2 { + status = "okay"; + mmc@0 { + compatible = "mmc-spi-slot"; + reg = <0>; + spi-max-frequency = <20000000>; + voltage-ranges = <3300 3300>; + disable-wp; + }; +}; diff --git a/dts/src/x86/falconfalls.dts b/dts/src/x86/falconfalls.dts index ce874f872c..0ac3d43571 100644 --- a/dts/src/x86/falconfalls.dts +++ b/dts/src/x86/falconfalls.dts @@ -1,11 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * CE4100 on Falcon Falls * * (c) Copyright 2010 Intel Corporation - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License as published by the - * Free Software Foundation; version 2 of the License. */ /dts-v1/; / { diff --git a/fs/pstore/platform.c b/fs/pstore/platform.c index 755363c309..0a6fa38edc 100644 --- a/fs/pstore/platform.c +++ b/fs/pstore/platform.c @@ -44,83 +44,39 @@ void pstore_set_kmsg_bytes(int bytes) kmsg_bytes = bytes; } -#ifdef CONFIG_FS_PSTORE_CONSOLE -static void pstore_console_write(const char *s, unsigned c) -{ - const char *e = s + c; - - while (s < e) { - struct pstore_record record = { - .type = PSTORE_TYPE_CONSOLE, - .psi = psinfo, - }; - - if (c > psinfo->bufsize) - c = psinfo->bufsize; - - record.buf = (char *)s; - record.size = c; - psinfo->write_buf(PSTORE_TYPE_CONSOLE, 0, &record.id, 0, - record.buf, 0, record.size, psinfo); - s += c; - c = e - s; - } -} - -static int pstore_console_puts(struct console_device *cdev, const char *s) -{ - pstore_console_write(s, strlen(s)); - return strlen(s); -} +static int pstore_ready; -static void pstore_console_putc(struct console_device *cdev, char c) +void pstore_log(const char *str) { - const char s[1] = { c }; + uint64_t id; + static int in_pstore; - pstore_console_write(s, 1); -} - -static void pstore_console_capture_log(void) -{ - struct log_entry *log; - - list_for_each_entry(log, &barebox_logbuf, list) - pstore_console_write(log->msg, strlen(log->msg)); -} - -static struct console_device *pstore_cdev; + if (!IS_ENABLED(CONFIG_FS_PSTORE_CONSOLE)) + return; -static void pstore_register_console(void) -{ - struct console_device *cdev; - int ret; + if (!pstore_ready) + return; - cdev = xzalloc(sizeof(struct console_device)); - pstore_cdev = cdev; + if (in_pstore) + return; - cdev->puts = pstore_console_puts; - cdev->putc = pstore_console_putc; - cdev->devname = "pstore"; - cdev->devid = DEVICE_ID_SINGLE; + in_pstore = 1; - ret = console_register(cdev); - if (ret) - pr_err("registering failed with %s\n", strerror(-ret)); + psinfo->write_buf(PSTORE_TYPE_CONSOLE, 0, &id, 0, + str, 0, strlen(str), psinfo); - pstore_console_capture_log(); - - console_set_active(pstore_cdev, CONSOLE_STDOUT); + in_pstore = 0; } -#else -static void pstore_register_console(void) {} -#endif -static int pstore_write_compat(struct pstore_record *record) +static void pstore_console_capture_log(void) { - return record->psi->write_buf(record->type, record->reason, - &record->id, record->part, - psinfo->buf, record->compressed, - record->size, record->psi); + uint64_t id; + struct log_entry *log, *tmp; + + list_for_each_entry_safe(log, tmp, &barebox_logbuf, list) { + psinfo->write_buf(PSTORE_TYPE_CONSOLE, 0, &id, 0, + log->msg, 0, strlen(log->msg), psinfo); + } } /* @@ -143,15 +99,14 @@ int pstore_register(struct pstore_info *psi) return -EBUSY; } - if (!psi->write) - psi->write = pstore_write_compat; psinfo = psi; mutex_init(&psinfo->read_mutex); spin_unlock(&pstore_lock); pstore_get_records(0); - pstore_register_console(); + pstore_console_capture_log(); + pstore_ready = 1; pr_info("Registered %s as persistent store backend\n", psi->name); diff --git a/fs/pstore/ram.c b/fs/pstore/ram.c index 734d0c3c1d..86049f989e 100644 --- a/fs/pstore/ram.c +++ b/fs/pstore/ram.c @@ -609,22 +609,7 @@ static int ramoops_probe(struct device_d *dev) goto fail_init_mprz; cxt->pstore.data = cxt; - /* - * Console can handle any buffer size, so prefer LOG_LINE_MAX. If we - * have to handle dumps, we must have at least record_size buffer. And - * for ftrace, bufsize is irrelevant (if bufsize is 0, buf will be - * ZERO_SIZE_PTR). - */ - if (cxt->console_size) - cxt->pstore.bufsize = 1024; /* LOG_LINE_MAX */ - cxt->pstore.bufsize = max(cxt->record_size, cxt->pstore.bufsize); - cxt->pstore.buf = kmalloc(cxt->pstore.bufsize, GFP_KERNEL); spin_lock_init(&cxt->pstore.buf_lock); - if (!cxt->pstore.buf) { - pr_err("cannot allocate pstore buffer\n"); - err = -ENOMEM; - goto fail_clear; - } err = pstore_register(&cxt->pstore); if (err) { @@ -661,9 +646,7 @@ static int ramoops_probe(struct device_d *dev) return 0; fail_buf: - kfree(cxt->pstore.buf); fail_clear: - cxt->pstore.bufsize = 0; kfree(cxt->mprz); fail_init_mprz: kfree(cxt->fprz); diff --git a/images/Makefile b/images/Makefile index 479647a827..293e644319 100644 --- a/images/Makefile +++ b/images/Makefile @@ -140,7 +140,7 @@ include $(srctree)/images/Makefile.mxs include $(srctree)/images/Makefile.omap3 include $(srctree)/images/Makefile.rockchip include $(srctree)/images/Makefile.socfpga -include $(srctree)/images/Makefile.stm32mp1 +include $(srctree)/images/Makefile.stm32mp include $(srctree)/images/Makefile.tegra include $(srctree)/images/Makefile.vexpress include $(srctree)/images/Makefile.xburst diff --git a/images/Makefile.imx b/images/Makefile.imx index 826e774aaf..42c194ba63 100644 --- a/images/Makefile.imx +++ b/images/Makefile.imx @@ -443,11 +443,21 @@ CFG_start_phytec_phycore_imx6dl_som_nand_1gib.pblb.imximg = $(board)/phytec-som- FILE_barebox-phytec-phycore-imx6dl-som-nand-1gib.img = start_phytec_phycore_imx6dl_som_nand_1gib.pblb.imximg image-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += barebox-phytec-phycore-imx6dl-som-nand-1gib.img +pblb-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += start_phytec_phycore_imx6dl_som_lc_nand_256mb +CFG_start_phytec_phycore_imx6dl_som_lc_nand_256mb.pblb.imximg = $(board)/phytec-som-imx6/flash-header-phytec-pcm058dl-256mb.imxcfg +FILE_barebox-phytec-phycore-imx6dl-som-lc-nand-256mb.img = start_phytec_phycore_imx6dl_som_lc_nand_256mb.pblb.imximg +image-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += barebox-phytec-phycore-imx6dl-som-lc-nand-256mb.img + pblb-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += start_phytec_phycore_imx6dl_som_emmc_1gib CFG_start_phytec_phycore_imx6dl_som_emmc_1gib.pblb.imximg = $(board)/phytec-som-imx6/flash-header-phytec-pcm058dl-1gib.imxcfg FILE_barebox-phytec-phycore-imx6dl-som-emmc-1gib.img = start_phytec_phycore_imx6dl_som_emmc_1gib.pblb.imximg image-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += barebox-phytec-phycore-imx6dl-som-emmc-1gib.img +pblb-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += start_phytec_phycore_imx6dl_som_lc_emmc_1gib +CFG_start_phytec_phycore_imx6dl_som_lc_emmc_1gib.pblb.imximg = $(board)/phytec-som-imx6/flash-header-phytec-pcm058dl-1gib.imxcfg +FILE_barebox-phytec-phycore-imx6dl-som-lc-emmc-1gib.img = start_phytec_phycore_imx6dl_som_lc_emmc_1gib.pblb.imximg +image-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += barebox-phytec-phycore-imx6dl-som-lc-emmc-1gib.img + pblb-$(CONFIG_MACH_KONTRON_SAMX6I) += start_imx6q_samx6i CFG_start_imx6q_samx6i.pblb.imximg = $(board)/kontron-samx6i/flash-header-samx6i-quad.imxcfg FILE_barebox-imx6q-samx6i.img = start_imx6q_samx6i.pblb.imximg @@ -494,20 +504,25 @@ CFG_start_nxp_imx6ull_evk.pblb.imximg = $(board)/nxp-imx6ull-evk/flash-header-nx FILE_barebox-nxp-imx6ull-evk.img = start_nxp_imx6ull_evk.pblb.imximg image-$(CONFIG_MACH_NXP_IMX6ULL_EVK) += barebox-nxp-imx6ull-evk.img -pblb-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += start_phytec_phycore_imx6ul_som_512mb -CFG_start_phytec_phycore_imx6ul_som_512mb.pblb.imximg = $(board)/phytec-som-imx6/flash-header-phytec-pcl063-512mb.imxcfg -FILE_barebox-phytec-phycore-imx6ul-512mb.img = start_phytec_phycore_imx6ul_som_512mb.pblb.imximg -image-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += barebox-phytec-phycore-imx6ul-512mb.img - -pblb-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += start_phytec_phycore_imx6ull_som_lc_256mb -CFG_start_phytec_phycore_imx6ull_som_lc_256mb.pblb.imximg = $(board)/phytec-som-imx6/flash-header-phytec-pcl063-256mb.imxcfg -FILE_barebox-phytec-phycore-imx6ull-lc-256mb.img = start_phytec_phycore_imx6ull_som_lc_256mb.pblb.imximg -image-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += barebox-phytec-phycore-imx6ull-lc-256mb.img - -pblb-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += start_phytec_phycore_imx6ull_som_512mb -CFG_start_phytec_phycore_imx6ull_som_512mb.pblb.imximg = $(board)/phytec-som-imx6/flash-header-phytec-pcl063-512mb.imxcfg -FILE_barebox-phytec-phycore-imx6ull-512mb.img = start_phytec_phycore_imx6ull_som_512mb.pblb.imximg -image-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += barebox-phytec-phycore-imx6ull-512mb.img +pblb-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += start_phytec_phycore_imx6ul_som_nand_512mb +CFG_start_phytec_phycore_imx6ul_som_nand_512mb.pblb.imximg = $(board)/phytec-som-imx6/flash-header-phytec-pcl063-512mb.imxcfg +FILE_barebox-phytec-phycore-imx6ul-nand-512mb.img = start_phytec_phycore_imx6ul_som_nand_512mb.pblb.imximg +image-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += barebox-phytec-phycore-imx6ul-nand-512mb.img + +pblb-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += start_phytec_phycore_imx6ull_som_lc_nand_256mb +CFG_start_phytec_phycore_imx6ull_som_lc_nand_256mb.pblb.imximg = $(board)/phytec-som-imx6/flash-header-phytec-pcl063-256mb.imxcfg +FILE_barebox-phytec-phycore-imx6ull-lc-nand-256mb.img = start_phytec_phycore_imx6ull_som_lc_nand_256mb.pblb.imximg +image-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += barebox-phytec-phycore-imx6ull-lc-nand-256mb.img + +pblb-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += start_phytec_phycore_imx6ull_som_nand_512mb +CFG_start_phytec_phycore_imx6ull_som_nand_512mb.pblb.imximg = $(board)/phytec-som-imx6/flash-header-phytec-pcl063-512mb.imxcfg +FILE_barebox-phytec-phycore-imx6ull-nand-512mb.img = start_phytec_phycore_imx6ull_som_nand_512mb.pblb.imximg +image-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += barebox-phytec-phycore-imx6ull-nand-512mb.img + +pblb-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += start_phytec_phycore_imx6ull_som_emmc_512mb +CFG_start_phytec_phycore_imx6ull_som_emmc_512mb.pblb.imximg = $(board)/phytec-som-imx6/flash-header-phytec-pcl063-512mb.imxcfg +FILE_barebox-phytec-phycore-imx6ull-emmc-512mb.img = start_phytec_phycore_imx6ull_som_emmc_512mb.pblb.imximg +image-$(CONFIG_MACH_PHYTEC_SOM_IMX6) += barebox-phytec-phycore-imx6ull-emmc-512mb.img pblb-$(CONFIG_MACH_TECHNEXION_PICO_HOBBIT) += start_imx6ul_pico_hobbit_256mb CFG_start_imx6ul_pico_hobbit_256mb.pblb.imximg = $(board)/technexion-pico-hobbit/flash-header-imx6ul-pico-hobbit-256.imxcfg diff --git a/images/Makefile.mvebu b/images/Makefile.mvebu index 846dd46095..112227424b 100644 --- a/images/Makefile.mvebu +++ b/images/Makefile.mvebu @@ -7,78 +7,95 @@ $(obj)/%.kwbimg: $(obj)/% FORCE $(call if_changed,kwb_image) +$(obj)/%.mvebu0img: $(obj)/% scripts/mvebuimg FORCE + $(call if_changed,mvebu0_image) + +$(obj)/%.mvebu1img: $(obj)/% scripts/mvebuimg FORCE + $(call if_changed,mvebu1_image) + KWBOPTS = -c -d 0x1000000 -e 0x1000000 # ----------------------- Armada 370 based boards --------------------------- -GLOBALSCALE_MIRABOX_KWBOPTS = ${KWBOPTS} -i $(board)/globalscale-mirabox/kwbimage.cfg -OPTS_start_globalscale_mirabox.pblb.kwbimg = $(GLOBALSCALE_MIRABOX_KWBOPTS) -FILE_barebox-globalscale-mirabox.img = start_globalscale_mirabox.pblb.kwbimg -FILE_barebox-globalscale-mirabox-2nd.img = start_globalscale_mirabox.pblb +BOOTSRC_start_globalscale_mirabox.pblb.mvebu1img = nand +BINHDR_start_globalscale_mirabox.pblb.mvebu1img = $(board)/globalscale-mirabox/binary.0 +FLAGS_start_globalscale_mirabox.pblb.mvebu1img = -B 0x20000:1 +FILE_barebox-globalscale-mirabox.img = start_globalscale_mirabox.pblb.mvebu1img pblb-$(CONFIG_MACH_GLOBALSCALE_MIRABOX) += start_globalscale_mirabox image-$(CONFIG_MACH_GLOBALSCALE_MIRABOX) += barebox-globalscale-mirabox.img + +FILE_barebox-globalscale-mirabox-2nd.img = start_globalscale_mirabox.pblb image-$(CONFIG_MACH_GLOBALSCALE_MIRABOX) += barebox-globalscale-mirabox-2nd.img -NETGEAR_RN104_KWBOPTS = ${KWBOPTS} -i $(board)/netgear-rn104/kwbimage.cfg -OPTS_start_netgear_rn104.pblb.kwbimg = $(NETGEAR_RN104_KWBOPTS) -FILE_barebox-netgear-rn104.img = start_netgear_rn104.pblb.kwbimg -FILE_barebox-netgear-rn104-2nd.img = start_netgear_rn104.pblb +FLAGS_start_netgear_rn104.pblb.mvebu1img = -d 0x600000 -e 0x6e0000 +BOOTSRC_start_netgear_rn104.pblb.mvebu1img = nand +BINHDR_start_netgear_rn104.pblb.mvebu1img = $(board)/netgear-rn104/binary.0 +FLAGS_start_netgear_rn104.pblb.mvebu1img = -B 0x20000:1 +FILE_barebox-netgear-rn104.img = start_netgear_rn104.pblb.mvebu1img pblb-$(CONFIG_MACH_NETGEAR_RN104) += start_netgear_rn104 image-$(CONFIG_MACH_NETGEAR_RN104) += barebox-netgear-rn104.img + +FILE_barebox-netgear-rn104-2nd.img = start_netgear_rn104.pblb image-$(CONFIG_MACH_NETGEAR_RN104) += barebox-netgear-rn104-2nd.img # ----------------------- Armada XP based boards --------------------------- -LENOVO_IX4_300D_KWBOPTS = ${KWBOPTS} -i $(board)/lenovo-ix4-300d/kwbimage.cfg -OPTS_start_lenovo_ix4_300d.pblb.kwbimg = $(LENOVO_IX4_300D_KWBOPTS) -FILE_barebox-lenovo-ix4-300d.img = start_lenovo_ix4_300d.pblb.kwbimg -FILE_barebox-lenovo-ix4-300d-2nd.img = start_lenovo_ix4_300d.pblb +BOOTSRC_start_lenovo_ix4_300d.pblb.mvebu1img = nand +BINHDR_start_lenovo_ix4_300d.pblb.mvebu1img = $(board)/lenovo-ix4-300d/binary.0 +FLAGS_start_lenovo_ix4_300d.pblb.mvebu1img = -B 0x20000:0 +FILE_barebox-lenovo-ix4-300d.img = start_lenovo_ix4_300d.pblb.mvebu1img pblb-$(CONFIG_MACH_LENOVO_IX4_300D) += start_lenovo_ix4_300d image-$(CONFIG_MACH_LENOVO_IX4_300D) += barebox-lenovo-ix4-300d.img + +FILE_barebox-lenovo-ix4-300d-2nd.img = start_lenovo_ix4_300d.pblb image-$(CONFIG_MACH_LENOVO_IX4_300D) += barebox-lenovo-ix4-300d-2nd.img -MARVELL_ARMADA_XP_GP_KWBOPTS = ${KWBOPTS} -i $(board)/marvell-armada-xp-gp/kwbimage.cfg -OPTS_start_marvell_armada_xp_gp.pblb.kwbimg = $(MARVELL_ARMADA_XP_GP_KWBOPTS) -FILE_barebox-marvell-armada-xp-gp.img = start_marvell_armada_xp_gp.pblb.kwbimg -FILE_barebox-marvell-armada-xp-gp-2nd.img = start_marvell_armada_xp_gp.pblb +BOOTSRC_start_marvell_armada_xp_gp.pblb.mvebu1img = spi +BINHDR_start_marvell_armada_xp_gp.pblb.mvebu1img = $(board)/marvell-armada-xp-gp/binary.0 +FILE_barebox-marvell-armada-xp-gp.img = start_marvell_armada_xp_gp.pblb.mvebu1img pblb-$(CONFIG_MACH_MARVELL_ARMADA_XP_GP) += start_marvell_armada_xp_gp image-$(CONFIG_MACH_MARVELL_ARMADA_XP_GP) += barebox-marvell-armada-xp-gp.img + +FILE_barebox-marvell-armada-xp-gp-2nd.img = start_marvell_armada_xp_gp.pblb image-$(CONFIG_MACH_MARVELL_ARMADA_XP_GP) += barebox-marvell-armada-xp-gp-2nd.img -MARVELL_ARMADA_XP_DB_KWBOPTS = ${KWBOPTS} -i $(board)/marvell-armada-xp-db/kwbimage.cfg -OPTS_start_marvell_armada_xp_db.pblb.kwbimg = $(MARVELL_ARMADA_XP_DB_KWBOPTS) -FILE_barebox-marvell-armada-xp-db.img = start_marvell_armada_xp_db.pblb.kwbimg -FILE_barebox-marvell-armada-xp-db-2nd.img = start_marvell_armada_xp_db.pblb +BOOTSRC_start_marvell_armada_xp_db.pblb.mvebu1img = uart +BINHDR_start_marvell_armada_xp_db.pblb.mvebu1img = $(board)/marvell-armada-xp-db/binary.0 +FILE_barebox-marvell-armada-xp-db.img = start_marvell_armada_xp_db.pblb.mvebu1img pblb-$(CONFIG_MACH_MARVELL_ARMADA_XP_DB) += start_marvell_armada_xp_db image-$(CONFIG_MACH_MARVELL_ARMADA_XP_DB) += barebox-marvell-armada-xp-db.img + +FILE_barebox-marvell-armada-xp-db-2nd.img = start_marvell_armada_xp_db.pblb image-$(CONFIG_MACH_MARVELL_ARMADA_XP_DB) += barebox-marvell-armada-xp-db-2nd.img -NETGEAR_RN2120_KWBOPTS = ${KWBOPTS} -i $(board)/netgear-rn2120/kwbimage.cfg -OPTS_start_netgear_rn2120.pblb.kwbimg = $(NETGEAR_RN2120_KWBOPTS) -FILE_barebox-netgear-rn2120.img = start_netgear_rn2120.pblb.kwbimg -FILE_barebox-netgear-rn2120-2nd.img = start_netgear_rn2120.pblb +BOOTSRC_start_netgear_rn2120.pblb.mvebu1img = nand +BINHDR_start_netgear_rn2120.pblb.mvebu1img = $(board)/netgear-rn2120/binary.0 +FLAGS_start_netgear_rn2120.pblb.mvebu1img = -B 0x20000:1 +FILE_barebox-netgear-rn2120.img = start_netgear_rn2120.pblb.mvebu1img pblb-$(CONFIG_MACH_NETGEAR_RN2120) += start_netgear_rn2120 image-$(CONFIG_MACH_NETGEAR_RN2120) += barebox-netgear-rn2120.img + +FILE_barebox-netgear-rn2120-2nd.img = start_netgear_rn2120.pblb image-$(CONFIG_MACH_NETGEAR_RN2120) += barebox-netgear-rn2120-2nd.img # ----------------------- Armada 38x based boards --------------------------- -TURRIS_OMNIA_KWBOPTS = ${KWBOPTS} -i $(board)/turris-omnia/kwbimage.cfg -OPTS_start_turris_omnia.pblb.kwbimg = $(TURRIS_OMNIA_KWBOPTS) -FILE_barebox-turris-omnia.img = start_turris_omnia.pblb.kwbimg -FILE_barebox-turris-omnia-2nd.img = start_turris_omnia.pblb +BOOTSRC_start_turris_omnia.pblb.mvebu1img = spi +BINHDR_start_turris_omnia.pblb.mvebu1img = $(board)/turris-omnia/binary.0 +FILE_barebox-turris-omnia.img = start_turris_omnia.pblb.mvebu1img pblb-$(CONFIG_MACH_TURRIS_OMNIA) += start_turris_omnia image-$(CONFIG_MACH_TURRIS_OMNIA) += barebox-turris-omnia.img -PLATHOME_OPENBLOCKS_AX3_KWBOPTS = ${KWBOPTS} -i $(board)/plathome-openblocks-ax3/kwbimage.cfg -OPTS_start_plathome_openblocks_ax3.pblb.kwbimg = $(PLATHOME_OPENBLOCKS_AX3_KWBOPTS) -FILE_barebox-plathome-openblocks-ax3.img = start_plathome_openblocks_ax3.pblb.kwbimg -FILE_barebox-plathome-openblocks-ax3-2nd.img = start_plathome_openblocks_ax3.pblb +BOOTSRC_start_plathome_openblocks_ax3.pblb.mvebu1img = spi +BINHDR_start_plathome_openblocks_ax3.pblb.mvebu1img = $(board)/plathome-openblocks-ax3/binary.0 +FILE_barebox-plathome-openblocks-ax3.img = start_plathome_openblocks_ax3.pblb.mvebu1img pblb-$(CONFIG_MACH_PLATHOME_OPENBLOCKS_AX3) += start_plathome_openblocks_ax3 image-$(CONFIG_MACH_PLATHOME_OPENBLOCKS_AX3) += barebox-plathome-openblocks-ax3.img + +FILE_barebox-plathome-openblocks-ax3-2nd.img = start_plathome_openblocks_ax3.pblb image-$(CONFIG_MACH_PLATHOME_OPENBLOCKS_AX3) += barebox-plathome-openblocks-ax3-2nd.img # ----------------------- Dove 88AP510 based boards --------------------------- SOLIDRUN_CUBOX_KWBOPTS = ${KWBOPTS} -i $(board)/solidrun-cubox/kwbimage.cfg OPTS_start_solidrun_cubox.pblb.kwbimg = $(SOLIDRUN_CUBOX_KWBOPTS) -FILE_barebox-solidrun-cubox.img = start_solidrun_cubox.pblb.kwbimg +FILE_barebox-solidrun-cubox.img = start_solidrun_cubox.pblb.kwbimg FILE_barebox-solidrun-cubox-2nd.img = start_solidrun_cubox.pblb pblb-$(CONFIG_MACH_SOLIDRUN_CUBOX) += start_solidrun_cubox image-$(CONFIG_MACH_SOLIDRUN_CUBOX) += barebox-solidrun-cubox.img @@ -87,7 +104,7 @@ image-$(CONFIG_MACH_SOLIDRUN_CUBOX) += barebox-solidrun-cubox-2nd.img # ----------------------- Kirkwood based boards --------------------------- GLOBALSCALE_GURUPLUG_KWBOPTS = ${KWBOPTS} -i $(board)/globalscale-guruplug/kwbimage.cfg OPTS_start_globalscale_guruplug.pblb.kwbimg = $(GLOBALSCALE_GURUPLUG_KWBOPTS) -FILE_barebox-globalscale-guruplug.img = start_globalscale_guruplug.pblb.kwbimg +FILE_barebox-globalscale-guruplug.img = start_globalscale_guruplug.pblb.kwbimg FILE_barebox-globalscale-guruplug-2nd.img = start_globalscale_guruplug.pblb pblb-$(CONFIG_MACH_GLOBALSCALE_GURUPLUG) += start_globalscale_guruplug image-$(CONFIG_MACH_GLOBALSCALE_GURUPLUG) += barebox-globalscale-guruplug.img @@ -95,7 +112,7 @@ image-$(CONFIG_MACH_GLOBALSCALE_GURUPLUG) += barebox-globalscale-guruplug-2nd.im PLATHOME_OPENBLOCKS_A6_KWBOPTS = ${KWBOPTS} -i $(board)/plathome-openblocks-a6/kwbimage.cfg OPTS_start_plathome_openblocks_a6.pblb.kwbimg = $(PLATHOME_OPENBLOCKS_A6_KWBOPTS) -FILE_barebox-plathome-openblocks-a6.img = start_plathome_openblocks_a6.pblb.kwbimg +FILE_barebox-plathome-openblocks-a6.img = start_plathome_openblocks_a6.pblb.kwbimg FILE_barebox-plathome-openblocks-a6-2nd.img = start_plathome_openblocks_a6.pblb pblb-$(CONFIG_MACH_PLATHOME_OPENBLOCKS_A6) += start_plathome_openblocks_a6 image-$(CONFIG_MACH_PLATHOME_OPENBLOCKS_A6) += barebox-plathome-openblocks-a6.img @@ -103,8 +120,12 @@ image-$(CONFIG_MACH_PLATHOME_OPENBLOCKS_A6) += barebox-plathome-openblocks-a6-2n USI_TOPKICK_KWBOPTS = ${KWBOPTS} -i $(board)/usi-topkick/kwbimage.cfg OPTS_start_usi_topkick.pblb.kwbimg = $(USI_TOPKICK_KWBOPTS) -FILE_barebox-usi-topkick.img = start_usi_topkick.pblb.kwbimg +FILE_barebox-usi-topkick.img = start_usi_topkick.pblb.kwbimg FILE_barebox-usi-topkick-2nd.img = start_usi_topkick.pblb pblb-$(CONFIG_MACH_USI_TOPKICK) += start_usi_topkick image-$(CONFIG_MACH_USI_TOPKICK) += barebox-usi-topkick.img image-$(CONFIG_MACH_USI_TOPKICK) += barebox-usi-topkick-2nd.img + +# ensure that an image depends on its included binhdrs +$(foreach f,$(pblb-y),$(eval $$(obj)/$f.pblb.mvebu0img: $$(BINHDR_$f.pblb.mvebu0img))) +$(foreach f,$(pblb-y),$(eval $$(obj)/$f.pblb.mvebu1img: $$(BINHDR_$f.pblb.mvebu1img))) diff --git a/images/Makefile.stm32mp1 b/images/Makefile.stm32mp index d26231cd92..c49b1d72b7 100644 --- a/images/Makefile.stm32mp1 +++ b/images/Makefile.stm32mp @@ -3,6 +3,6 @@ # barebox image generation Makefile for STMicroelectronics MP1 # -pblb-$(CONFIG_MACH_STM32MP157C_DK2) += start_stm32mp157c_dk2.pblb +pblb-$(CONFIG_MACH_STM32MP157C_DK2) += start_stm32mp157c_dk2 FILE_barebox-stm32mp157c-dk2.img = start_stm32mp157c_dk2.pblb image-$(CONFIG_MACH_STM32MP157C_DK2) += barebox-stm32mp157c-dk2.img diff --git a/include/common.h b/include/common.h index b1294978d7..8cc8e14fb7 100644 --- a/include/common.h +++ b/include/common.h @@ -93,6 +93,16 @@ unsigned long long strtoull_suffix(const char *str, char **endp, int base); */ extern int (*barebox_main)(void); +enum autoboot_state { + AUTOBOOT_UNKNOWN, + AUTOBOOT_ABORT, + AUTOBOOT_MENU, + AUTOBOOT_BOOT, +}; + +void set_autoboot_state(enum autoboot_state autoboot); +enum autoboot_state do_autoboot_countdown(void); + void __noreturn start_barebox(void); void shutdown_barebox(void); @@ -117,7 +127,8 @@ void shutdown_barebox(void); int mem_parse_options(int argc, char *argv[], char *optstr, int *mode, char **sourcefile, char **destfile, int *swab); int memcpy_parse_options(int argc, char *argv[], int *sourcefd, - int *destfd, loff_t *count); + int *destfd, loff_t *count, + int rwsize, int destmode); #define RW_BUF_SIZE (unsigned)4096 extern const char version_string[]; diff --git a/include/gpio.h b/include/gpio.h index 38d6ba2df9..e822fd5347 100644 --- a/include/gpio.h +++ b/include/gpio.h @@ -153,5 +153,6 @@ int gpiochip_add(struct gpio_chip *chip); void gpiochip_remove(struct gpio_chip *chip); int gpio_get_num(struct device_d *dev, int gpio); +struct gpio_chip *gpio_get_chip(int gpio); #endif /* __GPIO_H */ diff --git a/include/hwspinlock.h b/include/hwspinlock.h new file mode 100644 index 0000000000..ba21c6d296 --- /dev/null +++ b/include/hwspinlock.h @@ -0,0 +1,31 @@ +/* SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause */ +/* + * Copyright (C) 2018, STMicroelectronics - All Rights Reserved + */ + +#ifndef __HWSPINLOCK_H +#define __HWSPINLOCK_H + +struct hwspinlock { /* TODO to be implemented */ }; + +static inline int hwspinlock_get_by_index(struct device_d *dev, + int index, + struct hwspinlock *hws) +{ + return -ENOSYS; +} + +static inline int hwspinlock_lock_timeout(struct hwspinlock *hws, + int timeout_ms) +{ + return -ENOSYS; +} + +static inline int hwspinlock_unlock(struct hwspinlock *hws) +{ + return -ENOSYS; +} + +struct hwspinlock_ops { /* TODO to be implemented */ }; + +#endif /* __HWSPINLOCK_H */ diff --git a/include/linux/clk.h b/include/linux/clk.h index b9c5e0ab04..c3aeea80dd 100644 --- a/include/linux/clk.h +++ b/include/linux/clk.h @@ -340,6 +340,8 @@ struct clk_divider { int table_size; }; +#define clk_div_mask(width) ((1 << (width)) - 1) + #define CLK_DIVIDER_POWER_OF_TWO (1 << 1) #define CLK_DIVIDER_HIWORD_MASK (1 << 3) #define CLK_DIVIDER_READ_ONLY (1 << 5) @@ -354,6 +356,14 @@ unsigned long divider_recalc_rate(struct clk *clk, unsigned long parent_rate, const struct clk_div_table *table, unsigned long flags, unsigned long width); +long divider_round_rate(struct clk *clk, unsigned long rate, + unsigned long *prate, const struct clk_div_table *table, + u8 width, unsigned long flags); + +int divider_get_val(unsigned long rate, unsigned long parent_rate, + const struct clk_div_table *table, u8 width, + unsigned long flags); + struct clk *clk_divider_alloc(const char *name, const char *parent, unsigned clk_flags, void __iomem *reg, u8 shift, u8 width, unsigned div_flags); diff --git a/include/linux/nvmem-consumer.h b/include/linux/nvmem-consumer.h index 32ea46e3bf..9e0fd4265e 100644 --- a/include/linux/nvmem-consumer.h +++ b/include/linux/nvmem-consumer.h @@ -103,6 +103,6 @@ static inline struct nvmem_device *of_nvmem_device_get(struct device_node *np, { return ERR_PTR(-ENOSYS); } -#endif /* CONFIG_NVMEM && CONFIG_OF */ +#endif /* CONFIG_NVMEM && CONFIG_OFTREE */ #endif /* ifndef _LINUX_NVMEM_CONSUMER_H */ diff --git a/include/linux/pstore.h b/include/linux/pstore.h index 15e1e3d6fa..f598f31a54 100644 --- a/include/linux/pstore.h +++ b/include/linux/pstore.h @@ -64,8 +64,6 @@ struct pstore_record { struct pstore_info { struct module *owner; char *name; - char *buf; - size_t bufsize; int flags; int (*open)(struct pstore_info *psi); int (*close)(struct pstore_info *psi); @@ -85,6 +83,7 @@ struct pstore_info { #ifdef CONFIG_FS_PSTORE extern int pstore_register(struct pstore_info *); extern bool pstore_cannot_block_path(enum kmsg_dump_reason reason); +extern void pstore_log(const char *msg); #else static inline int pstore_register(struct pstore_info *psi) @@ -96,6 +95,9 @@ pstore_cannot_block_path(enum kmsg_dump_reason reason) { return false; } +static inline void pstore_log(const char *msg) +{ +} #endif #endif /*_LINUX_PSTORE_H*/ diff --git a/include/mfd/syscon.h b/include/mfd/syscon.h index 902f9fa2f3..ac33f2d347 100644 --- a/include/mfd/syscon.h +++ b/include/mfd/syscon.h @@ -22,6 +22,9 @@ void __iomem *syscon_base_lookup_by_phandle (struct device_node *np, const char *property); struct regmap *syscon_node_to_regmap(struct device_node *np); struct regmap *syscon_regmap_lookup_by_compatible(const char *s); +extern struct regmap *syscon_regmap_lookup_by_phandle( + struct device_node *np, + const char *property); #else static inline void __iomem *syscon_base_lookup_by_pdevname(const char *s) { @@ -42,6 +45,12 @@ static inline struct regmap *syscon_regmap_lookup_by_compatible(const char *s) { return ERR_PTR(-ENOSYS); } +static inline struct regmap *syscon_regmap_lookup_by_phandle( + struct device_node *np, + const char *property) +{ + return ERR_PTR(-ENOSYS); +} #endif #endif diff --git a/include/of_device.h b/include/of_device.h index 44c1c0f545..54410ad12f 100644 --- a/include/of_device.h +++ b/include/of_device.h @@ -22,7 +22,7 @@ static inline int of_driver_match_device(struct device_d *dev, extern const void *of_device_get_match_data(const struct device_d *dev); -#else /* CONFIG_OF */ +#else /* CONFIG_OFTREE */ static inline int of_driver_match_device(struct device_d *dev, const struct device_d *drv) @@ -43,6 +43,6 @@ static inline const struct of_device_id *__of_match_device( #define of_match_device(matches, dev) \ __of_match_device(matches, (dev)) -#endif /* CONFIG_OF */ +#endif /* CONFIG_OFTREE */ #endif /* _LINUX_OF_DEVICE_H */ diff --git a/include/reset_source.h b/include/reset_source.h index 86e415abcf..13bc3bcfde 100644 --- a/include/reset_source.h +++ b/include/reset_source.h @@ -22,6 +22,7 @@ enum reset_src_type { RESET_JTAG, /* JTAG reset */ RESET_THERM, /* SoC shut down because of overtemperature */ RESET_EXT, /* External reset through device pin */ + RESET_BROWNOUT, /* Brownout Reset */ }; #ifdef CONFIG_RESET_SOURCE diff --git a/include/soc/stm32/gpio.h b/include/soc/stm32/gpio.h new file mode 100644 index 0000000000..13b492a693 --- /dev/null +++ b/include/soc/stm32/gpio.h @@ -0,0 +1,120 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2015 Maxime Coquelin + * Copyright (C) 2017 STMicroelectronics + * Copyright (C) 2019 Ahmad Fatoum, Pengutronix + */ + +#ifndef __STM32_GPIO_H__ +#define __STM32_GPIO_H__ + +#include <io.h> + +#define STM32_GPIO_MODER 0x00 +#define STM32_GPIO_TYPER 0x04 +#define STM32_GPIO_SPEEDR 0x08 +#define STM32_GPIO_PUPDR 0x0c +#define STM32_GPIO_IDR 0x10 +#define STM32_GPIO_ODR 0x14 +#define STM32_GPIO_BSRR 0x18 +#define STM32_GPIO_LCKR 0x1c +#define STM32_GPIO_AFRL 0x20 +#define STM32_GPIO_AFRH 0x24 + +#define STM32_PIN_GPIO 0 +#define STM32_PIN_AF(x) ((x) + 1) +#define STM32_PIN_ANALOG (STM32_PIN_AF(15) + 1) + +#define STM32_GPIO_PINS_PER_BANK 16 + +enum stm32_pin_bias { STM32_PIN_NO_BIAS, STM32_PIN_PULL_UP, STM32_PIN_PULL_DOWN }; +enum stm32_pin_out_type { STM32_PIN_OUT_PUSHPULL, STM32_PIN_OUT_OPENDRAIN }; + +static inline void __stm32_pmx_set_speed(void __iomem *base, + unsigned offset, u32 speed) +{ + u32 val = readl(base + STM32_GPIO_SPEEDR); + val &= ~GENMASK(offset * 2 + 1, offset * 2); + val |= speed << (offset * 2); + writel(val, base + STM32_GPIO_SPEEDR); +} + +static inline void __stm32_pmx_set_bias(void __iomem *base, unsigned offset, + enum stm32_pin_bias bias) +{ + u32 val = readl(base + STM32_GPIO_PUPDR); + val &= ~GENMASK(offset * 2 + 1, offset * 2); + val |= bias << (offset * 2); + writel(val, base + STM32_GPIO_PUPDR); +} + +static inline void __stm32_pmx_set_mode(void __iomem *base, + int pin, u32 mode, u32 alt) +{ + u32 val; + int alt_shift = (pin % 8) * 4; + int alt_offset = STM32_GPIO_AFRL + (pin / 8) * 4; + + val = readl(base + alt_offset); + val &= ~GENMASK(alt_shift + 3, alt_shift); + val |= (alt << alt_shift); + writel(val, base + alt_offset); + + val = readl(base + STM32_GPIO_MODER); + val &= ~GENMASK(pin * 2 + 1, pin * 2); + val |= mode << (pin * 2); + writel(val, base + STM32_GPIO_MODER); +} + +static inline void __stm32_pmx_get_mode(void __iomem *base, int pin, + u32 *mode, u32 *alt) +{ + u32 val; + int alt_shift = (pin % 8) * 4; + int alt_offset = STM32_GPIO_AFRL + (pin / 8) * 4; + + val = readl(base + alt_offset); + val &= GENMASK(alt_shift + 3, alt_shift); + *alt = val >> alt_shift; + + val = readl(base + STM32_GPIO_MODER); + val &= GENMASK(pin * 2 + 1, pin * 2); + *mode = val >> (pin * 2); +} + +static inline int __stm32_pmx_gpio_get(void __iomem *base, unsigned offset) +{ + return !!(readl(base + STM32_GPIO_IDR) & BIT(offset)); +} + +static inline void __stm32_pmx_gpio_set(void __iomem *base, unsigned offset, + unsigned value) +{ + if (!value) + offset += STM32_GPIO_PINS_PER_BANK; + + writel(BIT(offset), base + STM32_GPIO_BSRR); +} + +static inline void __stm32_pmx_gpio_input(void __iomem *base, unsigned offset) +{ + __stm32_pmx_set_mode(base, offset, 0, 0); +} + +static inline void __stm32_pmx_gpio_output(void __iomem *base, unsigned offset, + unsigned value) +{ + __stm32_pmx_gpio_set(base, offset, value); + __stm32_pmx_set_mode(base, offset, 1, 0); +} + +static inline void __stm32_pmx_set_output_type(void __iomem *base, unsigned offset, + enum stm32_pin_out_type type) +{ + u32 val = readl(base + STM32_GPIO_TYPER); + val &= ~BIT(offset); + val |= type << offset; + writel(val, base + STM32_GPIO_TYPER); +} + +#endif /* __STM32_GPIO_H__ */ diff --git a/lib/misc.c b/lib/misc.c index 18153bb4dc..7add1fe3b4 100644 --- a/lib/misc.c +++ b/lib/misc.c @@ -173,10 +173,11 @@ int mem_parse_options(int argc, char *argv[], char *optstr, int *mode, } int memcpy_parse_options(int argc, char *argv[], int *sourcefd, - int *destfd, loff_t *count) + int *destfd, loff_t *count, + int rwsize, int destmode) { loff_t dest, src; - int mode = 0; + int mode = rwsize; char *sourcefile = NULL; char *destfile = NULL; struct stat statbuf; @@ -212,7 +213,7 @@ int memcpy_parse_options(int argc, char *argv[], int *sourcefd, if (*sourcefd < 0) return -1; - *destfd = open_and_lseek(destfile, O_WRONLY | O_CREAT | mode, dest); + *destfd = open_and_lseek(destfile, mode | destmode, dest); if (*destfd < 0) { close(*sourcefd); return -1; diff --git a/pbl/decomp.c b/pbl/decomp.c index c8014c403f..72a162309a 100644 --- a/pbl/decomp.c +++ b/pbl/decomp.c @@ -7,6 +7,7 @@ #include <common.h> #include <pbl.h> +#include <debug_ll.h> #define STATIC static @@ -40,6 +41,9 @@ STATIC int decompress(u8 *input, int in_len, static void noinline errorfn(char *error) { + puts_ll("ERROR: "); + puts_ll(error); + puts_ll("\nHANG\n"); while (1); } diff --git a/scripts/.gitignore b/scripts/.gitignore index 11ac77eb37..45c81bf8f4 100644 --- a/scripts/.gitignore +++ b/scripts/.gitignore @@ -28,3 +28,4 @@ mxs-usb-loader /omap3-usb-loader omap4_usbboot omap3-usb-loader +mips-relocs diff --git a/scripts/Kbuild.include b/scripts/Kbuild.include index 5e7255db3a..a2dbbd8a00 100644 --- a/scripts/Kbuild.include +++ b/scripts/Kbuild.include @@ -161,7 +161,7 @@ clean := -f $(if $(KBUILD_SRC),$(srctree)/)scripts/Makefile.clean obj # Prefix -I with $(srctree) if it is not an absolute path. # skip if -I has no parameter addtree = $(if $(patsubst -I%,%,$(1)), \ -$(if $(filter-out -I/%,$(1)),$(patsubst -I%,-I$(srctree)/%,$(1))) $(1)) +$(if $(filter-out -I/%,$(1)),$(patsubst -I%,-I$(srctree)/%,$(1))) $(1),$(1)) # Find all -I options and call addtree flags = $(foreach o,$($(1)),$(if $(filter -I%,$(o)),$(call addtree,$(o)),$(o))) diff --git a/scripts/Makefile b/scripts/Makefile index 1af5f9fc98..7d64da6b55 100644 --- a/scripts/Makefile +++ b/scripts/Makefile @@ -13,7 +13,7 @@ hostprogs-y += kernel-install hostprogs-$(CONFIG_IMD) += bareboximd hostprogs-$(CONFIG_KALLSYMS) += kallsyms hostprogs-$(CONFIG_MIPS) += mips-relocs -hostprogs-$(CONFIG_MVEBU_HOSTTOOLS) += kwbimage kwboot +hostprogs-$(CONFIG_MVEBU_HOSTTOOLS) += kwbimage kwboot mvebuimg hostprogs-$(CONFIG_ARCH_NETX) += gen_netx_image hostprogs-$(CONFIG_ARCH_OMAP) += omap_signGP mk-omap-image hostprogs-$(CONFIG_ARCH_S5PCxx) += s5p_cksum diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib index 87bff2d296..75e1734f79 100644 --- a/scripts/Makefile.lib +++ b/scripts/Makefile.lib @@ -503,6 +503,9 @@ quiet_cmd_imx_image = IMX-IMG $@ quiet_cmd_kwb_image = KWB $@ cmd_kwb_image = scripts/kwbimage -p $< $(OPTS_$(@F)) -o $@ +quiet_cmd_mvebu1_image = MVIMG $@ + cmd_mvebu1_image = scripts/mvebuimg -v 1 create -o $@ $(foreach b,$(BINHDR_$(@F)),-b $b) $(FLAGS_$(@F)) $(BOOTSRC_$(@F)) $< + quiet_cmd_cboot_bct = BCT $@ cmd_cboot_bct = $(objtree)/scripts/tegra/cbootimage -gbct -s $(soc) $< $@ diff --git a/scripts/gdb/helper.py b/scripts/gdb/helper.py new file mode 100644 index 0000000000..4041789890 --- /dev/null +++ b/scripts/gdb/helper.py @@ -0,0 +1,60 @@ +#!/usr/bin/env python + +import gdb + +try: + from elftools.elf.elffile import ELFFile + from elftools.common.exceptions import ELFError +except ImportError: + gdb.write("The barebox helper requires pyelftools\n", gdb.STDERR) + exit(1) + + +class BBSymbols(gdb.Command): + + def __init__(self): + super(BBSymbols, self).__init__("bb-load-symbols", gdb.COMMAND_FILES, + gdb.COMPLETE_FILENAME) + + def invoke(self, argument, from_tty): + path = argument + f = open(path, 'rb') + + try: + elf = ELFFile(f) + except ELFError: + gdb.write("Selected file is not an ELF file\n", gdb.STDERR) + return + + section = elf.get_section_by_name(".symtab") + if section is None: + gdb.write("Section .symtab not found\n", gdb.STDERR) + return + symbol = section.get_symbol_by_name("pbl_barebox_break") + if not symbol: + gdb.write("Symbol pbl_barebox_break in section {} in file {} not found\n" + .format(section.name, self.path), gdb.STDERR) + return + symbol = symbol[0] + pc = gdb.parse_and_eval("$pc") + symbol_address = int(symbol.entry.st_value) + address = int(pc) - symbol_address + 1 + gdb.execute("symbol-file") + gdb.execute("add-symbol-file {} {}".format(path, address)) + + +BBSymbols() + + +class BBSkip(gdb.Command): + + def __init__(self): + super(BBSkip, self).__init__("bb-skip-break", gdb.COMMAND_BREAKPOINTS) + + def invoke(self, arg, from_tty): + pc = gdb.parse_and_eval("$pc") + nop_address = int(pc) + 2 + gdb.execute("jump *{}".format(nop_address)) + + +BBSkip() diff --git a/scripts/kconfig/.gitignore b/scripts/kconfig/.gitignore index 0aabc1d6a1..b5bf92f66d 100644 --- a/scripts/kconfig/.gitignore +++ b/scripts/kconfig/.gitignore @@ -2,6 +2,7 @@ # Generated files # *.moc +*conf-cfg # # configuration programs diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile index 63b609243d..3f327e21f6 100644 --- a/scripts/kconfig/Makefile +++ b/scripts/kconfig/Makefile @@ -76,15 +76,13 @@ savedefconfig: $(obj)/conf defconfig: $(obj)/conf ifeq ($(KBUILD_DEFCONFIG),) $< $(silent) --defconfig $(Kconfig) -else -ifneq ($(wildcard $(srctree)/arch/$(SRCARCH)/configs/$(KBUILD_DEFCONFIG)),) +else ifneq ($(wildcard $(srctree)/arch/$(SRCARCH)/configs/$(KBUILD_DEFCONFIG)),) @$(kecho) "*** Default configuration is based on '$(KBUILD_DEFCONFIG)'" $(Q)$< $(silent) --defconfig=arch/$(SRCARCH)/configs/$(KBUILD_DEFCONFIG) $(Kconfig) else @$(kecho) "*** Default configuration is based on target '$(KBUILD_DEFCONFIG)'" $(Q)$(MAKE) -f $(srctree)/Makefile $(KBUILD_DEFCONFIG) endif -endif %_defconfig: $(obj)/conf $(Q)$< $(silent) --defconfig=arch/$(SRCARCH)/configs/$@ $(Kconfig) @@ -142,75 +140,69 @@ help: @echo ' testconfig - Run Kconfig unit tests (requires python3 and pytest)' # =========================================================================== -# Shared Makefile for the various kconfig executables: -# conf: Used for defconfig, oldconfig and related targets # object files used by all kconfig flavours +common-objs := confdata.o expr.o lexer.lex.o parser.tab.o preprocess.o \ + symbol.o -conf-objs := conf.o zconf.tab.o - -hostprogs-y := conf +$(obj)/lexer.lex.o: $(obj)/parser.tab.h +HOSTCFLAGS_lexer.lex.o := -I $(srctree)/$(src) +HOSTCFLAGS_parser.tab.o := -I $(srctree)/$(src) -targets += zconf.lex.c - -# generated files seem to need this to find local include files -HOSTCFLAGS_zconf.lex.o := -I$(src) -HOSTCFLAGS_zconf.tab.o := -I$(src) +# conf: Used for defconfig, oldconfig and related targets +hostprogs-y += conf +conf-objs := conf.o $(common-objs) # nconf: Used for the nconfig target based on ncurses hostprogs-y += nconf -nconf-objs := nconf.o zconf.tab.o nconf.gui.o +nconf-objs := nconf.o nconf.gui.o $(common-objs) -HOSTLDLIBS_nconf = $(shell . $(obj)/.nconf-cfg && echo $$libs) -HOSTCFLAGS_nconf.o = $(shell . $(obj)/.nconf-cfg && echo $$cflags) -HOSTCFLAGS_nconf.gui.o = $(shell . $(obj)/.nconf-cfg && echo $$cflags) +HOSTLDLIBS_nconf = $(shell . $(obj)/nconf-cfg && echo $$libs) +HOSTCFLAGS_nconf.o = $(shell . $(obj)/nconf-cfg && echo $$cflags) +HOSTCFLAGS_nconf.gui.o = $(shell . $(obj)/nconf-cfg && echo $$cflags) -$(obj)/nconf.o $(obj)/nconf.gui.o: $(obj)/.nconf-cfg +$(obj)/nconf.o $(obj)/nconf.gui.o: $(obj)/nconf-cfg # mconf: Used for the menuconfig target based on lxdialog hostprogs-y += mconf lxdialog := checklist.o inputbox.o menubox.o textbox.o util.o yesno.o -mconf-objs := mconf.o zconf.tab.o $(addprefix lxdialog/, $(lxdialog)) +mconf-objs := mconf.o $(addprefix lxdialog/, $(lxdialog)) $(common-objs) -HOSTLDLIBS_mconf = $(shell . $(obj)/.mconf-cfg && echo $$libs) +HOSTLDLIBS_mconf = $(shell . $(obj)/mconf-cfg && echo $$libs) $(foreach f, mconf.o $(lxdialog), \ - $(eval HOSTCFLAGS_$f = $$(shell . $(obj)/.mconf-cfg && echo $$$$cflags))) + $(eval HOSTCFLAGS_$f = $$(shell . $(obj)/mconf-cfg && echo $$$$cflags))) -$(obj)/mconf.o: $(obj)/.mconf-cfg -$(addprefix $(obj)/lxdialog/, $(lxdialog)): $(obj)/.mconf-cfg +$(obj)/mconf.o: $(obj)/mconf-cfg +$(addprefix $(obj)/lxdialog/, $(lxdialog)): $(obj)/mconf-cfg # qconf: Used for the xconfig target based on Qt hostprogs-y += qconf qconf-cxxobjs := qconf.o -qconf-objs := zconf.tab.o +qconf-objs := images.o $(common-objs) -HOSTLDLIBS_qconf = $(shell . $(obj)/.qconf-cfg && echo $$libs) -HOSTCXXFLAGS_qconf.o = $(shell . $(obj)/.qconf-cfg && echo $$cflags) +HOSTLDLIBS_qconf = $(shell . $(obj)/qconf-cfg && echo $$libs) +HOSTCXXFLAGS_qconf.o = $(shell . $(obj)/qconf-cfg && echo $$cflags) -$(obj)/qconf.o: $(obj)/.qconf-cfg $(obj)/qconf.moc +$(obj)/qconf.o: $(obj)/qconf-cfg $(obj)/qconf.moc quiet_cmd_moc = MOC $@ - cmd_moc = $(shell . $(obj)/.qconf-cfg && echo $$moc) -i $< -o $@ + cmd_moc = $(shell . $(obj)/qconf-cfg && echo $$moc) -i $< -o $@ -$(obj)/%.moc: $(src)/%.h $(obj)/.qconf-cfg +$(obj)/%.moc: $(src)/%.h $(obj)/qconf-cfg $(call cmd,moc) # gconf: Used for the gconfig target based on GTK+ hostprogs-y += gconf -gconf-objs := gconf.o zconf.tab.o - -HOSTLDLIBS_gconf = $(shell . $(obj)/.gconf-cfg && echo $$libs) -HOSTCFLAGS_gconf.o = $(shell . $(obj)/.gconf-cfg && echo $$cflags) +gconf-objs := gconf.o images.o $(common-objs) -$(obj)/gconf.o: $(obj)/.gconf-cfg +HOSTLDLIBS_gconf = $(shell . $(obj)/gconf-cfg && echo $$libs) +HOSTCFLAGS_gconf.o = $(shell . $(obj)/gconf-cfg && echo $$cflags) -$(obj)/zconf.tab.o: $(obj)/zconf.lex.c +$(obj)/gconf.o: $(obj)/gconf-cfg # check if necessary packages are available, and configure build flags -define filechk_conf_cfg - $(CONFIG_SHELL) $< -endef +filechk_conf_cfg = $(CONFIG_SHELL) $< -$(obj)/.%conf-cfg: $(src)/%conf-cfg.sh FORCE +$(obj)/%conf-cfg: $(src)/%conf-cfg.sh FORCE $(call filechk,conf_cfg) -clean-files += .*conf-cfg +clean-files += *conf-cfg diff --git a/scripts/kconfig/conf.c b/scripts/kconfig/conf.c index 98e0c7a346..ef3678c24b 100644 --- a/scripts/kconfig/conf.c +++ b/scripts/kconfig/conf.c @@ -1,6 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0 /* * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> - * Released under the terms of the GNU GPL v2.0. */ #include <ctype.h> @@ -488,7 +488,6 @@ int main(int ac, char **av) const char *progname = av[0]; int opt; const char *name, *defconfig_file = NULL /* gcc uninit */; - struct stat tmpstat; int no_conf_write = 0; tty_stdio = isatty(0) && isatty(1); @@ -560,18 +559,6 @@ int main(int ac, char **av) name = av[optind]; conf_parse(name); //zconfdump(stdout); - if (sync_kconfig) { - name = conf_get_configname(); - if (stat(name, &tmpstat)) { - fprintf(stderr, "***\n" - "*** Configuration file \"%s\" not found!\n" - "***\n" - "*** Please run some configurator (e.g. \"make oldconfig\" or\n" - "*** \"make menuconfig\" or \"make xconfig\").\n" - "***\n", name); - exit(1); - } - } switch (input_mode) { case defconfig: diff --git a/scripts/kconfig/confdata.c b/scripts/kconfig/confdata.c index 91d0a5c014..6006154d36 100644 --- a/scripts/kconfig/confdata.c +++ b/scripts/kconfig/confdata.c @@ -1,12 +1,14 @@ +// SPDX-License-Identifier: GPL-2.0 /* * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> - * Released under the terms of the GNU GPL v2.0. */ +#include <sys/mman.h> #include <sys/stat.h> #include <ctype.h> #include <errno.h> #include <fcntl.h> +#include <limits.h> #include <stdarg.h> #include <stdio.h> #include <stdlib.h> @@ -35,6 +37,52 @@ static bool is_dir(const char *path) return S_ISDIR(st.st_mode); } +/* return true if the given two files are the same, false otherwise */ +static bool is_same(const char *file1, const char *file2) +{ + int fd1, fd2; + struct stat st1, st2; + void *map1, *map2; + bool ret = false; + + fd1 = open(file1, O_RDONLY); + if (fd1 < 0) + return ret; + + fd2 = open(file2, O_RDONLY); + if (fd2 < 0) + goto close1; + + ret = fstat(fd1, &st1); + if (ret) + goto close2; + ret = fstat(fd2, &st2); + if (ret) + goto close2; + + if (st1.st_size != st2.st_size) + goto close2; + + map1 = mmap(NULL, st1.st_size, PROT_READ, MAP_PRIVATE, fd1, 0); + if (map1 == MAP_FAILED) + goto close2; + + map2 = mmap(NULL, st2.st_size, PROT_READ, MAP_PRIVATE, fd2, 0); + if (map2 == MAP_FAILED) + goto close2; + + if (bcmp(map1, map2, st1.st_size)) + goto close2; + + ret = true; +close2: + close(fd2); +close1: + close(fd1); + + return ret; +} + /* * Create the parent directory of the given path. * @@ -74,6 +122,47 @@ static int make_parent_dir(const char *path) return 0; } +static char depfile_path[PATH_MAX]; +static size_t depfile_prefix_len; + +/* touch depfile for symbol 'name' */ +static int conf_touch_dep(const char *name) +{ + int fd, ret; + const char *s; + char *d, c; + + /* check overflow: prefix + name + ".h" + '\0' must fit in buffer. */ + if (depfile_prefix_len + strlen(name) + 3 > sizeof(depfile_path)) + return -1; + + d = depfile_path + depfile_prefix_len; + s = name; + + while ((c = *s++)) + *d++ = (c == '_') ? '/' : tolower(c); + strcpy(d, ".h"); + + /* Assume directory path already exists. */ + fd = open(depfile_path, O_WRONLY | O_CREAT | O_TRUNC, 0644); + if (fd == -1) { + if (errno != ENOENT) + return -1; + + ret = make_parent_dir(depfile_path); + if (ret) + return ret; + + /* Try it again. */ + fd = open(depfile_path, O_WRONLY | O_CREAT | O_TRUNC, 0644); + if (fd == -1) + return -1; + } + close(fd); + + return 0; +} + struct conf_printer { void (*print_symbol)(FILE *, struct symbol *, const char *, void *); void (*print_comment)(FILE *, const char *, void *); @@ -137,7 +226,7 @@ const char *conf_get_configname(void) return name ? name : ".config"; } -const char *conf_get_autoconfig_name(void) +static const char *conf_get_autoconfig_name(void) { char *name = getenv("KCONFIG_AUTOCONFIG"); @@ -152,7 +241,7 @@ char *conf_get_default_confname(void) name = expand_string(conf_defname); env = getenv(SRCTREE); if (env) { - sprintf(fullname, "%s/%s", env, name); + snprintf(fullname, sizeof(fullname), "%s/%s", env, name); if (is_present(fullname)) return fullname; } @@ -186,14 +275,6 @@ static int conf_set_sym_val(struct symbol *sym, int def, int def_flags, char *p) conf_warning("symbol value '%s' invalid for %s", p, sym->name); return 1; - case S_OTHER: - if (*p != '"') { - for (p2 = p; *p2 && !isspace(*p2); p2++) - ; - sym->type = S_STRING; - goto done; - } - /* fall through */ case S_STRING: if (*p++ != '"') break; @@ -212,7 +293,6 @@ static int conf_set_sym_val(struct symbol *sym, int def, int def_flags, char *p) /* fall through */ case S_INT: case S_HEX: - done: if (sym_string_valid(sym, p)) { sym->def[def].val = xstrdup(p); sym->flags |= def_flags; @@ -363,7 +443,7 @@ load: sym = sym_find(line + 2 + strlen(CONFIG_)); if (!sym) { sym_add_change_count(1); - goto setsym; + continue; } } else { sym = sym_lookup(line + 2 + strlen(CONFIG_), 0); @@ -393,17 +473,22 @@ load: if (*p2 == '\r') *p2 = 0; } - if (def == S_DEF_USER) { - sym = sym_find(line + strlen(CONFIG_)); - if (!sym) { + + sym = sym_find(line + strlen(CONFIG_)); + if (!sym) { + if (def == S_DEF_AUTO) + /* + * Reading from include/config/auto.conf + * If CONFIG_FOO previously existed in + * auto.conf but it is missing now, + * include/config/foo.h must be touched. + */ + conf_touch_dep(line + strlen(CONFIG_)); + else sym_add_change_count(1); - goto setsym; - } - } else { - sym = sym_lookup(line + strlen(CONFIG_), 0); - if (sym->type == S_UNKNOWN) - sym->type = S_OTHER; + continue; } + if (sym->flags & def_flags) { conf_warning("override: reassigning to symbol %s", sym->name); } @@ -416,7 +501,7 @@ load: continue; } -setsym: + if (sym && sym_is_choice_value(sym)) { struct symbol *cs = prop_get_symbol(sym_get_choice_prop(sym)); switch (sym->def[def].tri) { @@ -669,7 +754,6 @@ static void conf_write_symbol(FILE *fp, struct symbol *sym, const char *str; switch (sym->type) { - case S_OTHER: case S_UNKNOWN: break; case S_STRING: @@ -780,40 +864,35 @@ int conf_write(const char *name) FILE *out; struct symbol *sym; struct menu *menu; - const char *basename; const char *str; - char dirname[PATH_MAX+1], tmpname[PATH_MAX+22], newname[PATH_MAX+8]; + char tmpname[PATH_MAX + 1], oldname[PATH_MAX + 1]; char *env; + bool need_newline = false; + + if (!name) + name = conf_get_configname(); + + if (!*name) { + fprintf(stderr, "config name is empty\n"); + return -1; + } + + if (is_dir(name)) { + fprintf(stderr, "%s: Is a directory\n", name); + return -1; + } + + if (make_parent_dir(name)) + return -1; - dirname[0] = 0; - if (name && name[0]) { - char *slash; - - if (is_dir(name)) { - strcpy(dirname, name); - strcat(dirname, "/"); - basename = conf_get_configname(); - } else if ((slash = strrchr(name, '/'))) { - int size = slash - name + 1; - memcpy(dirname, name, size); - dirname[size] = 0; - if (slash[1]) - basename = slash + 1; - else - basename = conf_get_configname(); - } else - basename = name; - } else - basename = conf_get_configname(); - - sprintf(newname, "%s%s", dirname, basename); env = getenv("KCONFIG_OVERWRITECONFIG"); - if (!env || !*env) { - sprintf(tmpname, "%s.tmpconfig.%d", dirname, (int)getpid()); - out = fopen(tmpname, "w"); - } else { + if (env && *env) { *tmpname = 0; - out = fopen(newname, "w"); + out = fopen(name, "w"); + } else { + snprintf(tmpname, sizeof(tmpname), "%s.%d.tmp", + name, (int)getpid()); + out = fopen(tmpname, "w"); } if (!out) return 1; @@ -834,12 +913,16 @@ int conf_write(const char *name) "#\n" "# %s\n" "#\n", str); + need_newline = false; } else if (!(sym->flags & SYMBOL_CHOICE)) { sym_calc_value(sym); if (!(sym->flags & SYMBOL_WRITE)) goto next; + if (need_newline) { + fprintf(out, "\n"); + need_newline = false; + } sym->flags &= ~SYMBOL_WRITE; - conf_write_symbol(out, sym, &kconfig_printer_cb, NULL); } @@ -851,6 +934,12 @@ next: if (menu->next) menu = menu->next; else while ((menu = menu->parent)) { + if (!menu->sym && menu_is_visible(menu) && + menu != &rootmenu) { + str = menu_get_prompt(menu); + fprintf(out, "# end of %s\n", str); + need_newline = true; + } if (menu->next) { menu = menu->next; break; @@ -860,14 +949,20 @@ next: fclose(out); if (*tmpname) { - strcat(dirname, basename); - strcat(dirname, ".old"); - rename(newname, dirname); - if (rename(tmpname, newname)) + if (is_same(name, tmpname)) { + conf_message("No change to %s", name); + unlink(tmpname); + sym_set_change_count(0); + return 0; + } + + snprintf(oldname, sizeof(oldname), "%s.old", name); + rename(name, oldname); + if (rename(tmpname, name)) return 1; } - conf_message("configuration written to %s", newname); + conf_message("configuration written to %s", name); sym_set_change_count(0); @@ -880,8 +975,6 @@ static int conf_write_dep(const char *name) struct file *file; FILE *out; - if (!name) - name = ".kconfig.d"; out = fopen("..config.tmp", "w"); if (!out) return 1; @@ -906,24 +999,19 @@ static int conf_write_dep(const char *name) return 0; } -static int conf_split_config(void) +static int conf_touch_deps(void) { const char *name; - char path[PATH_MAX+1]; - char *s, *d, c; struct symbol *sym; - int res, i, fd; + int res, i; + + strcpy(depfile_path, "include/config/"); + depfile_prefix_len = strlen(depfile_path); name = conf_get_autoconfig_name(); conf_read_simple(name, S_DEF_AUTO); sym_calc_value(modules_sym); - if (make_parent_dir("include/config/foo.h")) - return 1; - if (chdir("include/config")) - return 1; - - res = 0; for_all_symbols(i, sym) { sym_calc_value(sym); if ((sym->flags & SYMBOL_NO_WRITE) || !sym->name) @@ -975,42 +1063,12 @@ static int conf_split_config(void) * different from 'no'). */ - /* Replace all '_' and append ".h" */ - s = sym->name; - d = path; - while ((c = *s++)) { - c = tolower(c); - *d++ = (c == '_') ? '/' : c; - } - strcpy(d, ".h"); - - /* Assume directory path already exists. */ - fd = open(path, O_WRONLY | O_CREAT | O_TRUNC, 0644); - if (fd == -1) { - if (errno != ENOENT) { - res = 1; - break; - } - - if (make_parent_dir(path)) { - res = 1; - goto out; - } - - /* Try it again. */ - fd = open(path, O_WRONLY | O_CREAT | O_TRUNC, 0644); - if (fd == -1) { - res = 1; - break; - } - } - close(fd); + res = conf_touch_dep(sym->name); + if (res) + return res; } -out: - if (chdir("../..")) - return 1; - return res; + return 0; } int conf_write_autoconf(int overwrite) @@ -1028,7 +1086,7 @@ int conf_write_autoconf(int overwrite) conf_write_dep("include/config/auto.conf.cmd"); - if (conf_split_config()) + if (conf_touch_deps()) return 1; out = fopen(".tmpconfig", "w"); diff --git a/scripts/kconfig/expr.c b/scripts/kconfig/expr.c index e1a39e9084..77ffff3a05 100644 --- a/scripts/kconfig/expr.c +++ b/scripts/kconfig/expr.c @@ -1,8 +1,10 @@ +// SPDX-License-Identifier: GPL-2.0 /* * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> - * Released under the terms of the GNU GPL v2.0. */ +#include <ctype.h> +#include <errno.h> #include <stdio.h> #include <stdlib.h> #include <string.h> @@ -980,7 +982,6 @@ enum string_value_kind { k_string, k_signed, k_unsigned, - k_invalid }; union string_value { @@ -1011,13 +1012,10 @@ static enum string_value_kind expr_parse_string(const char *str, val->u = strtoull(str, &tail, 16); kind = k_unsigned; break; - case S_STRING: - case S_UNKNOWN: + default: val->s = strtoll(str, &tail, 0); kind = k_signed; break; - default: - return k_invalid; } return !errno && !*tail && tail > str && isxdigit(tail[-1]) ? kind : k_string; @@ -1073,13 +1071,7 @@ tristate expr_calc_value(struct expr *e) if (k1 == k_string || k2 == k_string) res = strcmp(str1, str2); - else if (k1 == k_invalid || k2 == k_invalid) { - if (e->type != E_EQUAL && e->type != E_UNEQUAL) { - printf("Cannot compare \"%s\" and \"%s\"\n", str1, str2); - return no; - } - res = strcmp(str1, str2); - } else if (k1 == k_unsigned || k2 == k_unsigned) + else if (k1 == k_unsigned || k2 == k_unsigned) res = (lval.u > rval.u) - (lval.u < rval.u); else /* if (k1 == k_signed && k2 == k_signed) */ res = (lval.s > rval.s) - (lval.s < rval.s); diff --git a/scripts/kconfig/expr.h b/scripts/kconfig/expr.h index 7c329e1790..8dde65bc31 100644 --- a/scripts/kconfig/expr.h +++ b/scripts/kconfig/expr.h @@ -1,6 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0 */ /* * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> - * Released under the terms of the GNU GPL v2.0. */ #ifndef EXPR_H @@ -62,7 +62,7 @@ struct symbol_value { }; enum symbol_type { - S_UNKNOWN, S_BOOLEAN, S_TRISTATE, S_INT, S_HEX, S_STRING, S_OTHER + S_UNKNOWN, S_BOOLEAN, S_TRISTATE, S_INT, S_HEX, S_STRING }; /* enum values are used as index to symbol.def[] */ @@ -131,7 +131,7 @@ struct symbol { struct expr_value implied; }; -#define for_all_symbols(i, sym) for (i = 0; i < SYMBOL_HASHSIZE; i++) for (sym = symbol_hash[i]; sym; sym = sym->next) if (sym->type != S_OTHER) +#define for_all_symbols(i, sym) for (i = 0; i < SYMBOL_HASHSIZE; i++) for (sym = symbol_hash[i]; sym; sym = sym->next) #define SYMBOL_CONST 0x0001 /* symbol is const */ #define SYMBOL_CHECK 0x0008 /* used during dependency checking */ @@ -172,7 +172,7 @@ struct symbol { * int "BAZ Value" * range 1..255 * - * Please, also check zconf.y:print_symbol() when modifying the + * Please, also check parser.y:print_symbol() when modifying the * list of property types! */ enum prop_type { diff --git a/scripts/kconfig/gconf.c b/scripts/kconfig/gconf.c index 0ac700bf12..e36b342f10 100644 --- a/scripts/kconfig/gconf.c +++ b/scripts/kconfig/gconf.c @@ -1,9 +1,6 @@ -/* Hey EMACS -*- linux-c -*- */ +// SPDX-License-Identifier: GPL-2.0 /* - * * Copyright (C) 2002-2003 Romain Lievin <roms@tilp.info> - * Released under the terms of the GNU GPL v2.0. - * */ #ifdef HAVE_CONFIG_H @@ -12,7 +9,7 @@ #include <stdlib.h> #include "lkc.h" -#include "images.c" +#include "images.h" #include <glade/glade.h> #include <gtk/gtk.h> @@ -78,8 +75,8 @@ static gchar **fill_row(struct menu *menu); static void conf_changed(void); /* Helping/Debugging Functions */ - -const char *dbg_sym_flags(int val) +#ifdef DEBUG +static const char *dbg_sym_flags(int val) { static char buf[256]; @@ -108,9 +105,10 @@ const char *dbg_sym_flags(int val) return buf; } +#endif -void replace_button_icon(GladeXML * xml, GdkDrawable * window, - GtkStyle * style, gchar * btn_name, gchar ** xpm) +static void replace_button_icon(GladeXML *xml, GdkDrawable *window, + GtkStyle *style, gchar *btn_name, gchar **xpm) { GdkPixmap *pixmap; GdkBitmap *mask; @@ -128,7 +126,7 @@ void replace_button_icon(GladeXML * xml, GdkDrawable * window, } /* Main Window Initialization */ -void init_main_window(const gchar * glade_file) +static void init_main_window(const gchar *glade_file) { GladeXML *xml; GtkWidget *widget; @@ -190,7 +188,7 @@ void init_main_window(const gchar * glade_file) gtk_widget_show(main_wnd); } -void init_tree_model(void) +static void init_tree_model(void) { gint i; @@ -220,7 +218,7 @@ void init_tree_model(void) model1 = GTK_TREE_MODEL(tree1); } -void init_left_tree(void) +static void init_left_tree(void) { GtkTreeView *view = GTK_TREE_VIEW(tree1_w); GtkCellRenderer *renderer; @@ -262,7 +260,7 @@ static void renderer_edited(GtkCellRendererText * cell, const gchar * path_string, const gchar * new_text, gpointer user_data); -void init_right_tree(void) +static void init_right_tree(void) { GtkTreeView *view = GTK_TREE_VIEW(tree2_w); GtkCellRenderer *renderer; @@ -1212,8 +1210,8 @@ static GtkTreeIter found; /* * Find a menu in the GtkTree starting at parent. */ -GtkTreeIter *gtktree_iter_find_node(GtkTreeIter * parent, - struct menu *tofind) +static GtkTreeIter *gtktree_iter_find_node(GtkTreeIter *parent, + struct menu *tofind) { GtkTreeIter iter; GtkTreeIter *child = &iter; @@ -1424,7 +1422,7 @@ static void display_list(void) tree = tree2; } -void fixup_rootmenu(struct menu *menu) +static void fixup_rootmenu(struct menu *menu) { struct menu *child; static int menu_cnt = 0; diff --git a/scripts/kconfig/images.c b/scripts/kconfig/images.c index d4f84bd4a9..b4fa0e4a63 100644 --- a/scripts/kconfig/images.c +++ b/scripts/kconfig/images.c @@ -1,9 +1,11 @@ +// SPDX-License-Identifier: GPL-2.0 /* * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> - * Released under the terms of the GNU GPL v2.0. */ -static const char *xpm_load[] = { +#include "images.h" + +const char *xpm_load[] = { "22 22 5 1", ". c None", "# c #000000", @@ -33,7 +35,7 @@ static const char *xpm_load[] = { "###############.......", "......................"}; -static const char *xpm_save[] = { +const char *xpm_save[] = { "22 22 5 1", ". c None", "# c #000000", @@ -63,7 +65,7 @@ static const char *xpm_save[] = { "..##################..", "......................"}; -static const char *xpm_back[] = { +const char *xpm_back[] = { "22 22 3 1", ". c None", "# c #000083", @@ -91,7 +93,7 @@ static const char *xpm_back[] = { "......................", "......................"}; -static const char *xpm_tree_view[] = { +const char *xpm_tree_view[] = { "22 22 2 1", ". c None", "# c #000000", @@ -118,7 +120,7 @@ static const char *xpm_tree_view[] = { "......................", "......................"}; -static const char *xpm_single_view[] = { +const char *xpm_single_view[] = { "22 22 2 1", ". c None", "# c #000000", @@ -145,7 +147,7 @@ static const char *xpm_single_view[] = { "......................", "......................"}; -static const char *xpm_split_view[] = { +const char *xpm_split_view[] = { "22 22 2 1", ". c None", "# c #000000", @@ -172,7 +174,7 @@ static const char *xpm_split_view[] = { "......................", "......................"}; -static const char *xpm_symbol_no[] = { +const char *xpm_symbol_no[] = { "12 12 2 1", " c white", ". c black", @@ -189,7 +191,7 @@ static const char *xpm_symbol_no[] = { " .......... ", " "}; -static const char *xpm_symbol_mod[] = { +const char *xpm_symbol_mod[] = { "12 12 2 1", " c white", ". c black", @@ -206,7 +208,7 @@ static const char *xpm_symbol_mod[] = { " .......... ", " "}; -static const char *xpm_symbol_yes[] = { +const char *xpm_symbol_yes[] = { "12 12 2 1", " c white", ". c black", @@ -223,7 +225,7 @@ static const char *xpm_symbol_yes[] = { " .......... ", " "}; -static const char *xpm_choice_no[] = { +const char *xpm_choice_no[] = { "12 12 2 1", " c white", ". c black", @@ -240,7 +242,7 @@ static const char *xpm_choice_no[] = { " .... ", " "}; -static const char *xpm_choice_yes[] = { +const char *xpm_choice_yes[] = { "12 12 2 1", " c white", ". c black", @@ -257,7 +259,7 @@ static const char *xpm_choice_yes[] = { " .... ", " "}; -static const char *xpm_menu[] = { +const char *xpm_menu[] = { "12 12 2 1", " c white", ". c black", @@ -274,7 +276,7 @@ static const char *xpm_menu[] = { " .......... ", " "}; -static const char *xpm_menu_inv[] = { +const char *xpm_menu_inv[] = { "12 12 2 1", " c white", ". c black", @@ -291,7 +293,7 @@ static const char *xpm_menu_inv[] = { " .......... ", " "}; -static const char *xpm_menuback[] = { +const char *xpm_menuback[] = { "12 12 2 1", " c white", ". c black", @@ -308,7 +310,7 @@ static const char *xpm_menuback[] = { " .......... ", " "}; -static const char *xpm_void[] = { +const char *xpm_void[] = { "12 12 2 1", " c white", ". c black", diff --git a/scripts/kconfig/images.h b/scripts/kconfig/images.h new file mode 100644 index 0000000000..d8ff614bd0 --- /dev/null +++ b/scripts/kconfig/images.h @@ -0,0 +1,33 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> + */ + +#ifndef IMAGES_H +#define IMAGES_H + +#ifdef __cplusplus +extern "C" { +#endif + +extern const char *xpm_load[]; +extern const char *xpm_save[]; +extern const char *xpm_back[]; +extern const char *xpm_tree_view[]; +extern const char *xpm_single_view[]; +extern const char *xpm_split_view[]; +extern const char *xpm_symbol_no[]; +extern const char *xpm_symbol_mod[]; +extern const char *xpm_symbol_yes[]; +extern const char *xpm_choice_no[]; +extern const char *xpm_choice_yes[]; +extern const char *xpm_menu[]; +extern const char *xpm_menu_inv[]; +extern const char *xpm_menuback[]; +extern const char *xpm_void[]; + +#ifdef __cplusplus +} +#endif + +#endif /* IMAGES_H */ diff --git a/scripts/kconfig/kconf_id.c b/scripts/kconfig/kconf_id.c deleted file mode 100644 index b3e0ea0ac7..0000000000 --- a/scripts/kconfig/kconf_id.c +++ /dev/null @@ -1,52 +0,0 @@ - -static struct kconf_id kconf_id_array[] = { - { "mainmenu", T_MAINMENU, TF_COMMAND }, - { "menu", T_MENU, TF_COMMAND }, - { "endmenu", T_ENDMENU, TF_COMMAND }, - { "source", T_SOURCE, TF_COMMAND }, - { "choice", T_CHOICE, TF_COMMAND }, - { "endchoice", T_ENDCHOICE, TF_COMMAND }, - { "comment", T_COMMENT, TF_COMMAND }, - { "config", T_CONFIG, TF_COMMAND }, - { "menuconfig", T_MENUCONFIG, TF_COMMAND }, - { "help", T_HELP, TF_COMMAND }, - { "---help---", T_HELP, TF_COMMAND }, - { "if", T_IF, TF_COMMAND|TF_PARAM }, - { "endif", T_ENDIF, TF_COMMAND }, - { "depends", T_DEPENDS, TF_COMMAND }, - { "optional", T_OPTIONAL, TF_COMMAND }, - { "default", T_DEFAULT, TF_COMMAND, S_UNKNOWN }, - { "prompt", T_PROMPT, TF_COMMAND }, - { "tristate", T_TYPE, TF_COMMAND, S_TRISTATE }, - { "def_tristate", T_DEFAULT, TF_COMMAND, S_TRISTATE }, - { "bool", T_TYPE, TF_COMMAND, S_BOOLEAN }, - { "def_bool", T_DEFAULT, TF_COMMAND, S_BOOLEAN }, - { "int", T_TYPE, TF_COMMAND, S_INT }, - { "hex", T_TYPE, TF_COMMAND, S_HEX }, - { "string", T_TYPE, TF_COMMAND, S_STRING }, - { "select", T_SELECT, TF_COMMAND }, - { "imply", T_IMPLY, TF_COMMAND }, - { "range", T_RANGE, TF_COMMAND }, - { "visible", T_VISIBLE, TF_COMMAND }, - { "option", T_OPTION, TF_COMMAND }, - { "on", T_ON, TF_PARAM }, - { "modules", T_OPT_MODULES, TF_OPTION }, - { "defconfig_list", T_OPT_DEFCONFIG_LIST, TF_OPTION }, - { "allnoconfig_y", T_OPT_ALLNOCONFIG_Y, TF_OPTION }, -}; - -#define KCONF_ID_ARRAY_SIZE (sizeof(kconf_id_array)/sizeof(struct kconf_id)) - -static const struct kconf_id *kconf_id_lookup(register const char *str, register unsigned int len) -{ - int i; - - for (i = 0; i < KCONF_ID_ARRAY_SIZE; i++) { - struct kconf_id *id = kconf_id_array+i; - int l = strlen(id->name); - - if (len == l && !memcmp(str, id->name, len)) - return id; - } - return NULL; -} diff --git a/scripts/kconfig/zconf.l b/scripts/kconfig/lexer.l index 25bd2b89fe..6354c905b0 100644 --- a/scripts/kconfig/zconf.l +++ b/scripts/kconfig/lexer.l @@ -1,11 +1,11 @@ -%option nostdinit noyywrap never-interactive full ecs -%option 8bit nodefault yylineno -%x COMMAND HELP STRING PARAM ASSIGN_VAL -%{ +/* SPDX-License-Identifier: GPL-2.0 */ /* * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> - * Released under the terms of the GNU GPL v2.0. */ +%option nostdinit noyywrap never-interactive full ecs +%option 8bit nodefault yylineno +%x ASSIGN_VAL HELP STRING +%{ #include <assert.h> #include <limits.h> @@ -15,6 +15,9 @@ #include <unistd.h> #include "lkc.h" +#include "parser.tab.h" + +#define YY_DECL static int yylex1(void) #define START_STRSIZE 16 @@ -23,6 +26,8 @@ static struct { int lineno; } current_pos; +static int prev_prev_token = T_EOL; +static int prev_token = T_EOL; static char *text; static int text_size, text_asize; @@ -73,7 +78,7 @@ static void warn_ignored_character(char chr) { fprintf(stderr, "%s:%d:warning: ignoring unsupported character '%c'\n", - zconf_curname(), zconf_lineno(), chr); + current_file->name, yylineno, chr); } %} @@ -83,54 +88,73 @@ n [A-Za-z0-9_-] int str = 0; int ts, i; -[ \t]*#.*\n | -[ \t]*\n { - return T_EOL; -} -[ \t]*#.* - - -[ \t]+ { - BEGIN(COMMAND); -} - -. { - unput(yytext[0]); - BEGIN(COMMAND); -} - - -<COMMAND>{ - {n}+ { - const struct kconf_id *id = kconf_id_lookup(yytext, yyleng); - current_pos.file = current_file; - current_pos.lineno = yylineno; - if (id && id->flags & TF_COMMAND) { - BEGIN(PARAM); - yylval.id = id; - return id->token; - } - alloc_string(yytext, yyleng); - yylval.string = text; - return T_VARIABLE; - } - ({n}|$)+ { - /* this token includes at least one '$' */ - yylval.string = expand_token(yytext, yyleng); - if (strlen(yylval.string)) - return T_VARIABLE; - free(yylval.string); - } - "=" { BEGIN(ASSIGN_VAL); yylval.flavor = VAR_RECURSIVE; return T_ASSIGN; } - ":=" { BEGIN(ASSIGN_VAL); yylval.flavor = VAR_SIMPLE; return T_ASSIGN; } - "+=" { BEGIN(ASSIGN_VAL); yylval.flavor = VAR_APPEND; return T_ASSIGN; } - [[:blank:]]+ - . warn_ignored_character(*yytext); - \n { - BEGIN(INITIAL); - return T_EOL; - } -} +#.* /* ignore comment */ +[ \t]* /* whitespaces */ +\\\n /* escaped new line */ +\n return T_EOL; +"allnoconfig_y" return T_ALLNOCONFIG_Y; +"bool" return T_BOOL; +"choice" return T_CHOICE; +"comment" return T_COMMENT; +"config" return T_CONFIG; +"def_bool" return T_DEF_BOOL; +"def_tristate" return T_DEF_TRISTATE; +"default" return T_DEFAULT; +"defconfig_list" return T_DEFCONFIG_LIST; +"depends" return T_DEPENDS; +"endchoice" return T_ENDCHOICE; +"endif" return T_ENDIF; +"endmenu" return T_ENDMENU; +"help"|"---help---" return T_HELP; +"hex" return T_HEX; +"if" return T_IF; +"imply" return T_IMPLY; +"int" return T_INT; +"mainmenu" return T_MAINMENU; +"menu" return T_MENU; +"menuconfig" return T_MENUCONFIG; +"modules" return T_MODULES; +"on" return T_ON; +"option" return T_OPTION; +"optional" return T_OPTIONAL; +"prompt" return T_PROMPT; +"range" return T_RANGE; +"select" return T_SELECT; +"source" return T_SOURCE; +"string" return T_STRING; +"tristate" return T_TRISTATE; +"visible" return T_VISIBLE; +"||" return T_OR; +"&&" return T_AND; +"=" return T_EQUAL; +"!=" return T_UNEQUAL; +"<" return T_LESS; +"<=" return T_LESS_EQUAL; +">" return T_GREATER; +">=" return T_GREATER_EQUAL; +"!" return T_NOT; +"(" return T_OPEN_PAREN; +")" return T_CLOSE_PAREN; +":=" return T_COLON_EQUAL; +"+=" return T_PLUS_EQUAL; +\"|\' { + str = yytext[0]; + new_string(); + BEGIN(STRING); + } +{n}+ { + alloc_string(yytext, yyleng); + yylval.string = text; + return T_WORD; + } +({n}|$)+ { + /* this token includes at least one '$' */ + yylval.string = expand_token(yytext, yyleng); + if (strlen(yylval.string)) + return T_WORD; + free(yylval.string); + } +. warn_ignored_character(*yytext); <ASSIGN_VAL>{ [^[:blank:]\n]+.* { @@ -142,71 +166,17 @@ n [A-Za-z0-9_-] . } -<PARAM>{ - "&&" return T_AND; - "||" return T_OR; - "(" return T_OPEN_PAREN; - ")" return T_CLOSE_PAREN; - "!" return T_NOT; - "=" return T_EQUAL; - "!=" return T_UNEQUAL; - "<=" return T_LESS_EQUAL; - ">=" return T_GREATER_EQUAL; - "<" return T_LESS; - ">" return T_GREATER; - \"|\' { - str = yytext[0]; - new_string(); - BEGIN(STRING); - } - \n BEGIN(INITIAL); return T_EOL; - ({n}|[/.])+ { - const struct kconf_id *id = kconf_id_lookup(yytext, yyleng); - if (id && id->flags & TF_PARAM) { - yylval.id = id; - return id->token; - } - alloc_string(yytext, yyleng); - yylval.string = text; - return T_WORD; - } - ({n}|[/.$])+ { - /* this token includes at least one '$' */ - yylval.string = expand_token(yytext, yyleng); - if (strlen(yylval.string)) - return T_WORD; - free(yylval.string); - } - #.* /* comment */ - \\\n ; - [[:blank:]]+ - . warn_ignored_character(*yytext); - <<EOF>> { - BEGIN(INITIAL); - } -} - <STRING>{ "$".* append_expanded_string(yytext); - [^$'"\\\n]+/\n { - append_string(yytext, yyleng); - yylval.string = text; - return T_WORD_QUOTE; - } [^$'"\\\n]+ { append_string(yytext, yyleng); } - \\.?/\n { - append_string(yytext + 1, yyleng - 1); - yylval.string = text; - return T_WORD_QUOTE; - } \\.? { append_string(yytext + 1, yyleng - 1); } \'|\" { if (str == yytext[0]) { - BEGIN(PARAM); + BEGIN(INITIAL); yylval.string = text; return T_WORD_QUOTE; } else @@ -216,11 +186,15 @@ n [A-Za-z0-9_-] fprintf(stderr, "%s:%d:warning: multi-line strings not supported\n", zconf_curname(), zconf_lineno()); + unput('\n'); BEGIN(INITIAL); - return T_EOL; + yylval.string = text; + return T_WORD_QUOTE; } <<EOF>> { BEGIN(INITIAL); + yylval.string = text; + return T_WORD_QUOTE; } } @@ -271,6 +245,12 @@ n [A-Za-z0-9_-] } <<EOF>> { + BEGIN(INITIAL); + + if (prev_token != T_EOL && prev_token != T_HELPTEXT) + fprintf(stderr, "%s:%d:warning: no new line at end of file\n", + current_file->name, yylineno); + if (current_file) { zconf_endfile(); return T_EOL; @@ -280,6 +260,41 @@ n [A-Za-z0-9_-] } %% + +/* second stage lexer */ +int yylex(void) +{ + int token; + +repeat: + token = yylex1(); + + if (prev_token == T_EOL || prev_token == T_HELPTEXT) { + if (token == T_EOL) { + /* Do not pass unneeded T_EOL to the parser. */ + goto repeat; + } else { + /* + * For the parser, update file/lineno at the first token + * of each statement. Generally, \n is a statement + * terminator in Kconfig, but it is not always true + * because \n could be escaped by a backslash. + */ + current_pos.file = current_file; + current_pos.lineno = yylineno; + } + } + + if (prev_prev_token == T_EOL && prev_token == T_WORD && + (token == T_EQUAL || token == T_COLON_EQUAL || token == T_PLUS_EQUAL)) + BEGIN(ASSIGN_VAL); + + prev_prev_token = prev_token; + prev_token = token; + + return token; +} + static char *expand_token(const char *in, size_t n) { char *out; @@ -363,7 +378,8 @@ FILE *zconf_fopen(const char *name) if (!f && name != NULL && name[0] != '/') { env = getenv(SRCTREE); if (env) { - sprintf(fullname, "%s/%s", env, name); + snprintf(fullname, sizeof(fullname), + "%s/%s", env, name); f = fopen(fullname, "r"); } } diff --git a/scripts/kconfig/lkc.h b/scripts/kconfig/lkc.h index 9eb7c837cd..cbc7658ee2 100644 --- a/scripts/kconfig/lkc.h +++ b/scripts/kconfig/lkc.h @@ -1,6 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0 */ /* * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> - * Released under the terms of the GNU GPL v2.0. */ #ifndef LKC_H @@ -30,10 +30,6 @@ static inline const char *CONFIG_prefix(void) #undef CONFIG_ #define CONFIG_ CONFIG_prefix() -#define TF_COMMAND 0x0001 -#define TF_PARAM 0x0002 -#define TF_OPTION 0x0004 - enum conf_def_mode { def_default, def_yes, @@ -42,17 +38,6 @@ enum conf_def_mode { def_random }; -#define T_OPT_MODULES 1 -#define T_OPT_DEFCONFIG_LIST 2 -#define T_OPT_ALLNOCONFIG_Y 4 - -struct kconf_id { - const char *name; - int token; - unsigned int flags; - enum symbol_type stype; -}; - extern int yylineno; void zconfdump(FILE *out); void zconf_starthelp(void); @@ -64,7 +49,6 @@ const char *zconf_curname(void); /* confdata.c */ const char *conf_get_configname(void); -const char *conf_get_autoconfig_name(void); char *conf_get_default_confname(void); void sym_set_change_count(int count); void sym_add_change_count(int count); @@ -91,7 +75,9 @@ void menu_add_visibility(struct expr *dep); struct property *menu_add_prompt(enum prop_type type, char *prompt, struct expr *dep); void menu_add_expr(enum prop_type type, struct expr *expr, struct expr *dep); void menu_add_symbol(enum prop_type type, struct symbol *sym, struct expr *dep); -void menu_add_option(int token, char *arg); +void menu_add_option_modules(void); +void menu_add_option_defconfig_list(void); +void menu_add_option_allnoconfig_y(void); void menu_finalize(struct menu *parent); void menu_set_type(int type); @@ -103,6 +89,9 @@ void *xrealloc(void *p, size_t size); char *xstrdup(const char *s); char *xstrndup(const char *s, size_t n); +/* lexer.l */ +int yylex(void); + struct gstr { size_t len; char *s; @@ -121,6 +110,7 @@ const char *str_get(struct gstr *gs); /* symbol.c */ void sym_clear_all_valid(void); struct symbol *sym_choice_default(struct symbol *sym); +struct property *sym_get_range_prop(struct symbol *sym); const char *sym_get_string_default(struct symbol *sym); struct symbol *sym_check_deps(struct symbol *sym); struct property *prop_alloc(enum prop_type type, struct symbol *sym); diff --git a/scripts/kconfig/lxdialog/.gitignore b/scripts/kconfig/lxdialog/.gitignore deleted file mode 100644 index 90b08ff025..0000000000 --- a/scripts/kconfig/lxdialog/.gitignore +++ /dev/null @@ -1,4 +0,0 @@ -# -# Generated files -# -lxdialog diff --git a/scripts/kconfig/lxdialog/BIG.FAT.WARNING b/scripts/kconfig/lxdialog/BIG.FAT.WARNING index a8999d82bd..7cb5a7ec93 100644 --- a/scripts/kconfig/lxdialog/BIG.FAT.WARNING +++ b/scripts/kconfig/lxdialog/BIG.FAT.WARNING @@ -1,4 +1,4 @@ This is NOT the official version of dialog. This version has been significantly modified from the original. It is for use by the Linux -kernel configuration script. Please do not bother Savio Lam with +kernel configuration script. Please do not bother Savio Lam with questions about this program. diff --git a/scripts/kconfig/lxdialog/checklist.c b/scripts/kconfig/lxdialog/checklist.c index 2e96323ad1..fd161cfff1 100644 --- a/scripts/kconfig/lxdialog/checklist.c +++ b/scripts/kconfig/lxdialog/checklist.c @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: GPL-2.0+ /* * checklist.c -- implements the checklist box * @@ -5,20 +6,6 @@ * Stuart Herbert - S.Herbert@sheffield.ac.uk: radiolist extension * Alessandro Rubini - rubini@ipvvis.unipv.it: merged the two * MODIFIED FOR LINUX KERNEL CONFIG BY: William Roadcap (roadcap@cfw.com) - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "dialog.h" diff --git a/scripts/kconfig/lxdialog/dialog.h b/scripts/kconfig/lxdialog/dialog.h index 0b00be5aba..68b565e3c4 100644 --- a/scripts/kconfig/lxdialog/dialog.h +++ b/scripts/kconfig/lxdialog/dialog.h @@ -1,21 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ /* * dialog.h -- common declarations for all dialog modules * * AUTHOR: Savio Lam (lam836@cs.cuhk.hk) - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include <sys/types.h> diff --git a/scripts/kconfig/lxdialog/inputbox.c b/scripts/kconfig/lxdialog/inputbox.c index fe82ff6d74..1dcfb288ee 100644 --- a/scripts/kconfig/lxdialog/inputbox.c +++ b/scripts/kconfig/lxdialog/inputbox.c @@ -1,22 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0+ /* * inputbox.c -- implements the input box * * ORIGINAL AUTHOR: Savio Lam (lam836@cs.cuhk.hk) * MODIFIED FOR LINUX KERNEL CONFIG BY: William Roadcap (roadcap@cfw.com) - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "dialog.h" @@ -126,7 +113,8 @@ do_resize: case KEY_DOWN: break; case KEY_BACKSPACE: - case 127: + case 8: /* ^H */ + case 127: /* ^? */ if (pos) { wattrset(dialog, dlg.inputbox.atr); if (input_x == 0) { diff --git a/scripts/kconfig/lxdialog/menubox.c b/scripts/kconfig/lxdialog/menubox.c index d70cab3613..58c2f8afe5 100644 --- a/scripts/kconfig/lxdialog/menubox.c +++ b/scripts/kconfig/lxdialog/menubox.c @@ -1,22 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0+ /* * menubox.c -- implements the menu box * * ORIGINAL AUTHOR: Savio Lam (lam836@cs.cuhk.hk) * MODIFIED FOR LINUX KERNEL CONFIG BY: William Roadcap (roadcapw@cfw.com) - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /* diff --git a/scripts/kconfig/lxdialog/textbox.c b/scripts/kconfig/lxdialog/textbox.c index 88d2818ed9..4e339b1266 100644 --- a/scripts/kconfig/lxdialog/textbox.c +++ b/scripts/kconfig/lxdialog/textbox.c @@ -1,22 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0+ /* * textbox.c -- implements the text box * * ORIGINAL AUTHOR: Savio Lam (lam836@cs.cuhk.hk) * MODIFIED FOR LINUX KERNEL CONFIG BY: William Roadcap (roadcap@cfw.com) - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "dialog.h" diff --git a/scripts/kconfig/lxdialog/util.c b/scripts/kconfig/lxdialog/util.c index f7abdeb92a..1b490d4af0 100644 --- a/scripts/kconfig/lxdialog/util.c +++ b/scripts/kconfig/lxdialog/util.c @@ -1,22 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0+ /* * util.c * * ORIGINAL AUTHOR: Savio Lam (lam836@cs.cuhk.hk) * MODIFIED FOR LINUX KERNEL CONFIG BY: William Roadcap (roadcap@cfw.com) - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include <stdarg.h> diff --git a/scripts/kconfig/lxdialog/yesno.c b/scripts/kconfig/lxdialog/yesno.c index cd1223c903..bcaac9b7ba 100644 --- a/scripts/kconfig/lxdialog/yesno.c +++ b/scripts/kconfig/lxdialog/yesno.c @@ -1,22 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0+ /* * yesno.c -- implements the yes/no box * * ORIGINAL AUTHOR: Savio Lam (lam836@cs.cuhk.hk) * MODIFIED FOR LINUX KERNEL CONFIG BY: William Roadcap (roadcap@cfw.com) - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "dialog.h" diff --git a/scripts/kconfig/mconf.c b/scripts/kconfig/mconf.c index 143c05fec1..694091f3ef 100644 --- a/scripts/kconfig/mconf.c +++ b/scripts/kconfig/mconf.c @@ -1,6 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0 /* * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> - * Released under the terms of the GNU GPL v2.0. * * Introduced single menu mode (show all sub-menus in one large tree). * 2002-11-06 Petr Baudis <pasky@ucw.cz> @@ -936,7 +936,7 @@ static void conf_save(void) set_config_filename(dialog_input_result); return; } - show_textbox(NULL, "Can't create file! Probably a nonexistent directory.", 5, 60); + show_textbox(NULL, "Can't create file!", 5, 60); break; case 1: show_helptext("Save Alternate Configuration", save_config_help); diff --git a/scripts/kconfig/menu.c b/scripts/kconfig/menu.c index 4cf15d449c..d9d1646985 100644 --- a/scripts/kconfig/menu.c +++ b/scripts/kconfig/menu.c @@ -1,6 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0 /* * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> - * Released under the terms of the GNU GPL v2.0. */ #include <ctype.h> @@ -195,29 +195,26 @@ void menu_add_symbol(enum prop_type type, struct symbol *sym, struct expr *dep) menu_add_prop(type, NULL, expr_alloc_symbol(sym), dep); } -void menu_add_option(int token, char *arg) +void menu_add_option_modules(void) { - switch (token) { - case T_OPT_MODULES: - if (modules_sym) - zconf_error("symbol '%s' redefines option 'modules'" - " already defined by symbol '%s'", - current_entry->sym->name, - modules_sym->name - ); - modules_sym = current_entry->sym; - break; - case T_OPT_DEFCONFIG_LIST: - if (!sym_defconfig_list) - sym_defconfig_list = current_entry->sym; - else if (sym_defconfig_list != current_entry->sym) - zconf_error("trying to redefine defconfig symbol"); - sym_defconfig_list->flags |= SYMBOL_NO_WRITE; - break; - case T_OPT_ALLNOCONFIG_Y: - current_entry->sym->flags |= SYMBOL_ALLNOCONFIG_Y; - break; - } + if (modules_sym) + zconf_error("symbol '%s' redefines option 'modules' already defined by symbol '%s'", + current_entry->sym->name, modules_sym->name); + modules_sym = current_entry->sym; +} + +void menu_add_option_defconfig_list(void) +{ + if (!sym_defconfig_list) + sym_defconfig_list = current_entry->sym; + else if (sym_defconfig_list != current_entry->sym) + zconf_error("trying to redefine defconfig symbol"); + sym_defconfig_list->flags |= SYMBOL_NO_WRITE; +} + +void menu_add_option_allnoconfig_y(void) +{ + current_entry->sym->flags |= SYMBOL_ALLNOCONFIG_Y; } static int menu_validate_number(struct symbol *sym, struct symbol *sym2) diff --git a/scripts/kconfig/merge_config.sh b/scripts/kconfig/merge_config.sh index 0ef9064996..d924c51d28 100755 --- a/scripts/kconfig/merge_config.sh +++ b/scripts/kconfig/merge_config.sh @@ -1,4 +1,6 @@ #!/bin/sh +# SPDX-License-Identifier: GPL-2.0 +# # merge_config.sh - Takes a list of config fragment values, and merges # them one by one. Provides warnings on overridden values, and specified # values that did not make it to the resulting .config file (due to missed @@ -10,18 +12,10 @@ # # Copyright (c) 2009-2010 Wind River Systems, Inc. # Copyright 2011 Linaro -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# See the GNU General Public License for more details. clean_up() { rm -f $TMP_FILE + rm -f $MERGE_FILE exit } trap clean_up HUP INT TERM @@ -32,6 +26,7 @@ usage() { echo " -m only merge the fragments, do not execute the make command" echo " -n use allnoconfig instead of alldefconfig" echo " -r list redundant entries when merging fragments" + echo " -y make builtin have precedence over modules" echo " -O dir to put generated output files. Consider setting \$KCONFIG_CONFIG instead." echo echo "Used prefix: '$CONFIG_PREFIX'. You can redefine it with \$CONFIG_ environment variable." @@ -40,6 +35,7 @@ usage() { RUNMAKE=true ALLTARGET=alldefconfig WARNREDUN=false +BUILTIN=false OUTPUT=. CONFIG_PREFIX=${CONFIG_-CONFIG_} @@ -64,6 +60,11 @@ while true; do shift continue ;; + "-y") + BUILTIN=true + shift + continue + ;; "-O") if [ -d $2 ];then OUTPUT=$(echo $2 | sed 's/\/*$//') @@ -106,32 +107,45 @@ SED_CONFIG_EXP1="s/^\(${CONFIG_PREFIX}[a-zA-Z0-9_]*\)=.*/\1/p" SED_CONFIG_EXP2="s/^# \(${CONFIG_PREFIX}[a-zA-Z0-9_]*\) is not set$/\1/p" TMP_FILE=$(mktemp ./.tmp.config.XXXXXXXXXX) +MERGE_FILE=$(mktemp ./.merge_tmp.config.XXXXXXXXXX) echo "Using $INITFILE as base" cat $INITFILE > $TMP_FILE # Merge files, printing warnings on overridden values -for MERGE_FILE in $MERGE_LIST ; do - echo "Merging $MERGE_FILE" - if [ ! -r "$MERGE_FILE" ]; then - echo "The merge file '$MERGE_FILE' does not exist. Exit." >&2 +for ORIG_MERGE_FILE in $MERGE_LIST ; do + echo "Merging $ORIG_MERGE_FILE" + if [ ! -r "$ORIG_MERGE_FILE" ]; then + echo "The merge file '$ORIG_MERGE_FILE' does not exist. Exit." >&2 exit 1 fi + cat $ORIG_MERGE_FILE > $MERGE_FILE CFG_LIST=$(sed -n -e "$SED_CONFIG_EXP1" -e "$SED_CONFIG_EXP2" $MERGE_FILE) for CFG in $CFG_LIST ; do grep -q -w $CFG $TMP_FILE || continue PREV_VAL=$(grep -w $CFG $TMP_FILE) NEW_VAL=$(grep -w $CFG $MERGE_FILE) - if [ "x$PREV_VAL" != "x$NEW_VAL" ] ; then - echo Value of $CFG is redefined by fragment $MERGE_FILE: + BUILTIN_FLAG=false + if [ "$BUILTIN" = "true" ] && [ "${NEW_VAL#CONFIG_*=}" = "m" ] && [ "${PREV_VAL#CONFIG_*=}" = "y" ]; then + echo Previous value: $PREV_VAL + echo New value: $NEW_VAL + echo -y passed, will not demote y to m + echo + BUILTIN_FLAG=true + elif [ "x$PREV_VAL" != "x$NEW_VAL" ] ; then + echo Value of $CFG is redefined by fragment $ORIG_MERGE_FILE: echo Previous value: $PREV_VAL echo New value: $NEW_VAL echo elif [ "$WARNREDUN" = "true" ]; then - echo Value of $CFG is redundant by fragment $MERGE_FILE: + echo Value of $CFG is redundant by fragment $ORIG_MERGE_FILE: + fi + if [ "$BUILTIN_FLAG" = "false" ]; then + sed -i "/$CFG[ =]/d" $TMP_FILE + else + sed -i "/$CFG[ =]/d" $MERGE_FILE fi - sed -i "/$CFG[ =]/d" $TMP_FILE done cat $MERGE_FILE >> $TMP_FILE done diff --git a/scripts/kconfig/nconf-cfg.sh b/scripts/kconfig/nconf-cfg.sh index 001559ef0a..001559ef0a 100644..100755 --- a/scripts/kconfig/nconf-cfg.sh +++ b/scripts/kconfig/nconf-cfg.sh diff --git a/scripts/kconfig/nconf.c b/scripts/kconfig/nconf.c index 1ef232ae5a..cbafe3bf08 100644 --- a/scripts/kconfig/nconf.c +++ b/scripts/kconfig/nconf.c @@ -1,9 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0 /* - * Copyright (C) 2008 Nir Tzachar <nir.tzachar@gmail.com? - * Released under the terms of the GNU GPL v2.0. + * Copyright (C) 2008 Nir Tzachar <nir.tzachar@gmail.com> * * Derived from menuconfig. - * */ #ifndef _GNU_SOURCE #define _GNU_SOURCE @@ -1049,7 +1048,7 @@ static int do_match(int key, struct match_state *state, int *ans) state->match_direction = FIND_NEXT_MATCH_UP; *ans = get_mext_match(state->pattern, state->match_direction); - } else if (key == KEY_BACKSPACE || key == 127) { + } else if (key == KEY_BACKSPACE || key == 8 || key == 127) { state->pattern[strlen(state->pattern)-1] = '\0'; adj_match_dir(&state->match_direction); } else @@ -1439,8 +1438,7 @@ static void conf_save(void) set_config_filename(dialog_input_result); return; } - btn_dialog(main_window, "Can't create file! " - "Probably a nonexistent directory.", + btn_dialog(main_window, "Can't create file!", 1, "<OK>"); break; case 1: diff --git a/scripts/kconfig/nconf.gui.c b/scripts/kconfig/nconf.gui.c index 88874acfda..77f525a861 100644 --- a/scripts/kconfig/nconf.gui.c +++ b/scripts/kconfig/nconf.gui.c @@ -1,9 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0 /* - * Copyright (C) 2008 Nir Tzachar <nir.tzachar@gmail.com? - * Released under the terms of the GNU GPL v2.0. + * Copyright (C) 2008 Nir Tzachar <nir.tzachar@gmail.com> * * Derived from menuconfig. - * */ #include "nconf.h" #include "lkc.h" @@ -440,7 +439,8 @@ int dialog_inputbox(WINDOW *main_window, case KEY_F(F_EXIT): case KEY_F(F_BACK): break; - case 127: + case 8: /* ^H */ + case 127: /* ^? */ case KEY_BACKSPACE: if (cursor_position > 0) { memmove(&result[cursor_position-1], diff --git a/scripts/kconfig/nconf.h b/scripts/kconfig/nconf.h index 2b9e19f603..fa5245eb93 100644 --- a/scripts/kconfig/nconf.h +++ b/scripts/kconfig/nconf.h @@ -1,9 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0 */ /* - * Copyright (C) 2008 Nir Tzachar <nir.tzachar@gmail.com? - * Released under the terms of the GNU GPL v2.0. + * Copyright (C) 2008 Nir Tzachar <nir.tzachar@gmail.com> * * Derived from menuconfig. - * */ #include <ctype.h> diff --git a/scripts/kconfig/zconf.y b/scripts/kconfig/parser.y index 22fceb264c..60936c7686 100644 --- a/scripts/kconfig/zconf.y +++ b/scripts/kconfig/parser.y @@ -1,8 +1,8 @@ -%{ +/* SPDX-License-Identifier: GPL-2.0 */ /* * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> - * Released under the terms of the GNU GPL v2.0. */ +%{ #include <ctype.h> #include <stdarg.h> @@ -20,66 +20,68 @@ int cdebug = PRINTD; -int yylex(void); static void yyerror(const char *err); static void zconfprint(const char *err, ...); static void zconf_error(const char *err, ...); -static bool zconf_endtoken(const struct kconf_id *id, int starttoken, int endtoken); +static bool zconf_endtoken(const char *tokenname, + const char *expected_tokenname); struct symbol *symbol_hash[SYMBOL_HASHSIZE]; static struct menu *current_menu, *current_entry; %} -%expect 30 %union { char *string; - struct file *file; struct symbol *symbol; struct expr *expr; struct menu *menu; - const struct kconf_id *id; + enum symbol_type type; enum variable_flavor flavor; } -%token <id>T_MAINMENU -%token <id>T_MENU -%token <id>T_ENDMENU -%token <id>T_SOURCE -%token <id>T_CHOICE -%token <id>T_ENDCHOICE -%token <id>T_COMMENT -%token <id>T_CONFIG -%token <id>T_MENUCONFIG -%token <id>T_HELP %token <string> T_HELPTEXT -%token <id>T_IF -%token <id>T_ENDIF -%token <id>T_DEPENDS -%token <id>T_OPTIONAL -%token <id>T_PROMPT -%token <id>T_TYPE -%token <id>T_DEFAULT -%token <id>T_SELECT -%token <id>T_IMPLY -%token <id>T_RANGE -%token <id>T_VISIBLE -%token <id>T_OPTION -%token <id>T_ON %token <string> T_WORD %token <string> T_WORD_QUOTE -%token T_UNEQUAL -%token T_LESS -%token T_LESS_EQUAL -%token T_GREATER -%token T_GREATER_EQUAL +%token T_ALLNOCONFIG_Y +%token T_BOOL +%token T_CHOICE %token T_CLOSE_PAREN +%token T_COLON_EQUAL +%token T_COMMENT +%token T_CONFIG +%token T_DEFAULT +%token T_DEFCONFIG_LIST +%token T_DEF_BOOL +%token T_DEF_TRISTATE +%token T_DEPENDS +%token T_ENDCHOICE +%token T_ENDIF +%token T_ENDMENU +%token T_HELP +%token T_HEX +%token T_IF +%token T_IMPLY +%token T_INT +%token T_MAINMENU +%token T_MENU +%token T_MENUCONFIG +%token T_MODULES +%token T_ON %token T_OPEN_PAREN +%token T_OPTION +%token T_OPTIONAL +%token T_PLUS_EQUAL +%token T_PROMPT +%token T_RANGE +%token T_SELECT +%token T_SOURCE +%token T_STRING +%token T_TRISTATE +%token T_VISIBLE %token T_EOL -%token <string> T_VARIABLE -%token <flavor> T_ASSIGN %token <string> T_ASSIGN_VAL %left T_OR @@ -91,12 +93,13 @@ static struct menu *current_menu, *current_entry; %type <string> prompt %type <symbol> nonconst_symbol %type <symbol> symbol +%type <type> type logic_type default %type <expr> expr %type <expr> if_expr -%type <id> end -%type <id> option_name +%type <string> end %type <menu> if_entry menu_entry choice_entry -%type <string> symbol_option_arg word_opt assign_val +%type <string> word_opt assign_val +%type <flavor> assign_op %destructor { fprintf(stderr, "%s:%d: missing end statement for this entry\n", @@ -105,15 +108,8 @@ static struct menu *current_menu, *current_entry; menu_end_menu(); } if_entry menu_entry choice_entry -%{ -/* Include kconf_id.c here so it can see the token constants. */ -#include "kconf_id.c" -%} - %% -input: nl start | start; - -start: mainmenu_stmt stmt_list | stmt_list; +input: mainmenu_stmt stmt_list | stmt_list; /* mainmenu entry */ @@ -127,22 +123,12 @@ stmt_list: | stmt_list common_stmt | stmt_list choice_stmt | stmt_list menu_stmt - | stmt_list end { zconf_error("unexpected end statement"); } | stmt_list T_WORD error T_EOL { zconf_error("unknown statement \"%s\"", $2); } - | stmt_list option_name error T_EOL -{ - zconf_error("unexpected option \"%s\"", $2->name); -} | stmt_list error T_EOL { zconf_error("invalid statement"); } ; -option_name: - T_DEPENDS | T_PROMPT | T_TYPE | T_SELECT | T_IMPLY | T_OPTIONAL | T_RANGE | T_DEFAULT | T_VISIBLE -; - common_stmt: - T_EOL - | if_stmt + if_stmt | comment_stmt | config_stmt | menuconfig_stmt @@ -150,12 +136,6 @@ common_stmt: | assignment_stmt ; -option_error: - T_WORD error T_EOL { zconf_error("unknown option \"%s\"", $1); } - | error T_EOL { zconf_error("invalid option"); } -; - - /* config/menuconfig entry */ config_entry_start: T_CONFIG nonconst_symbol T_EOL @@ -189,19 +169,16 @@ menuconfig_stmt: menuconfig_entry_start config_option_list config_option_list: /* empty */ | config_option_list config_option - | config_option_list symbol_option | config_option_list depends | config_option_list help - | config_option_list option_error - | config_option_list T_EOL ; -config_option: T_TYPE prompt_stmt_opt T_EOL +config_option: type prompt_stmt_opt T_EOL { - menu_set_type($1->stype); + menu_set_type($1); printd(DEBUG_PARSE, "%s:%d:type(%u)\n", zconf_curname(), zconf_lineno(), - $1->stype); + $1); }; config_option: T_PROMPT prompt if_expr T_EOL @@ -210,14 +187,14 @@ config_option: T_PROMPT prompt if_expr T_EOL printd(DEBUG_PARSE, "%s:%d:prompt\n", zconf_curname(), zconf_lineno()); }; -config_option: T_DEFAULT expr if_expr T_EOL +config_option: default expr if_expr T_EOL { menu_add_expr(P_DEFAULT, $2, $3); - if ($1->stype != S_UNKNOWN) - menu_set_type($1->stype); + if ($1 != S_UNKNOWN) + menu_set_type($1); printd(DEBUG_PARSE, "%s:%d:default(%u)\n", zconf_curname(), zconf_lineno(), - $1->stype); + $1); }; config_option: T_SELECT nonconst_symbol if_expr T_EOL @@ -238,27 +215,20 @@ config_option: T_RANGE symbol symbol if_expr T_EOL printd(DEBUG_PARSE, "%s:%d:range\n", zconf_curname(), zconf_lineno()); }; -symbol_option: T_OPTION symbol_option_list T_EOL -; +config_option: T_OPTION T_MODULES T_EOL +{ + menu_add_option_modules(); +}; -symbol_option_list: - /* empty */ - | symbol_option_list T_WORD symbol_option_arg +config_option: T_OPTION T_DEFCONFIG_LIST T_EOL { - const struct kconf_id *id = kconf_id_lookup($2, strlen($2)); - if (id && id->flags & TF_OPTION) { - menu_add_option(id->token, $3); - free($3); - } - else - zconfprint("warning: ignoring unknown option %s", $2); - free($2); + menu_add_option_defconfig_list(); }; -symbol_option_arg: - /* empty */ { $$ = NULL; } - | T_EQUAL prompt { $$ = $2; } -; +config_option: T_OPTION T_ALLNOCONFIG_Y T_EOL +{ + menu_add_option_allnoconfig_y(); +}; /* choice entry */ @@ -279,7 +249,7 @@ choice_entry: choice choice_option_list choice_end: end { - if (zconf_endtoken($1, T_CHOICE, T_ENDCHOICE)) { + if (zconf_endtoken($1, "choice")) { menu_end_menu(); printd(DEBUG_PARSE, "%s:%d:endchoice\n", zconf_curname(), zconf_lineno()); } @@ -293,8 +263,6 @@ choice_option_list: | choice_option_list choice_option | choice_option_list depends | choice_option_list help - | choice_option_list T_EOL - | choice_option_list option_error ; choice_option: T_PROMPT prompt if_expr T_EOL @@ -303,15 +271,11 @@ choice_option: T_PROMPT prompt if_expr T_EOL printd(DEBUG_PARSE, "%s:%d:prompt\n", zconf_curname(), zconf_lineno()); }; -choice_option: T_TYPE prompt_stmt_opt T_EOL +choice_option: logic_type prompt_stmt_opt T_EOL { - if ($1->stype == S_BOOLEAN || $1->stype == S_TRISTATE) { - menu_set_type($1->stype); - printd(DEBUG_PARSE, "%s:%d:type(%u)\n", - zconf_curname(), zconf_lineno(), - $1->stype); - } else - YYERROR; + menu_set_type($1); + printd(DEBUG_PARSE, "%s:%d:type(%u)\n", + zconf_curname(), zconf_lineno(), $1); }; choice_option: T_OPTIONAL T_EOL @@ -322,14 +286,26 @@ choice_option: T_OPTIONAL T_EOL choice_option: T_DEFAULT nonconst_symbol if_expr T_EOL { - if ($1->stype == S_UNKNOWN) { - menu_add_symbol(P_DEFAULT, $2, $3); - printd(DEBUG_PARSE, "%s:%d:default\n", - zconf_curname(), zconf_lineno()); - } else - YYERROR; + menu_add_symbol(P_DEFAULT, $2, $3); + printd(DEBUG_PARSE, "%s:%d:default\n", + zconf_curname(), zconf_lineno()); }; +type: + logic_type + | T_INT { $$ = S_INT; } + | T_HEX { $$ = S_HEX; } + | T_STRING { $$ = S_STRING; } + +logic_type: + T_BOOL { $$ = S_BOOLEAN; } + | T_TRISTATE { $$ = S_TRISTATE; } + +default: + T_DEFAULT { $$ = S_UNKNOWN; } + | T_DEF_BOOL { $$ = S_BOOLEAN; } + | T_DEF_TRISTATE { $$ = S_TRISTATE; } + choice_block: /* empty */ | choice_block common_stmt @@ -347,20 +323,13 @@ if_entry: T_IF expr T_EOL if_end: end { - if (zconf_endtoken($1, T_IF, T_ENDIF)) { + if (zconf_endtoken($1, "if")) { menu_end_menu(); printd(DEBUG_PARSE, "%s:%d:endif\n", zconf_curname(), zconf_lineno()); } }; -if_stmt: if_entry if_block if_end -; - -if_block: - /* empty */ - | if_block common_stmt - | if_block menu_stmt - | if_block choice_stmt +if_stmt: if_entry stmt_list if_end ; /* menu entry */ @@ -372,27 +341,26 @@ menu: T_MENU prompt T_EOL printd(DEBUG_PARSE, "%s:%d:menu\n", zconf_curname(), zconf_lineno()); }; -menu_entry: menu visibility_list depends_list +menu_entry: menu menu_option_list { $$ = menu_add_menu(); }; menu_end: end { - if (zconf_endtoken($1, T_MENU, T_ENDMENU)) { + if (zconf_endtoken($1, "menu")) { menu_end_menu(); printd(DEBUG_PARSE, "%s:%d:endmenu\n", zconf_curname(), zconf_lineno()); } }; -menu_stmt: menu_entry menu_block menu_end +menu_stmt: menu_entry stmt_list menu_end ; -menu_block: +menu_option_list: /* empty */ - | menu_block common_stmt - | menu_block menu_stmt - | menu_block choice_stmt + | menu_option_list visible + | menu_option_list depends ; source_stmt: T_SOURCE prompt T_EOL @@ -411,7 +379,12 @@ comment: T_COMMENT prompt T_EOL printd(DEBUG_PARSE, "%s:%d:comment\n", zconf_curname(), zconf_lineno()); }; -comment_stmt: comment depends_list +comment_stmt: comment comment_option_list +; + +comment_option_list: + /* empty */ + | comment_option_list depends ; /* help option */ @@ -440,13 +413,6 @@ help: help_start T_HELPTEXT /* depends option */ -depends_list: - /* empty */ - | depends_list depends - | depends_list T_EOL - | depends_list option_error -; - depends: T_DEPENDS T_ON expr T_EOL { menu_add_dep($3); @@ -454,14 +420,7 @@ depends: T_DEPENDS T_ON expr T_EOL }; /* visibility option */ - -visibility_list: - /* empty */ - | visibility_list visible - | visibility_list T_EOL -; - -visible: T_VISIBLE if_expr +visible: T_VISIBLE if_expr T_EOL { menu_add_visibility($2); }; @@ -479,14 +438,9 @@ prompt: T_WORD | T_WORD_QUOTE ; -end: T_ENDMENU T_EOL { $$ = $1; } - | T_ENDCHOICE T_EOL { $$ = $1; } - | T_ENDIF T_EOL { $$ = $1; } -; - -nl: - T_EOL - | nl T_EOL +end: T_ENDMENU T_EOL { $$ = "menu"; } + | T_ENDCHOICE T_EOL { $$ = "choice"; } + | T_ENDIF T_EOL { $$ = "if"; } ; if_expr: /* empty */ { $$ = NULL; } @@ -518,7 +472,13 @@ word_opt: /* empty */ { $$ = NULL; } /* assignment statement */ -assignment_stmt: T_VARIABLE T_ASSIGN assign_val T_EOL { variable_add($1, $3, $2); free($1); free($3); } +assignment_stmt: T_WORD assign_op assign_val T_EOL { variable_add($1, $3, $2); free($1); free($3); } + +assign_op: + T_EQUAL { $$ = VAR_RECURSIVE; } + | T_COLON_EQUAL { $$ = VAR_SIMPLE; } + | T_PLUS_EQUAL { $$ = VAR_APPEND; } +; assign_val: /* empty */ { $$ = xstrdup(""); }; @@ -563,35 +523,21 @@ void conf_parse(const char *name) sym_set_change_count(1); } -static const char *zconf_tokenname(int token) -{ - switch (token) { - case T_MENU: return "menu"; - case T_ENDMENU: return "endmenu"; - case T_CHOICE: return "choice"; - case T_ENDCHOICE: return "endchoice"; - case T_IF: return "if"; - case T_ENDIF: return "endif"; - case T_DEPENDS: return "depends"; - case T_VISIBLE: return "visible"; - } - return "<token>"; -} - -static bool zconf_endtoken(const struct kconf_id *id, int starttoken, int endtoken) +static bool zconf_endtoken(const char *tokenname, + const char *expected_tokenname) { - if (id->token != endtoken) { + if (strcmp(tokenname, expected_tokenname)) { zconf_error("unexpected '%s' within %s block", - id->name, zconf_tokenname(starttoken)); + tokenname, expected_tokenname); yynerrs++; return false; } if (current_menu->file != current_file) { zconf_error("'%s' in different file than '%s'", - id->name, zconf_tokenname(starttoken)); + tokenname, expected_tokenname); fprintf(stderr, "%s:%d: location of the '%s'\n", current_menu->file->name, current_menu->lineno, - zconf_tokenname(starttoken)); + expected_tokenname); yynerrs++; return false; } @@ -781,10 +727,5 @@ void zconfdump(FILE *out) } } -#include "zconf.lex.c" #include "util.c" -#include "confdata.c" -#include "expr.c" -#include "symbol.c" #include "menu.c" -#include "preprocess.c" diff --git a/scripts/kconfig/preprocess.c b/scripts/kconfig/preprocess.c index 5ca2df790d..592dfbfa9f 100644 --- a/scripts/kconfig/preprocess.c +++ b/scripts/kconfig/preprocess.c @@ -2,6 +2,7 @@ // // Copyright (C) 2018 Masahiro Yamada <yamada.masahiro@socionext.com> +#include <ctype.h> #include <stdarg.h> #include <stdbool.h> #include <stdio.h> @@ -9,6 +10,7 @@ #include <string.h> #include "list.h" +#include "lkc.h" #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) @@ -555,8 +557,7 @@ char *expand_string(const char *in) static bool is_end_of_token(char c) { - /* Why are '.' and '/' valid characters for symbols? */ - return !(isalnum(c) || c == '_' || c == '-' || c == '.' || c == '/'); + return !(isalnum(c) || c == '_' || c == '-'); } /* diff --git a/scripts/kconfig/qconf.cc b/scripts/kconfig/qconf.cc index ef4310f255..ce7fc87a49 100644 --- a/scripts/kconfig/qconf.cc +++ b/scripts/kconfig/qconf.cc @@ -1,7 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0 /* * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> * Copyright (C) 2015 Boris Barbulovski <bbarbulovski@gmail.com> - * Released under the terms of the GNU GPL v2.0. */ #include <qglobal.h> @@ -32,7 +32,7 @@ #include "qconf.h" #include "qconf.moc" -#include "images.c" +#include "images.h" static QApplication *configApp; @@ -1392,6 +1392,8 @@ ConfigMainWindow::ConfigMainWindow(void) conf_set_changed_callback(conf_changed); // Set saveAction's initial state conf_changed(); + configname = xstrdup(conf_get_configname()); + QAction *saveAsAction = new QAction("Save &As...", this); connect(saveAsAction, SIGNAL(triggered(bool)), SLOT(saveConfigAs())); QAction *searchAction = new QAction("&Find", this); @@ -1520,17 +1522,29 @@ ConfigMainWindow::ConfigMainWindow(void) void ConfigMainWindow::loadConfig(void) { - QString s = QFileDialog::getOpenFileName(this, "", conf_get_configname()); - if (s.isNull()) + QString str; + QByteArray ba; + const char *name; + + str = QFileDialog::getOpenFileName(this, "", configname); + if (str.isNull()) return; - if (conf_read(QFile::encodeName(s))) + + ba = str.toLocal8Bit(); + name = ba.data(); + + if (conf_read(name)) QMessageBox::information(this, "qconf", "Unable to load configuration!"); + + free(configname); + configname = xstrdup(name); + ConfigView::updateListAll(); } bool ConfigMainWindow::saveConfig(void) { - if (conf_write(NULL)) { + if (conf_write(configname)) { QMessageBox::information(this, "qconf", "Unable to save configuration!"); return false; } @@ -1541,10 +1555,24 @@ bool ConfigMainWindow::saveConfig(void) void ConfigMainWindow::saveConfigAs(void) { - QString s = QFileDialog::getSaveFileName(this, "", conf_get_configname()); - if (s.isNull()) + QString str; + QByteArray ba; + const char *name; + + str = QFileDialog::getSaveFileName(this, "", configname); + if (str.isNull()) return; - saveConfig(); + + ba = str.toLocal8Bit(); + name = ba.data(); + + if (conf_write(name)) { + QMessageBox::information(this, "qconf", "Unable to save configuration!"); + } + conf_write_autoconf(0); + + free(configname); + configname = xstrdup(name); } void ConfigMainWindow::searchConfig(void) diff --git a/scripts/kconfig/qconf.h b/scripts/kconfig/qconf.h index a40036d1b0..45bfe9b2b9 100644 --- a/scripts/kconfig/qconf.h +++ b/scripts/kconfig/qconf.h @@ -1,6 +1,6 @@ +/* SPDX-License-Identifier: GPL-2.0 */ /* * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> - * Released under the terms of the GNU GPL v2.0. */ #include <QTextBrowser> @@ -291,6 +291,7 @@ protected: class ConfigMainWindow : public QMainWindow { Q_OBJECT + char *configname; static QAction *saveAction; static void conf_changed(void); public: diff --git a/scripts/kconfig/streamline_config.pl b/scripts/kconfig/streamline_config.pl index 4686531e2f..08d76d7b3b 100755 --- a/scripts/kconfig/streamline_config.pl +++ b/scripts/kconfig/streamline_config.pl @@ -1,7 +1,7 @@ #!/usr/bin/env perl +# SPDX-License-Identifier: GPL-2.0 # # Copyright 2005-2009 - Steven Rostedt -# Licensed under the terms of the GNU GPL License version 2 # # It's simple enough to figure out how this works. # If not, then you can ask me at stripconfig@goodmis.org diff --git a/scripts/kconfig/symbol.c b/scripts/kconfig/symbol.c index 703b9b899e..1f9266dade 100644 --- a/scripts/kconfig/symbol.c +++ b/scripts/kconfig/symbol.c @@ -1,6 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0 /* * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> - * Released under the terms of the GNU GPL v2.0. */ #include <ctype.h> @@ -61,8 +61,6 @@ const char *sym_type_name(enum symbol_type type) return "string"; case S_UNKNOWN: return "unknown"; - case S_OTHER: - break; } return "???"; } @@ -88,7 +86,7 @@ static struct property *sym_get_default_prop(struct symbol *sym) return NULL; } -static struct property *sym_get_range_prop(struct symbol *sym) +struct property *sym_get_range_prop(struct symbol *sym) { struct property *prop; @@ -757,7 +755,6 @@ const char *sym_get_string_default(struct symbol *sym) return str; case S_STRING: return str; - case S_OTHER: case S_UNKNOWN: break; } diff --git a/scripts/kconfig/tests/auto_submenu/Kconfig b/scripts/kconfig/tests/auto_submenu/Kconfig index c17bf2caa7..b20761edc2 100644 --- a/scripts/kconfig/tests/auto_submenu/Kconfig +++ b/scripts/kconfig/tests/auto_submenu/Kconfig @@ -1,3 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0 + config A bool "A" default y diff --git a/scripts/kconfig/tests/auto_submenu/__init__.py b/scripts/kconfig/tests/auto_submenu/__init__.py index 32e79b85fa..25abd927fd 100644 --- a/scripts/kconfig/tests/auto_submenu/__init__.py +++ b/scripts/kconfig/tests/auto_submenu/__init__.py @@ -1,3 +1,4 @@ +# SPDX-License-Identifier: GPL-2.0 """ Create submenu for symbols that depend on the preceding one. diff --git a/scripts/kconfig/tests/choice/Kconfig b/scripts/kconfig/tests/choice/Kconfig index cc60e9ce2c..a412205b1b 100644 --- a/scripts/kconfig/tests/choice/Kconfig +++ b/scripts/kconfig/tests/choice/Kconfig @@ -1,3 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0 + config MODULES bool "Enable loadable module support" option modules diff --git a/scripts/kconfig/tests/choice/__init__.py b/scripts/kconfig/tests/choice/__init__.py index 9edcc52621..4318fce059 100644 --- a/scripts/kconfig/tests/choice/__init__.py +++ b/scripts/kconfig/tests/choice/__init__.py @@ -1,3 +1,4 @@ +# SPDX-License-Identifier: GPL-2.0 """ Basic choice tests. diff --git a/scripts/kconfig/tests/choice_value_with_m_dep/Kconfig b/scripts/kconfig/tests/choice_value_with_m_dep/Kconfig index 11ac25c260..7106c26bb3 100644 --- a/scripts/kconfig/tests/choice_value_with_m_dep/Kconfig +++ b/scripts/kconfig/tests/choice_value_with_m_dep/Kconfig @@ -1,3 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0 + config MODULES def_bool y option modules diff --git a/scripts/kconfig/tests/choice_value_with_m_dep/__init__.py b/scripts/kconfig/tests/choice_value_with_m_dep/__init__.py index f8d728c7b1..075b4e0869 100644 --- a/scripts/kconfig/tests/choice_value_with_m_dep/__init__.py +++ b/scripts/kconfig/tests/choice_value_with_m_dep/__init__.py @@ -1,3 +1,4 @@ +# SPDX-License-Identifier: GPL-2.0 """ Hide tristate choice values with mod dependency in y choice. diff --git a/scripts/kconfig/tests/err_recursive_inc/Kconfig b/scripts/kconfig/tests/err_recursive_inc/Kconfig index 0e4c8750ab..c6f4adec76 100644 --- a/scripts/kconfig/tests/err_recursive_inc/Kconfig +++ b/scripts/kconfig/tests/err_recursive_inc/Kconfig @@ -1 +1,2 @@ +# SPDX-License-Identifier: GPL-2.0-only source "Kconfig.inc1" diff --git a/scripts/kconfig/tests/err_recursive_inc/Kconfig.inc1 b/scripts/kconfig/tests/err_recursive_inc/Kconfig.inc1 index 00e408d653..01cbf0d69c 100644 --- a/scripts/kconfig/tests/err_recursive_inc/Kconfig.inc1 +++ b/scripts/kconfig/tests/err_recursive_inc/Kconfig.inc1 @@ -1,3 +1,4 @@ +# SPDX-License-Identifier: GPL-2.0-only diff --git a/scripts/kconfig/tests/err_recursive_inc/Kconfig.inc2 b/scripts/kconfig/tests/err_recursive_inc/Kconfig.inc2 index 349ea2db15..82351075ab 100644 --- a/scripts/kconfig/tests/err_recursive_inc/Kconfig.inc2 +++ b/scripts/kconfig/tests/err_recursive_inc/Kconfig.inc2 @@ -1,3 +1,4 @@ +# SPDX-License-Identifier: GPL-2.0-only source "Kconfig.inc3" diff --git a/scripts/kconfig/tests/err_recursive_inc/Kconfig.inc3 b/scripts/kconfig/tests/err_recursive_inc/Kconfig.inc3 index 0e4c8750ab..c6f4adec76 100644 --- a/scripts/kconfig/tests/err_recursive_inc/Kconfig.inc3 +++ b/scripts/kconfig/tests/err_recursive_inc/Kconfig.inc3 @@ -1 +1,2 @@ +# SPDX-License-Identifier: GPL-2.0-only source "Kconfig.inc1" diff --git a/scripts/kconfig/tests/err_recursive_inc/__init__.py b/scripts/kconfig/tests/err_recursive_inc/__init__.py index 0e4c839c54..27aa1895a0 100644 --- a/scripts/kconfig/tests/err_recursive_inc/__init__.py +++ b/scripts/kconfig/tests/err_recursive_inc/__init__.py @@ -1,3 +1,4 @@ +# SPDX-License-Identifier: GPL-2.0 """ Detect recursive inclusion error. diff --git a/scripts/kconfig/tests/err_recursive_inc/expected_stderr b/scripts/kconfig/tests/err_recursive_inc/expected_stderr index 6b582eee21..b070a31fdf 100644 --- a/scripts/kconfig/tests/err_recursive_inc/expected_stderr +++ b/scripts/kconfig/tests/err_recursive_inc/expected_stderr @@ -1,6 +1,6 @@ Recursive inclusion detected. Inclusion path: current file : Kconfig.inc1 - included from: Kconfig.inc3:1 - included from: Kconfig.inc2:3 - included from: Kconfig.inc1:4 + included from: Kconfig.inc3:2 + included from: Kconfig.inc2:4 + included from: Kconfig.inc1:5 diff --git a/scripts/kconfig/tests/inter_choice/Kconfig b/scripts/kconfig/tests/inter_choice/Kconfig index e44449f075..5698a4018d 100644 --- a/scripts/kconfig/tests/inter_choice/Kconfig +++ b/scripts/kconfig/tests/inter_choice/Kconfig @@ -1,3 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0 + config MODULES def_bool y option modules diff --git a/scripts/kconfig/tests/inter_choice/__init__.py b/scripts/kconfig/tests/inter_choice/__init__.py index 5c7fc365ed..ffea6b1148 100644 --- a/scripts/kconfig/tests/inter_choice/__init__.py +++ b/scripts/kconfig/tests/inter_choice/__init__.py @@ -1,3 +1,4 @@ +# SPDX-License-Identifier: GPL-2.0 """ Do not affect user-assigned choice value by another choice. diff --git a/scripts/kconfig/tests/new_choice_with_dep/Kconfig b/scripts/kconfig/tests/new_choice_with_dep/Kconfig index 53ef1b86e7..127731c046 100644 --- a/scripts/kconfig/tests/new_choice_with_dep/Kconfig +++ b/scripts/kconfig/tests/new_choice_with_dep/Kconfig @@ -1,3 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0 + config A bool "A" help diff --git a/scripts/kconfig/tests/new_choice_with_dep/__init__.py b/scripts/kconfig/tests/new_choice_with_dep/__init__.py index f0e0ead0f3..fe9d322539 100644 --- a/scripts/kconfig/tests/new_choice_with_dep/__init__.py +++ b/scripts/kconfig/tests/new_choice_with_dep/__init__.py @@ -1,3 +1,4 @@ +# SPDX-License-Identifier: GPL-2.0 """ Ask new choice values when they become visible. diff --git a/scripts/kconfig/tests/no_write_if_dep_unmet/Kconfig b/scripts/kconfig/tests/no_write_if_dep_unmet/Kconfig index c00b8fe54f..4767aab6d8 100644 --- a/scripts/kconfig/tests/no_write_if_dep_unmet/Kconfig +++ b/scripts/kconfig/tests/no_write_if_dep_unmet/Kconfig @@ -1,3 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0 + config A bool "A" diff --git a/scripts/kconfig/tests/no_write_if_dep_unmet/__init__.py b/scripts/kconfig/tests/no_write_if_dep_unmet/__init__.py index 207261b0fe..ffd469d1f2 100644 --- a/scripts/kconfig/tests/no_write_if_dep_unmet/__init__.py +++ b/scripts/kconfig/tests/no_write_if_dep_unmet/__init__.py @@ -1,3 +1,4 @@ +# SPDX-License-Identifier: GPL-2.0 """ Do not write choice values to .config if the dependency is unmet. diff --git a/scripts/kconfig/tests/rand_nested_choice/Kconfig b/scripts/kconfig/tests/rand_nested_choice/Kconfig index c591d51292..8350de7f73 100644 --- a/scripts/kconfig/tests/rand_nested_choice/Kconfig +++ b/scripts/kconfig/tests/rand_nested_choice/Kconfig @@ -1,3 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0 + choice prompt "choice" diff --git a/scripts/kconfig/tests/rand_nested_choice/__init__.py b/scripts/kconfig/tests/rand_nested_choice/__init__.py index e729a4e852..9e4b2db535 100644 --- a/scripts/kconfig/tests/rand_nested_choice/__init__.py +++ b/scripts/kconfig/tests/rand_nested_choice/__init__.py @@ -1,3 +1,4 @@ +# SPDX-License-Identifier: GPL-2.0 """ Set random values recursively in nested choices. diff --git a/scripts/kconfig/util.c b/scripts/kconfig/util.c index d999683bb2..29585394df 100644 --- a/scripts/kconfig/util.c +++ b/scripts/kconfig/util.c @@ -1,8 +1,7 @@ +// SPDX-License-Identifier: GPL-2.0 /* * Copyright (C) 2002-2005 Roman Zippel <zippel@linux-m68k.org> * Copyright (C) 2002-2005 Sam Ravnborg <sam@ravnborg.org> - * - * Released under the terms of the GNU GPL v2.0. */ #include <stdarg.h> diff --git a/scripts/mvebuimg.c b/scripts/mvebuimg.c new file mode 100644 index 0000000000..8e9b1f9112 --- /dev/null +++ b/scripts/mvebuimg.c @@ -0,0 +1,569 @@ +// SPDX-License-Identifier: GPL-2.0 +#include <errno.h> +#include <fcntl.h> +#include <stdint.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <sys/stat.h> +#include <sys/types.h> +#include <unistd.h> + +#define ALIGN_SUP(x, a) (((x) + ((a) - 1)) & ~((a) - 1)) +#define min(a, b) ((a) < (b) ? (a) : (b)) +#define is_power_of_two(a) (((a) & ((a) - 1)) == 0) +#define container_of(ptr, type, member) \ + (type *)((char *)(ptr) - (char *) &((type *)0)->member) + + +#define pr_err(fmt, arg...) fprintf(stderr, "ERROR: " fmt, ##arg) +#define pr_info(fmt, arg...) fprintf(stderr, "INFO: " fmt, ##arg) + +static const struct { + unsigned char id; + char *name; +} boot_ids[] = { + { 0x4d, "i2c" }, + { 0x5a, "spi" }, + { 0x69, "uart" }, + { 0x78, "sata" }, + { 0x8b, "nand" }, + { 0x9c, "pex" }, + { /* sentinel */ } +}; + +struct mvebuimg_checksum_method { + void (*update)(struct mvebuimg_checksum_method *self, + const void *buf, size_t len); +}; + +struct mvebuimg_checksum_method8 { + struct mvebuimg_checksum_method method; + uint8_t csum; +}; + +static void mvebuimg_checksum8(struct mvebuimg_checksum_method *self, + const void *buf, size_t len) +{ + struct mvebuimg_checksum_method8 *realself = + container_of(self, struct mvebuimg_checksum_method8, method); + + while (len--) { + realself->csum += *(uint8_t *)buf; + buf++; + } +} + +struct mvebuimg_checksum_method32 { + struct mvebuimg_checksum_method method; + uint32_t csum; + int mod; +}; + +static void mvebuimg_checksum32(struct mvebuimg_checksum_method *self, + const void *buf, size_t len) +{ + struct mvebuimg_checksum_method32 *realself = + container_of(self, struct mvebuimg_checksum_method32, method); + + while (len--) { + realself->csum += *(uint8_t *)buf << (8 * realself->mod); + realself->mod = (realself->mod + 1) % 4; + buf++; + } +} + +static ssize_t mvebuimg_sendfile(int outfd, int infd, + struct mvebuimg_checksum_method *csumm, + size_t count) +{ + char buf[1024]; + size_t head = 0, tail = 0; + int ret; + size_t count_read = 0, count_written = 0; + + while (count_written < count) { + if (head == tail) { + head = 0; + tail = 0; + } + + if (tail < sizeof(buf) && count_read < count) { + ret = read(infd, buf + tail, + min(count, sizeof(buf) - tail)); + if (ret < 0) { + pr_err("read error\n"); + return ret; + } + + if (ret == 0) { + pr_err("hit EOF\n"); + return -EINVAL; + } + + if (csumm) + csumm->update(csumm, buf + tail, ret); + + tail += ret; + count_read += ret; + } + + if (head < tail) { + ret = write(outfd, buf + head, tail - head); + if (ret < 0) + return ret; + + head += ret; + count_written += ret; + } + } + + return 0; +} + +static int mvebuimg_v1_write_binhdr(int fd, size_t *offset, + const char *filename, + struct mvebuimg_checksum_method8 *summ, + int is_last_header) +{ + int binhdr_fd; + char binhdr[16] = { 0, }; + struct stat s; + uint32_t hdrsize; + int ret; + off_t ret_lseek; + char trailer[4] = { 0, }; + + binhdr[0] = 0x2; + + binhdr_fd = open(filename, O_RDONLY); + if (binhdr_fd < 0) { + pr_err("Failed to open binhdr source \"%s\" (%s)\n", + filename, strerror(errno)); + return -errno; + } + + ret = fstat(binhdr_fd, &s); + if (ret < 0) { + pr_err("Failed to stat binhdr source \"%s\" (%s)\n", + filename, strerror(errno)); + return -errno; + } + + if (ALIGN_SUP(s.st_size, 4) > 0xffffff - 0x14) { + pr_err("binhdr \"%s\" too big\n", filename); + return -EINVAL; + } + + hdrsize = /* len of hdr's header */ 0x10 + + /* actual image */ ALIGN_SUP(s.st_size, 4) + + /* trailer word */ 4; + + binhdr[1] = hdrsize >> 16; + binhdr[2] = hdrsize; + binhdr[3] = hdrsize >> 8; + + /* parameters that are used by all images I know of */ + binhdr[4] = 2; + binhdr[8] = 0x5b; + binhdr[12] = 0x68; + + summ->method.update(&summ->method, binhdr, sizeof(binhdr)); + ret = pwrite(fd, binhdr, sizeof(binhdr), *offset); + if (ret < 0) { + pr_err("failed to write header of binhdr \"%s\"\n", + filename); + return -errno; + } + + *offset += sizeof(binhdr); + + ret_lseek = lseek(fd, *offset, SEEK_SET); + if (ret_lseek == (off_t)-1) { + pr_err("failed to seek to binhdr offset\n"); + return -errno; + } + + ret = mvebuimg_sendfile(fd, binhdr_fd, &summ->method, s.st_size); + if (ret < 0) + return ret; + + *offset += ALIGN_SUP(s.st_size, 4); + trailer[0] = is_last_header ? 0 : 1; + + summ->method.update(&summ->method, trailer, sizeof(4)); + ret = pwrite(fd, trailer, sizeof(trailer), *offset); + if (ret < 0) { + pr_err("failed to write trailer of binhdr \"%s\"\n", + filename); + return -errno; + } + + *offset += 4; + + return 0; +} + +static int mvebuimg_v1_write_payload(int fd, size_t *offset, + const char *filename) +{ + int payload_fd; + struct stat s; + int ret; + char pad[4] = { 0, }; + struct mvebuimg_checksum_method32 csumm32 = { + .method = { + .update = mvebuimg_checksum32, + }, + .csum = 0, + }; + + payload_fd = open(filename, O_RDONLY); + if (payload_fd < 0) { + pr_err("Failed to open payload \"%s\" (%s)\n", + filename, strerror(errno)); + return -errno; + } + + ret = fstat(payload_fd, &s); + if (ret < 0) { + pr_err("Failed to stat payload \"%s\" (%s)\n", + filename, strerror(errno)); + return -errno; + } + + lseek(fd, *offset, SEEK_SET); + + ret = mvebuimg_sendfile(fd, payload_fd, &csumm32.method, s.st_size); + if (ret < 0) + return ret; + + /* pad to a multiple of 4 bytes */ + ret = pwrite(fd, pad, ALIGN_SUP(s.st_size, 4) - s.st_size, + *offset + s.st_size); + if (ret < 0) { + pr_err("failed to write padding of payload\n"); + return -errno; + } + *offset += ALIGN_SUP(s.st_size, 4); + + /* For version 1 images the checksum doesn't seem to be necessary. We're + * still adding it for now to create bytewise identical images as + * kwbimage. + */ + pad[0] = csumm32.csum; + pad[1] = csumm32.csum >> 8; + pad[2] = csumm32.csum >> 16; + pad[3] = csumm32.csum >> 24; + + ret = pwrite(fd, pad, 4, *offset); + *offset += 4; + + return 0; +} + +/* + * Usage: create [-b binhdr]* [-o outputfilename] bootsrc payload + */ +static int mvebuimg_v1_create(int argc, char *const argv[]) +{ + int opt; + char *output = NULL; + unsigned int extensionheaders = 0; + int fd, ret; + long l; + char *endptr; + char mainhdr[0x20] = { 0, }; + struct mvebuimg_checksum_method8 csumm = { + .method = { + .update = mvebuimg_checksum8, + }, + .csum = 0, + }; + size_t offset, offset_payload; + size_t size_payload; + unsigned long payload_align = 4096; + int debug = 0; + long destaddr, execaddr; + int destaddr_provided = 0, execaddr_provided = 0; + uint8_t nand_blksz = 0; + uint8_t nand_bbloc = 0; + + optind = 0; + while ((opt = getopt(argc, argv, "+a:b:B:Dd:e:o:")) != -1) { + switch (opt) { + case 'a': + errno = 0; + payload_align = strtol(optarg, &endptr, 0); + if (errno || *endptr != '\0' || + !is_power_of_two(payload_align)) { + pr_err("Invalid payload alignment, must be a power of two\n"); + return EXIT_FAILURE; + } + break; + + case 'b': + ++extensionheaders; + break; + + case 'B': + errno = 0; + l = strtol(optarg, &endptr, 0); + if (errno || (*endptr != '\0' && *endptr != ':') || + (l != 0 && (l < 0x10000 || l > 0xff0000 || + !is_power_of_two(l)))) { + pr_err("Invalid NAND block size\n"); + return EXIT_FAILURE; + } + nand_blksz = l >> 16; + + if (*endptr != ':') + break; + + if ((*(endptr + 1) == '0' || *(endptr + 1) == '1') && + *(endptr + 2) == '\0') { + nand_bbloc = *(endptr + 1) - '0'; + } else { + pr_err("Invalid NAND bad block location\n"); + return EXIT_FAILURE; + } + + break; + + case 'D': + debug = 1; + break; + + case 'd': + errno = 0; + destaddr = strtol(optarg, &endptr, 0); + if (errno || *endptr != '\0' || + destaddr < 0 || destaddr > 0xffffffff) { + pr_err("invalid dest address\n"); + return EXIT_FAILURE; + } + destaddr_provided = 1; + break; + + case 'e': + errno = 0; + execaddr = strtol(optarg, &endptr, 0); + if (errno || *endptr != '\0' || + execaddr < 0 || execaddr > 0xffffffff) { + pr_err("invalid exec address\n"); + return EXIT_FAILURE; + } + execaddr_provided = 1; + break; + + case 'o': + if (output) { + pr_err("more than one output file specified\n"); + return EXIT_FAILURE; + } + output = optarg; + break; + + default: + pr_err("Unsupported option\n"); + return EXIT_FAILURE; + } + } + + if (argc - optind < 2) { + pr_err("too few parameters\n"); + return EXIT_FAILURE; + } + + errno = 0; + l = strtol(argv[optind], &endptr, 0); + if (errno || *endptr != '\0' || l < 0 || l > 0xff) { + int i; + int idfound = 0; + + for (i = 0; boot_ids[i].name; ++i) { + if (strcmp(boot_ids[i].name, argv[optind]) == 0) { + mainhdr[0] = boot_ids[i].id; + idfound = 1; + break; + } + } + + if (!idfound) { + fprintf(stderr, "failed to parse bootsrc\n"); + return EXIT_FAILURE; + } + + } else { + mainhdr[0] = l; + } + + if (!destaddr_provided) + destaddr = 0x1000000; + + if (!execaddr_provided) + execaddr = destaddr; + + if (!output) { + pr_err("no output option given\n"); + return EXIT_FAILURE; + } + + fd = open(output, O_CREAT | O_WRONLY | O_TRUNC, 0644); + if (fd < 0) { + pr_err("failed to open output\n"); + return EXIT_FAILURE; + } + + if (extensionheaders) + mainhdr[0x1e] = 1; + + offset = 0x20; + optind = 0; + while ((opt = getopt(argc, argv, "+a:b:B:Dd:e:o:")) != -1) { + switch (opt) { + case 'b': + --extensionheaders; + + ret = mvebuimg_v1_write_binhdr(fd, &offset, optarg, + &csumm, + extensionheaders == 0); + if (ret < 0) + return EXIT_FAILURE; + + break; + + default: + break; + } + } + + /* Align the payload to a reasonable boundary */ + offset = offset_payload = ALIGN_SUP(offset, 4096); + + /* BootROM debugging */ + mainhdr[0x01] = debug ? 0x1 : 0x0; + + /* Boot Image Format Version */ + mainhdr[0x08] = 0x1; + + /* Header size */ + mainhdr[0x09] = offset_payload >> 16; + mainhdr[0x0a] = offset_payload; + mainhdr[0x0b] = offset_payload >> 8; + + /* Offset of payload in the image */ + mainhdr[0x0c] = (char)offset_payload; + mainhdr[0x0d] = (char)(offset_payload >> 8); + mainhdr[0x0e] = (char)(offset_payload >> 16); + mainhdr[0x0f] = (char)(offset_payload >> 24); + + /* Address to load the image to */ + mainhdr[0x10] = (char)destaddr; + mainhdr[0x11] = (char)(destaddr >> 8); + mainhdr[0x12] = (char)(destaddr >> 16); + mainhdr[0x13] = (char)(destaddr >> 24); + + /* Entry point */ + mainhdr[0x14] = (char)execaddr; + mainhdr[0x15] = (char)(execaddr >> 8); + mainhdr[0x16] = (char)(execaddr >> 16); + mainhdr[0x17] = (char)(execaddr >> 24); + + /* For NAND images set block size and bad block location */ + mainhdr[0x19] = nand_blksz; + mainhdr[0x1a] = nand_bbloc; + + ret = mvebuimg_v1_write_payload(fd, &offset, argv[optind + 1]); + if (ret < 0) + return EXIT_FAILURE; + + size_payload = offset - offset_payload; + mainhdr[0x04] = (char)size_payload; + mainhdr[0x05] = (char)(size_payload >> 8); + mainhdr[0x06] = (char)(size_payload >> 16); + mainhdr[0x07] = (char)(size_payload >> 24); + + csumm.method.update(&csumm.method, mainhdr, sizeof(mainhdr)); + mainhdr[0x1f] = csumm.csum; + ret = pwrite(fd, mainhdr, sizeof(mainhdr), 0); + if (ret < 0) { + pr_err("failure write main header (%s)\n", + strerror(errno)); + return EXIT_FAILURE; + } + + ret = close(fd); + if (ret) { + pr_err("failure during output closing (%s)\n", + strerror(errno)); + return EXIT_FAILURE; + } + + return EXIT_SUCCESS; +} + +static const struct { + const char *name; + int (*func[2])(int argc, char *const argv[]); +} commands[] = { + { + .name = "create", + .func = { NULL, mvebuimg_v1_create } + }, { + /* sentinel */ + } +}; + +int main(int argc, char *const argv[]) +{ + int opt; + long version = -1; + int i; + + char *endptr; + + optind = 0; + while ((opt = getopt(argc, argv, "+v:")) != -1) { + switch (opt) { + case 'v': + errno = 0; + version = strtol(optarg, &endptr, 0); + if (errno || *endptr != '\0' || + version < 0 || version > 1) { + pr_err("Unsupported version\n"); + return EXIT_FAILURE; + } + break; + default: + pr_err("Unsupported option\n"); + return EXIT_FAILURE; + } + } + + if (version < 0) { + pr_info("Defaulting to version 1\n"); + version = 1; + } + + argc -= optind; + argv += optind; + + if (argc < 1) { + pr_err("No command given\n"); + return EXIT_FAILURE; + } + + for (i = 0; commands[i].name != NULL; ++i) { + if (strcmp(commands[i].name, argv[0]) == 0) { + if (!commands[i].func[version]) { + pr_err("ERROR: command not implemented\n"); + return EXIT_FAILURE; + } + return commands[i].func[version](argc, argv); + } + } + + pr_err("command \"%s\" not found\n", argv[0]); + return EXIT_FAILURE; +} diff --git a/scripts/socfpga_import_preloader b/scripts/socfpga_import_preloader index 63ff30ec2a..6c748fadb8 100755 --- a/scripts/socfpga_import_preloader +++ b/scripts/socfpga_import_preloader @@ -2,12 +2,13 @@ if [ "$#" -lt "2" ] then - echo "USAGE: $0 <SPL_GENERATED_DIR> <ISW_HANDOFF> <BOARD_DIRECTORY>" - echo "EXAMPLE: $0 ~/cv_soc_devkit_ghrd/software/spl_bsp/generated ~/cv_soc_devkit_ghrd/hps_isw_handoff/soc_system_hps_0/ arch/arm/boards/altera-socdk" + echo "USAGE: $0 <EMBEDDED_SDK> <ISW_HANDOFF> <BOARD_DIRECTORY>" + echo "EXAMPLE: $0 ~/altera-embedded-sdk/ ~/cv_soc_devkit_ghrd/hps_isw_handoff/soc_system_hps_0/ arch/arm/boards/altera-socdk" exit 1 fi -splroot=$1 +splroot="$(mktemp -d)" +embeddedsw=$1 handoff=$2 boardroot=$3 bareboxsrc=. @@ -56,6 +57,8 @@ copy_source() { sed -i 's/ $//g' $tgt } +python2.7 ${embeddedsw}/embedded/ip/altera/preloader/scripts/iswgen.py -i ${handoff} -o ${splroot}/ + copy_source ${splroot}/iocsr_config_cyclone5.c ${boardroot}/iocsr_config_cyclone5.c copy_source ${splroot}/pinmux_config_cyclone5.c ${boardroot}/pinmux_config.c copy_source ${splroot}/pll_config.h ${boardroot}/pll_config.h @@ -66,4 +69,6 @@ copy_source ${handoff}/sequencer_auto_ac_init.c ${boardroot}/sequencer_auto_ac_i copy_source ${handoff}/sequencer_auto_inst_init.c ${boardroot}/sequencer_auto_inst_init.c copy_source ${handoff}/sequencer_defines.h ${boardroot}/sequencer_defines.h +rm -r ${splroot} + echo "DONE" |