| @@ -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. | # This is free software, licensed under the GNU General Public License v2. | ||||||
| # See /LICENSE for more information. | # See /LICENSE for more information. | ||||||
| @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk | |||||||
| include $(INCLUDE_DIR)/kernel.mk | include $(INCLUDE_DIR)/kernel.mk | ||||||
|  |  | ||||||
| PKG_NAME:=w1-gpio-custom | PKG_NAME:=w1-gpio-custom | ||||||
| PKG_RELEASE:=1 | PKG_RELEASE:=2 | ||||||
|  |  | ||||||
| include $(INCLUDE_DIR)/package.mk | include $(INCLUDE_DIR)/package.mk | ||||||
|  |  | ||||||
| @@ -18,7 +18,6 @@ define KernelPackage/w1-gpio-custom | |||||||
|   TITLE:=Custom GPIO-based 1-wire device |   TITLE:=Custom GPIO-based 1-wire device | ||||||
|   DEPENDS:=kmod-w1 +kmod-w1-master-gpio |   DEPENDS:=kmod-w1 +kmod-w1-master-gpio | ||||||
|   FILES:=$(PKG_BUILD_DIR)/w1-gpio-custom.$(LINUX_KMOD_SUFFIX) |   FILES:=$(PKG_BUILD_DIR)/w1-gpio-custom.$(LINUX_KMOD_SUFFIX) | ||||||
|   AUTOLOAD:=$(call AutoLoad,55,w1-gpio-custom) |  | ||||||
|   KCONFIG:= |   KCONFIG:= | ||||||
| endef | endef | ||||||
|  |  | ||||||
|   | |||||||
| @@ -47,7 +47,7 @@ | |||||||
|  |  | ||||||
| #define DRV_NAME	"w1-gpio-custom" | #define DRV_NAME	"w1-gpio-custom" | ||||||
| #define DRV_DESC	"Custom GPIO-based W1 driver" | #define DRV_DESC	"Custom GPIO-based W1 driver" | ||||||
| #define DRV_VERSION	"0.1.0" | #define DRV_VERSION	"0.1.1" | ||||||
|  |  | ||||||
| #define PFX		DRV_NAME ": " | #define PFX		DRV_NAME ": " | ||||||
|  |  | ||||||
| @@ -86,7 +86,7 @@ static void w1_gpio_custom_cleanup(void) | |||||||
|  |  | ||||||
| 	for (i = 0; i < nr_devices; i++) | 	for (i = 0; i < nr_devices; i++) | ||||||
| 		if (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) | 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; | 		goto err; | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	devices[nr_devices++] = pdev; |  | ||||||
|  |  | ||||||
| 	pdata.pin = params[BUS_PARAM_PIN]; | 	pdata.pin = params[BUS_PARAM_PIN]; | ||||||
| 	pdata.is_open_drain = params[BUS_PARAM_OD] ? 1:0; | 	pdata.is_open_drain = params[BUS_PARAM_OD] ? 1:0; | ||||||
|  |  | ||||||
| 	err = platform_device_add_data(pdev, &pdata, sizeof(pdata)); | 	err = platform_device_add_data(pdev, &pdata, sizeof(pdata)); | ||||||
| 	if (err) | 	if (err) | ||||||
| 		goto err; | 		goto err_put; | ||||||
|  |  | ||||||
| 	err = platform_device_register(pdev); | 	err = platform_device_add(pdev); | ||||||
| 	if (err) | 	if (err) | ||||||
| 		goto err; | 		goto err_put; | ||||||
|  |  | ||||||
|  | 	devices[nr_devices++] = pdev; | ||||||
| 	return 0; | 	return 0; | ||||||
|  |  | ||||||
| err: |  err_put: | ||||||
|  | 	platform_device_put(pdev); | ||||||
|  |  err: | ||||||
| 	return err; | 	return err; | ||||||
| } | } | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Gabor Juhos
					Gabor Juhos