[lkml]   [2015]   [Apr]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: ioremap_uc() followed by set_memory_wc() - burrying MTRR
On Wed, Apr 15, 2015 at 3:50 PM, Andy Walls <> wrote:
> On Wed, 2015-04-15 at 13:42 -0700, Andy Lutomirski wrote:
>> On Mon, Apr 13, 2015 at 10:49 AM, Luis R. Rodriguez <> wrote:
>> > c) ivtv: the driver does not have the PCI space mapped out separately, and
>> > in fact it actually does not do the math for the framebuffer, instead it lets
>> > the device's own CPU do that and assume where its at, see
>> > ivtvfb_get_framebuffer() and CX2341X_OSD_GET_FRAMEBUFFER, it has a get
>> > but not a setter. Its not clear if the firmware would make a split easy.
>> > We'd need ioremap_ucminus() here too and __arch_phys_wc_add().
>> >
>> IMO this should be conceptually easy to split. Once we get the
>> framebuffer address, just unmap it (or don't prematurely map it) and
>> then ioremap the thing.
> Not so easy. The main ivtv driver has already set up the PCI device and
> done the mapping for the MPEG-2 decoder/video output engine. The video
> decoder/output device nodes might already be open by user space calling
> into the main driver, before the ivtvfb module is even loaded.

Surely the MPEG-2 decoder/video engine won't overlap the framebuffer,
though. Am I missing something?


> This could be mitigated by integrating all the ivtvfb module code into
> the main ivtv module. But even then not every PVR-350 owner wants to
> use the video output OSD as a framebuffer. Users might just want an
> actual OSD overlaying their TV video playback.
> Regards,
> Andy

Andy Lutomirski
AMA Capital Management, LLC

 \ /
  Last update: 2015-04-16 02:21    [W:0.100 / U:12.584 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site