| @@ -1,14 +1,14 @@ | | | @@ -1,14 +1,14 @@ |
1 | /* $NetBSD: i915_pci.c,v 1.1.2.8 2014/01/21 20:48:52 riastradh Exp $ */ | | 1 | /* $NetBSD: i915_pci.c,v 1.1.2.9 2014/01/22 14:58:39 riastradh Exp $ */ |
2 | | | 2 | |
3 | /*- | | 3 | /*- |
4 | * Copyright (c) 2013 The NetBSD Foundation, Inc. | | 4 | * Copyright (c) 2013 The NetBSD Foundation, Inc. |
5 | * All rights reserved. | | 5 | * All rights reserved. |
6 | * | | 6 | * |
7 | * This code is derived from software contributed to The NetBSD Foundation | | 7 | * This code is derived from software contributed to The NetBSD Foundation |
8 | * by Taylor R. Campbell. | | 8 | * by Taylor R. Campbell. |
9 | * | | 9 | * |
10 | * Redistribution and use in source and binary forms, with or without | | 10 | * Redistribution and use in source and binary forms, with or without |
11 | * modification, are permitted provided that the following conditions | | 11 | * modification, are permitted provided that the following conditions |
12 | * are met: | | 12 | * are met: |
13 | * 1. Redistributions of source code must retain the above copyright | | 13 | * 1. Redistributions of source code must retain the above copyright |
14 | * notice, this list of conditions and the following disclaimer. | | 14 | * notice, this list of conditions and the following disclaimer. |
| @@ -20,27 +20,27 @@ | | | @@ -20,27 +20,27 @@ |
20 | * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED | | 20 | * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED |
21 | * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | | 21 | * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |
22 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS | | 22 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS |
23 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | | 23 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
24 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | | 24 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
25 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | | 25 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
26 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | | 26 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
27 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | | 27 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
28 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | | 28 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
29 | * POSSIBILITY OF SUCH DAMAGE. | | 29 | * POSSIBILITY OF SUCH DAMAGE. |
30 | */ | | 30 | */ |
31 | | | 31 | |
32 | #include <sys/cdefs.h> | | 32 | #include <sys/cdefs.h> |
33 | __KERNEL_RCSID(0, "$NetBSD: i915_pci.c,v 1.1.2.8 2014/01/21 20:48:52 riastradh Exp $"); | | 33 | __KERNEL_RCSID(0, "$NetBSD: i915_pci.c,v 1.1.2.9 2014/01/22 14:58:39 riastradh Exp $"); |
34 | | | 34 | |
35 | #include <sys/types.h> | | 35 | #include <sys/types.h> |
36 | #include <sys/systm.h> | | 36 | #include <sys/systm.h> |
37 | | | 37 | |
38 | #include <dev/pci/pciio.h> | | 38 | #include <dev/pci/pciio.h> |
39 | #include <dev/pci/pcireg.h> | | 39 | #include <dev/pci/pcireg.h> |
40 | #include <dev/pci/pcivar.h> | | 40 | #include <dev/pci/pcivar.h> |
41 | | | 41 | |
42 | #include <dev/pci/wsdisplay_pci.h> | | 42 | #include <dev/pci/wsdisplay_pci.h> |
43 | #include <dev/wsfb/genfbvar.h> | | 43 | #include <dev/wsfb/genfbvar.h> |
44 | | | 44 | |
45 | #include <drm/drmP.h> | | 45 | #include <drm/drmP.h> |
46 | | | 46 | |
| @@ -384,28 +384,27 @@ i915drm_fb_probe(struct drm_fb_helper *f | | | @@ -384,28 +384,27 @@ i915drm_fb_probe(struct drm_fb_helper *f |
384 | genfb_ops.genfb_mmap = i915drm_genfb_mmap; | | 384 | genfb_ops.genfb_mmap = i915drm_genfb_mmap; |
385 | | | 385 | |
386 | /* XXX errno NetBSD->Linux */ | | 386 | /* XXX errno NetBSD->Linux */ |
387 | ret = -genfb_attach(&sc->sc_genfb, &genfb_ops); | | 387 | ret = -genfb_attach(&sc->sc_genfb, &genfb_ops); |
388 | if (ret) { | | 388 | if (ret) { |
389 | aprint_error_dev(sc->sc_dev, "unable to attach genfb: %d\n", | | 389 | aprint_error_dev(sc->sc_dev, "unable to attach genfb: %d\n", |
390 | ret); | | 390 | ret); |
391 | goto fail4; | | 391 | goto fail4; |
392 | } | | 392 | } |
393 | | | 393 | |
394 | /* Success! */ | | 394 | /* Success! */ |
395 | return 1; | | 395 | return 1; |
396 | | | 396 | |
397 | fail4: __unused | | 397 | fail4: bus_space_unmap(dev->bst, sc->sc_fb_bsh, size); |
398 | bus_space_unmap(dev->bst, sc->sc_fb_bsh, size); | | | |
399 | fb_helper->fb = NULL; | | 398 | fb_helper->fb = NULL; |
400 | fail3: drm_framebuffer_unreference(&dev_priv->fbdev->ifb.base); | | 399 | fail3: drm_framebuffer_unreference(&dev_priv->fbdev->ifb.base); |
401 | fail2: i915_gem_object_unpin(sc->sc_fb_obj); | | 400 | fail2: i915_gem_object_unpin(sc->sc_fb_obj); |
402 | fail1: drm_gem_object_unreference_unlocked(&sc->sc_fb_obj->base); | | 401 | fail1: drm_gem_object_unreference_unlocked(&sc->sc_fb_obj->base); |
403 | mutex_unlock(&dev->struct_mutex); | | 402 | mutex_unlock(&dev->struct_mutex); |
404 | fail0: KASSERT(ret < 0); | | 403 | fail0: KASSERT(ret < 0); |
405 | return ret; | | 404 | return ret; |
406 | } | | 405 | } |
407 | | | 406 | |
408 | static void | | 407 | static void |
409 | i915drm_fb_destroy(struct drm_framebuffer *fb) | | 408 | i915drm_fb_destroy(struct drm_framebuffer *fb) |
410 | { | | 409 | { |
411 | | | 410 | |