41 u32 patt = 0xdeadbeef;
42 struct io_mapping *
fb;
46 fb = fbmem_init(nv_device(priv)->
pdev);
48 nv_error(priv,
"failed to map fb\n");
61 for (i = 0; i < 4; i++)
62 fbmem_poke(fb, 4 * i, patt);
64 fbmem_poke(fb, 0x400000, patt + 1);
66 if (fbmem_peek(fb, 0) == patt + 1) {
73 for (i = 0; i < 4; i++)
74 fbmem_poke(fb, 4 * i, patt);
76 if ((fbmem_peek(fb, 0
xc) & 0xffff) != (patt & 0xffff))
82 if ((fbmem_peek(fb, 0
xc) & 0xffff0000) != (patt & 0xffff0000)) {
88 if (fbmem_peek(fb, 0) != patt) {
89 if (fbmem_readback(fb, 0x800000, patt))
101 if (!fbmem_readback(fb, 0x800000, patt)) {
122 *pobject = nv_object(priv);
126 priv->
base.meminit = nv04_devinit_meminit;
148 if (!priv->
base.post) {
150 htotal |= (
nv_rdvgac(priv, 0, 0x07) & 0x01) << 8;
151 htotal |= (
nv_rdvgac(priv, 0, 0x07) & 0x20) << 4;
152 htotal |= (
nv_rdvgac(priv, 0, 0x25) & 0x01) << 10;
153 htotal |= (
nv_rdvgac(priv, 0, 0x41) & 0x01) << 11;
155 nv_info(priv,
"adaptor not initialised\n");
156 priv->
base.post =
true;
169 nv_mask(priv, 0x000200, 0x00000001, 0x00000001);
184 .ctor = nv04_devinit_ctor,