From: Ben Hutchings Date: Sat, 29 Aug 2009 13:53:51 +0000 (+0100) Subject: radeon: Use request_firmware() X-Git-Url: https://spindle.queued.net/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9715b36e042c3327afc3a112db37c5b6f8ff3696;p=linux-firmware radeon: Use request_firmware() Loosely based on a patch by Jaswinder Singh Rajput . KMS support by Dave Airlie . For Radeon 100- to 500-series, firmware blobs look like: struct { __be32 datah; __be32 datal; } cp_ucode[256]; For Radeon 600-series, there are two separate firmware blobs: __be32 me_ucode[PM4_UCODE_SIZE * 3]; __be32 pfp_ucode[PFP_UCODE_SIZE]; For Radeon 700-series, likewise: __be32 me_ucode[R700_PM4_UCODE_SIZE]; __be32 pfp_ucode[R700_PFP_UCODE_SIZE]; Signed-off-by: Ben Hutchings Signed-off-by: Dave Airlie --- diff --git a/WHENCE b/WHENCE index 578d859..00378ee 100644 --- a/WHENCE +++ b/WHENCE @@ -761,3 +761,61 @@ Copyright 2000 Advanced Micro Devices, Inc. Found in decimal form in kernel source. -------------------------------------------------------------------------- + +Driver: radeon - ATI Radeon + +File: radeon/R100_cp.bin +File: radeon/R200_cp.bin +File: radeon/R300_cp.bin +File: radeon/R420_cp.bin +File: radeon/RS600_cp.bin +File: radeon/RS690_cp.bin +File: radeon/R520_cp.bin +File: radeon/R600_pfp.bin +File: radeon/R600_me.bin +File: radeon/RV610_pfp.bin +File: radeon/RV610_me.bin +File: radeon/RV630_pfp.bin +File: radeon/RV630_me.bin +File: radeon/RV620_pfp.bin +File: radeon/RV620_me.bin +File: radeon/RV635_pfp.bin +File: radeon/RV635_me.bin +File: radeon/RV670_pfp.bin +File: radeon/RV670_me.bin +File: radeon/RS780_pfp.bin +File: radeon/RS780_me.bin +File: radeon/RV770_pfp.bin +File: radeon/RV770_me.bin +File: radeon/RV730_pfp.bin +File: radeon/RV730_me.bin +File: radeon/RV710_pfp.bin +File: radeon/RV710_me.bin + +Licence: + + * Copyright 2007-2009 Advanced Micro Devices, Inc. + * All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice (including the next + * paragraph) shall be included in all copies or substantial portions of the + * Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE + * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION + * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION + * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Found in hex form in kernel source. + +-------------------------------------------------------------------------- diff --git a/radeon/R100_cp.bin b/radeon/R100_cp.bin new file mode 100644 index 0000000..f1e8a11 Binary files /dev/null and b/radeon/R100_cp.bin differ diff --git a/radeon/R200_cp.bin b/radeon/R200_cp.bin new file mode 100644 index 0000000..8ac88c6 Binary files /dev/null and b/radeon/R200_cp.bin differ diff --git a/radeon/R300_cp.bin b/radeon/R300_cp.bin new file mode 100644 index 0000000..b1b1100 Binary files /dev/null and b/radeon/R300_cp.bin differ diff --git a/radeon/R420_cp.bin b/radeon/R420_cp.bin new file mode 100644 index 0000000..bfeff60 Binary files /dev/null and b/radeon/R420_cp.bin differ diff --git a/radeon/R520_cp.bin b/radeon/R520_cp.bin new file mode 100644 index 0000000..1c93ca9 Binary files /dev/null and b/radeon/R520_cp.bin differ diff --git a/radeon/R600_me.bin b/radeon/R600_me.bin new file mode 100644 index 0000000..3939685 Binary files /dev/null and b/radeon/R600_me.bin differ diff --git a/radeon/R600_pfp.bin b/radeon/R600_pfp.bin new file mode 100644 index 0000000..b1b2e95 Binary files /dev/null and b/radeon/R600_pfp.bin differ diff --git a/radeon/RS600_cp.bin b/radeon/RS600_cp.bin new file mode 100644 index 0000000..171ecac Binary files /dev/null and b/radeon/RS600_cp.bin differ diff --git a/radeon/RS690_cp.bin b/radeon/RS690_cp.bin new file mode 100644 index 0000000..38f11b4 Binary files /dev/null and b/radeon/RS690_cp.bin differ diff --git a/radeon/RS780_me.bin b/radeon/RS780_me.bin new file mode 100644 index 0000000..67292bf Binary files /dev/null and b/radeon/RS780_me.bin differ diff --git a/radeon/RS780_pfp.bin b/radeon/RS780_pfp.bin new file mode 100644 index 0000000..7d89878 Binary files /dev/null and b/radeon/RS780_pfp.bin differ diff --git a/radeon/RV610_me.bin b/radeon/RV610_me.bin new file mode 100644 index 0000000..66d265c Binary files /dev/null and b/radeon/RV610_me.bin differ diff --git a/radeon/RV610_pfp.bin b/radeon/RV610_pfp.bin new file mode 100644 index 0000000..18c3546 Binary files /dev/null and b/radeon/RV610_pfp.bin differ diff --git a/radeon/RV620_me.bin b/radeon/RV620_me.bin new file mode 100644 index 0000000..66d265c Binary files /dev/null and b/radeon/RV620_me.bin differ diff --git a/radeon/RV620_pfp.bin b/radeon/RV620_pfp.bin new file mode 100644 index 0000000..18c3546 Binary files /dev/null and b/radeon/RV620_pfp.bin differ diff --git a/radeon/RV630_me.bin b/radeon/RV630_me.bin new file mode 100644 index 0000000..9ded757 Binary files /dev/null and b/radeon/RV630_me.bin differ diff --git a/radeon/RV630_pfp.bin b/radeon/RV630_pfp.bin new file mode 100644 index 0000000..18c3546 Binary files /dev/null and b/radeon/RV630_pfp.bin differ diff --git a/radeon/RV635_me.bin b/radeon/RV635_me.bin new file mode 100644 index 0000000..9ded757 Binary files /dev/null and b/radeon/RV635_me.bin differ diff --git a/radeon/RV635_pfp.bin b/radeon/RV635_pfp.bin new file mode 100644 index 0000000..18c3546 Binary files /dev/null and b/radeon/RV635_pfp.bin differ diff --git a/radeon/RV670_me.bin b/radeon/RV670_me.bin new file mode 100644 index 0000000..109b675 Binary files /dev/null and b/radeon/RV670_me.bin differ diff --git a/radeon/RV670_pfp.bin b/radeon/RV670_pfp.bin new file mode 100644 index 0000000..18c3546 Binary files /dev/null and b/radeon/RV670_pfp.bin differ diff --git a/radeon/RV710_me.bin b/radeon/RV710_me.bin new file mode 100644 index 0000000..da259e0 Binary files /dev/null and b/radeon/RV710_me.bin differ diff --git a/radeon/RV710_pfp.bin b/radeon/RV710_pfp.bin new file mode 100644 index 0000000..925b36d Binary files /dev/null and b/radeon/RV710_pfp.bin differ diff --git a/radeon/RV730_me.bin b/radeon/RV730_me.bin new file mode 100644 index 0000000..09b8eae Binary files /dev/null and b/radeon/RV730_me.bin differ diff --git a/radeon/RV730_pfp.bin b/radeon/RV730_pfp.bin new file mode 100644 index 0000000..925b36d Binary files /dev/null and b/radeon/RV730_pfp.bin differ diff --git a/radeon/RV770_me.bin b/radeon/RV770_me.bin new file mode 100644 index 0000000..ae8c8d9 Binary files /dev/null and b/radeon/RV770_me.bin differ diff --git a/radeon/RV770_pfp.bin b/radeon/RV770_pfp.bin new file mode 100644 index 0000000..e835372 Binary files /dev/null and b/radeon/RV770_pfp.bin differ