-static uint32_t propbuf[64] __attribute__((aligned(16)));
-
-int prop_blankscr(int onoff)
-{
- uint32_t *pb = propbuf;
-
- *pb++ = 0;
- *pb++ = 0;
- *pb++ = PROP_TAG_BLANKSCR;
- *pb++ = 4; /* data size */
- *pb++ = PROP_CODE_REQ;
- *pb++ = onoff ? 1 : 0;
- *pb++ = PROP_TAG_END;
- *pb++ = 0; /* padding */
- propbuf[0] = (char*)pb - (char*)propbuf;
-
- mb_write(MB_CHAN_PROP, (uint32_t)propbuf >> 4);
- mb_read(MB_CHAN_PROP);
-
- return propbuf[1] == PROP_RESP_OK ? 0 : -1;
-}
-
-uint32_t mb_read(int chan)
-{
- uint32_t val;
- do {
- while(REG_MB_STAT & MB_STAT_EMPTY);
- val = REG_MB_READ;
- } while((val & 0xf) != chan);
- return val >> 4;
-}
-
-void mb_write(int chan, uint32_t val)