[haiku-commits] haiku: hrev45803 - src/add-ons/kernel/drivers/graphics/radeon_hd headers/private/graphics/radeon_hd src/bin/network/route

  • From: kallisti5@xxxxxxxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Sat, 29 Jun 2013 20:20:07 +0200 (CEST)

hrev45803 adds 2 changesets to branch 'master'
old head: 16e486eb4dd2d39b9a3eb65171106fd17d7e3fc0
new head: 4ce958fcd4d3476aea984a9318f33357475955f6
overview: http://cgit.haiku-os.org/haiku/log/?qt=range&q=4ce958f+%5E16e486e

----------------------------------------------------------------------------

669d40c: Route: Style fixes; No functional change

4ce958f: RadeonHD: Cleanup, new cards
  
  * Fix some incorrect chip codenames
  * Introduce a dual gpu flag
  * Add some new chipsets and document
    the next generation of chips

                          [ Alexander von Gluck IV <kallisti5@xxxxxxxxxxx> ]

----------------------------------------------------------------------------

4 files changed, 50 insertions(+), 23 deletions(-)
headers/private/graphics/radeon_hd/radeon_hd.h   | 19 ++++----
.../kernel/drivers/graphics/radeon_hd/driver.cpp | 46 +++++++++++++++-----
.../drivers/graphics/radeon_hd/sensors.cpp       |  2 +-
src/bin/network/route/route.cpp                  |  6 +--

############################################################################

Commit:      669d40c826d04319c98cf60ccd7f30537af7de22
URL:         http://cgit.haiku-os.org/haiku/commit/?id=669d40c
Author:      Alexander von Gluck IV <kallisti5@xxxxxxxxxxx>
Date:        Sat Jun 29 15:48:43 2013 UTC

Route: Style fixes; No functional change

----------------------------------------------------------------------------

