summaryrefslogtreecommitdiffstats
path: root/fs/devfs-core.c
diff options
context:
space:
mode:
authorJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>2011-06-10 12:14:24 +0800
committerJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>2012-04-30 20:37:40 +0800
commit7e3a16ef14ec2a83853bdcf631b28939f01f0c18 (patch)
tree2b92eda76480490fec9ef84668efb986071aca09 /fs/devfs-core.c
parentc43a0877186ba4d742a27356014a3762195655d9 (diff)
downloadbarebox-7e3a16ef14ec2a83853bdcf631b28939f01f0c18.tar.gz
barebox-7e3a16ef14ec2a83853bdcf631b28939f01f0c18.tar.xz
complete: add delpart complete support
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Diffstat (limited to 'fs/devfs-core.c')
-rw-r--r--fs/devfs-core.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/fs/devfs-core.c b/fs/devfs-core.c
index 3014d0ebff..ff6a97627a 100644
--- a/fs/devfs-core.c
+++ b/fs/devfs-core.c
@@ -20,6 +20,7 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include <common.h>
+#include <complete.h>
#include <driver.h>
#include <errno.h>
#include <malloc.h>
@@ -29,6 +30,24 @@
LIST_HEAD(cdev_list);
+#ifdef CONFIG_AUTO_COMPLETE
+int devfs_partition_complete(struct string_list *sl, char *instr)
+{
+ struct cdev *cdev;
+ int len;
+
+ len = strlen(instr);
+
+ list_for_each_entry(cdev, &cdev_list, list) {
+ if (cdev->flags & DEVFS_IS_PARTITION &&
+ !strncmp(instr, cdev->name, len)) {
+ string_list_add_asprintf(sl, "%s ", cdev->name);
+ }
+ }
+ return COMPLETE_CONTINUE;
+}
+#endif
+
struct cdev *cdev_by_name(const char *filename)
{
struct cdev *cdev;