@@ -315,6 +315,8 @@ static void clkdev_add_pmu(const char *dev, const char *con, bool deactivate,
315
315
{
316
316
struct clk * clk = kzalloc (sizeof (struct clk ), GFP_KERNEL );
317
317
318
+ if (!clk )
319
+ return ;
318
320
clk -> cl .dev_id = dev ;
319
321
clk -> cl .con_id = con ;
320
322
clk -> cl .clk = clk ;
@@ -338,6 +340,8 @@ static void clkdev_add_cgu(const char *dev, const char *con,
338
340
{
339
341
struct clk * clk = kzalloc (sizeof (struct clk ), GFP_KERNEL );
340
342
343
+ if (!clk )
344
+ return ;
341
345
clk -> cl .dev_id = dev ;
342
346
clk -> cl .con_id = con ;
343
347
clk -> cl .clk = clk ;
@@ -356,24 +360,28 @@ static void clkdev_add_pci(void)
356
360
struct clk * clk_ext = kzalloc (sizeof (struct clk ), GFP_KERNEL );
357
361
358
362
/* main pci clock */
359
- clk -> cl .dev_id = "17000000.pci" ;
360
- clk -> cl .con_id = NULL ;
361
- clk -> cl .clk = clk ;
362
- clk -> rate = CLOCK_33M ;
363
- clk -> rates = valid_pci_rates ;
364
- clk -> enable = pci_enable ;
365
- clk -> disable = pmu_disable ;
366
- clk -> module = 0 ;
367
- clk -> bits = PMU_PCI ;
368
- clkdev_add (& clk -> cl );
363
+ if (clk ) {
364
+ clk -> cl .dev_id = "17000000.pci" ;
365
+ clk -> cl .con_id = NULL ;
366
+ clk -> cl .clk = clk ;
367
+ clk -> rate = CLOCK_33M ;
368
+ clk -> rates = valid_pci_rates ;
369
+ clk -> enable = pci_enable ;
370
+ clk -> disable = pmu_disable ;
371
+ clk -> module = 0 ;
372
+ clk -> bits = PMU_PCI ;
373
+ clkdev_add (& clk -> cl );
374
+ }
369
375
370
376
/* use internal/external bus clock */
371
- clk_ext -> cl .dev_id = "17000000.pci" ;
372
- clk_ext -> cl .con_id = "external" ;
373
- clk_ext -> cl .clk = clk_ext ;
374
- clk_ext -> enable = pci_ext_enable ;
375
- clk_ext -> disable = pci_ext_disable ;
376
- clkdev_add (& clk_ext -> cl );
377
+ if (clk_ext ) {
378
+ clk_ext -> cl .dev_id = "17000000.pci" ;
379
+ clk_ext -> cl .con_id = "external" ;
380
+ clk_ext -> cl .clk = clk_ext ;
381
+ clk_ext -> enable = pci_ext_enable ;
382
+ clk_ext -> disable = pci_ext_disable ;
383
+ clkdev_add (& clk_ext -> cl );
384
+ }
377
385
}
378
386
379
387
/* xway socs can generate clocks on gpio pins */
@@ -393,9 +401,15 @@ static void clkdev_add_clkout(void)
393
401
char * name ;
394
402
395
403
name = kzalloc (sizeof ("clkout0" ), GFP_KERNEL );
404
+ if (!name )
405
+ continue ;
396
406
sprintf (name , "clkout%d" , i );
397
407
398
408
clk = kzalloc (sizeof (struct clk ), GFP_KERNEL );
409
+ if (!clk ) {
410
+ kfree (name );
411
+ continue ;
412
+ }
399
413
clk -> cl .dev_id = "1f103000.cgu" ;
400
414
clk -> cl .con_id = name ;
401
415
clk -> cl .clk = clk ;
0 commit comments