summaryrefslogtreecommitdiff
path: root/dev-embedded/smdk-dltool
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-06-12 11:50:53 -0500
committerroot <root@alpha.trunkmasters.com>2026-06-12 11:50:53 -0500
commit290aebdea65a02557706eaeda477fef0437b6a48 (patch)
treef87a939169a508a2e943570501b64cc16b411cda /dev-embedded/smdk-dltool
parent6783ddcd4b73d9ce586a71770caed352bec93b16 (diff)
downloadbaldeagleos-repo-290aebdea65a02557706eaeda477fef0437b6a48.tar.gz
baldeagleos-repo-290aebdea65a02557706eaeda477fef0437b6a48.tar.xz
baldeagleos-repo-290aebdea65a02557706eaeda477fef0437b6a48.zip
Adding metadata
Diffstat (limited to 'dev-embedded/smdk-dltool')
-rw-r--r--dev-embedded/smdk-dltool/Manifest1
-rw-r--r--dev-embedded/smdk-dltool/files/smdk-dltool-0.20-add-S3C64xx-support.patch66
-rw-r--r--dev-embedded/smdk-dltool/files/smdk-dltool-0.20-build.patch20
-rw-r--r--dev-embedded/smdk-dltool/files/smdk-dltool-0.20-libusb-1.0-r1.patch359
-rw-r--r--dev-embedded/smdk-dltool/metadata.xml9
-rw-r--r--dev-embedded/smdk-dltool/smdk-dltool-0.20-r4.ebuild37
6 files changed, 0 insertions, 492 deletions
diff --git a/dev-embedded/smdk-dltool/Manifest b/dev-embedded/smdk-dltool/Manifest
deleted file mode 100644
index 742f0ba6ae25..000000000000
--- a/dev-embedded/smdk-dltool/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST smdk-tools-v0.20.tar.gz 5170 BLAKE2B c414938ff98155dd16f64378a5c3524bb2fd7e21b074cb6e656ffc2aa5b7b8cc8cbe27600472a8ef20570818e253f63f1b1460784200aaf0a4fb321f79b0cfdc SHA512 2b0fd113bc9e6e6c07ad4163d404bffa8044150a2da55a8903192b9dcbead5e31d97a9315b561526f0cb2a65e415f34941bea0db3ac40e73048901fe95ff3a17
diff --git a/dev-embedded/smdk-dltool/files/smdk-dltool-0.20-add-S3C64xx-support.patch b/dev-embedded/smdk-dltool/files/smdk-dltool-0.20-add-S3C64xx-support.patch
deleted file mode 100644
index f2864b012a27..000000000000
--- a/dev-embedded/smdk-dltool/files/smdk-dltool-0.20-add-S3C64xx-support.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-From ed9e5da97fdb40082aca7acbdce5286b530fb2ba Mon Sep 17 00:00:00 2001
-From: Maurus Cuelenaere <mcuelenaere@gmail.com>
-Date: Mon, 11 Jan 2010 01:55:34 +0100
-Subject: [PATCH] Add S3C64xx support
-
-Author: unknown
-URL: http://dev.odroid.com/frs/download.php/22/Linux-dltool.tar.gz
----
- dltool.c | 19 ++++++++++++++-----
- 1 files changed, 14 insertions(+), 5 deletions(-)
-
-diff --git a/dltool.c b/dltool.c
-index 4e2d238..e76e607 100644
---- a/dltool.c
-+++ b/dltool.c
-@@ -26,6 +26,8 @@ char *dl_file = "download.dat";
- char *dl_udev = NULL;
- char *dl_ubus = NULL;
-
-+int ep_out = 0;
-+
- #define DBG(x) if (debug) { printf x; }
-
- void write_u32(unsigned char *dp, unsigned long val)
-@@ -120,9 +122,15 @@ int verify_device(struct usb_device *dev)
- DBG(("\t=> idVendor %x\n", dev->descriptor.idVendor));
- DBG(("\t=> idProduct %x\n", dev->descriptor.idProduct));
-
-- if (dev->descriptor.idVendor == 0x5345 &&
-- dev->descriptor.idProduct == 0x1234)
-+ if (dev->descriptor.idVendor == 0x5345 && dev->descriptor.idProduct == 0x1234) {
-+ ep_out = 3;
-+ return 1;
-+ }
-+ else if(dev->descriptor.idVendor == 0x4e8 && dev->descriptor.idProduct == 0x1234){
-+ printf("S3C64XX Detected!\n");
-+ ep_out = 2;
- return 1;
-+ }
-
- return 0;
- }
-@@ -180,9 +188,9 @@ int main(int argc, char **argv)
- usb_dev_handle *devh;
- int ret;
-
-- printf("SMDK42XX USB Download Tool\n");
-+ printf("SMDK42XX,S3C64XX USB Download Tool\n");
- printf("Version 0.20 (c) 2004,2005,2006"
-- "Ben Dooks <ben-linux@fluff.org>\n");
-+ " Ben Dooks <ben-linux@fluff.org>\n");
- printf("\n");
-
- while (1) {
-@@ -309,7 +317,8 @@ int main(int argc, char **argv)
- write_header(dl_data, dl_addr, dl_size);
- calc_cksum(dl_data, dl_size);
-
-- ret = usb_bulk_write(devh, 3, (void *)dl_data, dl_size, 5*1000*1000);
-+ //ret = usb_bulk_write(devh, 3, (void *)dl_data, dl_size, 5*1000*1000);
-+ ret = usb_bulk_write(devh, ep_out, (void *)dl_data, dl_size, 5*1000*1000);
- printf("=> usb_bulk_write() returned %d\n", ret);
-
- if (ret != dl_size) {
---
-1.7.0.4
diff --git a/dev-embedded/smdk-dltool/files/smdk-dltool-0.20-build.patch b/dev-embedded/smdk-dltool/files/smdk-dltool-0.20-build.patch
deleted file mode 100644
index 9b7162d77cd5..000000000000
--- a/dev-embedded/smdk-dltool/files/smdk-dltool-0.20-build.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-respect env build settings
-
---- a/Makefile
-+++ b/Makefile
-@@ -7,8 +7,13 @@
-
- .PHONY: clean
-
--dltool: dltool.c
-- $(CC) -O2 -Wall -g -lusb -o smdk-usbdl dltool.c
-+CFLAGS ?= -O2 -g
-+CFLAGS += -Wall
-+PKG_CONFIG ?= pkg-config
-+CPPFLAGS += $(shell $(PKG_CONFIG) --cflags libusb)
-+LDLIBS = $(shell $(PKG_CONFIG) --libs libusb)
-+
-+all: dltool
-
- clean:
- -rm smdk-usbdl
diff --git a/dev-embedded/smdk-dltool/files/smdk-dltool-0.20-libusb-1.0-r1.patch b/dev-embedded/smdk-dltool/files/smdk-dltool-0.20-libusb-1.0-r1.patch
deleted file mode 100644
index 15afd1380984..000000000000
--- a/dev-embedded/smdk-dltool/files/smdk-dltool-0.20-libusb-1.0-r1.patch
+++ /dev/null
@@ -1,359 +0,0 @@
-migrate to libusb-1 by me (Mike Frysinger)
-
-workaround kernel/libusb transfer sizes by Julius Werner
-
---- a/Makefile
-+++ b/Makefile
-@@ -10,8 +10,8 @@
- CFLAGS ?= -O2 -g
- CFLAGS += -Wall
- PKG_CONFIG ?= pkg-config
--CPPFLAGS += $(shell $(PKG_CONFIG) --cflags libusb)
--LDLIBS = $(shell $(PKG_CONFIG) --libs libusb)
-+CPPFLAGS += $(shell $(PKG_CONFIG) --cflags libusb-1.0)
-+LDLIBS = $(shell $(PKG_CONFIG) --libs libusb-1.0)
-
- all: dltool
-
---- a/dltool.c
-+++ b/dltool.c
-@@ -7,15 +7,25 @@
-
- #include <sys/types.h>
- #include <sys/stat.h>
-+#include <sys/param.h>
-
- #include <stdlib.h>
- #include <string.h>
- #include <stdio.h>
- #include <getopt.h>
- #include <fcntl.h>
-+#include <errno.h>
-+#include <unistd.h>
-
-
--#include <usb.h>
-+#include <libusb.h>
-+
-+/* The kernel USB layer is restrictive in the max size in a single URB.
-+ * When we exceed that, the kernel throws ENOMEM, but the libusb layer
-+ * doesn't handle things gracefully. So manually split up into chunks
-+ * ourselves so we can avoid that failure case.
-+ */
-+#define CHUNKSIZE (1 << 18)
-
- unsigned int debug = 0;
- unsigned long dl_addr = 0x30000000L;
-@@ -23,12 +33,22 @@ unsigned long dl_size = 0L;
- unsigned char *dl_data = NULL;
-
- char *dl_file = "download.dat";
--char *dl_udev = NULL;
--char *dl_ubus = NULL;
-+libusb_context *ctx = NULL;
-+libusb_device_handle *devh = NULL;
-
- int ep_out = 0;
-
- #define DBG(x) if (debug) { printf x; }
-+#define err(fmt, args...) \
-+ do { \
-+ if (devh) \
-+ libusb_close(devh); \
-+ if (ctx) \
-+ libusb_exit(ctx); \
-+ fprintf(stderr, "dltool: " fmt "\n", ## args); \
-+ exit(1); \
-+ } while (0)
-+#define errp(fmt, args...) err(fmt ": %s", ## args, strerror(errno))
-
- void write_u32(unsigned char *dp, unsigned long val)
- {
-@@ -108,25 +128,30 @@ void calc_cksum(unsigned char *data, ssize_t len)
- cp[1] = cksum >> 8;
- }
-
--int verify_device(struct usb_device *dev)
-+int verify_device(libusb_device *dev)
- {
-+ struct libusb_device_descriptor desc;
-+
-+ if (libusb_get_device_descriptor(dev, &desc))
-+ return 0;
-+
- DBG(("dev %p: configurations %d\n",
-- dev, dev->descriptor.bNumConfigurations));
-+ dev, desc.bNumConfigurations));
-
-- if (dev->descriptor.bNumConfigurations != 1)
-+ if (desc.bNumConfigurations != 1)
- return 0;
-
-- DBG(("\t=> bLength %d\n", dev->descriptor.bLength));
-- DBG(("\t=> bType %d\n", dev->descriptor.bDescriptorType));
-- DBG(("\t=> bcdUSB %x\n", dev->descriptor.bcdUSB));
-- DBG(("\t=> idVendor %x\n", dev->descriptor.idVendor));
-- DBG(("\t=> idProduct %x\n", dev->descriptor.idProduct));
-+ DBG(("\t=> bLength %d\n", desc.bLength));
-+ DBG(("\t=> bType %d\n", desc.bDescriptorType));
-+ DBG(("\t=> bcdUSB %x\n", desc.bcdUSB));
-+ DBG(("\t=> idVendor %x\n", desc.idVendor));
-+ DBG(("\t=> idProduct %x\n", desc.idProduct));
-
-- if (dev->descriptor.idVendor == 0x5345 && dev->descriptor.idProduct == 0x1234) {
-+ if (desc.idVendor == 0x5345 && desc.idProduct == 0x1234) {
- ep_out = 3;
- return 1;
- }
-- else if(dev->descriptor.idVendor == 0x4e8 && dev->descriptor.idProduct == 0x1234){
-+ else if(desc.idVendor == 0x4e8 && desc.idProduct == 0x1234){
- printf("S3C64XX Detected!\n");
- ep_out = 2;
- return 1;
-@@ -173,6 +198,12 @@ struct option long_opts[] = {
- .val = 'x',
- },
- {
-+ .name = "help",
-+ .has_arg = 0,
-+ .flag = NULL,
-+ .val = 'h',
-+ },
-+ {
- .name = NULL
- }
- };
-@@ -181,12 +212,14 @@ int flg_show = 0;
-
- int main(int argc, char **argv)
- {
-- struct usb_bus *bus, *busp;
-- struct usb_device *result = NULL;
-- struct usb_device *found = NULL;
-+ ssize_t num_devs, i;
-+ libusb_device **list;
-+ libusb_device *found;
-+ int dl_ubus = -1;
-+ int dl_udev = -1;
-+ uint8_t bus_num, dev_num;
- unsigned long fsize;
-- usb_dev_handle *devh;
-- int ret;
-+ int ret, transferred;
-
- printf("SMDK42XX,S3C64XX USB Download Tool\n");
- printf("Version 0.20 (c) 2004,2005,2006"
-@@ -197,7 +230,7 @@ int main(int argc, char **argv)
- int index = 0;
- int c;
-
-- c = getopt_long(argc, argv, "a:b:d:f:s", long_opts, &index);
-+ c = getopt_long(argc, argv, "a:b:d:f:shx", long_opts, &index);
-
- DBG(("option index %d\n",c ));
-
-@@ -218,117 +251,134 @@ int main(int argc, char **argv)
- break;
-
- case 'b':
-- dl_ubus = optarg;
-+ dl_ubus = atoi(optarg);
- break;
-
- case 'd':
-- dl_udev = optarg;
-+ dl_udev = atoi(optarg);
- break;
-
- case 'x':
- debug = 1;
-+ break;
-+
-+ case 'h':
-+ puts(
-+ "Usage: dltool [options]\n"
-+ "\n"
-+ "-a <download addr>\n"
-+ "-b <bus #>\n"
-+ "-d <dev #>\n"
-+ "-f <file>\n"
-+ "-s Show found devices\n"
-+ "-x Enable debug\n"
-+ );
-+ return 0;
- }
- }
-
-- usb_init();
-- usb_find_busses();
-- usb_find_devices();
--
-- bus = usb_get_busses();
--
-- DBG(("usb_get_busses: %p\n", bus));
--
-- for (busp = bus; busp != NULL; busp = busp->next) {
-- struct usb_device *dev;
--
-- DBG(("bus %p: dirname %s\n", busp, busp->dirname));
--
-- if (dl_ubus) {
-- if (strcmp(busp->dirname, dl_ubus) != 0)
-- continue;
-- }
-+ ret = libusb_init(&ctx);
-+ if (ret)
-+ errp("could not initialize usb stack");
-
-- for (dev = busp->devices; dev != NULL; dev = dev->next) {
-- DBG(("dev %p filename %s\n", dev, dev->filename));
-+ bus_num = dev_num = 0;
-+ found = NULL;
-+ num_devs = libusb_get_device_list(ctx, &list);
-+ for (i = 0; i < num_devs; ++i) {
-+ libusb_device *dev = list[i];
-+ bus_num = libusb_get_bus_number(dev);
-+ dev_num = libusb_get_device_address(dev);
-
-- if (!verify_device(dev))
-- continue;
-+ DBG(("bus %u; dev %u (%p)\n", bus_num, dev_num, dev));
-
-- if (flg_show) {
-- printf("bus %s: device %s\n",
-- busp->dirname, dev->filename);
-- continue;
-- }
-+ if (dl_ubus >= 0 && bus_num != dl_ubus)
-+ continue;
-
-- found = dev;
-+ if (!verify_device(dev))
-+ continue;
-
-- if (dl_udev) {
-- if (strcmp(dev->filename, dl_udev) == 0) {
-- result = dev;
-- break;
-- }
-- }
-+ if (flg_show) {
-+ printf("bus %u: device %u\n", bus_num, dev_num);
-+ continue;
- }
-
-- if (result != NULL)
-- break;
-+ if (dl_udev >= 0 && dev_num != dl_udev)
-+ continue;
-+
-+ found = dev;
-+ break;
- }
-
- if (flg_show)
- return 0;
-
-- DBG(("device %p, found %p\n", result, found));
-+ DBG(("found %p\n", found));
-
-- if (result == NULL && found != NULL)
-- result = found;
--
-- if (result == NULL) {
-- fprintf(stderr, "failed to find device\n");
-- return 1;
-- }
-+ if (found == NULL)
-+ err("failed to find device\n");
-
-- printf("=> found device: bus %s, dev %s\n",
-- result->bus->dirname, result->filename);
-+ printf("=> found device: bus %u, dev %u\n",
-+ bus_num, dev_num);
-
- dl_data = load_file(dl_file, &dl_size, &fsize);
-- if (dl_data == NULL) {
-- printf("failed to load %s\n", dl_file);
-- return 1;
-- }
-+ if (dl_data == NULL)
-+ errp("failed to load %s", dl_file);
-
- printf("=> loaded %ld bytes from %s\n", fsize, dl_file);
-
-- devh = usb_open(result);
-- if (devh == NULL) {
-- perror("usb_open");
-- return 1;
-- }
-+ ret = libusb_open(found, &devh);
-+ if (ret == 0) {
-+ /*
-+ * Seems to break some recovery modes :(
-+ * http://crosbug.com/26083
-+ * These fail:
-+ * smdk-dltool -a 0x02021400 -f bl1.bin
-+ * smdk-dltool -a 0x02023400 -f bl2.bin
-+ */
-+#if 0
-+ uint8_t configuration;
-+ struct libusb_config_descriptor *config;
-+ libusb_get_active_config_descriptor(found, &config);
-+ configuration = config->bConfigurationValue;
-+ libusb_free_config_descriptor(config);
-+ libusb_set_configuration(devh, configuration);
-+#endif
-+ } else
-+ errp("libusb_open");
-
- DBG(("claim interface\n"));
-
-- if (usb_claim_interface(devh, 0) < 0) {
-- perror("usb_claim_interface");
-- usb_close(devh);
-- return 1;
-- }
-+ ret = libusb_claim_interface(devh, 0);
-+ if (ret)
-+ errp("libusb_claim_interface");
-
- printf("=> Downloading %ld bytes to 0x%08lx\n", dl_size, dl_addr);
-
- write_header(dl_data, dl_addr, dl_size);
- calc_cksum(dl_data, dl_size);
-
-- //ret = usb_bulk_write(devh, 3, (void *)dl_data, dl_size, 5*1000*1000);
-- ret = usb_bulk_write(devh, ep_out, (void *)dl_data, dl_size, 5*1000*1000);
-- printf("=> usb_bulk_write() returned %d\n", ret);
--
-- if (ret != dl_size) {
-- printf("failed to write %ld bytes\n", dl_size);
-+ transferred = 0;
-+ while (transferred < dl_size) {
-+ int actual, expected = MIN(dl_size - transferred, CHUNKSIZE);
-+ ret = libusb_bulk_transfer(devh, ep_out, dl_data + transferred,
-+ expected, &actual, 5 * 1000 * 1000);
-+ printf("=> usb_bulk_write(%d) returned %d, wrote %d\n",
-+ expected, ret, actual);
-+ transferred += actual;
-+
-+ if (ret || (expected != actual)) {
-+ printf("failed to write %ld bytes (wrote %d): %s\n",
-+ dl_size, transferred, strerror(errno));
-+ ret = 1;
-+ break;
-+ }
- }
-
- free(dl_data);
-
-- usb_release_interface(devh, 0);
-- usb_close(devh);
-+ libusb_release_interface(devh, 0);
-+ libusb_close(devh);
-+ libusb_exit(ctx);
-
-- return 0;
-+ return ret;
- }
diff --git a/dev-embedded/smdk-dltool/metadata.xml b/dev-embedded/smdk-dltool/metadata.xml
deleted file mode 100644
index 683910a78d58..000000000000
--- a/dev-embedded/smdk-dltool/metadata.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="project">
- <email>embedded@gentoo.org</email>
- <name>Embedded Gentoo</name>
- </maintainer>
- <origin>baldeagleos-repo</origin>
-</pkgmetadata>
diff --git a/dev-embedded/smdk-dltool/smdk-dltool-0.20-r4.ebuild b/dev-embedded/smdk-dltool/smdk-dltool-0.20-r4.ebuild
deleted file mode 100644
index 2f9139eec71b..000000000000
--- a/dev-embedded/smdk-dltool/smdk-dltool-0.20-r4.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-DESCRIPTION="Tool to communicate with Samsung SMDK boards"
-HOMEPAGE="http://www.fluff.org/ben/smdk/tools/"
-SRC_URI="http://www.fluff.org/ben/smdk/tools/downloads/smdk-tools-v${PV}.tar.gz"
-
-# Email sent to author on 2012-01-18 querying about license
-LICENSE="all-rights-reserved"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-RESTRICT="mirror bindist"
-
-RDEPEND="virtual/libusb:1"
-DEPEND="${RDEPEND}"
-BDEPEND="virtual/pkgconfig"
-
-S="${WORKDIR}/releases/smdk-tools-v${PV}/dltool"
-
-PATCHES=(
- "${FILESDIR}"/${P}-add-S3C64xx-support.patch
- "${FILESDIR}"/${P}-build.patch
- "${FILESDIR}"/${P}-libusb-1.0-r1.patch
-)
-
-src_configure() {
- tc-export CC PKG_CONFIG
-}
-
-src_install() {
- newbin dltool smdk-usbdl
- dodoc readme.txt
-}