Jump to content

[UPDATE!]Building a Driver for the HighPoint DC7280 SATA Controller


mrjofus1959

Recommended Posts

[uPDATE!  I thought I'd walk through this again on a fresh USB flash unRAID 4.7 boot.  In doing so I found a couple of things that needed to be changed.  They're noted with UPDATE below.  The attachment is update as well.  Sorry about that!]

 

First of all I give total credit for this to "olympia" and the wiki referenced in the first post of this topic:

 

http://lime-technology.com/forum/index.php?topic=14129.0

 

I have created this topic as a "Reader's Digest" version of that topic, so hopefully it's OK for me to just reference the original topic from here as that keeps this post a bit more concise.  The following steps are for the most part nothing more than a condensed version of that wiki, modified to show only the steps I went through to build my kernel module.  I used a telnet session from a Windows 7 Netbook to do this, so the following steps assume you've already logged into your unRAID 4.7 server, and they just represent the command typed in at the shell prompt.

 

1) cd /root

2) mkdir packages

3) cd packages

4) wget <all links> (These are all of the packages referenced in olympia's wiki.  I found kernel.org to be down so I had to get linux-2.6.32.9.tar.gz from another location.)

5) installpkg <all files>.tgz (This doesn't include the linux kernel or unRAID package retrieved in step 4, and to make my life easier I created a script file which I then sourced to perform all of the installpkg commands.)

6) mkdir /mnt/disk1/.unraiddev (I picked disk1 since I'm running the basic version right now.)

7) unzip unRAID* -d /mnt/disk1/.unraiddev/

8) mv /usr/src/linux /usr/src/linux_original

9) tar -C /usr/src/ -zxvf linux-2.6.32.9.tar.gz

10) ln -sf /usr/src/linux-2.6.32.9 /usr/src/linux

11) cp -rf /usr/src/linux_original/* /usr/src/linux-2.6.32.9/

12) cp -f /usr/src/linux_original/.config /usr/src/linux-2.6.32.9/

13) ln -sf /usr/src/linux/include/asm-generic /usr/include/asm-generic

14) ln -sf /usr/src/linux/include/linux /usr/include/linux

15) ln -sf /usr/src/linux/arch/x86/include/asm /usr/include/asm

16) cd /usr/src/linux/

17) make clean

[uPDATE] 18) make bzImage (I had to add this step to get through the make for the dc7280 in the next section due to some missing files???)

 

Here's where things are specific to my HighPoint controller driver.  I copied the driver tar file from the installation CD on the Windows 7 computer to the /boot directory on my unRAID server.  Then:

 

19) cd /usr/src

20) tar -C /usr/src/ -zxvf /boot/dc7280-linux-src-v1.0-110513-1646.tar.gz

21) cd dc7280-linux-src-v1.0/product/dc7280/linux

22) make

23) make install

 

Now back to the flow from olympia's wiki:

 

[uPDATE] 24) cd /usr/src/linux/

25) make bzImage

26) make modules

27) make modules_install

28) cp arch/x86/boot/bzImage /boot/bzimage_new

29) mkdir /mnt/disk1/.unraiddev/bz-mod

30) cd /mnt/disk1/.unraiddev/bz-mod

31) zcat ../bzroot | cpio -i -d -H newc --no-absolute-filenames

32) cp -r lib/modules/2.6.32.9-unRAID/extra/ /root/

33) rsync -av --delete /lib/modules/2.6.32.9-unRAID/ /mnt/disk1/.unraiddev/bz-mod/lib/modules/2.6.32.9-unRAID/

34) cp -r /root/extra/ /mnt/disk1/.unraiddev/bz-mod/lib/modules/2.6.32.9-unRAID/

35) cd /mnt/disk1/.unraiddev/bz-mod/

36) find . | cpio -o -H newc | gzip > /boot/bzroot_new

37) cd /boot

38) mv bzimage bzimage_original

39) mv bzroot bzroot_original

40) cp bzimage_new bzimage

41) cp bzroot_new bzroot

42) rm -r /mnt/disk1/.unraiddev

43) reboot

 

That's it!

 

(text file now attached with above steps for easy printout)

build_unRAID_driver.txt

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...