1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 281dee67eSSudip Mukherjee #ifndef DDK750_POWER_H__ 381dee67eSSudip Mukherjee #define DDK750_POWER_H__ 481dee67eSSudip Mukherjee 5259fef35SJuston Li typedef enum _DPMS_t { 681dee67eSSudip Mukherjee crtDPMS_ON = 0x0, 781dee67eSSudip Mukherjee crtDPMS_STANDBY = 0x1, 881dee67eSSudip Mukherjee crtDPMS_SUSPEND = 0x2, 981dee67eSSudip Mukherjee crtDPMS_OFF = 0x3, 1081dee67eSSudip Mukherjee } 1181dee67eSSudip Mukherjee DPMS_t; 1281dee67eSSudip Mukherjee 135372350bSMike Rapoport #define setDAC(off) { \ 14c075b6f2SMatthieu Simon poke32(MISC_CTRL, \ 15c075b6f2SMatthieu Simon (peek32(MISC_CTRL) & ~MISC_CTRL_DAC_POWER_OFF) | (off)); \ 1681dee67eSSudip Mukherjee } 1781dee67eSSudip Mukherjee 18d228cf87SArushi Singhal void ddk750_set_dpms(DPMS_t state); 1952d0744dSArnd Bergmann void sm750_set_power_mode(unsigned int powerMode); 2052d0744dSArnd Bergmann void sm750_set_current_gate(unsigned int gate); 2181dee67eSSudip Mukherjee 2281dee67eSSudip Mukherjee /* 2381dee67eSSudip Mukherjee * This function enable/disable the 2D engine. 2481dee67eSSudip Mukherjee */ 2552d0744dSArnd Bergmann void sm750_enable_2d_engine(unsigned int enable); 2681dee67eSSudip Mukherjee 2781dee67eSSudip Mukherjee /* 2881dee67eSSudip Mukherjee * This function enable/disable the DMA Engine 2981dee67eSSudip Mukherjee */ 3052d0744dSArnd Bergmann void sm750_enable_dma(unsigned int enable); 3181dee67eSSudip Mukherjee 3281dee67eSSudip Mukherjee /* 3381dee67eSSudip Mukherjee * This function enable/disable the GPIO Engine 3481dee67eSSudip Mukherjee */ 3552d0744dSArnd Bergmann void sm750_enable_gpio(unsigned int enable); 3681dee67eSSudip Mukherjee 3781dee67eSSudip Mukherjee /* 3881dee67eSSudip Mukherjee * This function enable/disable the I2C Engine 3981dee67eSSudip Mukherjee */ 4052d0744dSArnd Bergmann void sm750_enable_i2c(unsigned int enable); 4181dee67eSSudip Mukherjee 4281dee67eSSudip Mukherjee #endif 43