1c95cf671SFeist, James /* 2c95cf671SFeist, James // Copyright (c) 2019 Intel Corporation 3c95cf671SFeist, James // 4c95cf671SFeist, James // Licensed under the Apache License, Version 2.0 (the "License"); 5c95cf671SFeist, James // you may not use this file except in compliance with the License. 6c95cf671SFeist, James // You may obtain a copy of the License at 7c95cf671SFeist, James // 8c95cf671SFeist, James // http://www.apache.org/licenses/LICENSE-2.0 9c95cf671SFeist, James // 10c95cf671SFeist, James // Unless required by applicable law or agreed to in writing, software 11c95cf671SFeist, James // distributed under the License is distributed on an "AS IS" BASIS, 12c95cf671SFeist, James // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13c95cf671SFeist, James // See the License for the specific language governing permissions and 14c95cf671SFeist, James // limitations under the License. 15c95cf671SFeist, James */ 16c95cf671SFeist, James 17c95cf671SFeist, James #include <cstdint> 18c95cf671SFeist, James #include <string> 19c95cf671SFeist, James #include <variant> 20c95cf671SFeist, James #include <vector> 21c95cf671SFeist, James 22c95cf671SFeist, James using GetSubTreeType = std::vector< 23c95cf671SFeist, James std::pair<std::string, 24c95cf671SFeist, James std::vector<std::pair<std::string, std::vector<std::string>>>>>; 25c95cf671SFeist, James using BasicVariantType = 26c95cf671SFeist, James std::variant<std::vector<std::string>, std::string, int64_t, uint64_t, 27c95cf671SFeist, James double, int32_t, uint32_t, int16_t, uint16_t, uint8_t, bool>; 280b236ab8SJames Feist using Association = std::tuple<std::string, std::string, std::string>; 29c95cf671SFeist, James 30c95cf671SFeist, James namespace mapper 31c95cf671SFeist, James { 32c95cf671SFeist, James constexpr const char* busName = "xyz.openbmc_project.ObjectMapper"; 33c95cf671SFeist, James constexpr const char* path = "/xyz/openbmc_project/object_mapper"; 34c95cf671SFeist, James constexpr const char* interface = "xyz.openbmc_project.ObjectMapper"; 35c95cf671SFeist, James constexpr const char* subtree = "GetSubTree"; 36c95cf671SFeist, James } // namespace mapper 37c95cf671SFeist, James 38c95cf671SFeist, James namespace entityManager 39c95cf671SFeist, James { 40c95cf671SFeist, James constexpr const char* busName = "xyz.openbmc_project.EntityManager"; 41c95cf671SFeist, James } // namespace entityManager 42c95cf671SFeist, James 43c95cf671SFeist, James namespace inventory 44c95cf671SFeist, James { 45c95cf671SFeist, James constexpr const char* interface = "xyz.openbmc_project.Inventory.Item"; 46c95cf671SFeist, James } // namespace inventory 47c95cf671SFeist, James 48*09dd2314SJames Feist namespace ledGroup 49*09dd2314SJames Feist { 50*09dd2314SJames Feist constexpr const char* interface = "xyz.openbmc_project.Led.Group"; 51*09dd2314SJames Feist constexpr const char* asserted = "Asserted"; 52*09dd2314SJames Feist } // namespace ledGroup 53*09dd2314SJames Feist 54c95cf671SFeist, James namespace hsbp 55c95cf671SFeist, James { 56c95cf671SFeist, James enum class registers : uint8_t 57c95cf671SFeist, James { 58c95cf671SFeist, James fpgaIdH = 0x0, 59c95cf671SFeist, James fpgaIdL = 0x1, 60c95cf671SFeist, James typeId = 0x2, 61c95cf671SFeist, James bootVer = 0x3, 62c95cf671SFeist, James fpgaVer = 0x4, 63c95cf671SFeist, James securityRev = 0x5, 64c95cf671SFeist, James funSupported = 0x6, 65c95cf671SFeist, James numDisks = 0x7, 66c95cf671SFeist, James presence = 0x8, 67c95cf671SFeist, James ssdIFDET = 0x9, 68c95cf671SFeist, James ifdetPart = 0xA, 69c95cf671SFeist, James statusLocate = 0xB, 70c95cf671SFeist, James statusFail = 0xC, 71c95cf671SFeist, James statusRebuild = 0xD, 72c95cf671SFeist, James ledOverride = 0xE, 73c95cf671SFeist, James ledStatus = 0xF, 74c95cf671SFeist, James ledPattern0 = 0x10, 75c95cf671SFeist, James ledPattern1 = 0x11, 76c95cf671SFeist, James ledPattern2 = 0x12, 77c95cf671SFeist, James ledPattern3 = 0x13, 78c95cf671SFeist, James ledPattern4 = 0x14, 79c95cf671SFeist, James ledPattern5 = 0x15, 80c95cf671SFeist, James ledPattern6 = 0x16, 81c95cf671SFeist, James ledPattern7 = 0x17, 82c95cf671SFeist, James }; 83c95cf671SFeist, James 84c95cf671SFeist, James } // namespace hsbp 85