summaryrefslogtreecommitdiffstats
path: root/sys/dev/fdt/rkclock.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Add some additional RK3399 clocks that are used by the current Linuxkettenis2019-01-011-1/+16
| | | | mainline device tree.
* Add RK3399 TSADC clock.kettenis2019-01-011-1/+8
|
* Add RK3328 TSADC clock.kettenis2019-01-011-1/+11
|
* Implement switching to different parent clocks in order to get as closekettenis2019-01-011-10/+68
| | | | to the desired frequency as possible when setting the frequency of a clock.
* Make sure we don't exceed the maximum clock divider.kettenis2019-01-011-5/+11
|
* Fix typo in RK3328 fractional PLL frequency code.kettenis2019-01-011-2/+2
|
* Set assigned-clocks on RK3328.kettenis2018-12-311-2/+2
|
* Use data structures for the RK3399 as well.kettenis2018-12-311-361/+173
|
* Implement fractional PLL frequencies for RK3328 and use them for APLL andkettenis2018-12-311-9/+211
| | | | | | | | | | | GPLL like the Linux kernel does. Use NPLL for the CPU clock such that adjusting the CPU frequency doesn't change the clock of other devices anymore. Implement the last clocks that are used in the assigned-clocks property of clock controller. Don't enable the assigned-clocks processing yet as it results in a sub-optimal clock for for the SD and eMMC controllers. This clock handling in dwmcc(4) needs some further work before we can enable this.
* Revamp the way we handle clocks on the RK3328. Instead of having code forkettenis2018-12-311-177/+245
| | | | | | | | | | each and every clock, use a data structure for each clock and generic code that handles muxing and clock division based on that data structure. This should reduce the amount of code and hopefully make the process of adding clocks less error prone as it is easy to check the data structures against the SoC documentation. This approach will be used for the other Rockchip SoCs in the future as well.
* More RK3328 clock stuff.kettenis2018-12-301-9/+132
|
* Implement setting CPU-related clocks for RK3328.kettenis2018-12-301-27/+229
|
* Implement a few missing RK3288 clocks and implement resets.kettenis2018-08-041-2/+8
|
* Implement DVFS support.kettenis2018-08-031-27/+1
| | | | ok patrick@
* Fix various RK3399 clocks and add support for getting the clock frequencykettenis2018-08-011-23/+100
| | | | | | | | | | | of the clocks that we can set. Assign clock rates (and parents) based on the "assigned-clocks" device tree property, but only on RK3399 for now as the code for the other Rockchip SoCs isn't quite ready yet. Last but not least, fixup a mistake on the firmware for the Theobroma Systems RK3399-Q7 module such that the "big" cluster uses BPLL as intended.
* Correctly set the dividers for the clock of the "big" cores.kettenis2018-07-311-5/+5
|
* Add more RK3399 clocks such that we can support assigned locks for thekettenis2018-06-021-11/+151
| | | | clock controller.
* Add code to set the frequency of the SDMMC and SDIO clocks.kettenis2018-06-011-1/+31
|
* Add clocks for RK3399 SDIO controller.kettenis2018-05-261-1/+30
|
* More RK3328 clocks.kettenis2018-02-251-32/+93
|
* Initial RK3328 clocks.kettenis2018-02-251-3/+163
|
* Instead of adding each and every clock to the list of clocks that are enabledkettenis2018-01-031-47/+15
| | | | by default, simply assume they are. But do check for this when we attach.
* Remove the RK3399-specific cpuspeed implementation as the generic one workskettenis2017-12-291-16/+1
| | | | fine for this SoC.
* Add support for the CPU clock on the RK3288. Set its frequency to 1.2 GHzkettenis2017-12-291-6/+140
| | | | on the Tinker-RK3288 such that things run a bit faster.
* Add RK3288 CPU core related clocks.kettenis2017-12-281-1/+10
|
* handle rk3288 i2c clocksjsg2017-09-021-2/+35
| | | | with help from kettenis@
* Add RK3399 i2c-related clocks and fix a typo.kettenis2017-08-271-6/+102
|
* Mark decimal constants as unsigned to avoid gcc warning.kettenis2017-08-261-22/+22
|
* Add supporting for adjusting the CPU core clock frequency on RK3399.kettenis2017-08-261-24/+227
| | | | | Use this to bump up the clock of the "LITTLE" cluster on the Firefly-RK3399 to 1.2 GHz to make the board a bit more usable.
* Add rktemp(4), a driver for the temperature sensors on the Rockchip RK3399kettenis2017-08-251-1/+3
| | | | SoC.
* Slightly rework how the SoC-specific functions are set up and introduce ankettenis2017-08-231-19/+35
| | | | | | init function such that we can do some SoC-specific setup. Use this function to set cpu_cpuspeed. On (future) MULTIPROCESSOR kernels bump the PLL for the "big" cluster out of slow mode here.
* Add RK3399 CPU core related clocks. Fix RK3399 SD/MMC controller clock.kettenis2017-08-211-5/+73
| | | | | For now, expose the clock speed of the Cortex-A53 cores through the hw.cupseed sysctl.
* Add RK3399 USB3 related clocks.kettenis2017-08-071-1/+8
|
* Add a few more RK3288 clocks.kettenis2017-07-231-1/+6
|
* Add RK3288 support.kettenis2017-07-231-3/+151
|
* More SD/MMC controller-related clocks.kettenis2017-05-201-1/+33
|
* Add some SD/MMC controller-related clocks.kettenis2017-05-151-1/+32
|
* Remove unused local variable such that this actually compiles.kettenis2017-05-061-2/+1
|
* Add a few GMAC related clocks and implement reset logic.kettenis2017-05-061-10/+14
|
* Add eMMC-related clocks.kettenis2017-05-051-1/+8
|
* Add rkclock(4), a driver for the Rockchip RK3399 clocks.kettenis2017-04-301-0/+274