All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Vetter <daniel@ffwll.ch>
To: James Park <james.park@lagfreegames.com>
Cc: "Michel Dänzer" <michel@daenzer.net>,
	"James Park" <jpark37@lagfreegames.com>,
	dri-devel <dri-devel@lists.freedesktop.org>
Subject: Re: [PATCH] drm: Fix drm.h uapi header for Windows
Date: Wed, 2 Dec 2020 23:25:58 +0100	[thread overview]
Message-ID: <CAKMK7uFQcyKRb90FiWFGf3pqotMmLvsTDf9yc7m1Or1tYkdOOA@mail.gmail.com> (raw)
In-Reply-To: <CABjik9dprmMzvmiu8XDPL+x9a7mbbOfPVAfbtAd1Sv74HxVSdg@mail.gmail.com>

On Wed, Dec 2, 2020 at 8:48 PM James Park <james.park@lagfreegames.com> wrote:
>
> I can avoid modifying drm.h by doing this to drm_fourcc.h:
>
> #ifdef _WIN32
> #include <stdint.h>
> typedef uint64_t __u64;
> #else
> #include "drm.h"
> #endif
>
> And this to amdgpu_drm.h:
>
> #ifdef _WIN32
> #include <stdint.h>
> typedef int32_t  __s32;
> typedef uint32_t __u32;
> typedef uint64_t __u64;
> #else
> #include "drm.h"
> #endif
>
> But now I'm touching two files under drm-uapi instead of one, and weirdly.
>
> If we're trying to cut ties with the drm-uapi folder entirely, the stuff ac_surface.c need includes the AMD_FMT_MOD stuff in drm_fourcc.h, and AMDGPU_TILING_* under amdgpu_drm.h. Is there a better spot for these definitions?

The drm_fourcc.h maybe makes some sense (I think in some places mesa
uses these internally, and many drivers use the modifiers directly in
the main driver). But the amdgpu header should be all ioctl stuff,
which should be all entirely in the winsys only.

Also kinda disappointing that drm_fourcc.h includes drm.h and isn't
standalone, but I guess that sailed (at least for linux).
-Daniel

> Thanks,
> James
>
> On Wed, Dec 2, 2020 at 10:06 AM Michel Dänzer <michel@daenzer.net> wrote:
>>
>> On 2020-12-02 1:46 p.m., Daniel Vetter wrote:
>> > On Wed, Dec 2, 2020 at 12:43 PM Michel Dänzer <michel@daenzer.net> wrote:
>> >>
>> >> On 2020-12-01 11:01 a.m., James Park wrote:
>> >>> This will allow Mesa to port code to Windows more easily.
>> >>
>> >> As discussed in
>> >> https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6162#note_712779
>> >> , including drm.h makes no sense when building for Windows.
>> >
>> > Yeah I think it'd be cleanest if we can avoid this. If not I think the
>> > right fix would be to split out the actually needed parts from drm.h
>> > into a new header (still included by drm.h for backwards compat
>> > reasons) which mesa can use. Since it looks like the problematic parts
>> > are the legacy gunk, and not the new ioctl structures. Pulling out
>> > drm_render.h for all the render stuff and mabe drm_vblank.h for the
>> > vblank stuff (which would fit better in drm_mode.h but mistakes were
>> > made, oops).
>>
>> If anything currently in drm.h is needed while building for Windows, it
>> points to a broken abstraction somewhere in userspace. (Specifically,
>> the Mesa Gallium/Vulkan winsys is supposed to abstract away platform
>> details like these)
>>
>>
>> --
>> Earthling Michel Dänzer               |               https://redhat.com
>> Libre software enthusiast             |             Mesa and X developer



-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

  reply	other threads:[~2020-12-02 22:26 UTC|newest]

