From patchwork Tue Feb 9 23:16:03 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Greg Kroah-Hartman X-Patchwork-Id: 2672 Return-path: Envelope-to: mchehab@infradead.org Delivery-date: Tue, 09 Feb 2010 23:16:30 +0000 Received: from bombadil.infradead.org [18.85.46.34] by pedra with IMAP (fetchmail-6.3.6) for (single-drop); Tue, 09 Feb 2010 21:19:44 -0200 (BRST) Received: from vger.kernel.org ([209.132.180.67]) by bombadil.infradead.org with esmtp (Exim 4.69 #1 (Red Hat Linux)) id 1NezJm-0004OW-CQ; Tue, 09 Feb 2010 23:16:30 +0000 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754291Ab0BIXQK (ORCPT + 1 other); Tue, 9 Feb 2010 18:16:10 -0500 Received: from kroah.org ([198.145.64.141]:57922 "EHLO coco.kroah.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753211Ab0BIXQI (ORCPT ); Tue, 9 Feb 2010 18:16:08 -0500 Received: from localhost (c-98-246-45-209.hsd1.or.comcast.net [98.246.45.209]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by coco.kroah.org (Postfix) with ESMTPSA id 9707948665; Tue, 9 Feb 2010 15:16:07 -0800 (PST) Date: Tue, 9 Feb 2010 15:16:03 -0800 From: Greg KH To: Mauro Carvalho Chehab Cc: Matthias Schwarzott , Douglas Schilling Landgraf , Andreas Oberritter , linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, Andreas Gruenbacher Subject: [PATCH] dvb: l64781.ko broken with gcc 4.5 Message-ID: <20100209231603.GA22588@kroah.com> MIME-Version: 1.0 Content-Disposition: inline User-Agent: Mutt/1.5.20 (2009-06-14) Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org From: Richard Guenther I'm trying to fix it on the GCC side (PR43007), but the module is quite stupid in using ULL constants to operate on u32 values: static int apply_frontend_param (struct dvb_frontend* fe, struct dvb_frontend_parameters *param) { ... static const u32 ppm = 8000; u32 spi_bias; ... spi_bias *= 1000ULL; spi_bias /= 1000ULL + ppm/1000; which causes current GCC 4.5 to emit calls to __udivdi3 for i?86 again. This patch fixes this issue. Signed-off-by: Richard Guenther Cc: Andreas Gruenbacher Cc: stable Cc: Mauro Carvalho Chehab Cc: Matthias Schwarzott Cc: Douglas Schilling Landgraf Cc: Andreas Oberritter Signed-off-by: Greg Kroah-Hartman --- drivers/media/dvb/frontends/l64781.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html --- a/drivers/media/dvb/frontends/l64781.c +++ b/drivers/media/dvb/frontends/l64781.c @@ -192,8 +192,8 @@ static int apply_frontend_param (struct spi_bias *= qam_tab[p->constellation]; spi_bias /= p->code_rate_HP + 1; spi_bias /= (guard_tab[p->guard_interval] + 32); - spi_bias *= 1000ULL; - spi_bias /= 1000ULL + ppm/1000; + spi_bias *= 1000; + spi_bias /= 1000 + ppm/1000; spi_bias *= p->code_rate_HP; val0x04 = (p->transmission_mode << 2) | p->guard_interval;