mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-26 01:30:54 +07:00
[ARM] 4173/1: S3C24XX usb device platform datas
This patch is adding the functions and structures used for handling the S3C24XX udc driver platform datas. Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org> Acked-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
parent
b05f87172f
commit
0dcfc328cc
@ -29,6 +29,7 @@
|
||||
#include <asm/irq.h>
|
||||
|
||||
#include <asm/arch/regs-serial.h>
|
||||
#include <asm/arch/udc.h>
|
||||
|
||||
#include <asm/plat-s3c24xx/devs.h>
|
||||
#include <asm/plat-s3c24xx/cpu.h>
|
||||
@ -230,6 +231,20 @@ struct platform_device s3c_device_usbgadget = {
|
||||
|
||||
EXPORT_SYMBOL(s3c_device_usbgadget);
|
||||
|
||||
void __init s3c24xx_udc_set_platdata(struct s3c2410_udc_mach_info *pd)
|
||||
{
|
||||
struct s3c2410_udc_mach_info *npd;
|
||||
|
||||
npd = kmalloc(sizeof(*npd), GFP_KERNEL);
|
||||
if (npd) {
|
||||
memcpy(npd, pd, sizeof(*npd));
|
||||
s3c_device_usbgadget.dev.platform_data = npd;
|
||||
} else {
|
||||
printk(KERN_ERR "no memory for udc platform data\n");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* Watchdog */
|
||||
|
||||
static struct resource s3c_wdt_resource[] = {
|
||||
|
34
include/asm-arm/arch-s3c2410/udc.h
Normal file
34
include/asm-arm/arch-s3c2410/udc.h
Normal file
@ -0,0 +1,34 @@
|
||||
/* linux/include/asm/arch-s3c2410/udc.h
|
||||
*
|
||||
* Copyright (c) 2005 Arnaud Patard <arnaud.patard@rtp-net.org>
|
||||
*
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
*
|
||||
* Changelog:
|
||||
* 14-Mar-2005 RTP Created file
|
||||
* 02-Aug-2005 RTP File rename
|
||||
* 07-Sep-2005 BJD Minor cleanups, changed cmd to enum
|
||||
*/
|
||||
|
||||
#ifndef __ASM_ARM_ARCH_UDC_H
|
||||
#define __ASM_ARM_ARCH_UDC_H
|
||||
|
||||
enum s3c2410_udc_cmd_e {
|
||||
S3C2410_UDC_P_ENABLE = 1, /* Pull-up enable */
|
||||
S3C2410_UDC_P_DISABLE = 2, /* Pull-up disable */
|
||||
S3C2410_UDC_P_RESET = 3, /* UDC reset, in case of */
|
||||
};
|
||||
|
||||
struct s3c2410_udc_mach_info {
|
||||
void (*udc_command)(enum s3c2410_udc_cmd_e);
|
||||
unsigned int vbus_pin;
|
||||
unsigned char vbus_pin_inverted;
|
||||
};
|
||||
|
||||
extern void __init s3c24xx_udc_set_platdata(struct s3c2410_udc_mach_info *);
|
||||
|
||||
#endif /* __ASM_ARM_ARCH_UDC_H */
|
Loading…
Reference in New Issue
Block a user