1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* arch/arm/plat-samsung/include/plat/udc.h 3 * 4 * Copyright (c) 2005 Arnaud Patard <arnaud.patard@rtp-net.org> 5 * 6 * Changelog: 7 * 14-Mar-2005 RTP Created file 8 * 02-Aug-2005 RTP File rename 9 * 07-Sep-2005 BJD Minor cleanups, changed cmd to enum 10 * 18-Jan-2007 HMW Add per-platform vbus_draw function 11 */ 12 13 #ifndef __ASM_ARM_ARCH_UDC_H 14 #define __ASM_ARM_ARCH_UDC_H 15 16 enum s3c2410_udc_cmd_e { 17 S3C2410_UDC_P_ENABLE = 1, /* Pull-up enable */ 18 S3C2410_UDC_P_DISABLE = 2, /* Pull-up disable */ 19 S3C2410_UDC_P_RESET = 3, /* UDC reset, in case of */ 20 }; 21 22 struct s3c2410_udc_mach_info { 23 void (*udc_command)(enum s3c2410_udc_cmd_e); 24 void (*vbus_draw)(unsigned int ma); 25 26 unsigned int pullup_pin; 27 unsigned int pullup_pin_inverted; 28 29 unsigned int vbus_pin; 30 unsigned char vbus_pin_inverted; 31 }; 32 33 extern void __init s3c24xx_udc_set_platdata(struct s3c2410_udc_mach_info *); 34 35 struct s3c24xx_hsudc_platdata; 36 37 extern void __init s3c24xx_hsudc_set_platdata(struct s3c24xx_hsudc_platdata *pd); 38 39 #endif /* __ASM_ARM_ARCH_UDC_H */ 40