xref: /rk3399_rockchip-uboot/arch/arm/include/asm/arch-sunxi/pwm.h (revision c6b968da78ce3fa7224c0ddf15fe170c7c05b27e)
1*421c98d7SHans de Goede /*
2*421c98d7SHans de Goede  * (C) Copyright 2016 Hans de Goede <hdegoede@redhat.com>
3*421c98d7SHans de Goede  *
4*421c98d7SHans de Goede  * SPDX-License-Identifier:	GPL-2.0+
5*421c98d7SHans de Goede  */
6*421c98d7SHans de Goede 
7*421c98d7SHans de Goede #ifndef _SUNXI_PWM_H
8*421c98d7SHans de Goede #define _SUNXI_PWM_H
9*421c98d7SHans de Goede 
10*421c98d7SHans de Goede #define SUNXI_PWM_CTRL_REG		(SUNXI_PWM_BASE + 0)
11*421c98d7SHans de Goede #define SUNXI_PWM_CH0_PERIOD		(SUNXI_PWM_BASE + 4)
12*421c98d7SHans de Goede 
13*421c98d7SHans de Goede #define SUNXI_PWM_CTRL_PRESCALE0(x)	((x) & 0xf)
14*421c98d7SHans de Goede #define SUNXI_PWM_CTRL_ENABLE0		(0x5 << 4)
15*421c98d7SHans de Goede #define SUNXI_PWM_CTRL_POLARITY0(x)	((x) << 5)
16*421c98d7SHans de Goede 
17*421c98d7SHans de Goede #define SUNXI_PWM_PERIOD_80PCT		0x04af03c0
18*421c98d7SHans de Goede 
19*421c98d7SHans de Goede #if defined CONFIG_MACH_SUN4I || defined CONFIG_MACH_SUN5I
20*421c98d7SHans de Goede #define SUNXI_PWM_PIN0			SUNXI_GPB(2)
21*421c98d7SHans de Goede #define SUNXI_PWM_MUX			SUN4I_GPB_PWM
22*421c98d7SHans de Goede #endif
23*421c98d7SHans de Goede 
24*421c98d7SHans de Goede #if defined CONFIG_MACH_SUN6I
25*421c98d7SHans de Goede #define SUNXI_PWM_PIN0			SUNXI_GPH(13)
26*421c98d7SHans de Goede #define SUNXI_PWM_MUX			SUN6I_GPH_PWM
27*421c98d7SHans de Goede #endif
28*421c98d7SHans de Goede 
29*421c98d7SHans de Goede #if defined CONFIG_MACH_SUN8I_A23 || defined CONFIG_MACH_SUN8I_A33
30*421c98d7SHans de Goede #define SUNXI_PWM_PIN0			SUNXI_GPH(0)
31*421c98d7SHans de Goede #define SUNXI_PWM_MUX			SUN8I_GPH_PWM
32*421c98d7SHans de Goede #endif
33*421c98d7SHans de Goede 
34*421c98d7SHans de Goede #endif
35