libpayload: minor cleanups
authorMathias Krause <minipli@googlemail.com>
Tue, 3 Apr 2012 18:42:01 +0000 (20:42 +0200)
committerStefan Reinauer <stefan.reinauer@coreboot.org>
Tue, 3 Apr 2012 22:40:31 +0000 (00:40 +0200)
Apply some const correctness to const/non-const strings in libc and
libpci (what an ugly cast that was).

Remove duplicated NULL test in printf_putstr(), already done in
print_string() - reduces size of libpayload by a few bytes.

Change-Id: I13f479df13e39d79cab291e9d99d153e1ef43eae
Signed-off-by: Mathias Krause <minipli@googlemail.com>
Reviewed-on: http://review.coreboot.org/849
Tested-by: build bot (Jenkins)
Reviewed-by: Marc Jones <marcj303@gmail.com>
payloads/libpayload/libc/printf.c
payloads/libpayload/libpci/libpci.c

index e3cf8bbb24ca2224879ac96ff3da8add9f0a0548..c9a6cca45a75fc39a2a590039d034f1da7221418 100644 (file)
@@ -85,8 +85,8 @@ typedef enum {
        PrintfQualifierPointer,
 } qualifier_t;
 
-static char digits_small[] = "0123456789abcdef";
-static char digits_big[] = "0123456789ABCDEF";
+static const char digits_small[] = "0123456789abcdef";
+static const char digits_big[] = "0123456789ABCDEF";
 
 /**
  * Print one or more characters without adding newline.
@@ -109,18 +109,9 @@ static int printf_putnchars(const char *buf, size_t count,
  * @param ps   Write function specification and support data.
  * @return     Number of characters printed.
  */
-static int printf_putstr(const char *str, struct printf_spec *ps)
+static inline int printf_putstr(const char *str, struct printf_spec *ps)
 {
-       size_t count;
-
-       if (str == NULL) {
-               const char *nullstr = "(NULL)";
-               return printf_putnchars(nullstr, strlen(nullstr), ps);
-       }
-
-       count = strlen(str);
-
-       return ps->write((void *)str, count, ps->data);
+       return printf_putnchars(str, strlen(str), ps);
 }
 
 /**
@@ -228,7 +219,7 @@ static int print_string(char *s, int width, unsigned int precision,
 static int print_number(uint64_t num, int width, int precision, int base,
                        uint64_t flags, struct printf_spec *ps)
 {
-       char *digits = digits_small;
+       const char *digits = digits_small;
        char d[PRINT_NUMBER_BUFFER_SIZE];
        char *ptr = &d[PRINT_NUMBER_BUFFER_SIZE - 1];
        int size = 0;           /* Size of number with all prefixes and signs. */
index ecc2b25c91942b516b669df0685053f665ffd123..e9df10c42f78b7850d76d49430654f1329d15047 100644 (file)
@@ -96,7 +96,7 @@ void pci_filter_init(struct pci_access* pacc, struct pci_filter* pf)
        pf->device = -1;
 }
 
-static char *invalid_pci_device_string = (char *)"invalid pci device string";
+static char invalid_pci_device_string[] = "invalid pci device string";
 
 /* parse domain:bus:dev.func (with all components but "dev" optional)
  * into filter.