| Alexander Hansen | 40fb549 | 2025-10-28 17:56:12 +0100 | [diff] [blame^] | 1 | // SPDX-License-Identifier: Apache-2.0 |
| 2 | // SPDX-FileCopyrightText: Copyright 2019 IBM Corporation |
| 3 | |
| Matt Spinler | df13bdb | 2019-07-10 16:54:13 -0500 | [diff] [blame] | 4 | #include "config.h" |
| 5 | |
| 6 | #include "paths.hpp" |
| 7 | |
| 8 | #include <filesystem> |
| 9 | |
| 10 | namespace openpower |
| 11 | { |
| 12 | namespace pels |
| 13 | { |
| 14 | |
| 15 | namespace fs = std::filesystem; |
| Matt Spinler | 8d5f3a2 | 2020-07-07 10:30:33 -0500 | [diff] [blame] | 16 | static constexpr size_t defaultRepoSize = 20 * 1024 * 1024; |
| 17 | static constexpr size_t defaultMaxNumPELs = 3000; |
| Matt Spinler | df13bdb | 2019-07-10 16:54:13 -0500 | [diff] [blame] | 18 | |
| 19 | fs::path getPELIDFile() |
| 20 | { |
| Patrick Williams | fa2d962 | 2024-09-30 16:25:43 -0400 | [diff] [blame] | 21 | fs::path logIDPath{phosphor::logging::paths::extension()}; |
| Matt Spinler | df13bdb | 2019-07-10 16:54:13 -0500 | [diff] [blame] | 22 | logIDPath /= fs::path{"pels"} / fs::path{"pelID"}; |
| 23 | return logIDPath; |
| 24 | } |
| 25 | |
| Matt Spinler | 89fa082 | 2019-07-17 13:54:30 -0500 | [diff] [blame] | 26 | fs::path getPELRepoPath() |
| 27 | { |
| Patrick Williams | fa2d962 | 2024-09-30 16:25:43 -0400 | [diff] [blame] | 28 | std::filesystem::path repoPath{phosphor::logging::paths::extension()}; |
| Matt Spinler | 89fa082 | 2019-07-17 13:54:30 -0500 | [diff] [blame] | 29 | repoPath /= "pels"; |
| 30 | return repoPath; |
| 31 | } |
| 32 | |
| Matt Spinler | 0d804ef | 2020-05-12 16:16:26 -0500 | [diff] [blame] | 33 | fs::path getPELReadOnlyDataPath() |
| Matt Spinler | 367144c | 2019-09-19 15:33:52 -0500 | [diff] [blame] | 34 | { |
| 35 | return std::filesystem::path{"/usr/share/phosphor-logging/pels"}; |
| 36 | } |
| Matt Spinler | df13bdb | 2019-07-10 16:54:13 -0500 | [diff] [blame] | 37 | |
| Matt Spinler | 8d5f3a2 | 2020-07-07 10:30:33 -0500 | [diff] [blame] | 38 | size_t getPELRepoSize() |
| 39 | { |
| 40 | // For now, always use 20MB, revisit in the future if different |
| 41 | // systems need different values so that we only put PEL |
| 42 | // content into configure.ac when absolutely necessary. |
| 43 | return defaultRepoSize; |
| 44 | } |
| 45 | |
| 46 | size_t getMaxNumPELs() |
| 47 | { |
| 48 | // Hardcode using the same reasoning as the repo size field. |
| 49 | return defaultMaxNumPELs; |
| 50 | } |
| 51 | |
| Matt Spinler | 367144c | 2019-09-19 15:33:52 -0500 | [diff] [blame] | 52 | } // namespace pels |
| Matt Spinler | df13bdb | 2019-07-10 16:54:13 -0500 | [diff] [blame] | 53 | } // namespace openpower |