Jump to content

Welcome to the SigmaTel 9200 Driver Initiative!


  • This topic is locked This topic is locked
358 replies to this topic

#1
james2mart

james2mart

    InsanelyMac Sage

  • Retired Developers
  • 344 posts
Hey guys!

Anyone out there with a SigmaTel 9200 codec in their computer need a driver for it? ---- Everyone.

This is a project that I will be working on over the summer, so like all other driver developers, I will be very busy... Your support and :D are welcome here, so you may post as you please. If you happen to have your hands on a datasheet for the Sigmatel 9200, feel free to post that as well!

Enjoy!

(no goodies yet, so don't bother asking) :)

#2
james2mart

james2mart

    InsanelyMac Sage

  • Retired Developers
  • 344 posts
Hey guys!

Just wanted to update you all on the status of my driver writing.... er... porting.

So far, it has been pretty easy to simply port the code over from FreeBSD, and its really cool because its not very long. I'm working on initializing the codec and allocating the space for the DMA buffer, which is quite difficult because thats where BSD and Darwin/IOKit differ the most.

Since I'm porting this driver from BSD, all im doing is copying and pasting stuff and then changing everything to darwin code, and then compiling to see if it builds without error. of course, this is risky, but in theory as long as I make sure i put the init() code in the right spot, and all the other code in the correct spot in the samplePCIaudioDriver example code, this thing should flow pretty smoothly.

Later!

#3
bliss

bliss

    we have done with P.O.W.E.R.

  • Members
  • PipPipPipPipPip
  • 334 posts
  • Gender:Male
  • Location:Germany
very nice!

let us know if you need testers then.

really great!

#4
Swad

Swad

    Founder.

  • Administrators
  • 3,709 posts
  • Gender:Male
  • Location:Chicago
Great work, keep us posted!

#5
macjason

macjason

    InsanelyMac Protégé

  • Members
  • Pip
  • 31 posts
Please get some drivers soon, because i was going to by an apple but it is to much so i told myself i won't buy anything until i get sound on this box

#6
nev6

nev6

    InsanelyMac Protégé

  • Members
  • PipPip
  • 87 posts
  • Location:florida
  • Interests:breaking beats.
:D



ready and willing to test :(

#7
nev6

nev6

    InsanelyMac Protégé

  • Members
  • PipPip
  • 87 posts
  • Location:florida
  • Interests:breaking beats.

Please get some drivers soon, because i was going to by an apple but it is to much so i told myself i won't buy anything until i get sound on this box

a little pushy aren't we?
why not thank the man for his time and efforts. :D

#8
james2mart

james2mart

    InsanelyMac Sage

  • Retired Developers
  • 344 posts
so right now i have gotten the codec pretty much initialized, and the widgets powered. now, i have to initialize the mixer... porting these functions and creating new functions has been somewhat easy so far. Once I am done with the initialization of the codec, i will then need to proceed to the streaming of audio, which is (likely) far more difficult. No promises, but i should have something up for yall to see pretty soon, just no telling when.

Here are my :( for today:

According to the Sigmatel 9200 Datasheet that I have, people with device ID 7690 are using a STAC9200. everywhere else, it is referenced as a 9220, but i just found it very interesting that 2 different model numbers have the same devID. I double and triple checked. I think it is very odd.

Since i'm having some form of success with this, my next project might be an intel 3945abg driver..... :gun:

#9
enb14

enb14

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 615 posts
  • Gender:Male
  • Location:Central America
Excelent news, we are hoping to see your driver finished soon.

#10
Arcanis

Arcanis

    InsanelyMac Protégé

  • Members
  • PipPip
  • 79 posts
On windows vista i got this output from my Sigmatel 9200:
HDAUDIO\FUNC_01&CTLR_VEN_8086&CTLR_DEV_27D8&VEN_8384&DEV_7690&REV_1022

It's interesting that in Vista, they only use generic High Definition Audio drivers, they're not specific of the Sigmatel card. When I was doing experiments with kext editing to the AppleHDA.kext it could detect the card, but i think the layout of the outputs/inputs was messed up. Because I could mess around with the volume control, the system sounds and all those things, but I didn't get sound at all, not from the integrated speakers and not from the line out and microphone.

I hope your driver initiative will have results. When I have some spare time I gonna install OSX86 on my Dell 6400 again to mess around a little and see if I can help with something :D

Later! :D

#11
james2mart

james2mart

    InsanelyMac Sage

  • Retired Developers
  • 344 posts
If someone with c++ knowledge could take a look at this, it would be great. this is one of the first bumps that I've hit and it has nothing to do with the IOKit, just general c++ stuff. The compiler gives an error like "expected primary-expression before '.' token" someone please give some tips! You may need to look at the bsd audioio.h file and the bsd azalia.c, azalia.h, and azalia_codec.c files to get an idea of what the macros like AZ_MIXER_CLASSES do. heres the link of my problems:

http://www.computer-...om/problems.rtf

#12
thursday77

thursday77

    InsanelyMac Protégé

  • Members
  • Pip
  • 12 posts
Great. I just bought a laptop and guess which soundcard it uses! However, I'll be interested in testing the driver :( No need to rush anything though. I'm sure you will help lots of people out when it's finished. Good luck!

#13
james2mart

james2mart

    InsanelyMac Sage

  • Retired Developers
  • 344 posts
ok, i figured out where my problem is. Thanks if you tried. The driver from BSD is in c, and while some of the features carry over from c to c++, others dont. One example is the initialization of submembers of unions and typedefined structures. no such luck. If you are a coder, or know anything about C or C++, you can help out in the assistance thread that I'm about to start.

#14
james2mart

james2mart

    InsanelyMac Sage

  • Retired Developers
  • 344 posts
I'm starting this thread so I can ask for help here, instead of the Status thread. If I have a question, you can check it out and see if you can help. No questions as of now :D

#15
Arcanis

Arcanis

    InsanelyMac Protégé

  • Members
  • PipPip
  • 79 posts
Yeah, unions are exclusive from C++

kexts must be programmed in C++ or there's no problem using C?

#16
james2mart

james2mart

    InsanelyMac Sage

  • Retired Developers
  • 344 posts
all the headers are c++ style and the sample code is all c++, so you're forced into it AFAIK.

#17
james2mart

james2mart

    InsanelyMac Sage

  • Retired Developers
  • 344 posts
Update.

Now that I have the codec initialized, I'm working on learning the interfaces for the Intel HDA specification. This is completely different than the BSD driver because I have to implement the streams from the Azalia Link to the codec. The ICH6/7 simply controls the link and the streams. I have to figure out what to send to the ICH and where to send it, along with what data to packet along with it. :-\ This is not going to be easy, and a whole lot more difficult than I expected. I may not post another update for a few days, but thats because all I will be doing is reading the documentation: Apple's, Intel's, and SigmaTel's. Lots o' fun. I had to do a good bit of reading to interpret the BSD code for initialization of the codec in the first place, and now I have to do more reading so that I can write my OWN code instead of porting someone else's. Yay.

#18
iNap

iNap

    InsanelyMac Protégé

  • Members
  • Pip
  • 14 posts
  • Location:missouri.edu
  • Interests:Anything and everything.
Another available tester right here. I really appreciate all the work you're putting into this!

#19
thursday77

thursday77

    InsanelyMac Protégé

  • Members
  • Pip
  • 12 posts

I had to do a good bit of reading to interpret the BSD code for initialization of the codec in the first place, and now I have to do more reading so that I can write my OWN code instead of porting someone else's. Yay.


:D Dude, if you get this working you will become quite famous on this boards and you'll learn lots of new stuff, making it easier to code something in the future.. :D

You're doing a great job, take the time you need. It will be worth every effort, I'm sure!

#20
macjason

macjason

    InsanelyMac Protégé

  • Members
  • Pip
  • 31 posts
I'm a beta tester if you need one :D

When you find it you will be a God among the 9200 guys, it gets boring having to boot back into windows just to get sound :)

Thanks





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy