Lines Matching refs:dev

91 static void rm68200_dcs_write_buf(struct udevice *dev, const void *data,  in rm68200_dcs_write_buf()  argument
94 struct mipi_dsi_panel_plat *plat = dev_get_plat(dev); in rm68200_dcs_write_buf()
100 dev_err(dev, "MIPI DSI DCS write buffer failed: %d\n", err); in rm68200_dcs_write_buf()
103 static void rm68200_dcs_write_cmd(struct udevice *dev, u8 cmd, u8 value) in rm68200_dcs_write_cmd() argument
105 struct mipi_dsi_panel_plat *plat = dev_get_plat(dev); in rm68200_dcs_write_cmd()
111 dev_err(dev, "MIPI DSI DCS write failed: %d\n", err); in rm68200_dcs_write_cmd()
134 static void rm68200_init_sequence(struct udevice *dev) in rm68200_init_sequence() argument
137 dcs_write_seq(dev, MCS_CMD_MODE_SW, MCS_CMD2_P0); in rm68200_init_sequence()
138 dcs_write_cmd_seq(dev, MCS_EXT_PWR_IC, 0xC0, 0x53, 0x00); in rm68200_init_sequence()
139 dcs_write_seq(dev, MCS_BT2CTR, 0xE5); in rm68200_init_sequence()
140 dcs_write_seq(dev, MCS_SETAVDD, 0x0A); in rm68200_init_sequence()
141 dcs_write_seq(dev, MCS_SETAVEE, 0x0A); in rm68200_init_sequence()
142 dcs_write_seq(dev, MCS_SGOPCTR, 0x52); in rm68200_init_sequence()
143 dcs_write_seq(dev, MCS_BT3CTR, 0x53); in rm68200_init_sequence()
144 dcs_write_seq(dev, MCS_BT4CTR, 0x5A); in rm68200_init_sequence()
145 dcs_write_seq(dev, MCS_INVCTR, 0x00); in rm68200_init_sequence()
146 dcs_write_seq(dev, MCS_STBCTR, 0x0A); in rm68200_init_sequence()
147 dcs_write_seq(dev, MCS_SDCTR, 0x06); in rm68200_init_sequence()
148 dcs_write_seq(dev, MCS_VCMCTR, 0x56); in rm68200_init_sequence()
149 dcs_write_seq(dev, MCS_SETVGN, 0xA0, 0x00); in rm68200_init_sequence()
150 dcs_write_seq(dev, MCS_SETVGP, 0xA0, 0x00); in rm68200_init_sequence()
151 dcs_write_seq(dev, MCS_SW_CTRL, 0x11); /* 2 data lanes, see doc */ in rm68200_init_sequence()
153 dcs_write_seq(dev, MCS_CMD_MODE_SW, MCS_CMD2_P2); in rm68200_init_sequence()
154 dcs_write_seq(dev, GOA_VSTV1, 0x05); in rm68200_init_sequence()
155 dcs_write_seq(dev, 0x02, 0x0B); in rm68200_init_sequence()
156 dcs_write_seq(dev, 0x03, 0x0F); in rm68200_init_sequence()
157 dcs_write_seq(dev, 0x04, 0x7D, 0x00, 0x50); in rm68200_init_sequence()
158 dcs_write_cmd_seq(dev, GOA_VSTV2, 0x05, 0x16, 0x0D, 0x11, 0x7D, 0x00, in rm68200_init_sequence()
160 dcs_write_cmd_seq(dev, GOA_VCLK1, 0x07, 0x08, 0x01, 0x02, 0x00, 0x7D, in rm68200_init_sequence()
162 dcs_write_cmd_seq(dev, GOA_VCLK2, 0x03, 0x04, 0x05, 0x06, 0x00, 0x7D, in rm68200_init_sequence()
164 dcs_write_seq(dev, GOA_VCLK_OPT1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, in rm68200_init_sequence()
166 dcs_write_cmd_seq(dev, GOA_BICLK1, 0x07, 0x08); in rm68200_init_sequence()
167 dcs_write_seq(dev, 0x2D, 0x01); in rm68200_init_sequence()
168 dcs_write_seq(dev, 0x2F, 0x02, 0x00, 0x40, 0x05, 0x08, 0x54, 0x7D, in rm68200_init_sequence()
170 dcs_write_cmd_seq(dev, GOA_BICLK2, 0x03, 0x04, 0x05, 0x06, 0x00); in rm68200_init_sequence()
171 dcs_write_seq(dev, 0x3D, 0x40); in rm68200_init_sequence()
172 dcs_write_seq(dev, 0x3F, 0x05, 0x08, 0x54, 0x7D, 0x00); in rm68200_init_sequence()
173 dcs_write_seq(dev, GOA_BICLK3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, in rm68200_init_sequence()
175 dcs_write_seq(dev, GOA_BICLK4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, in rm68200_init_sequence()
177 dcs_write_seq(dev, 0x58, 0x00, 0x00, 0x00); in rm68200_init_sequence()
178 dcs_write_seq(dev, GOA_BICLK_OPT1, 0x00, 0x00, 0x00, 0x00, 0x00); in rm68200_init_sequence()
179 dcs_write_seq(dev, GOA_BICLK_OPT2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, in rm68200_init_sequence()
181 dcs_write_seq(dev, MCS_GOA_GPO1, 0x00, 0x00, 0x00, 0x00); in rm68200_init_sequence()
182 dcs_write_seq(dev, MCS_GOA_GPO2, 0x00, 0x20, 0x00); in rm68200_init_sequence()
183 dcs_write_seq(dev, MCS_GOA_EQ, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, in rm68200_init_sequence()
185 dcs_write_seq(dev, MCS_GOA_CLK_GALLON, 0x00, 0x00); in rm68200_init_sequence()
186 dcs_write_cmd_seq(dev, MCS_GOA_FS_SEL0, 0xBF, 0x02, 0x06, 0x14, 0x10, in rm68200_init_sequence()
188 dcs_write_cmd_seq(dev, MCS_GOA_FS_SEL1, 0x3F, 0x3F, 0x3F, 0x3F, 0x0C, in rm68200_init_sequence()
190 dcs_write_cmd_seq(dev, MCS_GOA_FS_SEL2, 0x04, 0x3F, 0x3F, 0x3F, 0x3F, in rm68200_init_sequence()
192 dcs_write_cmd_seq(dev, MCS_GOA_FS_SEL3, 0x0B, 0x0D, 0x3F, 0x3F, 0x3F, in rm68200_init_sequence()
194 dcs_write_cmd_seq(dev, 0xA2, 0x3F, 0x09, 0x13, 0x17, 0x11, 0x15); in rm68200_init_sequence()
195 dcs_write_cmd_seq(dev, 0xA9, 0x07, 0x03, 0x3F); in rm68200_init_sequence()
196 dcs_write_cmd_seq(dev, MCS_GOA_BS_SEL0, 0x3F, 0x05, 0x01, 0x17, 0x13, in rm68200_init_sequence()
198 dcs_write_cmd_seq(dev, MCS_GOA_BS_SEL1, 0x3F, 0x3F, 0x3F, 0x3F, 0x0B, in rm68200_init_sequence()
200 dcs_write_cmd_seq(dev, MCS_GOA_BS_SEL2, 0x03, 0x3F, 0x3F, 0x3F, 0x3F, in rm68200_init_sequence()
202 dcs_write_cmd_seq(dev, MCS_GOA_BS_SEL3, 0x0C, 0x0A, 0x3F, 0x3F, 0x3F, in rm68200_init_sequence()
204 dcs_write_cmd_seq(dev, MCS_GOA_BS_SEL4, 0x12, 0x16, 0x00, 0x04, 0x3F); in rm68200_init_sequence()
205 dcs_write_seq(dev, 0xDC, 0x02); in rm68200_init_sequence()
206 dcs_write_seq(dev, 0xDE, 0x12); in rm68200_init_sequence()
208 dcs_write_seq(dev, MCS_CMD_MODE_SW, 0x0E); /* No documentation */ in rm68200_init_sequence()
209 dcs_write_seq(dev, 0x01, 0x75); in rm68200_init_sequence()
211 dcs_write_seq(dev, MCS_CMD_MODE_SW, MCS_CMD2_P3); in rm68200_init_sequence()
212 dcs_write_cmd_seq(dev, MCS_GAMMA_VP, 0x00, 0x0C, 0x12, 0x0E, 0x06, in rm68200_init_sequence()
215 dcs_write_cmd_seq(dev, MCS_GAMMA_VN, 0x00, 0x0C, 0x12, 0x0E, 0x06, in rm68200_init_sequence()
220 dcs_write_seq(dev, MCS_CMD_MODE_SW, MCS_CMD1_UCS); in rm68200_init_sequence()
223 static int rm68200_panel_enable_backlight(struct udevice *dev) in rm68200_panel_enable_backlight() argument
225 struct mipi_dsi_panel_plat *plat = dev_get_plat(dev); in rm68200_panel_enable_backlight()
227 struct rm68200_panel_priv *priv = dev_get_priv(dev); in rm68200_panel_enable_backlight()
234 rm68200_init_sequence(dev); in rm68200_panel_enable_backlight()
255 static int rm68200_panel_get_display_timing(struct udevice *dev, in rm68200_panel_get_display_timing() argument
263 static int rm68200_panel_of_to_plat(struct udevice *dev) in rm68200_panel_of_to_plat() argument
265 struct rm68200_panel_priv *priv = dev_get_priv(dev); in rm68200_panel_of_to_plat()
269 ret = device_get_supply_regulator(dev, "power-supply", in rm68200_panel_of_to_plat()
272 dev_err(dev, "Warning: cannot get power supply\n"); in rm68200_panel_of_to_plat()
277 ret = gpio_request_by_name(dev, "reset-gpios", 0, &priv->reset, in rm68200_panel_of_to_plat()
280 dev_err(dev, "Warning: cannot get reset GPIO\n"); in rm68200_panel_of_to_plat()
285 ret = uclass_get_device_by_phandle(UCLASS_PANEL_BACKLIGHT, dev, in rm68200_panel_of_to_plat()
288 dev_err(dev, "Cannot get backlight: ret=%d\n", ret); in rm68200_panel_of_to_plat()
295 static int rm68200_panel_probe(struct udevice *dev) in rm68200_panel_probe() argument
297 struct rm68200_panel_priv *priv = dev_get_priv(dev); in rm68200_panel_probe()
298 struct mipi_dsi_panel_plat *plat = dev_get_plat(dev); in rm68200_panel_probe()