diff --git a/src/bin/network/route/route.cpp b/src/bin/network/route/route.cpp
index 696e288..ca2c310 100644
--- a/src/bin/network/route/route.cpp
+++ b/src/bin/network/route/route.cpp
@@ -191,7 +191,7 @@ list_routes(int socket, const char *interfaceName, 
route_entry &route)
        const address_family *family = NULL;
        for (int32 i = 0; kFamilies[i].family >= 0; i++) {
                if (interface->ifr_route.destination->sa_family
-                       == kFamilies[i].family) {
+                               == kFamilies[i].family) {
                        family = &kFamilies[i];
                        break;
                }
@@ -223,7 +223,7 @@ list_routes(int socket, const char *interfaceName, 
route_entry &route)
                                        BNetworkAddress mask;
                                        mask.SetTo(*route.mask);
                                        if (family->preferredPrefixFormat
-                                               == PREFIX_PREFER_NETMASK) {
+                                                       == 
PREFIX_PREFER_NETMASK) {
                                                printf(" %*s ", addressLength,
                                                        
mask.ToString().String());
                                        } else {
@@ -231,7 +231,7 @@ list_routes(int socket, const char *interfaceName, 
route_entry &route)
                                        }
                                } else {
                                        if (family->preferredPrefixFormat
-                                               == PREFIX_PREFER_NETMASK) {
+                                                       == 
PREFIX_PREFER_NETMASK) {
                                                printf(" %*s ", addressLength, 
"-");
                                        } else
                                                printf("     ");

############################################################################

Revision:    hrev45803
Commit:      4ce958fcd4d3476aea984a9318f33357475955f6
URL:         http://cgit.haiku-os.org/haiku/commit/?id=4ce958f
Author:      Alexander von Gluck IV <kallisti5@xxxxxxxxxxx>
Date:        Sat Jun 29 18:18:18 2013 UTC

RadeonHD: Cleanup, new cards

* Fix some incorrect chip codenames
* Introduce a dual gpu flag
* Add some new chipsets and document
  the next generation of chips

----------------------------------------------------------------------------

diff --git a/headers/private/graphics/radeon_hd/radeon_hd.h 
b/headers/private/graphics/radeon_hd/radeon_hd.h
index 6ae08f9..7025ddf 100644
--- a/headers/private/graphics/radeon_hd/radeon_hd.h
+++ b/headers/private/graphics/radeon_hd/radeon_hd.h
@@ -32,10 +32,11 @@
 
 // Card chipset flags
 #define CHIP_STD               (1 << 0) // Standard chipset
-#define CHIP_IGP               (1 << 1) // IGP chipset
-#define CHIP_MOBILE            (1 << 2) // Mobile chipset
-#define CHIP_DISCREET  (1 << 3) // Discreet chipset
-#define CHIP_APU               (1 << 4) // APU chipset
+#define CHIP_X2                        (1 << 1) // Dual cpu
+#define CHIP_IGP               (1 << 2) // IGP chipset
+#define CHIP_MOBILE            (1 << 3) // Mobile chipset
+#define CHIP_DISCREET  (1 << 4) // Discreet chipset
+#define CHIP_APU               (1 << 5) // APU chipset
 
 #define DEVICE_NAME                            "radeon_hd"
 #define RADEON_ACCELERANT_NAME "radeon_hd.accelerant"
@@ -86,16 +87,18 @@ enum radeon_chipset {
        RADEON_PALM,            //Fusion APU (NI), Radeon HD 6000
        RADEON_SUMO,
        RADEON_SUMO2,
-       RADEON_CAICOS,          //Nothern Islands, Radeon HD 6000
+       RADEON_CAICOS,          //Nothern Islands, Radeon HD 6000 / Low end 7000
        RADEON_TURKS,
        RADEON_BARTS,
        RADEON_CAYMAN,
        RADEON_ANTILLES,
-       RADEON_LOMBOK,          //Southern Islands, Radeon HD 7000
-       RADEON_CAPEVERDE,
+       RADEON_CAPEVERDE,       //Southern Islands, Radeon HD 7000 aka ARUBA
+       RADEON_BONAIRE,
        RADEON_PITCAIRN,
        RADEON_TAHITI,
-       RADEON_NEWZEALAND
+       RADEON_OLAND,           //Sea Islands, Radeon HD 8000
+       RADEON_HAINAN,          // NO DCE?
+       RADEON_CURACAO,
 };
 
 
diff --git a/src/add-ons/kernel/drivers/graphics/radeon_hd/driver.cpp 
b/src/add-ons/kernel/drivers/graphics/radeon_hd/driver.cpp
index beb0352..6816c78 100644
--- a/src/add-ons/kernel/drivers/graphics/radeon_hd/driver.cpp
+++ b/src/add-ons/kernel/drivers/graphics/radeon_hd/driver.cpp
@@ -124,7 +124,7 @@ const struct supported_device {
        {0x9513, 2, 0, RADEON_RV670, CHIP_STD, "Radeon HD 3850 X2"},
        {0x9515, 2, 0, RADEON_RV670, CHIP_STD, "Radeon HD 3850"},
        {0x9501, 2, 0, RADEON_RV670, CHIP_STD, "Radeon HD 3870"},
-       {0x950F, 2, 0, RADEON_RV670, CHIP_STD, "Radeon HD 3870 X2"},
+       {0x950F, 2, 0, RADEON_RV670, CHIP_STD | CHIP_X2, "Radeon HD 3870 X2"},
        {0x9710, 3, 0, RADEON_RV620, CHIP_IGP, "Radeon HD 4200"},
        {0x9715, 3, 0, RADEON_RV620, CHIP_IGP, "Radeon HD 4250"},
        {0x9712, 3, 0, RADEON_RV620, CHIP_IGP, "Radeon HD 4270"},
@@ -153,15 +153,15 @@ const struct supported_device {
        {0x944e, 3, 1, RADEON_RV770, CHIP_STD, "Radeon HD 4810"},
        {0x944c, 3, 1, RADEON_RV770, CHIP_STD, "Radeon HD 4830"},
        {0x9442, 3, 1, RADEON_RV770, CHIP_STD, "Radeon HD 4850"},
-       {0x9443, 3, 1, RADEON_RV770, CHIP_STD, "Radeon HD 4850 X2"},
+       {0x9443, 3, 1, RADEON_RV770, CHIP_STD | CHIP_X2, "Radeon HD 4850 X2"},
        {0x94a1, 3, 1, RADEON_RV770, CHIP_IGP, "Radeon HD 4860"},
        {0x9440, 3, 1, RADEON_RV770, CHIP_STD, "Radeon HD 4870"},
-       {0x9441, 3, 1, RADEON_RV770, CHIP_STD, "Radeon HD 4870 X2"},
+       {0x9441, 3, 1, RADEON_RV770, CHIP_STD | CHIP_X2, "Radeon HD 4870 X2"},
        {0x9460, 3, 1, RADEON_RV770, CHIP_STD, "Radeon HD 4890"},
 
        // From here on AMD no longer used numeric identifiers
 
-       // Marketing Names: Radeon HD 54xx ~ HD 63xx
+       // Marketing Names: Radeon HD 5450 - HD 6320
        // Introduced: 2009
        // Codename: Evergreen
        // Process: 40 nm
@@ -186,7 +186,8 @@ const struct supported_device {
        {0x6899, 4, 0, RADEON_CYPRESS, CHIP_STD, "Radeon HD 5850"},
        {0x6898, 4, 0, RADEON_CYPRESS, CHIP_STD, "Radeon HD 5870"},
        //  Hemlock
-       {0x689c, 4, 0, RADEON_HEMLOCK, CHIP_STD, "Radeon HD 5900"},
+       {0x689c, 4, 0, RADEON_HEMLOCK, CHIP_STD | CHIP_X2, "Radeon HD 5900 X2"},
+       {0x689d, 4, 0, RADEON_HEMLOCK, CHIP_STD | CHIP_X2, "Radeon HD 5900 X2"},
        // Fusion APUS
        //  Palm
        {0x9804, 4, 1, RADEON_PALM, CHIP_APU, "Radeon HD 6250"},
@@ -209,7 +210,7 @@ const struct supported_device {
        {0x9644, 4, 1, RADEON_SUMO2, CHIP_APU, "Radeon HD 6410D"},
        {0x9645, 4, 1, RADEON_SUMO2, CHIP_APU, "Radeon HD SUMO2 M"},
 
-       // Radeon HD 64xx - HD 69xx
+       // Radeon HD 6450 - HD 7670
        // Introduced: 2010
        // Codename: Nothern Islands
        // Process: 40 nm
@@ -244,6 +245,7 @@ const struct supported_device {
        {0x6750, 5, 0, RADEON_TURKS, CHIP_STD, "Radeon HD 6500"},
        {0x6758, 5, 0, RADEON_TURKS, CHIP_STD, "Radeon HD 6670"},
        {0x6759, 5, 0, RADEON_TURKS, CHIP_STD, "Radeon HD 6570/7570"},
+       {0x6850, 6, 0, RADEON_TURKS, CHIP_MOBILE, "Radeon HD 7570"},
        //  Barts
        {0x673e, 5, 0, RADEON_BARTS, CHIP_STD, "Radeon HD 6790"},
        {0x6739, 5, 0, RADEON_BARTS, CHIP_STD, "Radeon HD 6850"},
@@ -266,12 +268,10 @@ const struct supported_device {
        //  Antilles (Top, Dual GPU)
        {0x671d, 5, 0, RADEON_ANTILLES, CHIP_STD, "Radeon HD 6990"},
 
-       // Marketing Names: Radeon HD 74xx - HD 79xx
+       // Marketing Names: Radeon HD 7750 - HD 79xx
        // Introduced: Late 2011
        // Codename: Southern Islands
        // Process: 28 nm
-       //  Lombok?
-       {0x6850, 6, 0, RADEON_LOMBOK, CHIP_MOBILE, "Radeon HD 7570"},
        //  Cape Verde (TODO: Need to find friendly names)
        {0x6820, 6, 0, RADEON_CAPEVERDE, CHIP_STD, "Radeon HD Verde"},
        {0x6821, 6, 0, RADEON_CAPEVERDE, CHIP_STD, "Radeon HD Verde"},
@@ -292,6 +292,13 @@ const struct supported_device {
        {0x683b, 6, 0, RADEON_CAPEVERDE, CHIP_STD, "Radeon HD Verde"},
        {0x683f, 6, 0, RADEON_CAPEVERDE, CHIP_STD, "Radeon HD 7750"},
        {0x683d, 6, 0, RADEON_CAPEVERDE, CHIP_STD, "Radeon HD 7770"},
+       //  Bonaire (TODO: Need to find friendly names)
+       {0x6649, 6, 0, RADEON_BONAIRE, CHIP_STD, "Radeon HD Bonaire"},
+       {0x6650, 6, 0, RADEON_BONAIRE, CHIP_STD, "Radeon HD Bonaire"}, 
+       {0x6651, 6, 0, RADEON_BONAIRE, CHIP_STD, "Radeon HD Bonaire"}, 
+       {0x6658, 6, 0, RADEON_BONAIRE, CHIP_STD, "Radeon HD Bonaire"}, 
+       {0x665c, 6, 0, RADEON_BONAIRE, CHIP_STD, "Radeon HD 7790"},
+       {0x665d, 6, 0, RADEON_BONAIRE, CHIP_STD, "Radeon HD Bonaire"},
        //  Pitcairn (TODO: Need to find friendly names)
        {0x6800, 6, 0, RADEON_PITCAIRN, CHIP_MOBILE, "Radeon HD 7970"},
        {0x6801, 6, 0, RADEON_PITCAIRN, CHIP_STD, "Radeon HD Pitcairn"},
@@ -312,8 +319,25 @@ const struct supported_device {
        {0x679f, 6, 0, RADEON_TAHITI, CHIP_STD, "Radeon HD Tahiti"},
        {0x679a, 6, 0, RADEON_TAHITI, CHIP_STD, "Radeon HD 7950"},
        {0x6798, 6, 0, RADEON_TAHITI, CHIP_STD, "Radeon HD 7970"},
-       //  New Zealand (Top, Dual GPU)
-       {0x6799, 6, 0, RADEON_TAHITI, CHIP_STD, "Radeon HD 7990"}
+       {0x6799, 6, 0, RADEON_TAHITI, CHIP_STD, "Radeon HD 7990"},
+
+       // Marketing Names: Radeon HD 83xx - HD 89xx
+       // Introduced: Late 2013
+       // Codename: Sea Islands
+       // Process: 28 nm
+       //  Oland   DCE 6,4
+       //  Hainan  NO DCE?
+       //  Curacao ????
+
+       // Marketing Names: Radeon HD 9xxx - HD 9xxx 
+       // Introduced: 2014?
+       // Codename: Volcanic Islands
+       // Process: 20 nm
+
+       // Marketing Names: Radeon HD 9xxx - HD 9xxx 
+       // Introduced: 2015?
+       // Codename: Pirate Islands
+       // Process: ?? nm
 };
 
 
diff --git a/src/add-ons/kernel/drivers/graphics/radeon_hd/sensors.cpp 
b/src/add-ons/kernel/drivers/graphics/radeon_hd/sensors.cpp
index 7c6fb11..607b1cc 100644
--- a/src/add-ons/kernel/drivers/graphics/radeon_hd/sensors.cpp
+++ b/src/add-ons/kernel/drivers/graphics/radeon_hd/sensors.cpp
@@ -26,7 +26,7 @@ radeon_thermal_query(radeon_info &info)
        uint32 rawTemp = 0;
        int32 finalTemp = 0;
 
-       if (info.chipsetID >= RADEON_LOMBOK) {
+       if (info.chipsetID >= RADEON_CAPEVERDE) {
                rawTemp = (read32(info.registers + SI_CG_MULT_THERMAL_STATUS)
                        & SI_CTF_TEMP_MASK) >> SI_CTF_TEMP_SHIFT;
 


Other related posts:

  • » [haiku-commits] haiku: hrev45803 - src/add-ons/kernel/drivers/graphics/radeon_hd headers/private/graphics/radeon_hd src/bin/network/route - kallisti5