The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/devfreq/event/exynos-ppmu.txt

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 
    2 * Samsung Exynos PPMU (Platform Performance Monitoring Unit) device
    3 
    4 The Samsung Exynos SoC has PPMU (Platform Performance Monitoring Unit) for
    5 each IP. PPMU provides the primitive values to get performance data. These
    6 PPMU events provide information of the SoC's behaviors so that you may
    7 use to analyze system performance, to make behaviors visible and to count
    8 usages of each IP (DMC, CPU, RIGHTBUS, LEFTBUS, CAM interface, LCD, G3D, MFC).
    9 The Exynos PPMU driver uses the devfreq-event class to provide event data
   10 to various devfreq devices. The devfreq devices would use the event data when
   11 derterming the current state of each IP.
   12 
   13 Required properties for PPMU device:
   14 - compatible: Should be "samsung,exynos-ppmu" or "samsung,exynos-ppmu-v2.
   15 - reg: physical base address of each PPMU and length of memory mapped region.
   16 
   17 Optional properties for PPMU device:
   18 - clock-names : the name of clock used by the PPMU, "ppmu"
   19 - clocks : phandles for clock specified in "clock-names" property
   20 
   21 Required properties for 'events' child node of PPMU device:
   22 - event-name : the unique event name among PPMU device
   23 Optional properties for 'events' child node of PPMU device:
   24 - event-data-type : Define the type of data which shell be counted
   25 by the counter. You can check include/dt-bindings/pmu/exynos_ppmu.h for
   26 all possible type, i.e. count read requests, count write data in bytes,
   27 etc. This field is optional and when it is missing, the driver code
   28 will use default data type.
   29 
   30 Example1 : PPMUv1 nodes in exynos3250.dtsi are listed below.
   31 
   32                 ppmu_dmc0: ppmu_dmc0@106a0000 {
   33                         compatible = "samsung,exynos-ppmu";
   34                         reg = <0x106a0000 0x2000>;
   35                         status = "disabled";
   36                 };
   37 
   38                 ppmu_dmc1: ppmu_dmc1@106b0000 {
   39                         compatible = "samsung,exynos-ppmu";
   40                         reg = <0x106b0000 0x2000>;
   41                         status = "disabled";
   42                 };
   43 
   44                 ppmu_cpu: ppmu_cpu@106c0000 {
   45                         compatible = "samsung,exynos-ppmu";
   46                         reg = <0x106c0000 0x2000>;
   47                         status = "disabled";
   48                 };
   49 
   50                 ppmu_rightbus: ppmu_rightbus@112a0000 {
   51                         compatible = "samsung,exynos-ppmu";
   52                         reg = <0x112a0000 0x2000>;
   53                         clocks = <&cmu CLK_PPMURIGHT>;
   54                         clock-names = "ppmu";
   55                         status = "disabled";
   56                 };
   57 
   58                 ppmu_leftbus: ppmu_leftbus0@116a0000 {
   59                         compatible = "samsung,exynos-ppmu";
   60                         reg = <0x116a0000 0x2000>;
   61                         clocks = <&cmu CLK_PPMULEFT>;
   62                         clock-names = "ppmu";
   63                         status = "disabled";
   64                 };
   65 
   66 Example2 : Events of each PPMU node in exynos3250-rinato.dts are listed below.
   67 
   68         &ppmu_dmc0 {
   69                 status = "okay";
   70 
   71                 events {
   72                         ppmu_dmc0_3: ppmu-event3-dmc0 {
   73                                 event-name = "ppmu-event3-dmc0";
   74                         };
   75 
   76                         ppmu_dmc0_2: ppmu-event2-dmc0 {
   77                                 event-name = "ppmu-event2-dmc0";
   78                         };
   79 
   80                         ppmu_dmc0_1: ppmu-event1-dmc0 {
   81                                 event-name = "ppmu-event1-dmc0";
   82                         };
   83 
   84                         ppmu_dmc0_0: ppmu-event0-dmc0 {
   85                                 event-name = "ppmu-event0-dmc0";
   86                         };
   87                 };
   88         };
   89 
   90         &ppmu_dmc1 {
   91                 status = "okay";
   92 
   93                 events {
   94                         ppmu_dmc1_3: ppmu-event3-dmc1 {
   95                                 event-name = "ppmu-event3-dmc1";
   96                         };
   97                 };
   98         };
   99 
  100         &ppmu_leftbus {
  101                 status = "okay";
  102 
  103                 events {
  104                         ppmu_leftbus_3: ppmu-event3-leftbus {
  105                                 event-name = "ppmu-event3-leftbus";
  106                         };
  107                 };
  108         };
  109 
  110         &ppmu_rightbus {
  111                 status = "okay";
  112 
  113                 events {
  114                         ppmu_rightbus_3: ppmu-event3-rightbus {
  115                                 event-name = "ppmu-event3-rightbus";
  116                         };
  117                 };
  118         };
  119 
  120 Example3 : PPMUv2 nodes in exynos5433.dtsi are listed below.
  121 
  122                 ppmu_d0_cpu: ppmu_d0_cpu@10480000 {
  123                         compatible = "samsung,exynos-ppmu-v2";
  124                         reg = <0x10480000 0x2000>;
  125                         status = "disabled";
  126                 };
  127 
  128                 ppmu_d0_general: ppmu_d0_general@10490000 {
  129                         compatible = "samsung,exynos-ppmu-v2";
  130                         reg = <0x10490000 0x2000>;
  131                         status = "disabled";
  132                 };
  133 
  134                 ppmu_d0_rt: ppmu_d0_rt@104a0000 {
  135                         compatible = "samsung,exynos-ppmu-v2";
  136                         reg = <0x104a0000 0x2000>;
  137                         status = "disabled";
  138                 };
  139 
  140                 ppmu_d1_cpu: ppmu_d1_cpu@104b0000 {
  141                         compatible = "samsung,exynos-ppmu-v2";
  142                         reg = <0x104b0000 0x2000>;
  143                         status = "disabled";
  144                 };
  145 
  146                 ppmu_d1_general: ppmu_d1_general@104c0000 {
  147                         compatible = "samsung,exynos-ppmu-v2";
  148                         reg = <0x104c0000 0x2000>;
  149                         status = "disabled";
  150                 };
  151 
  152                 ppmu_d1_rt: ppmu_d1_rt@104d0000 {
  153                         compatible = "samsung,exynos-ppmu-v2";
  154                         reg = <0x104d0000 0x2000>;
  155                         status = "disabled";
  156                 };
  157 
  158 Example4 : 'event-data-type' in exynos4412-ppmu-common.dtsi are listed below.
  159 
  160         &ppmu_dmc0 {
  161                 status = "okay";
  162                 events {
  163                         ppmu_dmc0_3: ppmu-event3-dmc0 {
  164                         event-name = "ppmu-event3-dmc0";
  165                         event-data-type = <(PPMU_RO_DATA_CNT |
  166                                         PPMU_WO_DATA_CNT)>;
  167                         };
  168                 };
  169         };

Cache object: 7b9edb0bfdda28d23842d9b6a2589ae4


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.