Hi! > > > The userspace interface in Eungeny's patches is for other userspace > > > programs (policy managers) to activate/deactivate valid operating points > > > in the system dynamically and if necessary, introduce new ones into the > > > system. It will also allow the operating points to be referenced by name > > > instead of the tuple. > > > > > > Then, we will be able to use names like 'video', 'mp3', 'fast', > > > 'powersave', 'usb' to switch to the relevant operating point based on > > > configuration of the policy manager. > > > > This seems to be too specific to embedded machine. > > > > If userspace wants to work with usb and play mp3s at the same time, > > what does it do? > > Switch to 'fast'? > > The operating point for a use-case specifies the _minimum_ required for > the use-case. You can always go up. > The system designer is responsible for 'designing' operating points that > take into account multiple use-cases. Designing here refers to mapping > use-cases to HW operating points. Yes, and that's why I argue this is unsuitable for notebook: there are just too many usecases for a notebook. > Consider an example system with a main CPU and a DSP. To simplify > discussion, lets assume 3 levels for CPU and DSP speeds and system > voltage. Then, here is what an example operating-point to use-case > mapping table could look like: > > # CPU speed DSP speed Voltage use-case > ---------------------------------------------------------- > 1. high high high fast, video > 2. med high high > 3. med med med usb[1] > 4. low med med mp3 > 5. low low low powersave > > [1] USB has voltage constraint (voltage >= med) So... you take three independend parametrs and merge them into one, named parameter. Bad idea. What about simply having these parameters: usb on or off cpu speed (controlled by cpufreq) dsp speed (controlled by userspace) Then you can have infrastructure that is able to compute system voltage from usb/cpu/dsp speed, and users stll have interface they can understand. (How are they supposed to know if video use case is compatible with usb? They should not have to). > - Now if we are playing mp3, we switch to OP 4. Do you expect all mp3 playing applications to play with /sys/.../powerop-point? How do you tell if mp3's are playing? These are hard questions for a notebook. > - Add usb and we switch to OP 3. > - Now our performance monitor (e.g load avg) indicates that we need more > CPU processing. So we switch to OP 2. That's cpufreq job, please -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html