On 31/03/15 21:27, Thomas Niederprüm wrote: > Hi, > > this patch series is the result of making the ssd1307fb driver work with > a Newhaven OLED display using the Solomon SSD1305 controller. To achieve > this the intialization code for the SSD1306 and the SSD1307 is merged > and based on DT configuration to reflect the various possible wirings > of the SSD130X controller (04/10). Based on these changes it is straight > forward to add support for the SSD1305 controller (06/10). > > While working on the driver I realized that it was not possible to > correctly mmap the video memory from userspace since the address handed > to the userspace app is a logical one where it should be a physical one. > Patch 01/10 fixes this. Furthermore the memory reserved by kzalloc is > not page aligned while the address handed to userspace is aligned to the > next page frame. This problem is fixed by using __get_free_pages() in 02/10. > > Furthermore a module parameter is added to set the delay for the > deferred io update (07/10). Also the backlight class is implemented to make > the contrast setting available in userspace (09/10). > > changes since v1 (thanks to Maxime for the feedback): > - dedicated patch for fixing smem_start address > - remove page reserve upon vmalloc > - remove return value check upon display turn-off at module unload > - use a module parameter refreshrate rather than delaydivider > - allocate fbdefio dynamically > - use sysfs_create_groups to create sysfs entries > - remove contrast, vhcom and dclk properties from DT since they are > not part of hw description. The contrast module parameter was added > to set contrast at load time. vhcom and dclk stays at it's default > values for now. > - add new DT properties to in tree users of ssd130X > - rebased to apply on top of linux-next > > changes since v2 (thanks to Maxime again): > - free memory allocated by vmalloc on driver unload > - set default values in the init code to the ones of the existing ssd1307 > init code > - added two ACKs (Maxime Ripard) > > changes since v3: > - use backlight class rather than dedicated sysfs files to set the > contrast (Thanks to Tomi Valkeinen) > - remove [PATCHv3 08/10] fbdev: ssd1307fb: Add module parameter bitsperpixel > - add new patch to blank the display (unreviewed) > - allocate video memory through __get_free_pages() rather than vmalloc > (Thanks to Geert Uytterhoeven) > - minor rewordings of the commit messages > > changes since v4 (thanks to Maxime): > - added two ACKs (Maxime Ripard) > - fixed typo: s/REFRASHRATE/REFRESHRATE > - updated the documentation to make clear the unit of com-offset > - move addition of the module parameter contrast to a separate patch (09/11) > - fix indentation errors > - get rid of device_id in the device_info struct > > changes since v5: > - remove [PATCHv5 09/11] fbdev: ssd1307fb: Add module parameter to set > the initial contrast > - remove unnecessary variable initialization in the deviceinfo struct as > pointed out by Maxime > - make the variable dclk_div hold the actual divider rather than the > corresponding bit value > - remove ret variable in ssd1307fb_blank() (thanks to Olliver Schinagl) > - fixed bit mask for com_invdir as indicated by Olliver > - change initialization of the charge pump as suggested by Olliver > - change the default value for prechargep2 to 0x2 (thanks to Olliver) > - change DT property name "com-sequential" to "com-seq" > - added one ACK (Maxime Ripard) > - added Tested-by Olliver Schinagl I have queued this version for 4.2, with all the acks. Tomi
Attachment:
signature.asc
Description: OpenPGP digital signature