Return-Path: Received: from localhost (bix [127.0.0.1]) by localhost.localdomain (8.12.10/8.12.10) with ESMTP id j2B5nt9K004318 for ; Thu, 10 Mar 2005 21:49:55 -0800 Received: from bix [127.0.0.1] by localhost with POP3 (fetchmail-6.2.0) for akpm@localhost (single-drop); Thu, 10 Mar 2005 21:49:55 -0800 (PST) Received: from smtp.osdl.org (fire.osdl.org [65.172.181.4]) by shell0.pdx.osdl.net (8.13.1/8.11.6) with ESMTP id j2B5kQlF007020 for ; Thu, 10 Mar 2005 21:46:26 -0800 Received: from gate.crashing.org (gate.crashing.org [63.228.1.57]) by smtp.osdl.org (8.12.8/8.12.8) with ESMTP id j2B5kNqi000437 (version=TLSv1/SSLv3 cipher=EDH-RSA-DES-CBC3-SHA bits=168 verify=NO) for ; Thu, 10 Mar 2005 21:46:25 -0800 Received: from gaston (localhost [127.0.0.1]) by gate.crashing.org (8.12.8/8.12.8) with ESMTP id j2B5iCgJ024157; Thu, 10 Mar 2005 23:44:13 -0600 Subject: [PATCH] radeonfb: DDC i2c fix From: Benjamin Herrenschmidt To: Andrew Morton Cc: Linux Fbdev development list Content-Type: text/plain Date: Fri, 11 Mar 2005 16:46:10 +1100 Message-Id: <1110519970.5751.17.camel@gaston> Mime-Version: 1.0 X-Mailer: Evolution 2.0.3 Content-Transfer-Encoding: 7bit Received-SPF: none (domain of benh@kernel.crashing.org does not designate permitted sender hosts) X-MIMEDefang-Filter: osdl$Revision: 1.104 $ X-Scanned-By: MIMEDefang 2.36 X-Spam-Level: X-Spam-Status: No, score=-1.6 required=2.0 tests=AWL,BAYES_00 autolearn=ham version=3.0.2 X-Spam-Checker-Version: SpamAssassin 3.0.2 (2004-11-16) on bix Hi ! The radeonfb code for DDC probing (like it's X.org counterpart) uses to leave the DDC clock & data lines asserted after the probing is complete. This causes problems with some Apple monitors like the new Cinema HD 23", who will turn themselves off when that happens. This fixes it. Signed-off-by: Benjamin Herrenschmidt Index: linux-work/drivers/video/aty/radeon_i2c.c =================================================================== --- linux-work.orig/drivers/video/aty/radeon_i2c.c 2005-01-24 17:09:44.000000000 +1100 +++ linux-work/drivers/video/aty/radeon_i2c.c 2005-03-04 17:26:42.000000000 +1100 @@ -236,6 +236,12 @@ if (edid) break; } + /* Release the DDC lines when done or the Apple Cinema HD display + * will switch off + */ + OUTREG(reg, INREG(reg) & ~(VGA_DDC_CLK_OUT_EN | VGA_DDC_DATA_OUT_EN)); + (void)INREG(reg); + if (out_edid) *out_edid = edid; if (!edid) {