Re: [PATCH][next] video: fbdev: kyro: make some const read-only arrays static

From: Helge Deller
Date: Wed Jul 12 2023 - 11:41:24 EST


On 7/12/23 16:57, Colin Ian King wrote:
Don't populate the const read-only arrays on the stack but instead
make them static const. Also makes the object code a little smaller.

Looks good, but you can optimze even further...

Signed-off-by: Colin Ian King <colin.i.king@xxxxxxxxx>
---
drivers/video/fbdev/kyro/STG4000InitDevice.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/video/fbdev/kyro/STG4000InitDevice.c b/drivers/video/fbdev/kyro/STG4000InitDevice.c
index edfa0a04854d..bf1ee3addbd0 100644
--- a/drivers/video/fbdev/kyro/STG4000InitDevice.c
+++ b/drivers/video/fbdev/kyro/STG4000InitDevice.c
@@ -83,11 +83,11 @@ volatile u32 i,count=0; \
static u32 InitSDRAMRegisters(volatile STG4000REG __iomem *pSTGReg,
u32 dwSubSysID, u32 dwRevID)
{
- u32 adwSDRAMArgCfg0[] = { 0xa0, 0x80, 0xa0, 0xa0, 0xa0 };
- u32 adwSDRAMCfg1[] = { 0x8732, 0x8732, 0xa732, 0xa732, 0x8732 };
- u32 adwSDRAMCfg2[] = { 0x87d2, 0x87d2, 0xa7d2, 0x87d2, 0xa7d2 };
- u32 adwSDRAMRsh[] = { 36, 39, 40 };
- u32 adwChipSpeed[] = { 110, 120, 125 };> + static const u32 adwSDRAMArgCfg0[] = { 0xa0, 0x80, 0xa0, 0xa0, 0xa0 };

Make this u8 instead of u32 (saves 5*3 = 15 bytes):
+ static const u8 adwSDRAMArgCfg0[] = { 0xa0, 0x80, 0xa0, 0xa0, 0xa0 };

+ static const u32 adwSDRAMCfg1[] = { 0x8732, 0x8732, 0xa732, 0xa732, 0x8732 };

u16

+ static const u32 adwSDRAMCfg2[] = { 0x87d2, 0x87d2, 0xa7d2, 0x87d2, 0xa7d2 };

u16

+ static const u32 adwSDRAMRsh[] = { 36, 39, 40 };

u8

+ static const u32 adwChipSpeed[] = { 110, 120, 125 };

u8...

Can you change that (test compile) and resend?

Helge