From owner-freebsd-hackers@freebsd.org Sat Jul 25 05:54:33 2015 Return-Path: Delivered-To: freebsd-hackers@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0C38A9A9E08 for ; Sat, 25 Jul 2015 05:54:33 +0000 (UTC) (envelope-from ps06756@gmail.com) Received: from mail-la0-x236.google.com (mail-la0-x236.google.com [IPv6:2a00:1450:4010:c03::236]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 89366E34 for ; Sat, 25 Jul 2015 05:54:32 +0000 (UTC) (envelope-from ps06756@gmail.com) Received: by lagw2 with SMTP id w2so24440838lag.3 for ; Fri, 24 Jul 2015 22:54:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:from:date:message-id:subject:to:content-type; bh=LnNxIdMo0av0JMopuZT5PILQyKpVQZmIyhlG29ccaTM=; b=QuVjFmy2X9E5NBGQ1dmZ1JsuuiZ+gFer4eNmanaHrVk7vW0zmfdaZeAYuCt6ejYCly KllSxwYAa+ysJjfss9YyCLh+DbvtRKG9hlJ9xJChz+8xjAF6jNG1mnAlCX1MhH49VRse uyzhvvPO9i6WDfhazp17dVvhxassrLyBzS6z40rsd1z5ZODJ1Aq5agkVybrb5mDqLf7C J+FjbfP82Ey/SVq9etRsbkBSk5+eWtrcHzKu8GIjipn3Zq/j5eJU7e8uoJPG6UiNZcUp MAioZ7Hjb3LryOSzbAZRACGDNECJvzqdkln1syWpsY3Sh4qA/TIzHJrJdwQlC/7TO7l3 xhnA== X-Received: by 10.152.205.67 with SMTP id le3mr17089587lac.50.1437803670562; Fri, 24 Jul 2015 22:54:30 -0700 (PDT) MIME-Version: 1.0 Received: by 10.25.87.194 with HTTP; Fri, 24 Jul 2015 22:54:11 -0700 (PDT) From: Pratik Singhal Date: Sat, 25 Jul 2015 11:24:11 +0530 Message-ID: Subject: How to interface AC'97 codec driver with kernel ? To: freebsd-hackers Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.20 X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 25 Jul 2015 05:54:33 -0000 Hello all, I am writing the driver for AC'97 controller present in Allwinner A10 SoC as a part of my Google summer of code Project. I have understood the theoretical aspects of AC'97 and know "what" to code, but I am unable to understand , how to interface the code with FreeBSD kernel. For ex, when making changes in the mmc driver, it was very clear that the high-level file sys/dev/mmc/mmc.c will call the methods defined in our implementation of mmc driver, In the case of AC'97, what all files should I look at ? I have so far looked at sys/dev/sound/pcm/ directory, but can't seem to understand much there. Also,how does FreeBSD control the AC-link , which will be used to control various parameters related to AC'97 codec I/O ? I am new to working with sound at this low level, so there might be some trivial things which I may have missed. Any help would be very valuable for timely completion of project Thanks, Pratik Singhal