Add APIs to read/write PGGS and GGS registers.
Showing the changes to include/linux (1 of 2 files). Show all
Unified · Split
| @@ -107,6 +107,10 @@ enum pm_ioctl_id { · 106 unmodified lines | |||
| 107 | IOCTL_GET_PLL_FRAC_MODE, | 107 | IOCTL_GET_PLL_FRAC_MODE, |
| 108 | IOCTL_SET_PLL_FRAC_DATA, | 108 | IOCTL_SET_PLL_FRAC_DATA, |
| 109 | IOCTL_GET_PLL_FRAC_DATA, | 109 | IOCTL_GET_PLL_FRAC_DATA, |
| 110 | IOCTL_WRITE_GGS = 12, | ||
| 111 | IOCTL_READ_GGS = 13, | ||
| 112 | IOCTL_WRITE_PGGS = 14, | ||
| 113 | IOCTL_READ_PGGS = 15, | ||
| 110 | }; | 114 | }; |
| 111 | 115 | ||
| 112 | enum pm_query_id { | 116 | enum pm_query_id { |
| @@ -330,6 +334,10 @@ int zynqmp_pm_set_requirement(const u32 node, const u32 capabilities, · 217 unmodified lines | |||
| 330 | int zynqmp_pm_aes_engine(const u64 address, u32 *out); | 334 | int zynqmp_pm_aes_engine(const u64 address, u32 *out); |
| 331 | int zynqmp_pm_fpga_load(const u64 address, const u32 size, const u32 flags); | 335 | int zynqmp_pm_fpga_load(const u64 address, const u32 size, const u32 flags); |
| 332 | int zynqmp_pm_fpga_get_status(u32 *value); | 336 | int zynqmp_pm_fpga_get_status(u32 *value); |
| 337 | int zynqmp_pm_write_ggs(u32 index, u32 value); | ||
| 338 | int zynqmp_pm_read_ggs(u32 index, u32 *value); | ||
| 339 | int zynqmp_pm_write_pggs(u32 index, u32 value); | ||
| 340 | int zynqmp_pm_read_pggs(u32 index, u32 *value); | ||
| 333 | #else | 341 | #else |
| 334 | static inline struct zynqmp_eemi_ops *zynqmp_pm_get_eemi_ops(void) | 342 | static inline struct zynqmp_eemi_ops *zynqmp_pm_get_eemi_ops(void) |
| 335 | { | 343 | { |
| @@ -456,6 +464,22 @@ static inline int zynqmp_pm_fpga_get_status(u32 *value) · 120 unmodified lines | |||
| 456 | { | 464 | { |
| 457 | return -ENODEV; | 465 | return -ENODEV; |
| 458 | } | 466 | } |
| 467 | static inline int zynqmp_pm_write_ggs(u32 index, u32 value) | ||
| 468 | { | ||
| 469 | return -ENODEV; | ||
| 470 | } | ||
| 471 | static inline int zynqmp_pm_read_ggs(u32 index, u32 *value) | ||
| 472 | { | ||
| 473 | return -ENODEV; | ||
| 474 | } | ||
| 475 | static inline int zynqmp_pm_write_pggs(u32 index, u32 value) | ||
| 476 | { | ||
| 477 | return -ENODEV; | ||
| 478 | } | ||
| 479 | static inline int zynqmp_pm_read_pggs(u32 index, u32 *value) | ||
| 480 | { | ||
| 481 | return -ENODEV; | ||
| 482 | } | ||
| 459 | #endif | 483 | #endif |
| 460 | 484 | ||
| 461 | #endif /* __FIRMWARE_ZYNQMP_H__ */ | 485 | #endif /* __FIRMWARE_ZYNQMP_H__ */ |