mirror of
				https://xff.cz/git/u-boot/
				synced 2025-10-31 18:35:42 +01:00 
			
		
		
		
	dm: Move s3c24xx USB driver to a proper place
Signed-off-by: Marek Vasut <marex@denx.de> Cc: David Müller <d.mueller@elsoft.ch> Cc: Minkyu Kang <mk7.kang@samsung.com> Cc: Wolfgang Denk <wd@denx.de> Cc: Albert Aribaud <albert.u.boot@aribaud.net> Cc: U-Boot DM <u-boot-dm@lists.denx.de>
This commit is contained in:
		
				
					committed by
					
						 Albert ARIBAUD
						Albert ARIBAUD
					
				
			
			
				
	
			
			
			
						parent
						
							d731282e7c
						
					
				
				
					commit
					fb24ffc086
				
			| @@ -29,9 +29,6 @@ COBJS-$(CONFIG_USE_IRQ) += interrupts.o | |||||||
| COBJS-$(CONFIG_DISPLAY_CPUINFO)	+= cpu_info.o | COBJS-$(CONFIG_DISPLAY_CPUINFO)	+= cpu_info.o | ||||||
| COBJS-y	+= speed.o | COBJS-y	+= speed.o | ||||||
| COBJS-y	+= timer.o | COBJS-y	+= timer.o | ||||||
| COBJS-y	+= usb.o |  | ||||||
| COBJS-y	+= usb_ohci.o |  | ||||||
|  |  | ||||||
|  |  | ||||||
| SRCS	:= $(SOBJS:.o=.S) $(COBJS-y:.o=.c) | SRCS	:= $(SOBJS:.o=.S) $(COBJS-y:.o=.c) | ||||||
| OBJS	:= $(addprefix $(obj),$(SOBJS) $(COBJS-y)) | OBJS	:= $(addprefix $(obj),$(SOBJS) $(COBJS-y)) | ||||||
|   | |||||||
| @@ -1,71 +0,0 @@ | |||||||
| /* |  | ||||||
|  * (C) Copyright 2006 |  | ||||||
|  * DENX Software Engineering <mk@denx.de> |  | ||||||
|  * |  | ||||||
|  * See file CREDITS for list of people who contributed to this |  | ||||||
|  * project. |  | ||||||
|  * |  | ||||||
|  * This program is free software; you can redistribute it and/or |  | ||||||
|  * modify it under the terms of the GNU General Public License as |  | ||||||
|  * published by the Free Software Foundation; either version 2 of |  | ||||||
|  * the License, or (at your option) any later version. |  | ||||||
|  * |  | ||||||
|  * This program is distributed in the hope that it will be useful, |  | ||||||
|  * but WITHOUT ANY WARRANTY; without even the implied warranty of |  | ||||||
|  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the |  | ||||||
|  * GNU General Public License for more details. |  | ||||||
|  * |  | ||||||
|  * You should have received a copy of the GNU General Public License |  | ||||||
|  * along with this program; if not, write to the Free Software |  | ||||||
|  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, |  | ||||||
|  * MA 02111-1307 USA |  | ||||||
|  */ |  | ||||||
|  |  | ||||||
| #include <common.h> |  | ||||||
|  |  | ||||||
| #if defined(CONFIG_USB_OHCI_NEW) && \ |  | ||||||
|     defined(CONFIG_SYS_USB_OHCI_CPU_INIT) && \ |  | ||||||
|     defined(CONFIG_S3C24X0) |  | ||||||
|  |  | ||||||
| #include <asm/arch/s3c24x0_cpu.h> |  | ||||||
| #include <asm/io.h> |  | ||||||
|  |  | ||||||
| int usb_cpu_init(void) |  | ||||||
| { |  | ||||||
| 	struct s3c24x0_clock_power *clk_power = s3c24x0_get_base_clock_power(); |  | ||||||
| 	struct s3c24x0_gpio *gpio = s3c24x0_get_base_gpio(); |  | ||||||
|  |  | ||||||
| 	/* |  | ||||||
| 	 * Set the 48 MHz UPLL clocking. Values are taken from |  | ||||||
| 	 * "PLL value selection guide", 6-23, s3c2400_UM.pdf. |  | ||||||
| 	 */ |  | ||||||
| 	writel((40 << 12) + (1 << 4) + 2, &clk_power->upllcon); |  | ||||||
| 	/* 1 = use pads related USB for USB host */ |  | ||||||
| 	writel(readl(&gpio->misccr) | 0x8, &gpio->misccr); |  | ||||||
|  |  | ||||||
| 	/* |  | ||||||
| 	 * Enable USB host clock. |  | ||||||
| 	 */ |  | ||||||
| 	writel(readl(&clk_power->clkcon) | (1 << 4), &clk_power->clkcon); |  | ||||||
|  |  | ||||||
| 	return 0; |  | ||||||
| } |  | ||||||
|  |  | ||||||
| int usb_cpu_stop(void) |  | ||||||
| { |  | ||||||
| 	struct s3c24x0_clock_power *clk_power = s3c24x0_get_base_clock_power(); |  | ||||||
| 	/* may not want to do this */ |  | ||||||
| 	writel(readl(&clk_power->clkcon) & ~(1 << 4), &clk_power->clkcon); |  | ||||||
| 	return 0; |  | ||||||
| } |  | ||||||
|  |  | ||||||
| int usb_cpu_init_fail(void) |  | ||||||
| { |  | ||||||
| 	struct s3c24x0_clock_power *clk_power = s3c24x0_get_base_clock_power(); |  | ||||||
| 	writel(readl(&clk_power->clkcon) & ~(1 << 4), &clk_power->clkcon); |  | ||||||
| 	return 0; |  | ||||||
| } |  | ||||||
|  |  | ||||||
| #endif /* defined(CONFIG_USB_OHCI_NEW) && \ |  | ||||||
| 	   defined(CONFIG_SYS_USB_OHCI_CPU_INIT) && \ |  | ||||||
| 	   defined(CONFIG_S3C24X0) */ |  | ||||||
| @@ -33,6 +33,7 @@ COBJS-$(CONFIG_USB_ISP116X_HCD) += isp116x-hcd.o | |||||||
| COBJS-$(CONFIG_USB_R8A66597_HCD) += r8a66597-hcd.o | COBJS-$(CONFIG_USB_R8A66597_HCD) += r8a66597-hcd.o | ||||||
| COBJS-$(CONFIG_USB_S3C64XX) += s3c64xx-hcd.o | COBJS-$(CONFIG_USB_S3C64XX) += s3c64xx-hcd.o | ||||||
| COBJS-$(CONFIG_USB_SL811HS) += sl811-hcd.o | COBJS-$(CONFIG_USB_SL811HS) += sl811-hcd.o | ||||||
|  | COBJS-$(CONFIG_USB_OHCI_S3C24XX) += ohci-s3c24xx.o | ||||||
|  |  | ||||||
| # echi | # echi | ||||||
| COBJS-$(CONFIG_USB_EHCI) += ehci-hcd.o | COBJS-$(CONFIG_USB_EHCI) += ehci-hcd.o | ||||||
|   | |||||||
| @@ -42,7 +42,7 @@ | |||||||
| #include <asm/io.h> | #include <asm/io.h> | ||||||
| #include <malloc.h> | #include <malloc.h> | ||||||
| #include <usb.h> | #include <usb.h> | ||||||
| #include "usb_ohci.h" | #include "ohci-s3c24xx.h" | ||||||
| 
 | 
 | ||||||
