pwm: Remove unused radix tree
authorThierry Reding <thierry.reding@gmail.com>
Thu, 13 Apr 2023 12:25:48 +0000 (14:25 +0200)
committerThierry Reding <thierry.reding@gmail.com>
Fri, 14 Apr 2023 09:35:52 +0000 (11:35 +0200)
The radix tree's only use was to map PWM channels to the global number
space. With that number space gone, the radix tree is now unused, so it
can simply be removed.

Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
drivers/pwm/core.c

index 9ce85c6..3daccea 100644 (file)
 static DEFINE_MUTEX(pwm_lookup_lock);
 static LIST_HEAD(pwm_lookup_list);
 
-/* protects access to pwm_chips, allocated_pwms, and pwm_tree */
+/* protects access to pwm_chips and allocated_pwms */
 static DEFINE_MUTEX(pwm_lock);
 
 static LIST_HEAD(pwm_chips);
 static DECLARE_BITMAP(allocated_pwms, MAX_PWMS);
-static RADIX_TREE(pwm_tree, GFP_KERNEL);
 
 /* Called with pwm_lock held */
 static int alloc_pwms(unsigned int count)
@@ -54,14 +53,6 @@ static int alloc_pwms(unsigned int count)
 /* Called with pwm_lock held */
 static void free_pwms(struct pwm_chip *chip)
 {
-       unsigned int i;
-
-       for (i = 0; i < chip->npwm; i++) {
-               struct pwm_device *pwm = &chip->pwms[i];
-
-               radix_tree_delete(&pwm_tree, pwm->pwm);
-       }
-
        bitmap_clear(allocated_pwms, chip->base, chip->npwm);
 
        kfree(chip->pwms);
@@ -302,8 +293,6 @@ int pwmchip_add(struct pwm_chip *chip)
                pwm->chip = chip;
                pwm->pwm = chip->base + i;
                pwm->hwpwm = i;
-
-               radix_tree_insert(&pwm_tree, pwm->pwm, pwm);
        }
 
        list_add(&chip->list, &pwm_chips);