diff options
author | Julia Lawall <Julia.Lawall@lip6.fr> | 2012-07-30 10:43:44 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-08-10 15:04:09 -0400 |
commit | 63fd0ae4b7ca60f7322341b0fbd9cda2f3d2e22d (patch) | |
tree | 314210c7efc35f37adae28e6260d91fa21304a78 /drivers/usb/host/ehci-s5p.c | |
parent | 1c5404f7abd250ce71849c2687d266073b54e1d4 (diff) |
drivers/usb/host/ehci-s5p.c: use devm_ functions
The various devm_ functions allocate memory that is released when a driver
detaches. This patch uses these functions for data that is allocated in
the probe function of a platform device and is only freed in the remove
function.
Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/host/ehci-s5p.c')
-rw-r--r-- | drivers/usb/host/ehci-s5p.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/drivers/usb/host/ehci-s5p.c b/drivers/usb/host/ehci-s5p.c index 9d8f1dd57cb..d055503e418 100644 --- a/drivers/usb/host/ehci-s5p.c +++ b/drivers/usb/host/ehci-s5p.c | |||
@@ -128,7 +128,7 @@ static int __devinit s5p_ehci_probe(struct platform_device *pdev) | |||
128 | } | 128 | } |
129 | 129 | ||
130 | s5p_ehci->hcd = hcd; | 130 | s5p_ehci->hcd = hcd; |
131 | s5p_ehci->clk = clk_get(&pdev->dev, "usbhost"); | 131 | s5p_ehci->clk = devm_clk_get(&pdev->dev, "usbhost"); |
132 | 132 | ||
133 | if (IS_ERR(s5p_ehci->clk)) { | 133 | if (IS_ERR(s5p_ehci->clk)) { |
134 | dev_err(&pdev->dev, "Failed to get usbhost clock\n"); | 134 | dev_err(&pdev->dev, "Failed to get usbhost clock\n"); |
@@ -138,7 +138,7 @@ static int __devinit s5p_ehci_probe(struct platform_device *pdev) | |||
138 | 138 | ||
139 | err = clk_enable(s5p_ehci->clk); | 139 | err = clk_enable(s5p_ehci->clk); |
140 | if (err) | 140 | if (err) |
141 | goto fail_clken; | 141 | goto fail_clk; |
142 | 142 | ||
143 | res = platform_get_resource(pdev, IORESOURCE_MEM, 0); | 143 | res = platform_get_resource(pdev, IORESOURCE_MEM, 0); |
144 | if (!res) { | 144 | if (!res) { |
@@ -184,8 +184,6 @@ static int __devinit s5p_ehci_probe(struct platform_device *pdev) | |||
184 | 184 | ||
185 | fail_io: | 185 | fail_io: |
186 | clk_disable(s5p_ehci->clk); | 186 | clk_disable(s5p_ehci->clk); |
187 | fail_clken: | ||
188 | clk_put(s5p_ehci->clk); | ||
189 | fail_clk: | 187 | fail_clk: |
190 | usb_put_hcd(hcd); | 188 | usb_put_hcd(hcd); |
191 | return err; | 189 | return err; |
@@ -203,7 +201,6 @@ static int __devexit s5p_ehci_remove(struct platform_device *pdev) | |||
203 | pdata->phy_exit(pdev, S5P_USB_PHY_HOST); | 201 | pdata->phy_exit(pdev, S5P_USB_PHY_HOST); |
204 | 202 | ||
205 | clk_disable(s5p_ehci->clk); | 203 | clk_disable(s5p_ehci->clk); |
206 | clk_put(s5p_ehci->clk); | ||
207 | 204 | ||
208 | usb_put_hcd(hcd); | 205 | usb_put_hcd(hcd); |
209 | 206 | ||