1/* |
2 * Copyright (c) 2010-2012, 2015 ARM Limited |
3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software 9 * licensed hereunder. You may use the software subject to the license 10 * terms below provided that you ensure that this notice is replicated --- 31 unchanged lines hidden (view full) --- 42/** @file 43 * Implementiation of a PL111 CLCD controller 44 */ 45 46#ifndef __DEV_ARM_PL111_HH__ 47#define __DEV_ARM_PL111_HH__ 48 49#include <fstream> |
50#include <memory> |
51 |
52#include "base/bitmap.hh" 53#include "base/framebuffer.hh" |
54#include "dev/arm/amba_device.hh" 55#include "params/Pl111.hh" 56#include "sim/serialize.hh" 57 58class VncInput; |
59 60class Pl111: public AmbaDmaDevice 61{ 62 protected: 63 static const uint64_t AMBA_ID = ULL(0xb105f00d00141111); 64 /** ARM PL111 register map*/ 65 static const int LcdTiming0 = 0x000; 66 static const int LcdTiming1 = 0x004; --- 186 unchanged lines hidden (view full) --- 253 InterruptReg clcdCrsrRis; 254 255 /** Cursor masked interrupt status register - const */ 256 InterruptReg clcdCrsrMis; 257 258 /** Pixel clock */ 259 Tick pixelClock; 260 |
261 PixelConverter converter; 262 FrameBuffer fb; 263 |
264 /** VNC server */ 265 VncInput *vnc; 266 267 /** Helper to write out bitmaps */ |
268 Bitmap bmp; |
269 270 /** Picture of what the current frame buffer looks like */ 271 std::ostream *pic; 272 273 /** Frame buffer width - pixels per line */ 274 uint16_t width; 275 276 /** Frame buffer height - lines per panel */ --- 18 unchanged lines hidden (view full) --- 295 Addr curAddr; 296 297 /** DMA FIFO watermark */ 298 uint32_t waterMark; 299 300 /** Number of pending dma reads */ 301 uint32_t dmaPendingNum; 302 |
303 PixelConverter pixelConverter() const; 304 |
305 /** Send updated parameters to the vnc server */ 306 void updateVideoParams(); 307 308 /** DMA framebuffer read */ 309 void readFramebuffer(); 310 311 /** Generate dma framebuffer read event */ 312 void generateReadEvent(); --- 73 unchanged lines hidden --- |