From owner-freebsd-usb@FreeBSD.ORG Tue May 31 20:12:56 2011 Return-Path: Delivered-To: freebsd-usb@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 145F41065672; Tue, 31 May 2011 20:12:56 +0000 (UTC) (envelope-from lev@FreeBSD.org) Received: from onlyone.friendlyhosting.spb.ru (onlyone.friendlyhosting.spb.ru [IPv6:2a01:4f8:131:60a2::2]) by mx1.freebsd.org (Postfix) with ESMTP id A624F8FC1B; Tue, 31 May 2011 20:12:55 +0000 (UTC) Received: from lion.home.serebryakov.spb.ru (unknown [IPv6:2001:470:923f:1:d929:8867:6867:1b37]) (Authenticated sender: lev@serebryakov.spb.ru) by onlyone.friendlyhosting.spb.ru (Postfix) with ESMTPA id BC9084AC1C; Wed, 1 Jun 2011 00:12:53 +0400 (MSD) Date: Wed, 1 Jun 2011 00:12:51 +0400 From: Lev Serebryakov Organization: FreeBSD X-Priority: 3 (Normal) Message-ID: <1618757683.20110601001251@serebryakov.spb.ru> To: freebsd-usb@freebsd.org, n_hibma@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=windows-1251 Content-Transfer-Encoding: quoted-printable Cc: Subject: Changes to usb/serial: how to distinguish between old and new interfaces in 8-STABLE and 9-CURRENT branches? X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: lev@FreeBSD.org List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 31 May 2011 20:12:56 -0000 Hello, Freebsd-usb. I'm author of `comms/umcs7840' port, which is module for usbcom, like `uftdi' and `uplcom' in base system. Last changes, committed to 8-STABLE (and, earlier to HEAD), breaks some API/ABI for such modules. I have tow questions: (1) How could I detect which version have user at compile time? I don't use any autoconf/automake framework, my build framework is baed on FreeBSD-native bsd.*.mk framework, so I need some define or something like this to distinguish these versions. I could not find anything suitable in revision 221612 commit. (2) WHY, OR WHY old module was loaded without problems?! ABI is broken (ucom_detach()? size of struct ucom_softc) and old module should complain on load, IMHO! Users will be very surprised when computer will reboot after system update! --=20 // Black Lion AKA Lev Serebryakov