From: Gabor Juhos Date: Mon, 8 Mar 2010 17:35:03 +0000 (+0000) Subject: package: fix w1-gpio-custom package (closes #6770) X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=3bc81edc70e8;p=librecmc%2Flibrecmc.git package: fix w1-gpio-custom package (closes #6770) SVN-Revision: 20066 --- diff --git a/package/w1-gpio-custom/Makefile b/package/w1-gpio-custom/Makefile index f15dac94e0..bbd9600209 100644 --- a/package/w1-gpio-custom/Makefile +++ b/package/w1-gpio-custom/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2008 OpenWrt.org +# Copyright (C) 2008-2010 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=w1-gpio-custom -PKG_RELEASE:=1 +PKG_RELEASE:=2 include $(INCLUDE_DIR)/package.mk @@ -18,7 +18,6 @@ define KernelPackage/w1-gpio-custom TITLE:=Custom GPIO-based 1-wire device DEPENDS:=kmod-w1 +kmod-w1-master-gpio FILES:=$(PKG_BUILD_DIR)/w1-gpio-custom.$(LINUX_KMOD_SUFFIX) - AUTOLOAD:=$(call AutoLoad,55,w1-gpio-custom) KCONFIG:= endef diff --git a/package/w1-gpio-custom/src/w1-gpio-custom.c b/package/w1-gpio-custom/src/w1-gpio-custom.c index 22c0b787f0..8f739d49fd 100644 --- a/package/w1-gpio-custom/src/w1-gpio-custom.c +++ b/package/w1-gpio-custom/src/w1-gpio-custom.c @@ -47,7 +47,7 @@ #define DRV_NAME "w1-gpio-custom" #define DRV_DESC "Custom GPIO-based W1 driver" -#define DRV_VERSION "0.1.0" +#define DRV_VERSION "0.1.1" #define PFX DRV_NAME ": " @@ -86,7 +86,7 @@ static void w1_gpio_custom_cleanup(void) for (i = 0; i < nr_devices; i++) if (devices[i]) - platform_device_unregister(devices[i]); + platform_device_put(devices[i]); } static int __init w1_gpio_custom_add_one(unsigned int id, unsigned int *params) @@ -110,22 +110,23 @@ static int __init w1_gpio_custom_add_one(unsigned int id, unsigned int *params) goto err; } - devices[nr_devices++] = pdev; - pdata.pin = params[BUS_PARAM_PIN]; pdata.is_open_drain = params[BUS_PARAM_OD] ? 1:0; err = platform_device_add_data(pdev, &pdata, sizeof(pdata)); if (err) - goto err; + goto err_put; - err = platform_device_register(pdev); + err = platform_device_add(pdev); if (err) - goto err; + goto err_put; + devices[nr_devices++] = pdev; return 0; -err: + err_put: + platform_device_put(pdev); + err: return err; }