| .. | .. |
|---|
| 20 | 20 | #include "rockchip_crtc.h" |
|---|
| 21 | 21 | #include "rockchip_connector.h" |
|---|
| 22 | 22 | |
|---|
| 23 | +#ifndef CONFIG_SPL_BUILD |
|---|
| 23 | 24 | static const struct udevice_id rockchip_vp_ids[] = { |
|---|
| 24 | 25 | { .compatible = "rockchip-vp" }, |
|---|
| 25 | 26 | { } |
|---|
| .. | .. |
|---|
| 111 | 112 | .data = &rk3328_vop, |
|---|
| 112 | 113 | }; |
|---|
| 113 | 114 | |
|---|
| 115 | +static const struct rockchip_crtc rk3528_vop_data = { |
|---|
| 116 | + .funcs = &rockchip_vop2_funcs, |
|---|
| 117 | + .data = &rk3528_vop, |
|---|
| 118 | +}; |
|---|
| 119 | + |
|---|
| 120 | +static const struct rockchip_crtc rk3562_vop_data = { |
|---|
| 121 | + .funcs = &rockchip_vop2_funcs, |
|---|
| 122 | + .data = &rk3562_vop, |
|---|
| 123 | +}; |
|---|
| 124 | + |
|---|
| 114 | 125 | static const struct rockchip_crtc rk3568_vop_data = { |
|---|
| 115 | 126 | .funcs = &rockchip_vop2_funcs, |
|---|
| 116 | 127 | .data = &rk3568_vop, |
|---|
| .. | .. |
|---|
| 174 | 185 | .compatible = "rockchip,rk3328-vop", |
|---|
| 175 | 186 | .data = (ulong)&rk3328_vop_data, |
|---|
| 176 | 187 | }, { |
|---|
| 188 | + .compatible = "rockchip,rk3528-vop", |
|---|
| 189 | + .data = (ulong)&rk3528_vop_data, |
|---|
| 190 | + }, { |
|---|
| 191 | + .compatible = "rockchip,rk3562-vop", |
|---|
| 192 | + .data = (ulong)&rk3562_vop_data, |
|---|
| 193 | + }, { |
|---|
| 177 | 194 | .compatible = "rockchip,rk3568-vop", |
|---|
| 178 | 195 | .data = (ulong)&rk3568_vop_data, |
|---|
| 179 | 196 | }, { |
|---|
| .. | .. |
|---|
| 186 | 203 | { |
|---|
| 187 | 204 | struct udevice *child; |
|---|
| 188 | 205 | int ret; |
|---|
| 206 | + |
|---|
| 207 | + /* Process 'assigned-{clocks/clock-parents/clock-rates}' properties */ |
|---|
| 208 | + ret = clk_set_defaults(dev); |
|---|
| 209 | + if (ret) { |
|---|
| 210 | + dev_err(dev, "%s clk_set_defaults failed %d\n", __func__, ret); |
|---|
| 211 | + return ret; |
|---|
| 212 | + } |
|---|
| 189 | 213 | |
|---|
| 190 | 214 | for (device_find_first_child(dev, &child); |
|---|
| 191 | 215 | child; |
|---|
| .. | .. |
|---|
| 237 | 261 | .id = UCLASS_VIDEO_CRTC, |
|---|
| 238 | 262 | .name = "CRTC", |
|---|
| 239 | 263 | }; |
|---|
| 264 | + |
|---|
| 265 | +#else |
|---|
| 266 | +static struct rockchip_crtc rk3528_vop_data = { |
|---|
| 267 | + .funcs = &rockchip_vop2_funcs, |
|---|
| 268 | + .data = &rk3528_vop, |
|---|
| 269 | +}; |
|---|
| 270 | + |
|---|
| 271 | +int rockchip_spl_vop_probe(struct crtc_state *crtc_state) |
|---|
| 272 | +{ |
|---|
| 273 | + |
|---|
| 274 | + crtc_state->crtc = &rk3528_vop_data; |
|---|
| 275 | + |
|---|
| 276 | + return 0; |
|---|
| 277 | +} |
|---|
| 278 | +#endif |
|---|
| 279 | + |
|---|