Thread overview: 71+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-01 10:01 drm: Fix drm.h uapi header for Windows James Park
2020-12-01 10:01 ` [PATCH] " James Park
2020-12-02  8:46   ` Simon Ser
2020-12-02  9:07     ` James Park
2020-12-02  9:07       ` James Park
2020-12-02 11:42   ` Michel Dänzer
2020-12-02 12:46     ` Daniel Vetter
2020-12-02 18:06       ` Michel Dänzer
2020-12-02 19:47         ` James Park
2020-12-02 22:25           ` Daniel Vetter [this message]
2020-12-03  1:24             ` James Park
2020-12-03  9:05             ` Pekka Paalanen
2020-12-03 12:54             ` Ville Syrjälä
2020-12-03 13:13               ` Simon Ser
2020-12-03  8:18           ` Michel Dänzer
2020-12-03 14:52             ` Daniel Vetter
2020-12-03 18:55               ` James Park
2020-12-03 20:45                 ` Daniel Vetter
2020-12-04  4:53                   ` [PATCH] drm: Allow drm_fourcc.h without including drm.h James Park
2020-12-04  4:53                     ` James Park
2020-12-04  8:53                       ` Simon Ser
2020-12-04  9:47                         ` James Park
2020-12-04 10:08                           ` James Park
2020-12-04 14:46                       ` kernel test robot
2020-12-04 14:46                         ` kernel test robot
2020-12-04 22:29                       ` kernel test robot
2020-12-04 22:29                         ` kernel test robot
2020-12-04  8:11                   ` [PATCH] drm: Fix drm.h uapi header for Windows Pekka Paalanen
2020-12-04 15:58                     ` Daniel Vetter
2020-12-04 19:07                       ` James Park
2020-12-06  0:39                         ` [PATCH] drm: drm_basic_types.h, DRM_FOURCC_STANDALONE James Park
2020-12-06  0:39                           ` James Park
2020-12-07  9:45                             ` Simon Ser
2020-12-07  9:55                               ` James Park
2020-12-07  9:59                                 ` Simon Ser
2020-12-07 10:05                                   ` James Park
2020-12-07 10:15                                     ` Simon Ser
2020-12-07 17:25                             ` kernel test robot
2020-12-07 17:25                               ` kernel test robot
2020-12-07 18:15                               ` James Park
2020-12-07 18:15                                 ` James Park
2020-12-08 12:31                                   ` Simon Ser
2020-12-08 18:32                                     ` James Park
2020-12-09 10:15                                       ` Simon Ser
2020-12-09 10:18                                   ` Simon Ser
2020-12-09 11:03                                     ` James Park
2020-12-09 11:03                                       ` James Park
2020-12-10  8:35                                         ` Pekka Paalanen
2020-12-10  9:12                                           ` James Park
2020-12-10  9:12                                             ` James Park
2021-02-01 21:45                                               ` James Park
2021-02-02 17:28                                                 ` Emil Velikov
2021-02-02 18:14                                                   ` James Park
2021-02-02 22:48                                                     ` Emil Velikov
2021-02-02 23:05                                                       ` Simon Ser
2021-02-02  8:51                                               ` Simon Ser
2021-02-02  8:52                                                 ` Simon Ser
2020-12-07  8:51                         ` [PATCH] drm: Fix drm.h uapi header for Windows Pekka Paalanen
2020-12-07  9:08                           ` James Park
2020-12-07 10:35                             ` Pekka Paalanen
2020-12-07 10:44                               ` Pekka Paalanen
2020-12-07 10:47                                 ` Simon Ser
2020-12-07 10:49                                   ` James Park
2020-12-07 10:53                                     ` Simon Ser
2020-12-07 11:01                                       ` James Park
2020-12-07 11:14                                       ` Pekka Paalanen
2020-12-08  1:08                                         ` James Park
2021-08-17 17:21                                           ` Jason Ekstrand
2020-12-07  9:48                         ` Simon Ser
2020-12-07 10:00                           ` James Park
2020-12-07 10:02                             ` Simon Ser

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAKMK7uFQcyKRb90FiWFGf3pqotMmLvsTDf9yc7m1Or1tYkdOOA@mail.gmail.com \
    --to=daniel@ffwll.ch \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=james.park@lagfreegames.com \
    --cc=jpark37@lagfreegames.com \
    --cc=michel@daenzer.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.