Commit d71792ac authored by Jaswinder Singh's avatar Jaswinder Singh Committed by David Woodhouse

firmware: convert sb16_csp driver to use firmware loader exclusively

Signed-off-by: default avatarJaswinder Singh <jaswinder@infradead.org>
Signed-off-by: default avatarDavid Woodhouse <David.Woodhouse@intel.com>
parent 7f127d5e
...@@ -28,6 +28,10 @@ fw-shipped-$(CONFIG_SMCTR) += tr_smctr.bin ...@@ -28,6 +28,10 @@ fw-shipped-$(CONFIG_SMCTR) += tr_smctr.bin
fw-shipped-$(CONFIG_SND_KORG1212) += korg/k1212.dsp fw-shipped-$(CONFIG_SND_KORG1212) += korg/k1212.dsp
fw-shipped-$(CONFIG_SND_MAESTRO3) += ess/maestro3_assp_kernel.fw \ fw-shipped-$(CONFIG_SND_MAESTRO3) += ess/maestro3_assp_kernel.fw \
ess/maestro3_assp_minisrc.fw ess/maestro3_assp_minisrc.fw
fw-shipped-$(CONFIG_SND_SB16_CSP) += sb16/mulaw_main.csp sb16/alaw_main.csp \
sb16/ima_adpcm_init.csp \
sb16/ima_adpcm_playback.csp \
sb16/ima_adpcm_capture.csp
fw-shipped-$(CONFIG_SND_YMFPCI) += yamaha/ds1_ctrl.fw yamaha/ds1_dsp.fw \ fw-shipped-$(CONFIG_SND_YMFPCI) += yamaha/ds1_ctrl.fw yamaha/ds1_dsp.fw \
yamaha/ds1e_ctrl.fw yamaha/ds1e_ctrl.fw
fw-shipped-$(CONFIG_TIGON3) += tigon/tg3.bin tigon/tg3_tso.bin \ fw-shipped-$(CONFIG_TIGON3) += tigon/tg3.bin tigon/tg3_tso.bin \
......
...@@ -321,3 +321,21 @@ DSP56001 assembler, possibly buildable with a56 from ...@@ -321,3 +321,21 @@ DSP56001 assembler, possibly buildable with a56 from
http://www.zdomain.com/a56.html http://www.zdomain.com/a56.html
-------------------------------------------------------------------------- --------------------------------------------------------------------------
Driver: SND_SB16_CSP - Sound Blaster 16/AWE CSP support
File: sb16/mulaw_main.csp
File: sb16/alaw_main.csp
File: sb16/ima_adpcm_init.csp
File: sb16/ima_adpcm_playback.csp
File: sb16/ima_adpcm_capture.csp
Licence: Allegedly GPLv2+, but no source visible. Marked:
/*
* Copyright (c) 1994 Creative Technology Ltd.
* Microcode files for SB16 Advanced Signal Processor
*/
Found in hex form in kernel source.
--------------------------------------------------------------------------
:10000000001000440800004400B1004400610044B6
:10001000085000440DF261A8440404190000404552
:10002000404939AC5555718B500563800000063945
:10003000FF2E2149FF0FD4492001090E2000718BAA
:10004000A801A8808801A880A8000080D200718B38
:100050008800A880A804B3802007B3808803B180FB
:10006000C000095CC2010082A100718BCD0004199F
:100070002120718BCF0004190000B180C200041947
:100080000040001408400424000034490C4000449F
:1000900044040439000040453200095C00000C397A
:1000A00000004045404009EFFF2009CF000463A154
:1000B000500333800004A38000FFC28B00D004549F
:1000C00004E000C4200380C03000008800007A0AE9
:1000D000D001008200600044C0000099006000442C
:1000E00000FFC28B20000080000D428B083200C44C
:1000F000000E428B00A200C4001E428B0CB200C452
:10010000008E428B006200C4009E428B085200C4E5
:1001100000BE428B085200C40004428B047200C42B
:100120000024428B00D200C40055428B006000C402
:1001300000004045200179800030428B088200C4D5
:10014000000040450000718B4001008000600044C9
:10015000FF00E2AB00B200C40FF2A8A82000B188F3
:10016000000041024DF20039C001008200600044ED
:100170000DF2A3A84DF2003900600044FF00E2AB8D
:1001800020000088000061024DF204190060004464
:10019000FF00E2ABA0000088000061104DF20419DE
:1001A00000600044FF20E2AB60000088000071C0E6
:1001B0004DF20419006000440000798000E20084E0
:1001C0000303044904C20054006004640060004456
:1001D0000000638000000619030004490060004429
:1001E00020016380000006190020E28B0CF20084DD
:1001F000BE00518BC020003908010044EC00518B37
:10020000C02000390002E28B042100843F00518BA2
:10021000C2200039001100443D00518BC22000393A
:10022000E500718BCD0000390000B180C9200419B0
:10023000CB200419C1200419C32004191000718BAC
:10024000C7200419DE00518BCF0000390001B180B6
:10025000C4200419C6200419C8200419CA2004198E
:100260002000718BCC200419030004490060004475
:10027000090461A8C10004190B0461A8CA0004198B
:10028000046000D40D00610A9040098F0001004510
:100290000F00610A0040098F000100458200092E0D
:1002A000804009CF02006122432561224033008053
:1002B0000848004420B1495C9200094E0203092E0F
:1002C0000000A302C00071C02000EB800004C28BBC
:1002D0002004618000047A02C00000820CC3084937
:1002E000B001F3800000103920000C890C88084907
:1002F0000300A81800001039BDFF628B20010080A8
:10030000000063CB00007A024000015B2000008007
:1003100000004ACB2000138020007A80E02100C03A
:10032000080008491041098EAEAE628B00046122BC
:1003300000030045220133802001A30200007A80DF
:10034000C00000820720400A08A3008440210080EA
:1003500040059310C7200039000040450720400A9F
:100360000C930084080000820C246150400100803E
:10037000C7200039000040450004638000000639B2
:100380004201090E0220610A000100450C20600AAA
:1003900000C300840004B180000006390C6104D45D
:1003A000002471C0203333C0E001A38222037A020B
:1003B000C301A3822001338000007A80C201B350C0
:1003C000CC20003900007180000800440C20600A35
:1003D00000F300840004B180000006390C6104D4ED
:1003E000000071C000009310CC20003900080044C8
:1003F000CC200039002000C0003071C0000800444B
:1004000020010080AEAE628B20013380000083802B
:1004100020007A8020A1495C8200096E804A098E02
:10042000E001B3822004A38000007ACB2804EA1004
:100430000C047A107000C08B00001039900300800B
:100440004000215B900061800C8A084900001C1963
:100450004000085B08000849200200800300A8183B
:1004600000001419400021CB000041020000EB8085
:10047000F2010082402133020820610AC4000419FD
:10048000C70000990200610A0C0A04140100610A05
:100490000300480A00580454C30004190C580044CF
:1004A0000800C80A0C580454C80004190A00610A5C
:1004B0000900480A00C80454C90004190CC80044C3
:1004C0000B00C80A0CC80454CB0004190400610ACC
:1004D0000600480A00D80454C60004190CD8004489
:1004E0000500C80A0CD80454C50004190700610AA5
:1004F0000C00480A000A0454CC0004190C0A0044F9
:100500000E00C80A0C0A0454CE000419000040452D
:080510002010718B0842060067
:00000001FF
/*
* Copyright (c) 1994 Creative Technology Ltd.
* Microcode files for SB16 Advanced Signal Processor
*/
:1000000000100044080000440070004408D0004480
:1000100000F000440DF261A84404041900004045BA
:100020000004638000000639FF2E2149FF0CD449EB
:10003000404939AC5555718B5001B1800000718B2E
:10004000C2300419C0A00419C2A004198900718B20
:10005000C83004197100718BCD000419CF00041948
:100060008000718BCB2004192000718BC4200419EF
:100070004700518BC020003900006380C1A00419E3
:100080009300014FCD300009CF3000090C4000141F
:1000900000600014000461A8020461A80C6004243C
:1000A000000034490850004444040439000040452D
:1000B0000830610A05B0E8180CC00454C8300419AF
:1000C000090400A80B0400A800004045090461A829
:1000D000C10004190B0461A8CA0004190D00610ACB
:1000E000000100450F00610A0040098F0001004532
:1000F000404009EFFF2009CF000463A15003338083
:100100000004A38000FFC28B0C120454081200C428
:10011000200380C03000008800007A0AD0010082ED
:1001200004500044C00000990450004400FFC28BFA
:1001300020000080000D428B044200C4000E428B60
:10014000085200C4001E428B00E200C4008E428BA5
:1001500008D200C4009E428B04F200C400BE428B51
:1001600004F200C40004428B041100C40024428B3A
:100170000C6100C40055428B045000C4003F428B08
:100180000C0100C400004045200179800030428B02
:10019000046200C4000040450000718B40010080F3
:1001A00004500044FF00E2AB08C200C40FF2A8A84C
:1001B0002000B188000041024DF20039C0010082E8
:1001C000045000440DF2A3A84DF20039045000443D
:1001D000FF00E2AB20000088000061024DF204192C
:1001E00004500044FF00E2ABA00000880000611052
:1001F0004DF2041904500044FF20E2AB6000008877
:10020000000071C04DF204190450004400007A0A45
:100210002001F08001A0410A001100C42001F080FB
:10022000C130041904500044000079800C4100845E
:100230008900718BC83004199700718BCD0000398B
:100240000001B1808000041982000419C120041942
:10025000C3200419C2300419CD100419CF10041999
:10026000B000718B84000419860004198000718B22
:10027000CB2004199300014FCD300009CF30000985
:100280000302044908410014045000440000638044
:100290000000061903000449045000442001638053
:1002A000000006190020E28B00C100844700518B3A
:1002B000C020003900006380C1A0041900E100449F
:1002C000BD00518BC02000390000B180C1A00419CD
:1002D00003000449045000440020610A0001004565
:1002E0000230610A0C8300C40C780844045A0844A4
:1002F000B200094F1042098E05B0E01804230084B3
:100300000C01001108056110004908440048084428
:10031000B200094F8000718BC00000820C013310C5
:100320002801A31000017A808C0100800230610A4C
:10033000200004190C8300C405B0C818084300C489
:100340000130C80A0C3800C4088800440C780844FE
:10035000045A08440000A318800004190B0461A883
:10036000C3200039C33004190F10610ACA300419C0
:10037000090441A8E1200039D100094F00046102BD
:10038000086300440330410A20000039A300094FEC
:100390000004610200480844088800440230610AF1
:1003A000000800C40C780844045A0844B200090F3D
:1003B0001040098E0000685B2004B1800200615B80
:1003C00088037A80AC01008005B0E01800D3008477
:1003D0000049084400480844B200090F8000718BAE
:1003E000C00000820230610A000800C405B0C818CD
:1003F0000C1800C40130C80A0C3800C40888004436
:100400000C780844000061182005B180000068CB1A
:10041000800004190D10610AC33004190B0441A8AF
:10042000090441A8E1200039083800440330410A9A
:100430002004B18000480844088800440000B180CE
:10044000C23004190CB800D40F30610A0D30C80A4C
:100450000CB800C49300014FE700016F0F30610A30
:1004600020000088020061024104041902046102B4
:1004700043040439CF3000092000094900590044E1
:100480009300014FE700016F0D30610A2000618881
:10049000C2000082C2030082CD3000092000094959
:1004A0000F30610A0D30C80A0C5800840230610A0E
:1004B00005B0A818C2300419000000469040098F0A
:1004C0001204096E0300090E0001718220010080F0
:1004D000000061CB8004B1800001E0600CD80414FE
:1004E0000001EB804000521B80007980C00171C286
:1004F0002000C080080A0454C004A8828000721B37
:10050000800000800001F0802000C0800C2A04548C
:10051000C004A8821000721B800000800001F080DF
:100520002000C080083A0454C004A8822000721B36
:1005300080000080C003F0822000A0800001001134
:100540004000C28B00AA00C40000E98005B0A818D2
:100550000001A822D0010082F000E21B0620A80AB8
:100560002D10610AD100092E0001A8020E10C80A40
:100570000CBA04140E10610A044A00440C10C80A94
:10058000044A04540C10610AD00100820010A8181B
:10059000A0000088000171820300090E9A0100602A
:1005A0003200092E00000046000171822001008007
:1005B000000061CB8024B1C00031E0600CCA04149B
:1005C0000001EB804000521B80007980C00171C2A5
:1005D0002000C08008DA0454C004A8828000721B86
:1005E000800000800001F0802000C0800CFA0454DC
:1005F000C004A8821000721B800000800001F080FF
:100600002000C08008290454C004A8822000721B66
:1006100080000080C003F0822000A0800001001153
:100620004000C28B003900C40000E98005B0A81862
:100630000001A822D0010082B000E21B0620A80A17
:100640002F10610AF100092E0001A8020E10C80A3D
:100650000CA904140E10610A049900440C10C80A75
:10066000049904540C10610AD00100820010A818EB
:10067000A0000088000171829F0100600000004618
:10068000000033800000838020007A8020073380C0
:100690000000838020047A80200100800000004652
:1006A0000200610A041B04140100610A0300480AE5
:1006B0000C790454C300041904C900440800C80A92
:1006C00004C90454C80004190A00610A0900480A50
:1006D0000CE90454C900041904D900440B00C80AE9
:1006E00004D90454CB0004190400610A0600480A26
:1006F0000CF90454C6000419040B00440500C80A90
:10070000040B0454C50004190700610A0C00480AD0
:100710000C2B0454CC000419041B00440E00C80A1E
:10072000041B0454CE000419000040459220718B34
:04073000A6C5110049
:00000001FF
/*
* Copyright (c) 1994 Creative Technology Ltd.
* Microcode files for SB16 Advanced Signal Processor
*/
:10000000001000440000404500004045000040450D
:1000100000004045AAAA718B440404190000404521
:10002000FF6E2149FF0FD449404939AC5555718BBA
:100030005005B1806200190E2100718B880000808C
:10004000B000718B880000804000718B88000080B8
:100050006000718B880000805000718B88000080E8
:100060007000718B88000080C000718B8800008058
:10007000E000718B88000080D000718B88000080C8
:100080000200718B880000802200718B8800008044
:100090003200718B88000080A200718B8800008084
:1000A000B200718B880000806200718B8800008034
:1000B000C200718B88000080F200718B8800008084
:1000C0001100718B88000080A100718B8800008076
:1000D0006100718B88000080E100718B88000080D6
:1000E0001300718B88000080B300718B8800008042
:1000F000C300718B880000801800718B880000801D
:100100006800718B880000800A00718B8800008075
:100110004A00718B880000802900718B8800008064
:100120007900718B880000809B00718B88000080B3
:100130001400718B88000080F400718B88000080AF
:10014000E600718B88000080E500718B88000080DC
:10015000D700718B880000802E00718B8800008092
:100160009D00718B88000080EF00718B88000080FB
:10017000B220718B880000803320718B8800008052
:100180002A20718B880000803B20718B88000080C2
:100190004620718B880000802C20718B88000080A5
:1001A000DD20718B880000800110718B8800008039
:1001B0009A10718B880000801610718B8800008067
:1001C0008E10718B88000080C230718B8800008097
:1001D000C930718B880000803C30718B88000080B2
:1001E0008180718B88000080D480718B88000080B2
:1001F00010A0718B8800008034A0718B8800008073
:100200000290718B880000807590718B880000804F
:100210009AB0718B880000801240718B880000803A
:100220000D40718B880000803C60718B88000080DD
:10023000E750718B880000800E70718B8800008001
:10024000FFC0718B88000080C8D0718B880000804F
:1002500057F0718B88000080C822718B8800008065
:10026000B032718B88000080DD82718B8800008045
:1002700090B2718B880000808A62718B8800008048
:10028000CE72718B88000080A5D2718B88000080AF
:100290009721718B88000080A2A1718B880000805B
:1002A0005C41718B88000080FEC1718B88000080EA
:1002B0007A23718B880000807893718B880000808E
:1002C0006773718B880000801728718B880000800D
:1002D0008848718B88000080DBF8718B8800008073
:1002E0002BBA718B88000080F109718B8800008027
:1002F000DC69718B88000080198B718B880000800D
:10030000FFFB718B880000802000718B88000080CB
:100310005200718BC2000082FFFF718BC20000820D
:10032000C2000082C2000082C20000821000718BF5
:10033000C20000828000718BC20000829000718B2D
:10034000C20000824000718BC2000082FFFF718BEF
:10035000C2000082C2000082C2000082C20000828D
:100360001000718BC20000828000718BC20000827D
:100370009000718BC20000824000718BC20000822D
:10038000FFFB718BC20000820004718BC2000082EF
:100390004A00718BC20000820000718BC200008293
:1003A0000000718BC2000082C2000082C2300419BA
:1003B0001000094FC2010082C2010082C201008206
:1003C000C2010082C2010082C2010082C201008219
:1003D000C2010082C2010082C2010082C201008209
:1003E000C2010082C20100820010718BC130041969
:1003F0009300014FCD300009CF300009000034498F
:0804000000080044C85411007B
:00000001FF
/*
* Copyright (c) 1994 Creative Technology Ltd.
* Microcode files for SB16 Advanced Signal Processor
*/
:1000000000100044080000440C50004400700044FC
:10001000047000440DF261A8440404190000404536
:100020000004638000000639FF2E2149FF0DD449EA
:10003000404939AC5555718B5001B1800001B180F8
:10004000C92004195100718BCD000419E420718B73
:10005000CF0004198000718BCB2004191000718B24
:10006000C42004196500518BC22000390000B18002
:10007000C230041900006380C1A004199300014F2D
:10008000CD300009CF300009044000140C400014AA
:10009000000461A8020461A804600424000034493B
:1000A000005000444404043900004045000040452D
:1000B0000F00610A00010045404009EFFF2009CF11
:1000C000000463A1500333800004A38000FFC28BAF
:1000D00008F004540CD000C4200380C03000008815
:1000E00000007A0AD001008208500044C000009944
:1000F0000850004400FFC28B20000080000D428B9E
:1001000000A200C4000E428B0C9200C4001E428B61
:10011000046200C4008E428B0C5200C4009E428BCD
:1001200000C200C400BE428B00C200C40004428B67
:1001300000F200C40024428B009100C40055428BA1
:10014000085000C4003F428B08E200C40000404554
:10015000200179800030428B009200C400004045AD
:100160000000718B4001008008500044FF00E2ABAA
:100170000C4200C40FF2A8A82000B1880000410280
:100180004DF20039C0010082085000440DF2A3A8CE
:100190004DF2003908500044FF00E2AB2000008817
:1001A000000061024DF2041908500044FF00E2AB68
:1001B000A0000088000061104DF2041908500044AE
:1001C000FF20E2AB60000088000071C04DF204190E
:1001D0000850004400007A0A2001F08001A0410A82
:1001E00004D200C42001F080C1300419085000443A
:1001F0000000798000A10084B500518BCF00003948
:100200000001B180880004198A000419C82004196B
:10021000CA200419C2300419CD100419CF100419D2
:10022000B000718B8C0004198E0004191000718BC2
:10023000C42004199300014FCD300009CF300009CC
:100240000303044904810054085004640850004426
:1002500000006380000006190300044908500044B0
:1002600020016380000006190002E28B084100842F
:100270006500518BC220003900006380C1A00419C1
:10028000086100442D00518BC22000390000B1806C
:10029000C1A0041903000449085000440220610A67
:1002A000000100450230610A040300C405B0C8180B
:1002B000047100C4001300440079084400047980EC
:1002C000004900C4CA2004194A040419FF00E28B43
:1002D0000CF90844CF1004190C2B08448E000419A3
:1002E0000330610AC8200039480400390A30610A25
:1002F0000CF90844CD1004190C2B08448C00041987
:100300000CD908440C5A0044007908440004798050
:10031000004900C4C3300419CA3000990CD90844FC
:10032000420A090E000133118C01A38000017A10EA
:100330008005B18005B0E01800930084007908447E
:1003400000047980004900C40C1B0844880004198B
:100350008A0000990CD90844420A090E8000718B6A
:10036000C004B1821000E00B004300840230610A37
:100370000130C80A004300840000B180C230041973
:100380000CA800440230610A00D300C405B0C818AC
:10039000046300C408F30044007908440004798031
:1003A000004900C420000419FF00E28B0CF9084446
:1003B000CD100419CF1004190C2B08448C0004191B
:1003C0008E0004190330610AC8200039CA200039A0
:1003D000480400394A0400390CD908440C5A004436
:1003E0000079084400047980004900C4C33004192E
:1003F0000CD90844420A090E05B0E0180018008420
:100400000079084400047980004900C40C1B0844AA
:10041000800100800CD90844420A090E8000718BCB
:10042000C004B1821000E00B008800840230610A31
:100430000130C80A008800840000B180C23004196D
:1004400000010011000FE28B000041CB8C00008006
:10045000000048CB20007A8080010080820C096E69
:100460000308090E804009CF000171C20008C21BB9
:1004700004B800C42005A8802001F0800001C21B40
:10048000044800C42005A8802001F0800002C21B9F
:10049000046800C42005A8802001F0802003A88003
:1004A000000100110004C28B087800C40000E9803C
:1004B00005B0A81800004ACB2000A822D001008275
:1004C00040010080C4000419B000E28B0620A80A95
:1004D0002D10610AD108092E0001A8020CF9084468
:1004E000CD1004190C2B08440308090E9A25B1609D
:1004F000A20E096E0300090F000171822001008025
:10050000000061CB800100800300090F000171C26F
:100510000008C21B0C2A00C42005A8802001F0801E
:100520000001C21B0C1A00C42005A8802001F08025
:100530000002C21B0C3A00C42005A8802001F080F4
:100540002003A880000100110004C28B04AA00C48B
:100550000000E98005B0A81800004ACB2000A822BE
:10056000D001008240010080C7000419B000E28B76
:100570000620A80A2F10610AF108092E0001A8021E
:100580000CF90844CF1004190C2B08449F35B160B6
:100590000308090E0001718220010080000061CB78
:1005A00080010080E420718B000100459040098F9C
:1005B0000005638000000639081904D49300014F38
:1005C000E700016F0D30610A200461A8C2000082BB
:1005D000020461A8C2000082CD30000902000002BE
:1005E00002000002C0800009200009490F30610AA2
:1005F0000D30C80A002900C40080C80A002900C4C0
:100600000004B18000000639C920043900390044D3
:1006100000046380000006390004B180C920043959
:10062000003900440920230A00000619C9200419D2
:10063000000040450200610A0CB904140400610A7C
:100640000600480A00A90454C60004190CA9004475
:100650000500C80A0CA90454C50004190700610A62
:100660000C00480A00B90454CC0004190CB9004429
:100670000E00C80A0CB90454CE0004190C5A0044E8
:10068000820D092E804009CF00DF718B8001008030
:1006900002C1002203C1002200016580D2056582EB
:1006A00040210080D3030082403300800C5A004474
:1006B0000F30610A0D30C80A08D900C49300014FF9
:1006C000E700016F0F30610A20000088020061021C
:1006D00002000003CF3000092000094900046380B4
:1006E00004D900440004B180000000460230610AD1
:1006F00005B0A818C2300419000000460E10C80A40
:100700000C0B04140E10610A042B00440C10C80AD0
:10071000042B04540C10610A000000460010A818B5
:10072000A0000088000171820000004600043380B0
:100730000000838020047A802001338000008380C1
:1007400020007A80200300800000004616CE1100B1
:00000001FF
/*
* Copyright (c) 1994 Creative Technology Ltd.
* Microcode files for SB16 Advanced Signal Processor
*/
:10000000001000440800004400B1004400610044B6
:10001000085000440DF261A8440404190000404552
:10002000404939AC5555718B500563800000063945
:10003000FF2E2149FF0FD4492001090E2000718BAA
:10004000A801A8808801A880A8000080D200718B38
:100050008800A880A804B3802007B3808803B180FB
:10006000C000095CC2010082A100718BCD0004199F
:10007000A220718BCF0004190000B180C2000419C6
:100080000040001408400424000034490C4000449F
:1000900044040439000040453200095C00000C397A
:1000A00000004045404009EFFF2009CF000463A154
:1000B000500333800004A38000FFC28B00D004549F
:1000C00004E000C4200380C03000008800007A0AE9
:1000D000D001008200600044C0000099006000442C
:1000E00000FFC28B20000080000D428B083200C44C
:1000F000000E428B00A200C4001E428B0CB200C452
:10010000008E428B006200C4009E428B085200C4E5
:1001100000BE428B085200C40004428B047200C42B
:100120000024428B00D200C40055428B006000C402
:1001300000004045200179800030428B088200C4D5
:10014000000040450000718B4001008000600044C9
:10015000FF00E2AB00B200C40FF2A8A82000B188F3
:10016000000041024DF20039C001008200600044ED
:100170000DF2A3A84DF2003900600044FF00E2AB8D
:1001800020000088000061024DF204190060004464
:10019000FF00E2ABA0000088000061104DF20419DE
:1001A00000600044FF20E2AB60000088000071C0E6
:1001B0004DF20419006000440000798000E20084E0
:1001C0000303044908C20054006004640060004452
:1001D0000000638000000619030004490060004429
:1001E00020016380000006190020E28B0CF20084DD
:1001F0003E00518BC0200039080100446C00518B37
:10020000C02000390002E28B04210084FD00518BE4
:10021000C220003900110044FE00518BC220003979
:10022000E500718BCD0000390000B180C9200419B0
:10023000CB200419C1200419C32004191000718BAC
:10024000C72004195E00718BCF0000390000B18017
:10025000C4200419C6200419C8200419CA2004198E
:100260002000718BCC200419030004490060004475
:10027000090461A8C10004190B0461A8CA0004198B
:10028000046000D40D00610A9040098F0001004510
:100290000F00610A0040098F000100458200092E0D
:1002A000804009CF02006122432561224033008053
:1002B00008A800442031495C9200094E0203092E2F
:1002C0000000A302C00071C02000EB800004C28BBC
:1002D0002004618000047A02CB00A858B005F380A6
:1002E0002004A81000001039B000E08B200100802D
:1002F000000063CB00007A024000015B2000008018
:1003000000004ACB2000138020007A80E02100C04A
:10031000080008491041098EFFFF628B000461222A
:1003200000030045220133802001A30200007A80EF
:10033000C00000820720400A08830084402100801A
:1003400040059310C7200039000040450720400AAF
:100350000CA30084080000820C246150400100803E
:10036000C7200039000040450004638000000639C2
:100370004201090E0220610A000100450C20600ABA
:10038000007300840004B180000006390C6104D4BD
:10039000002471C0203333C0E001A38222037A021B
:1003A000C301A3822001338000007A80C201B350D0
:1003B000CC2000390000718000F300440C20600A5A
:1003C00000D300840004B180000006390C6104D41D
:1003D0000000B310CC200039000071C000F30044CD
:1003E000CC200039002071C0003071C000F30044FF
:1003F00020010080FFFF628B20013380000083809A
:1004000020007A8020E1095C8200092F804A098E51
:10041000E001B3822004A38000007ACB0300A81877
:10042000000010390804EA1008047A102000008047
:10043000400021CB0C00E810000041020C00EB1042
:10044000F2010082402133020820610AC40004192D
:10045000C70000990200610A0CE804140100610A57
:100460000300480A00B80454C30004190CB800443F
:100470000800C80A0CB80454C80004190A00610A2C
:100480000900480A00680454C90004190C680044B3
:100490000B00C80A0C680454CB0004190400610A5C
:1004A0000600480A00780454C60004190C78004479
:1004B0000500C80A0C780454C50004190700610A35
:1004C0000C00480A00E80454CC0004190CE800446D
:1004D0000E00C80A0CE80454CE0004190000404580
:0804E0002010718B093F070099
:00000001FF
/*
* Copyright (c) 1994 Creative Technology Ltd.
* Microcode files for SB16 Advanced Signal Processor
*/
...@@ -391,15 +391,6 @@ config SND_SB16_CSP ...@@ -391,15 +391,6 @@ config SND_SB16_CSP
coprocessor can do variable tasks like various compression and coprocessor can do variable tasks like various compression and
decompression algorithms. decompression algorithms.
config SND_SB16_CSP_FIRMWARE_IN_KERNEL
bool "In-kernel firmware for SB16 CSP"
depends on SND_SB16_CSP
default y
help
Say Y here to include the static firmware built in the kernel
for the SB16 CSP controller. If you choose N here, you need
to install the firmware files from the alsa-firmware package.
config SND_SGALAXY config SND_SGALAXY
tristate "Aztech Sound Galaxy" tristate "Aztech Sound Galaxy"
depends on SND depends on SND
......
...@@ -35,13 +35,11 @@ ...@@ -35,13 +35,11 @@
MODULE_AUTHOR("Uros Bizjak <uros@kss-loka.si>"); MODULE_AUTHOR("Uros Bizjak <uros@kss-loka.si>");
MODULE_DESCRIPTION("ALSA driver for SB16 Creative Signal Processor"); MODULE_DESCRIPTION("ALSA driver for SB16 Creative Signal Processor");
MODULE_LICENSE("GPL"); MODULE_LICENSE("GPL");
#ifndef CONFIG_SND_SB16_CSP_FIRMWARE_IN_KERNEL
MODULE_FIRMWARE("sb16/mulaw_main.csp"); MODULE_FIRMWARE("sb16/mulaw_main.csp");
MODULE_FIRMWARE("sb16/alaw_main.csp"); MODULE_FIRMWARE("sb16/alaw_main.csp");
MODULE_FIRMWARE("sb16/ima_adpcm_init.csp"); MODULE_FIRMWARE("sb16/ima_adpcm_init.csp");
MODULE_FIRMWARE("sb16/ima_adpcm_playback.csp"); MODULE_FIRMWARE("sb16/ima_adpcm_playback.csp");
MODULE_FIRMWARE("sb16/ima_adpcm_capture.csp"); MODULE_FIRMWARE("sb16/ima_adpcm_capture.csp");
#endif
#ifdef SNDRV_LITTLE_ENDIAN #ifdef SNDRV_LITTLE_ENDIAN
#define CSP_HDR_VALUE(a,b,c,d) ((a) | ((b)<<8) | ((c)<<16) | ((d)<<24)) #define CSP_HDR_VALUE(a,b,c,d) ((a) | ((b)<<8) | ((c)<<16) | ((d)<<24))
...@@ -168,17 +166,13 @@ int snd_sb_csp_new(struct snd_sb *chip, int device, struct snd_hwdep ** rhwdep) ...@@ -168,17 +166,13 @@ int snd_sb_csp_new(struct snd_sb *chip, int device, struct snd_hwdep ** rhwdep)
*/ */
static void snd_sb_csp_free(struct snd_hwdep *hwdep) static void snd_sb_csp_free(struct snd_hwdep *hwdep)
{ {
#ifndef CONFIG_SND_SB16_CSP_FIRMWARE_IN_KERNEL
int i; int i;
#endif
struct snd_sb_csp *p = hwdep->private_data; struct snd_sb_csp *p = hwdep->private_data;
if (p) { if (p) {
if (p->running & SNDRV_SB_CSP_ST_RUNNING) if (p->running & SNDRV_SB_CSP_ST_RUNNING)
snd_sb_csp_stop(p); snd_sb_csp_stop(p);
#ifndef CONFIG_SND_SB16_CSP_FIRMWARE_IN_KERNEL
for (i = 0; i < ARRAY_SIZE(p->csp_programs); ++i) for (i = 0; i < ARRAY_SIZE(p->csp_programs); ++i)
release_firmware(p->csp_programs[i]); release_firmware(p->csp_programs[i]);
#endif
kfree(p); kfree(p);
} }
} }
...@@ -701,18 +695,6 @@ static int snd_sb_csp_load_user(struct snd_sb_csp * p, const unsigned char __use ...@@ -701,18 +695,6 @@ static int snd_sb_csp_load_user(struct snd_sb_csp * p, const unsigned char __use
return err; return err;
} }
#ifdef CONFIG_SND_SB16_CSP_FIRMWARE_IN_KERNEL
#include "sb16_csp_codecs.h"
static const struct firmware snd_sb_csp_static_programs[] = {
{ .data = mulaw_main, .size = sizeof mulaw_main },
{ .data = alaw_main, .size = sizeof alaw_main },
{ .data = ima_adpcm_init, .size = sizeof ima_adpcm_init },
{ .data = ima_adpcm_playback, .size = sizeof ima_adpcm_playback },
{ .data = ima_adpcm_capture, .size = sizeof ima_adpcm_capture },
};
#endif
static int snd_sb_csp_firmware_load(struct snd_sb_csp *p, int index, int flags) static int snd_sb_csp_firmware_load(struct snd_sb_csp *p, int index, int flags)
{ {
static const char *const names[] = { static const char *const names[] = {
...@@ -727,14 +709,10 @@ static int snd_sb_csp_firmware_load(struct snd_sb_csp *p, int index, int flags) ...@@ -727,14 +709,10 @@ static int snd_sb_csp_firmware_load(struct snd_sb_csp *p, int index, int flags)
BUILD_BUG_ON(ARRAY_SIZE(names) != CSP_PROGRAM_COUNT); BUILD_BUG_ON(ARRAY_SIZE(names) != CSP_PROGRAM_COUNT);
program = p->csp_programs[index]; program = p->csp_programs[index];
if (!program) { if (!program) {
#ifdef CONFIG_SND_SB16_CSP_FIRMWARE_IN_KERNEL
program = &snd_sb_csp_static_programs[index];
#else
int err = request_firmware(&program, names[index], int err = request_firmware(&program, names[index],
p->chip->card->dev); p->chip->card->dev);
if (err < 0) if (err < 0)
return err; return err;
#endif
p->csp_programs[index] = program; p->csp_programs[index] = program;
} }
return snd_sb_csp_load(p, program->data, program->size, flags); return snd_sb_csp_load(p, program->data, program->size, flags);
......
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment