* [Buildroot] [PATCH 1/1] package/sunxi-tools: additional build options
@ 2018-11-13 7:09 kaplan2539 at gmail.com
2018-12-03 22:02 ` Thomas Petazzoni
2018-12-07 8:15 ` Thomas Petazzoni
0 siblings, 2 replies; 3+ messages in thread
From: kaplan2539 at gmail.com @ 2018-11-13 7:09 UTC (permalink / raw)
To: buildroot
From: Alex Kaplan <kaplan2539@gmail.com>
This patch allows to select the installation of additional commands
which are part of the sunxi-tools. It's now possible to e.g. install
sunxi-fel on the target device. The corresponding options have been
added to Config.in and sunxi-tools.mk has been modified respectively.
The default setting is to only build sunxi-nand-part.
On the host building of the misc-tools target is added, which provides
sunxi-nand-image-builder and phoenix_info.
Signed-off-by: Alex Kaplan <kaplan2539@gmail.com>
---
package/sunxi-tools/Config.in | 67 +++++++++++++++++++++++++++++++++++---
package/sunxi-tools/Config.in.host | 1 +
package/sunxi-tools/sunxi-tools.mk | 45 ++++++++++++++++++++-----
3 files changed, 100 insertions(+), 13 deletions(-)
diff --git a/package/sunxi-tools/Config.in b/package/sunxi-tools/Config.in
index 02eba95..9b61dac 100644
--- a/package/sunxi-tools/Config.in
+++ b/package/sunxi-tools/Config.in
@@ -1,9 +1,68 @@
config BR2_PACKAGE_SUNXI_TOOLS
- bool "sunxi nand-part"
+ bool "sunxi-tools"
depends on BR2_arm
help
- nand-part is part of sunxi-tools for Allwinner A10 (aka
- sun4i) and A13 (aka sun5i) based devices. It is a tool to
- repartition the internal NAND on sunxi devices.
+ Tools for Allwinner A10 (aka sun4i) and A13 (aka sun5i)
+ based devices.
http://linux-sunxi.org/Sunxi-tools
+
+if BR2_PACKAGE_SUNXI_TOOLS
+
+# from the "tools" make target
+config BR2_PACKAGE_SUNXI_TOOLS_FEXC
+ bool "sunxi-fexc (fex2bin & bin2fex)"
+ help
+ Convert between .fex board definition files and binary format.
+ These tools are specific for the linux-sunxi kernel and do not
+ apply to the mainline Linux kernel version.
+
+config BR2_PACKAGE_SUNXI_TOOLS_BOOTINFO
+ bool "sunxi-bootinfo"
+ help
+ Displays information about sunxi boot code.
+
+config BR2_PACKAGE_SUNXI_TOOLS_FEL
+ bool "sunxi-fel"
+ depends on BR2_TOOLCHAIN_HAS_THREADS #libusb
+ select BR2_PACKAGE_LIBUSB
+ help
+ The sunxi-fel command can interact with a sunxi device in fel
+ mode. This allows do download code to memory and execute it.
+comment "sunxi-fel needs a toolchain w/ threads"
+ depends on !BR2_TOOLCHAIN_HAS_THREADS
+
+config BR2_PACKAGE_SUNXI_TOOLS_NAND_PART
+ bool "sunxi-nand-part"
+ help
+ The sunxi-nand-part command allows to repartition the internal
+ NAND on sunxi devices.
+ default y
+
+config BR2_PACKAGE_SUNXI_TOOLS_PIO
+ bool "sunxi-pio"
+ help
+ GPIO manipulation tool for sunxi boards.
+
+config BR2_PACKAGE_SUNXI_TOOLS_MEMINFO
+ bool "sunxi-meminfo"
+ help
+ Utility to retrieve DRAM information from registers on Allwinner
+ SoCs. Specific for the linux-sunxi kernel - does not apply to
+ the mainline Linux kernel version.
+
+config BR2_PACKAGE_SUNXI_TOOLS_PHOENIX_INFO
+ bool "phoenix_info"
+ help
+ Display information about self-installing SD card images (created
+ with Phoenix Card).
+
+ https://linux-sunxi.org/PhoenixCard
+
+config BR2_PACKAGE_SUNXI_TOOLS_NAND_IMAGE_BUILDER
+ bool "sunxi-nand-image-builder"
+ help
+ Creates a raw NAND image that can be read by the sunxi NAND
+ controller.
+
+endif #BR2_PACKAGE_SUNXI_TOOLS
diff --git a/package/sunxi-tools/Config.in.host b/package/sunxi-tools/Config.in.host
index 5fab5e6..66056ca 100644
--- a/package/sunxi-tools/Config.in.host
+++ b/package/sunxi-tools/Config.in.host
@@ -1,6 +1,7 @@
config BR2_PACKAGE_HOST_SUNXI_TOOLS
bool "host sunxi-tools"
depends on BR2_arm
+ select BR2_PACKAGE_HOST_LIBUSB
help
Tools for Allwinner A10 (aka sun4i) and A13 (aka sun5i)
based devices. This includes fex2bin which can be used to
diff --git a/package/sunxi-tools/sunxi-tools.mk b/package/sunxi-tools/sunxi-tools.mk
index 3a44cf6..4f0b944 100644
--- a/package/sunxi-tools/sunxi-tools.mk
+++ b/package/sunxi-tools/sunxi-tools.mk
@@ -11,25 +11,52 @@ SUNXI_TOOLS_LICENSE_FILES = LICENSE.md
HOST_SUNXI_TOOLS_DEPENDENCIES = host-libusb host-pkgconf
FEX2BIN = $(HOST_DIR)/bin/fex2bin
+SUNXI_TOOLS_TARGETS_$(BR2_PACKAGE_SUNXI_TOOLS_FEXC) += sunxi-fexc
+SUNXI_TOOLS_TARGETS_$(BR2_PACKAGE_SUNXI_TOOLS_BOOTINFO) += sunxi-bootinfo
+SUNXI_TOOLS_TARGETS_$(BR2_PACKAGE_SUNXI_TOOLS_FEL) += sunxi-fel
+SUNXI_TOOLS_TARGETS_$(BR2_PACKAGE_SUNXI_TOOLS_NAND_PART) += sunxi-nand-part
+SUNXI_TOOLS_TARGETS_$(BR2_PACKAGE_SUNXI_TOOLS_PIO) += sunxi-pio
+SUNXI_TOOLS_TARGETS_$(BR2_PACKAGE_SUNXI_TOOLS_MEMINFO) += sunxi-meminfo
+SUNXI_TOOLS_TARGETS_$(BR2_PACKAGE_SUNXI_TOOLS_PHOENIX_INFO) += phoenix_info
+SUNXI_TOOLS_TARGETS_$(BR2_PACKAGE_SUNXI_TOOLS_NAND_IMAGE_BUILDER) += \
+ sunxi-nand-image-builder
+
+ifeq ($(BR2_PACKAGE_SUNXI_TOOLS_FEXC),y)
+SUNXI_TOOLS_FEXC_LINKS += fex2bin bin2fex
+endif
+
+ifeq ($(BR2_PACKAGE_SUNXI_TOOLS_FEL),y)
+SUNXI_TOOLS_DEPENDENCIES += libusb host-pkgconf
+endif
+
define HOST_SUNXI_TOOLS_BUILD_CMDS
- $(HOST_MAKE_ENV) $(MAKE) CC="$(HOSTCC)" PREFIX=$(HOST_DIR) \
- EXTRA_CFLAGS="$(HOST_CFLAGS)" LDFLAGS="$(HOST_LDFLAGS)" \
- -C $(@D) tools
+ $(HOST_MAKE_ENV) $(MAKE) CROSS_COMPILE="" CC="$(HOSTCC)" \
+ PREFIX=$(HOST_DIR) EXTRA_CFLAGS="$(HOST_CFLAGS)" \
+ LDFLAGS="$(HOST_LDFLAGS)" -C $(@D) tools misc
endef
define HOST_SUNXI_TOOLS_INSTALL_CMDS
- $(HOST_MAKE_ENV) $(MAKE) PREFIX=$(HOST_DIR) \
- -C $(@D) install-tools
+ $(HOST_MAKE_ENV) $(MAKE) CROSS_COMPILE="" CC="$(HOSTCC)" \
+ PREFIX=$(HOST_DIR) EXTRA_CFLAGS="$(HOST_CFLAGS)" \
+ LDFLAGS="$(HOST_LDFLAGS)" -C $(@D) install-tools install-misc
endef
define SUNXI_TOOLS_BUILD_CMDS
- $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" PREFIX=/usr \
- EXTRA_CFLAGS="$(TARGET_CFLAGS)" LDFLAGS="$(TARGET_LDFLAGS)" \
- -C $(@D) sunxi-nand-part
+ $(foreach t,$(SUNXI_TOOLS_TARGETS_y), \
+ $(TARGET_MAKE_ENV) $(MAKE) CROSS_COMPILE="$(TARGET_CROSS)" \
+ CC="$(TARGET_CC)" PREFIX=/usr \
+ EXTRA_CFLAGS="$(TARGET_CFLAGS)" \
+ LDFLAGS="$(TARGET_LDFLAGS)" -C $(@D) $(t)
+ )
endef
define SUNXI_TOOLS_INSTALL_TARGET_CMDS
- $(INSTALL) -D -m 0755 $(@D)/sunxi-nand-part $(TARGET_DIR)/usr/bin/sunxi-nand-part
+ $(foreach t,$(SUNXI_TOOLS_TARGETS_y), \
+ $(INSTALL) -D -m 0755 $(@D)/$(t) $(TARGET_DIR)/usr/bin/$(t)
+ )
+ $(foreach t,$(SUNXI_TOOLS_FEXC_LINKS), \
+ ln -nfs sunxi-fexc $(TARGET_DIR)/usr/bin/$(t)
+ )
endef
$(eval $(generic-package))
--
2.7.4
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [Buildroot] [PATCH 1/1] package/sunxi-tools: additional build options
2018-11-13 7:09 [Buildroot] [PATCH 1/1] package/sunxi-tools: additional build options kaplan2539 at gmail.com
@ 2018-12-03 22:02 ` Thomas Petazzoni
2018-12-07 8:15 ` Thomas Petazzoni
1 sibling, 0 replies; 3+ messages in thread
From: Thomas Petazzoni @ 2018-12-03 22:02 UTC (permalink / raw)
To: buildroot
Hello Alex,
On Mon, 12 Nov 2018 23:09:58 -0800, kaplan2539 at gmail.com wrote:
> From: Alex Kaplan <kaplan2539@gmail.com>
>
> This patch allows to select the installation of additional commands
> which are part of the sunxi-tools. It's now possible to e.g. install
> sunxi-fel on the target device. The corresponding options have been
> added to Config.in and sunxi-tools.mk has been modified respectively.
> The default setting is to only build sunxi-nand-part.
>
> On the host building of the misc-tools target is added, which provides
> sunxi-nand-image-builder and phoenix_info.
>
> Signed-off-by: Alex Kaplan <kaplan2539@gmail.com>
> ---
> package/sunxi-tools/Config.in | 67 +++++++++++++++++++++++++++++++++++---
> package/sunxi-tools/Config.in.host | 1 +
> package/sunxi-tools/sunxi-tools.mk | 45 ++++++++++++++++++++-----
> 3 files changed, 100 insertions(+), 13 deletions(-)
Applied to master with the following changes:
[Thomas:
- properly format Config.in
- do not select BR2_PACKAGE_HOST_LIBUSB in Config.in.host, since this
option doesn't exist
- properly indent code in sunxi-tools.mk]
Thanks!
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
^ permalink raw reply [flat|nested] 3+ messages in thread
* [Buildroot] [PATCH 1/1] package/sunxi-tools: additional build options
2018-11-13 7:09 [Buildroot] [PATCH 1/1] package/sunxi-tools: additional build options kaplan2539 at gmail.com
2018-12-03 22:02 ` Thomas Petazzoni
@ 2018-12-07 8:15 ` Thomas Petazzoni
1 sibling, 0 replies; 3+ messages in thread
From: Thomas Petazzoni @ 2018-12-07 8:15 UTC (permalink / raw)
To: buildroot
Hello,
On Mon, 12 Nov 2018 23:09:58 -0800, kaplan2539 at gmail.com wrote:
> From: Alex Kaplan <kaplan2539@gmail.com>
>
> This patch allows to select the installation of additional commands
> which are part of the sunxi-tools. It's now possible to e.g. install
> sunxi-fel on the target device. The corresponding options have been
> added to Config.in and sunxi-tools.mk has been modified respectively.
> The default setting is to only build sunxi-nand-part.
>
> On the host building of the misc-tools target is added, which provides
> sunxi-nand-image-builder and phoenix_info.
>
> Signed-off-by: Alex Kaplan <kaplan2539@gmail.com>
This patch seems to be causing some build issues:
http://autobuild.buildroot.net/?reason=sunxi-tools-v1.4.1
Some new code that gets compiled uses inl/outl, which apparently aren't
provided by musl on ARM ?
Best regards,
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2018-12-07 8:15 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-13 7:09 [Buildroot] [PATCH 1/1] package/sunxi-tools: additional build options kaplan2539 at gmail.com
2018-12-03 22:02 ` Thomas Petazzoni
2018-12-07 8:15 ` Thomas Petazzoni
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.