| #define OHCI_USE_NPS		/* force NoPowerSwitching mode */ | #define OHCI_USE_NPS		/* force NoPowerSwitching mode */ | ||||||
| #undef OHCI_VERBOSE_DEBUG	/* not always helpful */ | #undef OHCI_VERBOSE_DEBUG	/* not always helpful */ | ||||||
| @@ -1755,3 +1755,47 @@ int usb_lowlevel_stop(int index) | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| #endif /* defined(CONFIG_USB_OHCI) && defined(CONFIG_S3C24X0) */ | #endif /* defined(CONFIG_USB_OHCI) && defined(CONFIG_S3C24X0) */ | ||||||
|  | 
 | ||||||
|  | #if defined(CONFIG_USB_OHCI_NEW) && \ | ||||||
|  |     defined(CONFIG_SYS_USB_OHCI_CPU_INIT) && \ | ||||||
|  |     defined(CONFIG_S3C24X0) | ||||||
|  | 
 | ||||||
|  | int usb_cpu_init(void) | ||||||
|  | { | ||||||
|  | 	struct s3c24x0_clock_power *clk_power = s3c24x0_get_base_clock_power(); | ||||||
|  | 	struct s3c24x0_gpio *gpio = s3c24x0_get_base_gpio(); | ||||||
|  | 
 | ||||||
|  | 	/*
 | ||||||
|  | 	 * Set the 48 MHz UPLL clocking. Values are taken from | ||||||
|  | 	 * "PLL value selection guide", 6-23, s3c2400_UM.pdf. | ||||||
|  | 	 */ | ||||||
|  | 	writel((40 << 12) + (1 << 4) + 2, &clk_power->upllcon); | ||||||
|  | 	/* 1 = use pads related USB for USB host */ | ||||||
|  | 	writel(readl(&gpio->misccr) | 0x8, &gpio->misccr); | ||||||
|  | 
 | ||||||
|  | 	/*
 | ||||||
|  | 	 * Enable USB host clock. | ||||||
|  | 	 */ | ||||||
|  | 	writel(readl(&clk_power->clkcon) | (1 << 4), &clk_power->clkcon); | ||||||
|  | 
 | ||||||
|  | 	return 0; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | int usb_cpu_stop(void) | ||||||
|  | { | ||||||
|  | 	struct s3c24x0_clock_power *clk_power = s3c24x0_get_base_clock_power(); | ||||||
|  | 	/* may not want to do this */ | ||||||
|  | 	writel(readl(&clk_power->clkcon) & ~(1 << 4), &clk_power->clkcon); | ||||||
|  | 	return 0; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | int usb_cpu_init_fail(void) | ||||||
|  | { | ||||||
|  | 	struct s3c24x0_clock_power *clk_power = s3c24x0_get_base_clock_power(); | ||||||
|  | 	writel(readl(&clk_power->clkcon) & ~(1 << 4), &clk_power->clkcon); | ||||||
|  | 	return 0; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | #endif /* defined(CONFIG_USB_OHCI_NEW) && \ | ||||||
|  | 	   defined(CONFIG_SYS_USB_OHCI_CPU_INIT) && \ | ||||||
|  | 	   defined(CONFIG_S3C24X0) */ | ||||||
| @@ -124,6 +124,7 @@ | |||||||
|  |  | ||||||
| /* USB support (currently only works with D-cache off) */ | /* USB support (currently only works with D-cache off) */ | ||||||
| #define CONFIG_USB_OHCI | #define CONFIG_USB_OHCI | ||||||
|  | #define CONFIG_USB_OHCI_S3C24XX | ||||||
| #define CONFIG_USB_KEYBOARD | #define CONFIG_USB_KEYBOARD | ||||||
| #define CONFIG_USB_STORAGE | #define CONFIG_USB_STORAGE | ||||||
| #define CONFIG_DOS_PARTITION | #define CONFIG_DOS_PARTITION | ||||||
|   | |||||||
| @@ -66,6 +66,7 @@ | |||||||
|  * USB support (currently only works with D-cache off) |  * USB support (currently only works with D-cache off) | ||||||
|  ************************************************************/ |  ************************************************************/ | ||||||
| #define CONFIG_USB_OHCI | #define CONFIG_USB_OHCI | ||||||
|  | #define CONFIG_USB_OHCI_S3C24XX | ||||||
| #define CONFIG_USB_KEYBOARD | #define CONFIG_USB_KEYBOARD | ||||||
| #define CONFIG_USB_STORAGE | #define CONFIG_USB_STORAGE | ||||||
| #define CONFIG_DOS_PARTITION | #define CONFIG_DOS_PARTITION | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user