From: Antonino Daplas <adaplas@pol.net>
To: James Simmons <jsimmons@infradead.org>
Cc: Linux Fbdev development list
<linux-fbdev-devel@lists.sourceforge.net>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Petr Vandrovec <vandrove@vc.cvut.cz>
Subject: Re: [PATCH]: EDID parser
Date: 03 Apr 2003 08:45:10 +0800 [thread overview]
Message-ID: <1049330578.1029.38.camel@localhost.localdomain> (raw)
In-Reply-To: <Pine.LNX.4.44.0304022245520.2488-100000@phoenix.infradead.org>
On Thu, 2003-04-03 at 05:55, James Simmons wrote:
>
> > James,
> >
> > Here's a revised patch. I was able to receive source code from SciTech
> > (c/o Kendall Bennett) which allowed me to fix bugs and complete the
> > parser. It's probably around 90-95% complete in terms of basic parsing.
> >
> > It also fixes memory leaks which was present in the old patch.
>
> Let really good. I applied it to my local tree but haven't passed it to BK
> fbdev yet. The only thing I like to see changed is get_EDID. At present it
> accepts a struct pci_dev. Now for generic support for the intel platform
> we can get this from the BIOS. You already have a patch that does this.
> It doesn't need a struct pci_dev in this case. It is possible to get this
> info from the i2c bus but I never seen any drivers do this. What data would
> we have to pass in get the EDID inforamtion? So the question is how
> generic will get_EDID end up being or will we have to have driver specfic
> hooks since I don't pitcure i2c approaches being the same for each video
> card. Petr didn't you attempt this with the matrox driver at one time?
>
I think we just need an additional method in struct fb_ops. Something like
this:
unsigned char *fb_get_edid(struct fb_info *info)
{
if (info->fbops->fb_get_edid)
return info->fbops->fb_get_edid(info);
else
return fallback_get_edid_method();
}
We can get the EDID by different methods:
1. User uploads EDID to kernel via an ioctl. This is always preferred,
as it gives the user the power to override machine settings, or if there
is no other method to get the EDID. We can also have a userland utility
that encodes user-specified monitor information and modelines into EDID
info (a reverse EDID parser). For instance, selected entries in
/etc/fb.modes can be easily converted to EDID which the user can upload
to fbdev.
2. Gets it through device-specific hooks (i2c, whatever), if available.
This is second choice, as it can get the EDID anytime. This is useful
when a user decides to change monitors without rebooting, or if the
device is a non-primary display.
3. Some architecture specific methods, such as doing it via the BIOS.
This is the last choice, our fallback method. as this EDID may be static
and represents only the display detected at boot time.
For supplementary functions, we also need some kind of control that
allows the user to tell fbdev "I've switched monitors, please reread the
EDID". We want to avoid doing DDC each time fbdev does an fb_set_var(),
especially for DDC1 which can be very slow.
Also, a way to download the EDID from kernel to userland.
Tony
-------------------------------------------------------
This SF.net email is sponsored by: ValueWeb:
Dedicated Hosting for just $79/mo with 500 GB of bandwidth!
No other company gives more support or power for your dedicated server
http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/
next prev parent reply other threads:[~2003-04-03 0:52 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-04-01 15:32 [PATCH]: EDID parser Antonino Daplas
2003-04-02 15:41 ` Antonino Daplas
2003-04-02 21:55 ` [Linux-fbdev-devel] " James Simmons
2003-04-02 22:20 ` Benjamin Herrenschmidt
2003-04-03 0:45 ` Antonino Daplas [this message]
2003-04-03 6:44 ` Benjamin Herrenschmidt
2003-04-03 7:05 ` Benjamin Herrenschmidt
-- strict thread matches above, loose matches on Subject: below --
2003-04-03 15:21 Alan Cox
2003-04-03 16:33 ` Geert Uytterhoeven
2003-04-03 17:10 ` [Linux-fbdev-devel] " Sven Luther
2003-04-03 16:15 ` Alan Cox
2003-04-03 17:18 ` Sven Luther
2003-04-03 16:38 Petr Vandrovec
2003-04-03 17:15 ` Sven Luther
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=1049330578.1029.38.camel@localhost.localdomain \
--to=adaplas@pol.net \
--cc=jsimmons@infradead.org \
--cc=linux-fbdev-devel@lists.sourceforge.net \
--cc=linux-kernel@vger.kernel.org \
--cc=vandrove@vc.cvut.cz \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).